import { EntityDict } from '../oak-app-domain'; import { Feature } from 'oak-frontend-base'; import { CommonAspectDict } from 'oak-common-aspect'; import { Cache } from 'oak-frontend-base/es/features/cache'; import { LocalStorage } from 'oak-frontend-base/es/features/localStorage'; import AspectDict from '../aspects/AspectDict'; import { BackendRuntimeContext } from '../context/BackendRuntimeContext'; import { FrontendRuntimeContext } from '../context/FrontendRuntimeContext'; import { ETheme, IThemeState } from '../types/Theme'; export default class Theme, FrontCxt extends FrontendRuntimeContext, AD extends AspectDict & CommonAspectDict> extends Feature { private cache; private themeState; private storage; constructor(cache: Cache>, storage: LocalStorage); get(): IThemeState; set(themeState: IThemeState): void; toggleSetting(): void; switchTheme(finalTheme: ETheme): void; openSystemTheme(): void; getColor(): string; switchColor(color: string): void; insertThemeStylesheet(theme: string, color: string, mode: 'light' | 'dark'): void; }