@vtex/payment-provider
Version:
VTEX Payment Provider SDK
16 lines (15 loc) • 1.09 kB
TypeScript
import type { IOClients, ParamsContext, RecorderState, ServiceConfig, ServiceContext } from '@vtex/api';
import { Service } from '@vtex/api';
import type { Constructor } from 'ramda';
import type { PaymentRequest } from './typings/api';
import type PaymentProvider from './paymentProvider';
export interface PaymentProviderServiceConfig<T extends IOClients = IOClients, U extends PaymentProviderState = PaymentProviderState, V extends ParamsContext = ParamsContext> extends ServiceConfig<T, U, V> {
connector: Constructor<PaymentProvider<T, U, V>>;
}
export interface PaymentProviderState<T extends PaymentRequest = PaymentRequest> extends RecorderState {
requestBody: T;
}
export type PaymentProviderContext<T extends IOClients = IOClients, U extends PaymentProviderState = PaymentProviderState, V extends ParamsContext = ParamsContext> = ServiceContext<T, U, V>;
export declare class PaymentProviderService<T extends IOClients, U extends PaymentProviderState, V extends ParamsContext> extends Service<T, U, V> {
constructor(config: PaymentProviderServiceConfig<T, U, V>);
}