/**========================================================================================================================== * OTC * ========================================================================================================================== */ export interface OTCActionResp { code: number; message: string; timestamp: number; } export interface CreateOTCQuoteResp { code: number; message: string; data: { type: string; pay_coin: string; get_coin: string; pay_amount: string; get_amount: string; rate: string; rate_reci: string; promotion_code: string; side: string; order_type: string; quote_token: string; url?: string; memo?: string; has_signature?: string; validity_period?: string; ex_rate?: string; usdc_rate?: string; is_need_file?: string; gate_bank_id?: string; gate_bank_name?: string; refresh_limit?: number; refresh_limit_msg?: string; }; timestamp: number; } export type CreateOTCFiatOrderResp = OTCActionResp; export interface CreateOTCStablecoinOrderResp { code: number; message: string; timestamp: number; } export interface OTCBankListItem { id: string; bank_account_name: string; bank_name: string; bank_country?: string; bank_address?: string; bank_code?: string; branch_code?: string; iban?: string; swift?: string; remittance_line_number?: string; agent_bank_name?: string; agent_bank_swift?: string; submit_time?: string; update_time?: string; status?: string; documentation_file_type?: string; memo?: string; /** 1 = default bank card, 0 = not default */ is_default?: 0 | 1; bank_id?: string; documentation_file_key_url?: string; } export interface GetOTCBankListResp { code: number; message: string; data: { lists: OTCBankListItem[]; }; timestamp: number; } export interface CreateOTCBankResp { code: number; message: string; data: { bank_id: number; status: number; }; timestamp?: number; } export interface OTCBankSupplementChecklistItem { description: string; code?: string; zh?: string; en?: string; required?: boolean; } export interface GetOTCBankSupplementChecklistResp { code: number; message: string; data: { user_type: 'personal' | 'enterprise'; items: OTCBankSupplementChecklistItem[]; }; timestamp?: number; } export type MarkOTCOrderAsPaidResp = OTCActionResp; export type CancelOTCOrderResp = OTCActionResp; export interface OTCFiatOrderListItem { time: string; timestamp: number; order_id: string; trade_no: string; type: string; status: string; db_status: string; fiat_currency: string; fiat_currency_info: { name: string; icon: string; }; fiat_amount: string; crypto_currency: string; crypto_currency_info: { name: string; icon: string; }; crypto_amount: string; rate: string; transfer_remark: string; reference_code?: string; gate_bank_account_iban: string; promotion_code: string; } export interface GetOTCFiatOrderListResp { code: number; message: string; data: { pn: number; ps: number; total_pn: number; count: number; /** v4.106.158: was `list` */ lists: OTCFiatOrderListItem[]; }; } export interface OTCStablecoinOrderListItem { id: number; trade_no: string; pay_coin: string; pay_amount: string; get_coin: string; get_amount: string; rate: string; rate_reci: string; status: string; create_timest: number; create_time: string; pay_icon?: string; get_icon?: string; } export interface GetOTCStablecoinOrderListResp { code: number; message: string; data: { total: number; page_size: number; page_number: number; total_page: number; /** v4.106.158: was `list` */ lists: OTCStablecoinOrderListItem[]; }; } export interface OTCFiatOrderDetail { order_id: string; uid: string; type: string; fiat_currency: string; fiat_amount: string; crypto_currency: string; crypto_amount: string; rate: string; transfer_remark: string; reference_code?: string; status: string; db_status: string; create_time: string; memo: string; side: string; promotion_code: string; trade_no: string; } export interface GetOTCFiatOrderDetailResp { message: string; code: number; data: OTCFiatOrderDetail; } export interface CreateOTCUploadPreUploadFields { key?: string; content_type?: string; x_amz_credential?: string; x_amz_algorithm?: string; x_amz_date?: string; policy?: string; x_amz_signature?: string; } export interface CreateOTCUploadPreUploadData { file_key?: string; url?: string; fields?: CreateOTCUploadPreUploadFields; expires_in?: number; } export interface CreateOTCUploadPreUploadResp { code?: number; message?: string; timestamp?: number; data?: CreateOTCUploadPreUploadData; }