import { BankTransactionFlowDirection } from "./BankTransactionFlowDirection";
import { BankTransactionState } from "./BankTransactionState";
import { CurrencyBankAccount } from "./CurrencyBankAccount";
import { PaymentAdjustment } from "./PaymentAdjustment";
declare class BankTransaction {
    /**
    * The adjustments applied on this bank transaction.
    */
    'adjustments'?: Array<PaymentAdjustment>;
    /**
    * The created by indicates the user which has created the bank transaction.
    */
    'createdBy'?: number;
    /**
    * The date and time when the object was created.
    */
    'createdOn'?: Date;
    /**
    * The currency bank account which is used to handle money flow.
    */
    'currencyBankAccount'?: CurrencyBankAccount;
    /**
    *
    */
    'externalId'?: string;
    /**
    *
    */
    'flowDirection'?: BankTransactionFlowDirection;
    /**
    * A unique identifier for the object.
    */
    'id'?: number;
    /**
    * The ID of the space this object belongs to.
    */
    'linkedSpaceId'?: number;
    /**
    * The payment date describes the date when the transaction was made.
    */
    'paymentDate'?: Date;
    /**
    * The date and time when the object is planned to be permanently removed. If the value is empty, the object will not be removed.
    */
    'plannedPurgeDate'?: Date;
    /**
    * The posting amount indicates the amount including adjustments.
    */
    'postingAmount'?: number;
    /**
    *
    */
    'reference'?: string;
    /**
    *
    */
    'source'?: number;
    /**
    * The object's current state.
    */
    'state'?: BankTransactionState;
    /**
    *
    */
    'totalAdjustmentAmountIncludingTax'?: number;
    /**
    *
    */
    'type'?: number;
    /**
    *
    */
    'valueAmount'?: number;
    /**
    * The value date describes the date the amount is effective on the account.
    */
    'valueDate'?: Date;
    /**
    * The version is used for optimistic locking and incremented whenever the object is updated.
    */
    'version'?: number;
    static discriminator: string | undefined;
    static attributeTypeMap: Array<{
        name: string;
        baseName: string;
        type: string;
    }>;
    static getAttributeTypeMap(): {
        name: string;
        baseName: string;
        type: string;
    }[];
}
export { BankTransaction };
