UNPKG

@furystack/shades

Version:

Google Authentication Provider for FuryStack

38 lines 2.1 kB
import { type Injector } from '@furystack/inject'; import { deserializeQueryString as defaultDeserializeQueryString, serializeToQueryString as defaultSerializeToQueryString } from '@furystack/rest'; import { ObservableValue } from '@furystack/utils'; export declare class LocationService implements Disposable { private readonly serializeToQueryString; readonly deserializeQueryString: (fullQueryString: string) => Record<string, unknown>; constructor(serializeToQueryString?: <T extends object>(queryObject: T) => string, deserializeQueryString?: (fullQueryString: string) => Record<string, unknown>); private originalPushState; private originalReplaceState; [Symbol.dispose](): void; /** * Observable value that will be updated when the location pathname (e.g. /page/1) changes */ onLocationPathChanged: ObservableValue<string>; /** * Observable value that will be updated when the location hash (e.g. #hash) changes */ onLocationHashChanged: ObservableValue<string>; /** * Observable value that will be updated when the location search (e.g. ?search=1) changes */ onLocationSearchChanged: ObservableValue<string>; onDeserializedLocationSearchChanged: ObservableValue<any>; locationDeserializerObserver: import("@furystack/utils").ValueObserver<string>; updateState: () => void; readonly searchParamObservables: Map<string, ObservableValue<any>>; /** * Gets or creates an observable for a search parameter * @param key The search param key (e.g. ?search=1 -> search) * @param defaultValue The default value if not provided * @returns An observable with the current value (or default value) of the search param */ useSearchParam<T>(key: string, defaultValue: T): ObservableValue<T>; private popStateListener; private hashChangeListener; } export declare const useCustomSearchStateSerializer: (injector: Injector, serialize: typeof defaultSerializeToQueryString, deserialize: typeof defaultDeserializeQueryString) => void; //# sourceMappingURL=location-service.d.ts.map