@embroider/macros
Version:
Standardized build-time macros for ember apps.
59 lines (58 loc) • 2.09 kB
TypeScript
export declare function dependencySatisfies(packageName: string, semverRange: string): boolean;
export declare function appEmberSatisfies(semverRange: string): boolean;
export declare function macroCondition(predicate: boolean): boolean;
export declare function each<T>(array: T[]): T[];
export declare function importSync(specifier: string): unknown;
export declare function getConfig<T>(packageName: string): T;
export declare function getOwnConfig<T>(): T;
export declare function getGlobalConfig<T>(): T;
export declare function isDevelopingApp(): boolean;
export declare function isTesting(): boolean;
export declare function setTesting(value: boolean): boolean;
export declare function failBuild(message: string): void;
export declare function moduleExists(packageName: string): boolean;
import type { HelperLike } from '@glint/template';
export interface EmbroiderMacrosRegistry {
macroGetOwnConfig: HelperLike<{
Args: {
Positional: [...keys: string[]];
};
Return: ReturnType<typeof getOwnConfig>;
}>;
macroGetConfig: HelperLike<{
Args: {
Positional: [packageName: string, ...keys: string[]];
};
Return: ReturnType<typeof getConfig>;
}>;
macroCondition: HelperLike<{
Args: {
Positional: [predicate: boolean];
};
Return: boolean;
}>;
macroDependencySatisfies: HelperLike<{
Args: {
Positional: Parameters<typeof dependencySatisfies>;
};
Return: ReturnType<typeof dependencySatisfies>;
}>;
macroAppEmberSatisfies: HelperLike<{
Args: {
Positional: Parameters<typeof appEmberSatisfies>;
};
Return: ReturnType<typeof appEmberSatisfies>;
}>;
macroMaybeAttrs: HelperLike<{
Args: {
Positional: [predicate: boolean, ...bareAttrs: unknown[]];
};
Return: void;
}>;
macroFailBuild: HelperLike<{
Args: {
Positional: Parameters<typeof failBuild>;
};
Return: ReturnType<typeof failBuild>;
}>;
}