chargebee
Version:
A library for integrating with Chargebee.
126 lines (111 loc) • 3.48 kB
TypeScript
///<reference path='./../core.d.ts'/>
///<reference path='./../index.d.ts'/>
///<reference path='./filter.d.ts'/>
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<ChargebeeResponse<CreateUsingPermanentTokenResponse>>;
create(
input: CreateInputParam,
headers?: ChargebeeRequestHeader,
): Promise<ChargebeeResponse<CreateResponse>>;
retrieve(
virtual_bank_account_id: string,
headers?: ChargebeeRequestHeader,
): Promise<ChargebeeResponse<RetrieveResponse>>;
list(
input?: ListInputParam,
headers?: ChargebeeRequestHeader,
): Promise<ChargebeeResponse<ListResponse>>;
delete(
virtual_bank_account_id: string,
headers?: ChargebeeRequestHeader,
): Promise<ChargebeeResponse<DeleteResponse>>;
deleteLocal(
virtual_bank_account_id: string,
headers?: ChargebeeRequestHeader,
): Promise<ChargebeeResponse<DeleteLocalResponse>>;
}
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;
}
}
}