export interface SystemjsConfigFile extends SystemjsConfigData { browserConfig: SystemjsConfigData; nodeConfig: SystemjsConfigData; devConfig: SystemjsConfigData; } export interface ModuleMapping { [module: string]: T; } export type ModuleFileMapping = ModuleMapping; export type ModuleImportMapping = ModuleMapping; export type ModuleMetaData = ModuleMetaDataBase| ModuleMetaDataCJS| ModuleMetaDataAMD| GlobalModuleMetaData; export type ModuleFormat = 'esm'|'amd'|'cjs'|'global'|'system'|string export interface ModuleMetaDataBase { format: 'esm'|'system'|string; ModuleMetaData: any; crossOrigin: 'anonymous'|'use-credentials'; esModule: boolean; integrity: string; loader: string; nonce: string; sourceMap: any; scriptLoad: boolean; } export interface ModuleMetaDataCJS extends ModuleMetaDataBase { format: 'cjs'; deps: string[]; globals: ModuleImportMapping; } export interface ModuleMetaDataAMD extends ModuleMetaDataBase { format: 'amd'; deps: string[]; } export interface GlobalModuleMetaData extends ModuleMetaDataBase { format: 'global'; exports: string|string[]; deps: string[]; globals: ModuleImportMapping; } export interface PackageDefine { defaultExtension: string|true; format: ModuleFormat; main: string; map: ModuleImportMapping|ModuleMapping; meta: ModuleMapping; } export interface PartialPackageDefine { defaultExtension?: string|true; format?: ModuleFormat; main?: string; map?: ModuleImportMapping|ModuleMapping>; meta?: ModuleMapping>; } export interface SystemjsConfigData { baseUrl: string; bundles: {}; depCache: ModuleFileMapping; map: ModuleImportMapping|ModuleMapping; meta: ModuleMapping; packages: ModuleMapping; packageConfigPaths: string[]; paths: ModuleImportMapping; pluginFirst: boolean; transpiler: string|false; warnings: boolean; wasm: boolean; }