UNPKG

@rcsb/rcsb-saguaro-3d

Version:
54 lines (53 loc) 2.33 kB
import * as React from "react"; import { StructureViewerInterface } from '../RcsbFvStructure/StructureViewerInterface'; import '../scss/RcsbFvMolstarStyle.module.scss'; import { RcsbFvStructureConfigInterface } from "../RcsbFvStructure/RcsbFvStructure"; import { CSSProperties, ReactNode } from "react"; import { StructureViewerBehaviourObserverInterface } from "../RcsbFvStructure/StructureViewerBehaviourInterface"; import { RcsbFvCustomSequenceInterface } from "../RcsbFvSequence/RcsbFvCustomSequence"; import { RcsbFvCustomContextManager } from "../RcsbFvContextManager/RcsbFvCustomContextManager"; export interface RcsbFv3DCssConfig { overwriteCss?: boolean; rootPanel?: CSSProperties; structurePanel?: CSSProperties; sequencePanel?: CSSProperties; } export interface RcsbFv3DCustomComponentInterface<R, L, S> { structurePanelConfig: RcsbFvStructureConfigInterface<R, S>; sequencePanelConfig: RcsbFvCustomSequenceInterface<R, L>; id: string; ctxManager: RcsbFvCustomContextManager<R, L, S>; cssConfig?: RcsbFv3DCssConfig; unmount: (flag: boolean) => void; fullScreen: boolean; structureViewer: StructureViewerInterface<R, L, S>; structureViewerBehaviourObserver: StructureViewerBehaviourObserverInterface<R, L>; } interface RcsbFv3DCustomComponentState<R, L, S> { structurePanelConfig: RcsbFvStructureConfigInterface<R, S>; sequencePanelConfig: RcsbFvCustomSequenceInterface<R, L>; pfvScreenFraction: number; } export declare class RcsbFv3DCustomComponent<R, L, S> extends React.Component<RcsbFv3DCustomComponentInterface<R, L, S>, RcsbFv3DCustomComponentState<R, L, S>> { private readonly stateManager; private subscription; private readonly ROOT_DIV_ID; readonly state: RcsbFv3DCustomComponentState<R, L, S>; 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 {};