import { z } from "zod"; /** * A standalone placeholder — the hybrid model's site-chrome half. Slots * like `/header`, `/footer`, `/main`, or a page-design CTA band belong to * no single component; they're authored as their own recipe so partials * and page designs have a typed, validated target to place renderings * into. * * Compiles (via `buildPlaceholderSettingsAggregate`) to one Sitecore * Placeholder Settings item under the tenant's `placeholderSettingsRoot`, * carrying the `Placeholder Key` and an `Allowed Controls` whitelist = * `allowedComponents` ∪ every component whose `placedIn` names this * `key`. * * Identity: `placeholderSettingsId(site, key)` — keyed by `key`, not * `handle`. The `handle` is the authoring-surface identity used for * cross-recipe references and validation messages. */ export declare const PlaceholderRecipeSchema: z.ZodObject<{ kind: z.ZodLiteral<"placeholder">; schemaVersion: z.ZodLiteral<"1">; handle: z.ZodString; key: z.ZodString; name: z.ZodString; displayName: z.ZodString; description: z.ZodOptional; icon: z.ZodOptional; folder: z.ZodOptional]>, z.ZodTransform>, z.ZodArray>>; dynamic: z.ZodDefault; allowedComponents: z.ZodDefault>; }, z.core.$strip>; export type PlaceholderRecipe = z.input; /** * Container for a related set of components in the Sitecore tree. * Owns the SIX organisational items that previously emitted implicitly * from `ComponentTemplateRecipe.section: string`: * * 1. Templates section folder — `//` * 2. Component Folders bucket — `//Component Folders/` * 3. Presentation Parameters bucket — `//Presentation Parameters/` * 4. Renderings-tree section folder — `//` * 5. Headless Variants section — `//` * 6. Available Renderings section — `/` (built by * the cross-recipe aggregator from every * `ComponentTemplateRecipe` referencing this * section by handle) * * `ComponentTemplateRecipe.section` references this recipe by handle * (`section: { handle: "ui-section@1" }`); the compiler errors at * INPUT_INVALID time if a component points at a section handle no * `ComponentSectionRecipe` in the set defines. */ export declare const ComponentSectionRecipeSchema: z.ZodObject<{ kind: z.ZodLiteral<"component-section">; schemaVersion: z.ZodLiteral<"1">; handle: z.ZodString; name: z.ZodString; displayName: z.ZodOptional; description: z.ZodOptional; icon: z.ZodOptional; sortOrder: z.ZodOptional; ownership: z.ZodOptional>; pruneMode: z.ZodDefault>; }, z.core.$strip>>; }, z.core.$strip>; export type ComponentSectionRecipe = z.input; export declare const ComponentTemplateRecipeSchema: z.ZodObject<{ kind: z.ZodLiteral<"component-template">; schemaVersion: z.ZodLiteral<"1">; handle: z.ZodString; name: z.ZodString; displayName: z.ZodString; description: z.ZodOptional; icon: z.ZodOptional; section: z.ZodOptional>; fields: z.ZodDefault; values: z.ZodOptional>; multiple: z.ZodOptional; default: z.ZodOptional]>>; role: z.ZodOptional; sitecore: z.ZodOptional>; source: z.ZodOptional; types: z.ZodOptional>; query: z.ZodOptional; scope: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"raw">; value: z.ZodString; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"plugin">; id: z.ZodString; defaultAppId: z.ZodString; }, z.core.$strip>], "kind">>; hint: z.ZodOptional; required: z.ZodOptional; defaultValue: z.ZodOptional]>>; enumHandle: z.ZodOptional; sortOrder: z.ZodOptional; section: z.ZodOptional; storage: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>>>; insertOptions: z.ZodOptional>; mediaLocation: z.ZodOptional; subfolder: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ scope: z.ZodLiteral<"site">; subfolder: z.ZodOptional; }, z.core.$strip>], "scope">>; datasource: z.ZodOptional>; templates: z.ZodOptional>>; autoCreate: z.ZodDefault; openPropertiesAfterAdd: z.ZodDefault; locations: z.ZodDefault; subfolder: z.ZodOptional; allowedTemplates: z.ZodOptional>>; }, z.core.$strip>, z.ZodObject<{ scope: z.ZodLiteral<"site">; subfolder: z.ZodOptional; allowedTemplates: z.ZodOptional>>; }, z.core.$strip>], "scope">>>; query: z.ZodDefault>; }, z.core.$strip>>; parameters: z.ZodOptional>; children: z.ZodOptional; }, z.core.$strip>>; variants: z.ZodDefault>>; params: z.ZodDefault; values: z.ZodOptional>; default: z.ZodOptional]>>; sitecore: z.ZodOptional>; source: z.ZodOptional; types: z.ZodOptional>; query: z.ZodOptional; scope: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"raw">; value: z.ZodString; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"plugin">; id: z.ZodString; defaultAppId: z.ZodString; }, z.core.$strip>], "kind">>; hint: z.ZodOptional; required: z.ZodOptional; defaultValue: z.ZodOptional]>>; enumHandle: z.ZodOptional; sortOrder: z.ZodOptional; section: z.ZodOptional; storage: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>>>; placedIn: z.ZodDefault>; placeholders: z.ZodDefault; folder: z.ZodOptional]>, z.ZodTransform>, z.ZodArray>>; dynamic: z.ZodOptional; allowedComponents: z.ZodOptional>; allowedRenderingHandles: z.ZodOptional>; }, z.core.$strip>>>; dynamicPlaceholders: z.ZodDefault; otherProperties: z.ZodOptional>; }, z.core.$strip>; export type ComponentTemplateRecipe = z.input;