import type { BankTransactionFlowDirection } from './BankTransactionFlowDirection'; import type { BankTransactionState } from './BankTransactionState'; import type { CurrencyBankAccount } from './CurrencyBankAccount'; import type { PaymentAdjustment } from './PaymentAdjustment'; /** * * @export * @interface BankTransaction */ export interface BankTransaction { /** * Adjustments are changes made to the initial transaction amount, such as fees or corrections. * @type {Array} * @memberof BankTransaction */ readonly adjustments?: Array; /** * * @type {CurrencyBankAccount} * @memberof BankTransaction */ currencyBankAccount?: CurrencyBankAccount; /** * 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 BankTransaction */ readonly plannedPurgeDate?: Date; /** * A client generated nonce which identifies the entity to be created. Subsequent creation requests with the same external ID will not create new entities but return the initially created entity instead. * @type {string} * @memberof BankTransaction */ readonly externalId?: string; /** * The posting amount refers to the monetary value recorded for the bank transaction prior to any adjustments. * @type {number} * @memberof BankTransaction */ readonly postingAmount?: number; /** * The source indicates how the bank transaction was created. * @type {number} * @memberof BankTransaction */ readonly source?: number; /** * The value date indicates the date on which the transaction amount becomes effective. * @type {Date} * @memberof BankTransaction */ readonly valueDate?: Date; /** * The bank transaction's type. * @type {number} * @memberof BankTransaction */ readonly type?: number; /** * The date and time when the object was created. * @type {Date} * @memberof BankTransaction */ readonly createdOn?: Date; /** * The version is used for optimistic locking and incremented whenever the object is updated. * @type {number} * @memberof BankTransaction */ readonly version?: number; /** * A unique reference to identify the bank transaction. * @type {string} * @memberof BankTransaction */ readonly reference?: string; /** * The ID of the space this object belongs to. * @type {number} * @memberof BankTransaction */ readonly linkedSpaceId?: number; /** * The value amount represents the net monetary value of the transaction after applicable deductions. * @type {number} * @memberof BankTransaction */ readonly valueAmount?: number; /** * * @type {BankTransactionFlowDirection} * @memberof BankTransaction */ flowDirection?: BankTransactionFlowDirection; /** * The ID of the user the bank transaction was created by. * @type {number} * @memberof BankTransaction */ readonly createdBy?: number; /** * A unique identifier for the object. * @type {number} * @memberof BankTransaction */ readonly id?: number; /** * * @type {BankTransactionState} * @memberof BankTransaction */ state?: BankTransactionState; /** * The payment date specifies the date on which the payment was processed. * @type {Date} * @memberof BankTransaction */ readonly paymentDate?: Date; /** * Represents the total value of all adjustments to the bank transaction, including tax. * @type {number} * @memberof BankTransaction */ readonly totalAdjustmentAmountIncludingTax?: number; } /** * Check if a given object implements the BankTransaction interface. */ export declare function instanceOfBankTransaction(value: object): value is BankTransaction; export declare function BankTransactionFromJSON(json: any): BankTransaction; export declare function BankTransactionFromJSONTyped(json: any, ignoreDiscriminator: boolean): BankTransaction; export declare function BankTransactionToJSON(json: any): BankTransaction; export declare function BankTransactionToJSONTyped(value?: Omit | null, ignoreDiscriminator?: boolean): any;