import { CollapsableControls, CollapsableState } from 'molstar/lib/mol-plugin-ui/base'; import { Button } from 'molstar/lib/mol-plugin-ui/controls/common'; import { ParameterControls } from 'molstar/lib/mol-plugin-ui/controls/parameters'; import { Slider } from 'molstar/lib/mol-plugin-ui/controls/slider'; import { ParamDefinition as PD } from 'molstar/lib/mol-util/param-definition'; import { VolsegEntry, VolsegEntryData } from './entry-root'; import { VolsegGlobalStateData } from './global-state'; import React from 'react'; interface VolsegUIData { globalState?: VolsegGlobalStateData; availableNodes: VolsegEntry[]; activeNode?: VolsegEntry; } declare namespace VolsegUIData { function changeAvailableNodes(data: VolsegUIData, newNodes: VolsegEntry[]): VolsegUIData; function changeActiveNode(data: VolsegUIData, newActiveRef: string): VolsegUIData; function equals(data1: VolsegUIData, data2: VolsegUIData): boolean; } export declare class VolsegUI extends CollapsableControls<{}, { data: VolsegUIData; }> { protected defaultState(): CollapsableState & { data: VolsegUIData; }; protected renderControls(): JSX.Element | null; private syncState; componentDidMount(): void; } export declare function SegmentationControls({ model }: { model: VolsegEntryData; }): import("react/jsx-runtime").JSX.Element | null; type ComponentParams | ((props: any) => JSX.Element)> = T extends React.Component ? P : T extends (props: infer P) => JSX.Element ? P : never; export declare function WaitingSlider({ value, onChange, ...etc }: { value: number; onChange: (value: number) => any; } & ComponentParams): import("react/jsx-runtime").JSX.Element; export declare function WaitingButton({ onClick, ...etc }: { onClick: () => any; } & ComponentParams): import("react/jsx-runtime").JSX.Element; export declare function WaitingParameterControls({ values, onChangeValues, ...etc }: { values: PD.ValuesFor; onChangeValues: (values: PD.ValuesFor) => any; } & ComponentParams>): import("react/jsx-runtime").JSX.Element; export {};