UNPKG

1.81 kBTypeScriptView Raw
1/// <reference types="lodash" />
2import { Title, Widget } from '@phosphor/widgets';
3import { ContributionProvider, Emitter, Event } from '../../common';
4import { ColorRegistry } from '../color-registry';
5import { Decoration, DecorationsServiceImpl } from '../decorations-service';
6import { FrontendApplicationContribution } from '../frontend-application-contribution';
7import { WidgetDecoration } from '../widget-decoration';
8export declare const TabBarDecorator: unique symbol;
9export interface TabBarDecorator {
10 /**
11 * The unique identifier of the tab bar decorator.
12 */
13 readonly id: string;
14 /**
15 * Event that is fired when any of the available tab bar decorators has changes.
16 */
17 readonly onDidChangeDecorations: Event<void>;
18 /**
19 * Decorate title.
20 * @param {Title<Widget>} title the title
21 * @returns decoration data.
22 */
23 decorate(title: Title<Widget>): WidgetDecoration.Data[];
24}
25export declare class TabBarDecoratorService implements FrontendApplicationContribution {
26 protected readonly onDidChangeDecorationsEmitter: Emitter<void>;
27 readonly onDidChangeDecorations: Event<void>;
28 protected readonly contributions: ContributionProvider<TabBarDecorator>;
29 protected readonly decorationsService: DecorationsServiceImpl;
30 protected readonly colors: ColorRegistry;
31 initialize(): void;
32 fireDidChangeDecorations: import("lodash").DebouncedFunc<() => any>;
33 /**
34 * Assign tabs the decorators provided by all the contributions.
35 * @param {Title<Widget>} title the title
36 * @returns an array of its decoration data.
37 */
38 getDecorations(title: Title<Widget>): WidgetDecoration.Data[];
39 protected fromDecoration(decoration: Decoration): WidgetDecoration.Data;
40}
41//# sourceMappingURL=tab-bar-decorator.d.ts.map
\No newline at end of file