import { BenchColumnEventMap, BenchColumnModel, BenchRowLayoutData, DisplayViewId, EventHandler, FlexboxLayout, FlexboxLayoutData, InitModelOf, OutlineContent, SimpleTabBox, SimpleTabBoxViewActivateEvent, SimpleTabBoxViewAddEvent, SimpleTabBoxViewDeactivateEvent, SimpleTabBoxViewRemoveEvent, Splitter, SplitterMoveEvent, Widget } from '../../index';
export declare class BenchColumn extends Widget implements BenchColumnModel {
    model: BenchColumnModel;
    eventMap: BenchColumnEventMap;
    self: BenchColumn;
    tabBoxes: SimpleTabBox<OutlineContent>[];
    layoutData: BenchRowLayoutData;
    components: (SimpleTabBox<OutlineContent> | Splitter)[];
    layoutCacheKey: string[];
    protected _widgetToTabBox: Record<string, SimpleTabBox<OutlineContent>>;
    protected _removeViewInProgress: number;
    protected _viewAddHandler: EventHandler<SimpleTabBoxViewAddEvent>;
    protected _viewRemoveHandler: EventHandler<SimpleTabBoxViewRemoveEvent>;
    protected _viewActivateHandler: EventHandler<SimpleTabBoxViewActivateEvent>;
    protected _viewDeactivateHandler: EventHandler<SimpleTabBoxViewDeactivateEvent>;
    constructor();
    static TAB_BOX_INDEX: {
        readonly TOP: 0;
        readonly CENTER: 1;
        readonly BOTTOM: 2;
    };
    static TAB_BOX_CLASSES: readonly ["north", "center", "south"];
    protected _init(model: InitModelOf<this>): void;
    protected _render(): void;
    protected _renderProperties(): void;
    protected _renderTabBoxes(): void;
    protected _renderTabBox(tabBox: SimpleTabBox<OutlineContent>): void;
    postRender(): void;
    protected _createLayout(): FlexboxLayout;
    updateLayoutData(layoutData: BenchRowLayoutData, cacheKey: string[]): void;
    setLayoutData(layoutData: BenchRowLayoutData): void;
    getLayoutData(): BenchRowLayoutData;
    protected _onViewAdd(event: SimpleTabBoxViewAddEvent): void;
    protected _onViewRemove(event: SimpleTabBoxViewRemoveEvent): void;
    protected _onViewActivate(event: SimpleTabBoxViewActivateEvent): void;
    protected _onViewDeactivate(event: SimpleTabBoxViewDeactivateEvent): void;
    activateView(view: OutlineContent): void;
    protected _createTabBoxes(): void;
    _revalidateSplitters(): void;
    _getTabBoxLayoutData(tabBox: SimpleTabBox): FlexboxLayoutData;
    protected _updateSplitterMovable(): void;
    protected _onSplitterMove(event: SplitterMoveEvent): void;
    addView(view: OutlineContent, bringToFront?: boolean): void;
    getTabBox(displayViewId: DisplayViewId): SimpleTabBox<OutlineContent>;
    removeView(view: OutlineContent, showSiblingView?: boolean): void;
    viewCount(): number;
    hasView(view: OutlineContent): boolean;
    hasViews(): boolean;
    getViews(displayViewId?: string): OutlineContent[];
    getComponents(): (SimpleTabBox<OutlineContent> | Splitter)[];
    visibleTabBoxes(): SimpleTabBox<OutlineContent>[];
    updateFirstLastMarker(): void;
}
//# sourceMappingURL=BenchColumn.d.ts.map