import { EventHandler, InitModelOf, SimpleTab, SimpleTabArea, SimpleTabAreaTabSelectEvent, SimpleTabBox, SimpleTabBoxControllerModel, SimpleTabBoxViewActivateEvent, SimpleTabBoxViewAddEvent, SimpleTabBoxViewDeactivateEvent, SimpleTabBoxViewRemoveEvent, SimpleTabView } from '../index'; /** * The {@link SimpleTabBoxController} is used to link a {@link SimpleTabBox} with a {@link SimpleTabArea}. * There are {@link SimpleTabBox} with more than one {@link SimpleTabArea} to be actualized. * Therefore, the linking is separated in a controller. * The controller basically listens to 'viewAdd', 'viewRemove', 'viewActivate', 'viewDeactivate' on the {@link SimpleTabBox} and * updates the {@link SimpleTabArea}. */ export declare class SimpleTabBoxController implements SimpleTabBoxControllerModel { model: SimpleTabBoxControllerModel; tabBox: SimpleTabBox; tabArea: SimpleTabArea; protected _viewAddHandler: EventHandler>; protected _viewRemoveHandler: EventHandler>; protected _viewActivateHandler: EventHandler>; protected _viewDeactivateHandler: EventHandler>; protected _viewTabSelectHandler: EventHandler>; constructor(); init(model: InitModelOf): void; install(tabBox: SimpleTabBox, tabArea?: SimpleTabArea): void; uninstall(): void; protected _installListeners(): void; protected _uninstallListeners(): void; createTabArea(): SimpleTabArea; /** @internal */ _onViewAdd(event: { view: TView; siblingView?: TView; }): void; protected _shouldCreateTabForView(view: TView): boolean; protected _onViewRemove(event: SimpleTabBoxViewRemoveEvent): void; /** @internal */ _onViewActivate(event: { view: TView; }): void; protected _onViewDeactivate(event: SimpleTabBoxViewDeactivateEvent): void; protected _onViewTabSelect(event: SimpleTabAreaTabSelectEvent): void; protected _createTab(view: TView): SimpleTab; getTab(view: TView): SimpleTab; getTabs(): SimpleTab[]; static hasViewTab(view: SimpleTabView): boolean; } //# sourceMappingURL=SimpleTabBoxController.d.ts.map