UNPKG

@angularui/theme

Version:

⚠️ DEPRECATED: This package has been rebranded to @slateui/theme. Please migrate to the new package. Modern Theme Management for Angular - A lightweight, feature-rich theme library with automatic dark mode detection, SSR support, and zero configuration re

54 lines (49 loc) 1.77 kB
import * as _angular_core from '@angular/core'; import { OnDestroy, Provider, EnvironmentProviders } from '@angular/core'; type Theme = 'light' | 'dark' | 'system'; type ThemeStrategy = 'attribute' | 'class'; interface ThemeConfig { defaultTheme?: Theme; storageKey?: string; strategy?: ThemeStrategy; enableAutoInit?: boolean; enableColorScheme?: boolean; enableSystem?: boolean; forcedTheme?: Theme; } declare class ThemeService implements OnDestroy { private readonly platformId; private readonly config; private readonly storageManager; private readonly mediaManager; private readonly domManager; private isInitialized; private isDestroyed; private lastAppliedTheme; private readonly themeSignal; private readonly systemThemeSignal; readonly theme: _angular_core.Signal<Theme>; readonly systemTheme: _angular_core.Signal<"light" | "dark">; readonly resolvedTheme: _angular_core.Signal<"light" | "dark">; get initialized(): boolean; get isForced(): boolean; initialize(): void; setTheme(theme: Theme): void; toggle(): void; isDark(): boolean; isLight(): boolean; isSystem(): boolean; getConfig(): ThemeConfig; ngOnDestroy(): void; cleanup(): void; private setupManagers; private loadInitialTheme; private setFallbackThemes; private handleSystemThemeChange; private setupEffects; static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThemeService, never>; static ɵprov: _angular_core.ɵɵInjectableDeclaration<ThemeService>; } declare function provideUiTheme(config?: ThemeConfig): (Provider | EnvironmentProviders)[]; export { ThemeService, provideUiTheme }; export type { Theme, ThemeConfig, ThemeStrategy };