@theia/core
Version:
Theia is a cloud & desktop IDE framework implemented in TypeScript.
41 lines • 1.81 kB
TypeScript
/// <reference types="lodash" />
import { Title, Widget } from '@lumino/widgets';
import { ContributionProvider, Emitter, Event } from '../../common';
import { ColorRegistry } from '../color-registry';
import { Decoration, DecorationsServiceImpl } from '../decorations-service';
import { FrontendApplicationContribution } from '../frontend-application-contribution';
import { WidgetDecoration } from '../widget-decoration';
export declare const TabBarDecorator: unique symbol;
export interface TabBarDecorator {
/**
* The unique identifier of the tab bar decorator.
*/
readonly id: string;
/**
* Event that is fired when any of the available tab bar decorators has changes.
*/
readonly onDidChangeDecorations: Event<void>;
/**
* Decorate title.
* @param {Title<Widget>} title the title
* @returns decoration data.
*/
decorate(title: Title<Widget>): WidgetDecoration.Data[];
}
export declare class TabBarDecoratorService implements FrontendApplicationContribution {
protected readonly onDidChangeDecorationsEmitter: Emitter<void>;
readonly onDidChangeDecorations: Event<void>;
protected readonly contributions: ContributionProvider<TabBarDecorator>;
protected readonly decorationsService: DecorationsServiceImpl;
protected readonly colors: ColorRegistry;
initialize(): void;
fireDidChangeDecorations: import("lodash").DebouncedFunc<() => any>;
/**
* Assign tabs the decorators provided by all the contributions.
* @param {Title<Widget>} title the title
* @returns an array of its decoration data.
*/
getDecorations(title: Title<Widget>): WidgetDecoration.Data[];
protected fromDecoration(decoration: Decoration): WidgetDecoration.Data;
}
//# sourceMappingURL=tab-bar-decorator.d.ts.map