import { BaseComponentProps } from "@json-render/react"; import * as _$_json_render_core0 from "@json-render/core"; import { PromptOptions } from "@json-render/core"; import { z } from "zod"; //#region src/catalog.d.ts declare const pluginSchema: { components: { Root: { props: z.ZodObject<{}, z.core.$strip>; slots: string[]; description: string; }; HeroSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; InfoCardGroupSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ProductHighlightSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; StepSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; InfoSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ProductCardGroupSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; TextBlockSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; HeroTextSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; HeroSection: { props: z.ZodObject<{ title: z.ZodNullable; subtitle: z.ZodNullable; imageSrc: z.ZodNullable; }, z.core.$strip>; description: string; example: { title: string; subtitle: string; imageSrc: string; }; composable: boolean; }; HeroText: { props: z.ZodObject<{ title: z.ZodNullable; subtitle: z.ZodNullable; ctaPrimary: z.ZodNullable>; ctaSecondary: z.ZodNullable>; }, z.core.$strip>; description: string; example: { title: string; subtitle: string; imageSrc: string; }; composable: boolean; }; InfoCardGroup: { props: z.ZodObject<{ items: z.ZodArray; value: z.ZodNullable; unit: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { items: ({ label: string; value: string; unit: string; } | { label: string; value: string; unit: null; })[]; }; composable: boolean; }; ProductHighlight: { props: z.ZodObject<{ imageSrc: z.ZodNullable; productName: z.ZodNullable; ctaLabel: z.ZodNullable; ctaHref: z.ZodNullable; title: z.ZodNullable; items: z.ZodArray; }, z.core.$strip>; events: string[]; description: string; example: { imageSrc: string; productName: string; ctaLabel: string; ctaHref: string; title: string; items: string[]; }; composable: boolean; }; StepSection: { props: z.ZodObject<{ title: z.ZodNullable; steps: z.ZodArray; items: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { title: string; steps: { title: string; items: string[]; }[]; }; composable: boolean; }; InfoSection: { props: z.ZodObject<{ title: z.ZodNullable; blocks: z.ZodArray; content: z.ZodNullable; }, z.core.$strip>>; nutritionItems: z.ZodNullable; label: z.ZodNullable; }, z.core.$strip>>>; }, z.core.$strip>; description: string; example: { title: string; blocks: { title: string; content: string; }[]; nutritionItems: { value: string; label: string; }[]; }; composable: boolean; }; ProductCardGroup: { props: z.ZodObject<{ title: z.ZodNullable; items: z.ZodArray; imageSrc: z.ZodNullable; ctaLabel: z.ZodNullable; ctaHref: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; events: string[]; description: string; example: { title: string; items: { title: string; imageSrc: string; ctaLabel: string; ctaHref: string; }[]; }; composable: boolean; }; TextBlock: { props: z.ZodObject<{ text: z.ZodNullable; }, z.core.$strip>; description: string; example: { text: string; }; composable: boolean; }; Link: { props: z.ZodObject<{ label: z.ZodString; href: z.ZodString; variant: z.ZodNullable>; }, z.core.$strip>; events: string[]; description: string; example: { label: string; href: string; variant: string; }; }; }; actions: { setState: { params: z.ZodObject<{ statePath: z.ZodString; value: z.ZodUnknown; }, z.core.$strip>; description: string; }; pushState: { params: z.ZodObject<{ statePath: z.ZodString; value: z.ZodUnknown; clearStatePath: z.ZodOptional; }, z.core.$strip>; description: string; }; removeState: { params: z.ZodObject<{ statePath: z.ZodString; index: z.ZodNumber; }, z.core.$strip>; description: string; }; linkClick: { params: z.ZodObject<{ href: z.ZodString; }, z.core.$strip>; description: string; }; }; }; declare const catalog: _$_json_render_core0.Catalog<{ spec: _$_json_render_core0.SchemaType<"object", { root: _$_json_render_core0.SchemaType<"string", unknown>; elements: _$_json_render_core0.SchemaType<"record", _$_json_render_core0.SchemaType<"object", { type: _$_json_render_core0.SchemaType<"ref", string>; props: _$_json_render_core0.SchemaType<"propsOf", string>; children: _$_json_render_core0.SchemaType<"array", _$_json_render_core0.SchemaType<"string", unknown>>; visible: _$_json_render_core0.SchemaType<"any", unknown>; }>>; }>; catalog: _$_json_render_core0.SchemaType<"object", { components: _$_json_render_core0.SchemaType<"map", { props: _$_json_render_core0.SchemaType<"zod", unknown>; slots: _$_json_render_core0.SchemaType<"array", _$_json_render_core0.SchemaType<"string", unknown>>; description: _$_json_render_core0.SchemaType<"string", unknown>; example: _$_json_render_core0.SchemaType<"any", unknown>; }>; actions: _$_json_render_core0.SchemaType<"map", { params: _$_json_render_core0.SchemaType<"zod", unknown>; description: _$_json_render_core0.SchemaType<"string", unknown>; }>; }>; }, { components: { Root: { props: z.ZodObject<{}, z.core.$strip>; slots: string[]; description: string; }; HeroSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; InfoCardGroupSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ProductHighlightSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; StepSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; InfoSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ProductCardGroupSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; TextBlockSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; HeroTextSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; HeroSection: { props: z.ZodObject<{ title: z.ZodNullable; subtitle: z.ZodNullable; imageSrc: z.ZodNullable; }, z.core.$strip>; description: string; example: { title: string; subtitle: string; imageSrc: string; }; composable: boolean; }; HeroText: { props: z.ZodObject<{ title: z.ZodNullable; subtitle: z.ZodNullable; ctaPrimary: z.ZodNullable>; ctaSecondary: z.ZodNullable>; }, z.core.$strip>; description: string; example: { title: string; subtitle: string; imageSrc: string; }; composable: boolean; }; InfoCardGroup: { props: z.ZodObject<{ items: z.ZodArray; value: z.ZodNullable; unit: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { items: ({ label: string; value: string; unit: string; } | { label: string; value: string; unit: null; })[]; }; composable: boolean; }; ProductHighlight: { props: z.ZodObject<{ imageSrc: z.ZodNullable; productName: z.ZodNullable; ctaLabel: z.ZodNullable; ctaHref: z.ZodNullable; title: z.ZodNullable; items: z.ZodArray; }, z.core.$strip>; events: string[]; description: string; example: { imageSrc: string; productName: string; ctaLabel: string; ctaHref: string; title: string; items: string[]; }; composable: boolean; }; StepSection: { props: z.ZodObject<{ title: z.ZodNullable; steps: z.ZodArray; items: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { title: string; steps: { title: string; items: string[]; }[]; }; composable: boolean; }; InfoSection: { props: z.ZodObject<{ title: z.ZodNullable; blocks: z.ZodArray; content: z.ZodNullable; }, z.core.$strip>>; nutritionItems: z.ZodNullable; label: z.ZodNullable; }, z.core.$strip>>>; }, z.core.$strip>; description: string; example: { title: string; blocks: { title: string; content: string; }[]; nutritionItems: { value: string; label: string; }[]; }; composable: boolean; }; ProductCardGroup: { props: z.ZodObject<{ title: z.ZodNullable; items: z.ZodArray; imageSrc: z.ZodNullable; ctaLabel: z.ZodNullable; ctaHref: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; events: string[]; description: string; example: { title: string; items: { title: string; imageSrc: string; ctaLabel: string; ctaHref: string; }[]; }; composable: boolean; }; TextBlock: { props: z.ZodObject<{ text: z.ZodNullable; }, z.core.$strip>; description: string; example: { text: string; }; composable: boolean; }; Link: { props: z.ZodObject<{ label: z.ZodString; href: z.ZodString; variant: z.ZodNullable>; }, z.core.$strip>; events: string[]; description: string; example: { label: string; href: string; variant: string; }; }; }; actions: { setState: { params: z.ZodObject<{ statePath: z.ZodString; value: z.ZodUnknown; }, z.core.$strip>; description: string; }; pushState: { params: z.ZodObject<{ statePath: z.ZodString; value: z.ZodUnknown; clearStatePath: z.ZodOptional; }, z.core.$strip>; description: string; }; removeState: { params: z.ZodObject<{ statePath: z.ZodString; index: z.ZodNumber; }, z.core.$strip>; description: string; }; linkClick: { params: z.ZodObject<{ href: z.ZodString; }, z.core.$strip>; description: string; }; }; }>; declare function getSystemPrompt(options?: PromptOptions): string; declare function getSystemPromptInline(options?: PromptOptions): string; /** * Type for a component definition */ type ComponentDefinition = { props: z.ZodType; slots?: string[]; events?: string[]; description: string; example?: Record; }; type ComponentKey = keyof (typeof pluginSchema)['components']; type ComponentProps = z.output<(typeof pluginSchema)['components'][K]['props']>; type ComponentContext = BaseComponentProps>; //#endregion export { ComponentContext, ComponentDefinition, ComponentKey, ComponentProps, catalog, getSystemPrompt, getSystemPromptInline };