/// <reference types="node" />
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 class SecretKeyNotAvailableError extends Error {
    readonly keyId: string;
    constructor(message: string, keyId: string);
    name: string;
}
export interface SecretKeyStore {
    getSecretKey(keyId: string): Promise<string>;
}
export interface SignatureValidator {
    validate(body: string | Buffer, requestHeaders: RequestHeaders): Promise<void>;
}
export interface WebhooksContext {
    getSecretKey(keyId: string): Promise<string>;
}
