UNPKG

@rcsb/rcsb-saguaro-3d

Version:
56 lines (55 loc) 2.31 kB
import * as React from "react"; import { StructureViewerInterface } from '../RcsbFvStructure/StructureViewerInterface'; import '../scss/RcsbFvMolstarStyle.module.scss'; import { RcsbFvSequenceInterface } from "../RcsbFvSequence/RcsbFvSequence"; import { RcsbFvStructureConfigInterface } from "../RcsbFvStructure/RcsbFvStructure"; import { RcsbFvContextManager } from "../RcsbFvContextManager/RcsbFvContextManager"; import { CSSProperties, ReactNode } from "react"; import { StructureViewerBehaviourObserverInterface } from "../RcsbFvStructure/StructureViewerBehaviourInterface"; export interface RcsbFv3DCssConfig { overwriteCss?: boolean; rootPanel?: CSSProperties; structurePanel?: CSSProperties; sequencePanel?: CSSProperties; } export interface RcsbFv3DComponentInterface<T, R, L, S, U> { structurePanelConfig: RcsbFvStructureConfigInterface<R, S>; sequencePanelConfig: RcsbFvSequenceInterface<T, U>; id: string; ctxManager: RcsbFvContextManager<T, R, S, U>; cssConfig?: RcsbFv3DCssConfig; unmount: (flag: boolean) => void; fullScreen: boolean; structureViewer: StructureViewerInterface<R, L, S>; structureViewerBehaviourObserver: StructureViewerBehaviourObserverInterface<R, L>; } interface RcsbFv3DComponentState<T, R, S, U> { structurePanelConfig: RcsbFvStructureConfigInterface<R, S>; sequencePanelConfig: RcsbFvSequenceInterface<T, U>; pfvScreenFraction: number; } export declare class RcsbFv3DComponent<T, R, L, S, U> extends React.Component<RcsbFv3DComponentInterface<T, R, L, S, U> & { resolve: () => void; }, RcsbFv3DComponentState<T, R, S, U>> { private readonly stateManager; private subscription; private readonly ROOT_DIV_ID; readonly state: RcsbFv3DComponentState<T, R, S, U>; render(): ReactNode; componentDidMount(): void; componentWillUnmount(): void; private useDefaultCss; private panelDelimiter; private structureCssConfig; private sequenceCssConfig; private static mainDivCssConfig; private subscribe; /**Unsubscribe className to rxjs events. Useful if many panels are created an destroyed.*/ private unsubscribe; private updateConfig; private splitPanelMouseDown; private splitPanelMouseUp; private mouseMove; private resize; } export {};