import { S as SearchParamsConfig } from './types-DFB05V_k.js';
export { R as RouterProvider, U as UseParamsReturn } from './types-DFB05V_k.js';
export { useSearchParams } from './react/hooks/index.js';
export { SearchParamsProvider } from './react/provider.js';
export { Parser, ParserOptions, parseAsIsoDateTime, parseAsStringEnum, parseAsTimestamp } from './parsers.js';
import 'react/jsx-runtime';
import 'react';

declare function useNextAdapter(): {
    pathname: string;
    searchParams: URLSearchParams;
    navigate: (url: string) => void;
};

declare function useReactAdapter(): {
    pathname: string;
    searchParams: URLSearchParams;
    navigate: (url: string) => void;
};

declare function useVanillaAdapter(): {
    pathname: string;
    searchParams: URLSearchParams;
    navigate: (url: string) => void;
};

/**
 * Converts a value to an array if it isn't already one.
 */
declare function toArray<T>(value: T | T[] | undefined): T[];
/**
 * Serializes a value to a URL-safe string.
 */
declare function serialize(value: unknown): string;
/**
 * Deserializes a URL-safe string to a value.
 */
declare function deserialize<T>(value: string): T | undefined;
/**
 * Creates a new URLSearchParams instance with updated parameters.
 */
declare function updateSearchParams(current: URLSearchParams, key: string, values: string[]): URLSearchParams;
/**
 * Validates search parameter inputs.
 */
declare function validateParams(key: string, values: unknown | unknown[]): void;
/**
 * Creates a URL string from pathname and search params.
 */
declare function createUrl(pathname: string, params: URLSearchParams): string;
/**
 * Processes multiple parameter updates.
 */
declare function batchUpdateParams(current: URLSearchParams, updates: Record<string, string[]>): URLSearchParams;

declare const defaultConfig: SearchParamsConfig;

export { SearchParamsConfig, batchUpdateParams, createUrl, defaultConfig, deserialize, serialize, toArray, updateSearchParams, useNextAdapter, useReactAdapter, useVanillaAdapter, validateParams };
