/** * 合法项目配置矩阵。 * 组合域来自 capability registry,供质量矩阵和模板展厅共同消费。 */ import type { FrameworkType, MicroFrontendEngine, PackageManagerType, ProjectConfigType, RouteModeType, UILibraryType } from '../types/index.ts'; export declare const CONFIG_MATRIX_BOOLEAN_FEATURES: readonly ["i18n", "sentry", "eslint", "husky"]; export interface ConfigMatrixOptions { /** 只保留全部关闭与全部开启两种布尔状态。 */ minimal?: boolean; /** 未参与组合轴时使用的固定值。 */ defaults?: { description?: string; author?: string; i18n?: boolean; sentry?: boolean; eslint?: boolean; husky?: boolean; }; /** 要参与组合的能力域;布尔值表示该 feature 是否作为组合轴。 */ combinations?: { frameworks?: readonly FrameworkType[]; uiLibraries?: Partial>; routeModes?: readonly RouteModeType[]; microFrontendEngines?: readonly MicroFrontendEngine[]; packageManagers?: readonly PackageManagerType[]; i18n?: boolean; sentry?: boolean; eslint?: boolean; husky?: boolean; }; } export interface ConfigMatrixEntry { name: string; config: Omit & { targetDir?: string; }; } /** * 生成全部合法能力组合。 * @param options 组合轴覆盖 * @returns 完整配置矩阵 */ export declare function generateConfigMatrix(options?: ConfigMatrixOptions): ConfigMatrixEntry[]; /** * 为矩阵组合生成稳定的公开路径标识。 * @param config 不含输出目录的项目配置 * @returns 带 schema 版本的 ASCII slug */ export declare function createConfigMatrixSlug(config: ConfigMatrixEntry['config']): string;