export interface SyncBatcherOptions { /** * Flush scheduling strategy. * - "sync" flushes immediately when enqueue is called. * - "microtask" batches updates in the current tick. * - "timeout" batches updates in a setTimeout callback. */ mode?: "sync" | "microtask" | "timeout"; /** * Timeout used when mode="timeout". */ delayMs?: number; } export interface SyncBatcher { enqueue(action: TAction): void; flush(): void; clear(): void; size(): number; dispose(): void; } export declare function createSyncBatcher(applyBatch: (actions: TAction[]) => void, options?: SyncBatcherOptions): SyncBatcher; //# sourceMappingURL=sync-batcher.d.ts.map