UNPKG

molstar

Version:

A comprehensive macromolecular library.

71 lines (70 loc) 2.99 kB
/** * Copyright (c) 2020 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ /// <reference types="react" /> import { CollapsableControls, PurePluginUIComponent } from '../base'; import { StructureElement } from '../../mol-model/structure'; import { Mat4 } from '../../mol-math/linear-algebra'; import { ParamDefinition as PD } from '../../mol-util/param-definition'; import { StateObjectRef, StateObjectCell } from '../../mol-state'; import { PluginStateObject } from '../../mol-plugin-state/objects'; import { StructureSelectionHistoryEntry } from '../../mol-plugin-state/manager/structure/selection'; export declare class StructureSuperpositionControls extends CollapsableControls { defaultState(): { isCollapsed: boolean; header: string; brand: { accent: "gray"; svg: typeof import("../controls/icons").FlipToFrontSvg; }; isHidden: boolean; }; componentDidMount(): void; renderControls(): JSX.Element; } export declare const StructureSuperpositionParams: { alignSequences: PD.BooleanParam; }; export declare type StructureSuperpositionOptions = PD.ValuesFor<typeof StructureSuperpositionParams>; declare type SuperpositionControlsState = { isBusy: boolean; action?: 'byChains' | 'byAtoms' | 'options'; canUseDb?: boolean; options: StructureSuperpositionOptions; }; interface LociEntry { loci: StructureElement.Loci; label: string; cell: StateObjectCell<PluginStateObject.Molecule.Structure>; } interface AtomsLociEntry extends LociEntry { atoms: StructureSelectionHistoryEntry[]; } export declare class SuperpositionControls extends PurePluginUIComponent<{}, SuperpositionControlsState> { state: SuperpositionControlsState; componentDidMount(): void; get selection(): import("../../mol-plugin-state/manager/structure/selection").StructureSelectionManager; transform(s: StateObjectRef<PluginStateObject.Molecule.Structure>, matrix: Mat4): Promise<void>; superposeChains: () => Promise<void>; superposeAtoms: () => Promise<void>; superposeDb: () => Promise<void>; toggleByChains: () => void; toggleByAtoms: () => void; toggleOptions: () => void; highlight(loci: StructureElement.Loci): void; moveHistory(e: StructureSelectionHistoryEntry, direction: 'up' | 'down'): void; focusLoci(loci: StructureElement.Loci): void; lociEntry(e: LociEntry, idx: number): JSX.Element; historyEntry(e: StructureSelectionHistoryEntry, idx: number): JSX.Element; atomsLociEntry(e: AtomsLociEntry, idx: number): JSX.Element; get chainEntries(): LociEntry[]; get atomEntries(): AtomsLociEntry[]; addByChains(): JSX.Element; addByAtoms(): JSX.Element; superposeByDbMapping(): JSX.Element; private setOptions; render(): JSX.Element; } export {};