import { EventEmitter } from 'events';
import { ThemeConfig } from '../types/monitoring';
export interface ThemeManagerOptions {
    themesDir?: string;
    autoSave?: boolean;
    enablePreview?: boolean;
}
export interface ThemePreview {
    themeId: string;
    components: string[];
    timestamp: Date;
}
export declare class ThemeManager extends EventEmitter {
    private themes;
    private currentThemeId;
    private customThemes;
    private themesDir;
    private options;
    private previewMode;
    private originalThemeId;
    constructor(options?: ThemeManagerOptions);
    getAvailableThemes(): string[];
    getTheme(themeId: string): ThemeConfig | undefined;
    getCurrentTheme(): ThemeConfig;
    getCurrentThemeId(): string;
    applyTheme(themeId: string): Promise<void>;
    createCustomTheme(theme: ThemeConfig): Promise<void>;
    updateCustomTheme(themeId: string, updates: Partial<ThemeConfig>): Promise<void>;
    deleteCustomTheme(themeId: string): Promise<void>;
    exportTheme(themeId: string, filePath: string): Promise<void>;
    importTheme(filePath: string): Promise<ThemeConfig>;
    startPreview(themeId: string): Promise<void>;
    endPreview(): Promise<void>;
    getCustomThemes(): ThemeConfig[];
    getBuiltInThemes(): ThemeConfig[];
    isInPreviewMode(): boolean;
    private ensureThemesDirectory;
    private loadBuiltInThemes;
    private loadCustomThemes;
    private saveCustomTheme;
    private applyThemeToInterface;
    private createDefaultTheme;
    private createDarkTheme;
    private createLightTheme;
    private createHighContrastTheme;
    private createDefaultComponentStyles;
    private createDarkComponentStyles;
    private createLightComponentStyles;
    private createHighContrastComponentStyles;
    destroy(): void;
}
export declare const themeManager: ThemeManager;
//# sourceMappingURL=theme-manager.d.ts.map