safetykit 0.31.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -257,13 +257,16 @@ module SafetyKit
257
257
  attr_writer :metadata
258
258
 
259
259
  # Reusable resources observed during the event. Use this for emails, phone
260
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
261
- # identifiers.
260
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
261
+ # caller-defined ids, or similar identifiers.
262
262
  sig do
263
263
  returns(
264
264
  T.nilable(
265
265
  T::Array[
266
- SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed
266
+ T.any(
267
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource,
268
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::UnionMember1
269
+ )
267
270
  ]
268
271
  )
269
272
  )
@@ -274,7 +277,10 @@ module SafetyKit
274
277
  params(
275
278
  resources_used:
276
279
  T::Array[
277
- SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::OrHash
280
+ T.any(
281
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::OrHash,
282
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::UnionMember1::OrHash
283
+ )
278
284
  ]
279
285
  ).void
280
286
  end
@@ -307,7 +313,10 @@ module SafetyKit
307
313
  ],
308
314
  resources_used:
309
315
  T::Array[
310
- SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::OrHash
316
+ T.any(
317
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::OrHash,
318
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::UnionMember1::OrHash
319
+ )
311
320
  ]
312
321
  ).returns(T.attached_class)
313
322
  end
@@ -340,8 +349,8 @@ module SafetyKit
340
349
  # be strings, numbers, booleans, or arrays of those scalar values.
341
350
  metadata: nil,
342
351
  # Reusable resources observed during the event. Use this for emails, phone
343
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
344
- # identifiers.
352
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
353
+ # caller-defined ids, or similar identifiers.
345
354
  resources_used: nil
346
355
  )
347
356
  end
@@ -373,7 +382,10 @@ module SafetyKit
373
382
  ],
374
383
  resources_used:
375
384
  T::Array[
376
- SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed
385
+ T.any(
386
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource,
387
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::UnionMember1
388
+ )
377
389
  ]
378
390
  }
379
391
  )
@@ -790,42 +802,160 @@ module SafetyKit
790
802
  )
791
803
  end
792
804
 
793
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
794
- OrHash =
805
+ # Real-world, account, social, or caller-defined resource used during the event.
806
+ module ResourcesUsed
807
+ extend SafetyKit::Internal::Type::Union
808
+
809
+ Variants =
795
810
  T.type_alias do
796
811
  T.any(
797
- SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed,
798
- SafetyKit::Internal::AnyHash
812
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource,
813
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::UnionMember1
799
814
  )
800
815
  end
801
816
 
802
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
803
- # youtube, linkedin, or another stable snake_case identifier.
804
- sig { returns(String) }
805
- attr_accessor :type
817
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
818
+ OrHash =
819
+ T.type_alias do
820
+ T.any(
821
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource,
822
+ SafetyKit::Internal::AnyHash
823
+ )
824
+ end
806
825
 
807
- # Resource value used during the event. SafetyKit stores a normalized hash of this
808
- # value, not the raw value. When type is url, this must be a valid URL.
809
- sig { returns(String) }
810
- attr_accessor :value
826
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
827
+ # urlEncode(namespace) + '/' + urlEncode(value).
828
+ sig { returns(String) }
829
+ attr_accessor :namespace
811
830
 
812
- # Real-world or account resource used during the event, such as an email, phone
813
- # number, address, URL, social handle, or payment identifier.
814
- sig do
815
- params(type: String, value: String).returns(T.attached_class)
831
+ # Caller-defined entity identifier resource.
832
+ sig do
833
+ returns(
834
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
835
+ )
836
+ end
837
+ attr_accessor :type
838
+
839
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
840
+ # encoded namespace/value pair, not the raw value.
841
+ sig { returns(String) }
842
+ attr_accessor :value
843
+
844
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
845
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
846
+ sig do
847
+ params(
848
+ namespace: String,
849
+ type:
850
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
851
+ value: String
852
+ ).returns(T.attached_class)
853
+ end
854
+ def self.new(
855
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
856
+ # urlEncode(namespace) + '/' + urlEncode(value).
857
+ namespace:,
858
+ # Caller-defined entity identifier resource.
859
+ type:,
860
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
861
+ # encoded namespace/value pair, not the raw value.
862
+ value:
863
+ )
864
+ end
865
+
866
+ sig do
867
+ override.returns(
868
+ {
869
+ namespace: String,
870
+ type:
871
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
872
+ value: String
873
+ }
874
+ )
875
+ end
876
+ def to_hash
877
+ end
878
+
879
+ # Caller-defined entity identifier resource.
880
+ module Type
881
+ extend SafetyKit::Internal::Type::Enum
882
+
883
+ TaggedSymbol =
884
+ T.type_alias do
885
+ T.all(
886
+ Symbol,
887
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::Type
888
+ )
889
+ end
890
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
891
+
892
+ ID =
893
+ T.let(
894
+ :id,
895
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
896
+ )
897
+
898
+ sig do
899
+ override.returns(
900
+ T::Array[
901
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
902
+ ]
903
+ )
904
+ end
905
+ def self.values
906
+ end
907
+ end
816
908
  end
817
- def self.new(
818
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
819
- # youtube, linkedin, or another stable snake_case identifier.
820
- type:,
909
+
910
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
911
+ OrHash =
912
+ T.type_alias do
913
+ T.any(
914
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::UnionMember1,
915
+ SafetyKit::Internal::AnyHash
916
+ )
917
+ end
918
+
919
+ # Resource family, such as email, phone, name, address, url, social handles,
920
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
921
+ # resource shape when the value belongs to a caller-defined namespace.
922
+ sig { returns(String) }
923
+ attr_accessor :type
924
+
821
925
  # Resource value used during the event. SafetyKit stores a normalized hash of this
822
926
  # value, not the raw value. When type is url, this must be a valid URL.
823
- value:
824
- )
927
+ sig { returns(String) }
928
+ attr_accessor :value
929
+
930
+ # Real-world or account resource used during the event, such as an email, phone
931
+ # number, address, URL, social handle, or payment identifier.
932
+ sig do
933
+ params(type: String, value: String).returns(T.attached_class)
934
+ end
935
+ def self.new(
936
+ # Resource family, such as email, phone, name, address, url, social handles,
937
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
938
+ # resource shape when the value belongs to a caller-defined namespace.
939
+ type:,
940
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
941
+ # value, not the raw value. When type is url, this must be a valid URL.
942
+ value:
943
+ )
944
+ end
945
+
946
+ sig { override.returns({ type: String, value: String }) }
947
+ def to_hash
948
+ end
825
949
  end
826
950
 
827
- sig { override.returns({ type: String, value: String }) }
828
- def to_hash
951
+ sig do
952
+ override.returns(
953
+ T::Array[
954
+ SafetyKit::Beta::EventCreateParams::Body::UserContactEventRequest::ResourcesUsed::Variants
955
+ ]
956
+ )
957
+ end
958
+ def self.variants
829
959
  end
830
960
  end
831
961
  end
@@ -935,13 +1065,16 @@ module SafetyKit
935
1065
  attr_writer :metadata
936
1066
 
937
1067
  # Reusable resources observed during the event. Use this for emails, phone
938
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
939
- # identifiers.
1068
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
1069
+ # caller-defined ids, or similar identifiers.
940
1070
  sig do
941
1071
  returns(
942
1072
  T.nilable(
943
1073
  T::Array[
944
- SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed
1074
+ T.any(
1075
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource,
1076
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::UnionMember1
1077
+ )
945
1078
  ]
946
1079
  )
947
1080
  )
@@ -952,7 +1085,10 @@ module SafetyKit
952
1085
  params(
953
1086
  resources_used:
954
1087
  T::Array[
955
- SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::OrHash
1088
+ T.any(
1089
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::OrHash,
1090
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::UnionMember1::OrHash
1091
+ )
956
1092
  ]
957
1093
  ).void
958
1094
  end
@@ -984,7 +1120,10 @@ module SafetyKit
984
1120
  ],
985
1121
  resources_used:
986
1122
  T::Array[
987
- SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::OrHash
1123
+ T.any(
1124
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::OrHash,
1125
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::UnionMember1::OrHash
1126
+ )
988
1127
  ]
989
1128
  ).returns(T.attached_class)
990
1129
  end
@@ -1014,8 +1153,8 @@ module SafetyKit
1014
1153
  # be strings, numbers, booleans, or arrays of those scalar values.
1015
1154
  metadata: nil,
1016
1155
  # Reusable resources observed during the event. Use this for emails, phone
1017
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
1018
- # identifiers.
1156
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
1157
+ # caller-defined ids, or similar identifiers.
1019
1158
  resources_used: nil
1020
1159
  )
1021
1160
  end
@@ -1046,7 +1185,10 @@ module SafetyKit
1046
1185
  ],
1047
1186
  resources_used:
1048
1187
  T::Array[
1049
- SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed
1188
+ T.any(
1189
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource,
1190
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::UnionMember1
1191
+ )
1050
1192
  ]
1051
1193
  }
1052
1194
  )
@@ -1463,42 +1605,160 @@ module SafetyKit
1463
1605
  )
1464
1606
  end
1465
1607
 
1466
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
1467
- OrHash =
1608
+ # Real-world, account, social, or caller-defined resource used during the event.
1609
+ module ResourcesUsed
1610
+ extend SafetyKit::Internal::Type::Union
1611
+
1612
+ Variants =
1468
1613
  T.type_alias do
1469
1614
  T.any(
1470
- SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed,
1471
- SafetyKit::Internal::AnyHash
1615
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource,
1616
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::UnionMember1
1472
1617
  )
1473
1618
  end
1474
1619
 
1475
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
1476
- # youtube, linkedin, or another stable snake_case identifier.
1477
- sig { returns(String) }
1478
- attr_accessor :type
1620
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
1621
+ OrHash =
1622
+ T.type_alias do
1623
+ T.any(
1624
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource,
1625
+ SafetyKit::Internal::AnyHash
1626
+ )
1627
+ end
1479
1628
 
1480
- # Resource value used during the event. SafetyKit stores a normalized hash of this
1481
- # value, not the raw value. When type is url, this must be a valid URL.
1482
- sig { returns(String) }
1483
- attr_accessor :value
1629
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
1630
+ # urlEncode(namespace) + '/' + urlEncode(value).
1631
+ sig { returns(String) }
1632
+ attr_accessor :namespace
1484
1633
 
1485
- # Real-world or account resource used during the event, such as an email, phone
1486
- # number, address, URL, social handle, or payment identifier.
1487
- sig do
1488
- params(type: String, value: String).returns(T.attached_class)
1634
+ # Caller-defined entity identifier resource.
1635
+ sig do
1636
+ returns(
1637
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
1638
+ )
1639
+ end
1640
+ attr_accessor :type
1641
+
1642
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
1643
+ # encoded namespace/value pair, not the raw value.
1644
+ sig { returns(String) }
1645
+ attr_accessor :value
1646
+
1647
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
1648
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
1649
+ sig do
1650
+ params(
1651
+ namespace: String,
1652
+ type:
1653
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
1654
+ value: String
1655
+ ).returns(T.attached_class)
1656
+ end
1657
+ def self.new(
1658
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
1659
+ # urlEncode(namespace) + '/' + urlEncode(value).
1660
+ namespace:,
1661
+ # Caller-defined entity identifier resource.
1662
+ type:,
1663
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
1664
+ # encoded namespace/value pair, not the raw value.
1665
+ value:
1666
+ )
1667
+ end
1668
+
1669
+ sig do
1670
+ override.returns(
1671
+ {
1672
+ namespace: String,
1673
+ type:
1674
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
1675
+ value: String
1676
+ }
1677
+ )
1678
+ end
1679
+ def to_hash
1680
+ end
1681
+
1682
+ # Caller-defined entity identifier resource.
1683
+ module Type
1684
+ extend SafetyKit::Internal::Type::Enum
1685
+
1686
+ TaggedSymbol =
1687
+ T.type_alias do
1688
+ T.all(
1689
+ Symbol,
1690
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::Type
1691
+ )
1692
+ end
1693
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1694
+
1695
+ ID =
1696
+ T.let(
1697
+ :id,
1698
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
1699
+ )
1700
+
1701
+ sig do
1702
+ override.returns(
1703
+ T::Array[
1704
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
1705
+ ]
1706
+ )
1707
+ end
1708
+ def self.values
1709
+ end
1710
+ end
1489
1711
  end
1490
- def self.new(
1491
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
1492
- # youtube, linkedin, or another stable snake_case identifier.
1493
- type:,
1712
+
1713
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
1714
+ OrHash =
1715
+ T.type_alias do
1716
+ T.any(
1717
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::UnionMember1,
1718
+ SafetyKit::Internal::AnyHash
1719
+ )
1720
+ end
1721
+
1722
+ # Resource family, such as email, phone, name, address, url, social handles,
1723
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
1724
+ # resource shape when the value belongs to a caller-defined namespace.
1725
+ sig { returns(String) }
1726
+ attr_accessor :type
1727
+
1494
1728
  # Resource value used during the event. SafetyKit stores a normalized hash of this
1495
1729
  # value, not the raw value. When type is url, this must be a valid URL.
1496
- value:
1497
- )
1730
+ sig { returns(String) }
1731
+ attr_accessor :value
1732
+
1733
+ # Real-world or account resource used during the event, such as an email, phone
1734
+ # number, address, URL, social handle, or payment identifier.
1735
+ sig do
1736
+ params(type: String, value: String).returns(T.attached_class)
1737
+ end
1738
+ def self.new(
1739
+ # Resource family, such as email, phone, name, address, url, social handles,
1740
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
1741
+ # resource shape when the value belongs to a caller-defined namespace.
1742
+ type:,
1743
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
1744
+ # value, not the raw value. When type is url, this must be a valid URL.
1745
+ value:
1746
+ )
1747
+ end
1748
+
1749
+ sig { override.returns({ type: String, value: String }) }
1750
+ def to_hash
1751
+ end
1498
1752
  end
1499
1753
 
1500
- sig { override.returns({ type: String, value: String }) }
1501
- def to_hash
1754
+ sig do
1755
+ override.returns(
1756
+ T::Array[
1757
+ SafetyKit::Beta::EventCreateParams::Body::ContentUploadedEventRequest::ResourcesUsed::Variants
1758
+ ]
1759
+ )
1760
+ end
1761
+ def self.variants
1502
1762
  end
1503
1763
  end
1504
1764
  end
@@ -1627,13 +1887,16 @@ module SafetyKit
1627
1887
  attr_writer :metadata
1628
1888
 
1629
1889
  # Reusable resources observed during the event. Use this for emails, phone
1630
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
1631
- # identifiers.
1890
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
1891
+ # caller-defined ids, or similar identifiers.
1632
1892
  sig do
1633
1893
  returns(
1634
1894
  T.nilable(
1635
1895
  T::Array[
1636
- SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed
1896
+ T.any(
1897
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource,
1898
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::UnionMember1
1899
+ )
1637
1900
  ]
1638
1901
  )
1639
1902
  )
@@ -1644,7 +1907,10 @@ module SafetyKit
1644
1907
  params(
1645
1908
  resources_used:
1646
1909
  T::Array[
1647
- SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::OrHash
1910
+ T.any(
1911
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::OrHash,
1912
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::UnionMember1::OrHash
1913
+ )
1648
1914
  ]
1649
1915
  ).void
1650
1916
  end
@@ -1679,7 +1945,10 @@ module SafetyKit
1679
1945
  ],
1680
1946
  resources_used:
1681
1947
  T::Array[
1682
- SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::OrHash
1948
+ T.any(
1949
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::OrHash,
1950
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::UnionMember1::OrHash
1951
+ )
1683
1952
  ]
1684
1953
  ).returns(T.attached_class)
1685
1954
  end
@@ -1710,8 +1979,8 @@ module SafetyKit
1710
1979
  # be strings, numbers, booleans, or arrays of those scalar values.
1711
1980
  metadata: nil,
1712
1981
  # Reusable resources observed during the event. Use this for emails, phone
1713
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
1714
- # identifiers.
1982
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
1983
+ # caller-defined ids, or similar identifiers.
1715
1984
  resources_used: nil
1716
1985
  )
1717
1986
  end
@@ -1745,7 +2014,10 @@ module SafetyKit
1745
2014
  ],
1746
2015
  resources_used:
1747
2016
  T::Array[
1748
- SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed
2017
+ T.any(
2018
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource,
2019
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::UnionMember1
2020
+ )
1749
2021
  ]
1750
2022
  }
1751
2023
  )
@@ -2408,42 +2680,160 @@ module SafetyKit
2408
2680
  )
2409
2681
  end
2410
2682
 
2411
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
2412
- OrHash =
2683
+ # Real-world, account, social, or caller-defined resource used during the event.
2684
+ module ResourcesUsed
2685
+ extend SafetyKit::Internal::Type::Union
2686
+
2687
+ Variants =
2413
2688
  T.type_alias do
2414
2689
  T.any(
2415
- SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed,
2416
- SafetyKit::Internal::AnyHash
2690
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource,
2691
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::UnionMember1
2417
2692
  )
2418
2693
  end
2419
2694
 
2420
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
2421
- # youtube, linkedin, or another stable snake_case identifier.
2422
- sig { returns(String) }
2423
- attr_accessor :type
2695
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
2696
+ OrHash =
2697
+ T.type_alias do
2698
+ T.any(
2699
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource,
2700
+ SafetyKit::Internal::AnyHash
2701
+ )
2702
+ end
2424
2703
 
2425
- # Resource value used during the event. SafetyKit stores a normalized hash of this
2426
- # value, not the raw value. When type is url, this must be a valid URL.
2427
- sig { returns(String) }
2428
- attr_accessor :value
2704
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
2705
+ # urlEncode(namespace) + '/' + urlEncode(value).
2706
+ sig { returns(String) }
2707
+ attr_accessor :namespace
2429
2708
 
2430
- # Real-world or account resource used during the event, such as an email, phone
2431
- # number, address, URL, social handle, or payment identifier.
2432
- sig do
2433
- params(type: String, value: String).returns(T.attached_class)
2709
+ # Caller-defined entity identifier resource.
2710
+ sig do
2711
+ returns(
2712
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
2713
+ )
2714
+ end
2715
+ attr_accessor :type
2716
+
2717
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
2718
+ # encoded namespace/value pair, not the raw value.
2719
+ sig { returns(String) }
2720
+ attr_accessor :value
2721
+
2722
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
2723
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
2724
+ sig do
2725
+ params(
2726
+ namespace: String,
2727
+ type:
2728
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
2729
+ value: String
2730
+ ).returns(T.attached_class)
2731
+ end
2732
+ def self.new(
2733
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
2734
+ # urlEncode(namespace) + '/' + urlEncode(value).
2735
+ namespace:,
2736
+ # Caller-defined entity identifier resource.
2737
+ type:,
2738
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
2739
+ # encoded namespace/value pair, not the raw value.
2740
+ value:
2741
+ )
2742
+ end
2743
+
2744
+ sig do
2745
+ override.returns(
2746
+ {
2747
+ namespace: String,
2748
+ type:
2749
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
2750
+ value: String
2751
+ }
2752
+ )
2753
+ end
2754
+ def to_hash
2755
+ end
2756
+
2757
+ # Caller-defined entity identifier resource.
2758
+ module Type
2759
+ extend SafetyKit::Internal::Type::Enum
2760
+
2761
+ TaggedSymbol =
2762
+ T.type_alias do
2763
+ T.all(
2764
+ Symbol,
2765
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::Type
2766
+ )
2767
+ end
2768
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
2769
+
2770
+ ID =
2771
+ T.let(
2772
+ :id,
2773
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
2774
+ )
2775
+
2776
+ sig do
2777
+ override.returns(
2778
+ T::Array[
2779
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
2780
+ ]
2781
+ )
2782
+ end
2783
+ def self.values
2784
+ end
2785
+ end
2434
2786
  end
2435
- def self.new(
2436
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
2437
- # youtube, linkedin, or another stable snake_case identifier.
2438
- type:,
2787
+
2788
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
2789
+ OrHash =
2790
+ T.type_alias do
2791
+ T.any(
2792
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::UnionMember1,
2793
+ SafetyKit::Internal::AnyHash
2794
+ )
2795
+ end
2796
+
2797
+ # Resource family, such as email, phone, name, address, url, social handles,
2798
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
2799
+ # resource shape when the value belongs to a caller-defined namespace.
2800
+ sig { returns(String) }
2801
+ attr_accessor :type
2802
+
2439
2803
  # Resource value used during the event. SafetyKit stores a normalized hash of this
2440
2804
  # value, not the raw value. When type is url, this must be a valid URL.
2441
- value:
2442
- )
2805
+ sig { returns(String) }
2806
+ attr_accessor :value
2807
+
2808
+ # Real-world or account resource used during the event, such as an email, phone
2809
+ # number, address, URL, social handle, or payment identifier.
2810
+ sig do
2811
+ params(type: String, value: String).returns(T.attached_class)
2812
+ end
2813
+ def self.new(
2814
+ # Resource family, such as email, phone, name, address, url, social handles,
2815
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
2816
+ # resource shape when the value belongs to a caller-defined namespace.
2817
+ type:,
2818
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
2819
+ # value, not the raw value. When type is url, this must be a valid URL.
2820
+ value:
2821
+ )
2822
+ end
2823
+
2824
+ sig { override.returns({ type: String, value: String }) }
2825
+ def to_hash
2826
+ end
2443
2827
  end
2444
2828
 
2445
- sig { override.returns({ type: String, value: String }) }
2446
- def to_hash
2829
+ sig do
2830
+ override.returns(
2831
+ T::Array[
2832
+ SafetyKit::Beta::EventCreateParams::Body::ProductChangedEventRequest::ResourcesUsed::Variants
2833
+ ]
2834
+ )
2835
+ end
2836
+ def self.variants
2447
2837
  end
2448
2838
  end
2449
2839
  end
@@ -2568,13 +2958,16 @@ module SafetyKit
2568
2958
  attr_writer :metadata
2569
2959
 
2570
2960
  # Reusable resources observed during the event. Use this for emails, phone
2571
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
2572
- # identifiers.
2961
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
2962
+ # caller-defined ids, or similar identifiers.
2573
2963
  sig do
2574
2964
  returns(
2575
2965
  T.nilable(
2576
2966
  T::Array[
2577
- SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed
2967
+ T.any(
2968
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource,
2969
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::UnionMember1
2970
+ )
2578
2971
  ]
2579
2972
  )
2580
2973
  )
@@ -2585,7 +2978,10 @@ module SafetyKit
2585
2978
  params(
2586
2979
  resources_used:
2587
2980
  T::Array[
2588
- SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::OrHash
2981
+ T.any(
2982
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::OrHash,
2983
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::UnionMember1::OrHash
2984
+ )
2589
2985
  ]
2590
2986
  ).void
2591
2987
  end
@@ -2617,7 +3013,10 @@ module SafetyKit
2617
3013
  ],
2618
3014
  resources_used:
2619
3015
  T::Array[
2620
- SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::OrHash
3016
+ T.any(
3017
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::OrHash,
3018
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::UnionMember1::OrHash
3019
+ )
2621
3020
  ]
2622
3021
  ).returns(T.attached_class)
2623
3022
  end
@@ -2647,8 +3046,8 @@ module SafetyKit
2647
3046
  # be strings, numbers, booleans, or arrays of those scalar values.
2648
3047
  metadata: nil,
2649
3048
  # Reusable resources observed during the event. Use this for emails, phone
2650
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
2651
- # identifiers.
3049
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
3050
+ # caller-defined ids, or similar identifiers.
2652
3051
  resources_used: nil
2653
3052
  )
2654
3053
  end
@@ -2679,7 +3078,10 @@ module SafetyKit
2679
3078
  ],
2680
3079
  resources_used:
2681
3080
  T::Array[
2682
- SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed
3081
+ T.any(
3082
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource,
3083
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::UnionMember1
3084
+ )
2683
3085
  ]
2684
3086
  }
2685
3087
  )
@@ -3096,42 +3498,160 @@ module SafetyKit
3096
3498
  )
3097
3499
  end
3098
3500
 
3099
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
3100
- OrHash =
3501
+ # Real-world, account, social, or caller-defined resource used during the event.
3502
+ module ResourcesUsed
3503
+ extend SafetyKit::Internal::Type::Union
3504
+
3505
+ Variants =
3101
3506
  T.type_alias do
3102
3507
  T.any(
3103
- SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed,
3104
- SafetyKit::Internal::AnyHash
3508
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource,
3509
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::UnionMember1
3105
3510
  )
3106
3511
  end
3107
3512
 
3108
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3109
- # youtube, linkedin, or another stable snake_case identifier.
3110
- sig { returns(String) }
3111
- attr_accessor :type
3513
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
3514
+ OrHash =
3515
+ T.type_alias do
3516
+ T.any(
3517
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource,
3518
+ SafetyKit::Internal::AnyHash
3519
+ )
3520
+ end
3112
3521
 
3113
- # Resource value used during the event. SafetyKit stores a normalized hash of this
3114
- # value, not the raw value. When type is url, this must be a valid URL.
3115
- sig { returns(String) }
3116
- attr_accessor :value
3522
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
3523
+ # urlEncode(namespace) + '/' + urlEncode(value).
3524
+ sig { returns(String) }
3525
+ attr_accessor :namespace
3117
3526
 
3118
- # Real-world or account resource used during the event, such as an email, phone
3119
- # number, address, URL, social handle, or payment identifier.
3120
- sig do
3121
- params(type: String, value: String).returns(T.attached_class)
3527
+ # Caller-defined entity identifier resource.
3528
+ sig do
3529
+ returns(
3530
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
3531
+ )
3532
+ end
3533
+ attr_accessor :type
3534
+
3535
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
3536
+ # encoded namespace/value pair, not the raw value.
3537
+ sig { returns(String) }
3538
+ attr_accessor :value
3539
+
3540
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
3541
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
3542
+ sig do
3543
+ params(
3544
+ namespace: String,
3545
+ type:
3546
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
3547
+ value: String
3548
+ ).returns(T.attached_class)
3549
+ end
3550
+ def self.new(
3551
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
3552
+ # urlEncode(namespace) + '/' + urlEncode(value).
3553
+ namespace:,
3554
+ # Caller-defined entity identifier resource.
3555
+ type:,
3556
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
3557
+ # encoded namespace/value pair, not the raw value.
3558
+ value:
3559
+ )
3560
+ end
3561
+
3562
+ sig do
3563
+ override.returns(
3564
+ {
3565
+ namespace: String,
3566
+ type:
3567
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
3568
+ value: String
3569
+ }
3570
+ )
3571
+ end
3572
+ def to_hash
3573
+ end
3574
+
3575
+ # Caller-defined entity identifier resource.
3576
+ module Type
3577
+ extend SafetyKit::Internal::Type::Enum
3578
+
3579
+ TaggedSymbol =
3580
+ T.type_alias do
3581
+ T.all(
3582
+ Symbol,
3583
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::Type
3584
+ )
3585
+ end
3586
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
3587
+
3588
+ ID =
3589
+ T.let(
3590
+ :id,
3591
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
3592
+ )
3593
+
3594
+ sig do
3595
+ override.returns(
3596
+ T::Array[
3597
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
3598
+ ]
3599
+ )
3600
+ end
3601
+ def self.values
3602
+ end
3603
+ end
3122
3604
  end
3123
- def self.new(
3124
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3125
- # youtube, linkedin, or another stable snake_case identifier.
3126
- type:,
3605
+
3606
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
3607
+ OrHash =
3608
+ T.type_alias do
3609
+ T.any(
3610
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::UnionMember1,
3611
+ SafetyKit::Internal::AnyHash
3612
+ )
3613
+ end
3614
+
3615
+ # Resource family, such as email, phone, name, address, url, social handles,
3616
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
3617
+ # resource shape when the value belongs to a caller-defined namespace.
3618
+ sig { returns(String) }
3619
+ attr_accessor :type
3620
+
3127
3621
  # Resource value used during the event. SafetyKit stores a normalized hash of this
3128
3622
  # value, not the raw value. When type is url, this must be a valid URL.
3129
- value:
3130
- )
3623
+ sig { returns(String) }
3624
+ attr_accessor :value
3625
+
3626
+ # Real-world or account resource used during the event, such as an email, phone
3627
+ # number, address, URL, social handle, or payment identifier.
3628
+ sig do
3629
+ params(type: String, value: String).returns(T.attached_class)
3630
+ end
3631
+ def self.new(
3632
+ # Resource family, such as email, phone, name, address, url, social handles,
3633
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
3634
+ # resource shape when the value belongs to a caller-defined namespace.
3635
+ type:,
3636
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
3637
+ # value, not the raw value. When type is url, this must be a valid URL.
3638
+ value:
3639
+ )
3640
+ end
3641
+
3642
+ sig { override.returns({ type: String, value: String }) }
3643
+ def to_hash
3644
+ end
3131
3645
  end
3132
3646
 
3133
- sig { override.returns({ type: String, value: String }) }
3134
- def to_hash
3647
+ sig do
3648
+ override.returns(
3649
+ T::Array[
3650
+ SafetyKit::Beta::EventCreateParams::Body::CreateAccountEventRequest::ResourcesUsed::Variants
3651
+ ]
3652
+ )
3653
+ end
3654
+ def self.variants
3135
3655
  end
3136
3656
  end
3137
3657
  end
@@ -3256,13 +3776,16 @@ module SafetyKit
3256
3776
  attr_writer :metadata
3257
3777
 
3258
3778
  # Reusable resources observed during the event. Use this for emails, phone
3259
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3260
- # identifiers.
3779
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
3780
+ # caller-defined ids, or similar identifiers.
3261
3781
  sig do
3262
3782
  returns(
3263
3783
  T.nilable(
3264
3784
  T::Array[
3265
- SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed
3785
+ T.any(
3786
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource,
3787
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::UnionMember1
3788
+ )
3266
3789
  ]
3267
3790
  )
3268
3791
  )
@@ -3273,7 +3796,10 @@ module SafetyKit
3273
3796
  params(
3274
3797
  resources_used:
3275
3798
  T::Array[
3276
- SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::OrHash
3799
+ T.any(
3800
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::OrHash,
3801
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::UnionMember1::OrHash
3802
+ )
3277
3803
  ]
3278
3804
  ).void
3279
3805
  end
@@ -3306,7 +3832,10 @@ module SafetyKit
3306
3832
  ],
3307
3833
  resources_used:
3308
3834
  T::Array[
3309
- SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::OrHash
3835
+ T.any(
3836
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::OrHash,
3837
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::UnionMember1::OrHash
3838
+ )
3310
3839
  ]
3311
3840
  ).returns(T.attached_class)
3312
3841
  end
@@ -3336,8 +3865,8 @@ module SafetyKit
3336
3865
  # be strings, numbers, booleans, or arrays of those scalar values.
3337
3866
  metadata: nil,
3338
3867
  # Reusable resources observed during the event. Use this for emails, phone
3339
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3340
- # identifiers.
3868
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
3869
+ # caller-defined ids, or similar identifiers.
3341
3870
  resources_used: nil
3342
3871
  )
3343
3872
  end
@@ -3368,7 +3897,10 @@ module SafetyKit
3368
3897
  ],
3369
3898
  resources_used:
3370
3899
  T::Array[
3371
- SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed
3900
+ T.any(
3901
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource,
3902
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::UnionMember1
3903
+ )
3372
3904
  ]
3373
3905
  }
3374
3906
  )
@@ -3785,49 +4317,167 @@ module SafetyKit
3785
4317
  )
3786
4318
  end
3787
4319
 
3788
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
3789
- OrHash =
4320
+ # Real-world, account, social, or caller-defined resource used during the event.
4321
+ module ResourcesUsed
4322
+ extend SafetyKit::Internal::Type::Union
4323
+
4324
+ Variants =
3790
4325
  T.type_alias do
3791
4326
  T.any(
3792
- SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed,
3793
- SafetyKit::Internal::AnyHash
4327
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource,
4328
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::UnionMember1
3794
4329
  )
3795
4330
  end
3796
4331
 
3797
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3798
- # youtube, linkedin, or another stable snake_case identifier.
3799
- sig { returns(String) }
3800
- attr_accessor :type
4332
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
4333
+ OrHash =
4334
+ T.type_alias do
4335
+ T.any(
4336
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource,
4337
+ SafetyKit::Internal::AnyHash
4338
+ )
4339
+ end
3801
4340
 
3802
- # Resource value used during the event. SafetyKit stores a normalized hash of this
3803
- # value, not the raw value. When type is url, this must be a valid URL.
3804
- sig { returns(String) }
3805
- attr_accessor :value
4341
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
4342
+ # urlEncode(namespace) + '/' + urlEncode(value).
4343
+ sig { returns(String) }
4344
+ attr_accessor :namespace
3806
4345
 
3807
- # Real-world or account resource used during the event, such as an email, phone
3808
- # number, address, URL, social handle, or payment identifier.
3809
- sig do
3810
- params(type: String, value: String).returns(T.attached_class)
3811
- end
3812
- def self.new(
3813
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
3814
- # youtube, linkedin, or another stable snake_case identifier.
3815
- type:,
3816
- # Resource value used during the event. SafetyKit stores a normalized hash of this
3817
- # value, not the raw value. When type is url, this must be a valid URL.
3818
- value:
3819
- )
3820
- end
4346
+ # Caller-defined entity identifier resource.
4347
+ sig do
4348
+ returns(
4349
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
4350
+ )
4351
+ end
4352
+ attr_accessor :type
3821
4353
 
3822
- sig { override.returns({ type: String, value: String }) }
3823
- def to_hash
3824
- end
3825
- end
3826
- end
4354
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
4355
+ # encoded namespace/value pair, not the raw value.
4356
+ sig { returns(String) }
4357
+ attr_accessor :value
3827
4358
 
3828
- class UserReportEventRequest < SafetyKit::Internal::Type::BaseModel
3829
- OrHash =
3830
- T.type_alias do
4359
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
4360
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
4361
+ sig do
4362
+ params(
4363
+ namespace: String,
4364
+ type:
4365
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
4366
+ value: String
4367
+ ).returns(T.attached_class)
4368
+ end
4369
+ def self.new(
4370
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
4371
+ # urlEncode(namespace) + '/' + urlEncode(value).
4372
+ namespace:,
4373
+ # Caller-defined entity identifier resource.
4374
+ type:,
4375
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
4376
+ # encoded namespace/value pair, not the raw value.
4377
+ value:
4378
+ )
4379
+ end
4380
+
4381
+ sig do
4382
+ override.returns(
4383
+ {
4384
+ namespace: String,
4385
+ type:
4386
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
4387
+ value: String
4388
+ }
4389
+ )
4390
+ end
4391
+ def to_hash
4392
+ end
4393
+
4394
+ # Caller-defined entity identifier resource.
4395
+ module Type
4396
+ extend SafetyKit::Internal::Type::Enum
4397
+
4398
+ TaggedSymbol =
4399
+ T.type_alias do
4400
+ T.all(
4401
+ Symbol,
4402
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::Type
4403
+ )
4404
+ end
4405
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
4406
+
4407
+ ID =
4408
+ T.let(
4409
+ :id,
4410
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
4411
+ )
4412
+
4413
+ sig do
4414
+ override.returns(
4415
+ T::Array[
4416
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
4417
+ ]
4418
+ )
4419
+ end
4420
+ def self.values
4421
+ end
4422
+ end
4423
+ end
4424
+
4425
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
4426
+ OrHash =
4427
+ T.type_alias do
4428
+ T.any(
4429
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::UnionMember1,
4430
+ SafetyKit::Internal::AnyHash
4431
+ )
4432
+ end
4433
+
4434
+ # Resource family, such as email, phone, name, address, url, social handles,
4435
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
4436
+ # resource shape when the value belongs to a caller-defined namespace.
4437
+ sig { returns(String) }
4438
+ attr_accessor :type
4439
+
4440
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
4441
+ # value, not the raw value. When type is url, this must be a valid URL.
4442
+ sig { returns(String) }
4443
+ attr_accessor :value
4444
+
4445
+ # Real-world or account resource used during the event, such as an email, phone
4446
+ # number, address, URL, social handle, or payment identifier.
4447
+ sig do
4448
+ params(type: String, value: String).returns(T.attached_class)
4449
+ end
4450
+ def self.new(
4451
+ # Resource family, such as email, phone, name, address, url, social handles,
4452
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
4453
+ # resource shape when the value belongs to a caller-defined namespace.
4454
+ type:,
4455
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
4456
+ # value, not the raw value. When type is url, this must be a valid URL.
4457
+ value:
4458
+ )
4459
+ end
4460
+
4461
+ sig { override.returns({ type: String, value: String }) }
4462
+ def to_hash
4463
+ end
4464
+ end
4465
+
4466
+ sig do
4467
+ override.returns(
4468
+ T::Array[
4469
+ SafetyKit::Beta::EventCreateParams::Body::UpdateAccountEventRequest::ResourcesUsed::Variants
4470
+ ]
4471
+ )
4472
+ end
4473
+ def self.variants
4474
+ end
4475
+ end
4476
+ end
4477
+
4478
+ class UserReportEventRequest < SafetyKit::Internal::Type::BaseModel
4479
+ OrHash =
4480
+ T.type_alias do
3831
4481
  T.any(
3832
4482
  SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest,
3833
4483
  SafetyKit::Internal::AnyHash
@@ -3949,13 +4599,16 @@ module SafetyKit
3949
4599
  attr_writer :metadata
3950
4600
 
3951
4601
  # Reusable resources observed during the event. Use this for emails, phone
3952
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
3953
- # identifiers.
4602
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
4603
+ # caller-defined ids, or similar identifiers.
3954
4604
  sig do
3955
4605
  returns(
3956
4606
  T.nilable(
3957
4607
  T::Array[
3958
- SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed
4608
+ T.any(
4609
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource,
4610
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::UnionMember1
4611
+ )
3959
4612
  ]
3960
4613
  )
3961
4614
  )
@@ -3966,7 +4619,10 @@ module SafetyKit
3966
4619
  params(
3967
4620
  resources_used:
3968
4621
  T::Array[
3969
- SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::OrHash
4622
+ T.any(
4623
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::OrHash,
4624
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::UnionMember1::OrHash
4625
+ )
3970
4626
  ]
3971
4627
  ).void
3972
4628
  end
@@ -4016,7 +4672,10 @@ module SafetyKit
4016
4672
  ],
4017
4673
  resources_used:
4018
4674
  T::Array[
4019
- SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::OrHash
4675
+ T.any(
4676
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::OrHash,
4677
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::UnionMember1::OrHash
4678
+ )
4020
4679
  ],
4021
4680
  target_content_id: String,
4022
4681
  target_user_id: String
@@ -4050,8 +4709,8 @@ module SafetyKit
4050
4709
  # be strings, numbers, booleans, or arrays of those scalar values.
4051
4710
  metadata: nil,
4052
4711
  # Reusable resources observed during the event. Use this for emails, phone
4053
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
4054
- # identifiers.
4712
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
4713
+ # caller-defined ids, or similar identifiers.
4055
4714
  resources_used: nil,
4056
4715
  # Your stable identifier for the content being reported.
4057
4716
  target_content_id: nil,
@@ -4087,7 +4746,10 @@ module SafetyKit
4087
4746
  ],
4088
4747
  resources_used:
4089
4748
  T::Array[
4090
- SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed
4749
+ T.any(
4750
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource,
4751
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::UnionMember1
4752
+ )
4091
4753
  ],
4092
4754
  target_content_id: String,
4093
4755
  target_user_id: String
@@ -4506,42 +5168,160 @@ module SafetyKit
4506
5168
  )
4507
5169
  end
4508
5170
 
4509
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
4510
- OrHash =
5171
+ # Real-world, account, social, or caller-defined resource used during the event.
5172
+ module ResourcesUsed
5173
+ extend SafetyKit::Internal::Type::Union
5174
+
5175
+ Variants =
4511
5176
  T.type_alias do
4512
5177
  T.any(
4513
- SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed,
4514
- SafetyKit::Internal::AnyHash
5178
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource,
5179
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::UnionMember1
4515
5180
  )
4516
5181
  end
4517
5182
 
4518
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
4519
- # youtube, linkedin, or another stable snake_case identifier.
4520
- sig { returns(String) }
4521
- attr_accessor :type
5183
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
5184
+ OrHash =
5185
+ T.type_alias do
5186
+ T.any(
5187
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource,
5188
+ SafetyKit::Internal::AnyHash
5189
+ )
5190
+ end
4522
5191
 
4523
- # Resource value used during the event. SafetyKit stores a normalized hash of this
4524
- # value, not the raw value. When type is url, this must be a valid URL.
4525
- sig { returns(String) }
4526
- attr_accessor :value
5192
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
5193
+ # urlEncode(namespace) + '/' + urlEncode(value).
5194
+ sig { returns(String) }
5195
+ attr_accessor :namespace
4527
5196
 
4528
- # Real-world or account resource used during the event, such as an email, phone
4529
- # number, address, URL, social handle, or payment identifier.
4530
- sig do
4531
- params(type: String, value: String).returns(T.attached_class)
5197
+ # Caller-defined entity identifier resource.
5198
+ sig do
5199
+ returns(
5200
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
5201
+ )
5202
+ end
5203
+ attr_accessor :type
5204
+
5205
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
5206
+ # encoded namespace/value pair, not the raw value.
5207
+ sig { returns(String) }
5208
+ attr_accessor :value
5209
+
5210
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
5211
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
5212
+ sig do
5213
+ params(
5214
+ namespace: String,
5215
+ type:
5216
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
5217
+ value: String
5218
+ ).returns(T.attached_class)
5219
+ end
5220
+ def self.new(
5221
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
5222
+ # urlEncode(namespace) + '/' + urlEncode(value).
5223
+ namespace:,
5224
+ # Caller-defined entity identifier resource.
5225
+ type:,
5226
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
5227
+ # encoded namespace/value pair, not the raw value.
5228
+ value:
5229
+ )
5230
+ end
5231
+
5232
+ sig do
5233
+ override.returns(
5234
+ {
5235
+ namespace: String,
5236
+ type:
5237
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
5238
+ value: String
5239
+ }
5240
+ )
5241
+ end
5242
+ def to_hash
5243
+ end
5244
+
5245
+ # Caller-defined entity identifier resource.
5246
+ module Type
5247
+ extend SafetyKit::Internal::Type::Enum
5248
+
5249
+ TaggedSymbol =
5250
+ T.type_alias do
5251
+ T.all(
5252
+ Symbol,
5253
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::Type
5254
+ )
5255
+ end
5256
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
5257
+
5258
+ ID =
5259
+ T.let(
5260
+ :id,
5261
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
5262
+ )
5263
+
5264
+ sig do
5265
+ override.returns(
5266
+ T::Array[
5267
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
5268
+ ]
5269
+ )
5270
+ end
5271
+ def self.values
5272
+ end
5273
+ end
4532
5274
  end
4533
- def self.new(
4534
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
4535
- # youtube, linkedin, or another stable snake_case identifier.
4536
- type:,
5275
+
5276
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
5277
+ OrHash =
5278
+ T.type_alias do
5279
+ T.any(
5280
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::UnionMember1,
5281
+ SafetyKit::Internal::AnyHash
5282
+ )
5283
+ end
5284
+
5285
+ # Resource family, such as email, phone, name, address, url, social handles,
5286
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
5287
+ # resource shape when the value belongs to a caller-defined namespace.
5288
+ sig { returns(String) }
5289
+ attr_accessor :type
5290
+
4537
5291
  # Resource value used during the event. SafetyKit stores a normalized hash of this
4538
5292
  # value, not the raw value. When type is url, this must be a valid URL.
4539
- value:
4540
- )
5293
+ sig { returns(String) }
5294
+ attr_accessor :value
5295
+
5296
+ # Real-world or account resource used during the event, such as an email, phone
5297
+ # number, address, URL, social handle, or payment identifier.
5298
+ sig do
5299
+ params(type: String, value: String).returns(T.attached_class)
5300
+ end
5301
+ def self.new(
5302
+ # Resource family, such as email, phone, name, address, url, social handles,
5303
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
5304
+ # resource shape when the value belongs to a caller-defined namespace.
5305
+ type:,
5306
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
5307
+ # value, not the raw value. When type is url, this must be a valid URL.
5308
+ value:
5309
+ )
5310
+ end
5311
+
5312
+ sig { override.returns({ type: String, value: String }) }
5313
+ def to_hash
5314
+ end
4541
5315
  end
4542
5316
 
4543
- sig { override.returns({ type: String, value: String }) }
4544
- def to_hash
5317
+ sig do
5318
+ override.returns(
5319
+ T::Array[
5320
+ SafetyKit::Beta::EventCreateParams::Body::UserReportEventRequest::ResourcesUsed::Variants
5321
+ ]
5322
+ )
5323
+ end
5324
+ def self.variants
4545
5325
  end
4546
5326
  end
4547
5327
  end
@@ -4684,13 +5464,16 @@ module SafetyKit
4684
5464
  attr_writer :metadata
4685
5465
 
4686
5466
  # Reusable resources observed during the event. Use this for emails, phone
4687
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
4688
- # identifiers.
5467
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
5468
+ # caller-defined ids, or similar identifiers.
4689
5469
  sig do
4690
5470
  returns(
4691
5471
  T.nilable(
4692
5472
  T::Array[
4693
- SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed
5473
+ T.any(
5474
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource,
5475
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::UnionMember1
5476
+ )
4694
5477
  ]
4695
5478
  )
4696
5479
  )
@@ -4701,7 +5484,10 @@ module SafetyKit
4701
5484
  params(
4702
5485
  resources_used:
4703
5486
  T::Array[
4704
- SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::OrHash
5487
+ T.any(
5488
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::OrHash,
5489
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::UnionMember1::OrHash
5490
+ )
4705
5491
  ]
4706
5492
  ).void
4707
5493
  end
@@ -4752,7 +5538,10 @@ module SafetyKit
4752
5538
  ],
4753
5539
  resources_used:
4754
5540
  T::Array[
4755
- SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::OrHash
5541
+ T.any(
5542
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::OrHash,
5543
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::UnionMember1::OrHash
5544
+ )
4756
5545
  ],
4757
5546
  target_content_id: String,
4758
5547
  target_user_id: String
@@ -4794,8 +5583,8 @@ module SafetyKit
4794
5583
  # be strings, numbers, booleans, or arrays of those scalar values.
4795
5584
  metadata: nil,
4796
5585
  # Reusable resources observed during the event. Use this for emails, phone
4797
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
4798
- # identifiers.
5586
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
5587
+ # caller-defined ids, or similar identifiers.
4799
5588
  resources_used: nil,
4800
5589
  # Your stable identifier for the content being reported.
4801
5590
  target_content_id: nil,
@@ -4833,7 +5622,10 @@ module SafetyKit
4833
5622
  ],
4834
5623
  resources_used:
4835
5624
  T::Array[
4836
- SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed
5625
+ T.any(
5626
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource,
5627
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::UnionMember1
5628
+ )
4837
5629
  ],
4838
5630
  target_content_id: String,
4839
5631
  target_user_id: String
@@ -5301,51 +6093,169 @@ module SafetyKit
5301
6093
  )
5302
6094
  end
5303
6095
 
5304
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
5305
- OrHash =
6096
+ # Real-world, account, social, or caller-defined resource used during the event.
6097
+ module ResourcesUsed
6098
+ extend SafetyKit::Internal::Type::Union
6099
+
6100
+ Variants =
5306
6101
  T.type_alias do
5307
6102
  T.any(
5308
- SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed,
5309
- SafetyKit::Internal::AnyHash
6103
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource,
6104
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::UnionMember1
5310
6105
  )
5311
6106
  end
5312
6107
 
5313
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
5314
- # youtube, linkedin, or another stable snake_case identifier.
5315
- sig { returns(String) }
5316
- attr_accessor :type
5317
-
5318
- # Resource value used during the event. SafetyKit stores a normalized hash of this
5319
- # value, not the raw value. When type is url, this must be a valid URL.
5320
- sig { returns(String) }
5321
- attr_accessor :value
6108
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
6109
+ OrHash =
6110
+ T.type_alias do
6111
+ T.any(
6112
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource,
6113
+ SafetyKit::Internal::AnyHash
6114
+ )
6115
+ end
5322
6116
 
5323
- # Real-world or account resource used during the event, such as an email, phone
5324
- # number, address, URL, social handle, or payment identifier.
5325
- sig do
5326
- params(type: String, value: String).returns(T.attached_class)
5327
- end
5328
- def self.new(
5329
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
5330
- # youtube, linkedin, or another stable snake_case identifier.
5331
- type:,
5332
- # Resource value used during the event. SafetyKit stores a normalized hash of this
5333
- # value, not the raw value. When type is url, this must be a valid URL.
5334
- value:
5335
- )
5336
- end
6117
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
6118
+ # urlEncode(namespace) + '/' + urlEncode(value).
6119
+ sig { returns(String) }
6120
+ attr_accessor :namespace
5337
6121
 
5338
- sig { override.returns({ type: String, value: String }) }
5339
- def to_hash
5340
- end
5341
- end
5342
- end
6122
+ # Caller-defined entity identifier resource.
6123
+ sig do
6124
+ returns(
6125
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol
6126
+ )
6127
+ end
6128
+ attr_accessor :type
5343
6129
 
5344
- # A user contacts, transacts with, or otherwise interacts with another user.
5345
- module UnionMember7
5346
- extend SafetyKit::Internal::Type::Union
6130
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
6131
+ # encoded namespace/value pair, not the raw value.
6132
+ sig { returns(String) }
6133
+ attr_accessor :value
5347
6134
 
5348
- Variants =
6135
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
6136
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
6137
+ sig do
6138
+ params(
6139
+ namespace: String,
6140
+ type:
6141
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
6142
+ value: String
6143
+ ).returns(T.attached_class)
6144
+ end
6145
+ def self.new(
6146
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
6147
+ # urlEncode(namespace) + '/' + urlEncode(value).
6148
+ namespace:,
6149
+ # Caller-defined entity identifier resource.
6150
+ type:,
6151
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
6152
+ # encoded namespace/value pair, not the raw value.
6153
+ value:
6154
+ )
6155
+ end
6156
+
6157
+ sig do
6158
+ override.returns(
6159
+ {
6160
+ namespace: String,
6161
+ type:
6162
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::Type::OrSymbol,
6163
+ value: String
6164
+ }
6165
+ )
6166
+ end
6167
+ def to_hash
6168
+ end
6169
+
6170
+ # Caller-defined entity identifier resource.
6171
+ module Type
6172
+ extend SafetyKit::Internal::Type::Enum
6173
+
6174
+ TaggedSymbol =
6175
+ T.type_alias do
6176
+ T.all(
6177
+ Symbol,
6178
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::Type
6179
+ )
6180
+ end
6181
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
6182
+
6183
+ ID =
6184
+ T.let(
6185
+ :id,
6186
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
6187
+ )
6188
+
6189
+ sig do
6190
+ override.returns(
6191
+ T::Array[
6192
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
6193
+ ]
6194
+ )
6195
+ end
6196
+ def self.values
6197
+ end
6198
+ end
6199
+ end
6200
+
6201
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
6202
+ OrHash =
6203
+ T.type_alias do
6204
+ T.any(
6205
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::UnionMember1,
6206
+ SafetyKit::Internal::AnyHash
6207
+ )
6208
+ end
6209
+
6210
+ # Resource family, such as email, phone, name, address, url, social handles,
6211
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
6212
+ # resource shape when the value belongs to a caller-defined namespace.
6213
+ sig { returns(String) }
6214
+ attr_accessor :type
6215
+
6216
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
6217
+ # value, not the raw value. When type is url, this must be a valid URL.
6218
+ sig { returns(String) }
6219
+ attr_accessor :value
6220
+
6221
+ # Real-world or account resource used during the event, such as an email, phone
6222
+ # number, address, URL, social handle, or payment identifier.
6223
+ sig do
6224
+ params(type: String, value: String).returns(T.attached_class)
6225
+ end
6226
+ def self.new(
6227
+ # Resource family, such as email, phone, name, address, url, social handles,
6228
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
6229
+ # resource shape when the value belongs to a caller-defined namespace.
6230
+ type:,
6231
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
6232
+ # value, not the raw value. When type is url, this must be a valid URL.
6233
+ value:
6234
+ )
6235
+ end
6236
+
6237
+ sig { override.returns({ type: String, value: String }) }
6238
+ def to_hash
6239
+ end
6240
+ end
6241
+
6242
+ sig do
6243
+ override.returns(
6244
+ T::Array[
6245
+ SafetyKit::Beta::EventCreateParams::Body::ModerationDecisionEventRequest::ResourcesUsed::Variants
6246
+ ]
6247
+ )
6248
+ end
6249
+ def self.variants
6250
+ end
6251
+ end
6252
+ end
6253
+
6254
+ # A user contacts, transacts with, or otherwise interacts with another user.
6255
+ module UnionMember7
6256
+ extend SafetyKit::Internal::Type::Union
6257
+
6258
+ Variants =
5349
6259
  T.type_alias do
5350
6260
  T.any(
5351
6261
  SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact,
@@ -5479,13 +6389,16 @@ module SafetyKit
5479
6389
  attr_writer :metadata
5480
6390
 
5481
6391
  # Reusable resources observed during the event. Use this for emails, phone
5482
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
5483
- # identifiers.
6392
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
6393
+ # caller-defined ids, or similar identifiers.
5484
6394
  sig do
5485
6395
  returns(
5486
6396
  T.nilable(
5487
6397
  T::Array[
5488
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed
6398
+ T.any(
6399
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource,
6400
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::UnionMember1
6401
+ )
5489
6402
  ]
5490
6403
  )
5491
6404
  )
@@ -5496,7 +6409,10 @@ module SafetyKit
5496
6409
  params(
5497
6410
  resources_used:
5498
6411
  T::Array[
5499
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::OrHash
6412
+ T.any(
6413
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::OrHash,
6414
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::UnionMember1::OrHash
6415
+ )
5500
6416
  ]
5501
6417
  ).void
5502
6418
  end
@@ -5527,7 +6443,10 @@ module SafetyKit
5527
6443
  ],
5528
6444
  resources_used:
5529
6445
  T::Array[
5530
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::OrHash
6446
+ T.any(
6447
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::OrHash,
6448
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::UnionMember1::OrHash
6449
+ )
5531
6450
  ],
5532
6451
  type: Symbol
5533
6452
  ).returns(T.attached_class)
@@ -5560,8 +6479,8 @@ module SafetyKit
5560
6479
  # be strings, numbers, booleans, or arrays of those scalar values.
5561
6480
  metadata: nil,
5562
6481
  # Reusable resources observed during the event. Use this for emails, phone
5563
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
5564
- # identifiers.
6482
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
6483
+ # caller-defined ids, or similar identifiers.
5565
6484
  resources_used: nil,
5566
6485
  type: :user_contact
5567
6486
  )
@@ -5593,7 +6512,10 @@ module SafetyKit
5593
6512
  ],
5594
6513
  resources_used:
5595
6514
  T::Array[
5596
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed
6515
+ T.any(
6516
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource,
6517
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::UnionMember1
6518
+ )
5597
6519
  ]
5598
6520
  }
5599
6521
  )
@@ -5981,42 +6903,162 @@ module SafetyKit
5981
6903
  )
5982
6904
  end
5983
6905
 
5984
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
5985
- OrHash =
6906
+ # Real-world, account, social, or caller-defined resource used during the event.
6907
+ module ResourcesUsed
6908
+ extend SafetyKit::Internal::Type::Union
6909
+
6910
+ Variants =
5986
6911
  T.type_alias do
5987
6912
  T.any(
5988
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed,
5989
- SafetyKit::Internal::AnyHash
6913
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource,
6914
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::UnionMember1
5990
6915
  )
5991
6916
  end
5992
6917
 
5993
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
5994
- # youtube, linkedin, or another stable snake_case identifier.
5995
- sig { returns(String) }
5996
- attr_accessor :type
6918
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
6919
+ OrHash =
6920
+ T.type_alias do
6921
+ T.any(
6922
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource,
6923
+ SafetyKit::Internal::AnyHash
6924
+ )
6925
+ end
5997
6926
 
5998
- # Resource value used during the event. SafetyKit stores a normalized hash of this
5999
- # value, not the raw value. When type is url, this must be a valid URL.
6000
- sig { returns(String) }
6001
- attr_accessor :value
6927
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
6928
+ # urlEncode(namespace) + '/' + urlEncode(value).
6929
+ sig { returns(String) }
6930
+ attr_accessor :namespace
6002
6931
 
6003
- # Real-world or account resource used during the event, such as an email, phone
6004
- # number, address, URL, social handle, or payment identifier.
6005
- sig do
6006
- params(type: String, value: String).returns(T.attached_class)
6932
+ # Caller-defined entity identifier resource.
6933
+ sig do
6934
+ returns(
6935
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::Type::OrSymbol
6936
+ )
6937
+ end
6938
+ attr_accessor :type
6939
+
6940
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
6941
+ # encoded namespace/value pair, not the raw value.
6942
+ sig { returns(String) }
6943
+ attr_accessor :value
6944
+
6945
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
6946
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
6947
+ sig do
6948
+ params(
6949
+ namespace: String,
6950
+ type:
6951
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::Type::OrSymbol,
6952
+ value: String
6953
+ ).returns(T.attached_class)
6954
+ end
6955
+ def self.new(
6956
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
6957
+ # urlEncode(namespace) + '/' + urlEncode(value).
6958
+ namespace:,
6959
+ # Caller-defined entity identifier resource.
6960
+ type:,
6961
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
6962
+ # encoded namespace/value pair, not the raw value.
6963
+ value:
6964
+ )
6965
+ end
6966
+
6967
+ sig do
6968
+ override.returns(
6969
+ {
6970
+ namespace: String,
6971
+ type:
6972
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::Type::OrSymbol,
6973
+ value: String
6974
+ }
6975
+ )
6976
+ end
6977
+ def to_hash
6978
+ end
6979
+
6980
+ # Caller-defined entity identifier resource.
6981
+ module Type
6982
+ extend SafetyKit::Internal::Type::Enum
6983
+
6984
+ TaggedSymbol =
6985
+ T.type_alias do
6986
+ T.all(
6987
+ Symbol,
6988
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::Type
6989
+ )
6990
+ end
6991
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
6992
+
6993
+ ID =
6994
+ T.let(
6995
+ :id,
6996
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
6997
+ )
6998
+
6999
+ sig do
7000
+ override.returns(
7001
+ T::Array[
7002
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
7003
+ ]
7004
+ )
7005
+ end
7006
+ def self.values
7007
+ end
7008
+ end
6007
7009
  end
6008
- def self.new(
6009
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
6010
- # youtube, linkedin, or another stable snake_case identifier.
6011
- type:,
7010
+
7011
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
7012
+ OrHash =
7013
+ T.type_alias do
7014
+ T.any(
7015
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::UnionMember1,
7016
+ SafetyKit::Internal::AnyHash
7017
+ )
7018
+ end
7019
+
7020
+ # Resource family, such as email, phone, name, address, url, social handles,
7021
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
7022
+ # resource shape when the value belongs to a caller-defined namespace.
7023
+ sig { returns(String) }
7024
+ attr_accessor :type
7025
+
6012
7026
  # Resource value used during the event. SafetyKit stores a normalized hash of this
6013
7027
  # value, not the raw value. When type is url, this must be a valid URL.
6014
- value:
6015
- )
7028
+ sig { returns(String) }
7029
+ attr_accessor :value
7030
+
7031
+ # Real-world or account resource used during the event, such as an email, phone
7032
+ # number, address, URL, social handle, or payment identifier.
7033
+ sig do
7034
+ params(type: String, value: String).returns(
7035
+ T.attached_class
7036
+ )
7037
+ end
7038
+ def self.new(
7039
+ # Resource family, such as email, phone, name, address, url, social handles,
7040
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
7041
+ # resource shape when the value belongs to a caller-defined namespace.
7042
+ type:,
7043
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
7044
+ # value, not the raw value. When type is url, this must be a valid URL.
7045
+ value:
7046
+ )
7047
+ end
7048
+
7049
+ sig { override.returns({ type: String, value: String }) }
7050
+ def to_hash
7051
+ end
6016
7052
  end
6017
7053
 
6018
- sig { override.returns({ type: String, value: String }) }
6019
- def to_hash
7054
+ sig do
7055
+ override.returns(
7056
+ T::Array[
7057
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserContact::ResourcesUsed::Variants
7058
+ ]
7059
+ )
7060
+ end
7061
+ def self.variants
6020
7062
  end
6021
7063
  end
6022
7064
  end
@@ -6122,13 +7164,16 @@ module SafetyKit
6122
7164
  attr_writer :metadata
6123
7165
 
6124
7166
  # Reusable resources observed during the event. Use this for emails, phone
6125
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
6126
- # identifiers.
7167
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
7168
+ # caller-defined ids, or similar identifiers.
6127
7169
  sig do
6128
7170
  returns(
6129
7171
  T.nilable(
6130
7172
  T::Array[
6131
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed
7173
+ T.any(
7174
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource,
7175
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::UnionMember1
7176
+ )
6132
7177
  ]
6133
7178
  )
6134
7179
  )
@@ -6139,7 +7184,10 @@ module SafetyKit
6139
7184
  params(
6140
7185
  resources_used:
6141
7186
  T::Array[
6142
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::OrHash
7187
+ T.any(
7188
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::OrHash,
7189
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::UnionMember1::OrHash
7190
+ )
6143
7191
  ]
6144
7192
  ).void
6145
7193
  end
@@ -6169,7 +7217,10 @@ module SafetyKit
6169
7217
  ],
6170
7218
  resources_used:
6171
7219
  T::Array[
6172
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::OrHash
7220
+ T.any(
7221
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::OrHash,
7222
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::UnionMember1::OrHash
7223
+ )
6173
7224
  ],
6174
7225
  type: Symbol
6175
7226
  ).returns(T.attached_class)
@@ -6199,8 +7250,8 @@ module SafetyKit
6199
7250
  # be strings, numbers, booleans, or arrays of those scalar values.
6200
7251
  metadata: nil,
6201
7252
  # Reusable resources observed during the event. Use this for emails, phone
6202
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
6203
- # identifiers.
7253
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
7254
+ # caller-defined ids, or similar identifiers.
6204
7255
  resources_used: nil,
6205
7256
  type: :content_uploaded
6206
7257
  )
@@ -6231,7 +7282,10 @@ module SafetyKit
6231
7282
  ],
6232
7283
  resources_used:
6233
7284
  T::Array[
6234
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed
7285
+ T.any(
7286
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource,
7287
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::UnionMember1
7288
+ )
6235
7289
  ]
6236
7290
  }
6237
7291
  )
@@ -6619,42 +7673,162 @@ module SafetyKit
6619
7673
  )
6620
7674
  end
6621
7675
 
6622
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
6623
- OrHash =
7676
+ # Real-world, account, social, or caller-defined resource used during the event.
7677
+ module ResourcesUsed
7678
+ extend SafetyKit::Internal::Type::Union
7679
+
7680
+ Variants =
6624
7681
  T.type_alias do
6625
7682
  T.any(
6626
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed,
6627
- SafetyKit::Internal::AnyHash
7683
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource,
7684
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::UnionMember1
6628
7685
  )
6629
7686
  end
6630
7687
 
6631
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
6632
- # youtube, linkedin, or another stable snake_case identifier.
6633
- sig { returns(String) }
6634
- attr_accessor :type
7688
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
7689
+ OrHash =
7690
+ T.type_alias do
7691
+ T.any(
7692
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource,
7693
+ SafetyKit::Internal::AnyHash
7694
+ )
7695
+ end
6635
7696
 
6636
- # Resource value used during the event. SafetyKit stores a normalized hash of this
6637
- # value, not the raw value. When type is url, this must be a valid URL.
6638
- sig { returns(String) }
6639
- attr_accessor :value
7697
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
7698
+ # urlEncode(namespace) + '/' + urlEncode(value).
7699
+ sig { returns(String) }
7700
+ attr_accessor :namespace
6640
7701
 
6641
- # Real-world or account resource used during the event, such as an email, phone
6642
- # number, address, URL, social handle, or payment identifier.
6643
- sig do
6644
- params(type: String, value: String).returns(T.attached_class)
7702
+ # Caller-defined entity identifier resource.
7703
+ sig do
7704
+ returns(
7705
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::Type::OrSymbol
7706
+ )
7707
+ end
7708
+ attr_accessor :type
7709
+
7710
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
7711
+ # encoded namespace/value pair, not the raw value.
7712
+ sig { returns(String) }
7713
+ attr_accessor :value
7714
+
7715
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
7716
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
7717
+ sig do
7718
+ params(
7719
+ namespace: String,
7720
+ type:
7721
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::Type::OrSymbol,
7722
+ value: String
7723
+ ).returns(T.attached_class)
7724
+ end
7725
+ def self.new(
7726
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
7727
+ # urlEncode(namespace) + '/' + urlEncode(value).
7728
+ namespace:,
7729
+ # Caller-defined entity identifier resource.
7730
+ type:,
7731
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
7732
+ # encoded namespace/value pair, not the raw value.
7733
+ value:
7734
+ )
7735
+ end
7736
+
7737
+ sig do
7738
+ override.returns(
7739
+ {
7740
+ namespace: String,
7741
+ type:
7742
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::Type::OrSymbol,
7743
+ value: String
7744
+ }
7745
+ )
7746
+ end
7747
+ def to_hash
7748
+ end
7749
+
7750
+ # Caller-defined entity identifier resource.
7751
+ module Type
7752
+ extend SafetyKit::Internal::Type::Enum
7753
+
7754
+ TaggedSymbol =
7755
+ T.type_alias do
7756
+ T.all(
7757
+ Symbol,
7758
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::Type
7759
+ )
7760
+ end
7761
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
7762
+
7763
+ ID =
7764
+ T.let(
7765
+ :id,
7766
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
7767
+ )
7768
+
7769
+ sig do
7770
+ override.returns(
7771
+ T::Array[
7772
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
7773
+ ]
7774
+ )
7775
+ end
7776
+ def self.values
7777
+ end
7778
+ end
6645
7779
  end
6646
- def self.new(
6647
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
6648
- # youtube, linkedin, or another stable snake_case identifier.
6649
- type:,
7780
+
7781
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
7782
+ OrHash =
7783
+ T.type_alias do
7784
+ T.any(
7785
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::UnionMember1,
7786
+ SafetyKit::Internal::AnyHash
7787
+ )
7788
+ end
7789
+
7790
+ # Resource family, such as email, phone, name, address, url, social handles,
7791
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
7792
+ # resource shape when the value belongs to a caller-defined namespace.
7793
+ sig { returns(String) }
7794
+ attr_accessor :type
7795
+
6650
7796
  # Resource value used during the event. SafetyKit stores a normalized hash of this
6651
7797
  # value, not the raw value. When type is url, this must be a valid URL.
6652
- value:
6653
- )
7798
+ sig { returns(String) }
7799
+ attr_accessor :value
7800
+
7801
+ # Real-world or account resource used during the event, such as an email, phone
7802
+ # number, address, URL, social handle, or payment identifier.
7803
+ sig do
7804
+ params(type: String, value: String).returns(
7805
+ T.attached_class
7806
+ )
7807
+ end
7808
+ def self.new(
7809
+ # Resource family, such as email, phone, name, address, url, social handles,
7810
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
7811
+ # resource shape when the value belongs to a caller-defined namespace.
7812
+ type:,
7813
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
7814
+ # value, not the raw value. When type is url, this must be a valid URL.
7815
+ value:
7816
+ )
7817
+ end
7818
+
7819
+ sig { override.returns({ type: String, value: String }) }
7820
+ def to_hash
7821
+ end
6654
7822
  end
6655
7823
 
6656
- sig { override.returns({ type: String, value: String }) }
6657
- def to_hash
7824
+ sig do
7825
+ override.returns(
7826
+ T::Array[
7827
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ContentUploaded::ResourcesUsed::Variants
7828
+ ]
7829
+ )
7830
+ end
7831
+ def self.variants
6658
7832
  end
6659
7833
  end
6660
7834
  end
@@ -6779,13 +7953,16 @@ module SafetyKit
6779
7953
  attr_writer :metadata
6780
7954
 
6781
7955
  # Reusable resources observed during the event. Use this for emails, phone
6782
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
6783
- # identifiers.
7956
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
7957
+ # caller-defined ids, or similar identifiers.
6784
7958
  sig do
6785
7959
  returns(
6786
7960
  T.nilable(
6787
7961
  T::Array[
6788
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed
7962
+ T.any(
7963
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource,
7964
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::UnionMember1
7965
+ )
6789
7966
  ]
6790
7967
  )
6791
7968
  )
@@ -6796,7 +7973,10 @@ module SafetyKit
6796
7973
  params(
6797
7974
  resources_used:
6798
7975
  T::Array[
6799
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::OrHash
7976
+ T.any(
7977
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::OrHash,
7978
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::UnionMember1::OrHash
7979
+ )
6800
7980
  ]
6801
7981
  ).void
6802
7982
  end
@@ -6829,7 +8009,10 @@ module SafetyKit
6829
8009
  ],
6830
8010
  resources_used:
6831
8011
  T::Array[
6832
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::OrHash
8012
+ T.any(
8013
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::OrHash,
8014
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::UnionMember1::OrHash
8015
+ )
6833
8016
  ],
6834
8017
  type: Symbol
6835
8018
  ).returns(T.attached_class)
@@ -6860,8 +8043,8 @@ module SafetyKit
6860
8043
  # be strings, numbers, booleans, or arrays of those scalar values.
6861
8044
  metadata: nil,
6862
8045
  # Reusable resources observed during the event. Use this for emails, phone
6863
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
6864
- # identifiers.
8046
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
8047
+ # caller-defined ids, or similar identifiers.
6865
8048
  resources_used: nil,
6866
8049
  type: :product_changed
6867
8050
  )
@@ -6895,7 +8078,10 @@ module SafetyKit
6895
8078
  ],
6896
8079
  resources_used:
6897
8080
  T::Array[
6898
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed
8081
+ T.any(
8082
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource,
8083
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::UnionMember1
8084
+ )
6899
8085
  ]
6900
8086
  }
6901
8087
  )
@@ -7529,42 +8715,162 @@ module SafetyKit
7529
8715
  )
7530
8716
  end
7531
8717
 
7532
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
7533
- OrHash =
8718
+ # Real-world, account, social, or caller-defined resource used during the event.
8719
+ module ResourcesUsed
8720
+ extend SafetyKit::Internal::Type::Union
8721
+
8722
+ Variants =
7534
8723
  T.type_alias do
7535
8724
  T.any(
7536
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed,
7537
- SafetyKit::Internal::AnyHash
8725
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource,
8726
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::UnionMember1
8727
+ )
8728
+ end
8729
+
8730
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
8731
+ OrHash =
8732
+ T.type_alias do
8733
+ T.any(
8734
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource,
8735
+ SafetyKit::Internal::AnyHash
8736
+ )
8737
+ end
8738
+
8739
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
8740
+ # urlEncode(namespace) + '/' + urlEncode(value).
8741
+ sig { returns(String) }
8742
+ attr_accessor :namespace
8743
+
8744
+ # Caller-defined entity identifier resource.
8745
+ sig do
8746
+ returns(
8747
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::Type::OrSymbol
8748
+ )
8749
+ end
8750
+ attr_accessor :type
8751
+
8752
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
8753
+ # encoded namespace/value pair, not the raw value.
8754
+ sig { returns(String) }
8755
+ attr_accessor :value
8756
+
8757
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
8758
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
8759
+ sig do
8760
+ params(
8761
+ namespace: String,
8762
+ type:
8763
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::Type::OrSymbol,
8764
+ value: String
8765
+ ).returns(T.attached_class)
8766
+ end
8767
+ def self.new(
8768
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
8769
+ # urlEncode(namespace) + '/' + urlEncode(value).
8770
+ namespace:,
8771
+ # Caller-defined entity identifier resource.
8772
+ type:,
8773
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
8774
+ # encoded namespace/value pair, not the raw value.
8775
+ value:
8776
+ )
8777
+ end
8778
+
8779
+ sig do
8780
+ override.returns(
8781
+ {
8782
+ namespace: String,
8783
+ type:
8784
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::Type::OrSymbol,
8785
+ value: String
8786
+ }
8787
+ )
8788
+ end
8789
+ def to_hash
8790
+ end
8791
+
8792
+ # Caller-defined entity identifier resource.
8793
+ module Type
8794
+ extend SafetyKit::Internal::Type::Enum
8795
+
8796
+ TaggedSymbol =
8797
+ T.type_alias do
8798
+ T.all(
8799
+ Symbol,
8800
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::Type
8801
+ )
8802
+ end
8803
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
8804
+
8805
+ ID =
8806
+ T.let(
8807
+ :id,
8808
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
8809
+ )
8810
+
8811
+ sig do
8812
+ override.returns(
8813
+ T::Array[
8814
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
8815
+ ]
8816
+ )
8817
+ end
8818
+ def self.values
8819
+ end
8820
+ end
8821
+ end
8822
+
8823
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
8824
+ OrHash =
8825
+ T.type_alias do
8826
+ T.any(
8827
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::UnionMember1,
8828
+ SafetyKit::Internal::AnyHash
8829
+ )
8830
+ end
8831
+
8832
+ # Resource family, such as email, phone, name, address, url, social handles,
8833
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
8834
+ # resource shape when the value belongs to a caller-defined namespace.
8835
+ sig { returns(String) }
8836
+ attr_accessor :type
8837
+
8838
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
8839
+ # value, not the raw value. When type is url, this must be a valid URL.
8840
+ sig { returns(String) }
8841
+ attr_accessor :value
8842
+
8843
+ # Real-world or account resource used during the event, such as an email, phone
8844
+ # number, address, URL, social handle, or payment identifier.
8845
+ sig do
8846
+ params(type: String, value: String).returns(
8847
+ T.attached_class
7538
8848
  )
7539
8849
  end
8850
+ def self.new(
8851
+ # Resource family, such as email, phone, name, address, url, social handles,
8852
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
8853
+ # resource shape when the value belongs to a caller-defined namespace.
8854
+ type:,
8855
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
8856
+ # value, not the raw value. When type is url, this must be a valid URL.
8857
+ value:
8858
+ )
8859
+ end
7540
8860
 
7541
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
7542
- # youtube, linkedin, or another stable snake_case identifier.
7543
- sig { returns(String) }
7544
- attr_accessor :type
7545
-
7546
- # Resource value used during the event. SafetyKit stores a normalized hash of this
7547
- # value, not the raw value. When type is url, this must be a valid URL.
7548
- sig { returns(String) }
7549
- attr_accessor :value
8861
+ sig { override.returns({ type: String, value: String }) }
8862
+ def to_hash
8863
+ end
8864
+ end
7550
8865
 
7551
- # Real-world or account resource used during the event, such as an email, phone
7552
- # number, address, URL, social handle, or payment identifier.
7553
8866
  sig do
7554
- params(type: String, value: String).returns(T.attached_class)
7555
- end
7556
- def self.new(
7557
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
7558
- # youtube, linkedin, or another stable snake_case identifier.
7559
- type:,
7560
- # Resource value used during the event. SafetyKit stores a normalized hash of this
7561
- # value, not the raw value. When type is url, this must be a valid URL.
7562
- value:
7563
- )
8867
+ override.returns(
8868
+ T::Array[
8869
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ProductChanged::ResourcesUsed::Variants
8870
+ ]
8871
+ )
7564
8872
  end
7565
-
7566
- sig { override.returns({ type: String, value: String }) }
7567
- def to_hash
8873
+ def self.variants
7568
8874
  end
7569
8875
  end
7570
8876
  end
@@ -7685,13 +8991,16 @@ module SafetyKit
7685
8991
  attr_writer :metadata
7686
8992
 
7687
8993
  # Reusable resources observed during the event. Use this for emails, phone
7688
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
7689
- # identifiers.
8994
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
8995
+ # caller-defined ids, or similar identifiers.
7690
8996
  sig do
7691
8997
  returns(
7692
8998
  T.nilable(
7693
8999
  T::Array[
7694
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed
9000
+ T.any(
9001
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource,
9002
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::UnionMember1
9003
+ )
7695
9004
  ]
7696
9005
  )
7697
9006
  )
@@ -7702,7 +9011,10 @@ module SafetyKit
7702
9011
  params(
7703
9012
  resources_used:
7704
9013
  T::Array[
7705
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::OrHash
9014
+ T.any(
9015
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::OrHash,
9016
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::UnionMember1::OrHash
9017
+ )
7706
9018
  ]
7707
9019
  ).void
7708
9020
  end
@@ -7732,7 +9044,10 @@ module SafetyKit
7732
9044
  ],
7733
9045
  resources_used:
7734
9046
  T::Array[
7735
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::OrHash
9047
+ T.any(
9048
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::OrHash,
9049
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::UnionMember1::OrHash
9050
+ )
7736
9051
  ],
7737
9052
  type: Symbol
7738
9053
  ).returns(T.attached_class)
@@ -7762,8 +9077,8 @@ module SafetyKit
7762
9077
  # be strings, numbers, booleans, or arrays of those scalar values.
7763
9078
  metadata: nil,
7764
9079
  # Reusable resources observed during the event. Use this for emails, phone
7765
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
7766
- # identifiers.
9080
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
9081
+ # caller-defined ids, or similar identifiers.
7767
9082
  resources_used: nil,
7768
9083
  type: :create_account
7769
9084
  )
@@ -7794,7 +9109,10 @@ module SafetyKit
7794
9109
  ],
7795
9110
  resources_used:
7796
9111
  T::Array[
7797
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed
9112
+ T.any(
9113
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource,
9114
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::UnionMember1
9115
+ )
7798
9116
  ]
7799
9117
  }
7800
9118
  )
@@ -8182,42 +9500,162 @@ module SafetyKit
8182
9500
  )
8183
9501
  end
8184
9502
 
8185
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
8186
- OrHash =
9503
+ # Real-world, account, social, or caller-defined resource used during the event.
9504
+ module ResourcesUsed
9505
+ extend SafetyKit::Internal::Type::Union
9506
+
9507
+ Variants =
8187
9508
  T.type_alias do
8188
9509
  T.any(
8189
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed,
8190
- SafetyKit::Internal::AnyHash
9510
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource,
9511
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::UnionMember1
8191
9512
  )
8192
9513
  end
8193
9514
 
8194
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
8195
- # youtube, linkedin, or another stable snake_case identifier.
8196
- sig { returns(String) }
8197
- attr_accessor :type
9515
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
9516
+ OrHash =
9517
+ T.type_alias do
9518
+ T.any(
9519
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource,
9520
+ SafetyKit::Internal::AnyHash
9521
+ )
9522
+ end
8198
9523
 
8199
- # Resource value used during the event. SafetyKit stores a normalized hash of this
8200
- # value, not the raw value. When type is url, this must be a valid URL.
8201
- sig { returns(String) }
8202
- attr_accessor :value
9524
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
9525
+ # urlEncode(namespace) + '/' + urlEncode(value).
9526
+ sig { returns(String) }
9527
+ attr_accessor :namespace
8203
9528
 
8204
- # Real-world or account resource used during the event, such as an email, phone
8205
- # number, address, URL, social handle, or payment identifier.
8206
- sig do
8207
- params(type: String, value: String).returns(T.attached_class)
9529
+ # Caller-defined entity identifier resource.
9530
+ sig do
9531
+ returns(
9532
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::Type::OrSymbol
9533
+ )
9534
+ end
9535
+ attr_accessor :type
9536
+
9537
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
9538
+ # encoded namespace/value pair, not the raw value.
9539
+ sig { returns(String) }
9540
+ attr_accessor :value
9541
+
9542
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
9543
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
9544
+ sig do
9545
+ params(
9546
+ namespace: String,
9547
+ type:
9548
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::Type::OrSymbol,
9549
+ value: String
9550
+ ).returns(T.attached_class)
9551
+ end
9552
+ def self.new(
9553
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
9554
+ # urlEncode(namespace) + '/' + urlEncode(value).
9555
+ namespace:,
9556
+ # Caller-defined entity identifier resource.
9557
+ type:,
9558
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
9559
+ # encoded namespace/value pair, not the raw value.
9560
+ value:
9561
+ )
9562
+ end
9563
+
9564
+ sig do
9565
+ override.returns(
9566
+ {
9567
+ namespace: String,
9568
+ type:
9569
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::Type::OrSymbol,
9570
+ value: String
9571
+ }
9572
+ )
9573
+ end
9574
+ def to_hash
9575
+ end
9576
+
9577
+ # Caller-defined entity identifier resource.
9578
+ module Type
9579
+ extend SafetyKit::Internal::Type::Enum
9580
+
9581
+ TaggedSymbol =
9582
+ T.type_alias do
9583
+ T.all(
9584
+ Symbol,
9585
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::Type
9586
+ )
9587
+ end
9588
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
9589
+
9590
+ ID =
9591
+ T.let(
9592
+ :id,
9593
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
9594
+ )
9595
+
9596
+ sig do
9597
+ override.returns(
9598
+ T::Array[
9599
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
9600
+ ]
9601
+ )
9602
+ end
9603
+ def self.values
9604
+ end
9605
+ end
8208
9606
  end
8209
- def self.new(
8210
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
8211
- # youtube, linkedin, or another stable snake_case identifier.
8212
- type:,
9607
+
9608
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
9609
+ OrHash =
9610
+ T.type_alias do
9611
+ T.any(
9612
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::UnionMember1,
9613
+ SafetyKit::Internal::AnyHash
9614
+ )
9615
+ end
9616
+
9617
+ # Resource family, such as email, phone, name, address, url, social handles,
9618
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
9619
+ # resource shape when the value belongs to a caller-defined namespace.
9620
+ sig { returns(String) }
9621
+ attr_accessor :type
9622
+
8213
9623
  # Resource value used during the event. SafetyKit stores a normalized hash of this
8214
9624
  # value, not the raw value. When type is url, this must be a valid URL.
8215
- value:
8216
- )
9625
+ sig { returns(String) }
9626
+ attr_accessor :value
9627
+
9628
+ # Real-world or account resource used during the event, such as an email, phone
9629
+ # number, address, URL, social handle, or payment identifier.
9630
+ sig do
9631
+ params(type: String, value: String).returns(
9632
+ T.attached_class
9633
+ )
9634
+ end
9635
+ def self.new(
9636
+ # Resource family, such as email, phone, name, address, url, social handles,
9637
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
9638
+ # resource shape when the value belongs to a caller-defined namespace.
9639
+ type:,
9640
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
9641
+ # value, not the raw value. When type is url, this must be a valid URL.
9642
+ value:
9643
+ )
9644
+ end
9645
+
9646
+ sig { override.returns({ type: String, value: String }) }
9647
+ def to_hash
9648
+ end
8217
9649
  end
8218
9650
 
8219
- sig { override.returns({ type: String, value: String }) }
8220
- def to_hash
9651
+ sig do
9652
+ override.returns(
9653
+ T::Array[
9654
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::CreateAccount::ResourcesUsed::Variants
9655
+ ]
9656
+ )
9657
+ end
9658
+ def self.variants
8221
9659
  end
8222
9660
  end
8223
9661
  end
@@ -8338,13 +9776,16 @@ module SafetyKit
8338
9776
  attr_writer :metadata
8339
9777
 
8340
9778
  # Reusable resources observed during the event. Use this for emails, phone
8341
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
8342
- # identifiers.
9779
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
9780
+ # caller-defined ids, or similar identifiers.
8343
9781
  sig do
8344
9782
  returns(
8345
9783
  T.nilable(
8346
9784
  T::Array[
8347
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed
9785
+ T.any(
9786
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource,
9787
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::UnionMember1
9788
+ )
8348
9789
  ]
8349
9790
  )
8350
9791
  )
@@ -8355,7 +9796,10 @@ module SafetyKit
8355
9796
  params(
8356
9797
  resources_used:
8357
9798
  T::Array[
8358
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::OrHash
9799
+ T.any(
9800
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::OrHash,
9801
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::UnionMember1::OrHash
9802
+ )
8359
9803
  ]
8360
9804
  ).void
8361
9805
  end
@@ -8386,7 +9830,10 @@ module SafetyKit
8386
9830
  ],
8387
9831
  resources_used:
8388
9832
  T::Array[
8389
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::OrHash
9833
+ T.any(
9834
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::OrHash,
9835
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::UnionMember1::OrHash
9836
+ )
8390
9837
  ],
8391
9838
  type: Symbol
8392
9839
  ).returns(T.attached_class)
@@ -8416,8 +9863,8 @@ module SafetyKit
8416
9863
  # be strings, numbers, booleans, or arrays of those scalar values.
8417
9864
  metadata: nil,
8418
9865
  # Reusable resources observed during the event. Use this for emails, phone
8419
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
8420
- # identifiers.
9866
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
9867
+ # caller-defined ids, or similar identifiers.
8421
9868
  resources_used: nil,
8422
9869
  type: :update_account
8423
9870
  )
@@ -8448,7 +9895,10 @@ module SafetyKit
8448
9895
  ],
8449
9896
  resources_used:
8450
9897
  T::Array[
8451
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed
9898
+ T.any(
9899
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource,
9900
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::UnionMember1
9901
+ )
8452
9902
  ]
8453
9903
  }
8454
9904
  )
@@ -8836,42 +10286,162 @@ module SafetyKit
8836
10286
  )
8837
10287
  end
8838
10288
 
8839
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
8840
- OrHash =
10289
+ # Real-world, account, social, or caller-defined resource used during the event.
10290
+ module ResourcesUsed
10291
+ extend SafetyKit::Internal::Type::Union
10292
+
10293
+ Variants =
8841
10294
  T.type_alias do
8842
10295
  T.any(
8843
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed,
8844
- SafetyKit::Internal::AnyHash
10296
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource,
10297
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::UnionMember1
8845
10298
  )
8846
10299
  end
8847
10300
 
8848
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
8849
- # youtube, linkedin, or another stable snake_case identifier.
8850
- sig { returns(String) }
8851
- attr_accessor :type
10301
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
10302
+ OrHash =
10303
+ T.type_alias do
10304
+ T.any(
10305
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource,
10306
+ SafetyKit::Internal::AnyHash
10307
+ )
10308
+ end
8852
10309
 
8853
- # Resource value used during the event. SafetyKit stores a normalized hash of this
8854
- # value, not the raw value. When type is url, this must be a valid URL.
8855
- sig { returns(String) }
8856
- attr_accessor :value
10310
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
10311
+ # urlEncode(namespace) + '/' + urlEncode(value).
10312
+ sig { returns(String) }
10313
+ attr_accessor :namespace
10314
+
10315
+ # Caller-defined entity identifier resource.
10316
+ sig do
10317
+ returns(
10318
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::Type::OrSymbol
10319
+ )
10320
+ end
10321
+ attr_accessor :type
10322
+
10323
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
10324
+ # encoded namespace/value pair, not the raw value.
10325
+ sig { returns(String) }
10326
+ attr_accessor :value
10327
+
10328
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
10329
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
10330
+ sig do
10331
+ params(
10332
+ namespace: String,
10333
+ type:
10334
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::Type::OrSymbol,
10335
+ value: String
10336
+ ).returns(T.attached_class)
10337
+ end
10338
+ def self.new(
10339
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
10340
+ # urlEncode(namespace) + '/' + urlEncode(value).
10341
+ namespace:,
10342
+ # Caller-defined entity identifier resource.
10343
+ type:,
10344
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
10345
+ # encoded namespace/value pair, not the raw value.
10346
+ value:
10347
+ )
10348
+ end
10349
+
10350
+ sig do
10351
+ override.returns(
10352
+ {
10353
+ namespace: String,
10354
+ type:
10355
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::Type::OrSymbol,
10356
+ value: String
10357
+ }
10358
+ )
10359
+ end
10360
+ def to_hash
10361
+ end
10362
+
10363
+ # Caller-defined entity identifier resource.
10364
+ module Type
10365
+ extend SafetyKit::Internal::Type::Enum
10366
+
10367
+ TaggedSymbol =
10368
+ T.type_alias do
10369
+ T.all(
10370
+ Symbol,
10371
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::Type
10372
+ )
10373
+ end
10374
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
10375
+
10376
+ ID =
10377
+ T.let(
10378
+ :id,
10379
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
10380
+ )
10381
+
10382
+ sig do
10383
+ override.returns(
10384
+ T::Array[
10385
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
10386
+ ]
10387
+ )
10388
+ end
10389
+ def self.values
10390
+ end
10391
+ end
10392
+ end
10393
+
10394
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
10395
+ OrHash =
10396
+ T.type_alias do
10397
+ T.any(
10398
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::UnionMember1,
10399
+ SafetyKit::Internal::AnyHash
10400
+ )
10401
+ end
10402
+
10403
+ # Resource family, such as email, phone, name, address, url, social handles,
10404
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
10405
+ # resource shape when the value belongs to a caller-defined namespace.
10406
+ sig { returns(String) }
10407
+ attr_accessor :type
10408
+
10409
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
10410
+ # value, not the raw value. When type is url, this must be a valid URL.
10411
+ sig { returns(String) }
10412
+ attr_accessor :value
10413
+
10414
+ # Real-world or account resource used during the event, such as an email, phone
10415
+ # number, address, URL, social handle, or payment identifier.
10416
+ sig do
10417
+ params(type: String, value: String).returns(
10418
+ T.attached_class
10419
+ )
10420
+ end
10421
+ def self.new(
10422
+ # Resource family, such as email, phone, name, address, url, social handles,
10423
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
10424
+ # resource shape when the value belongs to a caller-defined namespace.
10425
+ type:,
10426
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
10427
+ # value, not the raw value. When type is url, this must be a valid URL.
10428
+ value:
10429
+ )
10430
+ end
10431
+
10432
+ sig { override.returns({ type: String, value: String }) }
10433
+ def to_hash
10434
+ end
10435
+ end
8857
10436
 
8858
- # Real-world or account resource used during the event, such as an email, phone
8859
- # number, address, URL, social handle, or payment identifier.
8860
10437
  sig do
8861
- params(type: String, value: String).returns(T.attached_class)
8862
- end
8863
- def self.new(
8864
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
8865
- # youtube, linkedin, or another stable snake_case identifier.
8866
- type:,
8867
- # Resource value used during the event. SafetyKit stores a normalized hash of this
8868
- # value, not the raw value. When type is url, this must be a valid URL.
8869
- value:
8870
- )
10438
+ override.returns(
10439
+ T::Array[
10440
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UpdateAccount::ResourcesUsed::Variants
10441
+ ]
10442
+ )
8871
10443
  end
8872
-
8873
- sig { override.returns({ type: String, value: String }) }
8874
- def to_hash
10444
+ def self.variants
8875
10445
  end
8876
10446
  end
8877
10447
  end
@@ -8996,13 +10566,16 @@ module SafetyKit
8996
10566
  attr_writer :metadata
8997
10567
 
8998
10568
  # Reusable resources observed during the event. Use this for emails, phone
8999
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
9000
- # identifiers.
10569
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
10570
+ # caller-defined ids, or similar identifiers.
9001
10571
  sig do
9002
10572
  returns(
9003
10573
  T.nilable(
9004
10574
  T::Array[
9005
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed
10575
+ T.any(
10576
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource,
10577
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::UnionMember1
10578
+ )
9006
10579
  ]
9007
10580
  )
9008
10581
  )
@@ -9013,7 +10586,10 @@ module SafetyKit
9013
10586
  params(
9014
10587
  resources_used:
9015
10588
  T::Array[
9016
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::OrHash
10589
+ T.any(
10590
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::OrHash,
10591
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::UnionMember1::OrHash
10592
+ )
9017
10593
  ]
9018
10594
  ).void
9019
10595
  end
@@ -9061,7 +10637,10 @@ module SafetyKit
9061
10637
  ],
9062
10638
  resources_used:
9063
10639
  T::Array[
9064
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::OrHash
10640
+ T.any(
10641
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::OrHash,
10642
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::UnionMember1::OrHash
10643
+ )
9065
10644
  ],
9066
10645
  target_content_id: String,
9067
10646
  target_user_id: String,
@@ -9095,8 +10674,8 @@ module SafetyKit
9095
10674
  # be strings, numbers, booleans, or arrays of those scalar values.
9096
10675
  metadata: nil,
9097
10676
  # Reusable resources observed during the event. Use this for emails, phone
9098
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
9099
- # identifiers.
10677
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
10678
+ # caller-defined ids, or similar identifiers.
9100
10679
  resources_used: nil,
9101
10680
  # Your stable identifier for the content being reported.
9102
10681
  target_content_id: nil,
@@ -9132,7 +10711,10 @@ module SafetyKit
9132
10711
  ],
9133
10712
  resources_used:
9134
10713
  T::Array[
9135
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed
10714
+ T.any(
10715
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource,
10716
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::UnionMember1
10717
+ )
9136
10718
  ],
9137
10719
  target_content_id: String,
9138
10720
  target_user_id: String
@@ -9522,42 +11104,162 @@ module SafetyKit
9522
11104
  )
9523
11105
  end
9524
11106
 
9525
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
9526
- OrHash =
11107
+ # Real-world, account, social, or caller-defined resource used during the event.
11108
+ module ResourcesUsed
11109
+ extend SafetyKit::Internal::Type::Union
11110
+
11111
+ Variants =
9527
11112
  T.type_alias do
9528
11113
  T.any(
9529
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed,
9530
- SafetyKit::Internal::AnyHash
11114
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource,
11115
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::UnionMember1
9531
11116
  )
9532
11117
  end
9533
11118
 
9534
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
9535
- # youtube, linkedin, or another stable snake_case identifier.
9536
- sig { returns(String) }
9537
- attr_accessor :type
11119
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
11120
+ OrHash =
11121
+ T.type_alias do
11122
+ T.any(
11123
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource,
11124
+ SafetyKit::Internal::AnyHash
11125
+ )
11126
+ end
9538
11127
 
9539
- # Resource value used during the event. SafetyKit stores a normalized hash of this
9540
- # value, not the raw value. When type is url, this must be a valid URL.
9541
- sig { returns(String) }
9542
- attr_accessor :value
11128
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
11129
+ # urlEncode(namespace) + '/' + urlEncode(value).
11130
+ sig { returns(String) }
11131
+ attr_accessor :namespace
9543
11132
 
9544
- # Real-world or account resource used during the event, such as an email, phone
9545
- # number, address, URL, social handle, or payment identifier.
9546
- sig do
9547
- params(type: String, value: String).returns(T.attached_class)
11133
+ # Caller-defined entity identifier resource.
11134
+ sig do
11135
+ returns(
11136
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::Type::OrSymbol
11137
+ )
11138
+ end
11139
+ attr_accessor :type
11140
+
11141
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
11142
+ # encoded namespace/value pair, not the raw value.
11143
+ sig { returns(String) }
11144
+ attr_accessor :value
11145
+
11146
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
11147
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
11148
+ sig do
11149
+ params(
11150
+ namespace: String,
11151
+ type:
11152
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::Type::OrSymbol,
11153
+ value: String
11154
+ ).returns(T.attached_class)
11155
+ end
11156
+ def self.new(
11157
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
11158
+ # urlEncode(namespace) + '/' + urlEncode(value).
11159
+ namespace:,
11160
+ # Caller-defined entity identifier resource.
11161
+ type:,
11162
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
11163
+ # encoded namespace/value pair, not the raw value.
11164
+ value:
11165
+ )
11166
+ end
11167
+
11168
+ sig do
11169
+ override.returns(
11170
+ {
11171
+ namespace: String,
11172
+ type:
11173
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::Type::OrSymbol,
11174
+ value: String
11175
+ }
11176
+ )
11177
+ end
11178
+ def to_hash
11179
+ end
11180
+
11181
+ # Caller-defined entity identifier resource.
11182
+ module Type
11183
+ extend SafetyKit::Internal::Type::Enum
11184
+
11185
+ TaggedSymbol =
11186
+ T.type_alias do
11187
+ T.all(
11188
+ Symbol,
11189
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::Type
11190
+ )
11191
+ end
11192
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
11193
+
11194
+ ID =
11195
+ T.let(
11196
+ :id,
11197
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
11198
+ )
11199
+
11200
+ sig do
11201
+ override.returns(
11202
+ T::Array[
11203
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
11204
+ ]
11205
+ )
11206
+ end
11207
+ def self.values
11208
+ end
11209
+ end
9548
11210
  end
9549
- def self.new(
9550
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
9551
- # youtube, linkedin, or another stable snake_case identifier.
9552
- type:,
11211
+
11212
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
11213
+ OrHash =
11214
+ T.type_alias do
11215
+ T.any(
11216
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::UnionMember1,
11217
+ SafetyKit::Internal::AnyHash
11218
+ )
11219
+ end
11220
+
11221
+ # Resource family, such as email, phone, name, address, url, social handles,
11222
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
11223
+ # resource shape when the value belongs to a caller-defined namespace.
11224
+ sig { returns(String) }
11225
+ attr_accessor :type
11226
+
9553
11227
  # Resource value used during the event. SafetyKit stores a normalized hash of this
9554
11228
  # value, not the raw value. When type is url, this must be a valid URL.
9555
- value:
9556
- )
11229
+ sig { returns(String) }
11230
+ attr_accessor :value
11231
+
11232
+ # Real-world or account resource used during the event, such as an email, phone
11233
+ # number, address, URL, social handle, or payment identifier.
11234
+ sig do
11235
+ params(type: String, value: String).returns(
11236
+ T.attached_class
11237
+ )
11238
+ end
11239
+ def self.new(
11240
+ # Resource family, such as email, phone, name, address, url, social handles,
11241
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
11242
+ # resource shape when the value belongs to a caller-defined namespace.
11243
+ type:,
11244
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
11245
+ # value, not the raw value. When type is url, this must be a valid URL.
11246
+ value:
11247
+ )
11248
+ end
11249
+
11250
+ sig { override.returns({ type: String, value: String }) }
11251
+ def to_hash
11252
+ end
9557
11253
  end
9558
11254
 
9559
- sig { override.returns({ type: String, value: String }) }
9560
- def to_hash
11255
+ sig do
11256
+ override.returns(
11257
+ T::Array[
11258
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::UserReport::ResourcesUsed::Variants
11259
+ ]
11260
+ )
11261
+ end
11262
+ def self.variants
9561
11263
  end
9562
11264
  end
9563
11265
  end
@@ -9696,13 +11398,16 @@ module SafetyKit
9696
11398
  attr_writer :metadata
9697
11399
 
9698
11400
  # Reusable resources observed during the event. Use this for emails, phone
9699
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
9700
- # identifiers.
11401
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
11402
+ # caller-defined ids, or similar identifiers.
9701
11403
  sig do
9702
11404
  returns(
9703
11405
  T.nilable(
9704
11406
  T::Array[
9705
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed
11407
+ T.any(
11408
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource,
11409
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1
11410
+ )
9706
11411
  ]
9707
11412
  )
9708
11413
  )
@@ -9713,7 +11418,10 @@ module SafetyKit
9713
11418
  params(
9714
11419
  resources_used:
9715
11420
  T::Array[
9716
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::OrHash
11421
+ T.any(
11422
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::OrHash,
11423
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1::OrHash
11424
+ )
9717
11425
  ]
9718
11426
  ).void
9719
11427
  end
@@ -9762,7 +11470,10 @@ module SafetyKit
9762
11470
  ],
9763
11471
  resources_used:
9764
11472
  T::Array[
9765
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::OrHash
11473
+ T.any(
11474
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::OrHash,
11475
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1::OrHash
11476
+ )
9766
11477
  ],
9767
11478
  target_content_id: String,
9768
11479
  target_user_id: String,
@@ -9804,8 +11515,8 @@ module SafetyKit
9804
11515
  # be strings, numbers, booleans, or arrays of those scalar values.
9805
11516
  metadata: nil,
9806
11517
  # Reusable resources observed during the event. Use this for emails, phone
9807
- # numbers, names, addresses, social handles, URLs, payment identifiers, or similar
9808
- # identifiers.
11518
+ # numbers, names, addresses, social handles, URLs, payment identifiers,
11519
+ # caller-defined ids, or similar identifiers.
9809
11520
  resources_used: nil,
9810
11521
  # Your stable identifier for the content being reported.
9811
11522
  target_content_id: nil,
@@ -9843,7 +11554,10 @@ module SafetyKit
9843
11554
  ],
9844
11555
  resources_used:
9845
11556
  T::Array[
9846
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed
11557
+ T.any(
11558
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource,
11559
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1
11560
+ )
9847
11561
  ],
9848
11562
  target_content_id: String,
9849
11563
  target_user_id: String
@@ -10282,42 +11996,162 @@ module SafetyKit
10282
11996
  )
10283
11997
  end
10284
11998
 
10285
- class ResourcesUsed < SafetyKit::Internal::Type::BaseModel
10286
- OrHash =
11999
+ # Real-world, account, social, or caller-defined resource used during the event.
12000
+ module ResourcesUsed
12001
+ extend SafetyKit::Internal::Type::Union
12002
+
12003
+ Variants =
10287
12004
  T.type_alias do
10288
12005
  T.any(
10289
- SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed,
10290
- SafetyKit::Internal::AnyHash
12006
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource,
12007
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1
10291
12008
  )
10292
12009
  end
10293
12010
 
10294
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
10295
- # youtube, linkedin, or another stable snake_case identifier.
10296
- sig { returns(String) }
10297
- attr_accessor :type
12011
+ class EntityIDResource < SafetyKit::Internal::Type::BaseModel
12012
+ OrHash =
12013
+ T.type_alias do
12014
+ T.any(
12015
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource,
12016
+ SafetyKit::Internal::AnyHash
12017
+ )
12018
+ end
10298
12019
 
10299
- # Resource value used during the event. SafetyKit stores a normalized hash of this
10300
- # value, not the raw value. When type is url, this must be a valid URL.
10301
- sig { returns(String) }
10302
- attr_accessor :value
12020
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
12021
+ # urlEncode(namespace) + '/' + urlEncode(value).
12022
+ sig { returns(String) }
12023
+ attr_accessor :namespace
10303
12024
 
10304
- # Real-world or account resource used during the event, such as an email, phone
10305
- # number, address, URL, social handle, or payment identifier.
10306
- sig do
10307
- params(type: String, value: String).returns(T.attached_class)
12025
+ # Caller-defined entity identifier resource.
12026
+ sig do
12027
+ returns(
12028
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::Type::OrSymbol
12029
+ )
12030
+ end
12031
+ attr_accessor :type
12032
+
12033
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
12034
+ # encoded namespace/value pair, not the raw value.
12035
+ sig { returns(String) }
12036
+ attr_accessor :value
12037
+
12038
+ # Caller-defined stable entity identifier resource. This is equivalent to an id
12039
+ # resource value of urlEncode(namespace) + '/' + urlEncode(value).
12040
+ sig do
12041
+ params(
12042
+ namespace: String,
12043
+ type:
12044
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::Type::OrSymbol,
12045
+ value: String
12046
+ ).returns(T.attached_class)
12047
+ end
12048
+ def self.new(
12049
+ # Caller-defined namespace for the identifier. SafetyKit stores this with value as
12050
+ # urlEncode(namespace) + '/' + urlEncode(value).
12051
+ namespace:,
12052
+ # Caller-defined entity identifier resource.
12053
+ type:,
12054
+ # Identifier value within namespace. SafetyKit stores a normalized hash of the
12055
+ # encoded namespace/value pair, not the raw value.
12056
+ value:
12057
+ )
12058
+ end
12059
+
12060
+ sig do
12061
+ override.returns(
12062
+ {
12063
+ namespace: String,
12064
+ type:
12065
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::Type::OrSymbol,
12066
+ value: String
12067
+ }
12068
+ )
12069
+ end
12070
+ def to_hash
12071
+ end
12072
+
12073
+ # Caller-defined entity identifier resource.
12074
+ module Type
12075
+ extend SafetyKit::Internal::Type::Enum
12076
+
12077
+ TaggedSymbol =
12078
+ T.type_alias do
12079
+ T.all(
12080
+ Symbol,
12081
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::Type
12082
+ )
12083
+ end
12084
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
12085
+
12086
+ ID =
12087
+ T.let(
12088
+ :id,
12089
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
12090
+ )
12091
+
12092
+ sig do
12093
+ override.returns(
12094
+ T::Array[
12095
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::EntityIDResource::Type::TaggedSymbol
12096
+ ]
12097
+ )
12098
+ end
12099
+ def self.values
12100
+ end
12101
+ end
10308
12102
  end
10309
- def self.new(
10310
- # Resource family, such as email, phone, name, address, url, instagram, tiktok,
10311
- # youtube, linkedin, or another stable snake_case identifier.
10312
- type:,
12103
+
12104
+ class UnionMember1 < SafetyKit::Internal::Type::BaseModel
12105
+ OrHash =
12106
+ T.type_alias do
12107
+ T.any(
12108
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::UnionMember1,
12109
+ SafetyKit::Internal::AnyHash
12110
+ )
12111
+ end
12112
+
12113
+ # Resource family, such as email, phone, name, address, url, social handles,
12114
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
12115
+ # resource shape when the value belongs to a caller-defined namespace.
12116
+ sig { returns(String) }
12117
+ attr_accessor :type
12118
+
10313
12119
  # Resource value used during the event. SafetyKit stores a normalized hash of this
10314
12120
  # value, not the raw value. When type is url, this must be a valid URL.
10315
- value:
10316
- )
12121
+ sig { returns(String) }
12122
+ attr_accessor :value
12123
+
12124
+ # Real-world or account resource used during the event, such as an email, phone
12125
+ # number, address, URL, social handle, or payment identifier.
12126
+ sig do
12127
+ params(type: String, value: String).returns(
12128
+ T.attached_class
12129
+ )
12130
+ end
12131
+ def self.new(
12132
+ # Resource family, such as email, phone, name, address, url, social handles,
12133
+ # payment identifiers, or another stable snake_case identifier. Use the entity ID
12134
+ # resource shape when the value belongs to a caller-defined namespace.
12135
+ type:,
12136
+ # Resource value used during the event. SafetyKit stores a normalized hash of this
12137
+ # value, not the raw value. When type is url, this must be a valid URL.
12138
+ value:
12139
+ )
12140
+ end
12141
+
12142
+ sig { override.returns({ type: String, value: String }) }
12143
+ def to_hash
12144
+ end
10317
12145
  end
10318
12146
 
10319
- sig { override.returns({ type: String, value: String }) }
10320
- def to_hash
12147
+ sig do
12148
+ override.returns(
12149
+ T::Array[
12150
+ SafetyKit::Beta::EventCreateParams::Body::UnionMember7::ModerationDecision::ResourcesUsed::Variants
12151
+ ]
12152
+ )
12153
+ end
12154
+ def self.variants
10321
12155
  end
10322
12156
  end
10323
12157
  end