import type { RefSeqs, Track } from './types';
interface Jb2Track {
    trackId: string;
    name: string;
    description?: string;
    category?: string[];
    adapter?: Jb2Adapter;
    type?: string;
    defaultRendering?: string;
}
interface Jb2Adapter {
    type: string;
    features?: Jb2Feature[];
    bamLocation?: Jb2Location;
    cramLocation?: Jb2Location;
    craiLocation?: Jb2Location;
    fastaLocation?: Jb2Location;
    faiLocation?: Jb2Location;
    gziLocation?: Jb2Location;
    twoBitLocation?: Jb2Location;
    bigWigLocation?: Jb2Location;
    bigBedLocation?: Jb2Location;
    vcfGzLocation?: Jb2Location;
    gffLocation?: Jb2Location;
    gffGzLocation?: Jb2Location;
    gtfLocation?: Jb2Location;
    bedGzLocation?: Jb2Location;
    index?: {
        location: Jb2Location;
        indexType?: string;
    };
    rootUrlTemplate?: Jb2Location;
    sequenceAdapter?: Jb2Adapter;
}
interface Jb2Feature {
    refName: string;
    uniqueId: string;
    start: number;
    end: number;
}
interface Jb2Location {
    uri?: string;
    localPath?: string;
    blobId?: string;
    locationType?: string;
}
export declare function convertTrackConfig(jb1TrackConfig: Track, dataRoot: string, sequenceAdapter: Jb2Adapter): Jb2Track;
export declare function createRefSeqsAdapter(refSeqs: string | RefSeqs): Promise<Jb2Adapter>;
export {};
