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; }; NumberedSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; TextBlockSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ImageCarouselSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; SingleImageSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; FeatureSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ProductCarouselSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ArticleCardGroupSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; CtaSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; HeroSection: { props: z.ZodObject<{ title: z.ZodNullable; subtitle: z.ZodNullable; subheading: z.ZodNullable; }, z.core.$strip>; description: string; example: { title: string; subtitle: string; subheading: string; }; composable: boolean; }; NumberedSection: { props: z.ZodObject<{ title: z.ZodNullable; description: z.ZodNullable; numbered: z.ZodNullable; }, z.core.$strip>; description: string; example: { title: string; description: string; numbered: boolean; }; composable: boolean; }; TextBlock: { props: z.ZodObject<{ text: z.ZodNullable; }, z.core.$strip>; description: string; composable: boolean; }; ImageCarousel: { props: z.ZodObject<{ items: z.ZodArray; caption: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { items: ({ src: string; caption: string; } | { src: string; caption: null; })[]; }; composable: boolean; }; SingleImage: { props: z.ZodObject<{ src: z.ZodNullable; alt: z.ZodNullable; }, z.core.$strip>; description: string; example: { src: string; alt: string; }; composable: boolean; }; FeatureSection: { props: z.ZodObject<{ title: z.ZodNullable; description: z.ZodNullable; imageSrc: z.ZodNullable; reversed: z.ZodNullable; credit: z.ZodNullable; creditLink: z.ZodNullable>; }, z.core.$strip>; description: string; example: { title: string; description: string; imageSrc: string; reversed: boolean; credit: string; creditLink: { label: string; href: string; }; }; composable: boolean; }; ProductCarousel: { props: z.ZodObject<{ title: z.ZodNullable; imageSrc: z.ZodNullable; tabs: z.ZodArray; items: z.ZodArray; title: z.ZodNullable; detailHref: z.ZodNullable; allHref: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { title: string; imageSrc: string; tabs: { label: string; items: { src: string; title: string; detailHref: string; allHref: string; }[]; }[]; }; composable: boolean; }; ArticleCard: { props: z.ZodObject<{ category: z.ZodNullable; title: z.ZodNullable; description: z.ZodNullable; linkLabel: z.ZodNullable; linkHref: z.ZodNullable; }, z.core.$strip>; description: string; example: { category: string; title: string; description: string; linkLabel: string; linkHref: string; }; }; ArticleCardGroup: { props: z.ZodObject<{ title: z.ZodNullable; items: z.ZodArray; title: z.ZodNullable; description: z.ZodNullable; linkLabel: z.ZodNullable; linkHref: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; slots: string[]; description: string; example: { title: string; items: { category: string; title: string; description: string; linkLabel: string; linkHref: string; }[]; }; composable: boolean; }; CtaSection: { props: z.ZodObject<{ iconSrc: z.ZodNullable; title: z.ZodNullable; description: z.ZodNullable; items: z.ZodArray>; }, z.core.$strip>; description: string; example: { iconSrc: null; title: string; description: string; items: { linkLabel: string; linkHref: 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; }; }; }; 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; }; NumberedSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; TextBlockSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ImageCarouselSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; SingleImageSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; FeatureSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ProductCarouselSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; ArticleCardGroupSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; CtaSectionSkeleton: { props: z.ZodObject<{}, z.core.$strip>; description: string; }; HeroSection: { props: z.ZodObject<{ title: z.ZodNullable; subtitle: z.ZodNullable; subheading: z.ZodNullable; }, z.core.$strip>; description: string; example: { title: string; subtitle: string; subheading: string; }; composable: boolean; }; NumberedSection: { props: z.ZodObject<{ title: z.ZodNullable; description: z.ZodNullable; numbered: z.ZodNullable; }, z.core.$strip>; description: string; example: { title: string; description: string; numbered: boolean; }; composable: boolean; }; TextBlock: { props: z.ZodObject<{ text: z.ZodNullable; }, z.core.$strip>; description: string; composable: boolean; }; ImageCarousel: { props: z.ZodObject<{ items: z.ZodArray; caption: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { items: ({ src: string; caption: string; } | { src: string; caption: null; })[]; }; composable: boolean; }; SingleImage: { props: z.ZodObject<{ src: z.ZodNullable; alt: z.ZodNullable; }, z.core.$strip>; description: string; example: { src: string; alt: string; }; composable: boolean; }; FeatureSection: { props: z.ZodObject<{ title: z.ZodNullable; description: z.ZodNullable; imageSrc: z.ZodNullable; reversed: z.ZodNullable; credit: z.ZodNullable; creditLink: z.ZodNullable>; }, z.core.$strip>; description: string; example: { title: string; description: string; imageSrc: string; reversed: boolean; credit: string; creditLink: { label: string; href: string; }; }; composable: boolean; }; ProductCarousel: { props: z.ZodObject<{ title: z.ZodNullable; imageSrc: z.ZodNullable; tabs: z.ZodArray; items: z.ZodArray; title: z.ZodNullable; detailHref: z.ZodNullable; allHref: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>>; }, z.core.$strip>; description: string; example: { title: string; imageSrc: string; tabs: { label: string; items: { src: string; title: string; detailHref: string; allHref: string; }[]; }[]; }; composable: boolean; }; ArticleCard: { props: z.ZodObject<{ category: z.ZodNullable; title: z.ZodNullable; description: z.ZodNullable; linkLabel: z.ZodNullable; linkHref: z.ZodNullable; }, z.core.$strip>; description: string; example: { category: string; title: string; description: string; linkLabel: string; linkHref: string; }; }; ArticleCardGroup: { props: z.ZodObject<{ title: z.ZodNullable; items: z.ZodArray; title: z.ZodNullable; description: z.ZodNullable; linkLabel: z.ZodNullable; linkHref: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; slots: string[]; description: string; example: { title: string; items: { category: string; title: string; description: string; linkLabel: string; linkHref: string; }[]; }; composable: boolean; }; CtaSection: { props: z.ZodObject<{ iconSrc: z.ZodNullable; title: z.ZodNullable; description: z.ZodNullable; items: z.ZodArray>; }, z.core.$strip>; description: string; example: { iconSrc: null; title: string; description: string; items: { linkLabel: string; linkHref: 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; }; }; }; 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 };