import { PaymentContext, SdkResponse } from "../../../model/types"; import { ApprovePaymentRequest, CancelApprovalPaymentResponse, CancelPaymentResponse, CapturePaymentRequest, CaptureResponse, CapturesResponse, CompletePaymentRequest, CompletePaymentResponse, CreateDisputeRequest, CreatePaymentRequest, CreatePaymentResponse, CreateTokenResponse, DeviceFingerprintDetails, DisputeResponse, DisputesResponse, ErrorResponse, FindPaymentsResponse, PaymentApprovalResponse, PaymentErrorResponse, PaymentResponse, RefundErrorResponse, RefundRequest, RefundResponse, RefundsResponse, ThirdPartyStatusResponse, TokenizePaymentRequest } from "../domain"; export interface PaymentsClient { /** * Resource /{merchantId}/payments - Create payment */ create(merchantId: string, postData: CreatePaymentRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments - Find payments */ find(merchantId: string, paymentContext: FindPaymentsParams): Promise>; /** * Resource /{merchantId}/payments/{paymentId} - Get payment */ get(merchantId: string, paymentId: string, paymentContext: GetPaymentParams): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/complete - Complete payment */ complete(merchantId: string, paymentId: string, postData: CompletePaymentRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/thirdpartystatus - Third party status poll */ thirdPartyStatus(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/tokenize - Create a token from payment */ tokenize(merchantId: string, paymentId: string, postData: TokenizePaymentRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/processchallenged - Approves challenged payment */ processchallenged(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/approve - Approve payment */ approve(merchantId: string, paymentId: string, postData: ApprovePaymentRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/capture - Capture payment */ capture(merchantId: string, paymentId: string, postData: CapturePaymentRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/finalizecapture - Finalize capture */ finalizecapture(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/cancelapproval - Undo capture payment */ cancelapproval(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/captures - Get captures of payment */ captures(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/refund - Create refund */ refund(merchantId: string, paymentId: string, postData: RefundRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/refunds - Get refunds of payment */ refunds(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/cancel - Cancel payment */ cancel(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/dispute - Create dispute */ dispute(merchantId: string, paymentId: string, postData: CreateDisputeRequest, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/disputes - Get disputes */ disputes(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; /** * Resource /{merchantId}/payments/{paymentId}/devicefingerprint - Get Device Fingerprint details */ devicefingerprint(merchantId: string, paymentId: string, paymentContext?: PaymentContext | null): Promise>; } export interface FindPaymentsParams extends PaymentContext { hostedCheckoutId?: string; merchantReference?: string; merchantOrderId?: number; offset?: number; limit?: number; } export interface GetPaymentParams extends PaymentContext { returnOperations?: boolean; }