UNPKG

@vtex/payment-provider-sdk

Version:
21 lines (20 loc) 1.49 kB
import type { ServiceContext, IOClients, ParamsContext } from '@vtex/api'; import type { PaymentProviderState } from '.'; import type { AvailablePaymentsResponse, AuthorizationRequest, AuthorizationResponse, CancellationRequest, CancellationResponse, RefundRequest, RefundResponse, SettlementRequest, SettlementResponse, ProviderManifestResponse, InboundResponse, InboundRequest } from './typings/api'; export declare abstract class PaymentProvider<ClientsT extends IOClients = IOClients, StateT extends PaymentProviderState = PaymentProviderState, CustomT extends ParamsContext = ParamsContext> { protected context: ServiceContext<ClientsT, StateT, CustomT>; protected apiKey: string; protected appToken: string; protected isTestSuite: boolean; private payments; constructor(context: ServiceContext<ClientsT, StateT, CustomT>); callback(request: AuthorizationRequest | string, data: AuthorizationResponse): Promise<unknown>; paymentMethods(): AvailablePaymentsResponse; abstract manifest(): ProviderManifestResponse; abstract authorize(authorization: AuthorizationRequest): Promise<AuthorizationResponse>; abstract cancel(cancellation: CancellationRequest): Promise<CancellationResponse>; abstract refund(refund: RefundRequest): Promise<RefundResponse>; abstract settle(settlement: SettlementRequest): Promise<SettlementResponse>; abstract inbound?(inbound: InboundRequest): Promise<InboundResponse>; } export default PaymentProvider;