/**
 * @module viw-webgl-component
 */
import * as VIM from 'vim-webgl-viewer/';
import { ComponentCamera } from '../helpers/camera';
import { CursorManager } from '../helpers/cursor';
import { Isolation } from '../helpers/isolation';
import { ComponentSettings } from '../settings/settings';
import { SideState } from '../sidePanel/sideState';
import { IControlBarSection } from './controlBarSection';
import { ModalRef } from '../panels/modal';
export { buttonDefaultStyle, buttonBlueStyle } from './controlBarButton';
export { sectionDefaultStyle, sectionBlueStyle } from './controlBarSection';
/**
 * A map function that changes the context menu.
 */
export type ControlBarCustomization = (e: IControlBarSection[]) => IControlBarSection[];
export declare const elementIds: {
    sectionCamera: string;
    sectionTools: string;
    sectionSettings: string;
    sectionMeasure: string;
    sectionSectionBox: string;
    buttonCameraOrbit: string;
    buttonCameraLook: string;
    buttonCameraPan: string;
    buttonCameraZoom: string;
    buttonCameraZoomWindow: string;
    buttonCameraZoomToFit: string;
    buttonProjectInspector: string;
    buttonSettings: string;
    buttonHelp: string;
    buttonMaximize: string;
    buttonSectionBox: string;
    buttonMeasure: string;
    buttonToggleIsolation: string;
    buttonMeasureDelete: string;
    buttonMeasureDone: string;
    buttonSectionBoxReset: string;
    buttonSectionBoxShrinkToSelection: string;
    buttonSectionBoxClip: string;
    buttonSectionBoxIgnore: string;
    buttonSectionBoxDone: string;
};
/**
 * JSX Component for the control bar.
 */
export declare function ControlBar(props: {
    viewer: VIM.Viewer;
    camera: ComponentCamera;
    modal: ModalRef;
    side: SideState;
    isolation: Isolation;
    cursor: CursorManager;
    settings: ComponentSettings;
    customization: ControlBarCustomization | undefined;
}): import("react/jsx-runtime").JSX.Element;
