/** * Focus Helpers - Convenient APIs for common state mutations. * * This module provides: * - Reducer helpers (toggle, increment, etc.) for use with list.set() and map.set() * - Re-exports list() and map() from their dedicated modules */ export { list, disposalGroup, getNamedGroup, type ListOptions, type FocusList, type DisposalGroup, type FocusAutoDispose, type FocusAutoDisposeOptions, } from './list'; export { map, type MapOptions, type FocusMap } from './map'; /** * Toggle a boolean value. Works with undefined (treats as false). * * @example * ```ts * list.set(0, toggle()); // toggles item at index 0 * map.set('active', toggle()); // toggles 'active' key * ``` */ export declare function toggle(): (prev: boolean | undefined) => boolean; /** * Increment a number by a given amount (default: 1). * * @example * ```ts * map.set('count', increment()); // +1 * map.set('count', increment(5)); // +5 * ``` */ export declare function increment(amount?: number): (prev: number | undefined) => number; /** * Decrement a number by a given amount (default: 1). * * @example * ```ts * map.set('count', decrement()); // -1 * map.set('count', decrement(5)); // -5 * ``` */ export declare function decrement(amount?: number): (prev: number | undefined) => number; /** * Multiply a number by a factor. * * @example * ```ts * map.set('price', multiply(1.1)); // increase by 10% * map.set('price', multiply(2)); // double * ``` */ export declare function multiply(factor: number): (prev: number | undefined) => number; /** * Divide a number by a divisor. * * @example * ```ts * map.set('price', divide(2)); // halve * ``` */ export declare function divide(divisor: number): (prev: number | undefined) => number; /** * Clamp a number within min/max bounds. * * @example * ```ts * map.set('volume', clamp(0, 100)); // ensure 0-100 * ``` */ export declare function clamp(min: number, max: number): (prev: number | undefined) => number; /** * Append string to existing value. * * @example * ```ts * map.set('log', append('\n' + message)); * ``` */ export declare function append(suffix: string): (prev: string | undefined) => string; /** * Prepend string to existing value. * * @example * ```ts * map.set('path', prepend('/prefix')); * ``` */ export declare function prepend(prefix: string): (prev: string | undefined) => string; /** * Shallow merge object properties. * * @example * ```ts * map.set('user', merge({ name: 'John' })); * map.set('settings', merge({ theme: 'dark' })); * ``` */ export declare function merge(partial: Partial): (prev: T | undefined) => T; /** * Reset to a default value (ignores previous). * * @example * ```ts * map.set('count', reset(0)); * map.set('items', reset([])); * ``` */ export declare function reset(defaultValue: T): (prev: T | undefined) => T; //# sourceMappingURL=focusHelpers.d.ts.map