@contentful/optimization-api-client 2.0.0 → 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.
@@ -163,10 +163,10 @@ export declare const BatchExperienceEvent: z.ZodMiniDiscriminatedUnion<[z.ZodMin
163
163
  }>;
164
164
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
165
165
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
166
- optimizationId: z.ZodMiniString<string>;
166
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
167
167
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
168
168
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
169
- variantId: z.ZodMiniString<string>;
169
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
170
170
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
171
171
  type: z.ZodMiniLiteral<"exo_node_view">;
172
172
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -538,10 +538,10 @@ export declare const BatchExperienceEventArray: z.ZodMiniArray<z.ZodMiniDiscrimi
538
538
  }>;
539
539
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
540
540
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
541
- optimizationId: z.ZodMiniString<string>;
541
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
542
542
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
543
543
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
544
- variantId: z.ZodMiniString<string>;
544
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
545
545
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
546
546
  type: z.ZodMiniLiteral<"exo_node_view">;
547
547
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -922,10 +922,10 @@ export declare const BatchExperienceRequestData: z.ZodMiniObject<{
922
922
  }>;
923
923
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
924
924
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
925
- optimizationId: z.ZodMiniString<string>;
925
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
926
926
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
927
927
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
928
- variantId: z.ZodMiniString<string>;
928
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
929
929
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
930
930
  type: z.ZodMiniLiteral<"exo_node_view">;
931
931
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -1561,10 +1561,10 @@ export declare const BatchInsightsEvent: z.ZodMiniObject<{
1561
1561
  }>;
1562
1562
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1563
1563
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1564
- optimizationId: z.ZodMiniString<string>;
1564
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1565
1565
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
1566
1566
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1567
- variantId: z.ZodMiniString<string>;
1567
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1568
1568
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1569
1569
  type: z.ZodMiniLiteral<"exo_node_view">;
1570
1570
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -1632,10 +1632,10 @@ export declare const BatchInsightsEvent: z.ZodMiniObject<{
1632
1632
  }>;
1633
1633
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1634
1634
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1635
- optimizationId: z.ZodMiniString<string>;
1635
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1636
1636
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
1637
1637
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1638
- variantId: z.ZodMiniString<string>;
1638
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1639
1639
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1640
1640
  type: z.ZodMiniLiteral<"exo_node_click">;
1641
1641
  }, z.core.$strip>, z.ZodMiniObject<{
@@ -1701,10 +1701,10 @@ export declare const BatchInsightsEvent: z.ZodMiniObject<{
1701
1701
  }>;
1702
1702
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1703
1703
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1704
- optimizationId: z.ZodMiniString<string>;
1704
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1705
1705
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
1706
1706
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1707
- variantId: z.ZodMiniString<string>;
1707
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1708
1708
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1709
1709
  type: z.ZodMiniLiteral<"exo_node_hover">;
1710
1710
  hoverDurationMs: z.ZodMiniNumberFormat;
@@ -1985,10 +1985,10 @@ export declare const BatchInsightsEventArray: z.ZodMiniArray<z.ZodMiniObject<{
1985
1985
  }>;
1986
1986
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1987
1987
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1988
- optimizationId: z.ZodMiniString<string>;
1988
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1989
1989
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
1990
1990
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1991
- variantId: z.ZodMiniString<string>;
1991
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1992
1992
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
1993
1993
  type: z.ZodMiniLiteral<"exo_node_view">;
1994
1994
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -2056,10 +2056,10 @@ export declare const BatchInsightsEventArray: z.ZodMiniArray<z.ZodMiniObject<{
2056
2056
  }>;
2057
2057
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2058
2058
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2059
- optimizationId: z.ZodMiniString<string>;
2059
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2060
2060
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
2061
2061
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2062
- variantId: z.ZodMiniString<string>;
2062
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2063
2063
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2064
2064
  type: z.ZodMiniLiteral<"exo_node_click">;
2065
2065
  }, z.core.$strip>, z.ZodMiniObject<{
@@ -2125,10 +2125,10 @@ export declare const BatchInsightsEventArray: z.ZodMiniArray<z.ZodMiniObject<{
2125
2125
  }>;
2126
2126
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2127
2127
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2128
- optimizationId: z.ZodMiniString<string>;
2128
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2129
2129
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
2130
2130
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2131
- variantId: z.ZodMiniString<string>;
2131
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2132
2132
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2133
2133
  type: z.ZodMiniLiteral<"exo_node_hover">;
2134
2134
  hoverDurationMs: z.ZodMiniNumberFormat;
@@ -2563,10 +2563,10 @@ export declare const ExoClickEvent: z.ZodMiniObject<{
2563
2563
  }>;
2564
2564
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2565
2565
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2566
- optimizationId: z.ZodMiniString<string>;
2566
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2567
2567
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
2568
2568
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2569
- variantId: z.ZodMiniString<string>;
2569
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2570
2570
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2571
2571
  type: z.ZodMiniLiteral<"exo_node_click">;
2572
2572
  }, z.core.$strip>;
@@ -2665,10 +2665,10 @@ export declare const ExoEventProperties: z.ZodMiniObject<{
2665
2665
  }>;
2666
2666
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2667
2667
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2668
- optimizationId: z.ZodMiniString<string>;
2668
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2669
2669
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
2670
2670
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2671
- variantId: z.ZodMiniString<string>;
2671
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2672
2672
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2673
2673
  }, z.core.$strip>;
2674
2674
 
@@ -2747,10 +2747,10 @@ export declare const ExoHoverEvent: z.ZodMiniObject<{
2747
2747
  }>;
2748
2748
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2749
2749
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2750
- optimizationId: z.ZodMiniString<string>;
2750
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2751
2751
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
2752
2752
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2753
- variantId: z.ZodMiniString<string>;
2753
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2754
2754
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2755
2755
  type: z.ZodMiniLiteral<"exo_node_hover">;
2756
2756
  hoverDurationMs: z.ZodMiniNumberFormat;
@@ -2832,10 +2832,10 @@ export declare const ExoViewEvent: z.ZodMiniObject<{
2832
2832
  }>;
2833
2833
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2834
2834
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2835
- optimizationId: z.ZodMiniString<string>;
2835
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2836
2836
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
2837
2837
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2838
- variantId: z.ZodMiniString<string>;
2838
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2839
2839
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
2840
2840
  type: z.ZodMiniLiteral<"exo_node_view">;
2841
2841
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -3109,10 +3109,10 @@ export declare const ExperienceEvent: z.ZodMiniDiscriminatedUnion<[z.ZodMiniObje
3109
3109
  }>;
3110
3110
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3111
3111
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3112
- optimizationId: z.ZodMiniString<string>;
3112
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3113
3113
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
3114
3114
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3115
- variantId: z.ZodMiniString<string>;
3115
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3116
3116
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
3117
3117
  type: z.ZodMiniLiteral<"exo_node_view">;
3118
3118
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -3478,10 +3478,10 @@ export declare const ExperienceEventArray: z.ZodMiniArray<z.ZodMiniDiscriminated
3478
3478
  }>;
3479
3479
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3480
3480
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3481
- optimizationId: z.ZodMiniString<string>;
3481
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3482
3482
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
3483
3483
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3484
- variantId: z.ZodMiniString<string>;
3484
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3485
3485
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
3486
3486
  type: z.ZodMiniLiteral<"exo_node_view">;
3487
3487
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -3865,10 +3865,10 @@ export declare const ExperienceRequestData: z.ZodMiniObject<{
3865
3865
  }>;
3866
3866
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3867
3867
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3868
- optimizationId: z.ZodMiniString<string>;
3868
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3869
3869
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
3870
3870
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3871
- variantId: z.ZodMiniString<string>;
3871
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3872
3872
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
3873
3873
  type: z.ZodMiniLiteral<"exo_node_view">;
3874
3874
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -4756,10 +4756,10 @@ export declare const InsightsEvent: z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject
4756
4756
  }>;
4757
4757
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4758
4758
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
4759
- optimizationId: z.ZodMiniString<string>;
4759
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4760
4760
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
4761
4761
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4762
- variantId: z.ZodMiniString<string>;
4762
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4763
4763
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
4764
4764
  type: z.ZodMiniLiteral<"exo_node_view">;
4765
4765
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -4827,10 +4827,10 @@ export declare const InsightsEvent: z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject
4827
4827
  }>;
4828
4828
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4829
4829
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
4830
- optimizationId: z.ZodMiniString<string>;
4830
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4831
4831
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
4832
4832
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4833
- variantId: z.ZodMiniString<string>;
4833
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4834
4834
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
4835
4835
  type: z.ZodMiniLiteral<"exo_node_click">;
4836
4836
  }, z.core.$strip>, z.ZodMiniObject<{
@@ -4896,10 +4896,10 @@ export declare const InsightsEvent: z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject
4896
4896
  }>;
4897
4897
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4898
4898
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
4899
- optimizationId: z.ZodMiniString<string>;
4899
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4900
4900
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
4901
4901
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4902
- variantId: z.ZodMiniString<string>;
4902
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
4903
4903
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
4904
4904
  type: z.ZodMiniLiteral<"exo_node_hover">;
4905
4905
  hoverDurationMs: z.ZodMiniNumberFormat;
@@ -5162,10 +5162,10 @@ export declare const InsightsEventArray: z.ZodMiniArray<z.ZodMiniDiscriminatedUn
5162
5162
  }>;
5163
5163
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5164
5164
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
5165
- optimizationId: z.ZodMiniString<string>;
5165
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5166
5166
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
5167
5167
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5168
- variantId: z.ZodMiniString<string>;
5168
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5169
5169
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
5170
5170
  type: z.ZodMiniLiteral<"exo_node_view">;
5171
5171
  viewDurationMs: z.ZodMiniNumberFormat;
@@ -5233,10 +5233,10 @@ export declare const InsightsEventArray: z.ZodMiniArray<z.ZodMiniDiscriminatedUn
5233
5233
  }>;
5234
5234
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5235
5235
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
5236
- optimizationId: z.ZodMiniString<string>;
5236
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5237
5237
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
5238
5238
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5239
- variantId: z.ZodMiniString<string>;
5239
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5240
5240
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
5241
5241
  type: z.ZodMiniLiteral<"exo_node_click">;
5242
5242
  }, z.core.$strip>, z.ZodMiniObject<{
@@ -5302,10 +5302,10 @@ export declare const InsightsEventArray: z.ZodMiniArray<z.ZodMiniDiscriminatedUn
5302
5302
  }>;
5303
5303
  entityKindId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5304
5304
  entryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
5305
- optimizationId: z.ZodMiniString<string>;
5305
+ optimizationId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5306
5306
  parameters: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniJSONSchema>>;
5307
5307
  parentExperienceId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5308
- variantId: z.ZodMiniString<string>;
5308
+ variantId: z.ZodMiniOptional<z.ZodMiniString<string>>;
5309
5309
  variantIndex: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
5310
5310
  type: z.ZodMiniLiteral<"exo_node_hover">;
5311
5311
  hoverDurationMs: z.ZodMiniNumberFormat;
@@ -84,10 +84,10 @@ const ExoEventProperties = __rspack_external_zod_mini_edc6895a.extend(UniversalE
84
84
  entityKind: ExoEntityKind,
85
85
  entityKindId: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.string()),
86
86
  entryIds: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.array(__rspack_external_zod_mini_edc6895a.string())),
87
- optimizationId: __rspack_external_zod_mini_edc6895a.string(),
87
+ optimizationId: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.string()),
88
88
  parameters: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.record(__rspack_external_zod_mini_edc6895a.string(), __rspack_external_zod_mini_edc6895a.json())),
89
89
  parentExperienceId: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.string()),
90
- variantId: __rspack_external_zod_mini_edc6895a.string(),
90
+ variantId: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.string()),
91
91
  variantIndex: __rspack_external_zod_mini_edc6895a.optional(__rspack_external_zod_mini_edc6895a.number())
92
92
  });
93
93
  const ExoViewEvent = __rspack_external_zod_mini_edc6895a.extend(ExoEventProperties, {
@@ -1 +1 @@
1
- {"version":3,"file":"api-schemas.mjs","sources":["../src/schemas/experience/event/properties/App.ts","../src/schemas/experience/event/properties/Campaign.ts","../src/schemas/experience/event/properties/Channel.ts","../src/schemas/experience/event/properties/Dictionary.ts","../src/schemas/experience/event/properties/GeoLocation.ts","../src/schemas/experience/event/properties/Library.ts","../src/schemas/experience/event/properties/Page.ts","../src/schemas/experience/event/properties/Properties.ts","../src/schemas/experience/event/properties/Screen.ts","../src/schemas/experience/event/properties/Traits.ts","../src/schemas/experience/event/UniversalEventProperties.ts","../src/schemas/experience/event/ExoEventProperties.ts","../src/schemas/experience/event/ExoViewEvent.ts","../src/schemas/experience/event/IdentifyEvent.ts","../src/schemas/experience/event/PageViewEvent.ts","../src/schemas/experience/event/ScreenViewEvent.ts","../src/schemas/experience/event/TrackEvent.ts","../src/schemas/experience/event/InteractionEventProperties.ts","../src/schemas/experience/event/ViewEvent.ts","../src/schemas/experience/event/BatchExperienceEvent.ts","../src/schemas/experience/event/ExperienceEvent.ts","../src/schemas/experience/ExperienceRequest.ts","../src/schemas/experience/BatchExperienceRequest.ts","../src/schemas/experience/profile/properties/SessionStatistics.ts","../src/schemas/experience/profile/Profile.ts","../src/schemas/experience/ResponseEnvelope.ts","../src/schemas/experience/BatchExperienceResponse.ts","../src/schemas/experience/change/Change.ts","../src/schemas/experience/optimization/SelectedOptimization.ts","../src/schemas/experience/ExperienceResponse.ts","../src/schemas/insights/event/ClickEvent.ts","../src/schemas/insights/event/ExoClickEvent.ts","../src/schemas/insights/event/ExoHoverEvent.ts","../src/schemas/insights/event/HoverEvent.ts","../src/schemas/insights/event/InsightsEvent.ts","../src/schemas/insights/event/BatchInsightsEvent.ts","../src/schemas/validation/parseWithFriendlyError.ts"],"sourcesContent":["import * as z from 'zod/mini'\n\n/**\n * Zod schema describing app-level properties.\n *\n * @remarks\n * These properties typically describe the application that is emitting\n * analytics events, such as its name and version.\n *\n * The entire object is optional; when omitted, no app context is attached.\n *\n * @public\n */\nexport const App = z.optional(\n z.object({\n /**\n * Name of the application.\n */\n name: z.string(),\n\n /**\n * Version of the application.\n */\n version: z.string(),\n }),\n)\n\n/**\n * TypeScript type inferred from {@link App}.\n *\n * @public\n */\nexport type App = z.infer<typeof App>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing campaign attribution properties.\n *\n * @remarks\n * These fields typically mirror UTM parameters used for marketing campaigns.\n *\n * @public\n */\nexport const Campaign = z.object({\n /**\n * Name of the campaign (e.g., `utm_campaign`).\n */\n name: z.optional(z.string()),\n\n /**\n * Campaign source (e.g., `utm_source`).\n */\n source: z.optional(z.string()),\n\n /**\n * Campaign medium (e.g., `utm_medium`).\n */\n medium: z.optional(z.string()),\n\n /**\n * Campaign term (e.g., `utm_term`).\n */\n term: z.optional(z.string()),\n\n /**\n * Campaign content (e.g., `utm_content`).\n */\n content: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link Campaign}.\n *\n * @public\n */\nexport type Campaign = z.infer<typeof Campaign>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing the analytics channel.\n *\n * @remarks\n * Indicates the execution environment where the event originated.\n *\n * - `'mobile'` — Events from native or hybrid mobile apps.\n * - `'server'` — Events emitted from backend/server-side code.\n * - `'web'` — Events from web browsers or web-based clients.\n *\n * @public\n */\nexport const Channel = z.union([z.literal('mobile'), z.literal('server'), z.literal('web')])\n\n/**\n * TypeScript type inferred from {@link Channel}.\n *\n * @public\n */\nexport type Channel = z.infer<typeof Channel>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing a string-to-string dictionary.\n *\n * @remarks\n * Commonly used for query parameters or other small key–value maps.\n *\n * @public\n */\nexport const Dictionary = z.record(z.string(), z.string())\n\n/**\n * TypeScript type inferred from {@link Dictionary}.\n *\n * @public\n */\nexport type Dictionary = z.infer<typeof Dictionary>\n","import * as z from 'zod/mini'\n\n/**\n * Length (in characters) of the expected country code.\n *\n * @remarks\n * Typically corresponds to ISO 3166-1 alpha-2 country codes.\n *\n * @internal\n */\nconst COUNTRY_CODE_LENGTH = 2\n\n/**\n * Zod schema describing geographical coordinates.\n *\n * @remarks\n * Latitude and longitude are expressed in decimal degrees.\n *\n * @internal\n */\nconst Coordinates = z.object({\n /**\n * Latitude component of the coordinates.\n */\n latitude: z.number(),\n\n /**\n * Longitude component of the coordinates.\n */\n longitude: z.number(),\n})\n\n/**\n * Zod schema describing geo-location properties associated with an event.\n *\n * @remarks\n * All properties are optional and can be derived from IP or device data.\n *\n * @public\n */\nexport const GeoLocation = z.object({\n /**\n * Geographical coordinates for the location.\n */\n coordinates: z.optional(Coordinates),\n\n /**\n * City name associated with the location.\n */\n city: z.optional(z.string()),\n\n /**\n * Postal or ZIP code associated with the location.\n */\n postalCode: z.optional(z.string()),\n\n /**\n * Region or state name associated with the location.\n */\n region: z.optional(z.string()),\n\n /**\n * Region or state code associated with the location.\n */\n regionCode: z.optional(z.string()),\n\n /**\n * Country name associated with the location.\n */\n country: z.optional(z.string()),\n\n /**\n * Country code associated with the location.\n *\n * @remarks\n * Validated to exactly COUNTRY_CODE_LENGTH characters, typically\n * an ISO 3166-1 alpha-2 code.\n */\n countryCode: z.optional(z.string().check(z.length(COUNTRY_CODE_LENGTH))),\n\n /**\n * Continent name associated with the location.\n */\n continent: z.optional(z.string()),\n\n /**\n * Time zone identifier associated with the location.\n *\n * @remarks\n * Typically an IANA time zone string (e.g., `\"Europe/Berlin\"`).\n */\n timezone: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link GeoLocation}.\n *\n * @public\n */\nexport type GeoLocation = z.infer<typeof GeoLocation>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing analytics library metadata.\n *\n * @remarks\n * Identifies the client library that produced the event.\n *\n * @public\n */\nexport const Library = z.object({\n /**\n * Name of the SDK/library (e.g., `\"@contentful/optimization-web\"`).\n */\n name: z.string(),\n\n /**\n * Version of the analytics library.\n */\n version: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link Library}.\n *\n * @public\n */\nexport type Library = z.infer<typeof Library>\n","import * as z from 'zod/mini'\nimport { Dictionary } from './Dictionary'\n\n/**\n * Zod schema describing Web page-level properties for events.\n *\n * @remarks\n * The base object describes standard page attributes, while additional\n * JSON properties can be present due to the use of `z.catchall`.\n *\n * @public\n */\nexport const Page = z.catchall(\n z.object({\n /**\n * Path component of the page URL (e.g., `/products/123`).\n */\n path: z.string(),\n\n /**\n * Parsed query parameters for the page.\n */\n query: Dictionary,\n\n /**\n * Referrer URL that led to the current page.\n */\n referrer: z.string(),\n\n /**\n * Raw search string including the leading `?` (e.g., `\"?q=test\"`).\n */\n search: z.string(),\n\n /**\n * Title of the page as seen by the user.\n */\n title: z.optional(z.string()),\n\n /**\n * Full URL of the page.\n */\n url: z.string(),\n }),\n z.json(),\n)\n\n/**\n * TypeScript type inferred from {@link Page}.\n *\n * @public\n */\nexport type Page = z.infer<typeof Page>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing a generic collection of event properties.\n *\n * @remarks\n * Represents an arbitrary JSON-serializable map from string keys to values.\n *\n * @public\n */\nexport const Properties = z.record(z.string(), z.json())\n\n/**\n * TypeScript type inferred from {@link Properties}.\n *\n * @public\n */\nexport type Properties = z.infer<typeof Properties>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing screen-level properties for events.\n *\n * @remarks\n * The base object describes standard screen attributes, while additional\n * JSON properties can be present due to the use of `z.catchall`.\n *\n * @public\n */\nexport const Screen = z.catchall(\n z.object({\n /**\n * Name or label for the screen.\n */\n name: z.string(),\n }),\n z.json(),\n)\n\n/**\n * TypeScript type inferred from {@link Screen}.\n *\n * @public\n */\nexport type Screen = z.infer<typeof Screen>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing user traits / identity properties.\n *\n * @remarks\n * Represents an arbitrary JSON-serializable map from string keys to values.\n * Common traits can include `name`, `plan`, and custom attributes.\n *\n * @public\n */\nexport const Traits = z.record(z.string(), z.json())\n\n/**\n * TypeScript type inferred from {@link Traits}.\n *\n * @public\n */\nexport type Traits = z.infer<typeof Traits>\n","import * as z from 'zod/mini'\nimport { App, Campaign, Channel, GeoLocation, Library, Page, Screen } from './properties'\n\n/**\n * Zod schema describing universal event context properties shared by all\n * analytics events.\n *\n * @remarks\n * The `page` and `screen` properties are optional, but we recommend omitting\n * them for event types that are not `page` or `screen`.\n *\n * @public\n */\nexport const UniversalEventContext = z.object({\n /**\n * Application-level metadata.\n */\n app: App,\n\n /**\n * Campaign attribution metadata.\n */\n campaign: Campaign,\n\n /**\n * GDPR-related consent information.\n */\n gdpr: z.object({\n /**\n * Indicates whether the user has given consent.\n */\n isConsentGiven: z.boolean(),\n }),\n\n /**\n * Analytics library metadata.\n */\n library: Library,\n\n /**\n * Locale identifier of the event (e.g., `\"en-US\"`).\n */\n locale: z.string(),\n\n /**\n * Optional geo-location information associated with the event.\n */\n location: z.optional(GeoLocation),\n\n /**\n * User agent string of the client, if available.\n */\n userAgent: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link UniversalEventContext}.\n *\n * @public\n */\nexport type UniversalEventContext = z.infer<typeof UniversalEventContext>\n\n/**\n * Zod schema describing universal properties shared by all analytics events.\n *\n * @remarks\n * These properties capture common metadata such as channel, context,\n * timestamps, and user identifiers.\n *\n * @public\n */\nexport const UniversalEventProperties = z.object({\n /**\n * Channel from which the event originated.\n *\n * @see {@link Channel}\n */\n channel: Channel,\n\n /**\n * Context object carrying environment and client metadata.\n */\n context: z.extend(UniversalEventContext, {\n page: z.optional(Page),\n screen: z.optional(Screen),\n }),\n\n /**\n * Unique identifier for this message.\n *\n * @remarks\n * Used to deduplicate events across retries and transports.\n */\n messageId: z.string(),\n\n /**\n * Timestamp when the event originally occurred.\n *\n * @remarks\n * ISO 8601 datetime string.\n */\n originalTimestamp: z.iso.datetime(),\n\n /**\n * Timestamp when the event payload was sent.\n *\n * @remarks\n * ISO 8601 datetime string.\n */\n sentAt: z.iso.datetime(),\n\n /**\n * Timestamp when the event was recorded or processed.\n *\n * @remarks\n * ISO 8601 datetime string.\n */\n timestamp: z.iso.datetime(),\n\n /**\n * Identifier of the authenticated user, if known.\n */\n userId: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link UniversalEventProperties}.\n *\n * @public\n */\nexport type UniversalEventProperties = z.infer<typeof UniversalEventProperties>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\n\n/**\n * Zod schema describing the supported kinds of ExO entities.\n *\n * @public\n */\nexport const ExoEntityKind = z.enum(['Experience', 'Fragment', 'InlineFragment', 'InlineComponent'])\n\n/**\n * TypeScript type inferred from {@link ExoEntityKind}.\n *\n * @public\n */\nexport type ExoEntityKind = z.infer<typeof ExoEntityKind>\n\n/**\n * Zod schema describing properties shared by ExO interaction events.\n *\n * @public\n */\nexport const ExoEventProperties = z.extend(UniversalEventProperties, {\n /** Identifier of the rendered ExO entity. */\n entityId: z.string(),\n\n /** Kind of ExO entity represented by this event. */\n entityKind: ExoEntityKind,\n\n /** Optional identifier of the entity's concrete content kind. */\n entityKindId: z.optional(z.string()),\n\n /** Contentful entry identifiers rendered by the entity. */\n entryIds: z.optional(z.array(z.string())),\n\n /** Identifier of the optimization that selected the entity variant. */\n optimizationId: z.string(),\n\n /** Parameter values used to render the entity. */\n parameters: z.optional(z.record(z.string(), z.json())),\n\n /** Identifier of the containing experience, when the entity is nested. */\n parentExperienceId: z.optional(z.string()),\n\n /** Identifier of the selected entity variant. */\n variantId: z.string(),\n\n /** Index of the selected variant when available. */\n variantIndex: z.optional(z.number()),\n})\n\n/**\n * TypeScript type inferred from {@link ExoEventProperties}.\n *\n * @public\n */\nexport type ExoEventProperties = z.infer<typeof ExoEventProperties>\n","import * as z from 'zod/mini'\nimport { ExoEventProperties } from './ExoEventProperties'\n\n/**\n * Zod schema describing an `exo_node_view` event.\n *\n * @public\n */\nexport const ExoViewEvent = z.extend(ExoEventProperties, {\n type: z.literal('exo_node_view'),\n viewDurationMs: z.int().check(z.minimum(0)),\n viewId: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link ExoViewEvent}.\n *\n * @public\n */\nexport type ExoViewEvent = z.infer<typeof ExoViewEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\nimport { Traits } from './properties/Traits'\n\n/**\n * Zod schema describing an `identify` event.\n *\n * @remarks\n * Identify events attach user traits to a known identity.\n *\n * Extends {@link UniversalEventProperties} with a `traits` payload.\n *\n * @public\n */\nexport const IdentifyEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is an identify event.\n */\n type: z.literal('identify'),\n\n /**\n * Traits describing the user.\n *\n * @see {@link Traits}\n */\n traits: Traits,\n})\n\n/**\n * TypeScript type inferred from {@link IdentifyEvent}.\n *\n * @public\n */\nexport type IdentifyEvent = z.infer<typeof IdentifyEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventContext, UniversalEventProperties } from './UniversalEventProperties'\nimport { Page } from './properties'\n\n/**\n * Zod schema describing event context properties specific to page events.\n *\n * @public\n */\nexport const PageEventContext = z.extend(UniversalEventContext, {\n /**\n * Page context for events that occur within a web page.\n */\n page: Page,\n})\n\n/**\n * TypeScript type inferred from {@link PageEventContext}.\n *\n * @public\n */\nexport type PageEventContext = z.infer<typeof PageEventContext>\n\n/**\n * Zod schema describing a `page` view event.\n *\n * @remarks\n * Page view events track visits to web pages and associated context.\n *\n * Extends {@link UniversalEventProperties} with optional `name` and\n * page-level {@link Page} properties.\n *\n * @public\n */\nexport const PageViewEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is a page view.\n */\n type: z.literal('page'),\n\n /**\n * Optional name for the page.\n *\n * @remarks\n * Useful when the logical page name differs from the URL or title.\n */\n name: z.optional(z.string()),\n\n /**\n * Page-level properties such as URL, path, and referrer.\n */\n properties: Page,\n\n /**\n * Override the context property of {@link UniversalEventProperties}\n * with a page-specific context.\n */\n context: PageEventContext,\n})\n\n/**\n * TypeScript type inferred from {@link PageViewEvent}.\n *\n * @public\n */\nexport type PageViewEvent = z.infer<typeof PageViewEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventContext, UniversalEventProperties } from './UniversalEventProperties'\nimport { Properties, Screen } from './properties'\n\n/**\n * Zod schema describing event context properties specific to screen events.\n *\n * @public\n */\nexport const ScreenEventContext = z.extend(UniversalEventContext, {\n /**\n * Screen context for events that occur within a mobile or TV application.\n */\n screen: Screen,\n})\n\n/**\n * TypeScript type inferred from {@link ScreenEventContext}.\n *\n * @public\n */\nexport type ScreenEventContext = z.infer<typeof ScreenEventContext>\n\n/**\n * Zod schema describing a `screen` view event.\n *\n * @remarks\n * Screen view events are typically used by mobile or TV applications\n * to track navigation between screens.\n *\n * Extends {@link UniversalEventProperties}.\n *\n * @public\n */\nexport const ScreenViewEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is a screen view.\n */\n type: z.literal('screen'),\n\n /**\n * Name of the screen being viewed.\n */\n name: z.string(),\n\n /**\n * Optional properties describing the screen context.\n *\n * @see {@link Properties}\n */\n properties: z.optional(Properties),\n\n /**\n * Override the context property of {@link UniversalEventProperties}\n * with a screen-specific context.\n */\n context: ScreenEventContext,\n})\n\n/**\n * TypeScript type inferred from {@link ScreenViewEvent}.\n *\n * @public\n */\nexport type ScreenViewEvent = z.infer<typeof ScreenViewEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\nimport { Properties } from './properties'\n\n/**\n * Zod schema describing a custom `track` event.\n *\n * @remarks\n * Track events capture arbitrary user actions that do not fit into\n * the more specific event types (page, screen, identify, etc.).\n *\n * Extends {@link UniversalEventProperties}.\n *\n * @public\n */\nexport const TrackEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is a track event.\n */\n type: z.literal('track'),\n\n /**\n * Name of the event being tracked.\n */\n event: z.string(),\n\n /**\n * Additional properties describing the event.\n */\n properties: Properties,\n})\n\n/**\n * TypeScript type inferred from {@link TrackEvent}.\n *\n * @public\n */\nexport type TrackEvent = z.infer<typeof TrackEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\n\n/**\n * Zod schema describing shared interaction event properties.\n *\n * @public\n */\nexport const InteractionEventProperties = z.extend(UniversalEventProperties, {\n /**\n * Type of tracked optimization target for the interaction event.\n *\n * - `'Entry'` — A content entry.\n * - `'Variable'` — A Custom Flag or other variable-backed optimization target.\n */\n componentType: z.union([z.literal('Entry'), z.literal('Variable')]),\n\n /**\n * Contentful entry ID or flag key corresponding to the interaction.\n */\n componentId: z.string(),\n\n /**\n * Identifier of the experience that rendered this entry or flag.\n *\n * @remarks\n * Optional; interactions can occur outside of a specific experiment/personalization.\n */\n experienceId: z.optional(z.string()),\n\n /**\n * Index of the variant associated with this interaction.\n *\n * @remarks\n * Typically corresponds to the index of the selected optimization entry.\n */\n variantIndex: z.number(),\n})\n\n/**\n * TypeScript type inferred from {@link InteractionEventProperties}.\n *\n * @public\n */\nexport type InteractionEventProperties = z.infer<typeof InteractionEventProperties>\n","import * as z from 'zod/mini'\nimport { InteractionEventProperties } from './InteractionEventProperties'\n\n/**\n * Zod schema describing a `component` view event used for entry and flag exposure tracking.\n *\n * @remarks\n * These events track exposure of entries and variable-backed optimization\n * targets within an optimized experience.\n *\n * Extends {@link InteractionEventProperties}.\n *\n * @public\n */\nexport const ViewEvent = z.extend(InteractionEventProperties, {\n /**\n * Discriminator indicating that this is an entry or flag view event.\n */\n type: z.literal('component'),\n /**\n * Monotonically increasing visible duration for the active view.\n *\n * @remarks\n * This value is updated and re-emitted while the same view remains active.\n */\n viewDurationMs: z.optional(z.number()),\n /**\n * UUID identifying a single active view session.\n *\n * @remarks\n * Multiple events emitted for the same active view share this identifier.\n */\n viewId: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link ViewEvent}.\n *\n * @public\n */\nexport type ViewEvent = z.infer<typeof ViewEvent>\n","import * as z from 'zod/mini'\nimport { ExoViewEvent } from './ExoViewEvent'\nimport { IdentifyEvent } from './IdentifyEvent'\nimport { PageViewEvent } from './PageViewEvent'\nimport { ScreenViewEvent } from './ScreenViewEvent'\nimport { TrackEvent } from './TrackEvent'\nimport { ViewEvent } from './ViewEvent'\n\n/**\n * Partial schema capturing an anonymous identifier.\n *\n * @remarks\n * This object is merged into each event type in a batch to associate the\n * event with an `anonymousId`.\n *\n * @internal\n */\nconst Anon = { anonymousId: z.string() }\n\n/**\n * Zod schema describing each valid Experience API event within a batch.\n *\n * @remarks\n * This is a discriminated union on the `type` field that supports all event\n * types used in batch ingestion, each extended with an `anonymousId`.\n *\n * @public\n */\nexport const BatchExperienceEvent = z.discriminatedUnion('type', [\n z.extend(ViewEvent, Anon),\n z.extend(ExoViewEvent, Anon),\n z.extend(IdentifyEvent, Anon),\n z.extend(PageViewEvent, Anon),\n z.extend(ScreenViewEvent, Anon),\n z.extend(TrackEvent, Anon),\n])\n\n/**\n * TypeScript type inferred from {@link BatchExperienceEvent}.\n *\n * @public\n */\nexport type BatchExperienceEvent = z.infer<typeof BatchExperienceEvent>\n\n/**\n * Zod schema describing an array of {@link BatchExperienceEvent} items.\n *\n * @public\n */\nexport const BatchExperienceEventArray = z.array(BatchExperienceEvent)\n\n/**\n * TypeScript type inferred from {@link BatchExperienceEventArray}.\n *\n * @public\n */\nexport type BatchExperienceEventArray = z.infer<typeof BatchExperienceEventArray>\n","import * as z from 'zod/mini'\nimport { ExoViewEvent } from './ExoViewEvent'\nimport { IdentifyEvent } from './IdentifyEvent'\nimport { PageViewEvent } from './PageViewEvent'\nimport { ScreenViewEvent } from './ScreenViewEvent'\nimport { TrackEvent } from './TrackEvent'\nimport { ViewEvent } from './ViewEvent'\n\n/**\n * Zod schema describing any supported Experience API event.\n *\n * @remarks\n * This discriminated union aggregates all event types used by the\n * personalization/experience tracking system.\n *\n * @public\n */\nexport const ExperienceEvent = z.discriminatedUnion('type', [\n ViewEvent,\n ExoViewEvent,\n IdentifyEvent,\n PageViewEvent,\n ScreenViewEvent,\n TrackEvent,\n])\n\n/**\n * TypeScript type inferred from {@link ExperienceEvent}.\n *\n * @public\n */\nexport type ExperienceEvent = z.infer<typeof ExperienceEvent>\n\n/**\n * Union of all possible `type` values for {@link ExperienceEvent}.\n *\n * @public\n */\nexport type ExperienceEventType = ExperienceEvent['type']\n\n/**\n * Zod schema describing an array of {@link ExperienceEvent} items.\n *\n * @public\n */\nexport const ExperienceEventArray = z.array(ExperienceEvent)\n\n/**\n * TypeScript type inferred from {@link ExperienceEventArray}.\n *\n * @public\n */\nexport type ExperienceEventArray = z.infer<typeof ExperienceEventArray>\n","import * as z from 'zod/mini'\nimport { ExperienceEventArray } from './event'\n\n/**\n * Zod schema describing optional configuration for an experience request.\n *\n * @remarks\n * These options can be used to enable or filter specific features when\n * evaluating experiences.\n *\n * @public\n */\nexport const ExperienceRequestOptions = z.object({\n /**\n * Features or capabilities to enable for this request.\n */\n features: z.optional(z.array(z.string())),\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceRequestOptions}.\n *\n * @public\n */\nexport type ExperienceRequestOptions = z.infer<typeof ExperienceRequestOptions>\n\n/**\n * Zod schema describing the data payload for an experience request.\n *\n * @remarks\n * Contains the list of events to be evaluated plus optional request\n * configuration.\n *\n * @public\n */\nexport const ExperienceRequestData = z.object({\n /**\n * Experience events for the Experience API to evaluate.\n *\n * @remarks\n * Must contain at least one event.\n */\n events: ExperienceEventArray.check(z.minLength(1)),\n\n /**\n * Optional configuration for this experience request.\n */\n options: z.optional(ExperienceRequestOptions),\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceRequestData}.\n *\n * @public\n */\nexport type ExperienceRequestData = z.infer<typeof ExperienceRequestData>\n","import * as z from 'zod/mini'\nimport { BatchExperienceEventArray } from './event'\nimport { ExperienceRequestOptions } from './ExperienceRequest'\n\n/**\n * Zod schema describing the data payload for a batch experience request.\n *\n * @remarks\n * Batch events require an `anonymousId` on each event and must contain at\n * least one event.\n */\nexport const BatchExperienceRequestData = z.object({\n /**\n * Batch experience events for the Experience API to evaluate.\n *\n * @remarks\n * Must contain at least one event.\n */\n events: BatchExperienceEventArray.check(z.minLength(1)),\n\n /**\n * Optional configuration for this experience request.\n */\n options: z.optional(ExperienceRequestOptions),\n})\n\n/**\n * TypeScript type inferred from {@link BatchExperienceRequestData}.\n */\nexport type BatchExperienceRequestData = z.infer<typeof BatchExperienceRequestData>\n","import * as z from 'zod/mini'\nimport { Page } from '../../event/properties'\n\n/**\n * Zod schema describing aggregated statistics for a user session.\n *\n * @remarks\n * Captures both per-session metrics (such as `activeSessionLength`) and\n * aggregate metrics (such as `averageSessionLength`) for a given profile.\n *\n * @public\n */\nexport const SessionStatistics = z.object({\n /**\n * Unique identifier for this session statistics record.\n */\n id: z.string(),\n\n /**\n * Indicates whether the visitor has been seen before.\n *\n * @remarks\n * `true` typically means the visitor has at least one prior session.\n */\n isReturningVisitor: z.boolean(),\n\n /**\n * Landing page for the session.\n *\n * @remarks\n * Represents the first page the user visited in this session.\n *\n * @see {@link Page}\n */\n landingPage: Page,\n\n /**\n * Number of sessions associated with this profile or identifier.\n *\n * @remarks\n * Often used in combination with `SessionStatistics.averageSessionLength`.\n */\n count: z.number(),\n\n /**\n * Duration of the active session.\n */\n activeSessionLength: z.number(),\n\n /**\n * Average session duration across all sessions represented by this record.\n *\n * @remarks\n * The unit must match `SessionStatistics.activeSessionLength`.\n */\n averageSessionLength: z.number(),\n})\n\n/**\n * TypeScript type inferred from {@link SessionStatistics}.\n *\n * @public\n */\nexport type SessionStatistics = z.infer<typeof SessionStatistics>\n","import * as z from 'zod/mini'\nimport { GeoLocation } from '../event/properties'\nimport { Traits } from '../event/properties/Traits'\nimport { SessionStatistics } from './properties'\n\n/**\n * Zod schema describing a full user profile as received from the Experience API.\n *\n * @remarks\n * Represents the server-side view of a profile, including identifiers,\n * traits, audiences, location, and session statistics.\n *\n * @public\n */\nexport const Profile = z.object({\n /**\n * Primary identifier of the profile.\n */\n id: z.string(),\n\n /**\n * Stable, long-lived identifier of the profile.\n *\n * @remarks\n * Intended to remain constant across sessions and devices when possible.\n * Usually equal to `id`.\n */\n stableId: z.string(),\n\n /**\n * Random value associated with the profile.\n *\n * @remarks\n * Often used for deterministic bucketing (e.g., in experiments).\n */\n random: z.number(),\n\n /**\n * List of audience identifiers that this profile belongs to.\n */\n audiences: z.array(z.string()),\n\n /**\n * Traits describing the profile (user-level attributes).\n *\n * @see {@link Traits}\n */\n traits: Traits,\n\n /**\n * Geo-location information associated with the profile.\n *\n * @see {@link GeoLocation}\n */\n location: GeoLocation,\n\n /**\n * Aggregated session statistics for the profile.\n *\n * @see {@link SessionStatistics}\n */\n session: SessionStatistics,\n})\n\n/**\n * TypeScript type inferred from {@link Profile}.\n *\n * @public\n */\nexport type Profile = z.infer<typeof Profile>\n\n/**\n * Zod schema describing a partial profile payload used for sending events\n * to the Experience & Insights APIs.\n *\n * @remarks\n * This schema enforces the presence of an `id` field and allows additional\n * JSON-serializable properties via `z.catchall`.\n *\n * @public\n */\nexport const PartialProfile = z.catchall(\n z.object({\n /**\n * Identifier of the profile.\n *\n * @remarks\n * Used to associate events with an existing profile.\n */\n id: z.string(),\n }),\n z.json(),\n)\n\n/**\n * TypeScript type inferred from {@link PartialProfile}.\n *\n * @public\n */\nexport type PartialProfile = z.infer<typeof PartialProfile>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing the common envelope structure of responses\n * from the Experience API.\n *\n * @remarks\n * Concrete responses extend this schema and refine the `data` property\n * to a more specific shape.\n *\n * @public\n */\nexport const ResponseEnvelope = z.object({\n /**\n * Response payload.\n *\n * @remarks\n * The base schema uses an empty object; specific responses extend this\n * with more detailed structures.\n */\n data: z.object(),\n\n /**\n * Human-readable message accompanying the response.\n */\n message: z.string(),\n\n /**\n * Error details, or `null` when the request succeeded.\n */\n error: z.nullable(z.object({ code: z.string() })),\n})\n\n/**\n * TypeScript type inferred from {@link ResponseEnvelope}.\n *\n * @public\n */\nexport type ResponseEnvelope = z.infer<typeof ResponseEnvelope>\n","import * as z from 'zod/mini'\nimport { Profile } from './profile'\nimport { ResponseEnvelope } from './ResponseEnvelope'\n\n/**\n * Zod schema describing the `data` property of a batch experience response.\n *\n * @remarks\n * A batch request can return zero or more profiles. When no profiles are\n * returned, `profiles` can be omitted or an empty array.\n *\n * @public\n */\nexport const BatchExperienceResponseData = z.object({\n /**\n * Profiles evaluated or affected by the batch experience request.\n */\n profiles: z.optional(z.array(Profile)),\n})\n\n/**\n * TypeScript type inferred from {@link BatchExperienceResponseData}.\n *\n * @public\n */\nexport type BatchExperienceResponseData = z.infer<typeof BatchExperienceResponseData>\n\n/**\n * Zod schema describing a batch experience response from the Experience API.\n *\n * @remarks\n * Extends {@link ResponseEnvelope} with {@link BatchExperienceResponseData} as the\n * `data` payload.\n *\n * @public\n */\nexport const BatchExperienceResponse = z.extend(ResponseEnvelope, {\n data: BatchExperienceResponseData,\n})\n\n/**\n * TypeScript type inferred from {@link BatchExperienceResponse}.\n *\n * @public\n */\nexport type BatchExperienceResponse = z.infer<typeof BatchExperienceResponse>\n","import * as z from 'zod/mini'\n\n/**\n * Enumeration of supported change types.\n *\n * @public\n */\nexport const ChangeType = ['Variable', 'Experience', 'Fragment'] as const\n\n/**\n * Zod schema describing the base shape for a change.\n *\n * @remarks\n * This base is extended by specific change types such as {@link VariableChange}.\n *\n * @internal\n */\nexport const ChangeBase = z.object({\n /**\n * Key identifying the subject of the change.\n */\n key: z.string(),\n\n /**\n * Discriminator for the change type.\n *\n * @remarks\n * Can be one of {@link ChangeType} or an arbitrary string for unknown types.\n */\n type: z.union([z.enum(ChangeType), z.string()]),\n\n /**\n * Metadata describing the originating experience and variant index.\n */\n meta: z.object({\n /**\n * Identifier of the personalization or experiment experience.\n */\n experienceId: z.string(),\n\n /**\n * Index of the variant within the experience configuration.\n *\n * @remarks\n * Typically corresponds to the array index in the experience's distribution.\n */\n variantIndex: z.number(),\n }),\n})\n\n/**\n * Zod schema for the allowed value types of a variable change.\n *\n * @remarks\n * Supports primitives and JSON objects keyed by strings.\n *\n * @public\n */\nexport const VariableChangeValue = z.union([\n z.string(),\n z.boolean(),\n z.null(),\n z.number(),\n z.record(z.string(), z.json()),\n])\n\n/**\n * Zod schema representing an unknown change type.\n *\n * @remarks\n * This can be used to handle forward-compatible change payloads where\n * the `type` is not recognized.\n *\n * @public\n */\nexport const UnknownChange = z.extend(ChangeBase, {\n /**\n * Unconstrained change type string.\n */\n type: z.string(),\n\n /**\n * Payload for the change value, with unknown structure.\n */\n value: z.unknown(),\n})\n\n/**\n * TypeScript type inferred from {@link UnknownChange}.\n *\n * @public\n */\nexport type UnknownChange = z.infer<typeof UnknownChange>\n\n/**\n * Zod schema representing a change whose type is `'Variable'`.\n *\n * @remarks\n * The `value` must conform to {@link VariableChangeValue}.\n *\n * @public\n */\nexport const VariableChange = z.extend(ChangeBase, {\n /**\n * Discriminator for a variable change.\n */\n type: z.literal('Variable'),\n\n /**\n * New value for the variable identified by `ChangeBase.key`.\n */\n value: VariableChangeValue,\n})\n\n/**\n * TypeScript type inferred from {@link VariableChange}.\n *\n * @public\n */\nexport type VariableChange = z.infer<typeof VariableChange>\n\n/**\n * Zod schema describing the base shape shared by entity-based changes\n * ({@link ExperienceChange} and {@link FragmentChange}).\n *\n * @internal\n */\nexport const EntityChangeBase = z.object({\n /**\n * Identifier of the entity affected by the change.\n */\n id: z.string(),\n\n /**\n * Identifier of the selected variant.\n */\n variantId: z.string(),\n\n /**\n * Metadata describing the originating optimization and variant index.\n */\n meta: z.object({\n /**\n * Identifier of the optimization that produced this change.\n */\n optimizationId: z.string(),\n\n /**\n * Index of the variant within the optimization's distribution.\n */\n variantIndex: z.number(),\n }),\n})\n\n/**\n * Zod schema representing a change whose type is `'Experience'`.\n *\n * @public\n */\nexport const ExperienceChange = z.extend(EntityChangeBase, {\n /**\n * Discriminator for an experience change.\n */\n type: z.literal('Experience'),\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceChange}.\n *\n * @public\n */\nexport type ExperienceChange = z.infer<typeof ExperienceChange>\n\n/**\n * Zod schema representing a change whose type is `'Fragment'`.\n *\n * @public\n */\nexport const FragmentChange = z.extend(EntityChangeBase, {\n /**\n * Discriminator for a fragment change.\n */\n type: z.literal('Fragment'),\n})\n\n/**\n * TypeScript type inferred from {@link FragmentChange}.\n *\n * @public\n */\nexport type FragmentChange = z.infer<typeof FragmentChange>\n\n/**\n * JSON value type inferred from {@link z.json}.\n *\n * @remarks\n * Represents any JSON-serializable value.\n *\n * @public\n */\nexport type Json = z.infer<typeof z.json>\n\n/**\n * Map of Custom Flag keys to JSON values.\n *\n * @public\n */\nexport type Flags = Record<string, Json>\n\n/**\n * Union of supported change types.\n *\n * @public\n */\nexport const Change = z.discriminatedUnion('type', [\n VariableChange,\n ExperienceChange,\n FragmentChange,\n])\n\n/**\n * TypeScript type inferred from {@link Change}.\n *\n * @public\n */\nexport type Change = z.infer<typeof Change>\n\n/**\n * Zod schema representing an array of {@link Change} items.\n *\n * @public\n */\nexport const ChangeArray = z.array(Change)\n\n/**\n * TypeScript type inferred from {@link ChangeArray}.\n *\n * @public\n */\nexport type ChangeArray = z.infer<typeof ChangeArray>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing a selected optimization outcome for a user.\n *\n * @remarks\n * Represents the result of choosing a specific variant for a given\n * experience, along with additional metadata such as whether the\n * selection is sticky.\n *\n * @public\n */\nexport const SelectedOptimization = z.object({\n /**\n * Identifier of the personalization or experiment experience.\n */\n experienceId: z.string(),\n\n /**\n * Index of the selected variant within the experience configuration.\n *\n * @remarks\n * Typically corresponds to the index of the selected `OptimizationConfig` entry.\n */\n variantIndex: z.number(),\n\n /**\n * Mapping of baseline entry IDs to their selected variant entry IDs.\n *\n * @remarks\n * The keys are component identifiers and the values are the\n * identifiers of the selected variant for that component.\n */\n variants: z.record(z.string(), z.string()),\n\n /**\n * Indicates whether this optimization selection is sticky for the user.\n *\n * @defaultValue false\n *\n * @remarks\n * Reuse sticky selections on subsequent requests for the same user rather\n * than re-allocating a new variant.\n */\n sticky: z.optional(z.prefault(z.boolean(), false)),\n})\n\n/**\n * TypeScript type inferred from {@link SelectedOptimization}.\n *\n * @public\n */\nexport type SelectedOptimization = z.infer<typeof SelectedOptimization>\n\n/**\n * Zod schema describing an array of {@link SelectedOptimization} items.\n *\n * @remarks\n * Useful when multiple experiences are evaluated at once.\n *\n * @public\n */\nexport const SelectedOptimizationArray = z.array(SelectedOptimization)\n\n/**\n * TypeScript type inferred from {@link SelectedOptimizationArray}.\n *\n * @public\n */\nexport type SelectedOptimizationArray = z.infer<typeof SelectedOptimizationArray>\n","import * as z from 'zod/mini'\nimport { ChangeArray } from './change'\nimport { SelectedOptimizationArray } from './optimization'\nimport { Profile } from './profile'\nimport { ResponseEnvelope } from './ResponseEnvelope'\n\n/**\n * Zod schema describing the `data` payload of a standard Experience API response.\n *\n * @remarks\n * Contains the evaluated profile, selected optimizations, and computed\n * changes to apply on the client.\n *\n * @public\n */\nexport const ExperienceData = z.object({\n /**\n * Profile associated with the evaluated events.\n */\n profile: Profile,\n\n /**\n * Selected experiences and variants for the profile.\n *\n * @see {@link SelectedOptimizationArray}\n */\n experiences: SelectedOptimizationArray,\n\n /**\n * Used for Custom Flags.\n *\n * @see {@link ChangeArray}\n */\n changes: ChangeArray,\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceData}.\n *\n * @public\n */\nexport type ExperienceData = z.infer<typeof ExperienceData>\n\n/**\n * Zod schema describing a full Experience API response.\n *\n * @remarks\n * Extends {@link ResponseEnvelope} with {@link ExperienceData} as the `data` payload.\n *\n * @public\n */\nexport const ExperienceResponse = z.extend(ResponseEnvelope, { data: ExperienceData })\n\n/**\n * TypeScript type inferred from {@link ExperienceResponse}.\n *\n * @public\n */\nexport type ExperienceResponse = z.infer<typeof ExperienceResponse>\n\n/**\n * Optimization data shape used for compatibility outside the API adapter.\n *\n * @remarks\n * This type mirrors {@link ExperienceData} but replaces the `experiences`\n * field with `selectedOptimizations` while preserving the rest of the structure.\n *\n * @public\n */\nexport type OptimizationData = Omit<ExperienceData, 'experiences'> & {\n /**\n * Selected optimizations for the profile.\n */\n selectedOptimizations: SelectedOptimizationArray\n}\n","import * as z from 'zod/mini'\nimport { InteractionEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing a `component_click` event used for entry click tracking.\n *\n * @remarks\n * These events track click interactions for entries within an optimized\n * experience.\n *\n * Extends {@link InteractionEventProperties}.\n *\n * @public\n */\nexport const ClickEvent = z.extend(InteractionEventProperties, {\n /**\n * Discriminator indicating that this is an entry click event.\n */\n type: z.literal('component_click'),\n})\n\n/**\n * TypeScript type inferred from {@link ClickEvent}.\n *\n * @public\n */\nexport type ClickEvent = z.infer<typeof ClickEvent>\n","import * as z from 'zod/mini'\nimport { ExoEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing an `exo_node_click` event.\n *\n * @public\n */\nexport const ExoClickEvent = z.extend(ExoEventProperties, {\n type: z.literal('exo_node_click'),\n})\n\n/**\n * TypeScript type inferred from {@link ExoClickEvent}.\n *\n * @public\n */\nexport type ExoClickEvent = z.infer<typeof ExoClickEvent>\n","import * as z from 'zod/mini'\nimport { ExoEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing an `exo_node_hover` event.\n *\n * @public\n */\nexport const ExoHoverEvent = z.extend(ExoEventProperties, {\n type: z.literal('exo_node_hover'),\n hoverDurationMs: z.int().check(z.minimum(0)),\n hoverId: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link ExoHoverEvent}.\n *\n * @public\n */\nexport type ExoHoverEvent = z.infer<typeof ExoHoverEvent>\n","import * as z from 'zod/mini'\nimport { InteractionEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing a `component_hover` event used for entry hover tracking.\n *\n * @remarks\n * These events track hover interactions for entries within an optimized\n * experience.\n *\n * Extends {@link InteractionEventProperties}.\n *\n * @public\n */\nexport const HoverEvent = z.extend(InteractionEventProperties, {\n /**\n * Discriminator indicating that this is an entry hover event.\n */\n type: z.literal('component_hover'),\n /**\n * Monotonically increasing hover duration for the active hover.\n *\n * @remarks\n * This value is updated and re-emitted while the same hover remains active.\n */\n hoverDurationMs: z.number(),\n /**\n * UUID identifying a single active hover session.\n *\n * @remarks\n * Multiple events emitted for the same active hover share this identifier.\n */\n hoverId: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link HoverEvent}.\n *\n * @public\n */\nexport type HoverEvent = z.infer<typeof HoverEvent>\n","import * as z from 'zod/mini'\nimport { ExoViewEvent, ViewEvent } from '../../experience/event'\nimport { ClickEvent } from './ClickEvent'\nimport { ExoClickEvent } from './ExoClickEvent'\nimport { ExoHoverEvent } from './ExoHoverEvent'\nimport { HoverEvent } from './HoverEvent'\n\n/**\n * Zod schema describing an Insights event.\n *\n * @remarks\n * Insights events include legacy component interactions and ExO node\n * interactions.\n *\n * @public\n */\nexport const InsightsEvent = z.discriminatedUnion('type', [\n ViewEvent,\n ClickEvent,\n HoverEvent,\n ExoViewEvent,\n ExoClickEvent,\n ExoHoverEvent,\n])\n\n/**\n * TypeScript type inferred from {@link InsightsEvent}.\n *\n * @public\n */\nexport type InsightsEvent = z.infer<typeof InsightsEvent>\n\n/**\n * Union of all possible `type` values for {@link InsightsEvent}.\n *\n * @public\n */\nexport type InsightsEventType = InsightsEvent['type']\n\n/**\n * Zod schema describing an array of {@link InsightsEvent} items.\n *\n * @public\n */\nexport const InsightsEventArray = z.array(InsightsEvent)\n\n/**\n * TypeScript type inferred from {@link InsightsEventArray}.\n *\n * @public\n */\nexport type InsightsEventArray = z.infer<typeof InsightsEventArray>\n","import * as z from 'zod/mini'\nimport { PartialProfile } from '../../experience/profile'\nimport { InsightsEventArray } from './InsightsEvent'\n\n/**\n * Zod schema describing a batched Insights event payload.\n *\n * @remarks\n * Combines a {@link PartialProfile} with one or more Insights events\n * to be sent to the Contentful Insights API.\n *\n * @public\n */\nexport const BatchInsightsEvent = z.object({\n /**\n * Partial profile information used to associate events with a user.\n *\n * @see {@link PartialProfile}\n */\n profile: PartialProfile,\n\n /**\n * Insights events to record for this profile.\n *\n * @see {@link InsightsEventArray}\n */\n events: InsightsEventArray,\n})\n\n/**\n * TypeScript type inferred from {@link BatchInsightsEvent}.\n *\n * @public\n */\nexport type BatchInsightsEvent = z.infer<typeof BatchInsightsEvent>\n\n/**\n * Zod schema describing an array of {@link BatchInsightsEvent} items.\n *\n * @remarks\n * Useful when sending multiple profile/event batches in a single request.\n *\n * @public\n */\nexport const BatchInsightsEventArray = z.array(BatchInsightsEvent)\n\n/**\n * TypeScript type inferred from {@link BatchInsightsEventArray}.\n *\n * @public\n */\nexport type BatchInsightsEventArray = z.infer<typeof BatchInsightsEventArray>\n","import * as z from 'zod/mini'\nimport en from 'zod/v4/locales/en.js'\n\nz.config(en())\n\nexport function parseWithFriendlyError<T extends z.ZodMiniType>(\n schema: T,\n data: unknown,\n): z.output<T> {\n const result = schema.safeParse(data)\n if (result.success) return result.data\n\n throw new Error(z.prettifyError(result.error))\n}\n"],"names":["App","z","Campaign","Channel","Dictionary","COUNTRY_CODE_LENGTH","Coordinates","GeoLocation","Library","Page","Properties","Screen","Traits","UniversalEventContext","UniversalEventProperties","ExoEntityKind","ExoEventProperties","ExoViewEvent","IdentifyEvent","PageEventContext","PageViewEvent","ScreenEventContext","ScreenViewEvent","TrackEvent","InteractionEventProperties","ViewEvent","Anon","BatchExperienceEvent","BatchExperienceEventArray","ExperienceEvent","ExperienceEventArray","ExperienceRequestOptions","ExperienceRequestData","BatchExperienceRequestData","SessionStatistics","Profile","PartialProfile","ResponseEnvelope","BatchExperienceResponseData","BatchExperienceResponse","ChangeType","ChangeBase","VariableChangeValue","UnknownChange","VariableChange","EntityChangeBase","ExperienceChange","FragmentChange","Change","ChangeArray","SelectedOptimization","SelectedOptimizationArray","ExperienceData","ExperienceResponse","ClickEvent","ExoClickEvent","ExoHoverEvent","HoverEvent","InsightsEvent","InsightsEventArray","BatchInsightsEvent","BatchInsightsEventArray","en","parseWithFriendlyError","schema","data","result","Error"],"mappings":"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"}
1
+ {"version":3,"file":"api-schemas.mjs","sources":["../src/schemas/experience/event/properties/App.ts","../src/schemas/experience/event/properties/Campaign.ts","../src/schemas/experience/event/properties/Channel.ts","../src/schemas/experience/event/properties/Dictionary.ts","../src/schemas/experience/event/properties/GeoLocation.ts","../src/schemas/experience/event/properties/Library.ts","../src/schemas/experience/event/properties/Page.ts","../src/schemas/experience/event/properties/Properties.ts","../src/schemas/experience/event/properties/Screen.ts","../src/schemas/experience/event/properties/Traits.ts","../src/schemas/experience/event/UniversalEventProperties.ts","../src/schemas/experience/event/ExoEventProperties.ts","../src/schemas/experience/event/ExoViewEvent.ts","../src/schemas/experience/event/IdentifyEvent.ts","../src/schemas/experience/event/PageViewEvent.ts","../src/schemas/experience/event/ScreenViewEvent.ts","../src/schemas/experience/event/TrackEvent.ts","../src/schemas/experience/event/InteractionEventProperties.ts","../src/schemas/experience/event/ViewEvent.ts","../src/schemas/experience/event/BatchExperienceEvent.ts","../src/schemas/experience/event/ExperienceEvent.ts","../src/schemas/experience/ExperienceRequest.ts","../src/schemas/experience/BatchExperienceRequest.ts","../src/schemas/experience/profile/properties/SessionStatistics.ts","../src/schemas/experience/profile/Profile.ts","../src/schemas/experience/ResponseEnvelope.ts","../src/schemas/experience/BatchExperienceResponse.ts","../src/schemas/experience/change/Change.ts","../src/schemas/experience/optimization/SelectedOptimization.ts","../src/schemas/experience/ExperienceResponse.ts","../src/schemas/insights/event/ClickEvent.ts","../src/schemas/insights/event/ExoClickEvent.ts","../src/schemas/insights/event/ExoHoverEvent.ts","../src/schemas/insights/event/HoverEvent.ts","../src/schemas/insights/event/InsightsEvent.ts","../src/schemas/insights/event/BatchInsightsEvent.ts","../src/schemas/validation/parseWithFriendlyError.ts"],"sourcesContent":["import * as z from 'zod/mini'\n\n/**\n * Zod schema describing app-level properties.\n *\n * @remarks\n * These properties typically describe the application that is emitting\n * analytics events, such as its name and version.\n *\n * The entire object is optional; when omitted, no app context is attached.\n *\n * @public\n */\nexport const App = z.optional(\n z.object({\n /**\n * Name of the application.\n */\n name: z.string(),\n\n /**\n * Version of the application.\n */\n version: z.string(),\n }),\n)\n\n/**\n * TypeScript type inferred from {@link App}.\n *\n * @public\n */\nexport type App = z.infer<typeof App>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing campaign attribution properties.\n *\n * @remarks\n * These fields typically mirror UTM parameters used for marketing campaigns.\n *\n * @public\n */\nexport const Campaign = z.object({\n /**\n * Name of the campaign (e.g., `utm_campaign`).\n */\n name: z.optional(z.string()),\n\n /**\n * Campaign source (e.g., `utm_source`).\n */\n source: z.optional(z.string()),\n\n /**\n * Campaign medium (e.g., `utm_medium`).\n */\n medium: z.optional(z.string()),\n\n /**\n * Campaign term (e.g., `utm_term`).\n */\n term: z.optional(z.string()),\n\n /**\n * Campaign content (e.g., `utm_content`).\n */\n content: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link Campaign}.\n *\n * @public\n */\nexport type Campaign = z.infer<typeof Campaign>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing the analytics channel.\n *\n * @remarks\n * Indicates the execution environment where the event originated.\n *\n * - `'mobile'` — Events from native or hybrid mobile apps.\n * - `'server'` — Events emitted from backend/server-side code.\n * - `'web'` — Events from web browsers or web-based clients.\n *\n * @public\n */\nexport const Channel = z.union([z.literal('mobile'), z.literal('server'), z.literal('web')])\n\n/**\n * TypeScript type inferred from {@link Channel}.\n *\n * @public\n */\nexport type Channel = z.infer<typeof Channel>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing a string-to-string dictionary.\n *\n * @remarks\n * Commonly used for query parameters or other small key–value maps.\n *\n * @public\n */\nexport const Dictionary = z.record(z.string(), z.string())\n\n/**\n * TypeScript type inferred from {@link Dictionary}.\n *\n * @public\n */\nexport type Dictionary = z.infer<typeof Dictionary>\n","import * as z from 'zod/mini'\n\n/**\n * Length (in characters) of the expected country code.\n *\n * @remarks\n * Typically corresponds to ISO 3166-1 alpha-2 country codes.\n *\n * @internal\n */\nconst COUNTRY_CODE_LENGTH = 2\n\n/**\n * Zod schema describing geographical coordinates.\n *\n * @remarks\n * Latitude and longitude are expressed in decimal degrees.\n *\n * @internal\n */\nconst Coordinates = z.object({\n /**\n * Latitude component of the coordinates.\n */\n latitude: z.number(),\n\n /**\n * Longitude component of the coordinates.\n */\n longitude: z.number(),\n})\n\n/**\n * Zod schema describing geo-location properties associated with an event.\n *\n * @remarks\n * All properties are optional and can be derived from IP or device data.\n *\n * @public\n */\nexport const GeoLocation = z.object({\n /**\n * Geographical coordinates for the location.\n */\n coordinates: z.optional(Coordinates),\n\n /**\n * City name associated with the location.\n */\n city: z.optional(z.string()),\n\n /**\n * Postal or ZIP code associated with the location.\n */\n postalCode: z.optional(z.string()),\n\n /**\n * Region or state name associated with the location.\n */\n region: z.optional(z.string()),\n\n /**\n * Region or state code associated with the location.\n */\n regionCode: z.optional(z.string()),\n\n /**\n * Country name associated with the location.\n */\n country: z.optional(z.string()),\n\n /**\n * Country code associated with the location.\n *\n * @remarks\n * Validated to exactly COUNTRY_CODE_LENGTH characters, typically\n * an ISO 3166-1 alpha-2 code.\n */\n countryCode: z.optional(z.string().check(z.length(COUNTRY_CODE_LENGTH))),\n\n /**\n * Continent name associated with the location.\n */\n continent: z.optional(z.string()),\n\n /**\n * Time zone identifier associated with the location.\n *\n * @remarks\n * Typically an IANA time zone string (e.g., `\"Europe/Berlin\"`).\n */\n timezone: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link GeoLocation}.\n *\n * @public\n */\nexport type GeoLocation = z.infer<typeof GeoLocation>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing analytics library metadata.\n *\n * @remarks\n * Identifies the client library that produced the event.\n *\n * @public\n */\nexport const Library = z.object({\n /**\n * Name of the SDK/library (e.g., `\"@contentful/optimization-web\"`).\n */\n name: z.string(),\n\n /**\n * Version of the analytics library.\n */\n version: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link Library}.\n *\n * @public\n */\nexport type Library = z.infer<typeof Library>\n","import * as z from 'zod/mini'\nimport { Dictionary } from './Dictionary'\n\n/**\n * Zod schema describing Web page-level properties for events.\n *\n * @remarks\n * The base object describes standard page attributes, while additional\n * JSON properties can be present due to the use of `z.catchall`.\n *\n * @public\n */\nexport const Page = z.catchall(\n z.object({\n /**\n * Path component of the page URL (e.g., `/products/123`).\n */\n path: z.string(),\n\n /**\n * Parsed query parameters for the page.\n */\n query: Dictionary,\n\n /**\n * Referrer URL that led to the current page.\n */\n referrer: z.string(),\n\n /**\n * Raw search string including the leading `?` (e.g., `\"?q=test\"`).\n */\n search: z.string(),\n\n /**\n * Title of the page as seen by the user.\n */\n title: z.optional(z.string()),\n\n /**\n * Full URL of the page.\n */\n url: z.string(),\n }),\n z.json(),\n)\n\n/**\n * TypeScript type inferred from {@link Page}.\n *\n * @public\n */\nexport type Page = z.infer<typeof Page>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing a generic collection of event properties.\n *\n * @remarks\n * Represents an arbitrary JSON-serializable map from string keys to values.\n *\n * @public\n */\nexport const Properties = z.record(z.string(), z.json())\n\n/**\n * TypeScript type inferred from {@link Properties}.\n *\n * @public\n */\nexport type Properties = z.infer<typeof Properties>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing screen-level properties for events.\n *\n * @remarks\n * The base object describes standard screen attributes, while additional\n * JSON properties can be present due to the use of `z.catchall`.\n *\n * @public\n */\nexport const Screen = z.catchall(\n z.object({\n /**\n * Name or label for the screen.\n */\n name: z.string(),\n }),\n z.json(),\n)\n\n/**\n * TypeScript type inferred from {@link Screen}.\n *\n * @public\n */\nexport type Screen = z.infer<typeof Screen>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing user traits / identity properties.\n *\n * @remarks\n * Represents an arbitrary JSON-serializable map from string keys to values.\n * Common traits can include `name`, `plan`, and custom attributes.\n *\n * @public\n */\nexport const Traits = z.record(z.string(), z.json())\n\n/**\n * TypeScript type inferred from {@link Traits}.\n *\n * @public\n */\nexport type Traits = z.infer<typeof Traits>\n","import * as z from 'zod/mini'\nimport { App, Campaign, Channel, GeoLocation, Library, Page, Screen } from './properties'\n\n/**\n * Zod schema describing universal event context properties shared by all\n * analytics events.\n *\n * @remarks\n * The `page` and `screen` properties are optional, but we recommend omitting\n * them for event types that are not `page` or `screen`.\n *\n * @public\n */\nexport const UniversalEventContext = z.object({\n /**\n * Application-level metadata.\n */\n app: App,\n\n /**\n * Campaign attribution metadata.\n */\n campaign: Campaign,\n\n /**\n * GDPR-related consent information.\n */\n gdpr: z.object({\n /**\n * Indicates whether the user has given consent.\n */\n isConsentGiven: z.boolean(),\n }),\n\n /**\n * Analytics library metadata.\n */\n library: Library,\n\n /**\n * Locale identifier of the event (e.g., `\"en-US\"`).\n */\n locale: z.string(),\n\n /**\n * Optional geo-location information associated with the event.\n */\n location: z.optional(GeoLocation),\n\n /**\n * User agent string of the client, if available.\n */\n userAgent: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link UniversalEventContext}.\n *\n * @public\n */\nexport type UniversalEventContext = z.infer<typeof UniversalEventContext>\n\n/**\n * Zod schema describing universal properties shared by all analytics events.\n *\n * @remarks\n * These properties capture common metadata such as channel, context,\n * timestamps, and user identifiers.\n *\n * @public\n */\nexport const UniversalEventProperties = z.object({\n /**\n * Channel from which the event originated.\n *\n * @see {@link Channel}\n */\n channel: Channel,\n\n /**\n * Context object carrying environment and client metadata.\n */\n context: z.extend(UniversalEventContext, {\n page: z.optional(Page),\n screen: z.optional(Screen),\n }),\n\n /**\n * Unique identifier for this message.\n *\n * @remarks\n * Used to deduplicate events across retries and transports.\n */\n messageId: z.string(),\n\n /**\n * Timestamp when the event originally occurred.\n *\n * @remarks\n * ISO 8601 datetime string.\n */\n originalTimestamp: z.iso.datetime(),\n\n /**\n * Timestamp when the event payload was sent.\n *\n * @remarks\n * ISO 8601 datetime string.\n */\n sentAt: z.iso.datetime(),\n\n /**\n * Timestamp when the event was recorded or processed.\n *\n * @remarks\n * ISO 8601 datetime string.\n */\n timestamp: z.iso.datetime(),\n\n /**\n * Identifier of the authenticated user, if known.\n */\n userId: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link UniversalEventProperties}.\n *\n * @public\n */\nexport type UniversalEventProperties = z.infer<typeof UniversalEventProperties>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\n\n/**\n * Zod schema describing the supported kinds of ExO entities.\n *\n * @public\n */\nexport const ExoEntityKind = z.enum(['Experience', 'Fragment', 'InlineFragment', 'InlineComponent'])\n\n/**\n * TypeScript type inferred from {@link ExoEntityKind}.\n *\n * @public\n */\nexport type ExoEntityKind = z.infer<typeof ExoEntityKind>\n\n/**\n * Zod schema describing properties shared by ExO interaction events.\n *\n * @public\n */\nexport const ExoEventProperties = z.extend(UniversalEventProperties, {\n /** Identifier of the rendered ExO entity. */\n entityId: z.string(),\n\n /** Kind of ExO entity represented by this event. */\n entityKind: ExoEntityKind,\n\n /** Optional identifier of the entity's concrete content kind. */\n entityKindId: z.optional(z.string()),\n\n /** Contentful entry identifiers rendered by the entity. */\n entryIds: z.optional(z.array(z.string())),\n\n /** Identifier of the optimization that selected the entity variant, when available. */\n optimizationId: z.optional(z.string()),\n\n /** Parameter values used to render the entity. */\n parameters: z.optional(z.record(z.string(), z.json())),\n\n /** Identifier of the containing experience, when the entity is nested. */\n parentExperienceId: z.optional(z.string()),\n\n /** Identifier of the selected entity variant, when available. */\n variantId: z.optional(z.string()),\n\n /** Index of the selected variant when available. */\n variantIndex: z.optional(z.number()),\n})\n\n/**\n * TypeScript type inferred from {@link ExoEventProperties}.\n *\n * @public\n */\nexport type ExoEventProperties = z.infer<typeof ExoEventProperties>\n","import * as z from 'zod/mini'\nimport { ExoEventProperties } from './ExoEventProperties'\n\n/**\n * Zod schema describing an `exo_node_view` event.\n *\n * @public\n */\nexport const ExoViewEvent = z.extend(ExoEventProperties, {\n type: z.literal('exo_node_view'),\n viewDurationMs: z.int().check(z.minimum(0)),\n viewId: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link ExoViewEvent}.\n *\n * @public\n */\nexport type ExoViewEvent = z.infer<typeof ExoViewEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\nimport { Traits } from './properties/Traits'\n\n/**\n * Zod schema describing an `identify` event.\n *\n * @remarks\n * Identify events attach user traits to a known identity.\n *\n * Extends {@link UniversalEventProperties} with a `traits` payload.\n *\n * @public\n */\nexport const IdentifyEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is an identify event.\n */\n type: z.literal('identify'),\n\n /**\n * Traits describing the user.\n *\n * @see {@link Traits}\n */\n traits: Traits,\n})\n\n/**\n * TypeScript type inferred from {@link IdentifyEvent}.\n *\n * @public\n */\nexport type IdentifyEvent = z.infer<typeof IdentifyEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventContext, UniversalEventProperties } from './UniversalEventProperties'\nimport { Page } from './properties'\n\n/**\n * Zod schema describing event context properties specific to page events.\n *\n * @public\n */\nexport const PageEventContext = z.extend(UniversalEventContext, {\n /**\n * Page context for events that occur within a web page.\n */\n page: Page,\n})\n\n/**\n * TypeScript type inferred from {@link PageEventContext}.\n *\n * @public\n */\nexport type PageEventContext = z.infer<typeof PageEventContext>\n\n/**\n * Zod schema describing a `page` view event.\n *\n * @remarks\n * Page view events track visits to web pages and associated context.\n *\n * Extends {@link UniversalEventProperties} with optional `name` and\n * page-level {@link Page} properties.\n *\n * @public\n */\nexport const PageViewEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is a page view.\n */\n type: z.literal('page'),\n\n /**\n * Optional name for the page.\n *\n * @remarks\n * Useful when the logical page name differs from the URL or title.\n */\n name: z.optional(z.string()),\n\n /**\n * Page-level properties such as URL, path, and referrer.\n */\n properties: Page,\n\n /**\n * Override the context property of {@link UniversalEventProperties}\n * with a page-specific context.\n */\n context: PageEventContext,\n})\n\n/**\n * TypeScript type inferred from {@link PageViewEvent}.\n *\n * @public\n */\nexport type PageViewEvent = z.infer<typeof PageViewEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventContext, UniversalEventProperties } from './UniversalEventProperties'\nimport { Properties, Screen } from './properties'\n\n/**\n * Zod schema describing event context properties specific to screen events.\n *\n * @public\n */\nexport const ScreenEventContext = z.extend(UniversalEventContext, {\n /**\n * Screen context for events that occur within a mobile or TV application.\n */\n screen: Screen,\n})\n\n/**\n * TypeScript type inferred from {@link ScreenEventContext}.\n *\n * @public\n */\nexport type ScreenEventContext = z.infer<typeof ScreenEventContext>\n\n/**\n * Zod schema describing a `screen` view event.\n *\n * @remarks\n * Screen view events are typically used by mobile or TV applications\n * to track navigation between screens.\n *\n * Extends {@link UniversalEventProperties}.\n *\n * @public\n */\nexport const ScreenViewEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is a screen view.\n */\n type: z.literal('screen'),\n\n /**\n * Name of the screen being viewed.\n */\n name: z.string(),\n\n /**\n * Optional properties describing the screen context.\n *\n * @see {@link Properties}\n */\n properties: z.optional(Properties),\n\n /**\n * Override the context property of {@link UniversalEventProperties}\n * with a screen-specific context.\n */\n context: ScreenEventContext,\n})\n\n/**\n * TypeScript type inferred from {@link ScreenViewEvent}.\n *\n * @public\n */\nexport type ScreenViewEvent = z.infer<typeof ScreenViewEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\nimport { Properties } from './properties'\n\n/**\n * Zod schema describing a custom `track` event.\n *\n * @remarks\n * Track events capture arbitrary user actions that do not fit into\n * the more specific event types (page, screen, identify, etc.).\n *\n * Extends {@link UniversalEventProperties}.\n *\n * @public\n */\nexport const TrackEvent = z.extend(UniversalEventProperties, {\n /**\n * Discriminator indicating that this event is a track event.\n */\n type: z.literal('track'),\n\n /**\n * Name of the event being tracked.\n */\n event: z.string(),\n\n /**\n * Additional properties describing the event.\n */\n properties: Properties,\n})\n\n/**\n * TypeScript type inferred from {@link TrackEvent}.\n *\n * @public\n */\nexport type TrackEvent = z.infer<typeof TrackEvent>\n","import * as z from 'zod/mini'\nimport { UniversalEventProperties } from './UniversalEventProperties'\n\n/**\n * Zod schema describing shared interaction event properties.\n *\n * @public\n */\nexport const InteractionEventProperties = z.extend(UniversalEventProperties, {\n /**\n * Type of tracked optimization target for the interaction event.\n *\n * - `'Entry'` — A content entry.\n * - `'Variable'` — A Custom Flag or other variable-backed optimization target.\n */\n componentType: z.union([z.literal('Entry'), z.literal('Variable')]),\n\n /**\n * Contentful entry ID or flag key corresponding to the interaction.\n */\n componentId: z.string(),\n\n /**\n * Identifier of the experience that rendered this entry or flag.\n *\n * @remarks\n * Optional; interactions can occur outside of a specific experiment/personalization.\n */\n experienceId: z.optional(z.string()),\n\n /**\n * Index of the variant associated with this interaction.\n *\n * @remarks\n * Typically corresponds to the index of the selected optimization entry.\n */\n variantIndex: z.number(),\n})\n\n/**\n * TypeScript type inferred from {@link InteractionEventProperties}.\n *\n * @public\n */\nexport type InteractionEventProperties = z.infer<typeof InteractionEventProperties>\n","import * as z from 'zod/mini'\nimport { InteractionEventProperties } from './InteractionEventProperties'\n\n/**\n * Zod schema describing a `component` view event used for entry and flag exposure tracking.\n *\n * @remarks\n * These events track exposure of entries and variable-backed optimization\n * targets within an optimized experience.\n *\n * Extends {@link InteractionEventProperties}.\n *\n * @public\n */\nexport const ViewEvent = z.extend(InteractionEventProperties, {\n /**\n * Discriminator indicating that this is an entry or flag view event.\n */\n type: z.literal('component'),\n /**\n * Monotonically increasing visible duration for the active view.\n *\n * @remarks\n * This value is updated and re-emitted while the same view remains active.\n */\n viewDurationMs: z.optional(z.number()),\n /**\n * UUID identifying a single active view session.\n *\n * @remarks\n * Multiple events emitted for the same active view share this identifier.\n */\n viewId: z.optional(z.string()),\n})\n\n/**\n * TypeScript type inferred from {@link ViewEvent}.\n *\n * @public\n */\nexport type ViewEvent = z.infer<typeof ViewEvent>\n","import * as z from 'zod/mini'\nimport { ExoViewEvent } from './ExoViewEvent'\nimport { IdentifyEvent } from './IdentifyEvent'\nimport { PageViewEvent } from './PageViewEvent'\nimport { ScreenViewEvent } from './ScreenViewEvent'\nimport { TrackEvent } from './TrackEvent'\nimport { ViewEvent } from './ViewEvent'\n\n/**\n * Partial schema capturing an anonymous identifier.\n *\n * @remarks\n * This object is merged into each event type in a batch to associate the\n * event with an `anonymousId`.\n *\n * @internal\n */\nconst Anon = { anonymousId: z.string() }\n\n/**\n * Zod schema describing each valid Experience API event within a batch.\n *\n * @remarks\n * This is a discriminated union on the `type` field that supports all event\n * types used in batch ingestion, each extended with an `anonymousId`.\n *\n * @public\n */\nexport const BatchExperienceEvent = z.discriminatedUnion('type', [\n z.extend(ViewEvent, Anon),\n z.extend(ExoViewEvent, Anon),\n z.extend(IdentifyEvent, Anon),\n z.extend(PageViewEvent, Anon),\n z.extend(ScreenViewEvent, Anon),\n z.extend(TrackEvent, Anon),\n])\n\n/**\n * TypeScript type inferred from {@link BatchExperienceEvent}.\n *\n * @public\n */\nexport type BatchExperienceEvent = z.infer<typeof BatchExperienceEvent>\n\n/**\n * Zod schema describing an array of {@link BatchExperienceEvent} items.\n *\n * @public\n */\nexport const BatchExperienceEventArray = z.array(BatchExperienceEvent)\n\n/**\n * TypeScript type inferred from {@link BatchExperienceEventArray}.\n *\n * @public\n */\nexport type BatchExperienceEventArray = z.infer<typeof BatchExperienceEventArray>\n","import * as z from 'zod/mini'\nimport { ExoViewEvent } from './ExoViewEvent'\nimport { IdentifyEvent } from './IdentifyEvent'\nimport { PageViewEvent } from './PageViewEvent'\nimport { ScreenViewEvent } from './ScreenViewEvent'\nimport { TrackEvent } from './TrackEvent'\nimport { ViewEvent } from './ViewEvent'\n\n/**\n * Zod schema describing any supported Experience API event.\n *\n * @remarks\n * This discriminated union aggregates all event types used by the\n * personalization/experience tracking system.\n *\n * @public\n */\nexport const ExperienceEvent = z.discriminatedUnion('type', [\n ViewEvent,\n ExoViewEvent,\n IdentifyEvent,\n PageViewEvent,\n ScreenViewEvent,\n TrackEvent,\n])\n\n/**\n * TypeScript type inferred from {@link ExperienceEvent}.\n *\n * @public\n */\nexport type ExperienceEvent = z.infer<typeof ExperienceEvent>\n\n/**\n * Union of all possible `type` values for {@link ExperienceEvent}.\n *\n * @public\n */\nexport type ExperienceEventType = ExperienceEvent['type']\n\n/**\n * Zod schema describing an array of {@link ExperienceEvent} items.\n *\n * @public\n */\nexport const ExperienceEventArray = z.array(ExperienceEvent)\n\n/**\n * TypeScript type inferred from {@link ExperienceEventArray}.\n *\n * @public\n */\nexport type ExperienceEventArray = z.infer<typeof ExperienceEventArray>\n","import * as z from 'zod/mini'\nimport { ExperienceEventArray } from './event'\n\n/**\n * Zod schema describing optional configuration for an experience request.\n *\n * @remarks\n * These options can be used to enable or filter specific features when\n * evaluating experiences.\n *\n * @public\n */\nexport const ExperienceRequestOptions = z.object({\n /**\n * Features or capabilities to enable for this request.\n */\n features: z.optional(z.array(z.string())),\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceRequestOptions}.\n *\n * @public\n */\nexport type ExperienceRequestOptions = z.infer<typeof ExperienceRequestOptions>\n\n/**\n * Zod schema describing the data payload for an experience request.\n *\n * @remarks\n * Contains the list of events to be evaluated plus optional request\n * configuration.\n *\n * @public\n */\nexport const ExperienceRequestData = z.object({\n /**\n * Experience events for the Experience API to evaluate.\n *\n * @remarks\n * Must contain at least one event.\n */\n events: ExperienceEventArray.check(z.minLength(1)),\n\n /**\n * Optional configuration for this experience request.\n */\n options: z.optional(ExperienceRequestOptions),\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceRequestData}.\n *\n * @public\n */\nexport type ExperienceRequestData = z.infer<typeof ExperienceRequestData>\n","import * as z from 'zod/mini'\nimport { BatchExperienceEventArray } from './event'\nimport { ExperienceRequestOptions } from './ExperienceRequest'\n\n/**\n * Zod schema describing the data payload for a batch experience request.\n *\n * @remarks\n * Batch events require an `anonymousId` on each event and must contain at\n * least one event.\n */\nexport const BatchExperienceRequestData = z.object({\n /**\n * Batch experience events for the Experience API to evaluate.\n *\n * @remarks\n * Must contain at least one event.\n */\n events: BatchExperienceEventArray.check(z.minLength(1)),\n\n /**\n * Optional configuration for this experience request.\n */\n options: z.optional(ExperienceRequestOptions),\n})\n\n/**\n * TypeScript type inferred from {@link BatchExperienceRequestData}.\n */\nexport type BatchExperienceRequestData = z.infer<typeof BatchExperienceRequestData>\n","import * as z from 'zod/mini'\nimport { Page } from '../../event/properties'\n\n/**\n * Zod schema describing aggregated statistics for a user session.\n *\n * @remarks\n * Captures both per-session metrics (such as `activeSessionLength`) and\n * aggregate metrics (such as `averageSessionLength`) for a given profile.\n *\n * @public\n */\nexport const SessionStatistics = z.object({\n /**\n * Unique identifier for this session statistics record.\n */\n id: z.string(),\n\n /**\n * Indicates whether the visitor has been seen before.\n *\n * @remarks\n * `true` typically means the visitor has at least one prior session.\n */\n isReturningVisitor: z.boolean(),\n\n /**\n * Landing page for the session.\n *\n * @remarks\n * Represents the first page the user visited in this session.\n *\n * @see {@link Page}\n */\n landingPage: Page,\n\n /**\n * Number of sessions associated with this profile or identifier.\n *\n * @remarks\n * Often used in combination with `SessionStatistics.averageSessionLength`.\n */\n count: z.number(),\n\n /**\n * Duration of the active session.\n */\n activeSessionLength: z.number(),\n\n /**\n * Average session duration across all sessions represented by this record.\n *\n * @remarks\n * The unit must match `SessionStatistics.activeSessionLength`.\n */\n averageSessionLength: z.number(),\n})\n\n/**\n * TypeScript type inferred from {@link SessionStatistics}.\n *\n * @public\n */\nexport type SessionStatistics = z.infer<typeof SessionStatistics>\n","import * as z from 'zod/mini'\nimport { GeoLocation } from '../event/properties'\nimport { Traits } from '../event/properties/Traits'\nimport { SessionStatistics } from './properties'\n\n/**\n * Zod schema describing a full user profile as received from the Experience API.\n *\n * @remarks\n * Represents the server-side view of a profile, including identifiers,\n * traits, audiences, location, and session statistics.\n *\n * @public\n */\nexport const Profile = z.object({\n /**\n * Primary identifier of the profile.\n */\n id: z.string(),\n\n /**\n * Stable, long-lived identifier of the profile.\n *\n * @remarks\n * Intended to remain constant across sessions and devices when possible.\n * Usually equal to `id`.\n */\n stableId: z.string(),\n\n /**\n * Random value associated with the profile.\n *\n * @remarks\n * Often used for deterministic bucketing (e.g., in experiments).\n */\n random: z.number(),\n\n /**\n * List of audience identifiers that this profile belongs to.\n */\n audiences: z.array(z.string()),\n\n /**\n * Traits describing the profile (user-level attributes).\n *\n * @see {@link Traits}\n */\n traits: Traits,\n\n /**\n * Geo-location information associated with the profile.\n *\n * @see {@link GeoLocation}\n */\n location: GeoLocation,\n\n /**\n * Aggregated session statistics for the profile.\n *\n * @see {@link SessionStatistics}\n */\n session: SessionStatistics,\n})\n\n/**\n * TypeScript type inferred from {@link Profile}.\n *\n * @public\n */\nexport type Profile = z.infer<typeof Profile>\n\n/**\n * Zod schema describing a partial profile payload used for sending events\n * to the Experience & Insights APIs.\n *\n * @remarks\n * This schema enforces the presence of an `id` field and allows additional\n * JSON-serializable properties via `z.catchall`.\n *\n * @public\n */\nexport const PartialProfile = z.catchall(\n z.object({\n /**\n * Identifier of the profile.\n *\n * @remarks\n * Used to associate events with an existing profile.\n */\n id: z.string(),\n }),\n z.json(),\n)\n\n/**\n * TypeScript type inferred from {@link PartialProfile}.\n *\n * @public\n */\nexport type PartialProfile = z.infer<typeof PartialProfile>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing the common envelope structure of responses\n * from the Experience API.\n *\n * @remarks\n * Concrete responses extend this schema and refine the `data` property\n * to a more specific shape.\n *\n * @public\n */\nexport const ResponseEnvelope = z.object({\n /**\n * Response payload.\n *\n * @remarks\n * The base schema uses an empty object; specific responses extend this\n * with more detailed structures.\n */\n data: z.object(),\n\n /**\n * Human-readable message accompanying the response.\n */\n message: z.string(),\n\n /**\n * Error details, or `null` when the request succeeded.\n */\n error: z.nullable(z.object({ code: z.string() })),\n})\n\n/**\n * TypeScript type inferred from {@link ResponseEnvelope}.\n *\n * @public\n */\nexport type ResponseEnvelope = z.infer<typeof ResponseEnvelope>\n","import * as z from 'zod/mini'\nimport { Profile } from './profile'\nimport { ResponseEnvelope } from './ResponseEnvelope'\n\n/**\n * Zod schema describing the `data` property of a batch experience response.\n *\n * @remarks\n * A batch request can return zero or more profiles. When no profiles are\n * returned, `profiles` can be omitted or an empty array.\n *\n * @public\n */\nexport const BatchExperienceResponseData = z.object({\n /**\n * Profiles evaluated or affected by the batch experience request.\n */\n profiles: z.optional(z.array(Profile)),\n})\n\n/**\n * TypeScript type inferred from {@link BatchExperienceResponseData}.\n *\n * @public\n */\nexport type BatchExperienceResponseData = z.infer<typeof BatchExperienceResponseData>\n\n/**\n * Zod schema describing a batch experience response from the Experience API.\n *\n * @remarks\n * Extends {@link ResponseEnvelope} with {@link BatchExperienceResponseData} as the\n * `data` payload.\n *\n * @public\n */\nexport const BatchExperienceResponse = z.extend(ResponseEnvelope, {\n data: BatchExperienceResponseData,\n})\n\n/**\n * TypeScript type inferred from {@link BatchExperienceResponse}.\n *\n * @public\n */\nexport type BatchExperienceResponse = z.infer<typeof BatchExperienceResponse>\n","import * as z from 'zod/mini'\n\n/**\n * Enumeration of supported change types.\n *\n * @public\n */\nexport const ChangeType = ['Variable', 'Experience', 'Fragment'] as const\n\n/**\n * Zod schema describing the base shape for a change.\n *\n * @remarks\n * This base is extended by specific change types such as {@link VariableChange}.\n *\n * @internal\n */\nexport const ChangeBase = z.object({\n /**\n * Key identifying the subject of the change.\n */\n key: z.string(),\n\n /**\n * Discriminator for the change type.\n *\n * @remarks\n * Can be one of {@link ChangeType} or an arbitrary string for unknown types.\n */\n type: z.union([z.enum(ChangeType), z.string()]),\n\n /**\n * Metadata describing the originating experience and variant index.\n */\n meta: z.object({\n /**\n * Identifier of the personalization or experiment experience.\n */\n experienceId: z.string(),\n\n /**\n * Index of the variant within the experience configuration.\n *\n * @remarks\n * Typically corresponds to the array index in the experience's distribution.\n */\n variantIndex: z.number(),\n }),\n})\n\n/**\n * Zod schema for the allowed value types of a variable change.\n *\n * @remarks\n * Supports primitives and JSON objects keyed by strings.\n *\n * @public\n */\nexport const VariableChangeValue = z.union([\n z.string(),\n z.boolean(),\n z.null(),\n z.number(),\n z.record(z.string(), z.json()),\n])\n\n/**\n * Zod schema representing an unknown change type.\n *\n * @remarks\n * This can be used to handle forward-compatible change payloads where\n * the `type` is not recognized.\n *\n * @public\n */\nexport const UnknownChange = z.extend(ChangeBase, {\n /**\n * Unconstrained change type string.\n */\n type: z.string(),\n\n /**\n * Payload for the change value, with unknown structure.\n */\n value: z.unknown(),\n})\n\n/**\n * TypeScript type inferred from {@link UnknownChange}.\n *\n * @public\n */\nexport type UnknownChange = z.infer<typeof UnknownChange>\n\n/**\n * Zod schema representing a change whose type is `'Variable'`.\n *\n * @remarks\n * The `value` must conform to {@link VariableChangeValue}.\n *\n * @public\n */\nexport const VariableChange = z.extend(ChangeBase, {\n /**\n * Discriminator for a variable change.\n */\n type: z.literal('Variable'),\n\n /**\n * New value for the variable identified by `ChangeBase.key`.\n */\n value: VariableChangeValue,\n})\n\n/**\n * TypeScript type inferred from {@link VariableChange}.\n *\n * @public\n */\nexport type VariableChange = z.infer<typeof VariableChange>\n\n/**\n * Zod schema describing the base shape shared by entity-based changes\n * ({@link ExperienceChange} and {@link FragmentChange}).\n *\n * @internal\n */\nexport const EntityChangeBase = z.object({\n /**\n * Identifier of the entity affected by the change.\n */\n id: z.string(),\n\n /**\n * Identifier of the selected variant.\n */\n variantId: z.string(),\n\n /**\n * Metadata describing the originating optimization and variant index.\n */\n meta: z.object({\n /**\n * Identifier of the optimization that produced this change.\n */\n optimizationId: z.string(),\n\n /**\n * Index of the variant within the optimization's distribution.\n */\n variantIndex: z.number(),\n }),\n})\n\n/**\n * Zod schema representing a change whose type is `'Experience'`.\n *\n * @public\n */\nexport const ExperienceChange = z.extend(EntityChangeBase, {\n /**\n * Discriminator for an experience change.\n */\n type: z.literal('Experience'),\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceChange}.\n *\n * @public\n */\nexport type ExperienceChange = z.infer<typeof ExperienceChange>\n\n/**\n * Zod schema representing a change whose type is `'Fragment'`.\n *\n * @public\n */\nexport const FragmentChange = z.extend(EntityChangeBase, {\n /**\n * Discriminator for a fragment change.\n */\n type: z.literal('Fragment'),\n})\n\n/**\n * TypeScript type inferred from {@link FragmentChange}.\n *\n * @public\n */\nexport type FragmentChange = z.infer<typeof FragmentChange>\n\n/**\n * JSON value type inferred from {@link z.json}.\n *\n * @remarks\n * Represents any JSON-serializable value.\n *\n * @public\n */\nexport type Json = z.infer<typeof z.json>\n\n/**\n * Map of Custom Flag keys to JSON values.\n *\n * @public\n */\nexport type Flags = Record<string, Json>\n\n/**\n * Union of supported change types.\n *\n * @public\n */\nexport const Change = z.discriminatedUnion('type', [\n VariableChange,\n ExperienceChange,\n FragmentChange,\n])\n\n/**\n * TypeScript type inferred from {@link Change}.\n *\n * @public\n */\nexport type Change = z.infer<typeof Change>\n\n/**\n * Zod schema representing an array of {@link Change} items.\n *\n * @public\n */\nexport const ChangeArray = z.array(Change)\n\n/**\n * TypeScript type inferred from {@link ChangeArray}.\n *\n * @public\n */\nexport type ChangeArray = z.infer<typeof ChangeArray>\n","import * as z from 'zod/mini'\n\n/**\n * Zod schema describing a selected optimization outcome for a user.\n *\n * @remarks\n * Represents the result of choosing a specific variant for a given\n * experience, along with additional metadata such as whether the\n * selection is sticky.\n *\n * @public\n */\nexport const SelectedOptimization = z.object({\n /**\n * Identifier of the personalization or experiment experience.\n */\n experienceId: z.string(),\n\n /**\n * Index of the selected variant within the experience configuration.\n *\n * @remarks\n * Typically corresponds to the index of the selected `OptimizationConfig` entry.\n */\n variantIndex: z.number(),\n\n /**\n * Mapping of baseline entry IDs to their selected variant entry IDs.\n *\n * @remarks\n * The keys are component identifiers and the values are the\n * identifiers of the selected variant for that component.\n */\n variants: z.record(z.string(), z.string()),\n\n /**\n * Indicates whether this optimization selection is sticky for the user.\n *\n * @defaultValue false\n *\n * @remarks\n * Reuse sticky selections on subsequent requests for the same user rather\n * than re-allocating a new variant.\n */\n sticky: z.optional(z.prefault(z.boolean(), false)),\n})\n\n/**\n * TypeScript type inferred from {@link SelectedOptimization}.\n *\n * @public\n */\nexport type SelectedOptimization = z.infer<typeof SelectedOptimization>\n\n/**\n * Zod schema describing an array of {@link SelectedOptimization} items.\n *\n * @remarks\n * Useful when multiple experiences are evaluated at once.\n *\n * @public\n */\nexport const SelectedOptimizationArray = z.array(SelectedOptimization)\n\n/**\n * TypeScript type inferred from {@link SelectedOptimizationArray}.\n *\n * @public\n */\nexport type SelectedOptimizationArray = z.infer<typeof SelectedOptimizationArray>\n","import * as z from 'zod/mini'\nimport { ChangeArray } from './change'\nimport { SelectedOptimizationArray } from './optimization'\nimport { Profile } from './profile'\nimport { ResponseEnvelope } from './ResponseEnvelope'\n\n/**\n * Zod schema describing the `data` payload of a standard Experience API response.\n *\n * @remarks\n * Contains the evaluated profile, selected optimizations, and computed\n * changes to apply on the client.\n *\n * @public\n */\nexport const ExperienceData = z.object({\n /**\n * Profile associated with the evaluated events.\n */\n profile: Profile,\n\n /**\n * Selected experiences and variants for the profile.\n *\n * @see {@link SelectedOptimizationArray}\n */\n experiences: SelectedOptimizationArray,\n\n /**\n * Used for Custom Flags.\n *\n * @see {@link ChangeArray}\n */\n changes: ChangeArray,\n})\n\n/**\n * TypeScript type inferred from {@link ExperienceData}.\n *\n * @public\n */\nexport type ExperienceData = z.infer<typeof ExperienceData>\n\n/**\n * Zod schema describing a full Experience API response.\n *\n * @remarks\n * Extends {@link ResponseEnvelope} with {@link ExperienceData} as the `data` payload.\n *\n * @public\n */\nexport const ExperienceResponse = z.extend(ResponseEnvelope, { data: ExperienceData })\n\n/**\n * TypeScript type inferred from {@link ExperienceResponse}.\n *\n * @public\n */\nexport type ExperienceResponse = z.infer<typeof ExperienceResponse>\n\n/**\n * Optimization data shape used for compatibility outside the API adapter.\n *\n * @remarks\n * This type mirrors {@link ExperienceData} but replaces the `experiences`\n * field with `selectedOptimizations` while preserving the rest of the structure.\n *\n * @public\n */\nexport type OptimizationData = Omit<ExperienceData, 'experiences'> & {\n /**\n * Selected optimizations for the profile.\n */\n selectedOptimizations: SelectedOptimizationArray\n}\n","import * as z from 'zod/mini'\nimport { InteractionEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing a `component_click` event used for entry click tracking.\n *\n * @remarks\n * These events track click interactions for entries within an optimized\n * experience.\n *\n * Extends {@link InteractionEventProperties}.\n *\n * @public\n */\nexport const ClickEvent = z.extend(InteractionEventProperties, {\n /**\n * Discriminator indicating that this is an entry click event.\n */\n type: z.literal('component_click'),\n})\n\n/**\n * TypeScript type inferred from {@link ClickEvent}.\n *\n * @public\n */\nexport type ClickEvent = z.infer<typeof ClickEvent>\n","import * as z from 'zod/mini'\nimport { ExoEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing an `exo_node_click` event.\n *\n * @public\n */\nexport const ExoClickEvent = z.extend(ExoEventProperties, {\n type: z.literal('exo_node_click'),\n})\n\n/**\n * TypeScript type inferred from {@link ExoClickEvent}.\n *\n * @public\n */\nexport type ExoClickEvent = z.infer<typeof ExoClickEvent>\n","import * as z from 'zod/mini'\nimport { ExoEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing an `exo_node_hover` event.\n *\n * @public\n */\nexport const ExoHoverEvent = z.extend(ExoEventProperties, {\n type: z.literal('exo_node_hover'),\n hoverDurationMs: z.int().check(z.minimum(0)),\n hoverId: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link ExoHoverEvent}.\n *\n * @public\n */\nexport type ExoHoverEvent = z.infer<typeof ExoHoverEvent>\n","import * as z from 'zod/mini'\nimport { InteractionEventProperties } from '../../experience/event'\n\n/**\n * Zod schema describing a `component_hover` event used for entry hover tracking.\n *\n * @remarks\n * These events track hover interactions for entries within an optimized\n * experience.\n *\n * Extends {@link InteractionEventProperties}.\n *\n * @public\n */\nexport const HoverEvent = z.extend(InteractionEventProperties, {\n /**\n * Discriminator indicating that this is an entry hover event.\n */\n type: z.literal('component_hover'),\n /**\n * Monotonically increasing hover duration for the active hover.\n *\n * @remarks\n * This value is updated and re-emitted while the same hover remains active.\n */\n hoverDurationMs: z.number(),\n /**\n * UUID identifying a single active hover session.\n *\n * @remarks\n * Multiple events emitted for the same active hover share this identifier.\n */\n hoverId: z.string(),\n})\n\n/**\n * TypeScript type inferred from {@link HoverEvent}.\n *\n * @public\n */\nexport type HoverEvent = z.infer<typeof HoverEvent>\n","import * as z from 'zod/mini'\nimport { ExoViewEvent, ViewEvent } from '../../experience/event'\nimport { ClickEvent } from './ClickEvent'\nimport { ExoClickEvent } from './ExoClickEvent'\nimport { ExoHoverEvent } from './ExoHoverEvent'\nimport { HoverEvent } from './HoverEvent'\n\n/**\n * Zod schema describing an Insights event.\n *\n * @remarks\n * Insights events include legacy component interactions and ExO node\n * interactions.\n *\n * @public\n */\nexport const InsightsEvent = z.discriminatedUnion('type', [\n ViewEvent,\n ClickEvent,\n HoverEvent,\n ExoViewEvent,\n ExoClickEvent,\n ExoHoverEvent,\n])\n\n/**\n * TypeScript type inferred from {@link InsightsEvent}.\n *\n * @public\n */\nexport type InsightsEvent = z.infer<typeof InsightsEvent>\n\n/**\n * Union of all possible `type` values for {@link InsightsEvent}.\n *\n * @public\n */\nexport type InsightsEventType = InsightsEvent['type']\n\n/**\n * Zod schema describing an array of {@link InsightsEvent} items.\n *\n * @public\n */\nexport const InsightsEventArray = z.array(InsightsEvent)\n\n/**\n * TypeScript type inferred from {@link InsightsEventArray}.\n *\n * @public\n */\nexport type InsightsEventArray = z.infer<typeof InsightsEventArray>\n","import * as z from 'zod/mini'\nimport { PartialProfile } from '../../experience/profile'\nimport { InsightsEventArray } from './InsightsEvent'\n\n/**\n * Zod schema describing a batched Insights event payload.\n *\n * @remarks\n * Combines a {@link PartialProfile} with one or more Insights events\n * to be sent to the Contentful Insights API.\n *\n * @public\n */\nexport const BatchInsightsEvent = z.object({\n /**\n * Partial profile information used to associate events with a user.\n *\n * @see {@link PartialProfile}\n */\n profile: PartialProfile,\n\n /**\n * Insights events to record for this profile.\n *\n * @see {@link InsightsEventArray}\n */\n events: InsightsEventArray,\n})\n\n/**\n * TypeScript type inferred from {@link BatchInsightsEvent}.\n *\n * @public\n */\nexport type BatchInsightsEvent = z.infer<typeof BatchInsightsEvent>\n\n/**\n * Zod schema describing an array of {@link BatchInsightsEvent} items.\n *\n * @remarks\n * Useful when sending multiple profile/event batches in a single request.\n *\n * @public\n */\nexport const BatchInsightsEventArray = z.array(BatchInsightsEvent)\n\n/**\n * TypeScript type inferred from {@link BatchInsightsEventArray}.\n *\n * @public\n */\nexport type BatchInsightsEventArray = z.infer<typeof BatchInsightsEventArray>\n","import * as z from 'zod/mini'\nimport en from 'zod/v4/locales/en.js'\n\nz.config(en())\n\nexport function parseWithFriendlyError<T extends z.ZodMiniType>(\n schema: T,\n data: unknown,\n): z.output<T> {\n const result = schema.safeParse(data)\n if (result.success) return result.data\n\n throw new Error(z.prettifyError(result.error))\n}\n"],"names":["App","z","Campaign","Channel","Dictionary","COUNTRY_CODE_LENGTH","Coordinates","GeoLocation","Library","Page","Properties","Screen","Traits","UniversalEventContext","UniversalEventProperties","ExoEntityKind","ExoEventProperties","ExoViewEvent","IdentifyEvent","PageEventContext","PageViewEvent","ScreenEventContext","ScreenViewEvent","TrackEvent","InteractionEventProperties","ViewEvent","Anon","BatchExperienceEvent","BatchExperienceEventArray","ExperienceEvent","ExperienceEventArray","ExperienceRequestOptions","ExperienceRequestData","BatchExperienceRequestData","SessionStatistics","Profile","PartialProfile","ResponseEnvelope","BatchExperienceResponseData","BatchExperienceResponse","ChangeType","ChangeBase","VariableChangeValue","UnknownChange","VariableChange","EntityChangeBase","ExperienceChange","FragmentChange","Change","ChangeArray","SelectedOptimization","SelectedOptimizationArray","ExperienceData","ExperienceResponse","ClickEvent","ExoClickEvent","ExoHoverEvent","HoverEvent","InsightsEvent","InsightsEventArray","BatchInsightsEvent","BatchInsightsEventArray","en","parseWithFriendlyError","schema","data","result","Error"],"mappings":"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"}