/** * Copyright (c) 2022-2024 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose */ import { PluginUIComponent } from '../../../mol-plugin-ui/base.js'; import { State, StateObjectCell, StateSelection, StateTransformer } from '../../../mol-state/index.js'; import { ParamOnChange } from '../../../mol-plugin-ui/controls/parameters.js'; import { ParamDefinition as PD } from '../../../mol-util/param-definition.js'; import { Clip } from '../../../mol-util/clip.js'; import { Color } from '../../../mol-util/color/index.js'; import { ColorProps, LodParams, MesoscaleGroupProps, GraphicsMode } from '../data/state.js'; import React from 'react'; import { PluginStateObject as PSO } from '../../../mol-plugin-state/objects.js'; import { PluginContext } from '../../../mol-plugin/context.js'; export declare class ModelInfo extends PluginUIComponent<{}, { isDisabled: boolean; }> { state: { isDisabled: boolean; }; componentDidMount(): void; get info(): { selectionDescription: string; description: string; link: string; } | undefined; render(): import("react/jsx-runtime").JSX.Element | undefined; } declare const SelectionStyleParam: PD.Select<"color" | "outline" | "color+outline">; type SelectionStyle = typeof SelectionStyleParam['defaultValue']; export declare class SelectionInfo extends PluginUIComponent<{}, { isDisabled: boolean; }> { state: { isDisabled: boolean; }; componentDidMount(): void; get info(): { label: string; key: string; description?: string; }[]; find(label: string): void; remove(key: string): void; center(key: string): void; get selection(): import("react/jsx-runtime").JSX.Element; get style(): "color" | "color+outline" | "outline" | undefined; setStyle(value: SelectionStyle): void; renderStyle(): import("react/jsx-runtime").JSX.Element; render(): import("react/jsx-runtime").JSX.Element; } export declare function MesoMarkdownAnchor({ href, children, element }: { href?: string; children?: any; element?: any; }): any; export declare function MesoViewportSnapshotDescription(): import("react/jsx-runtime").JSX.Element | null; export declare class FocusInfo extends PluginUIComponent<{}, { isDisabled: boolean; }> { componentDidMount(): void; get info(): string; render(): import("react/jsx-runtime").JSX.Element; } export declare class EntityControls extends PluginUIComponent<{}, { isDisabled: boolean; }> { filterRef: React.RefObject; prevFilter: string; filterFocus: boolean; state: { isDisabled: boolean; }; componentDidMount(): void; componentDidUpdate(): void; get roots(): StateSelection.CellSeq>, import("../../../mol-state/index.js").StateObject>, any>>>>; setGroupBy: (value: number) => void; get groupBy(): number; setFilter: (value: string) => void; get filter(): string; setGraphics: (graphics: GraphicsMode) => void; get graphics(): GraphicsMode; renderGraphics(): import("react/jsx-runtime").JSX.Element; render(): import("react/jsx-runtime").JSX.Element; } declare class Node

extends PluginUIComponent

{ is(e: State.ObjectEvent): boolean; get ref(): string; get cell(): (P & { cell: StateObjectCell; depth: number; } & { children?: any; })["cell"]; get roots(): StateSelection.CellSeq>, import("../../../mol-state/index.js").StateObject>, any>>>>; componentDidMount(): void; } export declare class GroupNode extends Node<{ filter: string; }, { isCollapsed: boolean; action?: 'color' | 'clip' | 'root'; isDisabled: boolean; }> { state: { isCollapsed: boolean; action: undefined; isDisabled: boolean; }; toggleExpanded: (e: React.MouseEvent) => void; toggleColor: (e?: React.MouseEvent) => void; toggleClip: () => void; toggleRoot: () => void; showInfo: (e: React.MouseEvent) => void; highlight: (e: React.MouseEvent) => void; clearHighlight: (e: React.MouseEvent) => void; get groups(): StateSelection.CellSeq>, import("../../../mol-state/index.js").StateObject>, any>>>>; get allGroups(): StateObjectCell>, import("../../../mol-state/index.js").StateTransform>, import("../../../mol-state/index.js").StateObject>, any>>>[]; get entities(): StateObjectCell>, import("../../../mol-state/index.js").StateObject>, any>>>[]; get filteredEntities(): StateObjectCell>, import("../../../mol-state/index.js").StateObject>, any>>>[]; get allEntities(): StateObjectCell>, import("../../../mol-state/index.js").StateObject>, any>>>[]; get allFilteredEntities(): StateObjectCell>, import("../../../mol-state/index.js").StateObject>, any>>>[]; toggleVisible: (e: React.MouseEvent) => void; updateColor: (values: ColorProps) => void; updateRoot: (values: PD.Values) => Promise; updateClip: (values: PD.Values) => void; updateLod: (values: PD.Values) => void; update: (props: MesoscaleGroupProps) => void; renderColor(): import("react/jsx-runtime").JSX.Element; render(): import("react/jsx-runtime").JSX.Element | undefined; } export declare class EntityNode extends Node<{}, { action?: 'color' | 'clip'; isDisabled: boolean; }> { state: { action: undefined; isDisabled: boolean; }; clipMapping: import("../../../mol-util/param-mapping.js").ParamMapping<{ type: "none" | "sphere" | "cube" | "plane" | "cylinder" | "infiniteCone"; invert: boolean; position: PD.Normalize<{ x: /*elided*/ any; y: /*elided*/ any; z: /*elided*/ any; }>; rotation: PD.Normalize<{ axis: /*elided*/ any; angle: /*elided*/ any; }>; scale: PD.Normalize<{ x: /*elided*/ any; y: /*elided*/ any; z: /*elided*/ any; }>; }, PD.Values<{ variant: PD.Select; objects: PD.ObjectList; scale: import("../../../mol-math/linear-algebra.js").Vec3; transform: import("../../../mol-math/linear-algebra.js").Mat4; }>>; }> | undefined, PluginContext>; get groups(): StateSelection.CellSeq>, import("../../../mol-state/index.js").StateTransform; lightness: number; alpha: number; emissive: number; lod: PD.Normalize<{ lodLevels: /*elided*/ any; cellSize: /*elided*/ any; batchSize: /*elided*/ any; approximate: /*elided*/ any; }>; clip: PD.Normalize<{ type: /*elided*/ any; invert: /*elided*/ any; position: /*elided*/ any; rotation: /*elided*/ any; scale: /*elided*/ any; }>; }>>>>>; toggleVisible: (e: React.MouseEvent) => void; toggleColor: (e?: React.MouseEvent) => void; toggleClip: () => void; highlight: (e: React.MouseEvent) => void; clearHighlight: (e: React.MouseEvent) => void; toggleSelect: (e: React.MouseEvent) => void; center: (e: React.MouseEvent) => void; handleClick: (e: React.MouseEvent) => void; get colorValue(): Color | undefined; get illustrativeValue(): { illustrative: boolean; } | undefined; get lightnessValue(): { lightness: number; } | undefined; get opacityValue(): { alpha: number; } | undefined; get emissiveValue(): { emissive: number; } | undefined; get clipValue(): Clip.Props | undefined; get lodValue(): PD.Values | undefined; get patternValue(): { amplitude: number; frequency: number; } | undefined; updateColor: ParamOnChange; updateIllustrative: (values: PD.Values) => Promise; updateLightness: (values: PD.Values) => Promise; updateOpacity: (values: PD.Values) => Promise; updateEmissive: (values: PD.Values) => Promise; updateClip: (props: Clip.Props) => void; updateLod: (values: PD.Values) => void; updatePattern: (values: PD.Values) => Promise; render(): import("react/jsx-runtime").JSX.Element; } export {};