UNPKG

@rcsb/rcsb-saguaro-app

Version:
29 lines (28 loc) 1.43 kB
import { RcsbFvTrackDataElementInterface } from "@rcsb/rcsb-saguaro/lib/RcsbDataManager/RcsbDataManager"; import { RcsbAnnotationConfigInterface } from "../../../../RcsbAnnotationConfig/AnnotationConfigInterface"; import { Features, SequenceReference, AnnotationReference } from "@rcsb/rcsb-api-tools/lib/RcsbGraphQL/Types/Borrego/GqlTypes"; import { AnnotationProcessingInterface } from "../../../../RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface"; import { RcsbFvTrackDataAnnotationInterface } from "../../RcsbFvTrackFactory/RcsbFvTrackDataAnnotationInterface"; export interface TrackManagerFactoryInterface<T extends any[]> { getTrackManager(...args: T): TrackManagerInterface; } export interface TrackManagerInterface { getId(): string; getConfig(): RcsbAnnotationConfigInterface | undefined; getRange(): { min: number; max: number; }; addFeature(ann: { reference: SequenceReference | undefined; queryId: string; source: AnnotationReference; targetId: string; feature: Features; }, annotationProcessing?: AnnotationProcessingInterface): void; size(): number; forEach(f: (ann: RcsbFvTrackDataAnnotationInterface, loc: string) => void): void; addAll(trackElementsMap: TrackManagerInterface, color?: string): void; getTrackProvenance(): Set<string>; values(): Array<RcsbFvTrackDataElementInterface>; }