UNPKG

chargebee

Version:

A library for integrating with Chargebee.

98 lines (83 loc) 2.43 kB
///<reference path='./../core.d.ts'/> ///<reference path='./../index.d.ts'/> ///<reference path='./filter.d.ts'/> declare module 'chargebee' { export interface Currency { id: string; enabled: boolean; forex_type?: 'manual' | 'auto'; currency_code: string; is_base_currency: boolean; manual_exchange_rate?: string; } export namespace Currency { export class CurrencyResource { list( input?: ListInputParam, headers?: ChargebeeRequestHeader, ): Promise<ChargebeeResponse<ListResponse>>; retrieve( site_currency_id: string, headers?: ChargebeeRequestHeader, ): Promise<ChargebeeResponse<RetrieveResponse>>; create( input: CreateInputParam, headers?: ChargebeeRequestHeader, ): Promise<ChargebeeResponse<CreateResponse>>; update( site_currency_id: string, input: UpdateInputParam, headers?: ChargebeeRequestHeader, ): Promise<ChargebeeResponse<UpdateResponse>>; addSchedule( site_currency_id: string, input: AddScheduleInputParam, headers?: ChargebeeRequestHeader, ): Promise<ChargebeeResponse<AddScheduleResponse>>; removeSchedule( site_currency_id: string, headers?: ChargebeeRequestHeader, ): Promise<ChargebeeResponse<RemoveScheduleResponse>>; } export interface ListResponse { list: { currency: Currency }[]; next_offset?: string; } export interface RetrieveResponse { currency: Currency; } export interface CreateResponse { currency: Currency; } export interface UpdateResponse { currency: Currency; } export interface AddScheduleResponse { scheduled_at: number; currency: Currency; } export interface RemoveScheduleResponse { scheduled_at: number; currency: Currency; } // REQUEST PARAMS //--------------- export interface ListInputParam { limit?: number; offset?: string; } export interface CreateInputParam { currency_code: string; forex_type: 'manual' | 'auto'; manual_exchange_rate?: string; } export interface UpdateInputParam { forex_type: 'manual' | 'auto'; manual_exchange_rate?: string; } export interface AddScheduleInputParam { manual_exchange_rate: string; schedule_at: number; } } }