import { RcsbFvColorGradient, RcsbFvTrackDataElementInterface } from "@rcsb/rcsb-saguaro/lib/RcsbDataManager/RcsbDataManager";
import { RcsbFvRowConfigInterface } from "@rcsb/rcsb-saguaro/lib/RcsbFv/RcsbFvConfig/RcsbFvConfigInterface";
import { AlignedRegions, TargetAlignments } from "@rcsb/rcsb-api-tools/lib/RcsbGraphQL/Types/Borrego/GqlTypes";
import { PolymerEntityInstanceTranslate, AlignmentContextInterface } from "../../../../RcsbUtils/Translators/PolymerEntityInstanceTranslate";
import { TrackFactoryInterface } from "../TrackFactoryInterface";
import { AlignmentCollectConfig } from "../../../../RcsbCollectTools/AlignmentCollector/AlignmentCollectorInterface";
import { RcsbFvTrackDataAnnotationInterface } from "../RcsbFvTrackDataAnnotationInterface";
export type AlignmentRequestContextType = AlignmentCollectConfig & {
    querySequence?: string;
};
export declare class PlainAlignmentTrackFactory implements TrackFactoryInterface<[AlignmentRequestContextType, TargetAlignments]> {
    private readonly sequenceTrackFactory;
    private readonly trackTitleFactory;
    constructor(entityInstanceTranslator?: PolymerEntityInstanceTranslate);
    getTrack(alignmentRequestContext: AlignmentRequestContextType, targetAlignment: TargetAlignments, alignedRegionToTrackElementList?: (region: AlignedRegions, alignmentContext: AlignmentContextInterface) => Array<RcsbFvTrackDataElementInterface>, alignmentColor?: RcsbFvColorGradient): Promise<RcsbFvRowConfigInterface>;
    getAlignmentTrackConfiguration(alignmentQueryContext: AlignmentRequestContextType, targetAlignment: TargetAlignments, alignedRegionToTrackElementList: (region: AlignedRegions, alignmentContext: AlignmentContextInterface) => Array<RcsbFvTrackDataElementInterface>): {
        alignedBlocks: Array<RcsbFvTrackDataElementInterface>;
        mismatchData: Array<RcsbFvTrackDataElementInterface>;
        sequenceData: Array<RcsbFvTrackDataElementInterface>;
    };
    alignedRegionToTrackElementList(region: AlignedRegions, alignmentContext: AlignmentContextInterface): Array<RcsbFvTrackDataElementInterface>;
    addAuthorResIds(e: RcsbFvTrackDataAnnotationInterface, alignmentContext: AlignmentContextInterface): RcsbFvTrackDataElementInterface;
}
