interface QueryParams { page?: number; limit?: number; select?: string; filter?: string; [key: string]: any; } declare const queryParamKeys: { page: string; limit: string; select: string; filter: string; }; declare class QueryParamManager { private params; constructor(initialParams?: string | URLSearchParams | { [key: string]: string | string[]; }); /** * Parses the current URL's query string or a provided string/object into a QueryParams object. * @param queryInput Optional query string or object to parse. Defaults to current window.location.search. * @returns A QueryParams object. */ static parse(queryInput?: string | { [key: string]: string | string[]; }): QueryParams; /** * Gets the value of a specific query parameter. * @param key The key of the parameter to retrieve. * @returns The parameter's value as a string, or null if not found. */ get(key: keyof QueryParams): string | null; /** * Sets or updates a query parameter. * @param key The key of the parameter. * @param value The value to set. * @returns The QueryParamManager instance for chaining. */ set(key: keyof QueryParams, value: string | number | undefined): QueryParamManager; /** * Returns the query string representation of the current parameters. * @returns The URL-encoded query string, starting with '?'. */ toString(): string; /** * Returns the current parameters as a plain object. * @returns A plain object representing the query parameters. */ toObject(): QueryParams; } export { QueryParamManager, type QueryParams, queryParamKeys };