connect-sdk-nodejs
Version:
SDK to communicate with the Ingenico ePayments platform using the Ingenico Connect Server API
37 lines (36 loc) • 1.56 kB
TypeScript
/// <reference types="node" />
import { WebhooksEvent } from "../domain/webhooks";
export declare class ApiVersionMismatchError extends Error {
readonly eventApiVersion: string;
readonly sdkApiVersion: string;
constructor(message: string, eventApiVersion: string, sdkApiVersion: string);
name: string;
}
export interface InMemorySecretKeyStore extends SecretKeyStore {
storeSecretKey(keyId: string, secretKey: string): void;
removeSecretKey(keyId: string): void;
clear(): void;
}
export declare type RequestHeaders = {
[header: string]: string | string[] | undefined;
};
export declare type SecretKeyCallback = (e: Error | null, secretKey: string | null) => void;
export declare class SecretKeyNotAvailableError extends Error {
readonly keyId: string;
constructor(message: string, keyId: string);
name: string;
}
export interface SecretKeyStore {
getSecretKey(keyId: string, cb: SecretKeyCallback): void;
}
export declare type UnmarshalCallback = (e: Error | null, event: WebhooksEvent | null) => void;
export declare type ValidateCallback = (e: Error | null) => void;
export interface WebhooksContext {
getSecretKey(keyId: string, cb: SecretKeyCallback): void;
}
export interface WebhooksHelper {
init(context: WebhooksContext): WebhooksHelper;
validate(body: string | Buffer, requestHeaders: RequestHeaders, cb: ValidateCallback): void;
unmarshal(body: string | Buffer, requestHeaders: RequestHeaders, cb: UnmarshalCallback): void;
readonly inMemorySecretKeyStore: InMemorySecretKeyStore;
}