import type { DirectorySyncEventType, Directory, User, Group, EventCallback, DirectorySyncEvent, IWebhookEventsLogger, IDirectoryConfig, IEventProcessor, JacksonOptionWithRequiredLogger } from '../typings'; export declare const eventLockTTL = 30; export declare const webhookLogsTTL: number; export declare const eventLockKey = "dsync-event-lock"; export declare const googleLockKey = "dsync-google-lock"; interface Payload { directory: Directory; group?: Group | null; user?: User | null; } interface EventCallbackParams { opts: JacksonOptionWithRequiredLogger; directories: IDirectoryConfig; eventProcessor: IEventProcessor; webhookLogs: IWebhookEventsLogger; } export declare const sendEvent: (event: DirectorySyncEventType, payload: Payload, callback?: EventCallback) => Promise; export declare const handleEventCallback: ({ opts, directories, eventProcessor, webhookLogs, }: EventCallbackParams) => Promise<(event: DirectorySyncEvent) => Promise>; export {};