/// /// /// declare module 'chargebee' { export interface VirtualBankAccount { id: string; customer_id: string; email: string; scheme?: | 'ach_credit' | 'sepa_credit' | 'us_automated_bank_transfer' | 'gb_automated_bank_transfer' | 'eu_automated_bank_transfer' | 'jp_automated_bank_transfer' | 'mx_automated_bank_transfer'; bank_name?: string; account_number: string; routing_number?: string; swift_code?: string; gateway: GatewayEnum; gateway_account_id: string; resource_version?: number; updated_at?: number; created_at: number; reference_id: string; deleted: boolean; } export namespace VirtualBankAccount { export class VirtualBankAccountResource { createUsingPermanentToken( input: CreateUsingPermanentTokenInputParam, headers?: ChargebeeRequestHeader, ): Promise>; create( input: CreateInputParam, headers?: ChargebeeRequestHeader, ): Promise>; retrieve( virtual_bank_account_id: string, headers?: ChargebeeRequestHeader, ): Promise>; list( input?: ListInputParam, headers?: ChargebeeRequestHeader, ): Promise>; delete( virtual_bank_account_id: string, headers?: ChargebeeRequestHeader, ): Promise>; deleteLocal( virtual_bank_account_id: string, headers?: ChargebeeRequestHeader, ): Promise>; } export interface CreateUsingPermanentTokenResponse { virtual_bank_account: VirtualBankAccount; customer?: Customer; } export interface CreateResponse { virtual_bank_account: VirtualBankAccount; customer?: Customer; } export interface RetrieveResponse { virtual_bank_account: VirtualBankAccount; } export interface ListResponse { list: { virtual_bank_account: VirtualBankAccount }[]; next_offset?: string; } export interface DeleteResponse { virtual_bank_account: VirtualBankAccount; } export interface DeleteLocalResponse { virtual_bank_account: VirtualBankAccount; } // REQUEST PARAMS //--------------- export interface CreateUsingPermanentTokenInputParam { customer_id: string; reference_id: string; scheme?: | 'ach_credit' | 'sepa_credit' | 'us_automated_bank_transfer' | 'gb_automated_bank_transfer' | 'eu_automated_bank_transfer' | 'jp_automated_bank_transfer' | 'mx_automated_bank_transfer'; } export interface CreateInputParam { customer_id: string; email?: string; scheme?: | 'ach_credit' | 'sepa_credit' | 'us_automated_bank_transfer' | 'gb_automated_bank_transfer' | 'eu_automated_bank_transfer' | 'jp_automated_bank_transfer' | 'mx_automated_bank_transfer'; } export interface ListInputParam { limit?: number; offset?: string; customer_id?: filter.String; updated_at?: filter.Timestamp; created_at?: filter.Timestamp; } } }