1 | import { ContributionProvider } from '../common/contribution-provider';
|
2 | import { Theme, ThemeType } from '../common/theme';
|
3 | import { ColorRegistry } from './color-registry';
|
4 | import { FrontendApplicationContribution } from './frontend-application';
|
5 | import { ThemeService } from './theming';
|
6 | export declare const StylingParticipant: unique symbol;
|
7 | export interface StylingParticipant {
|
8 | registerThemeStyle(theme: ColorTheme, collector: CssStyleCollector): void;
|
9 | }
|
10 | export interface ColorTheme {
|
11 | type: ThemeType;
|
12 | label: string;
|
13 | getColor(color: string): string | undefined;
|
14 | }
|
15 | export interface CssStyleCollector {
|
16 | addRule(rule: string): void;
|
17 | }
|
18 | export declare class StylingService implements FrontendApplicationContribution {
|
19 | protected cssElement: HTMLStyleElement;
|
20 | protected readonly themeService: ThemeService;
|
21 | protected readonly colorRegistry: ColorRegistry;
|
22 | protected readonly themingParticipants: ContributionProvider<StylingParticipant>;
|
23 | onStart(): void;
|
24 | protected applyStyling(theme: Theme): void;
|
25 | }
|
26 |
|
\ | No newline at end of file |