import { type FSWatcher } from 'node:fs'; export declare const WATCH_FALLBACK_MS = 5000; export interface WatchMonitor { close(): void; } export interface ResilientWatchOptions { label: string; startWatching: () => FSWatcher[]; poll?: () => void; warn?: (message: string) => void; } export interface SnapshotWatchOptions { label: string; snapshot: () => string | null; startWatching: (onChange: () => void) => FSWatcher[]; onChange: () => void; warn?: (message: string) => void; } export interface FileWatchOptions { label: string; filePath: string; onChange: () => void; warn?: (message: string) => void; unref?: boolean; } export declare function createResilientWatchMonitor(options: ResilientWatchOptions): WatchMonitor; export declare function createSnapshotWatchMonitor(options: SnapshotWatchOptions): WatchMonitor; export declare function createFileWatchMonitor(options: FileWatchOptions): WatchMonitor;