import { Accessor } from 'solid-js';
import { DebounceFilterOptions } from '../utils/filters.js';
import { MaybeAccessor } from '../utils/types.js';
import 'solid-js/types/reactive/signal';

/**
 * Debounce updates of a Accessor.
 *
 * @see https://solidjs-use.github.io/solidjs-use/shared/accessorDebounced
 */
declare function accessorDebounced<T>(value: Accessor<T>, ms?: MaybeAccessor<number>, options?: DebounceFilterOptions): Accessor<T>;

export { accessorDebounced, accessorDebounced as debouncedAccessor, accessorDebounced as useDebounce };