import { DateRangeValue } from "../../types/DateRangeValue"; /** Format des dates en URL : compact et lisible. */ export declare const URL_DATE_FORMAT = "yyyy-MM-dd"; /** * Hook to synchronize state with URL search parameters. * @param key - URL parameter key * @param defaultValue - Default value when parameter is not in URL * @param parser - Optional function to parse string value to T * @param serializer - Optional function to serialize T to string */ export declare function useUrlState(key: string, defaultValue: T, parser?: (value: string) => T, serializer?: (value: T) => string): [T, (value: T) => void]; /** * Hook for string array URL state (comma-separated). */ export declare function useUrlArrayState(key: string, defaultValue?: string[]): [string[], (value: string[]) => void]; /** * Hook for number URL state. */ export declare function useUrlNumberState(key: string, defaultValue: number): [number, (value: number) => void]; /** Analyse une plage de dates au format `from_to` (chaque borne en `yyyy-MM-dd`). */ export declare const parseDateRange: (value: string) => DateRangeValue | undefined; /** Sérialise une plage de dates en `from_to` (borne haute omise si absente). */ export declare const serializeDateRange: (range: DateRangeValue | undefined) => string; /** * Hook for date range URL state (from_to, dates formatted as yyyy-MM-dd). */ export declare function useUrlDateRangeState(key: string): [DateRangeValue | undefined, (value: DateRangeValue | undefined) => void]; //# sourceMappingURL=useUrlState.d.ts.map