import { IRPCProtocol } from '@opensumi/ide-connection';
import { ArgumentProcessor, IExtHostStatusBar, IExtensionDescription, IMainThreadStatusBar } from '../../../common/vscode';
import { Disposable, ThemeColor } from '../../../common/vscode/ext-types';
import * as types from '../../../common/vscode/ext-types';
import type vscode from 'vscode';
export declare class ExtHostStatusBar implements IExtHostStatusBar {
    protected readonly proxy: IMainThreadStatusBar;
    protected readonly rpcProtocol: IRPCProtocol;
    protected readonly argumentProcessors: ArgumentProcessor[];
    constructor(rpcProtocol: IRPCProtocol);
    setStatusBarMessage(text: string, arg?: number | Thenable<any>): Disposable;
    createStatusBarItem(extension: IExtensionDescription, id?: string, alignment?: types.StatusBarAlignment, priority?: number): vscode.StatusBarItem;
}
export declare class StatusBarItemImpl implements vscode.StatusBarItem {
    private _rpcProtocol;
    private _extension;
    private _id;
    private _alignment;
    private _priority;
    private static ALLOWED_BACKGROUND_COLORS;
    private static ALLOWED_BACKGROUND_CSS_VARS;
    private readonly _entryId;
    private _text;
    private _tooltip?;
    private _name?;
    private _color;
    private _backgroundColor;
    private _command;
    private _isVisible;
    private _timeoutHandle;
    private _proxy;
    private _accessibilityInformation?;
    constructor(_rpcProtocol: IRPCProtocol, _extension: IExtensionDescription, _id: string | undefined, _alignment?: vscode.StatusBarAlignment, _priority?: number);
    get id(): string;
    get entryId(): string;
    get alignment(): vscode.StatusBarAlignment;
    get priority(): number;
    get text(): string;
    set text(text: string);
    get name(): string | undefined;
    set name(name: string | undefined);
    get tooltip(): string | vscode.MarkdownString | undefined;
    set tooltip(tooltip: string | vscode.MarkdownString | undefined);
    get color(): string | ThemeColor | undefined;
    set color(color: string | ThemeColor | undefined);
    get backgroundColor(): ThemeColor | undefined;
    set backgroundColor(color: ThemeColor | undefined);
    get accessibilityInformation(): vscode.AccessibilityInformation | undefined;
    set accessibilityInformation(accessibilityInformation: vscode.AccessibilityInformation | undefined);
    get command(): string | vscode.Command | undefined;
    set command(command: string | vscode.Command | undefined);
    show(): void;
    hide(): void;
    private update;
    dispose(): void;
    static nextId(): string;
    static ID_PREFIX: string;
}
//# sourceMappingURL=ext.host.statusbar.d.ts.map