import { type Readable } from 'svelte/store'; import type { Page } from '@sveltejs/kit'; type Goto = (url: string | URL, opts?: any) => any; export type ParamType = 'string' | 'string[]' | 'number' | 'number[]' | 'boolean' | 'date' | 'datetime' | 'json' | 'object'; export type QueryParamProps = { name: string; page: Readable; default?: Value; paramType?: ParamType; goto?: Goto; }; /** * Set a single querystring param */ export declare function queryParamStore(props: QueryParamProps): { subscribe: (this: void, run: import("svelte/store").Subscriber, invalidate?: () => void) => import("svelte/store").Unsubscriber; set: (value: Value) => void; apply: (params: URLSearchParams, newValue: Value) => void; }; export type QueryParamsProps = { page: Readable; defaults?: Values; paramTypes?: { [key: string]: ParamType; } | ((key: keyof Values) => ParamType); goto?: Goto; }; /** * Set all query string params based on object. Each object property represents a single query param */ export declare function queryParamsStore(props: QueryParamsProps): { subscribe: (this: void, run: import("svelte/store").Subscriber<{ [x: string]: any; }>, invalidate?: () => void) => import("svelte/store").Unsubscriber; set: (values: Values) => void; createParams: (newValues: Values) => URLSearchParams | undefined; createUrl: (newValues: Values) => URL | undefined; }; export declare function getParamConfig(paramType: ParamType): { encode: any; decode: any; }; export {}; //# sourceMappingURL=queryParamsStore.d.ts.map