@discoveryjs/discovery
Version:
Frontend framework for rapid data (JSON) analysis, shareable serverless reports and dashboards
25 lines (24 loc) • 1.41 kB
TypeScript
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;
}