/**
 * Copyright (c) 2020-2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
 *
 * @author David Sehnal <david.sehnal@gmail.com>
 * @author Alexander Rose <alexander.rose@weirdbyte.de>
 */
import { CollapsableControls, CollapsableState } from '../base.js';
import { ActionMenu } from '../controls/action-menu.js';
interface VolumeStreamingControlState extends CollapsableState {
    isBusy: boolean;
}
export declare class VolumeStreamingControls extends CollapsableControls<{}, VolumeStreamingControlState> {
    protected defaultState(): VolumeStreamingControlState;
    componentDidMount(): void;
    get pivot(): import("../../mol-plugin-state/manager/structure/hierarchy-state.js").StructureRef;
    canEnable(): boolean;
    renderEnable(): import("react/jsx-runtime").JSX.Element | null;
    renderParams(): import("react/jsx-runtime").JSX.Element | null;
    renderControls(): import("react/jsx-runtime").JSX.Element | null;
}
interface VolumeSourceControlState extends CollapsableState {
    isBusy: boolean;
    loadingLabel?: string;
    show?: 'hierarchy' | 'add-repr';
}
export declare class VolumeSourceControls extends CollapsableControls<{}, VolumeSourceControlState> {
    protected defaultState(): VolumeSourceControlState;
    componentDidMount(): void;
    private item;
    get hierarchyItems(): ActionMenu.Items[];
    get addActions(): ActionMenu.Items;
    get isEmpty(): boolean;
    get label(): string;
    selectCurrent: ActionMenu.OnSelect;
    private lazyLoad;
    selectAdd: ActionMenu.OnSelect;
    toggleHierarchy: () => void;
    toggleAddRepr: () => void;
    toggleVisibility: () => void;
    renderControls(): import("react/jsx-runtime").JSX.Element;
}
export {};
