@forge/cli
12.19.012.19.0-experimental-a6c6519
out/service/module-service.d.ts+
out/service/module-service.d.tsNew file+37
Index: package/out/service/module-service.d.ts
===================================================================
--- package/out/service/module-service.d.ts
+++ package/out/service/module-service.d.ts
@@ -0,0 +1,37 @@
+import { TemplateModuleServices, ModuleTemplateMeta, UIFramework, TemplateVariableDef } from '@forge/cli-shared';
+export interface AddModuleOptions {
+ moduleType?: string;
+ uiType?: UIFramework;
+ product?: string;
+ dryRun?: boolean;
+ force?: boolean;
+ variables?: Record<string, string>;
+ install?: boolean;
+ upgradeDeps?: boolean;
+}
+export interface ManifestKeys {
+ moduleKeys: Set<string>;
+ functionKeys: Set<string>;
+ resourceKeys: Set<string>;
+}
+export declare class ModuleService {
+ private readonly templateServices;
+ private readonly cacheDirs;
+ constructor(templateServices: TemplateModuleServices);
+ getAvailableModules(product: string): Promise<Map<string, ModuleTemplateMeta>>;
+ getModuleChoice(moduleMap: Map<string, ModuleTemplateMeta>): Map<string, ModuleTemplateMeta>;
+ downloadSelectedTemplate(template: ModuleTemplateMeta, uiFramework?: UIFramework): Promise<ModuleTemplateMeta | undefined>;
+ cleanup(): void;
+ parseManifestAndExtractKeys(content: string, filePath: string, moduleKey?: string): ManifestKeys;
+ readManifestFragment(templateCacheDir: string): string | undefined;
+ checkDuplicateKey(varDef: TemplateVariableDef, value: string, existingKeys: ManifestKeys, moduleKey: string): string | undefined;
+ validateFragment(substitutedFragment: string, manifestPath: string, currentValue: string, moduleKey: string): Promise<string[]>;
+ getVariableDefinitions(template: ModuleTemplateMeta, uiFramework?: UIFramework): TemplateVariableDef[];
+ loadManifestContext(moduleKey: string): {
+ manifestPath: string;
+ existingKeys: ManifestKeys;
+ };
+ computeEffectiveDefault(varDef: TemplateVariableDef, variables: Record<string, string>): string | undefined;
+ validateCandidateValue(varDef: TemplateVariableDef, value: string, existingKeys: ManifestKeys, moduleKey: string, fragmentContent: string | undefined, variables: Record<string, string>, manifestPath: string): Promise<string[]>;
+}
+//# sourceMappingURL=module-service.d.ts.map
\ No newline at end of file