import { z } from "zod"; //#region src/block_meta/block_components.d.ts /** * Wrapped workflow component, schema version 1. Currently the only workflow * schema; carries a single `main` entry pointing at the workflow source. */ type WorkflowV1 = { type: "workflow-v1"; main: Content; }; /** * Current workflow component shape. Alias to `WorkflowV1` while v1 is the * only version — future versions widen this to a discriminated union. */ type Workflow = WorkflowV1; /** * Trio of artifacts every block ships: a workflow (Tengo source), a model * (compiled JS), and a UI (front-end bundle). `WMContent` carries * `workflow.main` and `model` together (they travel as files); `UIContent` * carries the UI bundle (a folder when resolved locally, a relative path in * manifest form). Parameterizing this lets the same shape express every * stage the description passes through: raw `package.json` input (bare * strings), manifest form (relative paths stored in the registry), resolved * absolute form (local file/folder paths), and the registry-reader output * (URLs into registry storage, produced by `blockComponentsManifestToAbsoluteUrl`). */ type BlockComponents = { workflow: Workflow; model: WMContent; ui: UIContent; }; /** * Builds the zod schema for a wrapped workflow component carrying `content` * as the `main` payload. Shared between the `package.json` boundary parser * (where `content` is `z.string()`) and the manifest schema (where `content` * is `ContentRelative`). */ declare function WorkflowSchemaV1(content: C): z.ZodObject<{ type: z.ZodLiteral<"workflow-v1">; main: C; }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks; main: C; }>, any> extends infer T ? { [k in keyof T]: T[k] } : never, z.baseObjectInputType<{ type: z.ZodLiteral<"workflow-v1">; main: C; }> extends infer T_1 ? { [k_1 in keyof T_1]: T_1[k_1] } : never>; type BlockComponentsDescriptionRaw = BlockComponents; declare const BlockComponentsDescriptionRaw: z.ZodObject<{ workflow: z.ZodUnion<[z.ZodEffects, string>, z.ZodObject<{ type: z.ZodLiteral<"workflow-v1">; main: z.ZodString; }, "strict", z.ZodTypeAny, { type: "workflow-v1"; main: string; }, { type: "workflow-v1"; main: string; }>]>; model: z.ZodString; ui: z.ZodString; }, "strip", z.ZodTypeAny, { workflow: WorkflowV1 | { type: "workflow-v1"; main: string; }; model: string; ui: string; }, { workflow: string | { type: "workflow-v1"; main: string; }; model: string; ui: string; }>; //#endregion export { BlockComponents, BlockComponentsDescriptionRaw, Workflow, WorkflowSchemaV1, WorkflowV1 }; //# sourceMappingURL=block_components.d.ts.map