18 lines
661 B
TypeScript
18 lines
661 B
TypeScript
import { Feature } from 'oak-frontend-base/es/types/Feature';
|
|
import { LocalStorage } from 'oak-frontend-base/es/features/localStorage';
|
|
import { ETheme, IThemeState } from '../types/Theme';
|
|
export default class Theme extends Feature {
|
|
private themeState;
|
|
private storage;
|
|
private loadSavedState;
|
|
constructor(storage: LocalStorage);
|
|
get(): IThemeState;
|
|
set(themeState: IThemeState): void;
|
|
toggleSetting(): void;
|
|
switchThemeMode(finalThemeMode: ETheme): void;
|
|
openSystemTheme(): void;
|
|
getColor(): string;
|
|
switchColor(color: string): void;
|
|
insertThemeStylesheet(theme: string, color: string, mode: ETheme): void;
|
|
}
|