export declare const DEFAULT_PREFIX = "featureToggle.";
export type ToggleType = string | boolean | number;
export declare const cleanupOldToggles: (oldToggles: string[], prefix: string) => void;
export declare const asBoolean: (urlParamName: string) => (prefix: string) => boolean | null;
export declare const asBooleanWithDefault: (urlParamName: string, defaultValue: boolean) => (prefix: string) => boolean;
export declare const asString: (urlParamName: string) => (prefix: string) => string | null;
export declare const asStringWithDefault: (urlParamName: string, defaultValue: string) => (prefix: string) => string;
export declare const asNumber: (urlParamName: string) => (prefix: string) => number | null;
export declare const asNumberWithDefault: (urlParamName: string, defaultValue: number) => (prefix: string) => number;
type ToggleValueExtractor = (prefix: string) => ToggleType | null;
type ToggleValues<TOGGLE_DEFS> = TOGGLE_DEFS extends Record<string, ToggleValueExtractor> ? {
    [K in keyof TOGGLE_DEFS]: ReturnType<TOGGLE_DEFS[K]>;
} : never;
export declare const detectFeatureToggles: <TOGGLE_DEFS extends Record<string, ToggleValueExtractor>>(toggleDefinitions: TOGGLE_DEFS, oldToggles?: string[], prefix?: string) => ToggleValues<TOGGLE_DEFS>;
export {};
