@revealui/contracts 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +160 -0
  3. package/dist/a2a/index.d.ts +383 -0
  4. package/dist/a2a/index.d.ts.map +1 -0
  5. package/dist/a2a/index.js +276 -0
  6. package/dist/a2a/index.js.map +1 -0
  7. package/dist/actions/action-validator.d.ts +48 -0
  8. package/dist/actions/action-validator.d.ts.map +1 -0
  9. package/dist/actions/action-validator.js +288 -0
  10. package/dist/actions/action-validator.js.map +1 -0
  11. package/dist/actions/index.d.ts +7 -0
  12. package/dist/actions/index.d.ts.map +1 -0
  13. package/dist/actions/index.js +7 -0
  14. package/dist/actions/index.js.map +1 -0
  15. package/dist/agents/index.d.ts +628 -0
  16. package/dist/agents/index.d.ts.map +1 -0
  17. package/dist/agents/index.js +511 -0
  18. package/dist/agents/index.js.map +1 -0
  19. package/dist/agents/types.d.ts +22 -0
  20. package/dist/agents/types.d.ts.map +1 -0
  21. package/dist/agents/types.js +2 -0
  22. package/dist/agents/types.js.map +1 -0
  23. package/dist/api/auth.d.ts +60 -0
  24. package/dist/api/auth.d.ts.map +1 -0
  25. package/dist/api/auth.js +84 -0
  26. package/dist/api/auth.js.map +1 -0
  27. package/dist/api/chat.d.ts +45 -0
  28. package/dist/api/chat.d.ts.map +1 -0
  29. package/dist/api/chat.js +55 -0
  30. package/dist/api/chat.js.map +1 -0
  31. package/dist/api/gdpr.d.ts +39 -0
  32. package/dist/api/gdpr.d.ts.map +1 -0
  33. package/dist/api/gdpr.js +53 -0
  34. package/dist/api/gdpr.js.map +1 -0
  35. package/dist/cms/collection.d.ts +108 -0
  36. package/dist/cms/collection.d.ts.map +1 -0
  37. package/dist/cms/collection.js +144 -0
  38. package/dist/cms/collection.js.map +1 -0
  39. package/dist/cms/compat.d.ts +128 -0
  40. package/dist/cms/compat.d.ts.map +1 -0
  41. package/dist/cms/compat.js +141 -0
  42. package/dist/cms/compat.js.map +1 -0
  43. package/dist/cms/config-contract.d.ts +278 -0
  44. package/dist/cms/config-contract.d.ts.map +1 -0
  45. package/dist/cms/config-contract.js +220 -0
  46. package/dist/cms/config-contract.js.map +1 -0
  47. package/dist/cms/config.d.ts +351 -0
  48. package/dist/cms/config.d.ts.map +1 -0
  49. package/dist/cms/config.js +50 -0
  50. package/dist/cms/config.js.map +1 -0
  51. package/dist/cms/errors.d.ts +122 -0
  52. package/dist/cms/errors.d.ts.map +1 -0
  53. package/dist/cms/errors.js +163 -0
  54. package/dist/cms/errors.js.map +1 -0
  55. package/dist/cms/extensibility.d.ts +211 -0
  56. package/dist/cms/extensibility.d.ts.map +1 -0
  57. package/dist/cms/extensibility.js +313 -0
  58. package/dist/cms/extensibility.js.map +1 -0
  59. package/dist/cms/field.d.ts +69 -0
  60. package/dist/cms/field.d.ts.map +1 -0
  61. package/dist/cms/field.js +94 -0
  62. package/dist/cms/field.js.map +1 -0
  63. package/dist/cms/functions.d.ts +466 -0
  64. package/dist/cms/functions.d.ts.map +1 -0
  65. package/dist/cms/functions.js +19 -0
  66. package/dist/cms/functions.js.map +1 -0
  67. package/dist/cms/global.d.ts +45 -0
  68. package/dist/cms/global.d.ts.map +1 -0
  69. package/dist/cms/global.js +62 -0
  70. package/dist/cms/global.js.map +1 -0
  71. package/dist/cms/index.d.ts +23 -0
  72. package/dist/cms/index.d.ts.map +1 -0
  73. package/dist/cms/index.js +42 -0
  74. package/dist/cms/index.js.map +1 -0
  75. package/dist/cms/structure.d.ts +1601 -0
  76. package/dist/cms/structure.d.ts.map +1 -0
  77. package/dist/cms/structure.js +757 -0
  78. package/dist/cms/structure.js.map +1 -0
  79. package/dist/content/index.d.ts +1542 -0
  80. package/dist/content/index.d.ts.map +1 -0
  81. package/dist/content/index.js +522 -0
  82. package/dist/content/index.js.map +1 -0
  83. package/dist/database/bridge.d.ts +177 -0
  84. package/dist/database/bridge.d.ts.map +1 -0
  85. package/dist/database/bridge.js +139 -0
  86. package/dist/database/bridge.js.map +1 -0
  87. package/dist/database/index.d.ts +8 -0
  88. package/dist/database/index.d.ts.map +1 -0
  89. package/dist/database/index.js +9 -0
  90. package/dist/database/index.js.map +1 -0
  91. package/dist/database/type-bridge.d.ts +178 -0
  92. package/dist/database/type-bridge.d.ts.map +1 -0
  93. package/dist/database/type-bridge.js +154 -0
  94. package/dist/database/type-bridge.js.map +1 -0
  95. package/dist/entities/agent-context.d.ts +280 -0
  96. package/dist/entities/agent-context.d.ts.map +1 -0
  97. package/dist/entities/agent-context.js +390 -0
  98. package/dist/entities/agent-context.js.map +1 -0
  99. package/dist/entities/agent-memory.d.ts +661 -0
  100. package/dist/entities/agent-memory.d.ts.map +1 -0
  101. package/dist/entities/agent-memory.js +544 -0
  102. package/dist/entities/agent-memory.js.map +1 -0
  103. package/dist/entities/board.d.ts +95 -0
  104. package/dist/entities/board.d.ts.map +1 -0
  105. package/dist/entities/board.js +99 -0
  106. package/dist/entities/board.js.map +1 -0
  107. package/dist/entities/code-provenance.d.ts +270 -0
  108. package/dist/entities/code-provenance.d.ts.map +1 -0
  109. package/dist/entities/code-provenance.js +339 -0
  110. package/dist/entities/code-provenance.js.map +1 -0
  111. package/dist/entities/index.d.ts +22 -0
  112. package/dist/entities/index.d.ts.map +1 -0
  113. package/dist/entities/index.js +22 -0
  114. package/dist/entities/index.js.map +1 -0
  115. package/dist/entities/media.d.ts +485 -0
  116. package/dist/entities/media.d.ts.map +1 -0
  117. package/dist/entities/media.js +606 -0
  118. package/dist/entities/media.js.map +1 -0
  119. package/dist/entities/page-revision.d.ts +390 -0
  120. package/dist/entities/page-revision.d.ts.map +1 -0
  121. package/dist/entities/page-revision.js +406 -0
  122. package/dist/entities/page-revision.js.map +1 -0
  123. package/dist/entities/page.d.ts +2349 -0
  124. package/dist/entities/page.d.ts.map +1 -0
  125. package/dist/entities/page.js +377 -0
  126. package/dist/entities/page.js.map +1 -0
  127. package/dist/entities/post.d.ts +619 -0
  128. package/dist/entities/post.d.ts.map +1 -0
  129. package/dist/entities/post.js +555 -0
  130. package/dist/entities/post.js.map +1 -0
  131. package/dist/entities/price.d.ts +772 -0
  132. package/dist/entities/price.d.ts.map +1 -0
  133. package/dist/entities/price.js +308 -0
  134. package/dist/entities/price.js.map +1 -0
  135. package/dist/entities/product.d.ts +753 -0
  136. package/dist/entities/product.d.ts.map +1 -0
  137. package/dist/entities/product.js +307 -0
  138. package/dist/entities/product.js.map +1 -0
  139. package/dist/entities/session.d.ts +222 -0
  140. package/dist/entities/session.d.ts.map +1 -0
  141. package/dist/entities/session.js +253 -0
  142. package/dist/entities/session.js.map +1 -0
  143. package/dist/entities/site.d.ts +387 -0
  144. package/dist/entities/site.d.ts.map +1 -0
  145. package/dist/entities/site.js +348 -0
  146. package/dist/entities/site.js.map +1 -0
  147. package/dist/entities/ticket-comment.d.ts +49 -0
  148. package/dist/entities/ticket-comment.d.ts.map +1 -0
  149. package/dist/entities/ticket-comment.js +58 -0
  150. package/dist/entities/ticket-comment.js.map +1 -0
  151. package/dist/entities/ticket-label.d.ts +64 -0
  152. package/dist/entities/ticket-label.d.ts.map +1 -0
  153. package/dist/entities/ticket-label.js +77 -0
  154. package/dist/entities/ticket-label.js.map +1 -0
  155. package/dist/entities/ticket.d.ts +204 -0
  156. package/dist/entities/ticket.d.ts.map +1 -0
  157. package/dist/entities/ticket.js +205 -0
  158. package/dist/entities/ticket.js.map +1 -0
  159. package/dist/entities/user.d.ts +336 -0
  160. package/dist/entities/user.d.ts.map +1 -0
  161. package/dist/entities/user.js +255 -0
  162. package/dist/entities/user.js.map +1 -0
  163. package/dist/foundation/contract.d.ts +221 -0
  164. package/dist/foundation/contract.d.ts.map +1 -0
  165. package/dist/foundation/contract.js +133 -0
  166. package/dist/foundation/contract.js.map +1 -0
  167. package/dist/foundation/index.d.ts +7 -0
  168. package/dist/foundation/index.d.ts.map +1 -0
  169. package/dist/foundation/index.js +7 -0
  170. package/dist/foundation/index.js.map +1 -0
  171. package/dist/generated/contracts.d.ts +1514 -0
  172. package/dist/generated/contracts.d.ts.map +1 -0
  173. package/dist/generated/contracts.js +959 -0
  174. package/dist/generated/contracts.js.map +1 -0
  175. package/dist/generated/database.d.ts +48 -0
  176. package/dist/generated/database.d.ts.map +1 -0
  177. package/dist/generated/database.js +17 -0
  178. package/dist/generated/database.js.map +1 -0
  179. package/dist/generated/zod-schemas.d.ts +14793 -0
  180. package/dist/generated/zod-schemas.d.ts.map +1 -0
  181. package/dist/generated/zod-schemas.js +547 -0
  182. package/dist/generated/zod-schemas.js.map +1 -0
  183. package/dist/index.d.ts +50 -0
  184. package/dist/index.d.ts.map +1 -0
  185. package/dist/index.js +81 -0
  186. package/dist/index.js.map +1 -0
  187. package/dist/representation/index.d.ts +304 -0
  188. package/dist/representation/index.d.ts.map +1 -0
  189. package/dist/representation/index.js +280 -0
  190. package/dist/representation/index.js.map +1 -0
  191. package/package.json +117 -0
@@ -0,0 +1,1542 @@
1
+ /**
2
+ * Block Schemas
3
+ *
4
+ * Blocks are the atomic content units in RevealUI.
5
+ * Each block type has:
6
+ * - A structured data schema (for agents)
7
+ * - A visual representation hint (for humans)
8
+ * - Transformation rules (for rendering)
9
+ *
10
+ * IMPORTANT: Blocks use discriminated unions for type safety.
11
+ * The `type` field determines which data shape is valid.
12
+ */
13
+ import { z } from 'zod/v4';
14
+ export declare const BLOCK_SCHEMA_VERSION = 1;
15
+ /**
16
+ * Visual styling for blocks (human-adjustable)
17
+ */
18
+ export declare const BlockStyleSchema: z.ZodObject<{
19
+ align: z.ZodOptional<z.ZodEnum<{
20
+ left: "left";
21
+ center: "center";
22
+ right: "right";
23
+ justify: "justify";
24
+ }>>;
25
+ backgroundColor: z.ZodOptional<z.ZodString>;
26
+ textColor: z.ZodOptional<z.ZodString>;
27
+ padding: z.ZodOptional<z.ZodString>;
28
+ margin: z.ZodOptional<z.ZodString>;
29
+ borderRadius: z.ZodOptional<z.ZodString>;
30
+ className: z.ZodOptional<z.ZodString>;
31
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
32
+ }, z.core.$strip>;
33
+ export type BlockStyle = z.infer<typeof BlockStyleSchema>;
34
+ export declare const BlockMetaSchema: z.ZodObject<{
35
+ version: z.ZodOptional<z.ZodNumber>;
36
+ description: z.ZodOptional<z.ZodString>;
37
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
38
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
39
+ sourcePrompt: z.ZodOptional<z.ZodString>;
40
+ lastEditor: z.ZodOptional<z.ZodString>;
41
+ lastEditedAt: z.ZodOptional<z.ZodString>;
42
+ }, z.core.$strip>;
43
+ export type BlockMeta = z.infer<typeof BlockMetaSchema>;
44
+ export declare const TextBlockSchema: z.ZodObject<{
45
+ id: z.ZodString;
46
+ style: z.ZodOptional<z.ZodObject<{
47
+ align: z.ZodOptional<z.ZodEnum<{
48
+ left: "left";
49
+ center: "center";
50
+ right: "right";
51
+ justify: "justify";
52
+ }>>;
53
+ backgroundColor: z.ZodOptional<z.ZodString>;
54
+ textColor: z.ZodOptional<z.ZodString>;
55
+ padding: z.ZodOptional<z.ZodString>;
56
+ margin: z.ZodOptional<z.ZodString>;
57
+ borderRadius: z.ZodOptional<z.ZodString>;
58
+ className: z.ZodOptional<z.ZodString>;
59
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
60
+ }, z.core.$strip>>;
61
+ meta: z.ZodOptional<z.ZodObject<{
62
+ version: z.ZodOptional<z.ZodNumber>;
63
+ description: z.ZodOptional<z.ZodString>;
64
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
65
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
66
+ sourcePrompt: z.ZodOptional<z.ZodString>;
67
+ lastEditor: z.ZodOptional<z.ZodString>;
68
+ lastEditedAt: z.ZodOptional<z.ZodString>;
69
+ }, z.core.$strip>>;
70
+ type: z.ZodLiteral<"text">;
71
+ data: z.ZodObject<{
72
+ content: z.ZodString;
73
+ format: z.ZodDefault<z.ZodEnum<{
74
+ plain: "plain";
75
+ markdown: "markdown";
76
+ html: "html";
77
+ tiptap: "tiptap";
78
+ }>>;
79
+ }, z.core.$strip>;
80
+ }, z.core.$strip>;
81
+ export type TextBlock = z.infer<typeof TextBlockSchema>;
82
+ export declare const HeadingBlockSchema: z.ZodObject<{
83
+ id: z.ZodString;
84
+ style: z.ZodOptional<z.ZodObject<{
85
+ align: z.ZodOptional<z.ZodEnum<{
86
+ left: "left";
87
+ center: "center";
88
+ right: "right";
89
+ justify: "justify";
90
+ }>>;
91
+ backgroundColor: z.ZodOptional<z.ZodString>;
92
+ textColor: z.ZodOptional<z.ZodString>;
93
+ padding: z.ZodOptional<z.ZodString>;
94
+ margin: z.ZodOptional<z.ZodString>;
95
+ borderRadius: z.ZodOptional<z.ZodString>;
96
+ className: z.ZodOptional<z.ZodString>;
97
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
98
+ }, z.core.$strip>>;
99
+ meta: z.ZodOptional<z.ZodObject<{
100
+ version: z.ZodOptional<z.ZodNumber>;
101
+ description: z.ZodOptional<z.ZodString>;
102
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
103
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
104
+ sourcePrompt: z.ZodOptional<z.ZodString>;
105
+ lastEditor: z.ZodOptional<z.ZodString>;
106
+ lastEditedAt: z.ZodOptional<z.ZodString>;
107
+ }, z.core.$strip>>;
108
+ type: z.ZodLiteral<"heading">;
109
+ data: z.ZodObject<{
110
+ text: z.ZodString;
111
+ level: z.ZodEnum<{
112
+ h1: "h1";
113
+ h2: "h2";
114
+ h3: "h3";
115
+ h4: "h4";
116
+ h5: "h5";
117
+ h6: "h6";
118
+ }>;
119
+ anchor: z.ZodOptional<z.ZodString>;
120
+ }, z.core.$strip>;
121
+ }, z.core.$strip>;
122
+ export type HeadingBlock = z.infer<typeof HeadingBlockSchema>;
123
+ export declare const QuoteBlockSchema: z.ZodObject<{
124
+ id: z.ZodString;
125
+ style: z.ZodOptional<z.ZodObject<{
126
+ align: z.ZodOptional<z.ZodEnum<{
127
+ left: "left";
128
+ center: "center";
129
+ right: "right";
130
+ justify: "justify";
131
+ }>>;
132
+ backgroundColor: z.ZodOptional<z.ZodString>;
133
+ textColor: z.ZodOptional<z.ZodString>;
134
+ padding: z.ZodOptional<z.ZodString>;
135
+ margin: z.ZodOptional<z.ZodString>;
136
+ borderRadius: z.ZodOptional<z.ZodString>;
137
+ className: z.ZodOptional<z.ZodString>;
138
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
139
+ }, z.core.$strip>>;
140
+ meta: z.ZodOptional<z.ZodObject<{
141
+ version: z.ZodOptional<z.ZodNumber>;
142
+ description: z.ZodOptional<z.ZodString>;
143
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
144
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
145
+ sourcePrompt: z.ZodOptional<z.ZodString>;
146
+ lastEditor: z.ZodOptional<z.ZodString>;
147
+ lastEditedAt: z.ZodOptional<z.ZodString>;
148
+ }, z.core.$strip>>;
149
+ type: z.ZodLiteral<"quote">;
150
+ data: z.ZodObject<{
151
+ content: z.ZodString;
152
+ attribution: z.ZodOptional<z.ZodString>;
153
+ cite: z.ZodOptional<z.ZodURL>;
154
+ }, z.core.$strip>;
155
+ }, z.core.$strip>;
156
+ export type QuoteBlock = z.infer<typeof QuoteBlockSchema>;
157
+ export declare const CodeBlockSchema: z.ZodObject<{
158
+ id: z.ZodString;
159
+ style: z.ZodOptional<z.ZodObject<{
160
+ align: z.ZodOptional<z.ZodEnum<{
161
+ left: "left";
162
+ center: "center";
163
+ right: "right";
164
+ justify: "justify";
165
+ }>>;
166
+ backgroundColor: z.ZodOptional<z.ZodString>;
167
+ textColor: z.ZodOptional<z.ZodString>;
168
+ padding: z.ZodOptional<z.ZodString>;
169
+ margin: z.ZodOptional<z.ZodString>;
170
+ borderRadius: z.ZodOptional<z.ZodString>;
171
+ className: z.ZodOptional<z.ZodString>;
172
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
173
+ }, z.core.$strip>>;
174
+ meta: z.ZodOptional<z.ZodObject<{
175
+ version: z.ZodOptional<z.ZodNumber>;
176
+ description: z.ZodOptional<z.ZodString>;
177
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
178
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
179
+ sourcePrompt: z.ZodOptional<z.ZodString>;
180
+ lastEditor: z.ZodOptional<z.ZodString>;
181
+ lastEditedAt: z.ZodOptional<z.ZodString>;
182
+ }, z.core.$strip>>;
183
+ type: z.ZodLiteral<"code">;
184
+ data: z.ZodObject<{
185
+ code: z.ZodString;
186
+ language: z.ZodOptional<z.ZodString>;
187
+ filename: z.ZodOptional<z.ZodString>;
188
+ showLineNumbers: z.ZodDefault<z.ZodBoolean>;
189
+ highlightLines: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
190
+ }, z.core.$strip>;
191
+ }, z.core.$strip>;
192
+ export type CodeBlock = z.infer<typeof CodeBlockSchema>;
193
+ export declare const ImageBlockSchema: z.ZodObject<{
194
+ id: z.ZodString;
195
+ style: z.ZodOptional<z.ZodObject<{
196
+ align: z.ZodOptional<z.ZodEnum<{
197
+ left: "left";
198
+ center: "center";
199
+ right: "right";
200
+ justify: "justify";
201
+ }>>;
202
+ backgroundColor: z.ZodOptional<z.ZodString>;
203
+ textColor: z.ZodOptional<z.ZodString>;
204
+ padding: z.ZodOptional<z.ZodString>;
205
+ margin: z.ZodOptional<z.ZodString>;
206
+ borderRadius: z.ZodOptional<z.ZodString>;
207
+ className: z.ZodOptional<z.ZodString>;
208
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
209
+ }, z.core.$strip>>;
210
+ meta: z.ZodOptional<z.ZodObject<{
211
+ version: z.ZodOptional<z.ZodNumber>;
212
+ description: z.ZodOptional<z.ZodString>;
213
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
214
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
215
+ sourcePrompt: z.ZodOptional<z.ZodString>;
216
+ lastEditor: z.ZodOptional<z.ZodString>;
217
+ lastEditedAt: z.ZodOptional<z.ZodString>;
218
+ }, z.core.$strip>>;
219
+ type: z.ZodLiteral<"image">;
220
+ data: z.ZodObject<{
221
+ src: z.ZodURL;
222
+ alt: z.ZodString;
223
+ caption: z.ZodOptional<z.ZodString>;
224
+ width: z.ZodOptional<z.ZodNumber>;
225
+ height: z.ZodOptional<z.ZodNumber>;
226
+ loading: z.ZodDefault<z.ZodEnum<{
227
+ lazy: "lazy";
228
+ eager: "eager";
229
+ }>>;
230
+ }, z.core.$strip>;
231
+ }, z.core.$strip>;
232
+ export type ImageBlock = z.infer<typeof ImageBlockSchema>;
233
+ export declare const VideoBlockSchema: z.ZodObject<{
234
+ id: z.ZodString;
235
+ style: z.ZodOptional<z.ZodObject<{
236
+ align: z.ZodOptional<z.ZodEnum<{
237
+ left: "left";
238
+ center: "center";
239
+ right: "right";
240
+ justify: "justify";
241
+ }>>;
242
+ backgroundColor: z.ZodOptional<z.ZodString>;
243
+ textColor: z.ZodOptional<z.ZodString>;
244
+ padding: z.ZodOptional<z.ZodString>;
245
+ margin: z.ZodOptional<z.ZodString>;
246
+ borderRadius: z.ZodOptional<z.ZodString>;
247
+ className: z.ZodOptional<z.ZodString>;
248
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
249
+ }, z.core.$strip>>;
250
+ meta: z.ZodOptional<z.ZodObject<{
251
+ version: z.ZodOptional<z.ZodNumber>;
252
+ description: z.ZodOptional<z.ZodString>;
253
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
254
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
255
+ sourcePrompt: z.ZodOptional<z.ZodString>;
256
+ lastEditor: z.ZodOptional<z.ZodString>;
257
+ lastEditedAt: z.ZodOptional<z.ZodString>;
258
+ }, z.core.$strip>>;
259
+ type: z.ZodLiteral<"video">;
260
+ data: z.ZodObject<{
261
+ src: z.ZodURL;
262
+ poster: z.ZodOptional<z.ZodURL>;
263
+ autoplay: z.ZodDefault<z.ZodBoolean>;
264
+ loop: z.ZodDefault<z.ZodBoolean>;
265
+ muted: z.ZodDefault<z.ZodBoolean>;
266
+ controls: z.ZodDefault<z.ZodBoolean>;
267
+ }, z.core.$strip>;
268
+ }, z.core.$strip>;
269
+ export type VideoBlock = z.infer<typeof VideoBlockSchema>;
270
+ export declare const EmbedBlockSchema: z.ZodObject<{
271
+ id: z.ZodString;
272
+ style: z.ZodOptional<z.ZodObject<{
273
+ align: z.ZodOptional<z.ZodEnum<{
274
+ left: "left";
275
+ center: "center";
276
+ right: "right";
277
+ justify: "justify";
278
+ }>>;
279
+ backgroundColor: z.ZodOptional<z.ZodString>;
280
+ textColor: z.ZodOptional<z.ZodString>;
281
+ padding: z.ZodOptional<z.ZodString>;
282
+ margin: z.ZodOptional<z.ZodString>;
283
+ borderRadius: z.ZodOptional<z.ZodString>;
284
+ className: z.ZodOptional<z.ZodString>;
285
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
286
+ }, z.core.$strip>>;
287
+ meta: z.ZodOptional<z.ZodObject<{
288
+ version: z.ZodOptional<z.ZodNumber>;
289
+ description: z.ZodOptional<z.ZodString>;
290
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
291
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
292
+ sourcePrompt: z.ZodOptional<z.ZodString>;
293
+ lastEditor: z.ZodOptional<z.ZodString>;
294
+ lastEditedAt: z.ZodOptional<z.ZodString>;
295
+ }, z.core.$strip>>;
296
+ type: z.ZodLiteral<"embed">;
297
+ data: z.ZodObject<{
298
+ url: z.ZodURL;
299
+ provider: z.ZodOptional<z.ZodString>;
300
+ html: z.ZodOptional<z.ZodString>;
301
+ aspectRatio: z.ZodOptional<z.ZodString>;
302
+ }, z.core.$strip>;
303
+ }, z.core.$strip>;
304
+ export type EmbedBlock = z.infer<typeof EmbedBlockSchema>;
305
+ export declare const ButtonBlockSchema: z.ZodObject<{
306
+ id: z.ZodString;
307
+ style: z.ZodOptional<z.ZodObject<{
308
+ align: z.ZodOptional<z.ZodEnum<{
309
+ left: "left";
310
+ center: "center";
311
+ right: "right";
312
+ justify: "justify";
313
+ }>>;
314
+ backgroundColor: z.ZodOptional<z.ZodString>;
315
+ textColor: z.ZodOptional<z.ZodString>;
316
+ padding: z.ZodOptional<z.ZodString>;
317
+ margin: z.ZodOptional<z.ZodString>;
318
+ borderRadius: z.ZodOptional<z.ZodString>;
319
+ className: z.ZodOptional<z.ZodString>;
320
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
321
+ }, z.core.$strip>>;
322
+ meta: z.ZodOptional<z.ZodObject<{
323
+ version: z.ZodOptional<z.ZodNumber>;
324
+ description: z.ZodOptional<z.ZodString>;
325
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
326
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
327
+ sourcePrompt: z.ZodOptional<z.ZodString>;
328
+ lastEditor: z.ZodOptional<z.ZodString>;
329
+ lastEditedAt: z.ZodOptional<z.ZodString>;
330
+ }, z.core.$strip>>;
331
+ type: z.ZodLiteral<"button">;
332
+ data: z.ZodObject<{
333
+ text: z.ZodString;
334
+ href: z.ZodOptional<z.ZodString>;
335
+ action: z.ZodDefault<z.ZodEnum<{
336
+ link: "link";
337
+ custom: "custom";
338
+ submit: "submit";
339
+ }>>;
340
+ variant: z.ZodDefault<z.ZodEnum<{
341
+ primary: "primary";
342
+ secondary: "secondary";
343
+ outline: "outline";
344
+ ghost: "ghost";
345
+ }>>;
346
+ size: z.ZodDefault<z.ZodEnum<{
347
+ sm: "sm";
348
+ md: "md";
349
+ lg: "lg";
350
+ }>>;
351
+ }, z.core.$strip>;
352
+ }, z.core.$strip>;
353
+ export type ButtonBlock = z.infer<typeof ButtonBlockSchema>;
354
+ export declare const DividerBlockSchema: z.ZodObject<{
355
+ id: z.ZodString;
356
+ style: z.ZodOptional<z.ZodObject<{
357
+ align: z.ZodOptional<z.ZodEnum<{
358
+ left: "left";
359
+ center: "center";
360
+ right: "right";
361
+ justify: "justify";
362
+ }>>;
363
+ backgroundColor: z.ZodOptional<z.ZodString>;
364
+ textColor: z.ZodOptional<z.ZodString>;
365
+ padding: z.ZodOptional<z.ZodString>;
366
+ margin: z.ZodOptional<z.ZodString>;
367
+ borderRadius: z.ZodOptional<z.ZodString>;
368
+ className: z.ZodOptional<z.ZodString>;
369
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
370
+ }, z.core.$strip>>;
371
+ meta: z.ZodOptional<z.ZodObject<{
372
+ version: z.ZodOptional<z.ZodNumber>;
373
+ description: z.ZodOptional<z.ZodString>;
374
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
375
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
376
+ sourcePrompt: z.ZodOptional<z.ZodString>;
377
+ lastEditor: z.ZodOptional<z.ZodString>;
378
+ lastEditedAt: z.ZodOptional<z.ZodString>;
379
+ }, z.core.$strip>>;
380
+ type: z.ZodLiteral<"divider">;
381
+ data: z.ZodObject<{
382
+ variant: z.ZodDefault<z.ZodEnum<{
383
+ solid: "solid";
384
+ dashed: "dashed";
385
+ dotted: "dotted";
386
+ }>>;
387
+ thickness: z.ZodOptional<z.ZodString>;
388
+ }, z.core.$strip>;
389
+ }, z.core.$strip>;
390
+ export type DividerBlock = z.infer<typeof DividerBlockSchema>;
391
+ export declare const SpacerBlockSchema: z.ZodObject<{
392
+ id: z.ZodString;
393
+ style: z.ZodOptional<z.ZodObject<{
394
+ align: z.ZodOptional<z.ZodEnum<{
395
+ left: "left";
396
+ center: "center";
397
+ right: "right";
398
+ justify: "justify";
399
+ }>>;
400
+ backgroundColor: z.ZodOptional<z.ZodString>;
401
+ textColor: z.ZodOptional<z.ZodString>;
402
+ padding: z.ZodOptional<z.ZodString>;
403
+ margin: z.ZodOptional<z.ZodString>;
404
+ borderRadius: z.ZodOptional<z.ZodString>;
405
+ className: z.ZodOptional<z.ZodString>;
406
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
407
+ }, z.core.$strip>>;
408
+ meta: z.ZodOptional<z.ZodObject<{
409
+ version: z.ZodOptional<z.ZodNumber>;
410
+ description: z.ZodOptional<z.ZodString>;
411
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
412
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
413
+ sourcePrompt: z.ZodOptional<z.ZodString>;
414
+ lastEditor: z.ZodOptional<z.ZodString>;
415
+ lastEditedAt: z.ZodOptional<z.ZodString>;
416
+ }, z.core.$strip>>;
417
+ type: z.ZodLiteral<"spacer">;
418
+ data: z.ZodObject<{
419
+ height: z.ZodDefault<z.ZodString>;
420
+ }, z.core.$strip>;
421
+ }, z.core.$strip>;
422
+ export type SpacerBlock = z.infer<typeof SpacerBlockSchema>;
423
+ export declare const ListBlockSchema: z.ZodObject<{
424
+ id: z.ZodString;
425
+ style: z.ZodOptional<z.ZodObject<{
426
+ align: z.ZodOptional<z.ZodEnum<{
427
+ left: "left";
428
+ center: "center";
429
+ right: "right";
430
+ justify: "justify";
431
+ }>>;
432
+ backgroundColor: z.ZodOptional<z.ZodString>;
433
+ textColor: z.ZodOptional<z.ZodString>;
434
+ padding: z.ZodOptional<z.ZodString>;
435
+ margin: z.ZodOptional<z.ZodString>;
436
+ borderRadius: z.ZodOptional<z.ZodString>;
437
+ className: z.ZodOptional<z.ZodString>;
438
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
439
+ }, z.core.$strip>>;
440
+ meta: z.ZodOptional<z.ZodObject<{
441
+ version: z.ZodOptional<z.ZodNumber>;
442
+ description: z.ZodOptional<z.ZodString>;
443
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
444
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
445
+ sourcePrompt: z.ZodOptional<z.ZodString>;
446
+ lastEditor: z.ZodOptional<z.ZodString>;
447
+ lastEditedAt: z.ZodOptional<z.ZodString>;
448
+ }, z.core.$strip>>;
449
+ type: z.ZodLiteral<"list">;
450
+ data: z.ZodObject<{
451
+ items: z.ZodArray<z.ZodObject<{
452
+ id: z.ZodString;
453
+ content: z.ZodString;
454
+ checked: z.ZodOptional<z.ZodBoolean>;
455
+ }, z.core.$strip>>;
456
+ variant: z.ZodDefault<z.ZodEnum<{
457
+ unordered: "unordered";
458
+ ordered: "ordered";
459
+ checklist: "checklist";
460
+ }>>;
461
+ }, z.core.$strip>;
462
+ }, z.core.$strip>;
463
+ export type ListBlock = z.infer<typeof ListBlockSchema>;
464
+ export declare const TableBlockSchema: z.ZodObject<{
465
+ id: z.ZodString;
466
+ style: z.ZodOptional<z.ZodObject<{
467
+ align: z.ZodOptional<z.ZodEnum<{
468
+ left: "left";
469
+ center: "center";
470
+ right: "right";
471
+ justify: "justify";
472
+ }>>;
473
+ backgroundColor: z.ZodOptional<z.ZodString>;
474
+ textColor: z.ZodOptional<z.ZodString>;
475
+ padding: z.ZodOptional<z.ZodString>;
476
+ margin: z.ZodOptional<z.ZodString>;
477
+ borderRadius: z.ZodOptional<z.ZodString>;
478
+ className: z.ZodOptional<z.ZodString>;
479
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
480
+ }, z.core.$strip>>;
481
+ meta: z.ZodOptional<z.ZodObject<{
482
+ version: z.ZodOptional<z.ZodNumber>;
483
+ description: z.ZodOptional<z.ZodString>;
484
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
485
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
486
+ sourcePrompt: z.ZodOptional<z.ZodString>;
487
+ lastEditor: z.ZodOptional<z.ZodString>;
488
+ lastEditedAt: z.ZodOptional<z.ZodString>;
489
+ }, z.core.$strip>>;
490
+ type: z.ZodLiteral<"table">;
491
+ data: z.ZodObject<{
492
+ headers: z.ZodArray<z.ZodObject<{
493
+ id: z.ZodString;
494
+ content: z.ZodString;
495
+ }, z.core.$strip>>;
496
+ rows: z.ZodArray<z.ZodObject<{
497
+ id: z.ZodString;
498
+ cells: z.ZodArray<z.ZodString>;
499
+ }, z.core.$strip>>;
500
+ caption: z.ZodOptional<z.ZodString>;
501
+ }, z.core.$strip>;
502
+ }, z.core.$strip>;
503
+ export type TableBlock = z.infer<typeof TableBlockSchema>;
504
+ export declare const ColumnsBlockSchema: z.ZodObject<{
505
+ id: z.ZodString;
506
+ style: z.ZodOptional<z.ZodObject<{
507
+ align: z.ZodOptional<z.ZodEnum<{
508
+ left: "left";
509
+ center: "center";
510
+ right: "right";
511
+ justify: "justify";
512
+ }>>;
513
+ backgroundColor: z.ZodOptional<z.ZodString>;
514
+ textColor: z.ZodOptional<z.ZodString>;
515
+ padding: z.ZodOptional<z.ZodString>;
516
+ margin: z.ZodOptional<z.ZodString>;
517
+ borderRadius: z.ZodOptional<z.ZodString>;
518
+ className: z.ZodOptional<z.ZodString>;
519
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
520
+ }, z.core.$strip>>;
521
+ meta: z.ZodOptional<z.ZodObject<{
522
+ version: z.ZodOptional<z.ZodNumber>;
523
+ description: z.ZodOptional<z.ZodString>;
524
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
525
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
526
+ sourcePrompt: z.ZodOptional<z.ZodString>;
527
+ lastEditor: z.ZodOptional<z.ZodString>;
528
+ lastEditedAt: z.ZodOptional<z.ZodString>;
529
+ }, z.core.$strip>>;
530
+ type: z.ZodLiteral<"columns">;
531
+ data: z.ZodObject<{
532
+ columns: z.ZodArray<z.ZodObject<{
533
+ id: z.ZodString;
534
+ width: z.ZodOptional<z.ZodString>;
535
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
536
+ }, z.core.$strip>>;
537
+ gap: z.ZodOptional<z.ZodString>;
538
+ }, z.core.$strip>;
539
+ }, z.core.$strip>;
540
+ export type ColumnsBlock = z.infer<typeof ColumnsBlockSchema>;
541
+ export declare const GridBlockSchema: z.ZodObject<{
542
+ id: z.ZodString;
543
+ style: z.ZodOptional<z.ZodObject<{
544
+ align: z.ZodOptional<z.ZodEnum<{
545
+ left: "left";
546
+ center: "center";
547
+ right: "right";
548
+ justify: "justify";
549
+ }>>;
550
+ backgroundColor: z.ZodOptional<z.ZodString>;
551
+ textColor: z.ZodOptional<z.ZodString>;
552
+ padding: z.ZodOptional<z.ZodString>;
553
+ margin: z.ZodOptional<z.ZodString>;
554
+ borderRadius: z.ZodOptional<z.ZodString>;
555
+ className: z.ZodOptional<z.ZodString>;
556
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
557
+ }, z.core.$strip>>;
558
+ meta: z.ZodOptional<z.ZodObject<{
559
+ version: z.ZodOptional<z.ZodNumber>;
560
+ description: z.ZodOptional<z.ZodString>;
561
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
562
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
563
+ sourcePrompt: z.ZodOptional<z.ZodString>;
564
+ lastEditor: z.ZodOptional<z.ZodString>;
565
+ lastEditedAt: z.ZodOptional<z.ZodString>;
566
+ }, z.core.$strip>>;
567
+ type: z.ZodLiteral<"grid">;
568
+ data: z.ZodObject<{
569
+ columns: z.ZodOptional<z.ZodNumber>;
570
+ gap: z.ZodOptional<z.ZodString>;
571
+ items: z.ZodArray<z.ZodObject<{
572
+ id: z.ZodString;
573
+ span: z.ZodOptional<z.ZodNumber>;
574
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
575
+ }, z.core.$strip>>;
576
+ }, z.core.$strip>;
577
+ }, z.core.$strip>;
578
+ export type GridBlock = z.infer<typeof GridBlockSchema>;
579
+ export declare const AccordionBlockSchema: z.ZodObject<{
580
+ id: z.ZodString;
581
+ style: z.ZodOptional<z.ZodObject<{
582
+ align: z.ZodOptional<z.ZodEnum<{
583
+ left: "left";
584
+ center: "center";
585
+ right: "right";
586
+ justify: "justify";
587
+ }>>;
588
+ backgroundColor: z.ZodOptional<z.ZodString>;
589
+ textColor: z.ZodOptional<z.ZodString>;
590
+ padding: z.ZodOptional<z.ZodString>;
591
+ margin: z.ZodOptional<z.ZodString>;
592
+ borderRadius: z.ZodOptional<z.ZodString>;
593
+ className: z.ZodOptional<z.ZodString>;
594
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
595
+ }, z.core.$strip>>;
596
+ meta: z.ZodOptional<z.ZodObject<{
597
+ version: z.ZodOptional<z.ZodNumber>;
598
+ description: z.ZodOptional<z.ZodString>;
599
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
600
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
601
+ sourcePrompt: z.ZodOptional<z.ZodString>;
602
+ lastEditor: z.ZodOptional<z.ZodString>;
603
+ lastEditedAt: z.ZodOptional<z.ZodString>;
604
+ }, z.core.$strip>>;
605
+ type: z.ZodLiteral<"accordion">;
606
+ data: z.ZodObject<{
607
+ items: z.ZodArray<z.ZodObject<{
608
+ id: z.ZodString;
609
+ title: z.ZodString;
610
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
611
+ defaultOpen: z.ZodOptional<z.ZodBoolean>;
612
+ }, z.core.$strip>>;
613
+ allowMultiple: z.ZodOptional<z.ZodBoolean>;
614
+ }, z.core.$strip>;
615
+ }, z.core.$strip>;
616
+ export type AccordionBlock = z.infer<typeof AccordionBlockSchema>;
617
+ export declare const TabsBlockSchema: z.ZodObject<{
618
+ id: z.ZodString;
619
+ style: z.ZodOptional<z.ZodObject<{
620
+ align: z.ZodOptional<z.ZodEnum<{
621
+ left: "left";
622
+ center: "center";
623
+ right: "right";
624
+ justify: "justify";
625
+ }>>;
626
+ backgroundColor: z.ZodOptional<z.ZodString>;
627
+ textColor: z.ZodOptional<z.ZodString>;
628
+ padding: z.ZodOptional<z.ZodString>;
629
+ margin: z.ZodOptional<z.ZodString>;
630
+ borderRadius: z.ZodOptional<z.ZodString>;
631
+ className: z.ZodOptional<z.ZodString>;
632
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
633
+ }, z.core.$strip>>;
634
+ meta: z.ZodOptional<z.ZodObject<{
635
+ version: z.ZodOptional<z.ZodNumber>;
636
+ description: z.ZodOptional<z.ZodString>;
637
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
638
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
639
+ sourcePrompt: z.ZodOptional<z.ZodString>;
640
+ lastEditor: z.ZodOptional<z.ZodString>;
641
+ lastEditedAt: z.ZodOptional<z.ZodString>;
642
+ }, z.core.$strip>>;
643
+ type: z.ZodLiteral<"tabs">;
644
+ data: z.ZodObject<{
645
+ tabs: z.ZodArray<z.ZodObject<{
646
+ id: z.ZodString;
647
+ label: z.ZodString;
648
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
649
+ }, z.core.$strip>>;
650
+ defaultTab: z.ZodOptional<z.ZodString>;
651
+ }, z.core.$strip>;
652
+ }, z.core.$strip>;
653
+ export type TabsBlock = z.infer<typeof TabsBlockSchema>;
654
+ export declare const FormBlockSchema: z.ZodObject<{
655
+ id: z.ZodString;
656
+ style: z.ZodOptional<z.ZodObject<{
657
+ align: z.ZodOptional<z.ZodEnum<{
658
+ left: "left";
659
+ center: "center";
660
+ right: "right";
661
+ justify: "justify";
662
+ }>>;
663
+ backgroundColor: z.ZodOptional<z.ZodString>;
664
+ textColor: z.ZodOptional<z.ZodString>;
665
+ padding: z.ZodOptional<z.ZodString>;
666
+ margin: z.ZodOptional<z.ZodString>;
667
+ borderRadius: z.ZodOptional<z.ZodString>;
668
+ className: z.ZodOptional<z.ZodString>;
669
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
670
+ }, z.core.$strip>>;
671
+ meta: z.ZodOptional<z.ZodObject<{
672
+ version: z.ZodOptional<z.ZodNumber>;
673
+ description: z.ZodOptional<z.ZodString>;
674
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
675
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
676
+ sourcePrompt: z.ZodOptional<z.ZodString>;
677
+ lastEditor: z.ZodOptional<z.ZodString>;
678
+ lastEditedAt: z.ZodOptional<z.ZodString>;
679
+ }, z.core.$strip>>;
680
+ type: z.ZodLiteral<"form">;
681
+ data: z.ZodObject<{
682
+ action: z.ZodOptional<z.ZodURL>;
683
+ method: z.ZodDefault<z.ZodEnum<{
684
+ GET: "GET";
685
+ POST: "POST";
686
+ }>>;
687
+ fields: z.ZodArray<z.ZodObject<{
688
+ id: z.ZodString;
689
+ type: z.ZodEnum<{
690
+ file: "file";
691
+ text: "text";
692
+ email: "email";
693
+ password: "password";
694
+ textarea: "textarea";
695
+ select: "select";
696
+ checkbox: "checkbox";
697
+ radio: "radio";
698
+ }>;
699
+ name: z.ZodString;
700
+ label: z.ZodString;
701
+ placeholder: z.ZodOptional<z.ZodString>;
702
+ required: z.ZodDefault<z.ZodBoolean>;
703
+ options: z.ZodOptional<z.ZodArray<z.ZodObject<{
704
+ value: z.ZodString;
705
+ label: z.ZodString;
706
+ }, z.core.$strip>>>;
707
+ }, z.core.$strip>>;
708
+ submitText: z.ZodDefault<z.ZodString>;
709
+ }, z.core.$strip>;
710
+ }, z.core.$strip>;
711
+ export type FormBlock = z.infer<typeof FormBlockSchema>;
712
+ export declare const HtmlBlockSchema: z.ZodObject<{
713
+ id: z.ZodString;
714
+ style: z.ZodOptional<z.ZodObject<{
715
+ align: z.ZodOptional<z.ZodEnum<{
716
+ left: "left";
717
+ center: "center";
718
+ right: "right";
719
+ justify: "justify";
720
+ }>>;
721
+ backgroundColor: z.ZodOptional<z.ZodString>;
722
+ textColor: z.ZodOptional<z.ZodString>;
723
+ padding: z.ZodOptional<z.ZodString>;
724
+ margin: z.ZodOptional<z.ZodString>;
725
+ borderRadius: z.ZodOptional<z.ZodString>;
726
+ className: z.ZodOptional<z.ZodString>;
727
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
728
+ }, z.core.$strip>>;
729
+ meta: z.ZodOptional<z.ZodObject<{
730
+ version: z.ZodOptional<z.ZodNumber>;
731
+ description: z.ZodOptional<z.ZodString>;
732
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
733
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
734
+ sourcePrompt: z.ZodOptional<z.ZodString>;
735
+ lastEditor: z.ZodOptional<z.ZodString>;
736
+ lastEditedAt: z.ZodOptional<z.ZodString>;
737
+ }, z.core.$strip>>;
738
+ type: z.ZodLiteral<"html">;
739
+ data: z.ZodObject<{
740
+ html: z.ZodString;
741
+ sanitize: z.ZodDefault<z.ZodBoolean>;
742
+ }, z.core.$strip>;
743
+ }, z.core.$strip>;
744
+ export type HtmlBlock = z.infer<typeof HtmlBlockSchema>;
745
+ export declare const ComponentBlockSchema: z.ZodObject<{
746
+ id: z.ZodString;
747
+ style: z.ZodOptional<z.ZodObject<{
748
+ align: z.ZodOptional<z.ZodEnum<{
749
+ left: "left";
750
+ center: "center";
751
+ right: "right";
752
+ justify: "justify";
753
+ }>>;
754
+ backgroundColor: z.ZodOptional<z.ZodString>;
755
+ textColor: z.ZodOptional<z.ZodString>;
756
+ padding: z.ZodOptional<z.ZodString>;
757
+ margin: z.ZodOptional<z.ZodString>;
758
+ borderRadius: z.ZodOptional<z.ZodString>;
759
+ className: z.ZodOptional<z.ZodString>;
760
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
761
+ }, z.core.$strip>>;
762
+ meta: z.ZodOptional<z.ZodObject<{
763
+ version: z.ZodOptional<z.ZodNumber>;
764
+ description: z.ZodOptional<z.ZodString>;
765
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
766
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
767
+ sourcePrompt: z.ZodOptional<z.ZodString>;
768
+ lastEditor: z.ZodOptional<z.ZodString>;
769
+ lastEditedAt: z.ZodOptional<z.ZodString>;
770
+ }, z.core.$strip>>;
771
+ type: z.ZodLiteral<"component">;
772
+ data: z.ZodObject<{
773
+ componentId: z.ZodString;
774
+ props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
775
+ source: z.ZodDefault<z.ZodEnum<{
776
+ custom: "custom";
777
+ builtin: "builtin";
778
+ marketplace: "marketplace";
779
+ }>>;
780
+ }, z.core.$strip>;
781
+ }, z.core.$strip>;
782
+ export type ComponentBlock = z.infer<typeof ComponentBlockSchema>;
783
+ /**
784
+ * The complete Block type - a union of all block types.
785
+ * Uses z.union() instead of z.discriminatedUnion() because container blocks
786
+ * use z.lazy() for recursive structures, which is incompatible with
787
+ * discriminatedUnion's strict type requirements.
788
+ *
789
+ * TypeScript will still narrow the type based on the `type` field.
790
+ */
791
+ export declare const BlockSchema: z.ZodUnion<readonly [z.ZodObject<{
792
+ id: z.ZodString;
793
+ style: z.ZodOptional<z.ZodObject<{
794
+ align: z.ZodOptional<z.ZodEnum<{
795
+ left: "left";
796
+ center: "center";
797
+ right: "right";
798
+ justify: "justify";
799
+ }>>;
800
+ backgroundColor: z.ZodOptional<z.ZodString>;
801
+ textColor: z.ZodOptional<z.ZodString>;
802
+ padding: z.ZodOptional<z.ZodString>;
803
+ margin: z.ZodOptional<z.ZodString>;
804
+ borderRadius: z.ZodOptional<z.ZodString>;
805
+ className: z.ZodOptional<z.ZodString>;
806
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
807
+ }, z.core.$strip>>;
808
+ meta: z.ZodOptional<z.ZodObject<{
809
+ version: z.ZodOptional<z.ZodNumber>;
810
+ description: z.ZodOptional<z.ZodString>;
811
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
812
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
813
+ sourcePrompt: z.ZodOptional<z.ZodString>;
814
+ lastEditor: z.ZodOptional<z.ZodString>;
815
+ lastEditedAt: z.ZodOptional<z.ZodString>;
816
+ }, z.core.$strip>>;
817
+ type: z.ZodLiteral<"text">;
818
+ data: z.ZodObject<{
819
+ content: z.ZodString;
820
+ format: z.ZodDefault<z.ZodEnum<{
821
+ plain: "plain";
822
+ markdown: "markdown";
823
+ html: "html";
824
+ tiptap: "tiptap";
825
+ }>>;
826
+ }, z.core.$strip>;
827
+ }, z.core.$strip>, z.ZodObject<{
828
+ id: z.ZodString;
829
+ style: z.ZodOptional<z.ZodObject<{
830
+ align: z.ZodOptional<z.ZodEnum<{
831
+ left: "left";
832
+ center: "center";
833
+ right: "right";
834
+ justify: "justify";
835
+ }>>;
836
+ backgroundColor: z.ZodOptional<z.ZodString>;
837
+ textColor: z.ZodOptional<z.ZodString>;
838
+ padding: z.ZodOptional<z.ZodString>;
839
+ margin: z.ZodOptional<z.ZodString>;
840
+ borderRadius: z.ZodOptional<z.ZodString>;
841
+ className: z.ZodOptional<z.ZodString>;
842
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
843
+ }, z.core.$strip>>;
844
+ meta: z.ZodOptional<z.ZodObject<{
845
+ version: z.ZodOptional<z.ZodNumber>;
846
+ description: z.ZodOptional<z.ZodString>;
847
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
848
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
849
+ sourcePrompt: z.ZodOptional<z.ZodString>;
850
+ lastEditor: z.ZodOptional<z.ZodString>;
851
+ lastEditedAt: z.ZodOptional<z.ZodString>;
852
+ }, z.core.$strip>>;
853
+ type: z.ZodLiteral<"heading">;
854
+ data: z.ZodObject<{
855
+ text: z.ZodString;
856
+ level: z.ZodEnum<{
857
+ h1: "h1";
858
+ h2: "h2";
859
+ h3: "h3";
860
+ h4: "h4";
861
+ h5: "h5";
862
+ h6: "h6";
863
+ }>;
864
+ anchor: z.ZodOptional<z.ZodString>;
865
+ }, z.core.$strip>;
866
+ }, z.core.$strip>, z.ZodObject<{
867
+ id: z.ZodString;
868
+ style: z.ZodOptional<z.ZodObject<{
869
+ align: z.ZodOptional<z.ZodEnum<{
870
+ left: "left";
871
+ center: "center";
872
+ right: "right";
873
+ justify: "justify";
874
+ }>>;
875
+ backgroundColor: z.ZodOptional<z.ZodString>;
876
+ textColor: z.ZodOptional<z.ZodString>;
877
+ padding: z.ZodOptional<z.ZodString>;
878
+ margin: z.ZodOptional<z.ZodString>;
879
+ borderRadius: z.ZodOptional<z.ZodString>;
880
+ className: z.ZodOptional<z.ZodString>;
881
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
882
+ }, z.core.$strip>>;
883
+ meta: z.ZodOptional<z.ZodObject<{
884
+ version: z.ZodOptional<z.ZodNumber>;
885
+ description: z.ZodOptional<z.ZodString>;
886
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
887
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
888
+ sourcePrompt: z.ZodOptional<z.ZodString>;
889
+ lastEditor: z.ZodOptional<z.ZodString>;
890
+ lastEditedAt: z.ZodOptional<z.ZodString>;
891
+ }, z.core.$strip>>;
892
+ type: z.ZodLiteral<"quote">;
893
+ data: z.ZodObject<{
894
+ content: z.ZodString;
895
+ attribution: z.ZodOptional<z.ZodString>;
896
+ cite: z.ZodOptional<z.ZodURL>;
897
+ }, z.core.$strip>;
898
+ }, z.core.$strip>, z.ZodObject<{
899
+ id: z.ZodString;
900
+ style: z.ZodOptional<z.ZodObject<{
901
+ align: z.ZodOptional<z.ZodEnum<{
902
+ left: "left";
903
+ center: "center";
904
+ right: "right";
905
+ justify: "justify";
906
+ }>>;
907
+ backgroundColor: z.ZodOptional<z.ZodString>;
908
+ textColor: z.ZodOptional<z.ZodString>;
909
+ padding: z.ZodOptional<z.ZodString>;
910
+ margin: z.ZodOptional<z.ZodString>;
911
+ borderRadius: z.ZodOptional<z.ZodString>;
912
+ className: z.ZodOptional<z.ZodString>;
913
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
914
+ }, z.core.$strip>>;
915
+ meta: z.ZodOptional<z.ZodObject<{
916
+ version: z.ZodOptional<z.ZodNumber>;
917
+ description: z.ZodOptional<z.ZodString>;
918
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
919
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
920
+ sourcePrompt: z.ZodOptional<z.ZodString>;
921
+ lastEditor: z.ZodOptional<z.ZodString>;
922
+ lastEditedAt: z.ZodOptional<z.ZodString>;
923
+ }, z.core.$strip>>;
924
+ type: z.ZodLiteral<"code">;
925
+ data: z.ZodObject<{
926
+ code: z.ZodString;
927
+ language: z.ZodOptional<z.ZodString>;
928
+ filename: z.ZodOptional<z.ZodString>;
929
+ showLineNumbers: z.ZodDefault<z.ZodBoolean>;
930
+ highlightLines: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
931
+ }, z.core.$strip>;
932
+ }, z.core.$strip>, z.ZodObject<{
933
+ id: z.ZodString;
934
+ style: z.ZodOptional<z.ZodObject<{
935
+ align: z.ZodOptional<z.ZodEnum<{
936
+ left: "left";
937
+ center: "center";
938
+ right: "right";
939
+ justify: "justify";
940
+ }>>;
941
+ backgroundColor: z.ZodOptional<z.ZodString>;
942
+ textColor: z.ZodOptional<z.ZodString>;
943
+ padding: z.ZodOptional<z.ZodString>;
944
+ margin: z.ZodOptional<z.ZodString>;
945
+ borderRadius: z.ZodOptional<z.ZodString>;
946
+ className: z.ZodOptional<z.ZodString>;
947
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
948
+ }, z.core.$strip>>;
949
+ meta: z.ZodOptional<z.ZodObject<{
950
+ version: z.ZodOptional<z.ZodNumber>;
951
+ description: z.ZodOptional<z.ZodString>;
952
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
953
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
954
+ sourcePrompt: z.ZodOptional<z.ZodString>;
955
+ lastEditor: z.ZodOptional<z.ZodString>;
956
+ lastEditedAt: z.ZodOptional<z.ZodString>;
957
+ }, z.core.$strip>>;
958
+ type: z.ZodLiteral<"image">;
959
+ data: z.ZodObject<{
960
+ src: z.ZodURL;
961
+ alt: z.ZodString;
962
+ caption: z.ZodOptional<z.ZodString>;
963
+ width: z.ZodOptional<z.ZodNumber>;
964
+ height: z.ZodOptional<z.ZodNumber>;
965
+ loading: z.ZodDefault<z.ZodEnum<{
966
+ lazy: "lazy";
967
+ eager: "eager";
968
+ }>>;
969
+ }, z.core.$strip>;
970
+ }, z.core.$strip>, z.ZodObject<{
971
+ id: z.ZodString;
972
+ style: z.ZodOptional<z.ZodObject<{
973
+ align: z.ZodOptional<z.ZodEnum<{
974
+ left: "left";
975
+ center: "center";
976
+ right: "right";
977
+ justify: "justify";
978
+ }>>;
979
+ backgroundColor: z.ZodOptional<z.ZodString>;
980
+ textColor: z.ZodOptional<z.ZodString>;
981
+ padding: z.ZodOptional<z.ZodString>;
982
+ margin: z.ZodOptional<z.ZodString>;
983
+ borderRadius: z.ZodOptional<z.ZodString>;
984
+ className: z.ZodOptional<z.ZodString>;
985
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
986
+ }, z.core.$strip>>;
987
+ meta: z.ZodOptional<z.ZodObject<{
988
+ version: z.ZodOptional<z.ZodNumber>;
989
+ description: z.ZodOptional<z.ZodString>;
990
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
991
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
992
+ sourcePrompt: z.ZodOptional<z.ZodString>;
993
+ lastEditor: z.ZodOptional<z.ZodString>;
994
+ lastEditedAt: z.ZodOptional<z.ZodString>;
995
+ }, z.core.$strip>>;
996
+ type: z.ZodLiteral<"video">;
997
+ data: z.ZodObject<{
998
+ src: z.ZodURL;
999
+ poster: z.ZodOptional<z.ZodURL>;
1000
+ autoplay: z.ZodDefault<z.ZodBoolean>;
1001
+ loop: z.ZodDefault<z.ZodBoolean>;
1002
+ muted: z.ZodDefault<z.ZodBoolean>;
1003
+ controls: z.ZodDefault<z.ZodBoolean>;
1004
+ }, z.core.$strip>;
1005
+ }, z.core.$strip>, z.ZodObject<{
1006
+ id: z.ZodString;
1007
+ style: z.ZodOptional<z.ZodObject<{
1008
+ align: z.ZodOptional<z.ZodEnum<{
1009
+ left: "left";
1010
+ center: "center";
1011
+ right: "right";
1012
+ justify: "justify";
1013
+ }>>;
1014
+ backgroundColor: z.ZodOptional<z.ZodString>;
1015
+ textColor: z.ZodOptional<z.ZodString>;
1016
+ padding: z.ZodOptional<z.ZodString>;
1017
+ margin: z.ZodOptional<z.ZodString>;
1018
+ borderRadius: z.ZodOptional<z.ZodString>;
1019
+ className: z.ZodOptional<z.ZodString>;
1020
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1021
+ }, z.core.$strip>>;
1022
+ meta: z.ZodOptional<z.ZodObject<{
1023
+ version: z.ZodOptional<z.ZodNumber>;
1024
+ description: z.ZodOptional<z.ZodString>;
1025
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1026
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1027
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1028
+ lastEditor: z.ZodOptional<z.ZodString>;
1029
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1030
+ }, z.core.$strip>>;
1031
+ type: z.ZodLiteral<"embed">;
1032
+ data: z.ZodObject<{
1033
+ url: z.ZodURL;
1034
+ provider: z.ZodOptional<z.ZodString>;
1035
+ html: z.ZodOptional<z.ZodString>;
1036
+ aspectRatio: z.ZodOptional<z.ZodString>;
1037
+ }, z.core.$strip>;
1038
+ }, z.core.$strip>, z.ZodObject<{
1039
+ id: z.ZodString;
1040
+ style: z.ZodOptional<z.ZodObject<{
1041
+ align: z.ZodOptional<z.ZodEnum<{
1042
+ left: "left";
1043
+ center: "center";
1044
+ right: "right";
1045
+ justify: "justify";
1046
+ }>>;
1047
+ backgroundColor: z.ZodOptional<z.ZodString>;
1048
+ textColor: z.ZodOptional<z.ZodString>;
1049
+ padding: z.ZodOptional<z.ZodString>;
1050
+ margin: z.ZodOptional<z.ZodString>;
1051
+ borderRadius: z.ZodOptional<z.ZodString>;
1052
+ className: z.ZodOptional<z.ZodString>;
1053
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1054
+ }, z.core.$strip>>;
1055
+ meta: z.ZodOptional<z.ZodObject<{
1056
+ version: z.ZodOptional<z.ZodNumber>;
1057
+ description: z.ZodOptional<z.ZodString>;
1058
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1059
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1060
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1061
+ lastEditor: z.ZodOptional<z.ZodString>;
1062
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1063
+ }, z.core.$strip>>;
1064
+ type: z.ZodLiteral<"button">;
1065
+ data: z.ZodObject<{
1066
+ text: z.ZodString;
1067
+ href: z.ZodOptional<z.ZodString>;
1068
+ action: z.ZodDefault<z.ZodEnum<{
1069
+ link: "link";
1070
+ custom: "custom";
1071
+ submit: "submit";
1072
+ }>>;
1073
+ variant: z.ZodDefault<z.ZodEnum<{
1074
+ primary: "primary";
1075
+ secondary: "secondary";
1076
+ outline: "outline";
1077
+ ghost: "ghost";
1078
+ }>>;
1079
+ size: z.ZodDefault<z.ZodEnum<{
1080
+ sm: "sm";
1081
+ md: "md";
1082
+ lg: "lg";
1083
+ }>>;
1084
+ }, z.core.$strip>;
1085
+ }, z.core.$strip>, z.ZodObject<{
1086
+ id: z.ZodString;
1087
+ style: z.ZodOptional<z.ZodObject<{
1088
+ align: z.ZodOptional<z.ZodEnum<{
1089
+ left: "left";
1090
+ center: "center";
1091
+ right: "right";
1092
+ justify: "justify";
1093
+ }>>;
1094
+ backgroundColor: z.ZodOptional<z.ZodString>;
1095
+ textColor: z.ZodOptional<z.ZodString>;
1096
+ padding: z.ZodOptional<z.ZodString>;
1097
+ margin: z.ZodOptional<z.ZodString>;
1098
+ borderRadius: z.ZodOptional<z.ZodString>;
1099
+ className: z.ZodOptional<z.ZodString>;
1100
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1101
+ }, z.core.$strip>>;
1102
+ meta: z.ZodOptional<z.ZodObject<{
1103
+ version: z.ZodOptional<z.ZodNumber>;
1104
+ description: z.ZodOptional<z.ZodString>;
1105
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1106
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1107
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1108
+ lastEditor: z.ZodOptional<z.ZodString>;
1109
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1110
+ }, z.core.$strip>>;
1111
+ type: z.ZodLiteral<"divider">;
1112
+ data: z.ZodObject<{
1113
+ variant: z.ZodDefault<z.ZodEnum<{
1114
+ solid: "solid";
1115
+ dashed: "dashed";
1116
+ dotted: "dotted";
1117
+ }>>;
1118
+ thickness: z.ZodOptional<z.ZodString>;
1119
+ }, z.core.$strip>;
1120
+ }, z.core.$strip>, z.ZodObject<{
1121
+ id: z.ZodString;
1122
+ style: z.ZodOptional<z.ZodObject<{
1123
+ align: z.ZodOptional<z.ZodEnum<{
1124
+ left: "left";
1125
+ center: "center";
1126
+ right: "right";
1127
+ justify: "justify";
1128
+ }>>;
1129
+ backgroundColor: z.ZodOptional<z.ZodString>;
1130
+ textColor: z.ZodOptional<z.ZodString>;
1131
+ padding: z.ZodOptional<z.ZodString>;
1132
+ margin: z.ZodOptional<z.ZodString>;
1133
+ borderRadius: z.ZodOptional<z.ZodString>;
1134
+ className: z.ZodOptional<z.ZodString>;
1135
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1136
+ }, z.core.$strip>>;
1137
+ meta: z.ZodOptional<z.ZodObject<{
1138
+ version: z.ZodOptional<z.ZodNumber>;
1139
+ description: z.ZodOptional<z.ZodString>;
1140
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1141
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1142
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1143
+ lastEditor: z.ZodOptional<z.ZodString>;
1144
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1145
+ }, z.core.$strip>>;
1146
+ type: z.ZodLiteral<"spacer">;
1147
+ data: z.ZodObject<{
1148
+ height: z.ZodDefault<z.ZodString>;
1149
+ }, z.core.$strip>;
1150
+ }, z.core.$strip>, z.ZodObject<{
1151
+ id: z.ZodString;
1152
+ style: z.ZodOptional<z.ZodObject<{
1153
+ align: z.ZodOptional<z.ZodEnum<{
1154
+ left: "left";
1155
+ center: "center";
1156
+ right: "right";
1157
+ justify: "justify";
1158
+ }>>;
1159
+ backgroundColor: z.ZodOptional<z.ZodString>;
1160
+ textColor: z.ZodOptional<z.ZodString>;
1161
+ padding: z.ZodOptional<z.ZodString>;
1162
+ margin: z.ZodOptional<z.ZodString>;
1163
+ borderRadius: z.ZodOptional<z.ZodString>;
1164
+ className: z.ZodOptional<z.ZodString>;
1165
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1166
+ }, z.core.$strip>>;
1167
+ meta: z.ZodOptional<z.ZodObject<{
1168
+ version: z.ZodOptional<z.ZodNumber>;
1169
+ description: z.ZodOptional<z.ZodString>;
1170
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1171
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1172
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1173
+ lastEditor: z.ZodOptional<z.ZodString>;
1174
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1175
+ }, z.core.$strip>>;
1176
+ type: z.ZodLiteral<"list">;
1177
+ data: z.ZodObject<{
1178
+ items: z.ZodArray<z.ZodObject<{
1179
+ id: z.ZodString;
1180
+ content: z.ZodString;
1181
+ checked: z.ZodOptional<z.ZodBoolean>;
1182
+ }, z.core.$strip>>;
1183
+ variant: z.ZodDefault<z.ZodEnum<{
1184
+ unordered: "unordered";
1185
+ ordered: "ordered";
1186
+ checklist: "checklist";
1187
+ }>>;
1188
+ }, z.core.$strip>;
1189
+ }, z.core.$strip>, z.ZodObject<{
1190
+ id: z.ZodString;
1191
+ style: z.ZodOptional<z.ZodObject<{
1192
+ align: z.ZodOptional<z.ZodEnum<{
1193
+ left: "left";
1194
+ center: "center";
1195
+ right: "right";
1196
+ justify: "justify";
1197
+ }>>;
1198
+ backgroundColor: z.ZodOptional<z.ZodString>;
1199
+ textColor: z.ZodOptional<z.ZodString>;
1200
+ padding: z.ZodOptional<z.ZodString>;
1201
+ margin: z.ZodOptional<z.ZodString>;
1202
+ borderRadius: z.ZodOptional<z.ZodString>;
1203
+ className: z.ZodOptional<z.ZodString>;
1204
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1205
+ }, z.core.$strip>>;
1206
+ meta: z.ZodOptional<z.ZodObject<{
1207
+ version: z.ZodOptional<z.ZodNumber>;
1208
+ description: z.ZodOptional<z.ZodString>;
1209
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1210
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1211
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1212
+ lastEditor: z.ZodOptional<z.ZodString>;
1213
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1214
+ }, z.core.$strip>>;
1215
+ type: z.ZodLiteral<"table">;
1216
+ data: z.ZodObject<{
1217
+ headers: z.ZodArray<z.ZodObject<{
1218
+ id: z.ZodString;
1219
+ content: z.ZodString;
1220
+ }, z.core.$strip>>;
1221
+ rows: z.ZodArray<z.ZodObject<{
1222
+ id: z.ZodString;
1223
+ cells: z.ZodArray<z.ZodString>;
1224
+ }, z.core.$strip>>;
1225
+ caption: z.ZodOptional<z.ZodString>;
1226
+ }, z.core.$strip>;
1227
+ }, z.core.$strip>, z.ZodObject<{
1228
+ id: z.ZodString;
1229
+ style: z.ZodOptional<z.ZodObject<{
1230
+ align: z.ZodOptional<z.ZodEnum<{
1231
+ left: "left";
1232
+ center: "center";
1233
+ right: "right";
1234
+ justify: "justify";
1235
+ }>>;
1236
+ backgroundColor: z.ZodOptional<z.ZodString>;
1237
+ textColor: z.ZodOptional<z.ZodString>;
1238
+ padding: z.ZodOptional<z.ZodString>;
1239
+ margin: z.ZodOptional<z.ZodString>;
1240
+ borderRadius: z.ZodOptional<z.ZodString>;
1241
+ className: z.ZodOptional<z.ZodString>;
1242
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1243
+ }, z.core.$strip>>;
1244
+ meta: z.ZodOptional<z.ZodObject<{
1245
+ version: z.ZodOptional<z.ZodNumber>;
1246
+ description: z.ZodOptional<z.ZodString>;
1247
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1248
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1249
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1250
+ lastEditor: z.ZodOptional<z.ZodString>;
1251
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1252
+ }, z.core.$strip>>;
1253
+ type: z.ZodLiteral<"columns">;
1254
+ data: z.ZodObject<{
1255
+ columns: z.ZodArray<z.ZodObject<{
1256
+ id: z.ZodString;
1257
+ width: z.ZodOptional<z.ZodString>;
1258
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1259
+ }, z.core.$strip>>;
1260
+ gap: z.ZodOptional<z.ZodString>;
1261
+ }, z.core.$strip>;
1262
+ }, z.core.$strip>, z.ZodObject<{
1263
+ id: z.ZodString;
1264
+ style: z.ZodOptional<z.ZodObject<{
1265
+ align: z.ZodOptional<z.ZodEnum<{
1266
+ left: "left";
1267
+ center: "center";
1268
+ right: "right";
1269
+ justify: "justify";
1270
+ }>>;
1271
+ backgroundColor: z.ZodOptional<z.ZodString>;
1272
+ textColor: z.ZodOptional<z.ZodString>;
1273
+ padding: z.ZodOptional<z.ZodString>;
1274
+ margin: z.ZodOptional<z.ZodString>;
1275
+ borderRadius: z.ZodOptional<z.ZodString>;
1276
+ className: z.ZodOptional<z.ZodString>;
1277
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1278
+ }, z.core.$strip>>;
1279
+ meta: z.ZodOptional<z.ZodObject<{
1280
+ version: z.ZodOptional<z.ZodNumber>;
1281
+ description: z.ZodOptional<z.ZodString>;
1282
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1283
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1284
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1285
+ lastEditor: z.ZodOptional<z.ZodString>;
1286
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1287
+ }, z.core.$strip>>;
1288
+ type: z.ZodLiteral<"grid">;
1289
+ data: z.ZodObject<{
1290
+ columns: z.ZodOptional<z.ZodNumber>;
1291
+ gap: z.ZodOptional<z.ZodString>;
1292
+ items: z.ZodArray<z.ZodObject<{
1293
+ id: z.ZodString;
1294
+ span: z.ZodOptional<z.ZodNumber>;
1295
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1296
+ }, z.core.$strip>>;
1297
+ }, z.core.$strip>;
1298
+ }, z.core.$strip>, z.ZodObject<{
1299
+ id: z.ZodString;
1300
+ style: z.ZodOptional<z.ZodObject<{
1301
+ align: z.ZodOptional<z.ZodEnum<{
1302
+ left: "left";
1303
+ center: "center";
1304
+ right: "right";
1305
+ justify: "justify";
1306
+ }>>;
1307
+ backgroundColor: z.ZodOptional<z.ZodString>;
1308
+ textColor: z.ZodOptional<z.ZodString>;
1309
+ padding: z.ZodOptional<z.ZodString>;
1310
+ margin: z.ZodOptional<z.ZodString>;
1311
+ borderRadius: z.ZodOptional<z.ZodString>;
1312
+ className: z.ZodOptional<z.ZodString>;
1313
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1314
+ }, z.core.$strip>>;
1315
+ meta: z.ZodOptional<z.ZodObject<{
1316
+ version: z.ZodOptional<z.ZodNumber>;
1317
+ description: z.ZodOptional<z.ZodString>;
1318
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1319
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1320
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1321
+ lastEditor: z.ZodOptional<z.ZodString>;
1322
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1323
+ }, z.core.$strip>>;
1324
+ type: z.ZodLiteral<"accordion">;
1325
+ data: z.ZodObject<{
1326
+ items: z.ZodArray<z.ZodObject<{
1327
+ id: z.ZodString;
1328
+ title: z.ZodString;
1329
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1330
+ defaultOpen: z.ZodOptional<z.ZodBoolean>;
1331
+ }, z.core.$strip>>;
1332
+ allowMultiple: z.ZodOptional<z.ZodBoolean>;
1333
+ }, z.core.$strip>;
1334
+ }, z.core.$strip>, z.ZodObject<{
1335
+ id: z.ZodString;
1336
+ style: z.ZodOptional<z.ZodObject<{
1337
+ align: z.ZodOptional<z.ZodEnum<{
1338
+ left: "left";
1339
+ center: "center";
1340
+ right: "right";
1341
+ justify: "justify";
1342
+ }>>;
1343
+ backgroundColor: z.ZodOptional<z.ZodString>;
1344
+ textColor: z.ZodOptional<z.ZodString>;
1345
+ padding: z.ZodOptional<z.ZodString>;
1346
+ margin: z.ZodOptional<z.ZodString>;
1347
+ borderRadius: z.ZodOptional<z.ZodString>;
1348
+ className: z.ZodOptional<z.ZodString>;
1349
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1350
+ }, z.core.$strip>>;
1351
+ meta: z.ZodOptional<z.ZodObject<{
1352
+ version: z.ZodOptional<z.ZodNumber>;
1353
+ description: z.ZodOptional<z.ZodString>;
1354
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1355
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1356
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1357
+ lastEditor: z.ZodOptional<z.ZodString>;
1358
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1359
+ }, z.core.$strip>>;
1360
+ type: z.ZodLiteral<"tabs">;
1361
+ data: z.ZodObject<{
1362
+ tabs: z.ZodArray<z.ZodObject<{
1363
+ id: z.ZodString;
1364
+ label: z.ZodString;
1365
+ blocks: z.ZodArray<z.ZodLazy<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1366
+ }, z.core.$strip>>;
1367
+ defaultTab: z.ZodOptional<z.ZodString>;
1368
+ }, z.core.$strip>;
1369
+ }, z.core.$strip>, z.ZodObject<{
1370
+ id: z.ZodString;
1371
+ style: z.ZodOptional<z.ZodObject<{
1372
+ align: z.ZodOptional<z.ZodEnum<{
1373
+ left: "left";
1374
+ center: "center";
1375
+ right: "right";
1376
+ justify: "justify";
1377
+ }>>;
1378
+ backgroundColor: z.ZodOptional<z.ZodString>;
1379
+ textColor: z.ZodOptional<z.ZodString>;
1380
+ padding: z.ZodOptional<z.ZodString>;
1381
+ margin: z.ZodOptional<z.ZodString>;
1382
+ borderRadius: z.ZodOptional<z.ZodString>;
1383
+ className: z.ZodOptional<z.ZodString>;
1384
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1385
+ }, z.core.$strip>>;
1386
+ meta: z.ZodOptional<z.ZodObject<{
1387
+ version: z.ZodOptional<z.ZodNumber>;
1388
+ description: z.ZodOptional<z.ZodString>;
1389
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1390
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1391
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1392
+ lastEditor: z.ZodOptional<z.ZodString>;
1393
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1394
+ }, z.core.$strip>>;
1395
+ type: z.ZodLiteral<"form">;
1396
+ data: z.ZodObject<{
1397
+ action: z.ZodOptional<z.ZodURL>;
1398
+ method: z.ZodDefault<z.ZodEnum<{
1399
+ GET: "GET";
1400
+ POST: "POST";
1401
+ }>>;
1402
+ fields: z.ZodArray<z.ZodObject<{
1403
+ id: z.ZodString;
1404
+ type: z.ZodEnum<{
1405
+ file: "file";
1406
+ text: "text";
1407
+ email: "email";
1408
+ password: "password";
1409
+ textarea: "textarea";
1410
+ select: "select";
1411
+ checkbox: "checkbox";
1412
+ radio: "radio";
1413
+ }>;
1414
+ name: z.ZodString;
1415
+ label: z.ZodString;
1416
+ placeholder: z.ZodOptional<z.ZodString>;
1417
+ required: z.ZodDefault<z.ZodBoolean>;
1418
+ options: z.ZodOptional<z.ZodArray<z.ZodObject<{
1419
+ value: z.ZodString;
1420
+ label: z.ZodString;
1421
+ }, z.core.$strip>>>;
1422
+ }, z.core.$strip>>;
1423
+ submitText: z.ZodDefault<z.ZodString>;
1424
+ }, z.core.$strip>;
1425
+ }, z.core.$strip>, z.ZodObject<{
1426
+ id: z.ZodString;
1427
+ style: z.ZodOptional<z.ZodObject<{
1428
+ align: z.ZodOptional<z.ZodEnum<{
1429
+ left: "left";
1430
+ center: "center";
1431
+ right: "right";
1432
+ justify: "justify";
1433
+ }>>;
1434
+ backgroundColor: z.ZodOptional<z.ZodString>;
1435
+ textColor: z.ZodOptional<z.ZodString>;
1436
+ padding: z.ZodOptional<z.ZodString>;
1437
+ margin: z.ZodOptional<z.ZodString>;
1438
+ borderRadius: z.ZodOptional<z.ZodString>;
1439
+ className: z.ZodOptional<z.ZodString>;
1440
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1441
+ }, z.core.$strip>>;
1442
+ meta: z.ZodOptional<z.ZodObject<{
1443
+ version: z.ZodOptional<z.ZodNumber>;
1444
+ description: z.ZodOptional<z.ZodString>;
1445
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1446
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1447
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1448
+ lastEditor: z.ZodOptional<z.ZodString>;
1449
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1450
+ }, z.core.$strip>>;
1451
+ type: z.ZodLiteral<"html">;
1452
+ data: z.ZodObject<{
1453
+ html: z.ZodString;
1454
+ sanitize: z.ZodDefault<z.ZodBoolean>;
1455
+ }, z.core.$strip>;
1456
+ }, z.core.$strip>, z.ZodObject<{
1457
+ id: z.ZodString;
1458
+ style: z.ZodOptional<z.ZodObject<{
1459
+ align: z.ZodOptional<z.ZodEnum<{
1460
+ left: "left";
1461
+ center: "center";
1462
+ right: "right";
1463
+ justify: "justify";
1464
+ }>>;
1465
+ backgroundColor: z.ZodOptional<z.ZodString>;
1466
+ textColor: z.ZodOptional<z.ZodString>;
1467
+ padding: z.ZodOptional<z.ZodString>;
1468
+ margin: z.ZodOptional<z.ZodString>;
1469
+ borderRadius: z.ZodOptional<z.ZodString>;
1470
+ className: z.ZodOptional<z.ZodString>;
1471
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1472
+ }, z.core.$strip>>;
1473
+ meta: z.ZodOptional<z.ZodObject<{
1474
+ version: z.ZodOptional<z.ZodNumber>;
1475
+ description: z.ZodOptional<z.ZodString>;
1476
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
1477
+ aiGenerated: z.ZodOptional<z.ZodBoolean>;
1478
+ sourcePrompt: z.ZodOptional<z.ZodString>;
1479
+ lastEditor: z.ZodOptional<z.ZodString>;
1480
+ lastEditedAt: z.ZodOptional<z.ZodString>;
1481
+ }, z.core.$strip>>;
1482
+ type: z.ZodLiteral<"component">;
1483
+ data: z.ZodObject<{
1484
+ componentId: z.ZodString;
1485
+ props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1486
+ source: z.ZodDefault<z.ZodEnum<{
1487
+ custom: "custom";
1488
+ builtin: "builtin";
1489
+ marketplace: "marketplace";
1490
+ }>>;
1491
+ }, z.core.$strip>;
1492
+ }, z.core.$strip>]>;
1493
+ export type Block = z.infer<typeof BlockSchema>;
1494
+ export declare const BlockTypes: readonly ["text", "heading", "quote", "code", "image", "video", "embed", "button", "divider", "spacer", "list", "table", "columns", "grid", "accordion", "tabs", "form", "html", "component"];
1495
+ export type BlockType = (typeof BlockTypes)[number];
1496
+ /**
1497
+ * Creates a text block
1498
+ */
1499
+ export declare function createTextBlock(id: string, content: string, format?: 'plain' | 'markdown' | 'html' | 'tiptap'): TextBlock;
1500
+ /**
1501
+ * Creates a heading block
1502
+ */
1503
+ export declare function createHeadingBlock(id: string, text: string, level?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'): HeadingBlock;
1504
+ /**
1505
+ * Creates an image block
1506
+ */
1507
+ export declare function createImageBlock(id: string, src: string, alt: string, options?: {
1508
+ caption?: string;
1509
+ width?: number;
1510
+ height?: number;
1511
+ }): ImageBlock;
1512
+ /**
1513
+ * Creates a code block
1514
+ */
1515
+ export declare function createCodeBlock(id: string, code: string, language?: string, options?: {
1516
+ filename?: string;
1517
+ showLineNumbers?: boolean;
1518
+ highlightLines?: number[];
1519
+ }): CodeBlock;
1520
+ export declare function isTextBlock(block: Block): block is TextBlock;
1521
+ export declare function isHeadingBlock(block: Block): block is HeadingBlock;
1522
+ export declare function isImageBlock(block: Block): block is ImageBlock;
1523
+ export declare function isColumnsBlock(block: Block): block is ColumnsBlock;
1524
+ export declare function isGridBlock(block: Block): block is GridBlock;
1525
+ export declare function isContainerBlock(block: Block): block is ColumnsBlock | GridBlock | AccordionBlock | TabsBlock;
1526
+ /**
1527
+ * Recursively walks all blocks including nested ones
1528
+ *
1529
+ * Note: Due to Zod's z.lazy() inference limitations with recursive types,
1530
+ * we use type assertions for nested blocks. The schemas correctly validate
1531
+ * at runtime, but TypeScript needs help with inference.
1532
+ */
1533
+ export declare function walkBlocks(blocks: Block[], callback: (block: Block, path: string[]) => void, path?: string[]): void;
1534
+ /**
1535
+ * Finds a block by ID (recursively)
1536
+ */
1537
+ export declare function findBlockById(blocks: Block[], id: string): Block | undefined;
1538
+ /**
1539
+ * Counts all blocks including nested ones
1540
+ */
1541
+ export declare function countBlocks(blocks: Block[]): number;
1542
+ //# sourceMappingURL=index.d.ts.map