@embroider/macros
Version:
Standardized build-time macros for ember apps.
32 lines (31 loc) • 1.12 kB
TypeScript
import type { NodePath, Node } from '@babel/traverse';
import type { Package } from '@embroider/shared-internals';
import { RewrittenPackageCache } from '@embroider/shared-internals';
import { ImportUtil } from 'babel-import-util';
import type * as Babel from '@babel/core';
export default interface State {
importUtil: ImportUtil;
removed: Set<Node>;
calledIdentifiers: Set<Node>;
jobs: (() => void)[];
packageCache: RewrittenPackageCache;
sourceFile: string;
pathToOurAddon(moduleName: string): string;
owningPackage(): Package;
originalOwningPackage(): Package;
opts: {
userConfigs: {
[pkgRoot: string]: unknown;
};
globalConfig: {
[key: string]: unknown;
};
owningPackageRoot: string | undefined;
isDevelopingPackageRoots: string[];
appPackageRoot: string;
embroiderMacrosConfigMarker: true;
hideRequires: boolean;
mode: 'compile-time' | 'run-time';
};
}
export declare function initState(t: typeof Babel, path: NodePath<Babel.types.Program>, state: State): void;