/**
* NOTE: This class is auto generated by DANA Indonesia.
* Do not edit the class manually.
*/
import type { ValidationErrorContext } from '../../../runtime';
import type { Money } from './Money';
import type { TransferToDanaRequestAdditionalInfo } from './TransferToDanaRequestAdditionalInfo';
/**
*
* @export
* @interface TransferToDanaRequest
*/
export interface TransferToDanaRequest {
/**
* Unique transaction identifier on partner system which assigned to each transaction
* Notes:
* If the partner receives a timeout or an unexpected response from DANA and partner expects to perform retry request to DANA, please use the partnerReferenceNo that is the same as the one used in the transaction request process before
*
* @type {string}
* @memberof TransferToDanaRequest
*/
partnerReferenceNo: string;
/**
* Customer account number, in format 628xxx
* @type {string}
* @memberof TransferToDanaRequest
*/
customerNumber?: string;
/**
* Amount. Contains two sub-fields:
* 1. Value: Transaction amount, including the cents
* 2. Currency: Currency code based on ISO
*
* @type {Money}
* @memberof TransferToDanaRequest
*/
amount: Money;
/**
* Fee amount. Contains two sub-fields:
* 1. Value: Amount, including the cents
* 2. Currency: Currency code based on ISO
*
* @type {Money}
* @memberof TransferToDanaRequest
*/
feeAmount: Money;
/**
* Transaction date, in format YYYY-MM-DDTHH:mm:ss+07:00. Time must be in GMT+7 (Jakarta time)
* @type {string}
* @memberof TransferToDanaRequest
*/
transactionDate?: string;
/**
* Session identifier
* @type {string}
* @memberof TransferToDanaRequest
*/
sessionId?: string;
/**
* Category identifier
* @type {number}
* @memberof TransferToDanaRequest
*/
categoryId?: number;
/**
* Transaction notes
* @type {string}
* @memberof TransferToDanaRequest
*/
notes?: string;
/**
*
* @type {TransferToDanaRequestAdditionalInfo}
* @memberof TransferToDanaRequest
*/
additionalInfo: TransferToDanaRequestAdditionalInfo;
}
/**
* Check if a given object implements the TransferToDanaRequest interface.
*/
export declare function instanceOfTransferToDanaRequest(value: object): value is TransferToDanaRequest;
export declare function TransferToDanaRequestFromJSON(json: any): TransferToDanaRequest;
export declare function TransferToDanaRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransferToDanaRequest;
export declare function TransferToDanaRequestToJSON(json: any): TransferToDanaRequest;
export declare function TransferToDanaRequestToJSONTyped(value?: TransferToDanaRequest | null, ignoreDiscriminator?: boolean): any;
export declare function validateTransferToDanaRequest(value: TransferToDanaRequest): ValidationErrorContext[];