UNPKG

@rcsb/rcsb-saguaro-app

Version:
48 lines (47 loc) 3.41 kB
import { RcsbFv } from "@rcsb/rcsb-saguaro/lib/RcsbFv/RcsbFv"; import { RcsbFvBoardConfigInterface, RcsbFvRowConfigInterface } from "@rcsb/rcsb-saguaro/lib/RcsbFv/RcsbFvConfig/RcsbFvConfigInterface"; import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/Translators/PolymerEntityInstanceTranslate"; import { AlignmentCollectorInterface } from "../../RcsbCollectTools/AlignmentCollector/AlignmentCollectorInterface"; import { AnnotationRequestContext, AnnotationCollectorInterface } from "../../RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface"; import { RcsbFvModuleBuildInterface, RcsbFvModuleInterface } from "./RcsbFvModuleInterface"; import { SequenceAlignments, SequenceAnnotations, Features, TargetAlignments } from "@rcsb/rcsb-api-tools/lib/RcsbGraphQL/Types/Borrego/GqlTypes"; import { TrackFactoryInterface } from "../RcsbFvFactories/RcsbFvTrackFactory/TrackFactoryInterface"; import { AlignmentRequestContextType } from "../RcsbFvFactories/RcsbFvTrackFactory/TrackFactoryImpl/AlignmentTrackFactory"; import { AnnotationConfigInterface } from "../../RcsbAnnotationConfig/AnnotationConfigInterface"; export declare abstract class RcsbFvAbstractModule implements RcsbFvModuleInterface { protected readonly rcsbFv: RcsbFv; protected readonly elementId: string; protected boardConfigData: RcsbFvBoardConfigInterface; protected rowConfigData: Array<RcsbFvRowConfigInterface>; protected polymerEntityInstance: PolymerEntityInstanceTranslate; protected alignmentCollector: AlignmentCollectorInterface; protected annotationCollector: AnnotationCollectorInterface; protected referenceTrack: RcsbFvRowConfigInterface; protected alignmentTracks: Array<RcsbFvRowConfigInterface>; protected annotationTracks: Array<RcsbFvRowConfigInterface>; protected buildConfig: RcsbFvModuleBuildInterface; private rcsbFvRowUpdatePromise; private activeDisplayFlag; constructor(elementId: string, rcsbFv: RcsbFv); setPolymerEntityInstanceTranslator(polymerEntityInstance: PolymerEntityInstanceTranslate): void; getPolymerEntityInstanceTranslator(): PolymerEntityInstanceTranslate; display(): Promise<void>; activeDisplay(): boolean; getFv(): RcsbFv; getTargets(): Promise<Array<string>>; getAlignmentResponse(): Promise<SequenceAlignments>; getFeatures(): Promise<Array<Features>>; getAnnotationConfigData(): Promise<Array<RcsbFvRowConfigInterface>>; build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>; wait(): Promise<void>; protected abstract protectedBuild(): Promise<void>; protected abstract concatAlignmentAndAnnotationTracks(): void; protected buildAlignmentTracks(alignmentRequestContext: AlignmentRequestContextType, alignmentResponse: SequenceAlignments, trackFactories?: { alignmentTrackFactory?: TrackFactoryInterface<[AlignmentRequestContextType, TargetAlignments]>; sequenceTrackFactory?: TrackFactoryInterface<[AlignmentRequestContextType, string]>; }): Promise<void>; protected buildAnnotationsTrack(annotationsRequestContext: AnnotationRequestContext, annotationsFeatures: SequenceAnnotations[], annotationConfigMap?: AnnotationConfigInterface): Promise<void>; protected getBoardConfig(): Promise<RcsbFvBoardConfigInterface>; protected getRowsConfig(): Promise<Array<RcsbFvRowConfigInterface>>; private buildExternalTracks; }