import { PluginUIComponent } from 'molstar/lib/mol-plugin-ui/base';
import { AccountTreeOutlinedSvg, HelpOutlineSvg, HomeOutlinedSvg, SaveOutlinedSvg, TuneSvg } from 'molstar/lib/mol-plugin-ui/controls/icons';
import { StateSnapshots } from 'molstar/lib/mol-plugin-ui/state/snapshots';
import React from 'react';
import { SegmentTree } from '../segment-tree';
/** Body of 'root' (aka Home) tab in the left panel */
declare class HomeTabBody extends PluginUIComponent<{}, {
    tab: string;
}> {
    render(): import("react/jsx-runtime").JSX.Element;
}
/** Header of 'data' (aka State Tree) tab in the left panel */
declare class DataTabHeader extends PluginUIComponent<{}, {
    tab: string;
}> {
    render(): import("react/jsx-runtime").JSX.Element;
}
/** Body of 'data' (aka State Tree) tab in the left panel */
declare class DataTabBody extends PluginUIComponent<{}, {
    tab: string;
}> {
    render(): import("react/jsx-runtime").JSX.Element;
}
/** Body of 'help' tab in the left panel (core help + PDBe-specific help) */
declare class PDBeHelpContent extends PluginUIComponent<{}, {
    tab: string;
}> {
    render(): import("react/jsx-runtime").JSX.Element;
}
/** Body of 'setting' tab in the left panel (excluding Behaviors) */
declare class FullSettings extends PluginUIComponent {
    private setSettings;
    componentDidMount(): void;
    render(): import("react/jsx-runtime").JSX.Element;
}
/** Left panel tabs in core Molstar */
export declare const CoreLeftPanelTabs: {
    readonly root: {
        readonly id: "root";
        readonly title: "Home";
        readonly icon: typeof HomeOutlinedSvg;
        readonly body: typeof HomeTabBody;
    };
    readonly data: {
        readonly id: "data";
        readonly title: "State Tree";
        readonly icon: typeof AccountTreeOutlinedSvg;
        readonly header: typeof DataTabHeader;
        readonly body: typeof DataTabBody;
        readonly dirtyOn: (plugin: import("molstar/lib/mol-plugin/context").PluginContext) => import("rxjs").Subject<{
            state: import("molstar/lib/mol-state").State;
            inTransaction: boolean;
        }>;
    };
    readonly states: {
        readonly id: "states";
        readonly title: "Plugin State";
        readonly icon: typeof SaveOutlinedSvg;
        readonly header: () => import("react/jsx-runtime").JSX.Element;
        readonly body: typeof StateSnapshots;
    };
    readonly help: {
        readonly id: "help";
        readonly title: "Help";
        readonly icon: typeof HelpOutlineSvg;
        readonly body: typeof PDBeHelpContent;
    };
    readonly settings: {
        readonly id: "settings";
        readonly title: "Plugin Settings";
        readonly icon: typeof TuneSvg;
        readonly body: typeof FullSettings;
    };
};
/** Additional PDBe-specific left panel tabs */
export declare const PDBeLeftPanelTabs: {
    readonly segments: {
        readonly id: "segments";
        readonly title: "Superpose Segments";
        readonly icon: React.FunctionComponent<{}>;
        readonly header: () => import("react/jsx-runtime").JSX.Element;
        readonly body: typeof SegmentTree;
        readonly showWhen: (plugin: import("molstar/lib/mol-plugin/context").PluginContext) => boolean;
    };
};
export {};
