import { Interceptor, InvocationContext, Provider, Setter, ValueOrPromise } from '@loopback/core';
import { ILogger } from '@sourceloop/core';
import { IAuthUser } from 'loopback4-authentication';
import { WebhookSecretRepository } from '../repositories';
export declare class CallbackVerifierProvider implements Provider<Interceptor> {
    private readonly logger;
    private readonly webhookSecretRepo;
    private readonly setCurrentUser;
    private readonly systemUser;
    constructor(logger: ILogger, webhookSecretRepo: WebhookSecretRepository, setCurrentUser: Setter<IAuthUser>, systemUser: IAuthUser);
    value(): <T>(invocationCtx: InvocationContext, next: () => ValueOrPromise<T>) => Promise<T>;
    intercept<T>(invocationCtx: InvocationContext, next: () => ValueOrPromise<T>): Promise<T>;
}
export type TempUser = {
    userTenantId: string;
    tenantType: string;
    tenantId?: string;
} & IAuthUser;
