import { Configuration } from "./Configuration"; import { Gateway } from "./Gateway"; import { Payment } from "./Payment"; import { PaginatedArray } from "./util"; export declare class PaymentGateway { /** * @hidden */ gateway: Gateway; /** * @hidden */ config: Configuration; /** * @param gateway * @hidden */ constructor(gateway: Gateway); /** * Find a specific payment * ``` * const payment = await client.payment.find('P-aabbccc'); * ``` * @param paymentId Trolley payment id (e.g. "P-aabccc") */ find(paymentId: string, batchId?: string): Promise; /** * Create a new payment in a batch * ``` * const payment = await client.payment.create('B-xx99bb', { * recipient: { * email: 'tom.jones@example.com', * }, * sourceAmount: '10.99', * }); * ``` * @param batchId Trolley payment id (e.g. "B-xx999bb") * @param body Payment information */ create(batchId: string, body: any): Promise; /** * Update a given payment * ``` * const success = await client.payment.update('P-aabbccc', 'B-xx99bb', { * sourceAmount: '99.99', * }); * ``` * @param paymentId Trolley payment id (e.g. "P-aabccc") * @param batchId Trolley payment id (e.g. "B-xx999bb") * @param body Payment update information */ update(paymentId: string, batchId: string, body: any): Promise; /** * Delete a given payment -- Note you can only delete non processed payments * ``` * const success = await client.payment.remove('P-aabbccc', 'B-xx99bb'); * ``` * @param paymentId Trolley payment id (e.g. "P-aabccc") * @param batchId Trolley payment id (e.g. "B-xx999bb") */ remove(paymentId: string, batchId: string): Promise; /** * Search for payments in a given batch * @param query Object containing either search key, usually either "recipientId" or "batchId" * @param page Page number (1 based) * @param pageSize Page size (0...1000) * @param term Any search terms to look for */ search(query: { [key: string]: string; }, page?: number, pageSize?: number, term?: string): Promise>; }