wallee
Version:
TypeScript/JavaScript client for wallee
147 lines (146 loc) • 4.74 kB
TypeScript
import type { LineItemType } from './LineItemType';
import type { LineItemAttribute } from './LineItemAttribute';
import type { Tax } from './Tax';
/**
*
* @export
* @interface LineItem
*/
export interface LineItem {
/**
* The calculated tax amount per unit.
* @type {number}
* @memberof LineItem
*/
readonly taxAmountPerUnit?: number;
/**
* The line item price with discounts not applied, excluding taxes.
* @type {number}
* @memberof LineItem
*/
readonly undiscountedAmountExcludingTax?: number;
/**
* The number of items that were purchased.
* @type {number}
* @memberof LineItem
*/
readonly quantity?: number;
/**
* The calculated price per unit with discounts not applied, including taxes.
* @type {number}
* @memberof LineItem
*/
readonly undiscountedUnitPriceIncludingTax?: number;
/**
* The line item price with discounts applied, excluding taxes.
* @type {number}
* @memberof LineItem
*/
readonly amountExcludingTax?: number;
/**
* The line item price with discounts not applied, including taxes.
* @type {number}
* @memberof LineItem
*/
readonly undiscountedAmountIncludingTax?: number;
/**
* A set of tax lines, each of which specifies a tax applied to the item.
* @type {Set<Tax>}
* @memberof LineItem
*/
readonly taxes?: Set<Tax>;
/**
*
* @type {LineItemType}
* @memberof LineItem
*/
type?: LineItemType;
/**
* The calculated price per unit with discounts applied, including taxes.
* @type {number}
* @memberof LineItem
*/
readonly unitPriceIncludingTax?: number;
/**
* The discount allocated to the item, excluding taxes.
* @type {number}
* @memberof LineItem
*/
readonly discountExcludingTax?: number;
/**
* Whether the item required shipping.
* @type {boolean}
* @memberof LineItem
*/
readonly shippingRequired?: boolean;
/**
* The calculated price per unit with discounts applied, excluding taxes.
* @type {number}
* @memberof LineItem
*/
readonly unitPriceExcludingTax?: number;
/**
* The name of the product, ideally in the customer's language.
* @type {string}
* @memberof LineItem
*/
readonly name?: string;
/**
* A map of custom information for the item.
* @type {{ [key: string]: LineItemAttribute; }}
* @memberof LineItem
*/
readonly attributes?: {
[key: string]: LineItemAttribute;
};
/**
* The calculated price per unit with discounts not applied, excluding taxes.
* @type {number}
* @memberof LineItem
*/
readonly undiscountedUnitPriceExcludingTax?: number;
/**
* The line item price with discounts applied, including taxes.
* @type {number}
* @memberof LineItem
*/
readonly amountIncludingTax?: number;
/**
* The discount allocated to the item, including taxes.
* @type {number}
* @memberof LineItem
*/
readonly discountIncludingTax?: number;
/**
* The SKU (stock-keeping unit) of the product.
* @type {string}
* @memberof LineItem
*/
readonly sku?: string;
/**
* The sum of all taxes applied to the item.
* @type {number}
* @memberof LineItem
*/
readonly taxAmount?: number;
/**
* The total tax rate applied to the item, calculated from the rates of all tax lines.
* @type {number}
* @memberof LineItem
*/
readonly aggregatedTaxRate?: number;
/**
* The unique identifier of the line item within the set of line items.
* @type {string}
* @memberof LineItem
*/
readonly uniqueId?: string;
}
/**
* Check if a given object implements the LineItem interface.
*/
export declare function instanceOfLineItem(value: object): value is LineItem;
export declare function LineItemFromJSON(json: any): LineItem;
export declare function LineItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): LineItem;
export declare function LineItemToJSON(json: any): LineItem;
export declare function LineItemToJSONTyped(value?: Omit<LineItem, 'taxAmountPerUnit' | 'undiscountedAmountExcludingTax' | 'quantity' | 'undiscountedUnitPriceIncludingTax' | 'amountExcludingTax' | 'undiscountedAmountIncludingTax' | 'taxes' | 'unitPriceIncludingTax' | 'discountExcludingTax' | 'shippingRequired' | 'unitPriceExcludingTax' | 'name' | 'attributes' | 'undiscountedUnitPriceExcludingTax' | 'amountIncludingTax' | 'discountIncludingTax' | 'sku' | 'taxAmount' | 'aggregatedTaxRate' | 'uniqueId'> | null, ignoreDiscriminator?: boolean): any;