@rcsb/rcsb-saguaro-app
Version:
RCSB 1D Saguaro Web App
48 lines (47 loc) • 3.41 kB
TypeScript
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;
}