import { i as Options } from "./defs-BFMOAnmN.js"; import { Context, ProviderProps, ReactElement, ReactNode } from "react"; //#region src/adapters/lib/defs.d.ts type AdapterOptions = Pick; type UpdateUrlFunction = (search: URLSearchParams, options: Required) => void; type UseAdapterHook = (watchKeys: string[]) => AdapterInterface; type AdapterInterface = { searchParams: URLSearchParams; updateUrl: UpdateUrlFunction; getSearchParamsSnapshot?: () => URLSearchParams; rateLimitFactor?: number; autoResetQueueOnUpdate?: boolean; }; //#endregion //#region src/adapters/lib/context.d.ts type AdapterProps = { defaultOptions?: Partial>; processUrlSearchParams?: (search: URLSearchParams) => URLSearchParams; }; type AdapterContext = AdapterProps & { useAdapter: UseAdapterHook; }; declare const context: Context; declare global { interface Window { __NuqsAdapterContext?: typeof context; } } type AdapterProvider = (props: AdapterProps & { children: ReactNode; }) => ReactElement>; /** * Create a custom adapter (context provider) for nuqs to work with your framework / router. * * Adapters are based on React Context, * * @param useAdapter * @returns */ declare function createAdapterProvider(useAdapter: UseAdapterHook): AdapterProvider; //#endregion export { AdapterInterface as a, UseAdapterHook as c, createAdapterProvider as i, AdapterProps as n, AdapterOptions as o, AdapterProvider as r, UpdateUrlFunction as s, AdapterContext as t }; //# sourceMappingURL=context-C1cpdknp.d.ts.map