import type { Address } from './Address'; import type { Environment } from './Environment'; import type { LineItem } from './LineItem'; import type { TransactionInvoiceState } from './TransactionInvoiceState'; import type { TransactionCompletion } from './TransactionCompletion'; /** * * @export * @interface TransactionInvoice */ export interface TransactionInvoice { /** * * @type {TransactionCompletion} * @memberof TransactionInvoice */ completion?: TransactionCompletion; /** * The date and time when the invoice was derecognized, meaning it is no longer considered outstanding or valid in the system. * @type {Date} * @memberof TransactionInvoice */ readonly derecognizedOn?: Date; /** * The total sum of all line items on the invoice, including taxes. * @type {number} * @memberof TransactionInvoice */ readonly amount?: number; /** * The due date for payment of the invoice. * @type {Date} * @memberof TransactionInvoice */ readonly dueOn?: Date; /** * The remaining amount the buyer owes to the merchant. A negative value indicates the invoice has been overpaid. * @type {number} * @memberof TransactionInvoice */ readonly outstandingAmount?: number; /** * The date and time when the object is planned to be permanently removed. If the value is empty, the object will not be removed. * @type {Date} * @memberof TransactionInvoice */ readonly plannedPurgeDate?: Date; /** * A client-generated nonce which uniquely identifies some action to be executed. Subsequent requests with the same external ID do not execute the action again, but return the original result. * @type {string} * @memberof TransactionInvoice */ readonly externalId?: string; /** * The time zone that this object is associated with. * @type {string} * @memberof TransactionInvoice */ readonly timeZone?: string; /** * The language that is linked to the object. * @type {string} * @memberof TransactionInvoice */ readonly language?: string; /** * The ID of the space view this object is linked to. * @type {number} * @memberof TransactionInvoice */ readonly spaceViewId?: number; /** * The date and time when the object was created. * @type {Date} * @memberof TransactionInvoice */ readonly createdOn?: Date; /** * The date and time when the invoice was recorded as paid. May differ from the actual payment date due to processing delays. * @type {Date} * @memberof TransactionInvoice */ readonly paidOn?: Date; /** * The version is used for optimistic locking and incremented whenever the object is updated. * @type {number} * @memberof TransactionInvoice */ readonly version?: number; /** * The invoiced line items that will appear on the invoice document. * @type {Array} * @memberof TransactionInvoice */ readonly lineItems?: Array; /** * The ID of the space this object belongs to. * @type {number} * @memberof TransactionInvoice */ readonly linkedSpaceId?: number; /** * * @type {Environment} * @memberof TransactionInvoice */ environment?: Environment; /** * The ID of the user the invoice was derecognized by. * @type {number} * @memberof TransactionInvoice */ readonly derecognizedBy?: number; /** * * @type {Address} * @memberof TransactionInvoice */ billingAddress?: Address; /** * A unique identifier for the object. * @type {number} * @memberof TransactionInvoice */ readonly id?: number; /** * * @type {TransactionInvoiceState} * @memberof TransactionInvoice */ state?: TransactionInvoiceState; /** * The payment transaction this object is linked to. * @type {number} * @memberof TransactionInvoice */ readonly linkedTransaction?: number; /** * The portion of the invoiced amount that corresponds to taxes. * @type {number} * @memberof TransactionInvoice */ readonly taxAmount?: number; /** * The merchant's reference used to identify the invoice. * @type {string} * @memberof TransactionInvoice */ readonly merchantReference?: string; } /** * Check if a given object implements the TransactionInvoice interface. */ export declare function instanceOfTransactionInvoice(value: object): value is TransactionInvoice; export declare function TransactionInvoiceFromJSON(json: any): TransactionInvoice; export declare function TransactionInvoiceFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionInvoice; export declare function TransactionInvoiceToJSON(json: any): TransactionInvoice; export declare function TransactionInvoiceToJSONTyped(value?: Omit | null, ignoreDiscriminator?: boolean): any;