import { z } from 'zod'; /** * Standard component definitions for image catalogs. * * These define the available image components with their Zod prop schemas. * All components render to Satori-compatible JSX (HTML-like elements with * inline CSS flexbox styles). */ declare const standardComponentDefinitions: { Frame: { props: z.ZodObject<{ width: z.ZodNumber; height: z.ZodNumber; backgroundColor: z.ZodNullable; padding: z.ZodNullable; display: z.ZodNullable>; flexDirection: z.ZodNullable>; alignItems: z.ZodNullable>; justifyContent: z.ZodNullable>; }, z.core.$strip>; slots: string[]; description: string; example: { width: number; height: number; backgroundColor: string; }; }; Box: { props: z.ZodObject<{ padding: z.ZodNullable; paddingTop: z.ZodNullable; paddingBottom: z.ZodNullable; paddingLeft: z.ZodNullable; paddingRight: z.ZodNullable; margin: z.ZodNullable; backgroundColor: z.ZodNullable; borderWidth: z.ZodNullable; borderColor: z.ZodNullable; borderRadius: z.ZodNullable; flex: z.ZodNullable; width: z.ZodNullable>; height: z.ZodNullable>; alignItems: z.ZodNullable>; justifyContent: z.ZodNullable>; flexDirection: z.ZodNullable>; position: z.ZodNullable>; top: z.ZodNullable; left: z.ZodNullable; right: z.ZodNullable; bottom: z.ZodNullable; overflow: z.ZodNullable>; }, z.core.$strip>; slots: string[]; description: string; example: { padding: number; backgroundColor: string; borderRadius: number; alignItems: string; }; }; Row: { props: z.ZodObject<{ gap: z.ZodNullable; alignItems: z.ZodNullable>; justifyContent: z.ZodNullable>; padding: z.ZodNullable; flex: z.ZodNullable; wrap: z.ZodNullable; }, z.core.$strip>; slots: string[]; description: string; example: { gap: number; alignItems: string; }; }; Column: { props: z.ZodObject<{ gap: z.ZodNullable; alignItems: z.ZodNullable>; justifyContent: z.ZodNullable>; padding: z.ZodNullable; flex: z.ZodNullable; }, z.core.$strip>; slots: string[]; description: string; example: { gap: number; padding: number; }; }; Heading: { props: z.ZodObject<{ text: z.ZodString; level: z.ZodNullable>; color: z.ZodNullable; align: z.ZodNullable>; letterSpacing: z.ZodNullable>; lineHeight: z.ZodNullable; }, z.core.$strip>; slots: never[]; description: string; example: { text: string; level: string; color: string; }; }; Text: { props: z.ZodObject<{ text: z.ZodString; fontSize: z.ZodNullable; color: z.ZodNullable; align: z.ZodNullable>; fontWeight: z.ZodNullable>; fontStyle: z.ZodNullable>; lineHeight: z.ZodNullable; letterSpacing: z.ZodNullable>; textDecoration: z.ZodNullable>; }, z.core.$strip>; slots: never[]; description: string; example: { text: string; fontSize: number; color: string; }; }; Image: { props: z.ZodObject<{ src: z.ZodString; width: z.ZodNullable; height: z.ZodNullable; borderRadius: z.ZodNullable; objectFit: z.ZodNullable>; }, z.core.$strip>; slots: never[]; description: string; example: { src: string; width: number; height: number; }; }; Divider: { props: z.ZodObject<{ color: z.ZodNullable; thickness: z.ZodNullable; marginTop: z.ZodNullable; marginBottom: z.ZodNullable; }, z.core.$strip>; slots: never[]; description: string; example: { color: string; thickness: number; }; }; Spacer: { props: z.ZodObject<{ height: z.ZodNullable; }, z.core.$strip>; slots: never[]; description: string; example: { height: number; }; }; }; type StandardComponentDefinitions = typeof standardComponentDefinitions; type StandardComponentProps = StandardComponentDefinitions[K]["props"] extends { _output: infer O; } ? O : z.output; export { type StandardComponentDefinitions, type StandardComponentProps, standardComponentDefinitions };