import { PaymentContext, SdkResponse } from "../../../model/types";
import { ApprovePayoutRequest, CreatePayoutRequest, ErrorResponse, FindPayoutsResponse, PayoutErrorResponse, PayoutResponse } from "../domain";
export interface PayoutsClient {
/**
* Resource /{merchantId}/payouts - Create payout
*/
create(merchantId: string, postData: CreatePayoutRequest, paymentContext?: PaymentContext | null): Promise>;
/**
* Resource /{merchantId}/payouts - Find payouts
*/
find(merchantId: string, paymentContext: FindPayoutsParams): Promise>;
/**
* Resource /{merchantId}/payouts/{payoutId} - Get payout
*/
get(merchantId: string, payoutId: string, paymentContext?: PaymentContext | null): Promise>;
/**
* Resource /{merchantId}/payouts/{payoutId}/approve - Approve payout
*/
approve(merchantId: string, payoutId: string, postData: ApprovePayoutRequest, paymentContext?: PaymentContext | null): Promise>;
/**
* Resource /{merchantId}/payouts/{payoutId}/cancel - Cancel payout
*/
cancel(merchantId: string, payoutId: string, paymentContext?: PaymentContext | null): Promise>;
/**
* Resource /{merchantId}/payouts/{payoutId}/cancelapproval - Undo approve payout
*/
cancelapproval(merchantId: string, payoutId: string, paymentContext?: PaymentContext | null): Promise>;
}
export interface FindPayoutsParams extends PaymentContext {
merchantReference?: string;
merchantOrderId?: number;
offset?: number;
limit?: number;
}