import { Interceptor, InvocationContext, Provider, Setter, ValueOrPromise } from '@loopback/core';
import { WebhookConfig } from '../types';
import { CryptoHelperService } from '../services';
import { WebhookSecretRepository } from '../repositories';
import { ILogger } from '@sourceloop/core';
import { IAuthUser } from 'loopback4-authentication';
export declare class WebhookVerifierProvider implements Provider<Interceptor> {
    private readonly webhookConfig;
    private readonly cryptoHelperService;
    private readonly webhookSecretRepo;
    private readonly logger;
    private readonly setCurrentUser;
    private readonly systemUser;
    constructor(webhookConfig: WebhookConfig, cryptoHelperService: CryptoHelperService, webhookSecretRepo: WebhookSecretRepository, logger: ILogger, setCurrentUser: Setter<IAuthUser>, systemUser: IAuthUser);
    value(): <T>(invocationCtx: InvocationContext, next: () => ValueOrPromise<T>) => Promise<T>;
    intercept<T>(invocationCtx: InvocationContext, next: () => ValueOrPromise<T>): Promise<T>;
}
