import { ITsccSpec } from '@tscc/tscc-spec';
import MultiMap from '../MultiMap';
import { ModuleFormat } from 'rollup';
export default interface ITsccSpecRollupFacade extends ITsccSpec {
    resolveRollupExternalDeps(id: string): string;
    /**
     * It must respect prefix option of the spec.
     */
    getRollupOutputNameToEntryFileMap(): {
        [name: string]: string;
    };
    /**
     * Maps an entry module's fileName to other entry module's fileNames which the module
     * depends on. Here filenames are those which bundles generated by rollup will be written to.
     * This map is supposed to be ordered by an order that is provided by user, or yet topologically
     * sorted.
     */
    getRollupOutputNameDependencyMap(): MultiMap<string, string>;
    /**
     * Returns a key-value pair that can be directly used to rollup output.globals option.
     */
    getRollupExternalModuleNamesToGlobalMap(): {
        [moduleName: string]: string;
    };
    /**
     * Returns a module format that final bundles will use, based on spec.chunkFormat.
     */
    getRollupOutputModuleFormat(): ModuleFormat;
}
