/** * debounce - coalesce rapid calls into one trailing call after `ms` of quiet. * Used for remote search in the async dropdowns (SvMultiSelect/GridSelect/...), * but general-purpose. Returns the debounced function with `cancel()` (drop the * pending call) and `flush()` (run it now). Framework-free + pure. */ export type Debounced = ((...args: A) => void) & { cancel: () => void; flush: () => void; }; export declare function debounce(fn: (...args: A) => void, ms: number): Debounced;