geo-semantic-layer 2.0.1

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.
@@ -0,0 +1,2231 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * Zod schema validation for Schema.org Organization type
5
+ * @module schemas/organization
6
+ */
7
+
8
+ /**
9
+ * Schema.org PostalAddress validation schema
10
+ */
11
+ declare const PostalAddressSchema: z.ZodObject<{
12
+ '@type': z.ZodDefault<z.ZodLiteral<"PostalAddress">>;
13
+ streetAddress: z.ZodOptional<z.ZodString>;
14
+ addressLocality: z.ZodOptional<z.ZodString>;
15
+ addressRegion: z.ZodOptional<z.ZodString>;
16
+ postalCode: z.ZodOptional<z.ZodString>;
17
+ addressCountry: z.ZodOptional<z.ZodString>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ '@type': "PostalAddress";
20
+ streetAddress?: string | undefined;
21
+ addressLocality?: string | undefined;
22
+ addressRegion?: string | undefined;
23
+ postalCode?: string | undefined;
24
+ addressCountry?: string | undefined;
25
+ }, {
26
+ '@type'?: "PostalAddress" | undefined;
27
+ streetAddress?: string | undefined;
28
+ addressLocality?: string | undefined;
29
+ addressRegion?: string | undefined;
30
+ postalCode?: string | undefined;
31
+ addressCountry?: string | undefined;
32
+ }>;
33
+ /**
34
+ * Schema.org ContactPoint validation schema
35
+ */
36
+ declare const ContactPointSchema: z.ZodObject<{
37
+ '@type': z.ZodDefault<z.ZodLiteral<"ContactPoint">>;
38
+ telephone: z.ZodOptional<z.ZodString>;
39
+ email: z.ZodOptional<z.ZodString>;
40
+ contactType: z.ZodOptional<z.ZodEnum<["customer service", "technical support", "sales", "billing"]>>;
41
+ areaServed: z.ZodOptional<z.ZodString>;
42
+ availableLanguage: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ '@type': "ContactPoint";
45
+ telephone?: string | undefined;
46
+ email?: string | undefined;
47
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
48
+ areaServed?: string | undefined;
49
+ availableLanguage?: string[] | undefined;
50
+ }, {
51
+ '@type'?: "ContactPoint" | undefined;
52
+ telephone?: string | undefined;
53
+ email?: string | undefined;
54
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
55
+ areaServed?: string | undefined;
56
+ availableLanguage?: string[] | undefined;
57
+ }>;
58
+ /**
59
+ * Schema.org Organization validation schema
60
+ *
61
+ * @see https://schema.org/Organization
62
+ * @see https://developers.google.com/search/docs/appearance/structured-data/organization
63
+ */
64
+ declare const OrganizationSchema: z.ZodObject<{
65
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
66
+ '@type': z.ZodDefault<z.ZodLiteral<"Organization">>;
67
+ name: z.ZodString;
68
+ url: z.ZodString;
69
+ logo: z.ZodOptional<z.ZodString>;
70
+ image: z.ZodOptional<z.ZodString>;
71
+ description: z.ZodOptional<z.ZodString>;
72
+ /**
73
+ * CRITICAL for GEO: Entity disambiguation
74
+ * Should include at least one social profile or authority ID (Wikidata, Wikipedia, etc.)
75
+ */
76
+ sameAs: z.ZodArray<z.ZodString, "many">;
77
+ email: z.ZodOptional<z.ZodString>;
78
+ telephone: z.ZodOptional<z.ZodString>;
79
+ address: z.ZodOptional<z.ZodObject<{
80
+ '@type': z.ZodDefault<z.ZodLiteral<"PostalAddress">>;
81
+ streetAddress: z.ZodOptional<z.ZodString>;
82
+ addressLocality: z.ZodOptional<z.ZodString>;
83
+ addressRegion: z.ZodOptional<z.ZodString>;
84
+ postalCode: z.ZodOptional<z.ZodString>;
85
+ addressCountry: z.ZodOptional<z.ZodString>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ '@type': "PostalAddress";
88
+ streetAddress?: string | undefined;
89
+ addressLocality?: string | undefined;
90
+ addressRegion?: string | undefined;
91
+ postalCode?: string | undefined;
92
+ addressCountry?: string | undefined;
93
+ }, {
94
+ '@type'?: "PostalAddress" | undefined;
95
+ streetAddress?: string | undefined;
96
+ addressLocality?: string | undefined;
97
+ addressRegion?: string | undefined;
98
+ postalCode?: string | undefined;
99
+ addressCountry?: string | undefined;
100
+ }>>;
101
+ contactPoint: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
102
+ '@type': z.ZodDefault<z.ZodLiteral<"ContactPoint">>;
103
+ telephone: z.ZodOptional<z.ZodString>;
104
+ email: z.ZodOptional<z.ZodString>;
105
+ contactType: z.ZodOptional<z.ZodEnum<["customer service", "technical support", "sales", "billing"]>>;
106
+ areaServed: z.ZodOptional<z.ZodString>;
107
+ availableLanguage: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
108
+ }, "strip", z.ZodTypeAny, {
109
+ '@type': "ContactPoint";
110
+ telephone?: string | undefined;
111
+ email?: string | undefined;
112
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
113
+ areaServed?: string | undefined;
114
+ availableLanguage?: string[] | undefined;
115
+ }, {
116
+ '@type'?: "ContactPoint" | undefined;
117
+ telephone?: string | undefined;
118
+ email?: string | undefined;
119
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
120
+ areaServed?: string | undefined;
121
+ availableLanguage?: string[] | undefined;
122
+ }>, z.ZodArray<z.ZodObject<{
123
+ '@type': z.ZodDefault<z.ZodLiteral<"ContactPoint">>;
124
+ telephone: z.ZodOptional<z.ZodString>;
125
+ email: z.ZodOptional<z.ZodString>;
126
+ contactType: z.ZodOptional<z.ZodEnum<["customer service", "technical support", "sales", "billing"]>>;
127
+ areaServed: z.ZodOptional<z.ZodString>;
128
+ availableLanguage: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
129
+ }, "strip", z.ZodTypeAny, {
130
+ '@type': "ContactPoint";
131
+ telephone?: string | undefined;
132
+ email?: string | undefined;
133
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
134
+ areaServed?: string | undefined;
135
+ availableLanguage?: string[] | undefined;
136
+ }, {
137
+ '@type'?: "ContactPoint" | undefined;
138
+ telephone?: string | undefined;
139
+ email?: string | undefined;
140
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
141
+ areaServed?: string | undefined;
142
+ availableLanguage?: string[] | undefined;
143
+ }>, "many">]>>;
144
+ alternateName: z.ZodOptional<z.ZodString>;
145
+ foundingDate: z.ZodOptional<z.ZodString>;
146
+ founder: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
147
+ parentOrganization: z.ZodOptional<z.ZodString>;
148
+ subOrganization: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
149
+ }, "strip", z.ZodTypeAny, {
150
+ '@type': "Organization";
151
+ '@context': "https://schema.org";
152
+ name: string;
153
+ url: string;
154
+ sameAs: string[];
155
+ telephone?: string | undefined;
156
+ email?: string | undefined;
157
+ logo?: string | undefined;
158
+ image?: string | undefined;
159
+ description?: string | undefined;
160
+ address?: {
161
+ '@type': "PostalAddress";
162
+ streetAddress?: string | undefined;
163
+ addressLocality?: string | undefined;
164
+ addressRegion?: string | undefined;
165
+ postalCode?: string | undefined;
166
+ addressCountry?: string | undefined;
167
+ } | undefined;
168
+ contactPoint?: {
169
+ '@type': "ContactPoint";
170
+ telephone?: string | undefined;
171
+ email?: string | undefined;
172
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
173
+ areaServed?: string | undefined;
174
+ availableLanguage?: string[] | undefined;
175
+ } | {
176
+ '@type': "ContactPoint";
177
+ telephone?: string | undefined;
178
+ email?: string | undefined;
179
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
180
+ areaServed?: string | undefined;
181
+ availableLanguage?: string[] | undefined;
182
+ }[] | undefined;
183
+ alternateName?: string | undefined;
184
+ foundingDate?: string | undefined;
185
+ founder?: string[] | undefined;
186
+ parentOrganization?: string | undefined;
187
+ subOrganization?: string[] | undefined;
188
+ }, {
189
+ name: string;
190
+ url: string;
191
+ sameAs: string[];
192
+ '@type'?: "Organization" | undefined;
193
+ telephone?: string | undefined;
194
+ email?: string | undefined;
195
+ '@context'?: "https://schema.org" | undefined;
196
+ logo?: string | undefined;
197
+ image?: string | undefined;
198
+ description?: string | undefined;
199
+ address?: {
200
+ '@type'?: "PostalAddress" | undefined;
201
+ streetAddress?: string | undefined;
202
+ addressLocality?: string | undefined;
203
+ addressRegion?: string | undefined;
204
+ postalCode?: string | undefined;
205
+ addressCountry?: string | undefined;
206
+ } | undefined;
207
+ contactPoint?: {
208
+ '@type'?: "ContactPoint" | undefined;
209
+ telephone?: string | undefined;
210
+ email?: string | undefined;
211
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
212
+ areaServed?: string | undefined;
213
+ availableLanguage?: string[] | undefined;
214
+ } | {
215
+ '@type'?: "ContactPoint" | undefined;
216
+ telephone?: string | undefined;
217
+ email?: string | undefined;
218
+ contactType?: "customer service" | "technical support" | "sales" | "billing" | undefined;
219
+ areaServed?: string | undefined;
220
+ availableLanguage?: string[] | undefined;
221
+ }[] | undefined;
222
+ alternateName?: string | undefined;
223
+ foundingDate?: string | undefined;
224
+ founder?: string[] | undefined;
225
+ parentOrganization?: string | undefined;
226
+ subOrganization?: string[] | undefined;
227
+ }>;
228
+ /**
229
+ * TypeScript type inferred from Zod schema
230
+ */
231
+ type Organization = z.infer<typeof OrganizationSchema>;
232
+ /**
233
+ * Input type for creating Organization schema (before defaults are applied)
234
+ */
235
+ type OrganizationInput = z.input<typeof OrganizationSchema>;
236
+
237
+ /**
238
+ * Zod schema validation for Schema.org Person type
239
+ * @module schemas/person
240
+ */
241
+
242
+ /**
243
+ * Schema.org Person validation schema
244
+ *
245
+ * @see https://schema.org/Person
246
+ * @see https://developers.google.com/search/docs/appearance/structured-data/person
247
+ */
248
+ declare const PersonSchema: z.ZodObject<{
249
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
250
+ '@type': z.ZodDefault<z.ZodLiteral<"Person">>;
251
+ name: z.ZodString;
252
+ url: z.ZodOptional<z.ZodString>;
253
+ image: z.ZodOptional<z.ZodString>;
254
+ description: z.ZodOptional<z.ZodString>;
255
+ /**
256
+ * CRITICAL for GEO: Entity disambiguation
257
+ * Should include social profiles, Wikidata ID, Wikipedia URL, etc.
258
+ */
259
+ sameAs: z.ZodArray<z.ZodString, "many">;
260
+ email: z.ZodOptional<z.ZodString>;
261
+ telephone: z.ZodOptional<z.ZodString>;
262
+ address: z.ZodOptional<z.ZodObject<{
263
+ '@type': z.ZodDefault<z.ZodLiteral<"PostalAddress">>;
264
+ streetAddress: z.ZodOptional<z.ZodString>;
265
+ addressLocality: z.ZodOptional<z.ZodString>;
266
+ addressRegion: z.ZodOptional<z.ZodString>;
267
+ postalCode: z.ZodOptional<z.ZodString>;
268
+ addressCountry: z.ZodOptional<z.ZodString>;
269
+ }, "strip", z.ZodTypeAny, {
270
+ '@type': "PostalAddress";
271
+ streetAddress?: string | undefined;
272
+ addressLocality?: string | undefined;
273
+ addressRegion?: string | undefined;
274
+ postalCode?: string | undefined;
275
+ addressCountry?: string | undefined;
276
+ }, {
277
+ '@type'?: "PostalAddress" | undefined;
278
+ streetAddress?: string | undefined;
279
+ addressLocality?: string | undefined;
280
+ addressRegion?: string | undefined;
281
+ postalCode?: string | undefined;
282
+ addressCountry?: string | undefined;
283
+ }>>;
284
+ jobTitle: z.ZodOptional<z.ZodString>;
285
+ worksFor: z.ZodOptional<z.ZodObject<{
286
+ '@type': z.ZodLiteral<"Organization">;
287
+ name: z.ZodString;
288
+ url: z.ZodOptional<z.ZodString>;
289
+ }, "strip", z.ZodTypeAny, {
290
+ '@type': "Organization";
291
+ name: string;
292
+ url?: string | undefined;
293
+ }, {
294
+ '@type': "Organization";
295
+ name: string;
296
+ url?: string | undefined;
297
+ }>>;
298
+ alternateName: z.ZodOptional<z.ZodString>;
299
+ birthDate: z.ZodOptional<z.ZodString>;
300
+ nationality: z.ZodOptional<z.ZodString>;
301
+ colleague: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
302
+ alumniOf: z.ZodOptional<z.ZodString>;
303
+ }, "strip", z.ZodTypeAny, {
304
+ '@type': "Person";
305
+ '@context': "https://schema.org";
306
+ name: string;
307
+ sameAs: string[];
308
+ telephone?: string | undefined;
309
+ email?: string | undefined;
310
+ url?: string | undefined;
311
+ image?: string | undefined;
312
+ description?: string | undefined;
313
+ address?: {
314
+ '@type': "PostalAddress";
315
+ streetAddress?: string | undefined;
316
+ addressLocality?: string | undefined;
317
+ addressRegion?: string | undefined;
318
+ postalCode?: string | undefined;
319
+ addressCountry?: string | undefined;
320
+ } | undefined;
321
+ alternateName?: string | undefined;
322
+ jobTitle?: string | undefined;
323
+ worksFor?: {
324
+ '@type': "Organization";
325
+ name: string;
326
+ url?: string | undefined;
327
+ } | undefined;
328
+ birthDate?: string | undefined;
329
+ nationality?: string | undefined;
330
+ colleague?: string[] | undefined;
331
+ alumniOf?: string | undefined;
332
+ }, {
333
+ name: string;
334
+ sameAs: string[];
335
+ '@type'?: "Person" | undefined;
336
+ telephone?: string | undefined;
337
+ email?: string | undefined;
338
+ '@context'?: "https://schema.org" | undefined;
339
+ url?: string | undefined;
340
+ image?: string | undefined;
341
+ description?: string | undefined;
342
+ address?: {
343
+ '@type'?: "PostalAddress" | undefined;
344
+ streetAddress?: string | undefined;
345
+ addressLocality?: string | undefined;
346
+ addressRegion?: string | undefined;
347
+ postalCode?: string | undefined;
348
+ addressCountry?: string | undefined;
349
+ } | undefined;
350
+ alternateName?: string | undefined;
351
+ jobTitle?: string | undefined;
352
+ worksFor?: {
353
+ '@type': "Organization";
354
+ name: string;
355
+ url?: string | undefined;
356
+ } | undefined;
357
+ birthDate?: string | undefined;
358
+ nationality?: string | undefined;
359
+ colleague?: string[] | undefined;
360
+ alumniOf?: string | undefined;
361
+ }>;
362
+ /**
363
+ * TypeScript type inferred from Zod schema
364
+ */
365
+ type Person = z.infer<typeof PersonSchema>;
366
+ /**
367
+ * Input type for creating Person schema (before defaults are applied)
368
+ */
369
+ type PersonInput = z.input<typeof PersonSchema>;
370
+
371
+ /**
372
+ * Zod schema validation for Schema.org Product type
373
+ * @module schemas/product
374
+ */
375
+
376
+ /**
377
+ * Schema.org Offer validation schema
378
+ */
379
+ declare const OfferSchema: z.ZodObject<{
380
+ '@type': z.ZodDefault<z.ZodLiteral<"Offer">>;
381
+ price: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
382
+ priceCurrency: z.ZodString;
383
+ availability: z.ZodOptional<z.ZodString>;
384
+ url: z.ZodOptional<z.ZodString>;
385
+ priceValidUntil: z.ZodOptional<z.ZodString>;
386
+ seller: z.ZodOptional<z.ZodObject<{
387
+ '@type': z.ZodLiteral<"Organization">;
388
+ name: z.ZodString;
389
+ }, "strip", z.ZodTypeAny, {
390
+ '@type': "Organization";
391
+ name: string;
392
+ }, {
393
+ '@type': "Organization";
394
+ name: string;
395
+ }>>;
396
+ }, "strip", z.ZodTypeAny, {
397
+ '@type': "Offer";
398
+ price: string | number;
399
+ priceCurrency: string;
400
+ url?: string | undefined;
401
+ availability?: string | undefined;
402
+ priceValidUntil?: string | undefined;
403
+ seller?: {
404
+ '@type': "Organization";
405
+ name: string;
406
+ } | undefined;
407
+ }, {
408
+ price: string | number;
409
+ priceCurrency: string;
410
+ '@type'?: "Offer" | undefined;
411
+ url?: string | undefined;
412
+ availability?: string | undefined;
413
+ priceValidUntil?: string | undefined;
414
+ seller?: {
415
+ '@type': "Organization";
416
+ name: string;
417
+ } | undefined;
418
+ }>;
419
+ /**
420
+ * Schema.org AggregateRating validation schema
421
+ */
422
+ declare const AggregateRatingSchema: z.ZodObject<{
423
+ '@type': z.ZodDefault<z.ZodLiteral<"AggregateRating">>;
424
+ ratingValue: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
425
+ reviewCount: z.ZodNumber;
426
+ bestRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
427
+ worstRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
428
+ }, "strip", z.ZodTypeAny, {
429
+ '@type': "AggregateRating";
430
+ ratingValue: string | number;
431
+ reviewCount: number;
432
+ bestRating: string | number;
433
+ worstRating: string | number;
434
+ }, {
435
+ ratingValue: string | number;
436
+ reviewCount: number;
437
+ '@type'?: "AggregateRating" | undefined;
438
+ bestRating?: string | number | undefined;
439
+ worstRating?: string | number | undefined;
440
+ }>;
441
+ /**
442
+ * Schema.org Review validation schema
443
+ */
444
+ declare const ReviewSchema: z.ZodObject<{
445
+ '@type': z.ZodDefault<z.ZodLiteral<"Review">>;
446
+ author: z.ZodObject<{
447
+ '@type': z.ZodLiteral<"Person">;
448
+ name: z.ZodString;
449
+ }, "strip", z.ZodTypeAny, {
450
+ '@type': "Person";
451
+ name: string;
452
+ }, {
453
+ '@type': "Person";
454
+ name: string;
455
+ }>;
456
+ datePublished: z.ZodString;
457
+ reviewBody: z.ZodString;
458
+ reviewRating: z.ZodObject<{
459
+ '@type': z.ZodLiteral<"Rating">;
460
+ ratingValue: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
461
+ bestRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
462
+ }, "strip", z.ZodTypeAny, {
463
+ '@type': "Rating";
464
+ ratingValue: string | number;
465
+ bestRating: string | number;
466
+ }, {
467
+ '@type': "Rating";
468
+ ratingValue: string | number;
469
+ bestRating?: string | number | undefined;
470
+ }>;
471
+ }, "strip", z.ZodTypeAny, {
472
+ '@type': "Review";
473
+ author: {
474
+ '@type': "Person";
475
+ name: string;
476
+ };
477
+ datePublished: string;
478
+ reviewBody: string;
479
+ reviewRating: {
480
+ '@type': "Rating";
481
+ ratingValue: string | number;
482
+ bestRating: string | number;
483
+ };
484
+ }, {
485
+ author: {
486
+ '@type': "Person";
487
+ name: string;
488
+ };
489
+ datePublished: string;
490
+ reviewBody: string;
491
+ reviewRating: {
492
+ '@type': "Rating";
493
+ ratingValue: string | number;
494
+ bestRating?: string | number | undefined;
495
+ };
496
+ '@type'?: "Review" | undefined;
497
+ }>;
498
+ /**
499
+ * Schema.org Product validation schema
500
+ *
501
+ * @see https://schema.org/Product
502
+ * @see https://developers.google.com/search/docs/appearance/structured-data/product
503
+ */
504
+ declare const ProductSchema: z.ZodObject<{
505
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
506
+ '@type': z.ZodDefault<z.ZodLiteral<"Product">>;
507
+ name: z.ZodString;
508
+ image: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
509
+ description: z.ZodOptional<z.ZodString>;
510
+ sku: z.ZodOptional<z.ZodString>;
511
+ gtin: z.ZodOptional<z.ZodString>;
512
+ gtin8: z.ZodOptional<z.ZodString>;
513
+ gtin12: z.ZodOptional<z.ZodString>;
514
+ gtin13: z.ZodOptional<z.ZodString>;
515
+ gtin14: z.ZodOptional<z.ZodString>;
516
+ mpn: z.ZodOptional<z.ZodString>;
517
+ brand: z.ZodOptional<z.ZodObject<{
518
+ '@type': z.ZodLiteral<"Brand">;
519
+ name: z.ZodString;
520
+ }, "strip", z.ZodTypeAny, {
521
+ '@type': "Brand";
522
+ name: string;
523
+ }, {
524
+ '@type': "Brand";
525
+ name: string;
526
+ }>>;
527
+ offers: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
528
+ '@type': z.ZodDefault<z.ZodLiteral<"Offer">>;
529
+ price: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
530
+ priceCurrency: z.ZodString;
531
+ availability: z.ZodOptional<z.ZodString>;
532
+ url: z.ZodOptional<z.ZodString>;
533
+ priceValidUntil: z.ZodOptional<z.ZodString>;
534
+ seller: z.ZodOptional<z.ZodObject<{
535
+ '@type': z.ZodLiteral<"Organization">;
536
+ name: z.ZodString;
537
+ }, "strip", z.ZodTypeAny, {
538
+ '@type': "Organization";
539
+ name: string;
540
+ }, {
541
+ '@type': "Organization";
542
+ name: string;
543
+ }>>;
544
+ }, "strip", z.ZodTypeAny, {
545
+ '@type': "Offer";
546
+ price: string | number;
547
+ priceCurrency: string;
548
+ url?: string | undefined;
549
+ availability?: string | undefined;
550
+ priceValidUntil?: string | undefined;
551
+ seller?: {
552
+ '@type': "Organization";
553
+ name: string;
554
+ } | undefined;
555
+ }, {
556
+ price: string | number;
557
+ priceCurrency: string;
558
+ '@type'?: "Offer" | undefined;
559
+ url?: string | undefined;
560
+ availability?: string | undefined;
561
+ priceValidUntil?: string | undefined;
562
+ seller?: {
563
+ '@type': "Organization";
564
+ name: string;
565
+ } | undefined;
566
+ }>, z.ZodArray<z.ZodObject<{
567
+ '@type': z.ZodDefault<z.ZodLiteral<"Offer">>;
568
+ price: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
569
+ priceCurrency: z.ZodString;
570
+ availability: z.ZodOptional<z.ZodString>;
571
+ url: z.ZodOptional<z.ZodString>;
572
+ priceValidUntil: z.ZodOptional<z.ZodString>;
573
+ seller: z.ZodOptional<z.ZodObject<{
574
+ '@type': z.ZodLiteral<"Organization">;
575
+ name: z.ZodString;
576
+ }, "strip", z.ZodTypeAny, {
577
+ '@type': "Organization";
578
+ name: string;
579
+ }, {
580
+ '@type': "Organization";
581
+ name: string;
582
+ }>>;
583
+ }, "strip", z.ZodTypeAny, {
584
+ '@type': "Offer";
585
+ price: string | number;
586
+ priceCurrency: string;
587
+ url?: string | undefined;
588
+ availability?: string | undefined;
589
+ priceValidUntil?: string | undefined;
590
+ seller?: {
591
+ '@type': "Organization";
592
+ name: string;
593
+ } | undefined;
594
+ }, {
595
+ price: string | number;
596
+ priceCurrency: string;
597
+ '@type'?: "Offer" | undefined;
598
+ url?: string | undefined;
599
+ availability?: string | undefined;
600
+ priceValidUntil?: string | undefined;
601
+ seller?: {
602
+ '@type': "Organization";
603
+ name: string;
604
+ } | undefined;
605
+ }>, "many">]>>;
606
+ aggregateRating: z.ZodOptional<z.ZodObject<{
607
+ '@type': z.ZodDefault<z.ZodLiteral<"AggregateRating">>;
608
+ ratingValue: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
609
+ reviewCount: z.ZodNumber;
610
+ bestRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
611
+ worstRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
612
+ }, "strip", z.ZodTypeAny, {
613
+ '@type': "AggregateRating";
614
+ ratingValue: string | number;
615
+ reviewCount: number;
616
+ bestRating: string | number;
617
+ worstRating: string | number;
618
+ }, {
619
+ ratingValue: string | number;
620
+ reviewCount: number;
621
+ '@type'?: "AggregateRating" | undefined;
622
+ bestRating?: string | number | undefined;
623
+ worstRating?: string | number | undefined;
624
+ }>>;
625
+ review: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
626
+ '@type': z.ZodDefault<z.ZodLiteral<"Review">>;
627
+ author: z.ZodObject<{
628
+ '@type': z.ZodLiteral<"Person">;
629
+ name: z.ZodString;
630
+ }, "strip", z.ZodTypeAny, {
631
+ '@type': "Person";
632
+ name: string;
633
+ }, {
634
+ '@type': "Person";
635
+ name: string;
636
+ }>;
637
+ datePublished: z.ZodString;
638
+ reviewBody: z.ZodString;
639
+ reviewRating: z.ZodObject<{
640
+ '@type': z.ZodLiteral<"Rating">;
641
+ ratingValue: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
642
+ bestRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
643
+ }, "strip", z.ZodTypeAny, {
644
+ '@type': "Rating";
645
+ ratingValue: string | number;
646
+ bestRating: string | number;
647
+ }, {
648
+ '@type': "Rating";
649
+ ratingValue: string | number;
650
+ bestRating?: string | number | undefined;
651
+ }>;
652
+ }, "strip", z.ZodTypeAny, {
653
+ '@type': "Review";
654
+ author: {
655
+ '@type': "Person";
656
+ name: string;
657
+ };
658
+ datePublished: string;
659
+ reviewBody: string;
660
+ reviewRating: {
661
+ '@type': "Rating";
662
+ ratingValue: string | number;
663
+ bestRating: string | number;
664
+ };
665
+ }, {
666
+ author: {
667
+ '@type': "Person";
668
+ name: string;
669
+ };
670
+ datePublished: string;
671
+ reviewBody: string;
672
+ reviewRating: {
673
+ '@type': "Rating";
674
+ ratingValue: string | number;
675
+ bestRating?: string | number | undefined;
676
+ };
677
+ '@type'?: "Review" | undefined;
678
+ }>, z.ZodArray<z.ZodObject<{
679
+ '@type': z.ZodDefault<z.ZodLiteral<"Review">>;
680
+ author: z.ZodObject<{
681
+ '@type': z.ZodLiteral<"Person">;
682
+ name: z.ZodString;
683
+ }, "strip", z.ZodTypeAny, {
684
+ '@type': "Person";
685
+ name: string;
686
+ }, {
687
+ '@type': "Person";
688
+ name: string;
689
+ }>;
690
+ datePublished: z.ZodString;
691
+ reviewBody: z.ZodString;
692
+ reviewRating: z.ZodObject<{
693
+ '@type': z.ZodLiteral<"Rating">;
694
+ ratingValue: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
695
+ bestRating: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
696
+ }, "strip", z.ZodTypeAny, {
697
+ '@type': "Rating";
698
+ ratingValue: string | number;
699
+ bestRating: string | number;
700
+ }, {
701
+ '@type': "Rating";
702
+ ratingValue: string | number;
703
+ bestRating?: string | number | undefined;
704
+ }>;
705
+ }, "strip", z.ZodTypeAny, {
706
+ '@type': "Review";
707
+ author: {
708
+ '@type': "Person";
709
+ name: string;
710
+ };
711
+ datePublished: string;
712
+ reviewBody: string;
713
+ reviewRating: {
714
+ '@type': "Rating";
715
+ ratingValue: string | number;
716
+ bestRating: string | number;
717
+ };
718
+ }, {
719
+ author: {
720
+ '@type': "Person";
721
+ name: string;
722
+ };
723
+ datePublished: string;
724
+ reviewBody: string;
725
+ reviewRating: {
726
+ '@type': "Rating";
727
+ ratingValue: string | number;
728
+ bestRating?: string | number | undefined;
729
+ };
730
+ '@type'?: "Review" | undefined;
731
+ }>, "many">]>>;
732
+ category: z.ZodOptional<z.ZodString>;
733
+ color: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
734
+ material: z.ZodOptional<z.ZodString>;
735
+ manufacturer: z.ZodOptional<z.ZodObject<{
736
+ '@type': z.ZodLiteral<"Organization">;
737
+ name: z.ZodString;
738
+ }, "strip", z.ZodTypeAny, {
739
+ '@type': "Organization";
740
+ name: string;
741
+ }, {
742
+ '@type': "Organization";
743
+ name: string;
744
+ }>>;
745
+ }, "strip", z.ZodTypeAny, {
746
+ '@type': "Product";
747
+ '@context': "https://schema.org";
748
+ name: string;
749
+ image?: string | string[] | undefined;
750
+ description?: string | undefined;
751
+ sku?: string | undefined;
752
+ gtin?: string | undefined;
753
+ gtin8?: string | undefined;
754
+ gtin12?: string | undefined;
755
+ gtin13?: string | undefined;
756
+ gtin14?: string | undefined;
757
+ mpn?: string | undefined;
758
+ brand?: {
759
+ '@type': "Brand";
760
+ name: string;
761
+ } | undefined;
762
+ offers?: {
763
+ '@type': "Offer";
764
+ price: string | number;
765
+ priceCurrency: string;
766
+ url?: string | undefined;
767
+ availability?: string | undefined;
768
+ priceValidUntil?: string | undefined;
769
+ seller?: {
770
+ '@type': "Organization";
771
+ name: string;
772
+ } | undefined;
773
+ } | {
774
+ '@type': "Offer";
775
+ price: string | number;
776
+ priceCurrency: string;
777
+ url?: string | undefined;
778
+ availability?: string | undefined;
779
+ priceValidUntil?: string | undefined;
780
+ seller?: {
781
+ '@type': "Organization";
782
+ name: string;
783
+ } | undefined;
784
+ }[] | undefined;
785
+ aggregateRating?: {
786
+ '@type': "AggregateRating";
787
+ ratingValue: string | number;
788
+ reviewCount: number;
789
+ bestRating: string | number;
790
+ worstRating: string | number;
791
+ } | undefined;
792
+ review?: {
793
+ '@type': "Review";
794
+ author: {
795
+ '@type': "Person";
796
+ name: string;
797
+ };
798
+ datePublished: string;
799
+ reviewBody: string;
800
+ reviewRating: {
801
+ '@type': "Rating";
802
+ ratingValue: string | number;
803
+ bestRating: string | number;
804
+ };
805
+ } | {
806
+ '@type': "Review";
807
+ author: {
808
+ '@type': "Person";
809
+ name: string;
810
+ };
811
+ datePublished: string;
812
+ reviewBody: string;
813
+ reviewRating: {
814
+ '@type': "Rating";
815
+ ratingValue: string | number;
816
+ bestRating: string | number;
817
+ };
818
+ }[] | undefined;
819
+ category?: string | undefined;
820
+ color?: string | string[] | undefined;
821
+ material?: string | undefined;
822
+ manufacturer?: {
823
+ '@type': "Organization";
824
+ name: string;
825
+ } | undefined;
826
+ }, {
827
+ name: string;
828
+ '@type'?: "Product" | undefined;
829
+ '@context'?: "https://schema.org" | undefined;
830
+ image?: string | string[] | undefined;
831
+ description?: string | undefined;
832
+ sku?: string | undefined;
833
+ gtin?: string | undefined;
834
+ gtin8?: string | undefined;
835
+ gtin12?: string | undefined;
836
+ gtin13?: string | undefined;
837
+ gtin14?: string | undefined;
838
+ mpn?: string | undefined;
839
+ brand?: {
840
+ '@type': "Brand";
841
+ name: string;
842
+ } | undefined;
843
+ offers?: {
844
+ price: string | number;
845
+ priceCurrency: string;
846
+ '@type'?: "Offer" | undefined;
847
+ url?: string | undefined;
848
+ availability?: string | undefined;
849
+ priceValidUntil?: string | undefined;
850
+ seller?: {
851
+ '@type': "Organization";
852
+ name: string;
853
+ } | undefined;
854
+ } | {
855
+ price: string | number;
856
+ priceCurrency: string;
857
+ '@type'?: "Offer" | undefined;
858
+ url?: string | undefined;
859
+ availability?: string | undefined;
860
+ priceValidUntil?: string | undefined;
861
+ seller?: {
862
+ '@type': "Organization";
863
+ name: string;
864
+ } | undefined;
865
+ }[] | undefined;
866
+ aggregateRating?: {
867
+ ratingValue: string | number;
868
+ reviewCount: number;
869
+ '@type'?: "AggregateRating" | undefined;
870
+ bestRating?: string | number | undefined;
871
+ worstRating?: string | number | undefined;
872
+ } | undefined;
873
+ review?: {
874
+ author: {
875
+ '@type': "Person";
876
+ name: string;
877
+ };
878
+ datePublished: string;
879
+ reviewBody: string;
880
+ reviewRating: {
881
+ '@type': "Rating";
882
+ ratingValue: string | number;
883
+ bestRating?: string | number | undefined;
884
+ };
885
+ '@type'?: "Review" | undefined;
886
+ } | {
887
+ author: {
888
+ '@type': "Person";
889
+ name: string;
890
+ };
891
+ datePublished: string;
892
+ reviewBody: string;
893
+ reviewRating: {
894
+ '@type': "Rating";
895
+ ratingValue: string | number;
896
+ bestRating?: string | number | undefined;
897
+ };
898
+ '@type'?: "Review" | undefined;
899
+ }[] | undefined;
900
+ category?: string | undefined;
901
+ color?: string | string[] | undefined;
902
+ material?: string | undefined;
903
+ manufacturer?: {
904
+ '@type': "Organization";
905
+ name: string;
906
+ } | undefined;
907
+ }>;
908
+ /**
909
+ * TypeScript type inferred from Zod schema
910
+ */
911
+ type Product = z.infer<typeof ProductSchema>;
912
+ /**
913
+ * Input type for creating Product schema (before defaults are applied)
914
+ */
915
+ type ProductInput = z.input<typeof ProductSchema>;
916
+ type Offer = z.infer<typeof OfferSchema>;
917
+ type AggregateRating = z.infer<typeof AggregateRatingSchema>;
918
+ type Review = z.infer<typeof ReviewSchema>;
919
+
920
+ /**
921
+ * Zod schema validation for Schema.org Article type
922
+ * @module schemas/article
923
+ */
924
+
925
+ /**
926
+ * Schema.org Article validation schema
927
+ *
928
+ * @see https://schema.org/Article
929
+ * @see https://developers.google.com/search/docs/appearance/structured-data/article
930
+ */
931
+ declare const ArticleSchema: z.ZodObject<{
932
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
933
+ '@type': z.ZodDefault<z.ZodEnum<["Article", "NewsArticle", "BlogPosting", "TechArticle"]>>;
934
+ headline: z.ZodString;
935
+ image: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
936
+ author: z.ZodUnion<[z.ZodObject<{
937
+ '@type': z.ZodEnum<["Person", "Organization"]>;
938
+ name: z.ZodString;
939
+ url: z.ZodOptional<z.ZodString>;
940
+ }, "strip", z.ZodTypeAny, {
941
+ '@type': "Organization" | "Person";
942
+ name: string;
943
+ url?: string | undefined;
944
+ }, {
945
+ '@type': "Organization" | "Person";
946
+ name: string;
947
+ url?: string | undefined;
948
+ }>, z.ZodArray<z.ZodObject<{
949
+ '@type': z.ZodEnum<["Person", "Organization"]>;
950
+ name: z.ZodString;
951
+ url: z.ZodOptional<z.ZodString>;
952
+ }, "strip", z.ZodTypeAny, {
953
+ '@type': "Organization" | "Person";
954
+ name: string;
955
+ url?: string | undefined;
956
+ }, {
957
+ '@type': "Organization" | "Person";
958
+ name: string;
959
+ url?: string | undefined;
960
+ }>, "many">]>;
961
+ datePublished: z.ZodString;
962
+ dateModified: z.ZodOptional<z.ZodString>;
963
+ publisher: z.ZodOptional<z.ZodObject<{
964
+ '@type': z.ZodLiteral<"Organization">;
965
+ name: z.ZodString;
966
+ logo: z.ZodOptional<z.ZodObject<{
967
+ '@type': z.ZodLiteral<"ImageObject">;
968
+ url: z.ZodString;
969
+ width: z.ZodOptional<z.ZodNumber>;
970
+ height: z.ZodOptional<z.ZodNumber>;
971
+ }, "strip", z.ZodTypeAny, {
972
+ '@type': "ImageObject";
973
+ url: string;
974
+ width?: number | undefined;
975
+ height?: number | undefined;
976
+ }, {
977
+ '@type': "ImageObject";
978
+ url: string;
979
+ width?: number | undefined;
980
+ height?: number | undefined;
981
+ }>>;
982
+ }, "strip", z.ZodTypeAny, {
983
+ '@type': "Organization";
984
+ name: string;
985
+ logo?: {
986
+ '@type': "ImageObject";
987
+ url: string;
988
+ width?: number | undefined;
989
+ height?: number | undefined;
990
+ } | undefined;
991
+ }, {
992
+ '@type': "Organization";
993
+ name: string;
994
+ logo?: {
995
+ '@type': "ImageObject";
996
+ url: string;
997
+ width?: number | undefined;
998
+ height?: number | undefined;
999
+ } | undefined;
1000
+ }>>;
1001
+ description: z.ZodOptional<z.ZodString>;
1002
+ articleBody: z.ZodOptional<z.ZodString>;
1003
+ wordCount: z.ZodOptional<z.ZodNumber>;
1004
+ url: z.ZodOptional<z.ZodString>;
1005
+ mainEntityOfPage: z.ZodOptional<z.ZodString>;
1006
+ keywords: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
1007
+ articleSection: z.ZodOptional<z.ZodString>;
1008
+ inLanguage: z.ZodOptional<z.ZodString>;
1009
+ }, "strip", z.ZodTypeAny, {
1010
+ '@type': "Article" | "NewsArticle" | "BlogPosting" | "TechArticle";
1011
+ '@context': "https://schema.org";
1012
+ image: string | string[];
1013
+ author: {
1014
+ '@type': "Organization" | "Person";
1015
+ name: string;
1016
+ url?: string | undefined;
1017
+ } | {
1018
+ '@type': "Organization" | "Person";
1019
+ name: string;
1020
+ url?: string | undefined;
1021
+ }[];
1022
+ datePublished: string;
1023
+ headline: string;
1024
+ url?: string | undefined;
1025
+ description?: string | undefined;
1026
+ dateModified?: string | undefined;
1027
+ publisher?: {
1028
+ '@type': "Organization";
1029
+ name: string;
1030
+ logo?: {
1031
+ '@type': "ImageObject";
1032
+ url: string;
1033
+ width?: number | undefined;
1034
+ height?: number | undefined;
1035
+ } | undefined;
1036
+ } | undefined;
1037
+ articleBody?: string | undefined;
1038
+ wordCount?: number | undefined;
1039
+ mainEntityOfPage?: string | undefined;
1040
+ keywords?: string | string[] | undefined;
1041
+ articleSection?: string | undefined;
1042
+ inLanguage?: string | undefined;
1043
+ }, {
1044
+ image: string | string[];
1045
+ author: {
1046
+ '@type': "Organization" | "Person";
1047
+ name: string;
1048
+ url?: string | undefined;
1049
+ } | {
1050
+ '@type': "Organization" | "Person";
1051
+ name: string;
1052
+ url?: string | undefined;
1053
+ }[];
1054
+ datePublished: string;
1055
+ headline: string;
1056
+ '@type'?: "Article" | "NewsArticle" | "BlogPosting" | "TechArticle" | undefined;
1057
+ '@context'?: "https://schema.org" | undefined;
1058
+ url?: string | undefined;
1059
+ description?: string | undefined;
1060
+ dateModified?: string | undefined;
1061
+ publisher?: {
1062
+ '@type': "Organization";
1063
+ name: string;
1064
+ logo?: {
1065
+ '@type': "ImageObject";
1066
+ url: string;
1067
+ width?: number | undefined;
1068
+ height?: number | undefined;
1069
+ } | undefined;
1070
+ } | undefined;
1071
+ articleBody?: string | undefined;
1072
+ wordCount?: number | undefined;
1073
+ mainEntityOfPage?: string | undefined;
1074
+ keywords?: string | string[] | undefined;
1075
+ articleSection?: string | undefined;
1076
+ inLanguage?: string | undefined;
1077
+ }>;
1078
+ /**
1079
+ * Schema.org BlogPosting validation schema (extends Article)
1080
+ */
1081
+ declare const BlogPostingSchema: z.ZodObject<{
1082
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1083
+ headline: z.ZodString;
1084
+ image: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
1085
+ author: z.ZodUnion<[z.ZodObject<{
1086
+ '@type': z.ZodEnum<["Person", "Organization"]>;
1087
+ name: z.ZodString;
1088
+ url: z.ZodOptional<z.ZodString>;
1089
+ }, "strip", z.ZodTypeAny, {
1090
+ '@type': "Organization" | "Person";
1091
+ name: string;
1092
+ url?: string | undefined;
1093
+ }, {
1094
+ '@type': "Organization" | "Person";
1095
+ name: string;
1096
+ url?: string | undefined;
1097
+ }>, z.ZodArray<z.ZodObject<{
1098
+ '@type': z.ZodEnum<["Person", "Organization"]>;
1099
+ name: z.ZodString;
1100
+ url: z.ZodOptional<z.ZodString>;
1101
+ }, "strip", z.ZodTypeAny, {
1102
+ '@type': "Organization" | "Person";
1103
+ name: string;
1104
+ url?: string | undefined;
1105
+ }, {
1106
+ '@type': "Organization" | "Person";
1107
+ name: string;
1108
+ url?: string | undefined;
1109
+ }>, "many">]>;
1110
+ datePublished: z.ZodString;
1111
+ dateModified: z.ZodOptional<z.ZodString>;
1112
+ publisher: z.ZodOptional<z.ZodObject<{
1113
+ '@type': z.ZodLiteral<"Organization">;
1114
+ name: z.ZodString;
1115
+ logo: z.ZodOptional<z.ZodObject<{
1116
+ '@type': z.ZodLiteral<"ImageObject">;
1117
+ url: z.ZodString;
1118
+ width: z.ZodOptional<z.ZodNumber>;
1119
+ height: z.ZodOptional<z.ZodNumber>;
1120
+ }, "strip", z.ZodTypeAny, {
1121
+ '@type': "ImageObject";
1122
+ url: string;
1123
+ width?: number | undefined;
1124
+ height?: number | undefined;
1125
+ }, {
1126
+ '@type': "ImageObject";
1127
+ url: string;
1128
+ width?: number | undefined;
1129
+ height?: number | undefined;
1130
+ }>>;
1131
+ }, "strip", z.ZodTypeAny, {
1132
+ '@type': "Organization";
1133
+ name: string;
1134
+ logo?: {
1135
+ '@type': "ImageObject";
1136
+ url: string;
1137
+ width?: number | undefined;
1138
+ height?: number | undefined;
1139
+ } | undefined;
1140
+ }, {
1141
+ '@type': "Organization";
1142
+ name: string;
1143
+ logo?: {
1144
+ '@type': "ImageObject";
1145
+ url: string;
1146
+ width?: number | undefined;
1147
+ height?: number | undefined;
1148
+ } | undefined;
1149
+ }>>;
1150
+ description: z.ZodOptional<z.ZodString>;
1151
+ articleBody: z.ZodOptional<z.ZodString>;
1152
+ wordCount: z.ZodOptional<z.ZodNumber>;
1153
+ url: z.ZodOptional<z.ZodString>;
1154
+ mainEntityOfPage: z.ZodOptional<z.ZodString>;
1155
+ keywords: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
1156
+ articleSection: z.ZodOptional<z.ZodString>;
1157
+ inLanguage: z.ZodOptional<z.ZodString>;
1158
+ } & {
1159
+ '@type': z.ZodDefault<z.ZodLiteral<"BlogPosting">>;
1160
+ }, "strip", z.ZodTypeAny, {
1161
+ '@type': "BlogPosting";
1162
+ '@context': "https://schema.org";
1163
+ image: string | string[];
1164
+ author: {
1165
+ '@type': "Organization" | "Person";
1166
+ name: string;
1167
+ url?: string | undefined;
1168
+ } | {
1169
+ '@type': "Organization" | "Person";
1170
+ name: string;
1171
+ url?: string | undefined;
1172
+ }[];
1173
+ datePublished: string;
1174
+ headline: string;
1175
+ url?: string | undefined;
1176
+ description?: string | undefined;
1177
+ dateModified?: string | undefined;
1178
+ publisher?: {
1179
+ '@type': "Organization";
1180
+ name: string;
1181
+ logo?: {
1182
+ '@type': "ImageObject";
1183
+ url: string;
1184
+ width?: number | undefined;
1185
+ height?: number | undefined;
1186
+ } | undefined;
1187
+ } | undefined;
1188
+ articleBody?: string | undefined;
1189
+ wordCount?: number | undefined;
1190
+ mainEntityOfPage?: string | undefined;
1191
+ keywords?: string | string[] | undefined;
1192
+ articleSection?: string | undefined;
1193
+ inLanguage?: string | undefined;
1194
+ }, {
1195
+ image: string | string[];
1196
+ author: {
1197
+ '@type': "Organization" | "Person";
1198
+ name: string;
1199
+ url?: string | undefined;
1200
+ } | {
1201
+ '@type': "Organization" | "Person";
1202
+ name: string;
1203
+ url?: string | undefined;
1204
+ }[];
1205
+ datePublished: string;
1206
+ headline: string;
1207
+ '@type'?: "BlogPosting" | undefined;
1208
+ '@context'?: "https://schema.org" | undefined;
1209
+ url?: string | undefined;
1210
+ description?: string | undefined;
1211
+ dateModified?: string | undefined;
1212
+ publisher?: {
1213
+ '@type': "Organization";
1214
+ name: string;
1215
+ logo?: {
1216
+ '@type': "ImageObject";
1217
+ url: string;
1218
+ width?: number | undefined;
1219
+ height?: number | undefined;
1220
+ } | undefined;
1221
+ } | undefined;
1222
+ articleBody?: string | undefined;
1223
+ wordCount?: number | undefined;
1224
+ mainEntityOfPage?: string | undefined;
1225
+ keywords?: string | string[] | undefined;
1226
+ articleSection?: string | undefined;
1227
+ inLanguage?: string | undefined;
1228
+ }>;
1229
+ /**
1230
+ * Schema.org NewsArticle validation schema (extends Article)
1231
+ */
1232
+ declare const NewsArticleSchema: z.ZodObject<{
1233
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1234
+ headline: z.ZodString;
1235
+ image: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
1236
+ author: z.ZodUnion<[z.ZodObject<{
1237
+ '@type': z.ZodEnum<["Person", "Organization"]>;
1238
+ name: z.ZodString;
1239
+ url: z.ZodOptional<z.ZodString>;
1240
+ }, "strip", z.ZodTypeAny, {
1241
+ '@type': "Organization" | "Person";
1242
+ name: string;
1243
+ url?: string | undefined;
1244
+ }, {
1245
+ '@type': "Organization" | "Person";
1246
+ name: string;
1247
+ url?: string | undefined;
1248
+ }>, z.ZodArray<z.ZodObject<{
1249
+ '@type': z.ZodEnum<["Person", "Organization"]>;
1250
+ name: z.ZodString;
1251
+ url: z.ZodOptional<z.ZodString>;
1252
+ }, "strip", z.ZodTypeAny, {
1253
+ '@type': "Organization" | "Person";
1254
+ name: string;
1255
+ url?: string | undefined;
1256
+ }, {
1257
+ '@type': "Organization" | "Person";
1258
+ name: string;
1259
+ url?: string | undefined;
1260
+ }>, "many">]>;
1261
+ datePublished: z.ZodString;
1262
+ dateModified: z.ZodOptional<z.ZodString>;
1263
+ publisher: z.ZodOptional<z.ZodObject<{
1264
+ '@type': z.ZodLiteral<"Organization">;
1265
+ name: z.ZodString;
1266
+ logo: z.ZodOptional<z.ZodObject<{
1267
+ '@type': z.ZodLiteral<"ImageObject">;
1268
+ url: z.ZodString;
1269
+ width: z.ZodOptional<z.ZodNumber>;
1270
+ height: z.ZodOptional<z.ZodNumber>;
1271
+ }, "strip", z.ZodTypeAny, {
1272
+ '@type': "ImageObject";
1273
+ url: string;
1274
+ width?: number | undefined;
1275
+ height?: number | undefined;
1276
+ }, {
1277
+ '@type': "ImageObject";
1278
+ url: string;
1279
+ width?: number | undefined;
1280
+ height?: number | undefined;
1281
+ }>>;
1282
+ }, "strip", z.ZodTypeAny, {
1283
+ '@type': "Organization";
1284
+ name: string;
1285
+ logo?: {
1286
+ '@type': "ImageObject";
1287
+ url: string;
1288
+ width?: number | undefined;
1289
+ height?: number | undefined;
1290
+ } | undefined;
1291
+ }, {
1292
+ '@type': "Organization";
1293
+ name: string;
1294
+ logo?: {
1295
+ '@type': "ImageObject";
1296
+ url: string;
1297
+ width?: number | undefined;
1298
+ height?: number | undefined;
1299
+ } | undefined;
1300
+ }>>;
1301
+ description: z.ZodOptional<z.ZodString>;
1302
+ articleBody: z.ZodOptional<z.ZodString>;
1303
+ wordCount: z.ZodOptional<z.ZodNumber>;
1304
+ url: z.ZodOptional<z.ZodString>;
1305
+ mainEntityOfPage: z.ZodOptional<z.ZodString>;
1306
+ keywords: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
1307
+ articleSection: z.ZodOptional<z.ZodString>;
1308
+ inLanguage: z.ZodOptional<z.ZodString>;
1309
+ } & {
1310
+ '@type': z.ZodDefault<z.ZodLiteral<"NewsArticle">>;
1311
+ dateline: z.ZodOptional<z.ZodString>;
1312
+ }, "strip", z.ZodTypeAny, {
1313
+ '@type': "NewsArticle";
1314
+ '@context': "https://schema.org";
1315
+ image: string | string[];
1316
+ author: {
1317
+ '@type': "Organization" | "Person";
1318
+ name: string;
1319
+ url?: string | undefined;
1320
+ } | {
1321
+ '@type': "Organization" | "Person";
1322
+ name: string;
1323
+ url?: string | undefined;
1324
+ }[];
1325
+ datePublished: string;
1326
+ headline: string;
1327
+ url?: string | undefined;
1328
+ description?: string | undefined;
1329
+ dateModified?: string | undefined;
1330
+ publisher?: {
1331
+ '@type': "Organization";
1332
+ name: string;
1333
+ logo?: {
1334
+ '@type': "ImageObject";
1335
+ url: string;
1336
+ width?: number | undefined;
1337
+ height?: number | undefined;
1338
+ } | undefined;
1339
+ } | undefined;
1340
+ articleBody?: string | undefined;
1341
+ wordCount?: number | undefined;
1342
+ mainEntityOfPage?: string | undefined;
1343
+ keywords?: string | string[] | undefined;
1344
+ articleSection?: string | undefined;
1345
+ inLanguage?: string | undefined;
1346
+ dateline?: string | undefined;
1347
+ }, {
1348
+ image: string | string[];
1349
+ author: {
1350
+ '@type': "Organization" | "Person";
1351
+ name: string;
1352
+ url?: string | undefined;
1353
+ } | {
1354
+ '@type': "Organization" | "Person";
1355
+ name: string;
1356
+ url?: string | undefined;
1357
+ }[];
1358
+ datePublished: string;
1359
+ headline: string;
1360
+ '@type'?: "NewsArticle" | undefined;
1361
+ '@context'?: "https://schema.org" | undefined;
1362
+ url?: string | undefined;
1363
+ description?: string | undefined;
1364
+ dateModified?: string | undefined;
1365
+ publisher?: {
1366
+ '@type': "Organization";
1367
+ name: string;
1368
+ logo?: {
1369
+ '@type': "ImageObject";
1370
+ url: string;
1371
+ width?: number | undefined;
1372
+ height?: number | undefined;
1373
+ } | undefined;
1374
+ } | undefined;
1375
+ articleBody?: string | undefined;
1376
+ wordCount?: number | undefined;
1377
+ mainEntityOfPage?: string | undefined;
1378
+ keywords?: string | string[] | undefined;
1379
+ articleSection?: string | undefined;
1380
+ inLanguage?: string | undefined;
1381
+ dateline?: string | undefined;
1382
+ }>;
1383
+ /**
1384
+ * TypeScript types inferred from Zod schemas
1385
+ */
1386
+ type Article = z.infer<typeof ArticleSchema>;
1387
+ type ArticleInput = z.input<typeof ArticleSchema>;
1388
+ type BlogPosting = z.infer<typeof BlogPostingSchema>;
1389
+ type NewsArticle = z.infer<typeof NewsArticleSchema>;
1390
+
1391
+ /**
1392
+ * Zod schema validation for Schema.org FAQPage type
1393
+ * @module schemas/faq
1394
+ */
1395
+
1396
+ /**
1397
+ * Schema.org Question validation schema
1398
+ */
1399
+ declare const QuestionSchema: z.ZodObject<{
1400
+ '@type': z.ZodDefault<z.ZodLiteral<"Question">>;
1401
+ name: z.ZodString;
1402
+ acceptedAnswer: z.ZodObject<{
1403
+ '@type': z.ZodDefault<z.ZodLiteral<"Answer">>;
1404
+ text: z.ZodString;
1405
+ }, "strip", z.ZodTypeAny, {
1406
+ '@type': "Answer";
1407
+ text: string;
1408
+ }, {
1409
+ text: string;
1410
+ '@type'?: "Answer" | undefined;
1411
+ }>;
1412
+ }, "strip", z.ZodTypeAny, {
1413
+ '@type': "Question";
1414
+ name: string;
1415
+ acceptedAnswer: {
1416
+ '@type': "Answer";
1417
+ text: string;
1418
+ };
1419
+ }, {
1420
+ name: string;
1421
+ acceptedAnswer: {
1422
+ text: string;
1423
+ '@type'?: "Answer" | undefined;
1424
+ };
1425
+ '@type'?: "Question" | undefined;
1426
+ }>;
1427
+ /**
1428
+ * Schema.org FAQPage validation schema
1429
+ *
1430
+ * @see https://schema.org/FAQPage
1431
+ * @see https://developers.google.com/search/docs/appearance/structured-data/faqpage
1432
+ */
1433
+ declare const FAQPageSchema: z.ZodObject<{
1434
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1435
+ '@type': z.ZodDefault<z.ZodLiteral<"FAQPage">>;
1436
+ mainEntity: z.ZodArray<z.ZodObject<{
1437
+ '@type': z.ZodDefault<z.ZodLiteral<"Question">>;
1438
+ name: z.ZodString;
1439
+ acceptedAnswer: z.ZodObject<{
1440
+ '@type': z.ZodDefault<z.ZodLiteral<"Answer">>;
1441
+ text: z.ZodString;
1442
+ }, "strip", z.ZodTypeAny, {
1443
+ '@type': "Answer";
1444
+ text: string;
1445
+ }, {
1446
+ text: string;
1447
+ '@type'?: "Answer" | undefined;
1448
+ }>;
1449
+ }, "strip", z.ZodTypeAny, {
1450
+ '@type': "Question";
1451
+ name: string;
1452
+ acceptedAnswer: {
1453
+ '@type': "Answer";
1454
+ text: string;
1455
+ };
1456
+ }, {
1457
+ name: string;
1458
+ acceptedAnswer: {
1459
+ text: string;
1460
+ '@type'?: "Answer" | undefined;
1461
+ };
1462
+ '@type'?: "Question" | undefined;
1463
+ }>, "many">;
1464
+ }, "strip", z.ZodTypeAny, {
1465
+ '@type': "FAQPage";
1466
+ '@context': "https://schema.org";
1467
+ mainEntity: {
1468
+ '@type': "Question";
1469
+ name: string;
1470
+ acceptedAnswer: {
1471
+ '@type': "Answer";
1472
+ text: string;
1473
+ };
1474
+ }[];
1475
+ }, {
1476
+ mainEntity: {
1477
+ name: string;
1478
+ acceptedAnswer: {
1479
+ text: string;
1480
+ '@type'?: "Answer" | undefined;
1481
+ };
1482
+ '@type'?: "Question" | undefined;
1483
+ }[];
1484
+ '@type'?: "FAQPage" | undefined;
1485
+ '@context'?: "https://schema.org" | undefined;
1486
+ }>;
1487
+ /**
1488
+ * TypeScript types inferred from Zod schemas
1489
+ */
1490
+ type Question = z.infer<typeof QuestionSchema>;
1491
+ type FAQPage = z.infer<typeof FAQPageSchema>;
1492
+ type FAQPageInput = z.input<typeof FAQPageSchema>;
1493
+
1494
+ /**
1495
+ * Zod schema validation for Schema.org BreadcrumbList type
1496
+ * @module schemas/breadcrumb
1497
+ */
1498
+
1499
+ /**
1500
+ * Schema.org ListItem validation schema
1501
+ */
1502
+ declare const ListItemSchema: z.ZodObject<{
1503
+ '@type': z.ZodDefault<z.ZodLiteral<"ListItem">>;
1504
+ position: z.ZodNumber;
1505
+ name: z.ZodString;
1506
+ item: z.ZodOptional<z.ZodString>;
1507
+ }, "strip", z.ZodTypeAny, {
1508
+ '@type': "ListItem";
1509
+ name: string;
1510
+ position: number;
1511
+ item?: string | undefined;
1512
+ }, {
1513
+ name: string;
1514
+ position: number;
1515
+ '@type'?: "ListItem" | undefined;
1516
+ item?: string | undefined;
1517
+ }>;
1518
+ /**
1519
+ * Schema.org BreadcrumbList validation schema
1520
+ *
1521
+ * @see https://schema.org/BreadcrumbList
1522
+ * @see https://developers.google.com/search/docs/appearance/structured-data/breadcrumb
1523
+ */
1524
+ declare const BreadcrumbListSchema: z.ZodObject<{
1525
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1526
+ '@type': z.ZodDefault<z.ZodLiteral<"BreadcrumbList">>;
1527
+ itemListElement: z.ZodArray<z.ZodObject<{
1528
+ '@type': z.ZodDefault<z.ZodLiteral<"ListItem">>;
1529
+ position: z.ZodNumber;
1530
+ name: z.ZodString;
1531
+ item: z.ZodOptional<z.ZodString>;
1532
+ }, "strip", z.ZodTypeAny, {
1533
+ '@type': "ListItem";
1534
+ name: string;
1535
+ position: number;
1536
+ item?: string | undefined;
1537
+ }, {
1538
+ name: string;
1539
+ position: number;
1540
+ '@type'?: "ListItem" | undefined;
1541
+ item?: string | undefined;
1542
+ }>, "many">;
1543
+ }, "strip", z.ZodTypeAny, {
1544
+ '@type': "BreadcrumbList";
1545
+ '@context': "https://schema.org";
1546
+ itemListElement: {
1547
+ '@type': "ListItem";
1548
+ name: string;
1549
+ position: number;
1550
+ item?: string | undefined;
1551
+ }[];
1552
+ }, {
1553
+ itemListElement: {
1554
+ name: string;
1555
+ position: number;
1556
+ '@type'?: "ListItem" | undefined;
1557
+ item?: string | undefined;
1558
+ }[];
1559
+ '@type'?: "BreadcrumbList" | undefined;
1560
+ '@context'?: "https://schema.org" | undefined;
1561
+ }>;
1562
+ /**
1563
+ * TypeScript types inferred from Zod schemas
1564
+ */
1565
+ type ListItem = z.infer<typeof ListItemSchema>;
1566
+ type BreadcrumbList = z.infer<typeof BreadcrumbListSchema>;
1567
+ type BreadcrumbListInput = z.input<typeof BreadcrumbListSchema>;
1568
+
1569
+ /**
1570
+ * Zod schema validation for Schema.org WebPage type
1571
+ * @module schemas/webpage
1572
+ */
1573
+
1574
+ /**
1575
+ * Schema.org WebPage validation schema
1576
+ *
1577
+ * @see https://schema.org/WebPage
1578
+ */
1579
+ declare const WebPageSchema: z.ZodObject<{
1580
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1581
+ '@type': z.ZodDefault<z.ZodLiteral<"WebPage">>;
1582
+ name: z.ZodString;
1583
+ description: z.ZodOptional<z.ZodString>;
1584
+ url: z.ZodString;
1585
+ inLanguage: z.ZodOptional<z.ZodString>;
1586
+ isPartOf: z.ZodOptional<z.ZodObject<{
1587
+ '@type': z.ZodLiteral<"WebSite">;
1588
+ name: z.ZodString;
1589
+ url: z.ZodString;
1590
+ }, "strip", z.ZodTypeAny, {
1591
+ '@type': "WebSite";
1592
+ name: string;
1593
+ url: string;
1594
+ }, {
1595
+ '@type': "WebSite";
1596
+ name: string;
1597
+ url: string;
1598
+ }>>;
1599
+ breadcrumb: z.ZodOptional<z.ZodObject<{
1600
+ '@type': z.ZodLiteral<"BreadcrumbList">;
1601
+ }, "strip", z.ZodTypeAny, {
1602
+ '@type': "BreadcrumbList";
1603
+ }, {
1604
+ '@type': "BreadcrumbList";
1605
+ }>>;
1606
+ datePublished: z.ZodOptional<z.ZodString>;
1607
+ dateModified: z.ZodOptional<z.ZodString>;
1608
+ author: z.ZodOptional<z.ZodObject<{
1609
+ '@type': z.ZodEnum<["Person", "Organization"]>;
1610
+ name: z.ZodString;
1611
+ }, "strip", z.ZodTypeAny, {
1612
+ '@type': "Organization" | "Person";
1613
+ name: string;
1614
+ }, {
1615
+ '@type': "Organization" | "Person";
1616
+ name: string;
1617
+ }>>;
1618
+ }, "strip", z.ZodTypeAny, {
1619
+ '@type': "WebPage";
1620
+ '@context': "https://schema.org";
1621
+ name: string;
1622
+ url: string;
1623
+ description?: string | undefined;
1624
+ author?: {
1625
+ '@type': "Organization" | "Person";
1626
+ name: string;
1627
+ } | undefined;
1628
+ datePublished?: string | undefined;
1629
+ dateModified?: string | undefined;
1630
+ inLanguage?: string | undefined;
1631
+ isPartOf?: {
1632
+ '@type': "WebSite";
1633
+ name: string;
1634
+ url: string;
1635
+ } | undefined;
1636
+ breadcrumb?: {
1637
+ '@type': "BreadcrumbList";
1638
+ } | undefined;
1639
+ }, {
1640
+ name: string;
1641
+ url: string;
1642
+ '@type'?: "WebPage" | undefined;
1643
+ '@context'?: "https://schema.org" | undefined;
1644
+ description?: string | undefined;
1645
+ author?: {
1646
+ '@type': "Organization" | "Person";
1647
+ name: string;
1648
+ } | undefined;
1649
+ datePublished?: string | undefined;
1650
+ dateModified?: string | undefined;
1651
+ inLanguage?: string | undefined;
1652
+ isPartOf?: {
1653
+ '@type': "WebSite";
1654
+ name: string;
1655
+ url: string;
1656
+ } | undefined;
1657
+ breadcrumb?: {
1658
+ '@type': "BreadcrumbList";
1659
+ } | undefined;
1660
+ }>;
1661
+ /**
1662
+ * TypeScript types inferred from Zod schemas
1663
+ */
1664
+ type WebPage = z.infer<typeof WebPageSchema>;
1665
+ type WebPageInput = z.input<typeof WebPageSchema>;
1666
+
1667
+ /**
1668
+ * Zod schema validation for Schema.org LocalBusiness type
1669
+ * @module schemas/localbusiness
1670
+ */
1671
+
1672
+ /**
1673
+ * Geographic coordinates schema
1674
+ */
1675
+ declare const GeoCoordinatesSchema: z.ZodObject<{
1676
+ '@type': z.ZodDefault<z.ZodLiteral<"GeoCoordinates">>;
1677
+ latitude: z.ZodNumber;
1678
+ longitude: z.ZodNumber;
1679
+ }, "strip", z.ZodTypeAny, {
1680
+ '@type': "GeoCoordinates";
1681
+ latitude: number;
1682
+ longitude: number;
1683
+ }, {
1684
+ latitude: number;
1685
+ longitude: number;
1686
+ '@type'?: "GeoCoordinates" | undefined;
1687
+ }>;
1688
+ /**
1689
+ * Opening hours specification schema
1690
+ */
1691
+ declare const OpeningHoursSchema: z.ZodObject<{
1692
+ '@type': z.ZodDefault<z.ZodLiteral<"OpeningHoursSpecification">>;
1693
+ dayOfWeek: z.ZodUnion<[z.ZodEnum<["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]>, z.ZodArray<z.ZodEnum<["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]>, "many">]>;
1694
+ opens: z.ZodString;
1695
+ closes: z.ZodString;
1696
+ }, "strip", z.ZodTypeAny, {
1697
+ '@type': "OpeningHoursSpecification";
1698
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1699
+ opens: string;
1700
+ closes: string;
1701
+ }, {
1702
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1703
+ opens: string;
1704
+ closes: string;
1705
+ '@type'?: "OpeningHoursSpecification" | undefined;
1706
+ }>;
1707
+ /**
1708
+ * Schema.org LocalBusiness validation schema
1709
+ *
1710
+ * @see https://schema.org/LocalBusiness
1711
+ * @see https://developers.google.com/search/docs/appearance/structured-data/local-business
1712
+ */
1713
+ declare const LocalBusinessSchema: z.ZodObject<{
1714
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1715
+ '@type': z.ZodDefault<z.ZodString>;
1716
+ name: z.ZodString;
1717
+ image: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
1718
+ address: z.ZodObject<{
1719
+ '@type': z.ZodDefault<z.ZodLiteral<"PostalAddress">>;
1720
+ streetAddress: z.ZodOptional<z.ZodString>;
1721
+ addressLocality: z.ZodOptional<z.ZodString>;
1722
+ addressRegion: z.ZodOptional<z.ZodString>;
1723
+ postalCode: z.ZodOptional<z.ZodString>;
1724
+ addressCountry: z.ZodOptional<z.ZodString>;
1725
+ }, "strip", z.ZodTypeAny, {
1726
+ '@type': "PostalAddress";
1727
+ streetAddress?: string | undefined;
1728
+ addressLocality?: string | undefined;
1729
+ addressRegion?: string | undefined;
1730
+ postalCode?: string | undefined;
1731
+ addressCountry?: string | undefined;
1732
+ }, {
1733
+ '@type'?: "PostalAddress" | undefined;
1734
+ streetAddress?: string | undefined;
1735
+ addressLocality?: string | undefined;
1736
+ addressRegion?: string | undefined;
1737
+ postalCode?: string | undefined;
1738
+ addressCountry?: string | undefined;
1739
+ }>;
1740
+ '@id': z.ZodOptional<z.ZodString>;
1741
+ url: z.ZodOptional<z.ZodString>;
1742
+ telephone: z.ZodOptional<z.ZodString>;
1743
+ priceRange: z.ZodOptional<z.ZodString>;
1744
+ geo: z.ZodOptional<z.ZodObject<{
1745
+ '@type': z.ZodDefault<z.ZodLiteral<"GeoCoordinates">>;
1746
+ latitude: z.ZodNumber;
1747
+ longitude: z.ZodNumber;
1748
+ }, "strip", z.ZodTypeAny, {
1749
+ '@type': "GeoCoordinates";
1750
+ latitude: number;
1751
+ longitude: number;
1752
+ }, {
1753
+ latitude: number;
1754
+ longitude: number;
1755
+ '@type'?: "GeoCoordinates" | undefined;
1756
+ }>>;
1757
+ openingHoursSpecification: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
1758
+ '@type': z.ZodDefault<z.ZodLiteral<"OpeningHoursSpecification">>;
1759
+ dayOfWeek: z.ZodUnion<[z.ZodEnum<["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]>, z.ZodArray<z.ZodEnum<["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]>, "many">]>;
1760
+ opens: z.ZodString;
1761
+ closes: z.ZodString;
1762
+ }, "strip", z.ZodTypeAny, {
1763
+ '@type': "OpeningHoursSpecification";
1764
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1765
+ opens: string;
1766
+ closes: string;
1767
+ }, {
1768
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1769
+ opens: string;
1770
+ closes: string;
1771
+ '@type'?: "OpeningHoursSpecification" | undefined;
1772
+ }>, z.ZodArray<z.ZodObject<{
1773
+ '@type': z.ZodDefault<z.ZodLiteral<"OpeningHoursSpecification">>;
1774
+ dayOfWeek: z.ZodUnion<[z.ZodEnum<["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]>, z.ZodArray<z.ZodEnum<["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]>, "many">]>;
1775
+ opens: z.ZodString;
1776
+ closes: z.ZodString;
1777
+ }, "strip", z.ZodTypeAny, {
1778
+ '@type': "OpeningHoursSpecification";
1779
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1780
+ opens: string;
1781
+ closes: string;
1782
+ }, {
1783
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1784
+ opens: string;
1785
+ closes: string;
1786
+ '@type'?: "OpeningHoursSpecification" | undefined;
1787
+ }>, "many">]>>;
1788
+ aggregateRating: z.ZodOptional<z.ZodObject<{
1789
+ '@type': z.ZodLiteral<"AggregateRating">;
1790
+ ratingValue: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
1791
+ reviewCount: z.ZodNumber;
1792
+ }, "strip", z.ZodTypeAny, {
1793
+ '@type': "AggregateRating";
1794
+ ratingValue: string | number;
1795
+ reviewCount: number;
1796
+ }, {
1797
+ '@type': "AggregateRating";
1798
+ ratingValue: string | number;
1799
+ reviewCount: number;
1800
+ }>>;
1801
+ description: z.ZodOptional<z.ZodString>;
1802
+ servesCuisine: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
1803
+ menu: z.ZodOptional<z.ZodString>;
1804
+ acceptsReservations: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
1805
+ paymentAccepted: z.ZodOptional<z.ZodString>;
1806
+ }, "strip", z.ZodTypeAny, {
1807
+ '@type': string;
1808
+ '@context': "https://schema.org";
1809
+ name: string;
1810
+ image: string | string[];
1811
+ address: {
1812
+ '@type': "PostalAddress";
1813
+ streetAddress?: string | undefined;
1814
+ addressLocality?: string | undefined;
1815
+ addressRegion?: string | undefined;
1816
+ postalCode?: string | undefined;
1817
+ addressCountry?: string | undefined;
1818
+ };
1819
+ telephone?: string | undefined;
1820
+ url?: string | undefined;
1821
+ description?: string | undefined;
1822
+ aggregateRating?: {
1823
+ '@type': "AggregateRating";
1824
+ ratingValue: string | number;
1825
+ reviewCount: number;
1826
+ } | undefined;
1827
+ '@id'?: string | undefined;
1828
+ priceRange?: string | undefined;
1829
+ geo?: {
1830
+ '@type': "GeoCoordinates";
1831
+ latitude: number;
1832
+ longitude: number;
1833
+ } | undefined;
1834
+ openingHoursSpecification?: {
1835
+ '@type': "OpeningHoursSpecification";
1836
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1837
+ opens: string;
1838
+ closes: string;
1839
+ } | {
1840
+ '@type': "OpeningHoursSpecification";
1841
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1842
+ opens: string;
1843
+ closes: string;
1844
+ }[] | undefined;
1845
+ servesCuisine?: string | string[] | undefined;
1846
+ menu?: string | undefined;
1847
+ acceptsReservations?: string | boolean | undefined;
1848
+ paymentAccepted?: string | undefined;
1849
+ }, {
1850
+ name: string;
1851
+ image: string | string[];
1852
+ address: {
1853
+ '@type'?: "PostalAddress" | undefined;
1854
+ streetAddress?: string | undefined;
1855
+ addressLocality?: string | undefined;
1856
+ addressRegion?: string | undefined;
1857
+ postalCode?: string | undefined;
1858
+ addressCountry?: string | undefined;
1859
+ };
1860
+ '@type'?: string | undefined;
1861
+ telephone?: string | undefined;
1862
+ '@context'?: "https://schema.org" | undefined;
1863
+ url?: string | undefined;
1864
+ description?: string | undefined;
1865
+ aggregateRating?: {
1866
+ '@type': "AggregateRating";
1867
+ ratingValue: string | number;
1868
+ reviewCount: number;
1869
+ } | undefined;
1870
+ '@id'?: string | undefined;
1871
+ priceRange?: string | undefined;
1872
+ geo?: {
1873
+ latitude: number;
1874
+ longitude: number;
1875
+ '@type'?: "GeoCoordinates" | undefined;
1876
+ } | undefined;
1877
+ openingHoursSpecification?: {
1878
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1879
+ opens: string;
1880
+ closes: string;
1881
+ '@type'?: "OpeningHoursSpecification" | undefined;
1882
+ } | {
1883
+ dayOfWeek: "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday" | ("Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday")[];
1884
+ opens: string;
1885
+ closes: string;
1886
+ '@type'?: "OpeningHoursSpecification" | undefined;
1887
+ }[] | undefined;
1888
+ servesCuisine?: string | string[] | undefined;
1889
+ menu?: string | undefined;
1890
+ acceptsReservations?: string | boolean | undefined;
1891
+ paymentAccepted?: string | undefined;
1892
+ }>;
1893
+ /**
1894
+ * TypeScript types
1895
+ */
1896
+ type LocalBusiness = z.infer<typeof LocalBusinessSchema>;
1897
+ type LocalBusinessInput = z.input<typeof LocalBusinessSchema>;
1898
+ type GeoCoordinates = z.infer<typeof GeoCoordinatesSchema>;
1899
+ type OpeningHours = z.infer<typeof OpeningHoursSchema>;
1900
+
1901
+ /**
1902
+ * Zod schema validation for Schema.org Event type
1903
+ * @module schemas/event
1904
+ */
1905
+
1906
+ /**
1907
+ * Schema.org Place (for event location)
1908
+ */
1909
+ declare const PlaceSchema: z.ZodObject<{
1910
+ '@type': z.ZodDefault<z.ZodLiteral<"Place">>;
1911
+ name: z.ZodString;
1912
+ address: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodObject<{
1913
+ '@type': z.ZodLiteral<"PostalAddress">;
1914
+ streetAddress: z.ZodOptional<z.ZodString>;
1915
+ addressLocality: z.ZodOptional<z.ZodString>;
1916
+ addressRegion: z.ZodOptional<z.ZodString>;
1917
+ postalCode: z.ZodOptional<z.ZodString>;
1918
+ addressCountry: z.ZodOptional<z.ZodString>;
1919
+ }, "strip", z.ZodTypeAny, {
1920
+ '@type': "PostalAddress";
1921
+ streetAddress?: string | undefined;
1922
+ addressLocality?: string | undefined;
1923
+ addressRegion?: string | undefined;
1924
+ postalCode?: string | undefined;
1925
+ addressCountry?: string | undefined;
1926
+ }, {
1927
+ '@type': "PostalAddress";
1928
+ streetAddress?: string | undefined;
1929
+ addressLocality?: string | undefined;
1930
+ addressRegion?: string | undefined;
1931
+ postalCode?: string | undefined;
1932
+ addressCountry?: string | undefined;
1933
+ }>]>>;
1934
+ }, "strip", z.ZodTypeAny, {
1935
+ '@type': "Place";
1936
+ name: string;
1937
+ address?: string | {
1938
+ '@type': "PostalAddress";
1939
+ streetAddress?: string | undefined;
1940
+ addressLocality?: string | undefined;
1941
+ addressRegion?: string | undefined;
1942
+ postalCode?: string | undefined;
1943
+ addressCountry?: string | undefined;
1944
+ } | undefined;
1945
+ }, {
1946
+ name: string;
1947
+ '@type'?: "Place" | undefined;
1948
+ address?: string | {
1949
+ '@type': "PostalAddress";
1950
+ streetAddress?: string | undefined;
1951
+ addressLocality?: string | undefined;
1952
+ addressRegion?: string | undefined;
1953
+ postalCode?: string | undefined;
1954
+ addressCountry?: string | undefined;
1955
+ } | undefined;
1956
+ }>;
1957
+ /**
1958
+ * Schema.org Offer (for event tickets)
1959
+ */
1960
+ declare const EventOfferSchema: z.ZodObject<{
1961
+ '@type': z.ZodDefault<z.ZodLiteral<"Offer">>;
1962
+ url: z.ZodOptional<z.ZodString>;
1963
+ price: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
1964
+ priceCurrency: z.ZodString;
1965
+ availability: z.ZodOptional<z.ZodString>;
1966
+ validFrom: z.ZodOptional<z.ZodString>;
1967
+ }, "strip", z.ZodTypeAny, {
1968
+ '@type': "Offer";
1969
+ price: string | number;
1970
+ priceCurrency: string;
1971
+ url?: string | undefined;
1972
+ availability?: string | undefined;
1973
+ validFrom?: string | undefined;
1974
+ }, {
1975
+ price: string | number;
1976
+ priceCurrency: string;
1977
+ '@type'?: "Offer" | undefined;
1978
+ url?: string | undefined;
1979
+ availability?: string | undefined;
1980
+ validFrom?: string | undefined;
1981
+ }>;
1982
+ /**
1983
+ * Schema.org Event validation schema
1984
+ *
1985
+ * @see https://schema.org/Event
1986
+ * @see https://developers.google.com/search/docs/appearance/structured-data/event
1987
+ */
1988
+ declare const EventSchema: z.ZodObject<{
1989
+ '@context': z.ZodDefault<z.ZodLiteral<"https://schema.org">>;
1990
+ '@type': z.ZodDefault<z.ZodEnum<["Event", "MusicEvent", "BusinessEvent", "SportsEvent", "TheaterEvent", "EducationEvent"]>>;
1991
+ name: z.ZodString;
1992
+ startDate: z.ZodString;
1993
+ endDate: z.ZodOptional<z.ZodString>;
1994
+ eventStatus: z.ZodOptional<z.ZodEnum<["https://schema.org/EventScheduled", "https://schema.org/EventCancelled", "https://schema.org/EventMovedOnline", "https://schema.org/EventPostponed", "https://schema.org/EventRescheduled"]>>;
1995
+ eventAttendanceMode: z.ZodOptional<z.ZodEnum<["https://schema.org/OfflineEventAttendanceMode", "https://schema.org/OnlineEventAttendanceMode", "https://schema.org/MixedEventAttendanceMode"]>>;
1996
+ location: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
1997
+ '@type': z.ZodDefault<z.ZodLiteral<"Place">>;
1998
+ name: z.ZodString;
1999
+ address: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodObject<{
2000
+ '@type': z.ZodLiteral<"PostalAddress">;
2001
+ streetAddress: z.ZodOptional<z.ZodString>;
2002
+ addressLocality: z.ZodOptional<z.ZodString>;
2003
+ addressRegion: z.ZodOptional<z.ZodString>;
2004
+ postalCode: z.ZodOptional<z.ZodString>;
2005
+ addressCountry: z.ZodOptional<z.ZodString>;
2006
+ }, "strip", z.ZodTypeAny, {
2007
+ '@type': "PostalAddress";
2008
+ streetAddress?: string | undefined;
2009
+ addressLocality?: string | undefined;
2010
+ addressRegion?: string | undefined;
2011
+ postalCode?: string | undefined;
2012
+ addressCountry?: string | undefined;
2013
+ }, {
2014
+ '@type': "PostalAddress";
2015
+ streetAddress?: string | undefined;
2016
+ addressLocality?: string | undefined;
2017
+ addressRegion?: string | undefined;
2018
+ postalCode?: string | undefined;
2019
+ addressCountry?: string | undefined;
2020
+ }>]>>;
2021
+ }, "strip", z.ZodTypeAny, {
2022
+ '@type': "Place";
2023
+ name: string;
2024
+ address?: string | {
2025
+ '@type': "PostalAddress";
2026
+ streetAddress?: string | undefined;
2027
+ addressLocality?: string | undefined;
2028
+ addressRegion?: string | undefined;
2029
+ postalCode?: string | undefined;
2030
+ addressCountry?: string | undefined;
2031
+ } | undefined;
2032
+ }, {
2033
+ name: string;
2034
+ '@type'?: "Place" | undefined;
2035
+ address?: string | {
2036
+ '@type': "PostalAddress";
2037
+ streetAddress?: string | undefined;
2038
+ addressLocality?: string | undefined;
2039
+ addressRegion?: string | undefined;
2040
+ postalCode?: string | undefined;
2041
+ addressCountry?: string | undefined;
2042
+ } | undefined;
2043
+ }>, z.ZodString]>>;
2044
+ image: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
2045
+ description: z.ZodOptional<z.ZodString>;
2046
+ organizer: z.ZodOptional<z.ZodObject<{
2047
+ '@type': z.ZodEnum<["Organization", "Person"]>;
2048
+ name: z.ZodString;
2049
+ url: z.ZodOptional<z.ZodString>;
2050
+ }, "strip", z.ZodTypeAny, {
2051
+ '@type': "Organization" | "Person";
2052
+ name: string;
2053
+ url?: string | undefined;
2054
+ }, {
2055
+ '@type': "Organization" | "Person";
2056
+ name: string;
2057
+ url?: string | undefined;
2058
+ }>>;
2059
+ performer: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
2060
+ '@type': z.ZodEnum<["Person", "PerformingGroup"]>;
2061
+ name: z.ZodString;
2062
+ }, "strip", z.ZodTypeAny, {
2063
+ '@type': "Person" | "PerformingGroup";
2064
+ name: string;
2065
+ }, {
2066
+ '@type': "Person" | "PerformingGroup";
2067
+ name: string;
2068
+ }>, z.ZodArray<z.ZodObject<{
2069
+ '@type': z.ZodEnum<["Person", "PerformingGroup"]>;
2070
+ name: z.ZodString;
2071
+ }, "strip", z.ZodTypeAny, {
2072
+ '@type': "Person" | "PerformingGroup";
2073
+ name: string;
2074
+ }, {
2075
+ '@type': "Person" | "PerformingGroup";
2076
+ name: string;
2077
+ }>, "many">]>>;
2078
+ offers: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
2079
+ '@type': z.ZodDefault<z.ZodLiteral<"Offer">>;
2080
+ url: z.ZodOptional<z.ZodString>;
2081
+ price: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
2082
+ priceCurrency: z.ZodString;
2083
+ availability: z.ZodOptional<z.ZodString>;
2084
+ validFrom: z.ZodOptional<z.ZodString>;
2085
+ }, "strip", z.ZodTypeAny, {
2086
+ '@type': "Offer";
2087
+ price: string | number;
2088
+ priceCurrency: string;
2089
+ url?: string | undefined;
2090
+ availability?: string | undefined;
2091
+ validFrom?: string | undefined;
2092
+ }, {
2093
+ price: string | number;
2094
+ priceCurrency: string;
2095
+ '@type'?: "Offer" | undefined;
2096
+ url?: string | undefined;
2097
+ availability?: string | undefined;
2098
+ validFrom?: string | undefined;
2099
+ }>, z.ZodArray<z.ZodObject<{
2100
+ '@type': z.ZodDefault<z.ZodLiteral<"Offer">>;
2101
+ url: z.ZodOptional<z.ZodString>;
2102
+ price: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
2103
+ priceCurrency: z.ZodString;
2104
+ availability: z.ZodOptional<z.ZodString>;
2105
+ validFrom: z.ZodOptional<z.ZodString>;
2106
+ }, "strip", z.ZodTypeAny, {
2107
+ '@type': "Offer";
2108
+ price: string | number;
2109
+ priceCurrency: string;
2110
+ url?: string | undefined;
2111
+ availability?: string | undefined;
2112
+ validFrom?: string | undefined;
2113
+ }, {
2114
+ price: string | number;
2115
+ priceCurrency: string;
2116
+ '@type'?: "Offer" | undefined;
2117
+ url?: string | undefined;
2118
+ availability?: string | undefined;
2119
+ validFrom?: string | undefined;
2120
+ }>, "many">]>>;
2121
+ url: z.ZodOptional<z.ZodString>;
2122
+ }, "strip", z.ZodTypeAny, {
2123
+ '@type': "Event" | "MusicEvent" | "BusinessEvent" | "SportsEvent" | "TheaterEvent" | "EducationEvent";
2124
+ '@context': "https://schema.org";
2125
+ name: string;
2126
+ startDate: string;
2127
+ url?: string | undefined;
2128
+ image?: string | string[] | undefined;
2129
+ description?: string | undefined;
2130
+ offers?: {
2131
+ '@type': "Offer";
2132
+ price: string | number;
2133
+ priceCurrency: string;
2134
+ url?: string | undefined;
2135
+ availability?: string | undefined;
2136
+ validFrom?: string | undefined;
2137
+ } | {
2138
+ '@type': "Offer";
2139
+ price: string | number;
2140
+ priceCurrency: string;
2141
+ url?: string | undefined;
2142
+ availability?: string | undefined;
2143
+ validFrom?: string | undefined;
2144
+ }[] | undefined;
2145
+ endDate?: string | undefined;
2146
+ eventStatus?: "https://schema.org/EventScheduled" | "https://schema.org/EventCancelled" | "https://schema.org/EventMovedOnline" | "https://schema.org/EventPostponed" | "https://schema.org/EventRescheduled" | undefined;
2147
+ eventAttendanceMode?: "https://schema.org/OfflineEventAttendanceMode" | "https://schema.org/OnlineEventAttendanceMode" | "https://schema.org/MixedEventAttendanceMode" | undefined;
2148
+ location?: string | {
2149
+ '@type': "Place";
2150
+ name: string;
2151
+ address?: string | {
2152
+ '@type': "PostalAddress";
2153
+ streetAddress?: string | undefined;
2154
+ addressLocality?: string | undefined;
2155
+ addressRegion?: string | undefined;
2156
+ postalCode?: string | undefined;
2157
+ addressCountry?: string | undefined;
2158
+ } | undefined;
2159
+ } | undefined;
2160
+ organizer?: {
2161
+ '@type': "Organization" | "Person";
2162
+ name: string;
2163
+ url?: string | undefined;
2164
+ } | undefined;
2165
+ performer?: {
2166
+ '@type': "Person" | "PerformingGroup";
2167
+ name: string;
2168
+ } | {
2169
+ '@type': "Person" | "PerformingGroup";
2170
+ name: string;
2171
+ }[] | undefined;
2172
+ }, {
2173
+ name: string;
2174
+ startDate: string;
2175
+ '@type'?: "Event" | "MusicEvent" | "BusinessEvent" | "SportsEvent" | "TheaterEvent" | "EducationEvent" | undefined;
2176
+ '@context'?: "https://schema.org" | undefined;
2177
+ url?: string | undefined;
2178
+ image?: string | string[] | undefined;
2179
+ description?: string | undefined;
2180
+ offers?: {
2181
+ price: string | number;
2182
+ priceCurrency: string;
2183
+ '@type'?: "Offer" | undefined;
2184
+ url?: string | undefined;
2185
+ availability?: string | undefined;
2186
+ validFrom?: string | undefined;
2187
+ } | {
2188
+ price: string | number;
2189
+ priceCurrency: string;
2190
+ '@type'?: "Offer" | undefined;
2191
+ url?: string | undefined;
2192
+ availability?: string | undefined;
2193
+ validFrom?: string | undefined;
2194
+ }[] | undefined;
2195
+ endDate?: string | undefined;
2196
+ eventStatus?: "https://schema.org/EventScheduled" | "https://schema.org/EventCancelled" | "https://schema.org/EventMovedOnline" | "https://schema.org/EventPostponed" | "https://schema.org/EventRescheduled" | undefined;
2197
+ eventAttendanceMode?: "https://schema.org/OfflineEventAttendanceMode" | "https://schema.org/OnlineEventAttendanceMode" | "https://schema.org/MixedEventAttendanceMode" | undefined;
2198
+ location?: string | {
2199
+ name: string;
2200
+ '@type'?: "Place" | undefined;
2201
+ address?: string | {
2202
+ '@type': "PostalAddress";
2203
+ streetAddress?: string | undefined;
2204
+ addressLocality?: string | undefined;
2205
+ addressRegion?: string | undefined;
2206
+ postalCode?: string | undefined;
2207
+ addressCountry?: string | undefined;
2208
+ } | undefined;
2209
+ } | undefined;
2210
+ organizer?: {
2211
+ '@type': "Organization" | "Person";
2212
+ name: string;
2213
+ url?: string | undefined;
2214
+ } | undefined;
2215
+ performer?: {
2216
+ '@type': "Person" | "PerformingGroup";
2217
+ name: string;
2218
+ } | {
2219
+ '@type': "Person" | "PerformingGroup";
2220
+ name: string;
2221
+ }[] | undefined;
2222
+ }>;
2223
+ /**
2224
+ * TypeScript types
2225
+ */
2226
+ type Event = z.infer<typeof EventSchema>;
2227
+ type EventInput = z.input<typeof EventSchema>;
2228
+ type Place = z.infer<typeof PlaceSchema>;
2229
+ type EventOffer = z.infer<typeof EventOfferSchema>;
2230
+
2231
+ export { AggregateRatingSchema as A, BlogPostingSchema as B, ContactPointSchema as C, LocalBusinessSchema as D, OpeningHoursSchema as E, FAQPageSchema as F, GeoCoordinatesSchema as G, type LocalBusiness as H, type LocalBusinessInput as I, type GeoCoordinates as J, type OpeningHours as K, ListItemSchema as L, EventSchema as M, NewsArticleSchema as N, OrganizationSchema as O, PostalAddressSchema as P, QuestionSchema as Q, ReviewSchema as R, PlaceSchema as S, EventOfferSchema as T, type Event as U, type EventInput as V, WebPageSchema as W, type Place as X, type EventOffer as Y, type Organization as a, type OrganizationInput as b, PersonSchema as c, type Person as d, type PersonInput as e, ProductSchema as f, OfferSchema as g, type Product as h, type ProductInput as i, type Offer as j, type AggregateRating as k, type Review as l, ArticleSchema as m, type Article as n, type ArticleInput as o, type BlogPosting as p, type NewsArticle as q, type FAQPage as r, type FAQPageInput as s, type Question as t, BreadcrumbListSchema as u, type BreadcrumbList as v, type BreadcrumbListInput as w, type ListItem as x, type WebPage as y, type WebPageInput as z };