UNPKG

molstar

Version:

A comprehensive macromolecular library.

60 lines (59 loc) 2.28 kB
/** * Copyright (c) 2018-2025 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> * @author Ventura Rivera <venturaxrivera@gmail.com> */ import { StateTransformParameters } from '../mol-plugin-ui/state/common'; import { PluginSpec } from '../mol-plugin/spec'; import { StateAction, StateTransformer } from '../mol-state'; import { Loci } from '../mol-model/loci'; import { SequenceViewMode } from './sequence'; export { PluginUISpec }; interface PluginUISpec extends PluginSpec { customParamEditors?: [StateAction | StateTransformer, StateTransformParameters.Class][]; components?: { controls?: PluginUISpec.LayoutControls; remoteState?: 'none' | 'default'; structureTools?: React.ComponentClass | React.FC; viewport?: { view?: React.ComponentClass | React.FC; controls?: React.ComponentClass | React.FC; snapshotDescription?: React.ComponentClass | React.FC; }; sequenceViewer?: { view?: React.ComponentClass | React.FC; modeOptions?: SequenceViewMode[]; defaultMode?: SequenceViewMode; }; hideTaskOverlay?: boolean; disableDragOverlay?: boolean; selectionTools?: { controls?: React.ComponentClass | React.FC; granularityOptions?: Loci.Granularity[]; hide?: { granularity?: boolean; union?: boolean; subtract?: boolean; intersect?: boolean; set?: boolean; theme?: boolean; componentAdd?: boolean; componentRemove?: boolean; undo?: boolean; help?: boolean; cancel?: boolean; }; }; }; } declare namespace PluginUISpec { interface LayoutControls { top?: React.ComponentClass | React.FC | 'none'; left?: React.ComponentClass | React.FC | 'none'; right?: React.ComponentClass | React.FC | 'none'; bottom?: React.ComponentClass | React.FC | 'none'; } } export declare const DefaultPluginUISpec: () => PluginUISpec;