export type ColorIdentifier = string; export type IconIdentifier = string; export interface ThemeColor { id: string; } export declare namespace ThemeColor { function isThemeColor(obj: unknown): obj is ThemeColor; } export declare function themeColorFromId(id: ColorIdentifier): { id: string; }; export interface ThemeIcon { readonly id: string; readonly color?: ThemeColor; } export declare namespace ThemeIcon { const iconNameSegment = "[A-Za-z0-9]+"; const iconNameExpression = "[A-Za-z0-9-]+"; const iconModifierExpression = "~[A-Za-z]+"; const iconNameCharacter = "[A-Za-z0-9~-]"; function asClassNameArray(icon: ThemeIcon): string[]; function asClassName(icon: ThemeIcon): string; function asCSSSelector(icon: ThemeIcon): string; function isThemeIcon(obj: unknown): obj is ThemeIcon; function fromString(str: string): ThemeIcon | undefined; function fromId(id: string): ThemeIcon; function modify(icon: ThemeIcon, modifier: "disabled" | "spin" | undefined): ThemeIcon; function getModifier(icon: ThemeIcon): string | undefined; function isEqual(ti1: ThemeIcon, ti2: ThemeIcon): boolean; /** * Returns whether specified icon is defined and has 'file' ID. */ function isFile(icon: ThemeIcon | undefined): boolean; /** * Returns whether specified icon is defined and has 'folder' ID. */ function isFolder(icon: ThemeIcon | undefined): boolean; }