UNPKG

@embroider/macros

Version:

Standardized build-time macros for ember apps.

52 lines (51 loc) 1.86 kB
import type { PluginItem } from '@babel/core'; import type { FirstTransformParams } from './glimmer/ast-transform'; export type SourceOfConfig = (config: object) => { readonly name: string; readonly root: string; readonly version: string; }; export type Merger = (configs: object[], params: { sourceOfConfig: SourceOfConfig; }) => object; export default class MacrosConfig { private origAppRoot; static for(key: any, appRoot: string): MacrosConfig; private mode; private globalConfig; private isDevelopingPackageRoots; enableRuntimeMode(): void; enablePackageDevelopment(packageRoot: string): void; private _importSyncImplementation; get importSyncImplementation(): "cjs" | "eager"; set importSyncImplementation(value: 'cjs' | 'eager'); private constructor(); private get packageCache(); private get appRoot(); private _configWritable; private configs; private configSources; private mergers; setConfig(fromPath: string, packageName: string, config: object): void; setOwnConfig(fromPath: string, config: object): void; setGlobalConfig(fromPath: string, key: string, value: object): void; private internalSetConfig; useMerger(fromPath: string, merger: Merger): void; private cachedUserConfigs; private get userConfigs(); private makeConfigSourcer; babelPluginConfig(appOrAddonInstance?: any): PluginItem[]; static astPlugins(owningPackageRoot?: string): { plugins: Function[]; setConfig: (config: MacrosConfig) => void; lazyParams: FirstTransformParams; }; static transforms(owningPackageRoot?: string): { plugins: Function[]; setConfig: (config: MacrosConfig) => void; lazyParams: FirstTransformParams; }; private mergerFor; private resolvePackage; finalize(): void; }