import { Theme, ThemeInput } from '../themes'; import { Registry, RegistryInputItem, RegistryItem } from './Registry'; export interface ThemeRegistryItemExtras { } export type ThemeItem = RegistryItem & ThemeRegistryItemExtras; export type ThemeRegistryInput = RegistryInputItem; export type ThemeCollection = ThemeInput[]; /** * 🎨 ThemeRegistry */ export declare class ThemeRegistry extends Registry { /** * Adds an Item or an Item value to the registry. * * @param item */ register(key: string | T, item?: T): Promise; /** * Typeguard to check a given object is an input value * @param value */ protected isInputValue(value: any): value is ThemeRegistryInput['value']; /** * Typeguard to check a given object is a registry item * @param item */ protected isItem(item: any): item is ThemeItem; /** * Typeguard to check a given object is a input item * @param item */ protected isInputItem(item: any): item is ThemeRegistryInput; }