import * as _angular_core from '@angular/core'; import { Provider } from '@angular/core'; type ThemeMode = 'light' | 'dark' | 'auto' | 'season' | 'high-contrast'; type SeasonalTheme = 'spring' | 'summer' | 'autumn' | 'winter'; declare class ThemeService { private readonly platformId; private readonly destroyRef; private readonly _currentTheme; private readonly _isSystemDark; private mediaQueryCleanup?; readonly currentTheme: _angular_core.Signal; readonly isSystemDark: _angular_core.Signal; readonly currentSeason: _angular_core.Signal; readonly effectiveTheme: _angular_core.Signal; readonly isLightTheme: _angular_core.Signal; readonly isDarkTheme: _angular_core.Signal; readonly isHighContrastTheme: _angular_core.Signal; readonly isSeasonTheme: _angular_core.Signal; constructor(); private initializeBrowserFeatures; private getInitialTheme; private getInitialSystemPreference; private watchSystemPreference; private applyThemeToDOM; setTheme(theme: ThemeMode): void; toggleTheme(): void; resetToSystemPreference(): void; getCurrentTheme(): ThemeMode; getEffectiveTheme(): ThemeMode | SeasonalTheme; private cleanup; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵprov: _angular_core.ɵɵInjectableDeclaration; } declare class ThemeSwitcherComponent { protected readonly themeService: ThemeService; protected readonly currentTheme: _angular_core.Signal; private static readonly SEASON_ICONS; protected readonly seasonIcon: _angular_core.Signal; protected readonly themeIcon: _angular_core.Signal; protected readonly themeOptions: { value: ThemeMode; label: string; icon: string; }[]; protected selectTheme(theme: ThemeMode): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * Providers for the C2G Theme system that includes all necessary CDK dependencies */ declare const C2G_THEME_PROVIDERS: Provider[]; /** * Mock providers for testing or SSR environments where CDK might not be needed */ declare const C2G_THEME_MOCK_PROVIDERS: Provider[]; /** * Smart provider factory that chooses appropriate providers based on environment */ declare function getC2GThemeProviders(): Provider[]; declare const C2G_TRANSLATIONS: Record>; export { C2G_THEME_MOCK_PROVIDERS, C2G_THEME_PROVIDERS, C2G_TRANSLATIONS, ThemeService, ThemeSwitcherComponent, getC2GThemeProviders }; export type { ThemeMode };