UNPKG

igniteui-webcomponents

Version:

Ignite UI for Web Components is a complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.

27 lines (26 loc) 744 B
import type { CSSResult } from 'lit'; export type Theme = 'material' | 'bootstrap' | 'indigo' | 'fluent'; export type ThemeVariant = 'light' | 'dark'; export type Themes = { light: { [K in Theme]?: CSSResult; }; dark: { [K in Theme]?: CSSResult; }; }; export type ThemeChangedCallback = (theme: Theme) => unknown; /** * A controller responsible for adopting various component themes; * See also {@link updateWhenThemeChanges}. */ export interface ThemeController { /** * The name of the currently adopted theme. See {@link Theme}. */ theme: Theme; /** * Optional callback function to invoke when the theme is changed at runtime. */ onThemeChanged?: ThemeChangedCallback; }