UNPKG

@vtex/payment-provider

Version:
22 lines (21 loc) 1.64 kB
import type { IOClients, ParamsContext, ServiceContext } from '@vtex/api'; import { PaymentProviderState } from '.'; import type { AuthorizationRequest, AuthorizationResponse, CancellationRequest, CancellationResponse, CreditCardAuthorization, InboundRequest, InboundResponse, RefundRequest, RefundResponse, SecureProxyTokensResponse, SettlementRequest, SettlementResponse } 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>); retry(request: AuthorizationRequest | string): Promise<unknown>; callback(request: AuthorizationRequest | string, data?: AuthorizationResponse): Promise<unknown>; getTokens(request: CreditCardAuthorization): Promise<SecureProxyTokensResponse>; createToken(request: CreditCardAuthorization, payload: any): Promise<SecureProxyTokensResponse>; 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;