export type SerializedColorSchemeValue = typeof colorSchemeSerializedValues[number];
export type ColorSchemeValue = 'light' | 'dark';
export type ColorSchemeState = typeof colorSchemeStateValues[number];
export type ColorSchemeStateWithLegacy = ColorSchemeState | true | false | 'disabled' | 'disable' | 'off' | 'only';
export type ColorSchemeMode = 'auto' | 'manual' | 'only';
export type ColorSchemeChangeHandler = (value: ColorSchemeValue, state: ColorSchemeState) => void;
export declare const persistentKey = "discoveryjs:color-scheme";
export declare const colorSchemeSerializedValues: readonly ["auto", "light", "dark"];
export declare const colorSchemeStateValues: readonly ["auto", "light", "dark", "light-only", "dark-only"];
export declare function serializeColorSchemeState(state: ColorSchemeState): SerializedColorSchemeValue;
export declare function resolveColorSchemeValue(value?: ColorSchemeState, persistent?: boolean): ColorSchemeValue;
export declare class ColorScheme {
    #private;
    persistent: boolean;
    state: ColorSchemeState;
    value: ColorSchemeValue;
    serializedValue: SerializedColorSchemeValue;
    mode: ColorSchemeMode;
    constructor(value?: ColorSchemeState, persistent?: boolean);
    subscribe(fn: ColorSchemeChangeHandler, fire?: boolean): () => void;
    destroy(): void;
    set(state: ColorSchemeState): void;
    toggle(useAutoForManual?: boolean): void;
}
