import GirafeHTMLElement from '../../base/GirafeHTMLElement.js'; import ThemeLayer from '../../models/layers/themelayer.js'; import CustomTheme from '../../models/customtheme.js'; declare const ThemeTypes: readonly ["all", "favorites", "custom"]; type ThemeType = (typeof ThemeTypes)[number]; declare class ThemeComponent extends GirafeHTMLElement { templateUrl: null; styleUrls: null; template: () => import("uhtml").Hole; newIcon: string; menuOpen: boolean; openedOnce: boolean; activeThemeType: ThemeType; clickOutsideContainer: HTMLElement | null; get customThemes(): CustomTheme[]; get allThemes(): Record; get favoriteThemes(): (ThemeLayer | CustomTheme)[]; get activeThemes(): Record | (ThemeLayer | CustomTheme)[]; constructor(); registerEvents(): void; render(): void; onBlur(): void; toggleThemesList(): void; activateThemeType(themeType: ThemeType): void; onThemeChanged(theme: ThemeLayer | CustomTheme): void; isThemeActive(theme: ThemeLayer | CustomTheme): boolean; isThemeFavorite(theme: ThemeLayer | CustomTheme): boolean; onThemeFavoriteChanged(theme: ThemeLayer | CustomTheme, e: Event): void; isThemeTypeActive(themeType: ThemeType): boolean; isCustomTheme(theme: ThemeLayer | CustomTheme): theme is CustomTheme; onCustomThemeChanged(customTheme: CustomTheme): void; onAddCustomTheme(): Promise; onDeleteCustomTheme(customTheme: CustomTheme, e: Event): Promise; protected connectedCallback(): void; } export default ThemeComponent;