import { GroupBox, GroupBoxEventMap, GroupBoxModel, Menu, PropertyChangeEvent, Tab, TabBox, TabItemLayout } from '../../../index';
export interface TabItemModel extends GroupBoxModel {
    /**
     * Configures the keystroke to select this tab item.
     *
     * @see {@link Action.keyStroke} for the format and examples.
     */
    selectionKeystroke?: string;
    marked?: boolean;
}
export interface TabItemEventMap extends GroupBoxEventMap {
    'propertyChange:marked': PropertyChangeEvent<boolean>;
}
export declare class TabItem extends GroupBox implements TabItemModel {
    model: TabItemModel;
    eventMap: TabItemEventMap;
    self: TabItem;
    parent: TabBox;
    selectionKeystroke: string;
    marked: boolean;
    constructor();
    protected _createLayout(): TabItemLayout;
    /**
     * Handled by {@link Tab}
     */
    protected _computeTitleVisible(labelVisible: boolean): boolean;
    /**
     * Handled by {@link Tab}
     */
    addStatus(): void;
    /**
     * Handled by {@link Tab}
     */
    protected _computeStatusVisible(): boolean;
    setMarked(marked: boolean): void;
    getContextMenuItems(onlyVisible?: boolean): Menu[];
    /**
     * Selects and focuses the corresponding {@link Tab}.
     * @returns true if the tab could be focused, false if not
     */
    focus(): boolean;
    isFocused(): boolean;
    select(): void;
    getTab(): Tab;
}
//# sourceMappingURL=TabItem.d.ts.map