import type { MessagingBot } from "./adapter.js"; export type { ImmediateEvent, MikanEvent, OneShotEvent, PeriodicEvent, PeriodicEventInfo, } from "./types.js"; import type { PeriodicEventInfo } from "./types.js"; export declare class EventsWatcher { private eventsDir; private botsByPlatform; private timers; private crons; private debounceTimers; private startTime; private watcher; private knownFiles; constructor(eventsDir: string, botsByPlatform: Record); /** * Start watching for events. Call this after platform bots are initialized. */ start(): void; /** * Stop watching and cancel all scheduled events. */ stop(): void; /** * Return all active periodic (cron) events with their next run time. */ getPeriodicEvents(): PeriodicEventInfo[]; private debounce; private scanExisting; private handleFileChange; private handleDelete; private cancelScheduled; private handleFile; private parseEvent; private resolvePlatform; private resolveConversationKind; private handleImmediate; private handleOneShot; private handlePeriodic; private execute; private reportEventDeliveryFailure; private buildEventPrompt; private deleteFile; } //# sourceMappingURL=events.d.ts.map