@getvitops/generator 8.1.0 → 8.2.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 (44) hide show
  1. package/CHANGELOG.md +797 -20
  2. package/assets/css/patterns/banner.css +20 -0
  3. package/assets/css/patterns/copy.css +5 -0
  4. package/assets/css/patterns/forms.css +5 -0
  5. package/assets/css/patterns/marquee.css +16 -0
  6. package/assets/css/patterns/splitter.css +11 -0
  7. package/assets/css/patterns/table.css +10 -0
  8. package/assets/js/consent.js +1 -1
  9. package/assets/js/deferred.js +1 -1
  10. package/assets/js/editor.js +2 -2
  11. package/assets/js/elements.js +5 -5
  12. package/assets/js/polyfills/adoptedStyleSheets.js +1 -1
  13. package/assets/js/polyfills/css-anchor-positioning-fn.js +4 -4
  14. package/assets/js/polyfills/global.esm.js +1 -1
  15. package/assets/js/polyfills/invokers-polyfill.js +1 -1
  16. package/assets/js/polyfills/popover.js +2 -2
  17. package/assets/js/polyfills/webcomponents-bundle.js +9 -9
  18. package/config.schema.json +464 -228
  19. package/dist/config-BfcWKH-5.mjs +1743 -0
  20. package/dist/config-BfcWKH-5.mjs.map +1 -0
  21. package/dist/config-Bhg3Xv3D.mjs +1774 -0
  22. package/dist/config-Bhg3Xv3D.mjs.map +1 -0
  23. package/dist/config.d.mts +2431 -0
  24. package/dist/config.d.mts.map +1 -0
  25. package/dist/config.mjs +3 -0
  26. package/dist/icons-sprite-CQ5Zj4go.d.mts +265 -0
  27. package/dist/icons-sprite-CQ5Zj4go.d.mts.map +1 -0
  28. package/dist/icons-sprite.d.mts +2 -0
  29. package/dist/icons-sprite.mjs +128 -0
  30. package/dist/icons-sprite.mjs.map +1 -0
  31. package/dist/index.d.mts +73 -2885
  32. package/dist/index.d.mts.map +1 -1
  33. package/dist/index.mjs +144 -2422
  34. package/dist/index.mjs.map +1 -1
  35. package/dist/schema-BV2n2phj.d.mts +291 -0
  36. package/dist/schema-BV2n2phj.d.mts.map +1 -0
  37. package/dist/tokens-BzBbTeTi.d.mts +225 -0
  38. package/dist/tokens-BzBbTeTi.d.mts.map +1 -0
  39. package/dist/tokens-C1RJwFeG.mjs +695 -0
  40. package/dist/tokens-C1RJwFeG.mjs.map +1 -0
  41. package/dist/tokens.d.mts +2 -0
  42. package/dist/tokens.mjs +3 -0
  43. package/package.json +19 -6
  44. package/schema.json +12 -28
@@ -0,0 +1,2431 @@
1
+ import { t as DesignSystem } from "./schema-BV2n2phj.mjs";
2
+ import { AD_PROVIDERS, AdPropertySchema, AdProvider, BIGIN_DATA_CENTERS, CRM_PROVIDERS, CrmProviderConfig, IndexNowSchema, IndexingSchema, ReviewLocationSchema, ReviewsSchema, SearchConsoleSchema, SearchConsoleSetupSchema } from "@getvitops/config";
3
+ import * as z from "@zod/mini";
4
+ declare const PostalAddressSchema: z.ZodMiniObject<{
5
+ streetAddress: z.ZodMiniString<string>;
6
+ addressLocality: z.ZodMiniString<string>;
7
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
8
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
9
+ addressCountry: z.ZodMiniString<string>;
10
+ }, z.core.$strict>;
11
+ declare const ContactObjectSchema: z.ZodMiniObject<{
12
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
13
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
14
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
15
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
16
+ streetAddress: z.ZodMiniString<string>;
17
+ addressLocality: z.ZodMiniString<string>;
18
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
19
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
20
+ addressCountry: z.ZodMiniString<string>;
21
+ }, z.core.$strict>>;
22
+ }, z.core.$strict>;
23
+ export type PostalAddress = z.infer<typeof PostalAddressSchema>;
24
+ export type ContactObject = z.infer<typeof ContactObjectSchema>;
25
+ /**
26
+ * A runtime, per-visitor content experiment — deliberately separate from
27
+ * `abTesting.variants` above, which targets a whole build/environment via
28
+ * `overrides`. This is the opposite granularity: one page, cookie-pinned per
29
+ * visitor, with the two variants written directly in the page itself (no
30
+ * config-schema representation of "the content"). `site.experiments` is a
31
+ * record so running more than one experiment on different pages at once is
32
+ * just another key — nothing here assumes only one is active.
33
+ */
34
+ declare const ExperimentSchema: z.ZodMiniObject<{
35
+ enabled: z.ZodMiniBoolean<boolean>;
36
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
37
+ analytics: "analytics";
38
+ marketing: "marketing";
39
+ }>>;
40
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
41
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
42
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
43
+ variants: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>], null>;
44
+ }, z.core.$strict>;
45
+ export declare const SiteFontSchema: z.ZodMiniObject<{
46
+ name: z.ZodMiniString<string>;
47
+ provider: z.ZodMiniEnum<{
48
+ google: "google";
49
+ fontsource: "fontsource";
50
+ adobe: "adobe";
51
+ bunny: "bunny";
52
+ fontshare: "fontshare";
53
+ googleicons: "googleicons";
54
+ npm: "npm";
55
+ local: "local";
56
+ }>;
57
+ cssVariable: z.ZodMiniString<string>;
58
+ weights: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>>;
59
+ styles: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
60
+ normal: "normal";
61
+ italic: "italic";
62
+ }>>>;
63
+ subsets: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
64
+ fallbacks: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
65
+ optimizedFallbacks: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
66
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
67
+ optional: "optional";
68
+ auto: "auto";
69
+ block: "block";
70
+ swap: "swap";
71
+ fallback: "fallback";
72
+ }>>;
73
+ formats: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
74
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
75
+ variants: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
76
+ src: z.ZodMiniArray<z.ZodMiniString<string>>;
77
+ weight: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>;
78
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
79
+ normal: "normal";
80
+ italic: "italic";
81
+ }>>;
82
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
83
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
84
+ optional: "optional";
85
+ auto: "auto";
86
+ block: "block";
87
+ swap: "swap";
88
+ fallback: "fallback";
89
+ }>>;
90
+ }, z.core.$strict>>>;
91
+ preload: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniArray<z.ZodMiniObject<{
92
+ weight: z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>;
93
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
94
+ normal: "normal";
95
+ italic: "italic";
96
+ }>>;
97
+ }, z.core.$strict>>]>>;
98
+ }, z.core.$strict>;
99
+ /**
100
+ * The commercial plan/add-on a site is entitled to — distinct from a `Config`
101
+ * section's own `enabled` flag. `enabled` answers "does this site do X at
102
+ * all" (a capability switch); `plan` answers "is this client entitled to turn
103
+ * X on" (a commercial switch one layer above). Absence means unrestricted,
104
+ * matching every other opt-in block in `Config`. `key` is an open string, not
105
+ * a closed enum, so a client-specific plan needs no schema change; `addons`
106
+ * is checked against `PLAN_CAPABILITIES` below. The commercial catalogue
107
+ * itself (plan names, pricing, which add-ons a plan bundles) stays
108
+ * Portal-side — this only records which one a site has.
109
+ */
110
+ declare const PlanSchema: z.ZodMiniObject<{
111
+ key: z.ZodMiniString<string>;
112
+ addons: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
113
+ }, z.core.$strict>;
114
+ /**
115
+ * Which template set the generated legal documents are written against. This is
116
+ * a closed enum rather than a free string because an unrecognised value would
117
+ * otherwise silently fall back to the wrong body of law; `validateConfig` rejects
118
+ * anything without a registered template. Add a member here and a matching entry
119
+ * in `legal/templates/index.ts` — the two are checked against each other.
120
+ */
121
+ export declare const JURISDICTIONS: readonly ["ca"];
122
+ export type Jurisdiction = (typeof JURISDICTIONS)[number];
123
+ /**
124
+ * The country each template set frames cross-border transfers as *leaving*.
125
+ *
126
+ * A jurisdiction's own country is not a transfer, so this is what filters the
127
+ * disclosure lists — without it, `country: "Canada"` renders the incoherent
128
+ * "outside of Canada, including Canada".
129
+ *
130
+ * It belongs to the **jurisdiction**, not to `organization.address`: a `ca` policy
131
+ * says "outside of Canada" even for a business incorporated elsewhere. (The
132
+ * address drives a different sentence — the terms' governing-law clause, via
133
+ * `governingCountry`.) `satisfies` makes a new jurisdiction unable to forget it,
134
+ * the same guard style as `TEMPLATES`.
135
+ */
136
+ export declare const JURISDICTION_COUNTRIES: {
137
+ ca: string;
138
+ };
139
+ declare const SiteSectionSchema: z.ZodMiniObject<{
140
+ defaultLocale: z.ZodMiniString<string>;
141
+ locales: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
142
+ name: z.ZodMiniString<string>;
143
+ tagline: z.ZodMiniOptional<z.ZodMiniString<string>>;
144
+ basePath: z.ZodMiniOptional<z.ZodMiniString<string>>;
145
+ }, z.core.$strict>>;
146
+ domains: z.ZodMiniOptional<z.ZodMiniObject<{
147
+ canonical: z.ZodMiniURL;
148
+ aliases: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
149
+ domain: z.ZodMiniString<string>;
150
+ redirectType: z.ZodMiniUnion<readonly [z.ZodMiniLiteral<301>, z.ZodMiniLiteral<302>, z.ZodMiniLiteral<307>, z.ZodMiniLiteral<308>]>;
151
+ redirectTo: z.ZodMiniString<string>;
152
+ environment: z.ZodMiniOptional<z.ZodMiniString<string>>;
153
+ }, z.core.$strict>>>;
154
+ }, z.core.$strict>>;
155
+ dns: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
156
+ provider: z.ZodMiniOptional<z.ZodMiniString<string>>;
157
+ nameservers: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
158
+ records: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
159
+ type: z.ZodMiniEnum<{
160
+ A: "A";
161
+ AAAA: "AAAA";
162
+ CNAME: "CNAME";
163
+ TXT: "TXT";
164
+ MX: "MX";
165
+ NS: "NS";
166
+ SRV: "SRV";
167
+ CAA: "CAA";
168
+ PTR: "PTR";
169
+ SOA: "SOA";
170
+ }>;
171
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
172
+ value: z.ZodMiniString<string>;
173
+ ttl: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
174
+ proxied: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
175
+ }, z.core.$strict>>>;
176
+ }, z.core.$strict>>>;
177
+ cloudflare: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
178
+ google: z.ZodMiniOptional<z.ZodMiniObject<{
179
+ project: z.ZodMiniString<string>;
180
+ }, z.core.$strict>>;
181
+ searchConsole: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
182
+ delegatedOwners: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEmail>>;
183
+ fullUserGroup: z.ZodMiniOptional<z.ZodMiniEmail>;
184
+ }, z.core.$strict>>>;
185
+ environments: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
186
+ url: z.ZodMiniURL;
187
+ api: z.ZodMiniOptional<z.ZodMiniURL>;
188
+ analytics: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
189
+ ads: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
190
+ robots: z.ZodMiniOptional<z.ZodMiniString<string>>;
191
+ variant: z.ZodMiniOptional<z.ZodMiniString<string>>;
192
+ }, z.core.$strict>>;
193
+ plan: z.ZodMiniOptional<z.ZodMiniObject<{
194
+ key: z.ZodMiniString<string>;
195
+ addons: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
196
+ }, z.core.$strict>>;
197
+ abTesting: z.ZodMiniOptional<z.ZodMiniObject<{
198
+ enabled: z.ZodMiniBoolean<boolean>;
199
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
200
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
201
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
202
+ variants: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
203
+ environment: z.ZodMiniString<string>;
204
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
205
+ overrides: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
206
+ }, z.core.$strict>>>;
207
+ }, z.core.$strict>>;
208
+ experiments: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
209
+ enabled: z.ZodMiniBoolean<boolean>;
210
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
211
+ analytics: "analytics";
212
+ marketing: "marketing";
213
+ }>>;
214
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
215
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
216
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
217
+ variants: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>], null>;
218
+ }, z.core.$strict>>>;
219
+ fonts: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
220
+ name: z.ZodMiniString<string>;
221
+ provider: z.ZodMiniEnum<{
222
+ google: "google";
223
+ fontsource: "fontsource";
224
+ adobe: "adobe";
225
+ bunny: "bunny";
226
+ fontshare: "fontshare";
227
+ googleicons: "googleicons";
228
+ npm: "npm";
229
+ local: "local";
230
+ }>;
231
+ cssVariable: z.ZodMiniString<string>;
232
+ weights: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>>;
233
+ styles: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
234
+ normal: "normal";
235
+ italic: "italic";
236
+ }>>>;
237
+ subsets: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
238
+ fallbacks: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
239
+ optimizedFallbacks: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
240
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
241
+ optional: "optional";
242
+ auto: "auto";
243
+ block: "block";
244
+ swap: "swap";
245
+ fallback: "fallback";
246
+ }>>;
247
+ formats: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
248
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
249
+ variants: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
250
+ src: z.ZodMiniArray<z.ZodMiniString<string>>;
251
+ weight: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>;
252
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
253
+ normal: "normal";
254
+ italic: "italic";
255
+ }>>;
256
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
257
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
258
+ optional: "optional";
259
+ auto: "auto";
260
+ block: "block";
261
+ swap: "swap";
262
+ fallback: "fallback";
263
+ }>>;
264
+ }, z.core.$strict>>>;
265
+ preload: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniArray<z.ZodMiniObject<{
266
+ weight: z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>;
267
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
268
+ normal: "normal";
269
+ italic: "italic";
270
+ }>>;
271
+ }, z.core.$strict>>]>>;
272
+ }, z.core.$strict>>>;
273
+ tags: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
274
+ postTypes: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
275
+ galleries: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
276
+ title: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
277
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
278
+ images: z.ZodMiniArray<z.ZodMiniObject<{
279
+ src: z.ZodMiniString<string>;
280
+ alt: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
281
+ caption: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
282
+ }, z.core.$strict>>;
283
+ }, z.core.$strict>>>;
284
+ testimonials: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
285
+ title: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
286
+ items: z.ZodMiniArray<z.ZodMiniObject<{
287
+ quote: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
288
+ name: z.ZodMiniString<string>;
289
+ role: z.ZodMiniOptional<z.ZodMiniString<string>>;
290
+ rating: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
291
+ date: z.ZodMiniOptional<z.ZodMiniString<string>>;
292
+ }, z.core.$strict>>;
293
+ }, z.core.$strict>>>;
294
+ templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
295
+ type: z.ZodMiniLiteral<"nav">;
296
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
297
+ present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
298
+ items: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
299
+ }, z.core.$strict>, z.ZodMiniObject<{
300
+ type: z.ZodMiniLiteral<"form">;
301
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
302
+ present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
303
+ action: z.ZodMiniOptional<z.ZodMiniString<string>>;
304
+ method: z.ZodMiniOptional<z.ZodMiniEnum<{
305
+ get: "get";
306
+ post: "post";
307
+ }>>;
308
+ fields: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
309
+ name: z.ZodMiniString<string>;
310
+ type: z.ZodMiniEnum<{
311
+ number: "number";
312
+ date: "date";
313
+ file: "file";
314
+ text: "text";
315
+ email: "email";
316
+ url: "url";
317
+ tel: "tel";
318
+ password: "password";
319
+ textarea: "textarea";
320
+ select: "select";
321
+ checkbox: "checkbox";
322
+ radio: "radio";
323
+ hidden: "hidden";
324
+ }>;
325
+ label: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
326
+ required: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
327
+ validation: z.ZodMiniOptional<z.ZodMiniString<string>>;
328
+ options: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniObject<{
329
+ label: z.ZodMiniString<string>;
330
+ value: z.ZodMiniString<string>;
331
+ }, z.core.$strict>>]>>;
332
+ attrs: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>, z.ZodMiniBoolean<boolean>]>>>;
333
+ }, z.core.$strict>>>;
334
+ submit: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>, z.ZodMiniBoolean<boolean>]>>>;
335
+ honeypot: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
336
+ }, z.core.$strict>, z.ZodMiniObject<{
337
+ type: z.ZodMiniLiteral<"nodes">;
338
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
339
+ nodes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
340
+ }, z.core.$strict>]>>>;
341
+ navigation: z.ZodMiniOptional<z.ZodMiniObject<{
342
+ activeTemplate: z.ZodMiniOptional<z.ZodMiniObject<{
343
+ default: z.ZodMiniOptional<z.ZodMiniString<string>>;
344
+ breakpoints: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
345
+ }, z.core.$strict>>;
346
+ }, z.core.$strict>>;
347
+ seo: z.ZodMiniOptional<z.ZodMiniObject<{
348
+ siteName: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
349
+ titleTemplate: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
350
+ defaultTitle: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
351
+ defaultDescription: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
352
+ robots: z.ZodMiniOptional<z.ZodMiniString<string>>;
353
+ googleSiteVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
354
+ bingSiteVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
355
+ openGraph: z.ZodMiniOptional<z.ZodMiniObject<{
356
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
357
+ website: "website";
358
+ article: "article";
359
+ profile: "profile";
360
+ }>>;
361
+ locale: z.ZodMiniOptional<z.ZodMiniString<string>>;
362
+ localeAlternates: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
363
+ image: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
364
+ src: z.ZodMiniString<string>;
365
+ alt: z.ZodMiniOptional<z.ZodMiniString<string>>;
366
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
367
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
368
+ type: z.ZodMiniOptional<z.ZodMiniString<string>>;
369
+ }, z.core.$strict>]>>;
370
+ }, z.core.$strict>>;
371
+ twitter: z.ZodMiniOptional<z.ZodMiniObject<{
372
+ card: z.ZodMiniOptional<z.ZodMiniEnum<{
373
+ summary: "summary";
374
+ summary_large_image: "summary_large_image";
375
+ app: "app";
376
+ player: "player";
377
+ }>>;
378
+ site: z.ZodMiniOptional<z.ZodMiniString<string>>;
379
+ creator: z.ZodMiniOptional<z.ZodMiniString<string>>;
380
+ }, z.core.$strict>>;
381
+ indexing: z.ZodMiniOptional<z.ZodMiniObject<{
382
+ sitemapUrl: z.ZodMiniOptional<z.ZodMiniURL>;
383
+ indexNow: z.ZodMiniOptional<z.ZodMiniObject<{
384
+ key: z.ZodMiniString<string>;
385
+ keyLocation: z.ZodMiniOptional<z.ZodMiniURL>;
386
+ endpoint: z.ZodMiniOptional<z.ZodMiniURL>;
387
+ }, z.core.$strict>>;
388
+ searchConsole: z.ZodMiniOptional<z.ZodMiniObject<{
389
+ siteUrl: z.ZodMiniString<string>;
390
+ resubmitSitemap: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
391
+ }, z.core.$strict>>;
392
+ priorityUrls: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
393
+ }, z.core.$strict>>;
394
+ }, z.core.$strict>>;
395
+ analytics: z.ZodMiniOptional<z.ZodMiniObject<{
396
+ googleAnalyticsId: z.ZodMiniOptional<z.ZodMiniString<string>>;
397
+ plausibleDomain: z.ZodMiniOptional<z.ZodMiniString<string>>;
398
+ googleTagManagerId: z.ZodMiniOptional<z.ZodMiniString<string>>;
399
+ clarityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
400
+ matomo: z.ZodMiniOptional<z.ZodMiniObject<{
401
+ url: z.ZodMiniString<string>;
402
+ siteId: z.ZodMiniString<string>;
403
+ cookies: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
404
+ abVariantDimensions: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNumber<number>>>;
405
+ }, z.core.$strict>>;
406
+ }, z.core.$strict>>;
407
+ notifications: z.ZodMiniOptional<z.ZodMiniObject<{
408
+ email: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniEmail, z.ZodMiniObject<{
409
+ provider: z.ZodMiniLiteral<"cloudflare">;
410
+ to: z.ZodMiniOptional<z.ZodMiniEmail>;
411
+ from: z.ZodMiniOptional<z.ZodMiniEmail>;
412
+ fromName: z.ZodMiniOptional<z.ZodMiniString<string>>;
413
+ replyTo: z.ZodMiniOptional<z.ZodMiniEmail>;
414
+ binding: z.ZodMiniOptional<z.ZodMiniString<string>>;
415
+ verifySender: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
416
+ }, z.core.$strict>]>>;
417
+ actionUrl: z.ZodMiniOptional<z.ZodMiniString<string>>;
418
+ }, z.core.$strict>>;
419
+ tracking: z.ZodMiniOptional<z.ZodMiniObject<{
420
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
421
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
422
+ marketing: "marketing";
423
+ analytics: "analytics";
424
+ }>>;
425
+ platforms: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
426
+ }, z.core.$strict>>;
427
+ ads: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniEnum<{
428
+ google: "google";
429
+ meta: "meta";
430
+ linkedin: "linkedin";
431
+ reddit: "reddit";
432
+ tiktok: "tiktok";
433
+ microsoft: "microsoft";
434
+ pinterest: "pinterest";
435
+ snapchat: "snapchat";
436
+ }> & z.core.$partial, z.ZodMiniObject<{
437
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
438
+ pixelId: z.ZodMiniOptional<z.ZodMiniString<string>>;
439
+ conversionLabel: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
440
+ call: z.ZodMiniOptional<z.ZodMiniString<string>>;
441
+ email: z.ZodMiniOptional<z.ZodMiniString<string>>;
442
+ form: z.ZodMiniOptional<z.ZodMiniString<string>>;
443
+ }, z.core.$strict>]>>;
444
+ conversionActionId: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
445
+ call: z.ZodMiniOptional<z.ZodMiniString<string>>;
446
+ email: z.ZodMiniOptional<z.ZodMiniString<string>>;
447
+ form: z.ZodMiniOptional<z.ZodMiniString<string>>;
448
+ }, z.core.$strict>]>>;
449
+ reporting: z.ZodMiniOptional<z.ZodMiniEnum<{
450
+ client: "client";
451
+ server: "server";
452
+ }>>;
453
+ domain: z.ZodMiniOptional<z.ZodMiniString<string>>;
454
+ domainVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
455
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
456
+ marketing: "marketing";
457
+ analytics: "analytics";
458
+ }>>;
459
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
460
+ }, z.core.$strict>>>;
461
+ reviews: z.ZodMiniOptional<z.ZodMiniObject<{
462
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
463
+ locations: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
464
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
465
+ locationId: z.ZodMiniString<string>;
466
+ featured: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
467
+ minRating: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
468
+ limit: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
469
+ sort: z.ZodMiniOptional<z.ZodMiniEnum<{
470
+ recent: "recent";
471
+ rating: "rating";
472
+ }>>;
473
+ }, z.core.$strict>>;
474
+ schema: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
475
+ avatars: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
476
+ }, z.core.$strict>>;
477
+ crm: z.ZodMiniOptional<z.ZodMiniObject<{
478
+ provider: z.ZodMiniEnum<{
479
+ hubspot: "hubspot";
480
+ bigin: "bigin";
481
+ jobber: "jobber";
482
+ }>;
483
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
484
+ hubspot: z.ZodMiniOptional<z.ZodMiniObject<{
485
+ portalId: z.ZodMiniString<string>;
486
+ formGuid: z.ZodMiniString<string>;
487
+ dataCenter: z.ZodMiniOptional<z.ZodMiniEnum<{
488
+ eu: "eu";
489
+ na: "na";
490
+ }>>;
491
+ }, z.core.$strict>>;
492
+ bigin: z.ZodMiniOptional<z.ZodMiniObject<{
493
+ dataCenter: z.ZodMiniEnum<{
494
+ com: "com";
495
+ ca: "ca";
496
+ eu: "eu";
497
+ in: "in";
498
+ "com.au": "com.au";
499
+ jp: "jp";
500
+ }>;
501
+ duplicateCheckField: z.ZodMiniOptional<z.ZodMiniString<string>>;
502
+ pipeline: z.ZodMiniOptional<z.ZodMiniObject<{
503
+ enabled: z.ZodMiniBoolean<boolean>;
504
+ subPipeline: z.ZodMiniOptional<z.ZodMiniString<string>>;
505
+ stage: z.ZodMiniOptional<z.ZodMiniString<string>>;
506
+ }, z.core.$strict>>;
507
+ }, z.core.$strict>>;
508
+ jobber: z.ZodMiniOptional<z.ZodMiniObject<{
509
+ apiVersion: z.ZodMiniOptional<z.ZodMiniString<string>>;
510
+ dedupe: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
511
+ note: z.ZodMiniOptional<z.ZodMiniObject<{
512
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
513
+ }, z.core.$strict>>;
514
+ }, z.core.$strict>>;
515
+ fieldMap: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
516
+ trackingFields: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
517
+ }, z.core.$strict>>;
518
+ security: z.ZodMiniOptional<z.ZodMiniObject<{
519
+ turnstile: z.ZodMiniOptional<z.ZodMiniObject<{
520
+ siteKey: z.ZodMiniOptional<z.ZodMiniString<string>>;
521
+ }, z.core.$strict>>;
522
+ }, z.core.$strict>>;
523
+ legal: z.ZodMiniOptional<z.ZodMiniObject<{
524
+ jurisdiction: z.ZodMiniOptional<z.ZodMiniEnum<{
525
+ ca: "ca";
526
+ }>>;
527
+ privacyPolicy: z.ZodMiniOptional<z.ZodMiniObject<{
528
+ enabled: z.ZodMiniBoolean<boolean>;
529
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
530
+ lastUpdated: z.ZodMiniOptional<z.ZodMiniString<string>>;
531
+ privacyOfficer: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
532
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
533
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
534
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
535
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
536
+ streetAddress: z.ZodMiniString<string>;
537
+ addressLocality: z.ZodMiniString<string>;
538
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
539
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
540
+ addressCountry: z.ZodMiniString<string>;
541
+ }, z.core.$strict>>;
542
+ }, z.core.$strict>]>>;
543
+ retention: z.ZodMiniOptional<z.ZodMiniString<string>>;
544
+ processors: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
545
+ name: z.ZodMiniString<string>;
546
+ purpose: z.ZodMiniString<string>;
547
+ country: z.ZodMiniOptional<z.ZodMiniString<string>>;
548
+ storage: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
549
+ country: z.ZodMiniString<string>;
550
+ scope: z.ZodMiniOptional<z.ZodMiniString<string>>;
551
+ }, z.core.$strict>>>;
552
+ operatorCountry: z.ZodMiniOptional<z.ZodMiniString<string>>;
553
+ privacyUrl: z.ZodMiniOptional<z.ZodMiniURL>;
554
+ }, z.core.$strict>>>;
555
+ }, z.core.$strict>>;
556
+ termsOfService: z.ZodMiniOptional<z.ZodMiniObject<{
557
+ enabled: z.ZodMiniBoolean<boolean>;
558
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
559
+ lastUpdated: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
560
+ governingLaw: z.ZodMiniOptional<z.ZodMiniString<string>>;
561
+ }, z.core.$strict>>;
562
+ cookieConsent: z.ZodMiniOptional<z.ZodMiniObject<{
563
+ enabled: z.ZodMiniBoolean<boolean>;
564
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
565
+ "opt-in": "opt-in";
566
+ "opt-out": "opt-out";
567
+ }>>;
568
+ position: z.ZodMiniOptional<z.ZodMiniEnum<{
569
+ top: "top";
570
+ bottom: "bottom";
571
+ center: "center";
572
+ }>>;
573
+ categories: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
574
+ }, z.core.$strict>>;
575
+ }, z.core.$strict>>;
576
+ icons: z.ZodMiniOptional<z.ZodMiniObject<{
577
+ ui: z.ZodMiniOptional<z.ZodMiniString<string>>;
578
+ brand: z.ZodMiniOptional<z.ZodMiniString<string>>;
579
+ weight: z.ZodMiniOptional<z.ZodMiniString<string>>;
580
+ sprite: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
581
+ semantic: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
582
+ 'fa7-solid': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
583
+ 'fa7-regular': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
584
+ 'fa7-light': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
585
+ 'fa7-thin': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
586
+ 'fa7-brands': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
587
+ 'simple-icons': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
588
+ 'material-symbols': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
589
+ lucide: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
590
+ ph: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
591
+ }, z.core.$loose>>;
592
+ favicon: z.ZodMiniOptional<z.ZodMiniObject<{
593
+ source: z.ZodMiniString<string>;
594
+ lowResSource: z.ZodMiniOptional<z.ZodMiniString<string>>;
595
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
596
+ themeColor: z.ZodMiniOptional<z.ZodMiniString<string>>;
597
+ backgroundColor: z.ZodMiniOptional<z.ZodMiniString<string>>;
598
+ }, z.core.$strict>>;
599
+ deployment: z.ZodMiniOptional<z.ZodMiniObject<{
600
+ platform: z.ZodMiniOptional<z.ZodMiniString<string>>;
601
+ buildCommand: z.ZodMiniOptional<z.ZodMiniString<string>>;
602
+ deployCommand: z.ZodMiniOptional<z.ZodMiniString<string>>;
603
+ outputDirectory: z.ZodMiniOptional<z.ZodMiniString<string>>;
604
+ type: z.ZodMiniOptional<z.ZodMiniString<string>>;
605
+ repo: z.ZodMiniOptional<z.ZodMiniString<string>>;
606
+ branch: z.ZodMiniOptional<z.ZodMiniString<string>>;
607
+ }, z.core.$strict>>;
608
+ }, z.core.$strict>;
609
+ declare const OrganizationSectionSchema: z.ZodMiniObject<{
610
+ name: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
611
+ legalName: z.ZodMiniOptional<z.ZodMiniString<string>>;
612
+ foundingDate: z.ZodMiniOptional<z.ZodMiniString<string>>;
613
+ logo: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
614
+ src: z.ZodMiniString<string>;
615
+ alt: z.ZodMiniString<string>;
616
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
617
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
618
+ }, z.core.$strict>]>>;
619
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
620
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
621
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
622
+ streetAddress: z.ZodMiniString<string>;
623
+ addressLocality: z.ZodMiniString<string>;
624
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
625
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
626
+ addressCountry: z.ZodMiniString<string>;
627
+ }, z.core.$strict>>;
628
+ taxID: z.ZodMiniOptional<z.ZodMiniString<string>>;
629
+ vatID: z.ZodMiniOptional<z.ZodMiniString<string>>;
630
+ sameAs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
631
+ contact: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
632
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
633
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
634
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
635
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
636
+ streetAddress: z.ZodMiniString<string>;
637
+ addressLocality: z.ZodMiniString<string>;
638
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
639
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
640
+ addressCountry: z.ZodMiniString<string>;
641
+ }, z.core.$strict>>;
642
+ }, z.core.$strict>]>>;
643
+ primaryLocation: z.ZodMiniOptional<z.ZodMiniString<string>>;
644
+ locations: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
645
+ slug: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
646
+ name: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
647
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
648
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
649
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
650
+ streetAddress: z.ZodMiniString<string>;
651
+ addressLocality: z.ZodMiniString<string>;
652
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
653
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
654
+ addressCountry: z.ZodMiniString<string>;
655
+ }, z.core.$strict>>;
656
+ geo: z.ZodMiniOptional<z.ZodMiniObject<{
657
+ latitude: z.ZodMiniNumber<number>;
658
+ longitude: z.ZodMiniNumber<number>;
659
+ }, z.core.$strict>>;
660
+ hours: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
661
+ dayOfWeek: z.ZodMiniArray<z.ZodMiniEnum<{
662
+ Monday: "Monday";
663
+ Tuesday: "Tuesday";
664
+ Wednesday: "Wednesday";
665
+ Thursday: "Thursday";
666
+ Friday: "Friday";
667
+ Saturday: "Saturday";
668
+ Sunday: "Sunday";
669
+ }>>;
670
+ opens: z.ZodMiniString<string>;
671
+ closes: z.ZodMiniString<string>;
672
+ }, z.core.$strict>>>;
673
+ hoursSpecial: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
674
+ validFrom: z.ZodMiniString<string>;
675
+ validThrough: z.ZodMiniOptional<z.ZodMiniString<string>>;
676
+ opens: z.ZodMiniOptional<z.ZodMiniString<string>>;
677
+ closes: z.ZodMiniOptional<z.ZodMiniString<string>>;
678
+ }, z.core.$strict>>>;
679
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
680
+ LocalBusiness: "LocalBusiness";
681
+ Store: "Store";
682
+ Restaurant: "Restaurant";
683
+ CafeOrCoffeeShop: "CafeOrCoffeeShop";
684
+ ProfessionalService: "ProfessionalService";
685
+ MedicalBusiness: "MedicalBusiness";
686
+ HealthAndBeautyBusiness: "HealthAndBeautyBusiness";
687
+ HomeAndConstructionBusiness: "HomeAndConstructionBusiness";
688
+ AutomotiveBusiness: "AutomotiveBusiness";
689
+ FinancialService: "FinancialService";
690
+ LegalService: "LegalService";
691
+ RealEstateAgent: "RealEstateAgent";
692
+ Organization: "Organization";
693
+ }>>;
694
+ description: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
695
+ areaServed: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
696
+ priceRange: z.ZodMiniOptional<z.ZodMiniString<string>>;
697
+ paymentAccepted: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
698
+ currenciesAccepted: z.ZodMiniOptional<z.ZodMiniString<string>>;
699
+ knowsLanguage: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
700
+ photos: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
701
+ src: z.ZodMiniString<string>;
702
+ alt: z.ZodMiniString<string>;
703
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
704
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
705
+ }, z.core.$strict>]>>>;
706
+ sameAs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
707
+ listings: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniEnum<{
708
+ google: "google";
709
+ bing: "bing";
710
+ apple: "apple";
711
+ }> & z.core.$partial, z.ZodMiniString<string>>>;
712
+ }, z.core.$strict>>>;
713
+ services: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
714
+ name: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
715
+ description: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
716
+ slug: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
717
+ offers: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
718
+ name: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
719
+ price: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
720
+ priceCurrency: z.ZodMiniOptional<z.ZodMiniString<string>>;
721
+ availability: z.ZodMiniOptional<z.ZodMiniString<string>>;
722
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
723
+ validFrom: z.ZodMiniOptional<z.ZodMiniString<string>>;
724
+ priceValidUntil: z.ZodMiniOptional<z.ZodMiniString<string>>;
725
+ }, z.core.$strict>>>;
726
+ }, z.core.$strict>>>;
727
+ links: z.ZodMiniOptional<z.ZodMiniObject<{
728
+ googleMaps: z.ZodMiniOptional<z.ZodMiniURL>;
729
+ instagram: z.ZodMiniOptional<z.ZodMiniURL>;
730
+ facebook: z.ZodMiniOptional<z.ZodMiniURL>;
731
+ x: z.ZodMiniOptional<z.ZodMiniURL>;
732
+ linkedin: z.ZodMiniOptional<z.ZodMiniURL>;
733
+ youtube: z.ZodMiniOptional<z.ZodMiniURL>;
734
+ github: z.ZodMiniOptional<z.ZodMiniURL>;
735
+ }, z.core.$strict>>;
736
+ }, z.core.$strict>;
737
+ /**
738
+ * The `Config` document's own SHAPE version — distinct from `@getvitops/generator`'s
739
+ * package version, which is CSS-release-driven (bumps on every design-system/CSS
740
+ * change) and says nothing about whether `Config`'s shape moved. Bump this constant,
741
+ * and add a new literal to `configVersion`'s union below, only when a future shape
742
+ * change is disruptive enough to warrant a migration note — the same bar the
743
+ * pre-3.0 flat-config migration (`MOVED_KEYS`) already set, now with a real field
744
+ * to check instead of pattern-matching which keys are present after the fact.
745
+ * Most releases add optional fields and need no bump at all.
746
+ */
747
+ export declare const CONFIG_VERSION = 1;
748
+ export declare const ConfigSchema: z.ZodMiniObject<{
749
+ $schema: z.ZodMiniOptional<z.ZodMiniString<string>>;
750
+ configVersion: z.ZodMiniOptional<z.ZodMiniLiteral<1>>;
751
+ designSystem: z.ZodMiniObject<{
752
+ themes: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
753
+ $schema: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniString<string>>>;
754
+ meta: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
755
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
756
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
757
+ }, z.core.$strict>>>;
758
+ shadows: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>>;
759
+ fonts: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>>;
760
+ typeScale: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
761
+ base: z.ZodMiniString<string>;
762
+ ratio: z.ZodMiniNumber<number>;
763
+ steps: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
764
+ names: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
765
+ baseStep: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
766
+ baseline: z.ZodMiniOptional<z.ZodMiniString<string>>;
767
+ fluid: z.ZodMiniOptional<z.ZodMiniObject<{
768
+ minVw: z.ZodMiniString<string>;
769
+ maxVw: z.ZodMiniString<string>;
770
+ minRatio: z.ZodMiniNumber<number>;
771
+ }, z.core.$strict>>;
772
+ }, z.core.$strict>>>;
773
+ spaceScale: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
774
+ base: z.ZodMiniString<string>;
775
+ ratio: z.ZodMiniNumber<number>;
776
+ steps: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
777
+ names: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
778
+ baseStep: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
779
+ baseline: z.ZodMiniOptional<z.ZodMiniString<string>>;
780
+ fluid: z.ZodMiniOptional<z.ZodMiniObject<{
781
+ minVw: z.ZodMiniString<string>;
782
+ maxVw: z.ZodMiniString<string>;
783
+ minRatio: z.ZodMiniNumber<number>;
784
+ }, z.core.$strict>>;
785
+ }, z.core.$strict>>>;
786
+ patterns: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
787
+ defaults: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
788
+ radii: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
789
+ groups: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>>;
790
+ z: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNumber<number>>>;
791
+ items: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
792
+ group: z.ZodMiniOptional<z.ZodMiniString<string>>;
793
+ overrides: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
794
+ element: z.ZodMiniOptional<z.ZodMiniString<string>>;
795
+ class: z.ZodMiniOptional<z.ZodMiniString<string>>;
796
+ fill: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
797
+ default_role: z.ZodMiniOptional<z.ZodMiniString<string>>;
798
+ base: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
799
+ states: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>>;
800
+ roles: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
801
+ }, z.core.$strict>>>;
802
+ }, z.core.$strict>>>;
803
+ typography: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
804
+ families: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
805
+ roles: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>>;
806
+ headings: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
807
+ }, z.core.$strict>>>;
808
+ animations: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
809
+ effects: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
810
+ kf: z.ZodMiniString<string>;
811
+ css: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>;
812
+ vars: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>;
813
+ }, z.core.$strict>>>;
814
+ journeys: z.ZodMiniOptional<z.ZodMiniObject<{
815
+ base: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>>;
816
+ compose: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniArray<z.ZodMiniString<string>>>>;
817
+ }, z.core.$strict>>;
818
+ }, z.core.$strict>>>;
819
+ colors: z.ZodMiniOptional<z.ZodMiniObject<{
820
+ palette: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
821
+ seed: z.ZodMiniString<string>;
822
+ anchors: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
823
+ }, z.core.$strict>, z.ZodMiniObject<{
824
+ tones: z.ZodMiniUnion<readonly [z.ZodMiniArray<z.ZodMiniString<string>>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
825
+ }, z.core.$strict>]>>>;
826
+ roles: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
827
+ hue: z.ZodMiniString<string>;
828
+ kind: z.ZodMiniOptional<z.ZodMiniEnum<{
829
+ surface: "surface";
830
+ chromatic: "chromatic";
831
+ }>>;
832
+ }, z.core.$strict>]>>>;
833
+ utilities: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
834
+ fill: "fill";
835
+ bg: "bg";
836
+ text: "text";
837
+ icon: "icon";
838
+ border: "border";
839
+ outline: "outline";
840
+ stroke: "stroke";
841
+ }>>>;
842
+ }, z.core.$strict>>;
843
+ displayName: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
844
+ extends: z.ZodMiniOptional<z.ZodMiniString<string>>;
845
+ }, z.core.$strict>>;
846
+ defaultTheme: z.ZodMiniOptional<z.ZodMiniString<string>>;
847
+ defaultColorScheme: z.ZodMiniOptional<z.ZodMiniEnum<{
848
+ light: "light";
849
+ dark: "dark";
850
+ system: "system";
851
+ }>>;
852
+ }, z.core.$strict>;
853
+ organization: z.ZodMiniOptional<z.ZodMiniObject<{
854
+ name: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
855
+ legalName: z.ZodMiniOptional<z.ZodMiniString<string>>;
856
+ foundingDate: z.ZodMiniOptional<z.ZodMiniString<string>>;
857
+ logo: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
858
+ src: z.ZodMiniString<string>;
859
+ alt: z.ZodMiniString<string>;
860
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
861
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
862
+ }, z.core.$strict>]>>;
863
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
864
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
865
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
866
+ streetAddress: z.ZodMiniString<string>;
867
+ addressLocality: z.ZodMiniString<string>;
868
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
869
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
870
+ addressCountry: z.ZodMiniString<string>;
871
+ }, z.core.$strict>>;
872
+ taxID: z.ZodMiniOptional<z.ZodMiniString<string>>;
873
+ vatID: z.ZodMiniOptional<z.ZodMiniString<string>>;
874
+ sameAs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
875
+ contact: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
876
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
877
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
878
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
879
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
880
+ streetAddress: z.ZodMiniString<string>;
881
+ addressLocality: z.ZodMiniString<string>;
882
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
883
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
884
+ addressCountry: z.ZodMiniString<string>;
885
+ }, z.core.$strict>>;
886
+ }, z.core.$strict>]>>;
887
+ primaryLocation: z.ZodMiniOptional<z.ZodMiniString<string>>;
888
+ locations: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
889
+ slug: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
890
+ name: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
891
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
892
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
893
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
894
+ streetAddress: z.ZodMiniString<string>;
895
+ addressLocality: z.ZodMiniString<string>;
896
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
897
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
898
+ addressCountry: z.ZodMiniString<string>;
899
+ }, z.core.$strict>>;
900
+ geo: z.ZodMiniOptional<z.ZodMiniObject<{
901
+ latitude: z.ZodMiniNumber<number>;
902
+ longitude: z.ZodMiniNumber<number>;
903
+ }, z.core.$strict>>;
904
+ hours: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
905
+ dayOfWeek: z.ZodMiniArray<z.ZodMiniEnum<{
906
+ Monday: "Monday";
907
+ Tuesday: "Tuesday";
908
+ Wednesday: "Wednesday";
909
+ Thursday: "Thursday";
910
+ Friday: "Friday";
911
+ Saturday: "Saturday";
912
+ Sunday: "Sunday";
913
+ }>>;
914
+ opens: z.ZodMiniString<string>;
915
+ closes: z.ZodMiniString<string>;
916
+ }, z.core.$strict>>>;
917
+ hoursSpecial: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
918
+ validFrom: z.ZodMiniString<string>;
919
+ validThrough: z.ZodMiniOptional<z.ZodMiniString<string>>;
920
+ opens: z.ZodMiniOptional<z.ZodMiniString<string>>;
921
+ closes: z.ZodMiniOptional<z.ZodMiniString<string>>;
922
+ }, z.core.$strict>>>;
923
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
924
+ LocalBusiness: "LocalBusiness";
925
+ Store: "Store";
926
+ Restaurant: "Restaurant";
927
+ CafeOrCoffeeShop: "CafeOrCoffeeShop";
928
+ ProfessionalService: "ProfessionalService";
929
+ MedicalBusiness: "MedicalBusiness";
930
+ HealthAndBeautyBusiness: "HealthAndBeautyBusiness";
931
+ HomeAndConstructionBusiness: "HomeAndConstructionBusiness";
932
+ AutomotiveBusiness: "AutomotiveBusiness";
933
+ FinancialService: "FinancialService";
934
+ LegalService: "LegalService";
935
+ RealEstateAgent: "RealEstateAgent";
936
+ Organization: "Organization";
937
+ }>>;
938
+ description: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
939
+ areaServed: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
940
+ priceRange: z.ZodMiniOptional<z.ZodMiniString<string>>;
941
+ paymentAccepted: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
942
+ currenciesAccepted: z.ZodMiniOptional<z.ZodMiniString<string>>;
943
+ knowsLanguage: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
944
+ photos: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
945
+ src: z.ZodMiniString<string>;
946
+ alt: z.ZodMiniString<string>;
947
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
948
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
949
+ }, z.core.$strict>]>>>;
950
+ sameAs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
951
+ listings: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniEnum<{
952
+ google: "google";
953
+ bing: "bing";
954
+ apple: "apple";
955
+ }> & z.core.$partial, z.ZodMiniString<string>>>;
956
+ }, z.core.$strict>>>;
957
+ services: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
958
+ name: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
959
+ description: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
960
+ slug: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
961
+ offers: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
962
+ name: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
963
+ price: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
964
+ priceCurrency: z.ZodMiniOptional<z.ZodMiniString<string>>;
965
+ availability: z.ZodMiniOptional<z.ZodMiniString<string>>;
966
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
967
+ validFrom: z.ZodMiniOptional<z.ZodMiniString<string>>;
968
+ priceValidUntil: z.ZodMiniOptional<z.ZodMiniString<string>>;
969
+ }, z.core.$strict>>>;
970
+ }, z.core.$strict>>>;
971
+ links: z.ZodMiniOptional<z.ZodMiniObject<{
972
+ googleMaps: z.ZodMiniOptional<z.ZodMiniURL>;
973
+ instagram: z.ZodMiniOptional<z.ZodMiniURL>;
974
+ facebook: z.ZodMiniOptional<z.ZodMiniURL>;
975
+ x: z.ZodMiniOptional<z.ZodMiniURL>;
976
+ linkedin: z.ZodMiniOptional<z.ZodMiniURL>;
977
+ youtube: z.ZodMiniOptional<z.ZodMiniURL>;
978
+ github: z.ZodMiniOptional<z.ZodMiniURL>;
979
+ }, z.core.$strict>>;
980
+ }, z.core.$strict>>;
981
+ site: z.ZodMiniObject<{
982
+ defaultLocale: z.ZodMiniString<string>;
983
+ locales: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
984
+ name: z.ZodMiniString<string>;
985
+ tagline: z.ZodMiniOptional<z.ZodMiniString<string>>;
986
+ basePath: z.ZodMiniOptional<z.ZodMiniString<string>>;
987
+ }, z.core.$strict>>;
988
+ domains: z.ZodMiniOptional<z.ZodMiniObject<{
989
+ canonical: z.ZodMiniURL;
990
+ aliases: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
991
+ domain: z.ZodMiniString<string>;
992
+ redirectType: z.ZodMiniUnion<readonly [z.ZodMiniLiteral<301>, z.ZodMiniLiteral<302>, z.ZodMiniLiteral<307>, z.ZodMiniLiteral<308>]>;
993
+ redirectTo: z.ZodMiniString<string>;
994
+ environment: z.ZodMiniOptional<z.ZodMiniString<string>>;
995
+ }, z.core.$strict>>>;
996
+ }, z.core.$strict>>;
997
+ dns: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
998
+ provider: z.ZodMiniOptional<z.ZodMiniString<string>>;
999
+ nameservers: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1000
+ records: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1001
+ type: z.ZodMiniEnum<{
1002
+ A: "A";
1003
+ AAAA: "AAAA";
1004
+ CNAME: "CNAME";
1005
+ TXT: "TXT";
1006
+ MX: "MX";
1007
+ NS: "NS";
1008
+ SRV: "SRV";
1009
+ CAA: "CAA";
1010
+ PTR: "PTR";
1011
+ SOA: "SOA";
1012
+ }>;
1013
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1014
+ value: z.ZodMiniString<string>;
1015
+ ttl: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1016
+ proxied: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1017
+ }, z.core.$strict>>>;
1018
+ }, z.core.$strict>>>;
1019
+ cloudflare: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1020
+ google: z.ZodMiniOptional<z.ZodMiniObject<{
1021
+ project: z.ZodMiniString<string>;
1022
+ }, z.core.$strict>>;
1023
+ searchConsole: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1024
+ delegatedOwners: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEmail>>;
1025
+ fullUserGroup: z.ZodMiniOptional<z.ZodMiniEmail>;
1026
+ }, z.core.$strict>>>;
1027
+ environments: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1028
+ url: z.ZodMiniURL;
1029
+ api: z.ZodMiniOptional<z.ZodMiniURL>;
1030
+ analytics: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1031
+ ads: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1032
+ robots: z.ZodMiniOptional<z.ZodMiniString<string>>;
1033
+ variant: z.ZodMiniOptional<z.ZodMiniString<string>>;
1034
+ }, z.core.$strict>>;
1035
+ plan: z.ZodMiniOptional<z.ZodMiniObject<{
1036
+ key: z.ZodMiniString<string>;
1037
+ addons: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1038
+ }, z.core.$strict>>;
1039
+ abTesting: z.ZodMiniOptional<z.ZodMiniObject<{
1040
+ enabled: z.ZodMiniBoolean<boolean>;
1041
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1042
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1043
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1044
+ variants: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1045
+ environment: z.ZodMiniString<string>;
1046
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1047
+ overrides: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1048
+ }, z.core.$strict>>>;
1049
+ }, z.core.$strict>>;
1050
+ experiments: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1051
+ enabled: z.ZodMiniBoolean<boolean>;
1052
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
1053
+ analytics: "analytics";
1054
+ marketing: "marketing";
1055
+ }>>;
1056
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1057
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1058
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1059
+ variants: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>], null>;
1060
+ }, z.core.$strict>>>;
1061
+ fonts: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1062
+ name: z.ZodMiniString<string>;
1063
+ provider: z.ZodMiniEnum<{
1064
+ google: "google";
1065
+ fontsource: "fontsource";
1066
+ adobe: "adobe";
1067
+ bunny: "bunny";
1068
+ fontshare: "fontshare";
1069
+ googleicons: "googleicons";
1070
+ npm: "npm";
1071
+ local: "local";
1072
+ }>;
1073
+ cssVariable: z.ZodMiniString<string>;
1074
+ weights: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>>;
1075
+ styles: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
1076
+ normal: "normal";
1077
+ italic: "italic";
1078
+ }>>>;
1079
+ subsets: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1080
+ fallbacks: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1081
+ optimizedFallbacks: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1082
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
1083
+ optional: "optional";
1084
+ auto: "auto";
1085
+ block: "block";
1086
+ swap: "swap";
1087
+ fallback: "fallback";
1088
+ }>>;
1089
+ formats: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1090
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1091
+ variants: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1092
+ src: z.ZodMiniArray<z.ZodMiniString<string>>;
1093
+ weight: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>;
1094
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
1095
+ normal: "normal";
1096
+ italic: "italic";
1097
+ }>>;
1098
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1099
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
1100
+ optional: "optional";
1101
+ auto: "auto";
1102
+ block: "block";
1103
+ swap: "swap";
1104
+ fallback: "fallback";
1105
+ }>>;
1106
+ }, z.core.$strict>>>;
1107
+ preload: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniArray<z.ZodMiniObject<{
1108
+ weight: z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>;
1109
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
1110
+ normal: "normal";
1111
+ italic: "italic";
1112
+ }>>;
1113
+ }, z.core.$strict>>]>>;
1114
+ }, z.core.$strict>>>;
1115
+ tags: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1116
+ postTypes: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1117
+ galleries: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1118
+ title: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1119
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1120
+ images: z.ZodMiniArray<z.ZodMiniObject<{
1121
+ src: z.ZodMiniString<string>;
1122
+ alt: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1123
+ caption: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1124
+ }, z.core.$strict>>;
1125
+ }, z.core.$strict>>>;
1126
+ testimonials: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1127
+ title: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1128
+ items: z.ZodMiniArray<z.ZodMiniObject<{
1129
+ quote: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1130
+ name: z.ZodMiniString<string>;
1131
+ role: z.ZodMiniOptional<z.ZodMiniString<string>>;
1132
+ rating: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1133
+ date: z.ZodMiniOptional<z.ZodMiniString<string>>;
1134
+ }, z.core.$strict>>;
1135
+ }, z.core.$strict>>>;
1136
+ templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1137
+ type: z.ZodMiniLiteral<"nav">;
1138
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1139
+ present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1140
+ items: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1141
+ }, z.core.$strict>, z.ZodMiniObject<{
1142
+ type: z.ZodMiniLiteral<"form">;
1143
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1144
+ present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1145
+ action: z.ZodMiniOptional<z.ZodMiniString<string>>;
1146
+ method: z.ZodMiniOptional<z.ZodMiniEnum<{
1147
+ get: "get";
1148
+ post: "post";
1149
+ }>>;
1150
+ fields: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1151
+ name: z.ZodMiniString<string>;
1152
+ type: z.ZodMiniEnum<{
1153
+ number: "number";
1154
+ date: "date";
1155
+ file: "file";
1156
+ text: "text";
1157
+ email: "email";
1158
+ url: "url";
1159
+ tel: "tel";
1160
+ password: "password";
1161
+ textarea: "textarea";
1162
+ select: "select";
1163
+ checkbox: "checkbox";
1164
+ radio: "radio";
1165
+ hidden: "hidden";
1166
+ }>;
1167
+ label: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1168
+ required: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1169
+ validation: z.ZodMiniOptional<z.ZodMiniString<string>>;
1170
+ options: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniObject<{
1171
+ label: z.ZodMiniString<string>;
1172
+ value: z.ZodMiniString<string>;
1173
+ }, z.core.$strict>>]>>;
1174
+ attrs: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>, z.ZodMiniBoolean<boolean>]>>>;
1175
+ }, z.core.$strict>>>;
1176
+ submit: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>, z.ZodMiniBoolean<boolean>]>>>;
1177
+ honeypot: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1178
+ }, z.core.$strict>, z.ZodMiniObject<{
1179
+ type: z.ZodMiniLiteral<"nodes">;
1180
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1181
+ nodes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1182
+ }, z.core.$strict>]>>>;
1183
+ navigation: z.ZodMiniOptional<z.ZodMiniObject<{
1184
+ activeTemplate: z.ZodMiniOptional<z.ZodMiniObject<{
1185
+ default: z.ZodMiniOptional<z.ZodMiniString<string>>;
1186
+ breakpoints: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1187
+ }, z.core.$strict>>;
1188
+ }, z.core.$strict>>;
1189
+ seo: z.ZodMiniOptional<z.ZodMiniObject<{
1190
+ siteName: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1191
+ titleTemplate: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1192
+ defaultTitle: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1193
+ defaultDescription: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1194
+ robots: z.ZodMiniOptional<z.ZodMiniString<string>>;
1195
+ googleSiteVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
1196
+ bingSiteVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
1197
+ openGraph: z.ZodMiniOptional<z.ZodMiniObject<{
1198
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
1199
+ website: "website";
1200
+ article: "article";
1201
+ profile: "profile";
1202
+ }>>;
1203
+ locale: z.ZodMiniOptional<z.ZodMiniString<string>>;
1204
+ localeAlternates: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1205
+ image: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1206
+ src: z.ZodMiniString<string>;
1207
+ alt: z.ZodMiniOptional<z.ZodMiniString<string>>;
1208
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1209
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1210
+ type: z.ZodMiniOptional<z.ZodMiniString<string>>;
1211
+ }, z.core.$strict>]>>;
1212
+ }, z.core.$strict>>;
1213
+ twitter: z.ZodMiniOptional<z.ZodMiniObject<{
1214
+ card: z.ZodMiniOptional<z.ZodMiniEnum<{
1215
+ summary: "summary";
1216
+ summary_large_image: "summary_large_image";
1217
+ app: "app";
1218
+ player: "player";
1219
+ }>>;
1220
+ site: z.ZodMiniOptional<z.ZodMiniString<string>>;
1221
+ creator: z.ZodMiniOptional<z.ZodMiniString<string>>;
1222
+ }, z.core.$strict>>;
1223
+ indexing: z.ZodMiniOptional<z.ZodMiniObject<{
1224
+ sitemapUrl: z.ZodMiniOptional<z.ZodMiniURL>;
1225
+ indexNow: z.ZodMiniOptional<z.ZodMiniObject<{
1226
+ key: z.ZodMiniString<string>;
1227
+ keyLocation: z.ZodMiniOptional<z.ZodMiniURL>;
1228
+ endpoint: z.ZodMiniOptional<z.ZodMiniURL>;
1229
+ }, z.core.$strict>>;
1230
+ searchConsole: z.ZodMiniOptional<z.ZodMiniObject<{
1231
+ siteUrl: z.ZodMiniString<string>;
1232
+ resubmitSitemap: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1233
+ }, z.core.$strict>>;
1234
+ priorityUrls: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
1235
+ }, z.core.$strict>>;
1236
+ }, z.core.$strict>>;
1237
+ analytics: z.ZodMiniOptional<z.ZodMiniObject<{
1238
+ googleAnalyticsId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1239
+ plausibleDomain: z.ZodMiniOptional<z.ZodMiniString<string>>;
1240
+ googleTagManagerId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1241
+ clarityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1242
+ matomo: z.ZodMiniOptional<z.ZodMiniObject<{
1243
+ url: z.ZodMiniString<string>;
1244
+ siteId: z.ZodMiniString<string>;
1245
+ cookies: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1246
+ abVariantDimensions: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNumber<number>>>;
1247
+ }, z.core.$strict>>;
1248
+ }, z.core.$strict>>;
1249
+ notifications: z.ZodMiniOptional<z.ZodMiniObject<{
1250
+ email: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniEmail, z.ZodMiniObject<{
1251
+ provider: z.ZodMiniLiteral<"cloudflare">;
1252
+ to: z.ZodMiniOptional<z.ZodMiniEmail>;
1253
+ from: z.ZodMiniOptional<z.ZodMiniEmail>;
1254
+ fromName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1255
+ replyTo: z.ZodMiniOptional<z.ZodMiniEmail>;
1256
+ binding: z.ZodMiniOptional<z.ZodMiniString<string>>;
1257
+ verifySender: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1258
+ }, z.core.$strict>]>>;
1259
+ actionUrl: z.ZodMiniOptional<z.ZodMiniString<string>>;
1260
+ }, z.core.$strict>>;
1261
+ tracking: z.ZodMiniOptional<z.ZodMiniObject<{
1262
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1263
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
1264
+ marketing: "marketing";
1265
+ analytics: "analytics";
1266
+ }>>;
1267
+ platforms: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1268
+ }, z.core.$strict>>;
1269
+ ads: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniEnum<{
1270
+ google: "google";
1271
+ meta: "meta";
1272
+ linkedin: "linkedin";
1273
+ reddit: "reddit";
1274
+ tiktok: "tiktok";
1275
+ microsoft: "microsoft";
1276
+ pinterest: "pinterest";
1277
+ snapchat: "snapchat";
1278
+ }> & z.core.$partial, z.ZodMiniObject<{
1279
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1280
+ pixelId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1281
+ conversionLabel: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1282
+ call: z.ZodMiniOptional<z.ZodMiniString<string>>;
1283
+ email: z.ZodMiniOptional<z.ZodMiniString<string>>;
1284
+ form: z.ZodMiniOptional<z.ZodMiniString<string>>;
1285
+ }, z.core.$strict>]>>;
1286
+ conversionActionId: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1287
+ call: z.ZodMiniOptional<z.ZodMiniString<string>>;
1288
+ email: z.ZodMiniOptional<z.ZodMiniString<string>>;
1289
+ form: z.ZodMiniOptional<z.ZodMiniString<string>>;
1290
+ }, z.core.$strict>]>>;
1291
+ reporting: z.ZodMiniOptional<z.ZodMiniEnum<{
1292
+ client: "client";
1293
+ server: "server";
1294
+ }>>;
1295
+ domain: z.ZodMiniOptional<z.ZodMiniString<string>>;
1296
+ domainVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
1297
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
1298
+ marketing: "marketing";
1299
+ analytics: "analytics";
1300
+ }>>;
1301
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1302
+ }, z.core.$strict>>>;
1303
+ reviews: z.ZodMiniOptional<z.ZodMiniObject<{
1304
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1305
+ locations: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1306
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1307
+ locationId: z.ZodMiniString<string>;
1308
+ featured: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1309
+ minRating: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1310
+ limit: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1311
+ sort: z.ZodMiniOptional<z.ZodMiniEnum<{
1312
+ recent: "recent";
1313
+ rating: "rating";
1314
+ }>>;
1315
+ }, z.core.$strict>>;
1316
+ schema: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1317
+ avatars: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1318
+ }, z.core.$strict>>;
1319
+ crm: z.ZodMiniOptional<z.ZodMiniObject<{
1320
+ provider: z.ZodMiniEnum<{
1321
+ hubspot: "hubspot";
1322
+ bigin: "bigin";
1323
+ jobber: "jobber";
1324
+ }>;
1325
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1326
+ hubspot: z.ZodMiniOptional<z.ZodMiniObject<{
1327
+ portalId: z.ZodMiniString<string>;
1328
+ formGuid: z.ZodMiniString<string>;
1329
+ dataCenter: z.ZodMiniOptional<z.ZodMiniEnum<{
1330
+ eu: "eu";
1331
+ na: "na";
1332
+ }>>;
1333
+ }, z.core.$strict>>;
1334
+ bigin: z.ZodMiniOptional<z.ZodMiniObject<{
1335
+ dataCenter: z.ZodMiniEnum<{
1336
+ com: "com";
1337
+ ca: "ca";
1338
+ eu: "eu";
1339
+ in: "in";
1340
+ "com.au": "com.au";
1341
+ jp: "jp";
1342
+ }>;
1343
+ duplicateCheckField: z.ZodMiniOptional<z.ZodMiniString<string>>;
1344
+ pipeline: z.ZodMiniOptional<z.ZodMiniObject<{
1345
+ enabled: z.ZodMiniBoolean<boolean>;
1346
+ subPipeline: z.ZodMiniOptional<z.ZodMiniString<string>>;
1347
+ stage: z.ZodMiniOptional<z.ZodMiniString<string>>;
1348
+ }, z.core.$strict>>;
1349
+ }, z.core.$strict>>;
1350
+ jobber: z.ZodMiniOptional<z.ZodMiniObject<{
1351
+ apiVersion: z.ZodMiniOptional<z.ZodMiniString<string>>;
1352
+ dedupe: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1353
+ note: z.ZodMiniOptional<z.ZodMiniObject<{
1354
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1355
+ }, z.core.$strict>>;
1356
+ }, z.core.$strict>>;
1357
+ fieldMap: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1358
+ trackingFields: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1359
+ }, z.core.$strict>>;
1360
+ security: z.ZodMiniOptional<z.ZodMiniObject<{
1361
+ turnstile: z.ZodMiniOptional<z.ZodMiniObject<{
1362
+ siteKey: z.ZodMiniOptional<z.ZodMiniString<string>>;
1363
+ }, z.core.$strict>>;
1364
+ }, z.core.$strict>>;
1365
+ legal: z.ZodMiniOptional<z.ZodMiniObject<{
1366
+ jurisdiction: z.ZodMiniOptional<z.ZodMiniEnum<{
1367
+ ca: "ca";
1368
+ }>>;
1369
+ privacyPolicy: z.ZodMiniOptional<z.ZodMiniObject<{
1370
+ enabled: z.ZodMiniBoolean<boolean>;
1371
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
1372
+ lastUpdated: z.ZodMiniOptional<z.ZodMiniString<string>>;
1373
+ privacyOfficer: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1374
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1375
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
1376
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
1377
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
1378
+ streetAddress: z.ZodMiniString<string>;
1379
+ addressLocality: z.ZodMiniString<string>;
1380
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
1381
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
1382
+ addressCountry: z.ZodMiniString<string>;
1383
+ }, z.core.$strict>>;
1384
+ }, z.core.$strict>]>>;
1385
+ retention: z.ZodMiniOptional<z.ZodMiniString<string>>;
1386
+ processors: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1387
+ name: z.ZodMiniString<string>;
1388
+ purpose: z.ZodMiniString<string>;
1389
+ country: z.ZodMiniOptional<z.ZodMiniString<string>>;
1390
+ storage: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1391
+ country: z.ZodMiniString<string>;
1392
+ scope: z.ZodMiniOptional<z.ZodMiniString<string>>;
1393
+ }, z.core.$strict>>>;
1394
+ operatorCountry: z.ZodMiniOptional<z.ZodMiniString<string>>;
1395
+ privacyUrl: z.ZodMiniOptional<z.ZodMiniURL>;
1396
+ }, z.core.$strict>>>;
1397
+ }, z.core.$strict>>;
1398
+ termsOfService: z.ZodMiniOptional<z.ZodMiniObject<{
1399
+ enabled: z.ZodMiniBoolean<boolean>;
1400
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
1401
+ lastUpdated: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
1402
+ governingLaw: z.ZodMiniOptional<z.ZodMiniString<string>>;
1403
+ }, z.core.$strict>>;
1404
+ cookieConsent: z.ZodMiniOptional<z.ZodMiniObject<{
1405
+ enabled: z.ZodMiniBoolean<boolean>;
1406
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
1407
+ "opt-in": "opt-in";
1408
+ "opt-out": "opt-out";
1409
+ }>>;
1410
+ position: z.ZodMiniOptional<z.ZodMiniEnum<{
1411
+ top: "top";
1412
+ bottom: "bottom";
1413
+ center: "center";
1414
+ }>>;
1415
+ categories: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1416
+ }, z.core.$strict>>;
1417
+ }, z.core.$strict>>;
1418
+ icons: z.ZodMiniOptional<z.ZodMiniObject<{
1419
+ ui: z.ZodMiniOptional<z.ZodMiniString<string>>;
1420
+ brand: z.ZodMiniOptional<z.ZodMiniString<string>>;
1421
+ weight: z.ZodMiniOptional<z.ZodMiniString<string>>;
1422
+ sprite: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1423
+ semantic: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1424
+ 'fa7-solid': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1425
+ 'fa7-regular': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1426
+ 'fa7-light': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1427
+ 'fa7-thin': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1428
+ 'fa7-brands': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1429
+ 'simple-icons': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1430
+ 'material-symbols': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1431
+ lucide: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1432
+ ph: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1433
+ }, z.core.$loose>>;
1434
+ favicon: z.ZodMiniOptional<z.ZodMiniObject<{
1435
+ source: z.ZodMiniString<string>;
1436
+ lowResSource: z.ZodMiniOptional<z.ZodMiniString<string>>;
1437
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1438
+ themeColor: z.ZodMiniOptional<z.ZodMiniString<string>>;
1439
+ backgroundColor: z.ZodMiniOptional<z.ZodMiniString<string>>;
1440
+ }, z.core.$strict>>;
1441
+ deployment: z.ZodMiniOptional<z.ZodMiniObject<{
1442
+ platform: z.ZodMiniOptional<z.ZodMiniString<string>>;
1443
+ buildCommand: z.ZodMiniOptional<z.ZodMiniString<string>>;
1444
+ deployCommand: z.ZodMiniOptional<z.ZodMiniString<string>>;
1445
+ outputDirectory: z.ZodMiniOptional<z.ZodMiniString<string>>;
1446
+ type: z.ZodMiniOptional<z.ZodMiniString<string>>;
1447
+ repo: z.ZodMiniOptional<z.ZodMiniString<string>>;
1448
+ branch: z.ZodMiniOptional<z.ZodMiniString<string>>;
1449
+ }, z.core.$strict>>;
1450
+ }, z.core.$strict>;
1451
+ }, z.core.$strict>;
1452
+ export type Config = z.infer<typeof ConfigSchema>;
1453
+ /** The `organization` section — the company, independent of any one site. */
1454
+ export type OrganizationConfig = z.infer<typeof OrganizationSectionSchema>;
1455
+ /** The `site` section — one published presentation of the organization. */
1456
+ export type SiteSection = z.infer<typeof SiteSectionSchema>;
1457
+ /** One `fonts[]` entry — a serialisable projection of an Astro Fonts API family. */
1458
+ export type SiteFont = z.infer<typeof SiteFontSchema>;
1459
+ /** The `seo.indexing` block — what `vitops search notify` reads. */
1460
+ export type SiteIndexing = z.infer<typeof IndexingSchema>;
1461
+ /** IndexNow submission settings. The `key` is public by design. */
1462
+ export type SiteIndexNow = z.infer<typeof IndexNowSchema>;
1463
+ /** Google Search Console property settings. The credential is never in the config. */
1464
+ export type SiteSearchConsole = z.infer<typeof SearchConsoleSchema>;
1465
+ /** One `site.searchConsole` entry — a domain to onboard via `vitops search setup`. */
1466
+ export type SiteSearchConsoleSetup = z.infer<typeof SearchConsoleSetupSchema>;
1467
+ /** One `site.ads` entry — an ad property to link via `vitops ads setup`. */
1468
+ export type SiteAdProperty = z.infer<typeof AdPropertySchema>;
1469
+ /** The `site.reviews` block — what `vitops reviews` reads. */
1470
+ export type SiteReviews = z.infer<typeof ReviewsSchema>;
1471
+ /** One `site.reviews.locations` entry. */
1472
+ export type SiteReviewLocation = z.infer<typeof ReviewLocationSchema>;
1473
+ export type SitePlan = z.infer<typeof PlanSchema>;
1474
+ export type SiteExperiment = z.infer<typeof ExperimentSchema>;
1475
+ export declare const CONFIG_SCHEMA_URL = "https://unpkg.com/@getvitops/generator/config.schema.json";
1476
+ /** The installed copy, not the unpinned unpkg URL — see `SCHEMA_LOCAL_PATH`'s twin. */
1477
+ export declare const CONFIG_SCHEMA_LOCAL_PATH = "./node_modules/@getvitops/generator/config.schema.json";
1478
+ /** The published JSON Schema (draft-2020-12), derived from the zod schema. */
1479
+ export declare const configJsonSchema: {
1480
+ "~standard": z.core.ZodStandardSchemaWithJSON<z.ZodMiniObject<{
1481
+ $schema: z.ZodMiniOptional<z.ZodMiniString<string>>;
1482
+ configVersion: z.ZodMiniOptional<z.ZodMiniLiteral<1>>;
1483
+ designSystem: z.ZodMiniObject<{
1484
+ themes: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1485
+ $schema: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniString<string>>>;
1486
+ meta: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
1487
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1488
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1489
+ }, z.core.$strict>>>;
1490
+ shadows: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>>;
1491
+ fonts: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>>;
1492
+ typeScale: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
1493
+ base: z.ZodMiniString<string>;
1494
+ ratio: z.ZodMiniNumber<number>;
1495
+ steps: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1496
+ names: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1497
+ baseStep: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1498
+ baseline: z.ZodMiniOptional<z.ZodMiniString<string>>;
1499
+ fluid: z.ZodMiniOptional<z.ZodMiniObject<{
1500
+ minVw: z.ZodMiniString<string>;
1501
+ maxVw: z.ZodMiniString<string>;
1502
+ minRatio: z.ZodMiniNumber<number>;
1503
+ }, z.core.$strict>>;
1504
+ }, z.core.$strict>>>;
1505
+ spaceScale: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
1506
+ base: z.ZodMiniString<string>;
1507
+ ratio: z.ZodMiniNumber<number>;
1508
+ steps: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1509
+ names: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1510
+ baseStep: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1511
+ baseline: z.ZodMiniOptional<z.ZodMiniString<string>>;
1512
+ fluid: z.ZodMiniOptional<z.ZodMiniObject<{
1513
+ minVw: z.ZodMiniString<string>;
1514
+ maxVw: z.ZodMiniString<string>;
1515
+ minRatio: z.ZodMiniNumber<number>;
1516
+ }, z.core.$strict>>;
1517
+ }, z.core.$strict>>>;
1518
+ patterns: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
1519
+ defaults: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1520
+ radii: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1521
+ groups: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>>;
1522
+ z: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNumber<number>>>;
1523
+ items: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1524
+ group: z.ZodMiniOptional<z.ZodMiniString<string>>;
1525
+ overrides: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1526
+ element: z.ZodMiniOptional<z.ZodMiniString<string>>;
1527
+ class: z.ZodMiniOptional<z.ZodMiniString<string>>;
1528
+ fill: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1529
+ default_role: z.ZodMiniOptional<z.ZodMiniString<string>>;
1530
+ base: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1531
+ states: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>>;
1532
+ roles: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1533
+ }, z.core.$strict>>>;
1534
+ }, z.core.$strict>>>;
1535
+ typography: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
1536
+ families: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1537
+ roles: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>>;
1538
+ headings: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1539
+ }, z.core.$strict>>>;
1540
+ animations: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
1541
+ effects: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1542
+ kf: z.ZodMiniString<string>;
1543
+ css: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>;
1544
+ vars: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>;
1545
+ }, z.core.$strict>>>;
1546
+ journeys: z.ZodMiniOptional<z.ZodMiniObject<{
1547
+ base: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>>>;
1548
+ compose: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniArray<z.ZodMiniString<string>>>>;
1549
+ }, z.core.$strict>>;
1550
+ }, z.core.$strict>>>;
1551
+ colors: z.ZodMiniOptional<z.ZodMiniObject<{
1552
+ palette: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1553
+ seed: z.ZodMiniString<string>;
1554
+ anchors: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1555
+ }, z.core.$strict>, z.ZodMiniObject<{
1556
+ tones: z.ZodMiniUnion<readonly [z.ZodMiniArray<z.ZodMiniString<string>>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1557
+ }, z.core.$strict>]>>>;
1558
+ roles: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1559
+ hue: z.ZodMiniString<string>;
1560
+ kind: z.ZodMiniOptional<z.ZodMiniEnum<{
1561
+ surface: "surface";
1562
+ chromatic: "chromatic";
1563
+ }>>;
1564
+ }, z.core.$strict>]>>>;
1565
+ utilities: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
1566
+ fill: "fill";
1567
+ bg: "bg";
1568
+ text: "text";
1569
+ icon: "icon";
1570
+ border: "border";
1571
+ outline: "outline";
1572
+ stroke: "stroke";
1573
+ }>>>;
1574
+ }, z.core.$strict>>;
1575
+ displayName: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1576
+ extends: z.ZodMiniOptional<z.ZodMiniString<string>>;
1577
+ }, z.core.$strict>>;
1578
+ defaultTheme: z.ZodMiniOptional<z.ZodMiniString<string>>;
1579
+ defaultColorScheme: z.ZodMiniOptional<z.ZodMiniEnum<{
1580
+ light: "light";
1581
+ dark: "dark";
1582
+ system: "system";
1583
+ }>>;
1584
+ }, z.core.$strict>;
1585
+ organization: z.ZodMiniOptional<z.ZodMiniObject<{
1586
+ name: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1587
+ legalName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1588
+ foundingDate: z.ZodMiniOptional<z.ZodMiniString<string>>;
1589
+ logo: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1590
+ src: z.ZodMiniString<string>;
1591
+ alt: z.ZodMiniString<string>;
1592
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1593
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1594
+ }, z.core.$strict>]>>;
1595
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
1596
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
1597
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
1598
+ streetAddress: z.ZodMiniString<string>;
1599
+ addressLocality: z.ZodMiniString<string>;
1600
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
1601
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
1602
+ addressCountry: z.ZodMiniString<string>;
1603
+ }, z.core.$strict>>;
1604
+ taxID: z.ZodMiniOptional<z.ZodMiniString<string>>;
1605
+ vatID: z.ZodMiniOptional<z.ZodMiniString<string>>;
1606
+ sameAs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
1607
+ contact: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1608
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1609
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
1610
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
1611
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
1612
+ streetAddress: z.ZodMiniString<string>;
1613
+ addressLocality: z.ZodMiniString<string>;
1614
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
1615
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
1616
+ addressCountry: z.ZodMiniString<string>;
1617
+ }, z.core.$strict>>;
1618
+ }, z.core.$strict>]>>;
1619
+ primaryLocation: z.ZodMiniOptional<z.ZodMiniString<string>>;
1620
+ locations: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1621
+ slug: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1622
+ name: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1623
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
1624
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
1625
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
1626
+ streetAddress: z.ZodMiniString<string>;
1627
+ addressLocality: z.ZodMiniString<string>;
1628
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
1629
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
1630
+ addressCountry: z.ZodMiniString<string>;
1631
+ }, z.core.$strict>>;
1632
+ geo: z.ZodMiniOptional<z.ZodMiniObject<{
1633
+ latitude: z.ZodMiniNumber<number>;
1634
+ longitude: z.ZodMiniNumber<number>;
1635
+ }, z.core.$strict>>;
1636
+ hours: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1637
+ dayOfWeek: z.ZodMiniArray<z.ZodMiniEnum<{
1638
+ Monday: "Monday";
1639
+ Tuesday: "Tuesday";
1640
+ Wednesday: "Wednesday";
1641
+ Thursday: "Thursday";
1642
+ Friday: "Friday";
1643
+ Saturday: "Saturday";
1644
+ Sunday: "Sunday";
1645
+ }>>;
1646
+ opens: z.ZodMiniString<string>;
1647
+ closes: z.ZodMiniString<string>;
1648
+ }, z.core.$strict>>>;
1649
+ hoursSpecial: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1650
+ validFrom: z.ZodMiniString<string>;
1651
+ validThrough: z.ZodMiniOptional<z.ZodMiniString<string>>;
1652
+ opens: z.ZodMiniOptional<z.ZodMiniString<string>>;
1653
+ closes: z.ZodMiniOptional<z.ZodMiniString<string>>;
1654
+ }, z.core.$strict>>>;
1655
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
1656
+ LocalBusiness: "LocalBusiness";
1657
+ Store: "Store";
1658
+ Restaurant: "Restaurant";
1659
+ CafeOrCoffeeShop: "CafeOrCoffeeShop";
1660
+ ProfessionalService: "ProfessionalService";
1661
+ MedicalBusiness: "MedicalBusiness";
1662
+ HealthAndBeautyBusiness: "HealthAndBeautyBusiness";
1663
+ HomeAndConstructionBusiness: "HomeAndConstructionBusiness";
1664
+ AutomotiveBusiness: "AutomotiveBusiness";
1665
+ FinancialService: "FinancialService";
1666
+ LegalService: "LegalService";
1667
+ RealEstateAgent: "RealEstateAgent";
1668
+ Organization: "Organization";
1669
+ }>>;
1670
+ description: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1671
+ areaServed: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1672
+ priceRange: z.ZodMiniOptional<z.ZodMiniString<string>>;
1673
+ paymentAccepted: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1674
+ currenciesAccepted: z.ZodMiniOptional<z.ZodMiniString<string>>;
1675
+ knowsLanguage: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1676
+ photos: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1677
+ src: z.ZodMiniString<string>;
1678
+ alt: z.ZodMiniString<string>;
1679
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1680
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1681
+ }, z.core.$strict>]>>>;
1682
+ sameAs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
1683
+ listings: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniEnum<{
1684
+ google: "google";
1685
+ bing: "bing";
1686
+ apple: "apple";
1687
+ }> & z.core.$partial, z.ZodMiniString<string>>>;
1688
+ }, z.core.$strict>>>;
1689
+ services: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1690
+ name: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1691
+ description: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1692
+ slug: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1693
+ offers: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1694
+ name: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1695
+ price: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
1696
+ priceCurrency: z.ZodMiniOptional<z.ZodMiniString<string>>;
1697
+ availability: z.ZodMiniOptional<z.ZodMiniString<string>>;
1698
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
1699
+ validFrom: z.ZodMiniOptional<z.ZodMiniString<string>>;
1700
+ priceValidUntil: z.ZodMiniOptional<z.ZodMiniString<string>>;
1701
+ }, z.core.$strict>>>;
1702
+ }, z.core.$strict>>>;
1703
+ links: z.ZodMiniOptional<z.ZodMiniObject<{
1704
+ googleMaps: z.ZodMiniOptional<z.ZodMiniURL>;
1705
+ instagram: z.ZodMiniOptional<z.ZodMiniURL>;
1706
+ facebook: z.ZodMiniOptional<z.ZodMiniURL>;
1707
+ x: z.ZodMiniOptional<z.ZodMiniURL>;
1708
+ linkedin: z.ZodMiniOptional<z.ZodMiniURL>;
1709
+ youtube: z.ZodMiniOptional<z.ZodMiniURL>;
1710
+ github: z.ZodMiniOptional<z.ZodMiniURL>;
1711
+ }, z.core.$strict>>;
1712
+ }, z.core.$strict>>;
1713
+ site: z.ZodMiniObject<{
1714
+ defaultLocale: z.ZodMiniString<string>;
1715
+ locales: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1716
+ name: z.ZodMiniString<string>;
1717
+ tagline: z.ZodMiniOptional<z.ZodMiniString<string>>;
1718
+ basePath: z.ZodMiniOptional<z.ZodMiniString<string>>;
1719
+ }, z.core.$strict>>;
1720
+ domains: z.ZodMiniOptional<z.ZodMiniObject<{
1721
+ canonical: z.ZodMiniURL;
1722
+ aliases: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1723
+ domain: z.ZodMiniString<string>;
1724
+ redirectType: z.ZodMiniUnion<readonly [z.ZodMiniLiteral<301>, z.ZodMiniLiteral<302>, z.ZodMiniLiteral<307>, z.ZodMiniLiteral<308>]>;
1725
+ redirectTo: z.ZodMiniString<string>;
1726
+ environment: z.ZodMiniOptional<z.ZodMiniString<string>>;
1727
+ }, z.core.$strict>>>;
1728
+ }, z.core.$strict>>;
1729
+ dns: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1730
+ provider: z.ZodMiniOptional<z.ZodMiniString<string>>;
1731
+ nameservers: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1732
+ records: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1733
+ type: z.ZodMiniEnum<{
1734
+ A: "A";
1735
+ AAAA: "AAAA";
1736
+ CNAME: "CNAME";
1737
+ TXT: "TXT";
1738
+ MX: "MX";
1739
+ NS: "NS";
1740
+ SRV: "SRV";
1741
+ CAA: "CAA";
1742
+ PTR: "PTR";
1743
+ SOA: "SOA";
1744
+ }>;
1745
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1746
+ value: z.ZodMiniString<string>;
1747
+ ttl: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1748
+ proxied: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1749
+ }, z.core.$strict>>>;
1750
+ }, z.core.$strict>>>;
1751
+ cloudflare: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1752
+ google: z.ZodMiniOptional<z.ZodMiniObject<{
1753
+ project: z.ZodMiniString<string>;
1754
+ }, z.core.$strict>>;
1755
+ searchConsole: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1756
+ delegatedOwners: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEmail>>;
1757
+ fullUserGroup: z.ZodMiniOptional<z.ZodMiniEmail>;
1758
+ }, z.core.$strict>>>;
1759
+ environments: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1760
+ url: z.ZodMiniURL;
1761
+ api: z.ZodMiniOptional<z.ZodMiniURL>;
1762
+ analytics: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1763
+ ads: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1764
+ robots: z.ZodMiniOptional<z.ZodMiniString<string>>;
1765
+ variant: z.ZodMiniOptional<z.ZodMiniString<string>>;
1766
+ }, z.core.$strict>>;
1767
+ plan: z.ZodMiniOptional<z.ZodMiniObject<{
1768
+ key: z.ZodMiniString<string>;
1769
+ addons: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1770
+ }, z.core.$strict>>;
1771
+ abTesting: z.ZodMiniOptional<z.ZodMiniObject<{
1772
+ enabled: z.ZodMiniBoolean<boolean>;
1773
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1774
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1775
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1776
+ variants: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1777
+ environment: z.ZodMiniString<string>;
1778
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1779
+ overrides: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1780
+ }, z.core.$strict>>>;
1781
+ }, z.core.$strict>>;
1782
+ experiments: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1783
+ enabled: z.ZodMiniBoolean<boolean>;
1784
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
1785
+ analytics: "analytics";
1786
+ marketing: "marketing";
1787
+ }>>;
1788
+ cookieName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1789
+ cookieMaxAge: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1790
+ splitRatio: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1791
+ variants: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>], null>;
1792
+ }, z.core.$strict>>>;
1793
+ fonts: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1794
+ name: z.ZodMiniString<string>;
1795
+ provider: z.ZodMiniEnum<{
1796
+ google: "google";
1797
+ fontsource: "fontsource";
1798
+ adobe: "adobe";
1799
+ bunny: "bunny";
1800
+ fontshare: "fontshare";
1801
+ googleicons: "googleicons";
1802
+ npm: "npm";
1803
+ local: "local";
1804
+ }>;
1805
+ cssVariable: z.ZodMiniString<string>;
1806
+ weights: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>>;
1807
+ styles: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
1808
+ normal: "normal";
1809
+ italic: "italic";
1810
+ }>>>;
1811
+ subsets: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1812
+ fallbacks: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1813
+ optimizedFallbacks: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1814
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
1815
+ optional: "optional";
1816
+ auto: "auto";
1817
+ block: "block";
1818
+ swap: "swap";
1819
+ fallback: "fallback";
1820
+ }>>;
1821
+ formats: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1822
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1823
+ variants: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1824
+ src: z.ZodMiniArray<z.ZodMiniString<string>>;
1825
+ weight: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>>;
1826
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
1827
+ normal: "normal";
1828
+ italic: "italic";
1829
+ }>>;
1830
+ unicodeRange: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1831
+ display: z.ZodMiniOptional<z.ZodMiniEnum<{
1832
+ optional: "optional";
1833
+ auto: "auto";
1834
+ block: "block";
1835
+ swap: "swap";
1836
+ fallback: "fallback";
1837
+ }>>;
1838
+ }, z.core.$strict>>>;
1839
+ preload: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniBoolean<boolean>, z.ZodMiniArray<z.ZodMiniObject<{
1840
+ weight: z.ZodMiniUnion<readonly [z.ZodMiniNumber<number>, z.ZodMiniString<string>]>;
1841
+ style: z.ZodMiniOptional<z.ZodMiniEnum<{
1842
+ normal: "normal";
1843
+ italic: "italic";
1844
+ }>>;
1845
+ }, z.core.$strict>>]>>;
1846
+ }, z.core.$strict>>>;
1847
+ tags: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1848
+ postTypes: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1849
+ galleries: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1850
+ title: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1851
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1852
+ images: z.ZodMiniArray<z.ZodMiniObject<{
1853
+ src: z.ZodMiniString<string>;
1854
+ alt: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1855
+ caption: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1856
+ }, z.core.$strict>>;
1857
+ }, z.core.$strict>>>;
1858
+ testimonials: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
1859
+ title: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1860
+ items: z.ZodMiniArray<z.ZodMiniObject<{
1861
+ quote: z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>;
1862
+ name: z.ZodMiniString<string>;
1863
+ role: z.ZodMiniOptional<z.ZodMiniString<string>>;
1864
+ rating: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1865
+ date: z.ZodMiniOptional<z.ZodMiniString<string>>;
1866
+ }, z.core.$strict>>;
1867
+ }, z.core.$strict>>>;
1868
+ templates: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1869
+ type: z.ZodMiniLiteral<"nav">;
1870
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1871
+ present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1872
+ items: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1873
+ }, z.core.$strict>, z.ZodMiniObject<{
1874
+ type: z.ZodMiniLiteral<"form">;
1875
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1876
+ present: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>;
1877
+ action: z.ZodMiniOptional<z.ZodMiniString<string>>;
1878
+ method: z.ZodMiniOptional<z.ZodMiniEnum<{
1879
+ get: "get";
1880
+ post: "post";
1881
+ }>>;
1882
+ fields: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
1883
+ name: z.ZodMiniString<string>;
1884
+ type: z.ZodMiniEnum<{
1885
+ number: "number";
1886
+ date: "date";
1887
+ file: "file";
1888
+ text: "text";
1889
+ email: "email";
1890
+ url: "url";
1891
+ tel: "tel";
1892
+ password: "password";
1893
+ textarea: "textarea";
1894
+ select: "select";
1895
+ checkbox: "checkbox";
1896
+ radio: "radio";
1897
+ hidden: "hidden";
1898
+ }>;
1899
+ label: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1900
+ required: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1901
+ validation: z.ZodMiniOptional<z.ZodMiniString<string>>;
1902
+ options: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniObject<{
1903
+ label: z.ZodMiniString<string>;
1904
+ value: z.ZodMiniString<string>;
1905
+ }, z.core.$strict>>]>>;
1906
+ attrs: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>, z.ZodMiniBoolean<boolean>]>>>;
1907
+ }, z.core.$strict>>>;
1908
+ submit: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>, z.ZodMiniBoolean<boolean>]>>>;
1909
+ honeypot: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1910
+ }, z.core.$strict>, z.ZodMiniObject<{
1911
+ type: z.ZodMiniLiteral<"nodes">;
1912
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1913
+ nodes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
1914
+ }, z.core.$strict>]>>>;
1915
+ navigation: z.ZodMiniOptional<z.ZodMiniObject<{
1916
+ activeTemplate: z.ZodMiniOptional<z.ZodMiniObject<{
1917
+ default: z.ZodMiniOptional<z.ZodMiniString<string>>;
1918
+ breakpoints: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
1919
+ }, z.core.$strict>>;
1920
+ }, z.core.$strict>>;
1921
+ seo: z.ZodMiniOptional<z.ZodMiniObject<{
1922
+ siteName: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1923
+ titleTemplate: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1924
+ defaultTitle: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1925
+ defaultDescription: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>]>>;
1926
+ robots: z.ZodMiniOptional<z.ZodMiniString<string>>;
1927
+ googleSiteVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
1928
+ bingSiteVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
1929
+ openGraph: z.ZodMiniOptional<z.ZodMiniObject<{
1930
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
1931
+ website: "website";
1932
+ article: "article";
1933
+ profile: "profile";
1934
+ }>>;
1935
+ locale: z.ZodMiniOptional<z.ZodMiniString<string>>;
1936
+ localeAlternates: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1937
+ image: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
1938
+ src: z.ZodMiniString<string>;
1939
+ alt: z.ZodMiniOptional<z.ZodMiniString<string>>;
1940
+ width: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1941
+ height: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1942
+ type: z.ZodMiniOptional<z.ZodMiniString<string>>;
1943
+ }, z.core.$strict>]>>;
1944
+ }, z.core.$strict>>;
1945
+ twitter: z.ZodMiniOptional<z.ZodMiniObject<{
1946
+ card: z.ZodMiniOptional<z.ZodMiniEnum<{
1947
+ summary: "summary";
1948
+ summary_large_image: "summary_large_image";
1949
+ app: "app";
1950
+ player: "player";
1951
+ }>>;
1952
+ site: z.ZodMiniOptional<z.ZodMiniString<string>>;
1953
+ creator: z.ZodMiniOptional<z.ZodMiniString<string>>;
1954
+ }, z.core.$strict>>;
1955
+ indexing: z.ZodMiniOptional<z.ZodMiniObject<{
1956
+ sitemapUrl: z.ZodMiniOptional<z.ZodMiniURL>;
1957
+ indexNow: z.ZodMiniOptional<z.ZodMiniObject<{
1958
+ key: z.ZodMiniString<string>;
1959
+ keyLocation: z.ZodMiniOptional<z.ZodMiniURL>;
1960
+ endpoint: z.ZodMiniOptional<z.ZodMiniURL>;
1961
+ }, z.core.$strict>>;
1962
+ searchConsole: z.ZodMiniOptional<z.ZodMiniObject<{
1963
+ siteUrl: z.ZodMiniString<string>;
1964
+ resubmitSitemap: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1965
+ }, z.core.$strict>>;
1966
+ priorityUrls: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniURL>>;
1967
+ }, z.core.$strict>>;
1968
+ }, z.core.$strict>>;
1969
+ analytics: z.ZodMiniOptional<z.ZodMiniObject<{
1970
+ googleAnalyticsId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1971
+ plausibleDomain: z.ZodMiniOptional<z.ZodMiniString<string>>;
1972
+ googleTagManagerId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1973
+ clarityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1974
+ matomo: z.ZodMiniOptional<z.ZodMiniObject<{
1975
+ url: z.ZodMiniString<string>;
1976
+ siteId: z.ZodMiniString<string>;
1977
+ cookies: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1978
+ abVariantDimensions: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNumber<number>>>;
1979
+ }, z.core.$strict>>;
1980
+ }, z.core.$strict>>;
1981
+ notifications: z.ZodMiniOptional<z.ZodMiniObject<{
1982
+ email: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniEmail, z.ZodMiniObject<{
1983
+ provider: z.ZodMiniLiteral<"cloudflare">;
1984
+ to: z.ZodMiniOptional<z.ZodMiniEmail>;
1985
+ from: z.ZodMiniOptional<z.ZodMiniEmail>;
1986
+ fromName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1987
+ replyTo: z.ZodMiniOptional<z.ZodMiniEmail>;
1988
+ binding: z.ZodMiniOptional<z.ZodMiniString<string>>;
1989
+ verifySender: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1990
+ }, z.core.$strict>]>>;
1991
+ actionUrl: z.ZodMiniOptional<z.ZodMiniString<string>>;
1992
+ }, z.core.$strict>>;
1993
+ tracking: z.ZodMiniOptional<z.ZodMiniObject<{
1994
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1995
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
1996
+ marketing: "marketing";
1997
+ analytics: "analytics";
1998
+ }>>;
1999
+ platforms: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2000
+ }, z.core.$strict>>;
2001
+ ads: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniEnum<{
2002
+ google: "google";
2003
+ meta: "meta";
2004
+ linkedin: "linkedin";
2005
+ reddit: "reddit";
2006
+ tiktok: "tiktok";
2007
+ microsoft: "microsoft";
2008
+ pinterest: "pinterest";
2009
+ snapchat: "snapchat";
2010
+ }> & z.core.$partial, z.ZodMiniObject<{
2011
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2012
+ pixelId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2013
+ conversionLabel: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
2014
+ call: z.ZodMiniOptional<z.ZodMiniString<string>>;
2015
+ email: z.ZodMiniOptional<z.ZodMiniString<string>>;
2016
+ form: z.ZodMiniOptional<z.ZodMiniString<string>>;
2017
+ }, z.core.$strict>]>>;
2018
+ conversionActionId: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
2019
+ call: z.ZodMiniOptional<z.ZodMiniString<string>>;
2020
+ email: z.ZodMiniOptional<z.ZodMiniString<string>>;
2021
+ form: z.ZodMiniOptional<z.ZodMiniString<string>>;
2022
+ }, z.core.$strict>]>>;
2023
+ reporting: z.ZodMiniOptional<z.ZodMiniEnum<{
2024
+ client: "client";
2025
+ server: "server";
2026
+ }>>;
2027
+ domain: z.ZodMiniOptional<z.ZodMiniString<string>>;
2028
+ domainVerification: z.ZodMiniOptional<z.ZodMiniString<string>>;
2029
+ category: z.ZodMiniOptional<z.ZodMiniEnum<{
2030
+ marketing: "marketing";
2031
+ analytics: "analytics";
2032
+ }>>;
2033
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2034
+ }, z.core.$strict>>>;
2035
+ reviews: z.ZodMiniOptional<z.ZodMiniObject<{
2036
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2037
+ locations: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniObject<{
2038
+ accountId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2039
+ locationId: z.ZodMiniString<string>;
2040
+ featured: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2041
+ minRating: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2042
+ limit: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2043
+ sort: z.ZodMiniOptional<z.ZodMiniEnum<{
2044
+ recent: "recent";
2045
+ rating: "rating";
2046
+ }>>;
2047
+ }, z.core.$strict>>;
2048
+ schema: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2049
+ avatars: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2050
+ }, z.core.$strict>>;
2051
+ crm: z.ZodMiniOptional<z.ZodMiniObject<{
2052
+ provider: z.ZodMiniEnum<{
2053
+ hubspot: "hubspot";
2054
+ bigin: "bigin";
2055
+ jobber: "jobber";
2056
+ }>;
2057
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2058
+ hubspot: z.ZodMiniOptional<z.ZodMiniObject<{
2059
+ portalId: z.ZodMiniString<string>;
2060
+ formGuid: z.ZodMiniString<string>;
2061
+ dataCenter: z.ZodMiniOptional<z.ZodMiniEnum<{
2062
+ eu: "eu";
2063
+ na: "na";
2064
+ }>>;
2065
+ }, z.core.$strict>>;
2066
+ bigin: z.ZodMiniOptional<z.ZodMiniObject<{
2067
+ dataCenter: z.ZodMiniEnum<{
2068
+ com: "com";
2069
+ ca: "ca";
2070
+ eu: "eu";
2071
+ in: "in";
2072
+ "com.au": "com.au";
2073
+ jp: "jp";
2074
+ }>;
2075
+ duplicateCheckField: z.ZodMiniOptional<z.ZodMiniString<string>>;
2076
+ pipeline: z.ZodMiniOptional<z.ZodMiniObject<{
2077
+ enabled: z.ZodMiniBoolean<boolean>;
2078
+ subPipeline: z.ZodMiniOptional<z.ZodMiniString<string>>;
2079
+ stage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2080
+ }, z.core.$strict>>;
2081
+ }, z.core.$strict>>;
2082
+ jobber: z.ZodMiniOptional<z.ZodMiniObject<{
2083
+ apiVersion: z.ZodMiniOptional<z.ZodMiniString<string>>;
2084
+ dedupe: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2085
+ note: z.ZodMiniOptional<z.ZodMiniObject<{
2086
+ enabled: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2087
+ }, z.core.$strict>>;
2088
+ }, z.core.$strict>>;
2089
+ fieldMap: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
2090
+ trackingFields: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniString<string>>>;
2091
+ }, z.core.$strict>>;
2092
+ security: z.ZodMiniOptional<z.ZodMiniObject<{
2093
+ turnstile: z.ZodMiniOptional<z.ZodMiniObject<{
2094
+ siteKey: z.ZodMiniOptional<z.ZodMiniString<string>>;
2095
+ }, z.core.$strict>>;
2096
+ }, z.core.$strict>>;
2097
+ legal: z.ZodMiniOptional<z.ZodMiniObject<{
2098
+ jurisdiction: z.ZodMiniOptional<z.ZodMiniEnum<{
2099
+ ca: "ca";
2100
+ }>>;
2101
+ privacyPolicy: z.ZodMiniOptional<z.ZodMiniObject<{
2102
+ enabled: z.ZodMiniBoolean<boolean>;
2103
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
2104
+ lastUpdated: z.ZodMiniOptional<z.ZodMiniString<string>>;
2105
+ privacyOfficer: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniObject<{
2106
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
2107
+ email: z.ZodMiniOptional<z.ZodMiniEmail>;
2108
+ phone: z.ZodMiniOptional<z.ZodMiniString<string>>;
2109
+ address: z.ZodMiniOptional<z.ZodMiniObject<{
2110
+ streetAddress: z.ZodMiniString<string>;
2111
+ addressLocality: z.ZodMiniString<string>;
2112
+ addressRegion: z.ZodMiniOptional<z.ZodMiniString<string>>;
2113
+ postalCode: z.ZodMiniOptional<z.ZodMiniString<string>>;
2114
+ addressCountry: z.ZodMiniString<string>;
2115
+ }, z.core.$strict>>;
2116
+ }, z.core.$strict>]>>;
2117
+ retention: z.ZodMiniOptional<z.ZodMiniString<string>>;
2118
+ processors: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
2119
+ name: z.ZodMiniString<string>;
2120
+ purpose: z.ZodMiniString<string>;
2121
+ country: z.ZodMiniOptional<z.ZodMiniString<string>>;
2122
+ storage: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
2123
+ country: z.ZodMiniString<string>;
2124
+ scope: z.ZodMiniOptional<z.ZodMiniString<string>>;
2125
+ }, z.core.$strict>>>;
2126
+ operatorCountry: z.ZodMiniOptional<z.ZodMiniString<string>>;
2127
+ privacyUrl: z.ZodMiniOptional<z.ZodMiniURL>;
2128
+ }, z.core.$strict>>>;
2129
+ }, z.core.$strict>>;
2130
+ termsOfService: z.ZodMiniOptional<z.ZodMiniObject<{
2131
+ enabled: z.ZodMiniBoolean<boolean>;
2132
+ url: z.ZodMiniOptional<z.ZodMiniURL>;
2133
+ lastUpdated: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2134
+ governingLaw: z.ZodMiniOptional<z.ZodMiniString<string>>;
2135
+ }, z.core.$strict>>;
2136
+ cookieConsent: z.ZodMiniOptional<z.ZodMiniObject<{
2137
+ enabled: z.ZodMiniBoolean<boolean>;
2138
+ type: z.ZodMiniOptional<z.ZodMiniEnum<{
2139
+ "opt-in": "opt-in";
2140
+ "opt-out": "opt-out";
2141
+ }>>;
2142
+ position: z.ZodMiniOptional<z.ZodMiniEnum<{
2143
+ top: "top";
2144
+ bottom: "bottom";
2145
+ center: "center";
2146
+ }>>;
2147
+ categories: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2148
+ }, z.core.$strict>>;
2149
+ }, z.core.$strict>>;
2150
+ icons: z.ZodMiniOptional<z.ZodMiniObject<{
2151
+ ui: z.ZodMiniOptional<z.ZodMiniString<string>>;
2152
+ brand: z.ZodMiniOptional<z.ZodMiniString<string>>;
2153
+ weight: z.ZodMiniOptional<z.ZodMiniString<string>>;
2154
+ sprite: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2155
+ semantic: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2156
+ 'fa7-solid': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2157
+ 'fa7-regular': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2158
+ 'fa7-light': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2159
+ 'fa7-thin': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2160
+ 'fa7-brands': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2161
+ 'simple-icons': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2162
+ 'material-symbols': z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2163
+ lucide: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2164
+ ph: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2165
+ }, z.core.$loose>>;
2166
+ favicon: z.ZodMiniOptional<z.ZodMiniObject<{
2167
+ source: z.ZodMiniString<string>;
2168
+ lowResSource: z.ZodMiniOptional<z.ZodMiniString<string>>;
2169
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
2170
+ themeColor: z.ZodMiniOptional<z.ZodMiniString<string>>;
2171
+ backgroundColor: z.ZodMiniOptional<z.ZodMiniString<string>>;
2172
+ }, z.core.$strict>>;
2173
+ deployment: z.ZodMiniOptional<z.ZodMiniObject<{
2174
+ platform: z.ZodMiniOptional<z.ZodMiniString<string>>;
2175
+ buildCommand: z.ZodMiniOptional<z.ZodMiniString<string>>;
2176
+ deployCommand: z.ZodMiniOptional<z.ZodMiniString<string>>;
2177
+ outputDirectory: z.ZodMiniOptional<z.ZodMiniString<string>>;
2178
+ type: z.ZodMiniOptional<z.ZodMiniString<string>>;
2179
+ repo: z.ZodMiniOptional<z.ZodMiniString<string>>;
2180
+ branch: z.ZodMiniOptional<z.ZodMiniString<string>>;
2181
+ }, z.core.$strict>>;
2182
+ }, z.core.$strict>;
2183
+ }, z.core.$strict>>;
2184
+ $schema?: "https://json-schema.org/draft/2020-12/schema" | "http://json-schema.org/draft-07/schema#" | "http://json-schema.org/draft-04/schema#";
2185
+ $id: string;
2186
+ $anchor?: string;
2187
+ $ref?: string;
2188
+ $dynamicRef?: string;
2189
+ $dynamicAnchor?: string;
2190
+ $vocabulary?: Record<string, boolean>;
2191
+ $comment?: string;
2192
+ $defs?: Record<string, z.core.JSONSchema.JSONSchema>;
2193
+ type?: z.core.JSONSchema.SchemaType | z.core.JSONSchema.SchemaType[];
2194
+ additionalItems?: z.core.JSONSchema._JSONSchema;
2195
+ unevaluatedItems?: z.core.JSONSchema._JSONSchema;
2196
+ prefixItems?: z.core.JSONSchema._JSONSchema[];
2197
+ items?: z.core.JSONSchema._JSONSchema | z.core.JSONSchema._JSONSchema[];
2198
+ contains?: z.core.JSONSchema._JSONSchema;
2199
+ additionalProperties?: z.core.JSONSchema._JSONSchema;
2200
+ unevaluatedProperties?: z.core.JSONSchema._JSONSchema;
2201
+ properties?: Record<string, z.core.JSONSchema._JSONSchema>;
2202
+ patternProperties?: Record<string, z.core.JSONSchema._JSONSchema>;
2203
+ dependentSchemas?: Record<string, z.core.JSONSchema._JSONSchema>;
2204
+ propertyNames?: z.core.JSONSchema._JSONSchema;
2205
+ if?: z.core.JSONSchema._JSONSchema;
2206
+ then?: z.core.JSONSchema._JSONSchema;
2207
+ else?: z.core.JSONSchema._JSONSchema;
2208
+ allOf?: z.core.JSONSchema.JSONSchema[];
2209
+ anyOf?: z.core.JSONSchema.JSONSchema[];
2210
+ oneOf?: z.core.JSONSchema.JSONSchema[];
2211
+ not?: z.core.JSONSchema._JSONSchema;
2212
+ multipleOf?: number;
2213
+ maximum?: number;
2214
+ exclusiveMaximum?: number | boolean;
2215
+ minimum?: number;
2216
+ exclusiveMinimum?: number | boolean;
2217
+ maxLength?: number;
2218
+ minLength?: number;
2219
+ pattern?: string;
2220
+ maxItems?: number;
2221
+ minItems?: number;
2222
+ uniqueItems?: boolean;
2223
+ maxContains?: number;
2224
+ minContains?: number;
2225
+ maxProperties?: number;
2226
+ minProperties?: number;
2227
+ required?: string[];
2228
+ dependentRequired?: Record<string, string[]>;
2229
+ enum?: Array<string | number | boolean | null>;
2230
+ const?: string | number | boolean | null;
2231
+ id?: string;
2232
+ title?: string;
2233
+ description?: string;
2234
+ default?: unknown;
2235
+ deprecated?: boolean;
2236
+ readOnly?: boolean;
2237
+ writeOnly?: boolean;
2238
+ nullable?: boolean;
2239
+ examples?: unknown[];
2240
+ format?: string;
2241
+ contentMediaType?: string;
2242
+ contentEncoding?: string;
2243
+ contentSchema?: z.core.JSONSchema.JSONSchema;
2244
+ _prefault?: unknown;
2245
+ };
2246
+ export type ConfigValidationResult = {
2247
+ ok: true;
2248
+ data: Config;
2249
+ errors: [];
2250
+ } | {
2251
+ ok: false;
2252
+ data: undefined;
2253
+ errors: z.core.$ZodIssue[];
2254
+ };
2255
+ /**
2256
+ * One entry per add-on key `site.plan.addons` can name: `label` is the human
2257
+ * name used in the validation error, `gates` answers whether the config
2258
+ * actually has the gated feature turned on. Kept beside `Config`/`validateConfig`
2259
+ * (not in `shared.ts`, despite that file's own small-lookup-table pattern —
2260
+ * `shared.ts` exists specifically to let `generate.ts` and `docs.ts` share data
2261
+ * without one importing the other, and neither of those needs this table;
2262
+ * `CRM_PROVIDER_BLOCKS` below is the closer precedent for "small map local to
2263
+ * `validateConfig`'s own concerns").
2264
+ *
2265
+ * `bookkeeping`/`support`/`software_licenses` — the Portal's other `feature_key`
2266
+ * values — intentionally have no entry here: they're pure Portal/billing
2267
+ * features with no `Config` counterpart, not a gap to fill in later.
2268
+ */
2269
+ export interface PlanCapability {
2270
+ label: string;
2271
+ gates: (cfg: Config) => boolean;
2272
+ }
2273
+ export declare const PLAN_CAPABILITIES: Record<string, PlanCapability>;
2274
+ /**
2275
+ * Validate a raw (already parsed) config: shape via zod, then the cross-field
2276
+ * integrity that JSON Schema can't express (referential keys, extends acyclicity).
2277
+ * These live only here — the published JSON Schema enforces shape, not integrity.
2278
+ */
2279
+ export declare function validateConfig(input: unknown): ConfigValidationResult;
2280
+ /**
2281
+ * Warning strings for an enabled `site.experiments` entry whose site also
2282
+ * configures Matomo but has no matching `abVariantDimensions` index — the
2283
+ * Matomo custom-dimension push for that experiment is silently skipped
2284
+ * without one, since Matomo requires the dimension to exist in the instance
2285
+ * first. A warning, not a `validateConfig` error, the same way
2286
+ * `localeConsistencyWarnings` (`@getvitops/astro/i18n.ts`) is: the pageview
2287
+ * still ships correctly, just without that one dimension, so this shouldn't
2288
+ * block a build — mirrors that function's shape (pure, `[]` when nothing to
2289
+ * warn about) rather than adding a `warnings` field to `ConfigValidationResult`.
2290
+ */
2291
+ export declare function experimentDimensionWarnings(site: {
2292
+ experiments?: Record<string, {
2293
+ enabled: boolean;
2294
+ }>;
2295
+ analytics?: {
2296
+ matomo?: {
2297
+ abVariantDimensions?: Record<string, number>;
2298
+ };
2299
+ };
2300
+ } | null | undefined): string[];
2301
+ /**
2302
+ * Resolve who privacy requests go to: the explicit privacy officer, else the
2303
+ * organization's contact, else its primary location, else the organization itself.
2304
+ *
2305
+ * Exported because `validateConfig` and the legal-document derivation must agree
2306
+ * on it exactly — a config that validates must be one the policy can render, and
2307
+ * two copies of this precedence would drift into a policy with a blank address.
2308
+ *
2309
+ * Note every candidate but the first now lives in `organization`, and the first
2310
+ * (`site.legal.privacyPolicy.privacyOfficer`) still dereferences against
2311
+ * `organization.locations` — the officer is a person at the company, named by the
2312
+ * site because a company may publish more than one policy.
2313
+ */
2314
+ export declare function resolvePrivacyContact(cfg: Config): ContactObject | undefined;
2315
+ type DesignSystemEntryT = Partial<DesignSystem> & {
2316
+ displayName?: unknown;
2317
+ extends?: string;
2318
+ };
2319
+ /**
2320
+ * Resolve a design-system theme by following its `extends` chain and deep-merging
2321
+ * base → child (child wins; arrays replace wholesale, correct for token overrides).
2322
+ * Throws on unknown keys or an `extends` cycle. The result is a plain
2323
+ * `DesignSystem` (validate it against `DesignSystemSchema` for completeness).
2324
+ */
2325
+ export declare function resolveTheme(designSystem: Record<string, DesignSystemEntryT>, key: string): DesignSystem;
2326
+ /**
2327
+ * Resolve a raw (already-parsed) config into a validated `Config`:
2328
+ * 1. strip YAML nulls,
2329
+ * 2. normalise the `designSystem` shorthands to `{ themes: … }`,
2330
+ * 3. apply the active A/B variant's `overrides` (by `siteEnv`),
2331
+ * 4. validate (shape + cross-field).
2332
+ * Pure — no YAML/env access. A loader supplies `siteEnv`.
2333
+ *
2334
+ * Steps 2 and 3 are in this order deliberately. Normalising first means an
2335
+ * `abTesting` override always addresses the canonical shape
2336
+ * (`designSystem.themes.<name>`), whatever shorthand the base config used. With
2337
+ * the merge first, an override's key path depended on how the base happened to be
2338
+ * written — so the same patch hit a different place in two configs that were
2339
+ * otherwise equivalent.
2340
+ *
2341
+ * The A/B lookup reads `site.environments` / `site.abTesting`, and the overrides
2342
+ * still deep-merge at the **root** — a variant patches whichever section it names,
2343
+ * which is what lets one target `designSystem` and another `site.seo`.
2344
+ */
2345
+ export declare function resolveConfig(input: unknown, siteEnv?: string): Config;
2346
+ /**
2347
+ * Is this raw config a full `Config` rather than a bare `design-system.json`?
2348
+ *
2349
+ * The discriminator is **total**, not a heuristic, and both halves are load-
2350
+ * bearing: `ConfigSchema` cannot validate without a `designSystem` (it is a
2351
+ * required key), and `DesignSystemSchema` is strict, so a `designSystem` key in a
2352
+ * design system is an `unrecognized_keys` error. No document can be read as both,
2353
+ * and no document that is neither reaches here without failing validation anyway.
2354
+ *
2355
+ * The restructure did not weaken this: `designSystem` stayed at the root
2356
+ * precisely so the discriminator kept working unchanged.
2357
+ *
2358
+ * Deliberately shape-based rather than filename-based: consumers name this file
2359
+ * whatever suits them (`company.json`, `site.json`, `vitops.config.json`), and a
2360
+ * rule keyed to a name would silently stop working the moment someone renamed it.
2361
+ */
2362
+ export declare function isConfig(raw: unknown): boolean;
2363
+ /** What a config file turned out to hold. */
2364
+ export interface ResolvedInput {
2365
+ /** The design system to build from — a resolved theme, if the input was a full `Config`. */
2366
+ designSystem: DesignSystem;
2367
+ /** The whole config, when that is what the input was. */
2368
+ config?: Config;
2369
+ /** Which `themes` key was selected. Absent for a bare `design-system.json`. */
2370
+ theme?: string;
2371
+ }
2372
+ /**
2373
+ * Resolve a raw config of either kind into the design system to build from.
2374
+ *
2375
+ * Every entry point that used to take a `design-system.json` goes through this,
2376
+ * so a consumer who keeps their tokens inside the larger config points the
2377
+ * same option at that file instead of maintaining a second one. The config
2378
+ * is handed back too, because the parts of generation that depend on site-level
2379
+ * facts (`designSystem.defaultColorScheme`, the legal documents, the icon
2380
+ * sprite) would otherwise need the same path declared a second time.
2381
+ *
2382
+ * The returned `designSystem` is **not** validated here — the caller does that,
2383
+ * so it can say which file and which theme the errors belong to. Validation of
2384
+ * the config itself has already happened (`resolveConfig` throws).
2385
+ */
2386
+ export declare function resolveInput(raw: unknown, opts?: {
2387
+ theme?: string;
2388
+ siteEnv?: string;
2389
+ }): ResolvedInput;
2390
+ /** Strip nulls (YAML `~`/`null`) → undefined so optional fields validate. */
2391
+ export declare function stripNulls(obj: unknown): unknown;
2392
+ /** Deep-merge `source` into `target` (in place). Arrays replace wholesale. */
2393
+ export declare function deepMerge(target: Record<string, unknown>, source: Record<string, unknown>): void;
2394
+ /**
2395
+ * Where the design system lives inside a config file on disk.
2396
+ *
2397
+ * `[]` for a `design-system.json` — the file *is* the design system. For a
2398
+ * site config it is under `designSystem`, and this reads the **raw** object
2399
+ * rather than the resolved one because a write-back has to land where the
2400
+ * author actually put it. `resolveConfig` normalises the two shorthands in
2401
+ * memory; a writer that assumed the canonical shape would grow a second
2402
+ * `themes` key beside the author's bare map and silently stop editing
2403
+ * anything.
2404
+ */
2405
+ export declare function designSystemPath(raw: unknown, theme?: string): string[];
2406
+ export declare const getAt: (obj: unknown, path: string[]) => unknown;
2407
+ /** Return a copy of `obj` with `path` replaced by `value`. Creates missing objects. */
2408
+ export declare function setAt(obj: unknown, path: string[], value: unknown): unknown;
2409
+ /**
2410
+ * Recursively merge a patch into a config, returning a new value rather than
2411
+ * mutating either argument. Plain objects merge key-wise; everything else
2412
+ * (scalars, and arrays — a token list is replaced, not appended) is
2413
+ * overwritten by the patch. Distinct from `deepMerge` above (which mutates
2414
+ * `target` in place and requires both sides to already be objects) — this one
2415
+ * has to handle `base` being `undefined` (a patch targeting a path that
2416
+ * doesn't exist yet) and a patch that is itself a scalar or array.
2417
+ */
2418
+ export declare function mergePatch(base: unknown, patch: unknown): unknown;
2419
+ /**
2420
+ * Serialize a config the way a formatter would: 2-space indent, but arrays of
2421
+ * scalars kept on one line when they fit.
2422
+ *
2423
+ * `JSON.stringify(v, null, 2)` explodes every array onto its own lines, so
2424
+ * writing back a two-key patch would reflow a whole `design-system.json` — a
2425
+ * diff nobody can review, for a change of two values. Matching the
2426
+ * prevailing style keeps the write surgical, which is the whole point of
2427
+ * saving to source rather than copying a patch by hand.
2428
+ */
2429
+ export declare function formatConfig(value: unknown, col?: number, indent?: number): string;
2430
+ export { AD_PROVIDERS, type AdProvider, BIGIN_DATA_CENTERS, CRM_PROVIDERS, type CrmProviderConfig };
2431
+ //# sourceMappingURL=config.d.mts.map