/**
* NOTE: This class is auto generated by DANA Indonesia.
* Do not edit the class manually.
*/
import type { ValidationErrorContext } from '../../../runtime';
/**
* Additional information
* @export
* @interface BankAccountInquiryRequestAdditionalInfo
*/
export interface BankAccountInquiryRequestAdditionalInfo {
/**
* Additional information of withdraw fund type, i.e.
* MERCHANT_WITHDRAW_FOR_CORPORATE
*
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
fundType: string;
/**
* Additional information of external division identifier. (fundType: MERCHANT_WITHDRAW_FOR_CORPORATE)
* Notes: The required of this parameter is Optional, but if "additionalInfo.chargeTarget" has value DIVISION then the required of this parameter will be changed to Mandatory
*
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
externalDivisionId?: string;
/**
* Additional information of charge target. The values are:
* • null
* • DIVISION
* • MERCHANT
* Notes: If the value is DIVISION, externalDivisionId will be Mandatory
*
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
chargeTarget?: BankAccountInquiryRequestAdditionalInfoChargeTargetEnum;
/**
* Additional information of beneficiary Bank code
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
beneficiaryBankCode: string;
/**
* Additional information of beneficiary account name for validation purpose
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
beneficiaryAccountName?: string;
/**
* Additional information of account type
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
accountType?: string;
/**
* Contains customer token, which has been obtained from binding process, refer to Account Binding & Unbinding documentation
* If request is coming from user interaction, this field is mandatory. If not, just filled customerNumber
*
* @type {string}
* @memberof BankAccountInquiryRequestAdditionalInfo
*/
accessToken?: string;
}
/**
* @export
*/
export declare const BankAccountInquiryRequestAdditionalInfoChargeTargetEnum: {
readonly Division: "DIVISION";
readonly Merchant: "MERCHANT";
};
export type BankAccountInquiryRequestAdditionalInfoChargeTargetEnum = typeof BankAccountInquiryRequestAdditionalInfoChargeTargetEnum[keyof typeof BankAccountInquiryRequestAdditionalInfoChargeTargetEnum] | '';
/**
* Check if a given object implements the BankAccountInquiryRequestAdditionalInfo interface.
*/
export declare function instanceOfBankAccountInquiryRequestAdditionalInfo(value: object): value is BankAccountInquiryRequestAdditionalInfo;
export declare function BankAccountInquiryRequestAdditionalInfoFromJSON(json: any): BankAccountInquiryRequestAdditionalInfo;
export declare function BankAccountInquiryRequestAdditionalInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): BankAccountInquiryRequestAdditionalInfo;
export declare function BankAccountInquiryRequestAdditionalInfoToJSON(json: any): BankAccountInquiryRequestAdditionalInfo;
export declare function BankAccountInquiryRequestAdditionalInfoToJSONTyped(value?: BankAccountInquiryRequestAdditionalInfo | null, ignoreDiscriminator?: boolean): any;
export declare function validateBankAccountInquiryRequestAdditionalInfo(value: BankAccountInquiryRequestAdditionalInfo): ValidationErrorContext[];