/**
 * Resolves genome assemblies for locus scales.
 *
 * Keeps configured genome definitions and loaded `Genome` instances, supports
 * named and inline assemblies, and deduplicates concurrent URL loads.
 *
 * `ensureAssembly(...)` is the async loading boundary. `getGenome(...)` is
 * synchronous and expects required URL-backed assemblies to be ensured first.
 *
 * The default assembly comes from root `assembly`, a single configured genome,
 * or a single already-loaded built-in genome.
 */
export default class GenomeStore {
    /**
     * @param {string} baseUrl
     */
    constructor(baseUrl: string);
    /** @type {Map<string, Genome>} */
    genomes: Map<string, Genome>;
    baseUrl: string;
    /**
     * @param {import("../spec/genome.js").GenomeConfig} genomeConfig
     */
    initialize(genomeConfig: import("../spec/genome.js").GenomeConfig): Promise<void>;
    /**
     * @param {Map<string, import("../spec/root.js").NamedGenomeConfig>} genomesByName
     * @param {string} [defaultAssembly]
     */
    configureGenomes(genomesByName: Map<string, import("../spec/root.js").NamedGenomeConfig>, defaultAssembly?: string): void;
    /**
     * @returns {string | undefined}
     */
    getDefaultAssemblyName(): string | undefined;
    /**
     * @param {(string | import("../spec/scale.js").InlineLocusAssembly | undefined)[]} assemblies
     */
    ensureAssemblies(assemblies: (string | import("../spec/scale.js").InlineLocusAssembly | undefined)[]): Promise<void>;
    /**
     * @param {string | import("../spec/scale.js").InlineLocusAssembly} assembly
     * @returns {Promise<Genome>}
     */
    ensureAssembly(assembly: string | import("../spec/scale.js").InlineLocusAssembly): Promise<Genome>;
    /**
     * @param {string | import("../spec/scale.js").InlineLocusAssembly} [name] If not given, a default genome is returned.
     * @returns {Genome}
     */
    getGenome(name?: string | import("../spec/scale.js").InlineLocusAssembly): Genome;
    #private;
}
import Genome from "./genome.js";
//# sourceMappingURL=genomeStore.d.ts.map