@openweb3-io/wallet-pay
Version:
Wallet Pay API client and wallet pay verification library
93 lines (92 loc) • 3.27 kB
TypeScript
import { Configuration, CreateOrderRequest, Order, PageOrder, Currency, CursorPageCurrency, CreateEndpointRequest, Endpoint, CursorPageEndpoint, TransferRequest, TransferResponse, GetRatesRequest, GetRatesResponse, EstimateResponse, CreateRefundRequest, Refund, PageRefund } from "./openapi/index";
export * from "./openapi/models/all";
export * from "./openapi/apis/exception";
export interface ApiClientOptions {
debug?: boolean;
serverUrl?: string;
}
export declare class ApiClient {
readonly _configuration: Configuration;
readonly orders: Orders;
readonly endpoints: Endpoints;
readonly currencies: Currencies;
readonly transfers: Transfers;
readonly rates: Rates;
readonly refunds: Refunds;
constructor(apiKey: string, secret: string, options: ApiClientOptions);
}
export interface PostOptions {
idempotencyKey?: string;
}
interface ListOptions {
page: number;
size: number;
}
export interface OrderListOptions extends ListOptions {
walletId?: string;
currency?: string;
userId?: string;
creator?: string;
status?: "PENDING" | "PAID" | "EXPIRED" | "FAILED" | "COMPLETED";
}
declare class Orders {
private readonly api;
constructor(config: Configuration);
list(options: OrderListOptions): Promise<PageOrder>;
retrieve(idOrUid: string): Promise<Order>;
create(createOrderRequest: CreateOrderRequest, options?: PostOptions): Promise<Order>;
}
export interface CurrencyListOptions {
cursor?: string;
limit: number;
rated?: boolean;
}
declare class Currencies {
private readonly api;
constructor(config: Configuration);
list(options: CurrencyListOptions): Promise<CursorPageCurrency>;
findByCode(code: string): Promise<Currency>;
}
interface EstimateOptions {
baseCurrency: string;
toCurrency: string;
baseAmount: string;
}
declare class Rates {
private readonly api;
constructor(config: Configuration);
estimate(options: EstimateOptions): Promise<EstimateResponse>;
getRates(getRatesRequest: GetRatesRequest): Promise<GetRatesResponse>;
}
declare class Transfers {
private readonly api;
constructor(config: Configuration);
transfer(transferRequest: TransferRequest, options?: PostOptions): Promise<TransferResponse>;
}
export interface EndpointListOptions {
cursor?: string;
limit: number;
}
declare class Endpoints {
private readonly api;
constructor(config: Configuration);
create(createEndpointRequest: CreateEndpointRequest, options?: PostOptions): Promise<Endpoint>;
delete(endpointId: string): Promise<void>;
retrieve(endpointId: string): Promise<Endpoint>;
list(options: EndpointListOptions): Promise<CursorPageEndpoint>;
}
export interface RefundListOptions extends ListOptions {
orderId?: string;
}
declare class Refunds {
private readonly api;
constructor(config: Configuration);
list(options: RefundListOptions): Promise<PageRefund>;
create(createRefundRequest: CreateRefundRequest, options?: PostOptions): Promise<Refund>;
retrieve(idOrUid: string): Promise<Refund>;
}
export declare class WebhookClient {
private readonly publicKey;
constructor(publicKey: string);
verify(payload: string, signature: string): Promise<boolean>;
}