import { FxError } from "@microsoft/teamsfx-api"; import { Result } from "neverthrow"; import { Answers, CallerFloor, TemplateFileEntry } from "../model/dataModel"; import { ExpressionRuntimePort } from "../expression/evaluateExpression"; import { PipelineRuntimePort, ScaffoldOutcome, TargetDir } from "../pipeline/runScaffoldPipeline"; /** The two ports `scaffold` composes. */ export interface ScaffoldRuntime { /** The pure expression port (whitelist + flags) for `{expr}` render-var derivation. */ exprPort: ExpressionRuntimePort; /** The two-phase pipeline executor's port (render surface + step registry + file sink). */ port: PipelineRuntimePort; } /** One scaffold invocation's inputs. */ export interface ScaffoldRequest { /** The package's parsed `descriptor.json` (its `replaceMap` is the render-var source). */ descriptor: unknown; /** The package's parsed `pipeline.json`. */ pipeline: unknown; /** The opened `content/**` entries (raw bytes, `.tpl` suffix intact). */ content: TemplateFileEntry[]; /** The resolved answer object (`collect-inputs` output). */ answers: Answers; /** The caller-injected identifier floor (`appName`, the `language` axis, …). */ callerFloor: CallerFloor; /** The output directory + the files it already contains (the create-empty contract). */ targetDir: TargetDir; } /** Scaffold one template package against an injected runtime. */ export declare function scaffold(request: ScaffoldRequest, runtime: ScaffoldRuntime): Promise>; //# sourceMappingURL=scaffold.d.ts.map