import { Fragment } from './fragments';
import { TypeManifest } from './TypeManifest';
export declare class ImportMap {
    protected readonly _imports: Map<string, Set<string>>;
    protected readonly _aliases: Map<string, Record<string, string>>;
    add(module: string, imports: Set<string> | string[] | string): ImportMap;
    remove(module: string, imports: Set<string> | string[] | string): ImportMap;
    mergeWith(...others: (Fragment | ImportMap)[]): ImportMap;
    mergeWithManifest(manifest: TypeManifest): ImportMap;
    addAlias(module: string, name: string, alias: string): ImportMap;
    isEmpty(): boolean;
    resolve(dependencies?: Record<string, string>, useGranularImports?: boolean): Map<string, Set<string>>;
    toString(dependencies?: Record<string, string>, useGranularImports?: boolean): string;
}
//# sourceMappingURL=ImportMap.d.ts.map