context.dev 2.8.0 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/client.rb +10 -0
  5. data/lib/context_dev/models/batch_delete_params.rb +22 -0
  6. data/lib/context_dev/models/batch_delete_response.rb +60 -0
  7. data/lib/context_dev/models/batch_get_results_response.rb +46 -4
  8. data/lib/context_dev/models/batch_list_response.rb +13 -4
  9. data/lib/context_dev/models/batch_retrieve_response.rb +13 -4
  10. data/lib/context_dev/models/batch_submit_params.rb +2080 -26
  11. data/lib/context_dev/models/batch_submit_response.rb +125 -531
  12. data/lib/context_dev/models/brand_retrieve_response.rb +50 -1
  13. data/lib/context_dev/models/brand_search_params.rb +41 -3
  14. data/lib/context_dev/models/brand_search_response.rb +3 -2
  15. data/lib/context_dev/models/crawl_controls.rb +21 -15
  16. data/lib/context_dev/models/news_search_params.rb +467 -0
  17. data/lib/context_dev/models/news_search_response.rb +238 -0
  18. data/lib/context_dev/models/parse_handle_params.rb +20 -147
  19. data/lib/context_dev/models/person_enrich_params.rb +176 -0
  20. data/lib/context_dev/models/person_enrich_response.rb +641 -0
  21. data/lib/context_dev/models/utility_prefetch_params.rb +19 -16
  22. data/lib/context_dev/models/utility_prefetch_response.rb +4 -5
  23. data/lib/context_dev/models/web_screenshot_params.rb +3 -30
  24. data/lib/context_dev/models/web_search_response.rb +1 -0
  25. data/lib/context_dev/models/web_web_crawl_md_params.rb +5 -4
  26. data/lib/context_dev/models/web_web_crawl_md_response.rb +30 -1
  27. data/lib/context_dev/models/web_web_scrape_html_params.rb +20 -156
  28. data/lib/context_dev/models/web_web_scrape_html_response.rb +30 -1
  29. data/lib/context_dev/models/web_web_scrape_images_params.rb +12 -124
  30. data/lib/context_dev/models/web_web_scrape_md_params.rb +40 -241
  31. data/lib/context_dev/models/web_web_scrape_md_response.rb +41 -2
  32. data/lib/context_dev/models/web_web_scrape_sitemap_params.rb +11 -1
  33. data/lib/context_dev/models/web_web_scrape_sitemap_response.rb +3 -2
  34. data/lib/context_dev/models.rb +6 -0
  35. data/lib/context_dev/resources/batch.rb +33 -7
  36. data/lib/context_dev/resources/brand.rb +10 -10
  37. data/lib/context_dev/resources/news.rb +51 -0
  38. data/lib/context_dev/resources/parse.rb +5 -5
  39. data/lib/context_dev/resources/people.rb +56 -0
  40. data/lib/context_dev/resources/utility.rb +7 -6
  41. data/lib/context_dev/resources/web.rb +46 -24
  42. data/lib/context_dev/version.rb +1 -1
  43. data/lib/context_dev.rb +8 -0
  44. data/rbi/context_dev/client.rbi +8 -0
  45. data/rbi/context_dev/models/batch_delete_params.rbi +40 -0
  46. data/rbi/context_dev/models/batch_delete_response.rbi +116 -0
  47. data/rbi/context_dev/models/batch_get_results_response.rbi +85 -3
  48. data/rbi/context_dev/models/batch_list_response.rbi +24 -8
  49. data/rbi/context_dev/models/batch_retrieve_response.rbi +24 -8
  50. data/rbi/context_dev/models/batch_submit_params.rbi +6421 -44
  51. data/rbi/context_dev/models/batch_submit_response.rbi +184 -1151
  52. data/rbi/context_dev/models/brand_retrieve_response.rbi +152 -0
  53. data/rbi/context_dev/models/brand_search_params.rbi +71 -2
  54. data/rbi/context_dev/models/brand_search_response.rbi +4 -2
  55. data/rbi/context_dev/models/crawl_controls.rbi +22 -28
  56. data/rbi/context_dev/models/news_search_params.rbi +1294 -0
  57. data/rbi/context_dev/models/news_search_response.rbi +423 -0
  58. data/rbi/context_dev/models/parse_handle_params.rbi +30 -323
  59. data/rbi/context_dev/models/person_enrich_params.rbi +332 -0
  60. data/rbi/context_dev/models/person_enrich_response.rbi +1295 -0
  61. data/rbi/context_dev/models/utility_prefetch_params.rbi +24 -16
  62. data/rbi/context_dev/models/utility_prefetch_response.rbi +8 -6
  63. data/rbi/context_dev/models/web_screenshot_params.rbi +4 -71
  64. data/rbi/context_dev/models/web_search_response.rbi +5 -0
  65. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +8 -6
  66. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +67 -0
  67. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +30 -363
  68. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +65 -0
  69. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +16 -287
  70. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +57 -558
  71. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +80 -0
  72. data/rbi/context_dev/models/web_web_scrape_sitemap_params.rbi +15 -0
  73. data/rbi/context_dev/models/web_web_scrape_sitemap_response.rbi +4 -2
  74. data/rbi/context_dev/models.rbi +6 -0
  75. data/rbi/context_dev/resources/batch.rbi +32 -10
  76. data/rbi/context_dev/resources/brand.rbi +14 -8
  77. data/rbi/context_dev/resources/news.rbi +46 -0
  78. data/rbi/context_dev/resources/parse.rbi +10 -26
  79. data/rbi/context_dev/resources/people.rbi +47 -0
  80. data/rbi/context_dev/resources/utility.rbi +8 -6
  81. data/rbi/context_dev/resources/web.rbi +49 -66
  82. data/sig/context_dev/client.rbs +4 -0
  83. data/sig/context_dev/models/batch_delete_params.rbs +23 -0
  84. data/sig/context_dev/models/batch_delete_response.rbs +57 -0
  85. data/sig/context_dev/models/batch_get_results_response.rbs +30 -2
  86. data/sig/context_dev/models/batch_list_response.rbs +16 -2
  87. data/sig/context_dev/models/batch_retrieve_response.rbs +16 -2
  88. data/sig/context_dev/models/batch_submit_params.rbs +2666 -15
  89. data/sig/context_dev/models/batch_submit_response.rbs +78 -466
  90. data/sig/context_dev/models/brand_retrieve_response.rbs +62 -0
  91. data/sig/context_dev/models/brand_search_params.rbs +38 -1
  92. data/sig/context_dev/models/crawl_controls.rbs +16 -16
  93. data/sig/context_dev/models/news_search_params.rbs +532 -0
  94. data/sig/context_dev/models/news_search_response.rbs +206 -0
  95. data/sig/context_dev/models/parse_handle_params.rbs +25 -90
  96. data/sig/context_dev/models/person_enrich_params.rbs +199 -0
  97. data/sig/context_dev/models/person_enrich_response.rbs +638 -0
  98. data/sig/context_dev/models/utility_prefetch_params.rbs +2 -1
  99. data/sig/context_dev/models/utility_prefetch_response.rbs +2 -1
  100. data/sig/context_dev/models/web_screenshot_params.rbs +5 -18
  101. data/sig/context_dev/models/web_search_response.rbs +2 -0
  102. data/sig/context_dev/models/web_web_crawl_md_response.rbs +21 -0
  103. data/sig/context_dev/models/web_web_scrape_html_params.rbs +24 -94
  104. data/sig/context_dev/models/web_web_scrape_html_response.rbs +21 -0
  105. data/sig/context_dev/models/web_web_scrape_images_params.rbs +20 -72
  106. data/sig/context_dev/models/web_web_scrape_md_params.rbs +46 -148
  107. data/sig/context_dev/models/web_web_scrape_md_response.rbs +28 -0
  108. data/sig/context_dev/models/web_web_scrape_sitemap_params.rbs +7 -0
  109. data/sig/context_dev/models.rbs +6 -0
  110. data/sig/context_dev/resources/batch.rbs +8 -2
  111. data/sig/context_dev/resources/brand.rbs +3 -0
  112. data/sig/context_dev/resources/news.rbs +17 -0
  113. data/sig/context_dev/resources/parse.rbs +5 -5
  114. data/sig/context_dev/resources/people.rbs +19 -0
  115. data/sig/context_dev/resources/web.rbs +13 -11
  116. metadata +26 -2
@@ -0,0 +1,1295 @@
1
+ # typed: strong
2
+
3
+ module ContextDev
4
+ module Models
5
+ class PersonEnrichResponse < ContextDev::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ ContextDev::Models::PersonEnrichResponse,
10
+ ContextDev::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The highest-scoring person candidate.
15
+ sig { returns(ContextDev::Models::PersonEnrichResponse::Match::Variants) }
16
+ attr_accessor :match
17
+
18
+ # Metadata about the API key used for the request. Included in every response
19
+ # whenever a valid API key is provided, even when the response status is not 200.
20
+ sig do
21
+ returns(
22
+ T.nilable(ContextDev::Models::PersonEnrichResponse::KeyMetadata)
23
+ )
24
+ end
25
+ attr_reader :key_metadata
26
+
27
+ sig do
28
+ params(
29
+ key_metadata:
30
+ ContextDev::Models::PersonEnrichResponse::KeyMetadata::OrHash
31
+ ).void
32
+ end
33
+ attr_writer :key_metadata
34
+
35
+ sig do
36
+ params(
37
+ match:
38
+ T.any(
39
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::OrHash,
40
+ ContextDev::Models::PersonEnrichResponse::Match::NotFound::OrHash
41
+ ),
42
+ key_metadata:
43
+ ContextDev::Models::PersonEnrichResponse::KeyMetadata::OrHash
44
+ ).returns(T.attached_class)
45
+ end
46
+ def self.new(
47
+ # The highest-scoring person candidate.
48
+ match:,
49
+ # Metadata about the API key used for the request. Included in every response
50
+ # whenever a valid API key is provided, even when the response status is not 200.
51
+ key_metadata: nil
52
+ )
53
+ end
54
+
55
+ sig do
56
+ override.returns(
57
+ {
58
+ match: ContextDev::Models::PersonEnrichResponse::Match::Variants,
59
+ key_metadata: ContextDev::Models::PersonEnrichResponse::KeyMetadata
60
+ }
61
+ )
62
+ end
63
+ def to_hash
64
+ end
65
+
66
+ # The highest-scoring person candidate.
67
+ module Match
68
+ extend ContextDev::Internal::Type::Union
69
+
70
+ Variants =
71
+ T.type_alias do
72
+ T.any(
73
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate,
74
+ ContextDev::Models::PersonEnrichResponse::Match::NotFound
75
+ )
76
+ end
77
+
78
+ class Candidate < ContextDev::Internal::Type::BaseModel
79
+ OrHash =
80
+ T.type_alias do
81
+ T.any(
82
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate,
83
+ ContextDev::Internal::AnyHash
84
+ )
85
+ end
86
+
87
+ sig do
88
+ returns(
89
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person
90
+ )
91
+ end
92
+ attr_reader :person
93
+
94
+ sig do
95
+ params(
96
+ person:
97
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::OrHash
98
+ ).void
99
+ end
100
+ attr_writer :person
101
+
102
+ sig { returns(Integer) }
103
+ attr_accessor :score
104
+
105
+ sig { returns(Symbol) }
106
+ attr_accessor :status
107
+
108
+ # The highest-scoring person candidate.
109
+ sig do
110
+ params(
111
+ person:
112
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::OrHash,
113
+ score: Integer,
114
+ status: Symbol
115
+ ).returns(T.attached_class)
116
+ end
117
+ def self.new(person:, score:, status: :candidate)
118
+ end
119
+
120
+ sig do
121
+ override.returns(
122
+ {
123
+ person:
124
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person,
125
+ score: Integer,
126
+ status: Symbol
127
+ }
128
+ )
129
+ end
130
+ def to_hash
131
+ end
132
+
133
+ class Person < ContextDev::Internal::Type::BaseModel
134
+ OrHash =
135
+ T.type_alias do
136
+ T.any(
137
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person,
138
+ ContextDev::Internal::AnyHash
139
+ )
140
+ end
141
+
142
+ # Whether the person's current role is known. `present` — current_role is
143
+ # populated. `none` — the work history explicitly shows every role has ended.
144
+ # `unknown` — our data sources could not confirm either way; treat a missing
145
+ # current_role as unverified rather than vacant.
146
+ sig do
147
+ returns(
148
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
149
+ )
150
+ end
151
+ attr_accessor :current_role_status
152
+
153
+ sig do
154
+ returns(
155
+ T::Array[
156
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education
157
+ ]
158
+ )
159
+ end
160
+ attr_accessor :education
161
+
162
+ sig do
163
+ returns(
164
+ T::Array[
165
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience
166
+ ]
167
+ )
168
+ end
169
+ attr_accessor :experience
170
+
171
+ sig { returns(T::Array[String]) }
172
+ attr_accessor :skills
173
+
174
+ sig { returns(T::Array[String]) }
175
+ attr_accessor :social_urls
176
+
177
+ sig { returns(T::Array[String]) }
178
+ attr_accessor :website_urls
179
+
180
+ sig { returns(T.nilable(String)) }
181
+ attr_reader :avatar_url
182
+
183
+ sig { params(avatar_url: String).void }
184
+ attr_writer :avatar_url
185
+
186
+ sig { returns(T.nilable(String)) }
187
+ attr_reader :bio
188
+
189
+ sig { params(bio: String).void }
190
+ attr_writer :bio
191
+
192
+ # When we last refreshed this profile from our data sources (ISO 8601).
193
+ sig { returns(T.nilable(String)) }
194
+ attr_reader :checked_at
195
+
196
+ sig { params(checked_at: String).void }
197
+ attr_writer :checked_at
198
+
199
+ sig do
200
+ returns(
201
+ T.nilable(
202
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole
203
+ )
204
+ )
205
+ end
206
+ attr_reader :current_role
207
+
208
+ sig do
209
+ params(
210
+ current_role:
211
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::OrHash
212
+ ).void
213
+ end
214
+ attr_writer :current_role
215
+
216
+ sig { returns(T.nilable(String)) }
217
+ attr_reader :email
218
+
219
+ sig { params(email: String).void }
220
+ attr_writer :email
221
+
222
+ # When the underlying profile data last changed in our data sources (ISO 8601).
223
+ # Omitted when unknown.
224
+ sig { returns(T.nilable(String)) }
225
+ attr_reader :last_updated
226
+
227
+ sig { params(last_updated: String).void }
228
+ attr_writer :last_updated
229
+
230
+ sig do
231
+ returns(
232
+ T.nilable(
233
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location
234
+ )
235
+ )
236
+ end
237
+ attr_reader :location
238
+
239
+ sig do
240
+ params(
241
+ location:
242
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location::OrHash
243
+ ).void
244
+ end
245
+ attr_writer :location
246
+
247
+ sig do
248
+ returns(
249
+ T.nilable(
250
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Name
251
+ )
252
+ )
253
+ end
254
+ attr_reader :name
255
+
256
+ sig do
257
+ params(
258
+ name:
259
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Name::OrHash
260
+ ).void
261
+ end
262
+ attr_writer :name
263
+
264
+ sig do
265
+ params(
266
+ current_role_status:
267
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::OrSymbol,
268
+ education:
269
+ T::Array[
270
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::OrHash
271
+ ],
272
+ experience:
273
+ T::Array[
274
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::OrHash
275
+ ],
276
+ skills: T::Array[String],
277
+ social_urls: T::Array[String],
278
+ website_urls: T::Array[String],
279
+ avatar_url: String,
280
+ bio: String,
281
+ checked_at: String,
282
+ current_role:
283
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::OrHash,
284
+ email: String,
285
+ last_updated: String,
286
+ location:
287
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location::OrHash,
288
+ name:
289
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Name::OrHash
290
+ ).returns(T.attached_class)
291
+ end
292
+ def self.new(
293
+ # Whether the person's current role is known. `present` — current_role is
294
+ # populated. `none` — the work history explicitly shows every role has ended.
295
+ # `unknown` — our data sources could not confirm either way; treat a missing
296
+ # current_role as unverified rather than vacant.
297
+ current_role_status:,
298
+ education:,
299
+ experience:,
300
+ skills:,
301
+ social_urls:,
302
+ website_urls:,
303
+ avatar_url: nil,
304
+ bio: nil,
305
+ # When we last refreshed this profile from our data sources (ISO 8601).
306
+ checked_at: nil,
307
+ current_role: nil,
308
+ email: nil,
309
+ # When the underlying profile data last changed in our data sources (ISO 8601).
310
+ # Omitted when unknown.
311
+ last_updated: nil,
312
+ location: nil,
313
+ name: nil
314
+ )
315
+ end
316
+
317
+ sig do
318
+ override.returns(
319
+ {
320
+ current_role_status:
321
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol,
322
+ education:
323
+ T::Array[
324
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education
325
+ ],
326
+ experience:
327
+ T::Array[
328
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience
329
+ ],
330
+ skills: T::Array[String],
331
+ social_urls: T::Array[String],
332
+ website_urls: T::Array[String],
333
+ avatar_url: String,
334
+ bio: String,
335
+ checked_at: String,
336
+ current_role:
337
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole,
338
+ email: String,
339
+ last_updated: String,
340
+ location:
341
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location,
342
+ name:
343
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Name
344
+ }
345
+ )
346
+ end
347
+ def to_hash
348
+ end
349
+
350
+ # Whether the person's current role is known. `present` — current_role is
351
+ # populated. `none` — the work history explicitly shows every role has ended.
352
+ # `unknown` — our data sources could not confirm either way; treat a missing
353
+ # current_role as unverified rather than vacant.
354
+ module CurrentRoleStatus
355
+ extend ContextDev::Internal::Type::Enum
356
+
357
+ TaggedSymbol =
358
+ T.type_alias do
359
+ T.all(
360
+ Symbol,
361
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus
362
+ )
363
+ end
364
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
365
+
366
+ PRESENT =
367
+ T.let(
368
+ :present,
369
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
370
+ )
371
+ NONE =
372
+ T.let(
373
+ :none,
374
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
375
+ )
376
+ UNKNOWN =
377
+ T.let(
378
+ :unknown,
379
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
380
+ )
381
+
382
+ sig do
383
+ override.returns(
384
+ T::Array[
385
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
386
+ ]
387
+ )
388
+ end
389
+ def self.values
390
+ end
391
+ end
392
+
393
+ class Education < ContextDev::Internal::Type::BaseModel
394
+ OrHash =
395
+ T.type_alias do
396
+ T.any(
397
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education,
398
+ ContextDev::Internal::AnyHash
399
+ )
400
+ end
401
+
402
+ sig do
403
+ returns(
404
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::Institution
405
+ )
406
+ end
407
+ attr_reader :institution
408
+
409
+ sig do
410
+ params(
411
+ institution:
412
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::Institution::OrHash
413
+ ).void
414
+ end
415
+ attr_writer :institution
416
+
417
+ sig { returns(T.nilable(String)) }
418
+ attr_reader :degree
419
+
420
+ sig { params(degree: String).void }
421
+ attr_writer :degree
422
+
423
+ sig { returns(T.nilable(String)) }
424
+ attr_reader :description
425
+
426
+ sig { params(description: String).void }
427
+ attr_writer :description
428
+
429
+ sig do
430
+ returns(
431
+ T.nilable(
432
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::EndDate
433
+ )
434
+ )
435
+ end
436
+ attr_reader :end_date
437
+
438
+ sig do
439
+ params(
440
+ end_date:
441
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::EndDate::OrHash
442
+ ).void
443
+ end
444
+ attr_writer :end_date
445
+
446
+ sig { returns(T.nilable(String)) }
447
+ attr_reader :field_of_study
448
+
449
+ sig { params(field_of_study: String).void }
450
+ attr_writer :field_of_study
451
+
452
+ sig do
453
+ returns(
454
+ T.nilable(
455
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::StartDate
456
+ )
457
+ )
458
+ end
459
+ attr_reader :start_date
460
+
461
+ sig do
462
+ params(
463
+ start_date:
464
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::StartDate::OrHash
465
+ ).void
466
+ end
467
+ attr_writer :start_date
468
+
469
+ sig do
470
+ params(
471
+ institution:
472
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::Institution::OrHash,
473
+ degree: String,
474
+ description: String,
475
+ end_date:
476
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::EndDate::OrHash,
477
+ field_of_study: String,
478
+ start_date:
479
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::StartDate::OrHash
480
+ ).returns(T.attached_class)
481
+ end
482
+ def self.new(
483
+ institution:,
484
+ degree: nil,
485
+ description: nil,
486
+ end_date: nil,
487
+ field_of_study: nil,
488
+ start_date: nil
489
+ )
490
+ end
491
+
492
+ sig do
493
+ override.returns(
494
+ {
495
+ institution:
496
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::Institution,
497
+ degree: String,
498
+ description: String,
499
+ end_date:
500
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::EndDate,
501
+ field_of_study: String,
502
+ start_date:
503
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::StartDate
504
+ }
505
+ )
506
+ end
507
+ def to_hash
508
+ end
509
+
510
+ class Institution < ContextDev::Internal::Type::BaseModel
511
+ OrHash =
512
+ T.type_alias do
513
+ T.any(
514
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::Institution,
515
+ ContextDev::Internal::AnyHash
516
+ )
517
+ end
518
+
519
+ sig { returns(String) }
520
+ attr_accessor :name
521
+
522
+ sig { returns(T.nilable(String)) }
523
+ attr_reader :domain
524
+
525
+ sig { params(domain: String).void }
526
+ attr_writer :domain
527
+
528
+ sig do
529
+ params(name: String, domain: String).returns(T.attached_class)
530
+ end
531
+ def self.new(name:, domain: nil)
532
+ end
533
+
534
+ sig { override.returns({ name: String, domain: String }) }
535
+ def to_hash
536
+ end
537
+ end
538
+
539
+ class EndDate < ContextDev::Internal::Type::BaseModel
540
+ OrHash =
541
+ T.type_alias do
542
+ T.any(
543
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::EndDate,
544
+ ContextDev::Internal::AnyHash
545
+ )
546
+ end
547
+
548
+ sig { returns(Integer) }
549
+ attr_accessor :year
550
+
551
+ sig { returns(T.nilable(Integer)) }
552
+ attr_reader :day
553
+
554
+ sig { params(day: Integer).void }
555
+ attr_writer :day
556
+
557
+ sig { returns(T.nilable(Integer)) }
558
+ attr_reader :month
559
+
560
+ sig { params(month: Integer).void }
561
+ attr_writer :month
562
+
563
+ sig do
564
+ params(year: Integer, day: Integer, month: Integer).returns(
565
+ T.attached_class
566
+ )
567
+ end
568
+ def self.new(year:, day: nil, month: nil)
569
+ end
570
+
571
+ sig do
572
+ override.returns(
573
+ { year: Integer, day: Integer, month: Integer }
574
+ )
575
+ end
576
+ def to_hash
577
+ end
578
+ end
579
+
580
+ class StartDate < ContextDev::Internal::Type::BaseModel
581
+ OrHash =
582
+ T.type_alias do
583
+ T.any(
584
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::StartDate,
585
+ ContextDev::Internal::AnyHash
586
+ )
587
+ end
588
+
589
+ sig { returns(Integer) }
590
+ attr_accessor :year
591
+
592
+ sig { returns(T.nilable(Integer)) }
593
+ attr_reader :day
594
+
595
+ sig { params(day: Integer).void }
596
+ attr_writer :day
597
+
598
+ sig { returns(T.nilable(Integer)) }
599
+ attr_reader :month
600
+
601
+ sig { params(month: Integer).void }
602
+ attr_writer :month
603
+
604
+ sig do
605
+ params(year: Integer, day: Integer, month: Integer).returns(
606
+ T.attached_class
607
+ )
608
+ end
609
+ def self.new(year:, day: nil, month: nil)
610
+ end
611
+
612
+ sig do
613
+ override.returns(
614
+ { year: Integer, day: Integer, month: Integer }
615
+ )
616
+ end
617
+ def to_hash
618
+ end
619
+ end
620
+ end
621
+
622
+ class Experience < ContextDev::Internal::Type::BaseModel
623
+ OrHash =
624
+ T.type_alias do
625
+ T.any(
626
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience,
627
+ ContextDev::Internal::AnyHash
628
+ )
629
+ end
630
+
631
+ sig do
632
+ returns(
633
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::Organization
634
+ )
635
+ end
636
+ attr_reader :organization
637
+
638
+ sig do
639
+ params(
640
+ organization:
641
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::Organization::OrHash
642
+ ).void
643
+ end
644
+ attr_writer :organization
645
+
646
+ sig { returns(String) }
647
+ attr_accessor :title
648
+
649
+ sig { returns(T.nilable(String)) }
650
+ attr_reader :description
651
+
652
+ sig { params(description: String).void }
653
+ attr_writer :description
654
+
655
+ sig do
656
+ returns(
657
+ T.nilable(
658
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::EndDate
659
+ )
660
+ )
661
+ end
662
+ attr_reader :end_date
663
+
664
+ sig do
665
+ params(
666
+ end_date:
667
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::EndDate::OrHash
668
+ ).void
669
+ end
670
+ attr_writer :end_date
671
+
672
+ sig { returns(T.nilable(T::Boolean)) }
673
+ attr_reader :is_current
674
+
675
+ sig { params(is_current: T::Boolean).void }
676
+ attr_writer :is_current
677
+
678
+ sig { returns(T.nilable(String)) }
679
+ attr_reader :location
680
+
681
+ sig { params(location: String).void }
682
+ attr_writer :location
683
+
684
+ sig do
685
+ returns(
686
+ T.nilable(
687
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::StartDate
688
+ )
689
+ )
690
+ end
691
+ attr_reader :start_date
692
+
693
+ sig do
694
+ params(
695
+ start_date:
696
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::StartDate::OrHash
697
+ ).void
698
+ end
699
+ attr_writer :start_date
700
+
701
+ sig do
702
+ params(
703
+ organization:
704
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::Organization::OrHash,
705
+ title: String,
706
+ description: String,
707
+ end_date:
708
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::EndDate::OrHash,
709
+ is_current: T::Boolean,
710
+ location: String,
711
+ start_date:
712
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::StartDate::OrHash
713
+ ).returns(T.attached_class)
714
+ end
715
+ def self.new(
716
+ organization:,
717
+ title:,
718
+ description: nil,
719
+ end_date: nil,
720
+ is_current: nil,
721
+ location: nil,
722
+ start_date: nil
723
+ )
724
+ end
725
+
726
+ sig do
727
+ override.returns(
728
+ {
729
+ organization:
730
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::Organization,
731
+ title: String,
732
+ description: String,
733
+ end_date:
734
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::EndDate,
735
+ is_current: T::Boolean,
736
+ location: String,
737
+ start_date:
738
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::StartDate
739
+ }
740
+ )
741
+ end
742
+ def to_hash
743
+ end
744
+
745
+ class Organization < ContextDev::Internal::Type::BaseModel
746
+ OrHash =
747
+ T.type_alias do
748
+ T.any(
749
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::Organization,
750
+ ContextDev::Internal::AnyHash
751
+ )
752
+ end
753
+
754
+ sig { returns(String) }
755
+ attr_accessor :name
756
+
757
+ sig { returns(T.nilable(String)) }
758
+ attr_reader :domain
759
+
760
+ sig { params(domain: String).void }
761
+ attr_writer :domain
762
+
763
+ sig do
764
+ params(name: String, domain: String).returns(T.attached_class)
765
+ end
766
+ def self.new(name:, domain: nil)
767
+ end
768
+
769
+ sig { override.returns({ name: String, domain: String }) }
770
+ def to_hash
771
+ end
772
+ end
773
+
774
+ class EndDate < ContextDev::Internal::Type::BaseModel
775
+ OrHash =
776
+ T.type_alias do
777
+ T.any(
778
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::EndDate,
779
+ ContextDev::Internal::AnyHash
780
+ )
781
+ end
782
+
783
+ sig { returns(Integer) }
784
+ attr_accessor :year
785
+
786
+ sig { returns(T.nilable(Integer)) }
787
+ attr_reader :day
788
+
789
+ sig { params(day: Integer).void }
790
+ attr_writer :day
791
+
792
+ sig { returns(T.nilable(Integer)) }
793
+ attr_reader :month
794
+
795
+ sig { params(month: Integer).void }
796
+ attr_writer :month
797
+
798
+ sig do
799
+ params(year: Integer, day: Integer, month: Integer).returns(
800
+ T.attached_class
801
+ )
802
+ end
803
+ def self.new(year:, day: nil, month: nil)
804
+ end
805
+
806
+ sig do
807
+ override.returns(
808
+ { year: Integer, day: Integer, month: Integer }
809
+ )
810
+ end
811
+ def to_hash
812
+ end
813
+ end
814
+
815
+ class StartDate < ContextDev::Internal::Type::BaseModel
816
+ OrHash =
817
+ T.type_alias do
818
+ T.any(
819
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Experience::StartDate,
820
+ ContextDev::Internal::AnyHash
821
+ )
822
+ end
823
+
824
+ sig { returns(Integer) }
825
+ attr_accessor :year
826
+
827
+ sig { returns(T.nilable(Integer)) }
828
+ attr_reader :day
829
+
830
+ sig { params(day: Integer).void }
831
+ attr_writer :day
832
+
833
+ sig { returns(T.nilable(Integer)) }
834
+ attr_reader :month
835
+
836
+ sig { params(month: Integer).void }
837
+ attr_writer :month
838
+
839
+ sig do
840
+ params(year: Integer, day: Integer, month: Integer).returns(
841
+ T.attached_class
842
+ )
843
+ end
844
+ def self.new(year:, day: nil, month: nil)
845
+ end
846
+
847
+ sig do
848
+ override.returns(
849
+ { year: Integer, day: Integer, month: Integer }
850
+ )
851
+ end
852
+ def to_hash
853
+ end
854
+ end
855
+ end
856
+
857
+ class CurrentRole < ContextDev::Internal::Type::BaseModel
858
+ OrHash =
859
+ T.type_alias do
860
+ T.any(
861
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole,
862
+ ContextDev::Internal::AnyHash
863
+ )
864
+ end
865
+
866
+ sig do
867
+ returns(
868
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::Organization
869
+ )
870
+ end
871
+ attr_reader :organization
872
+
873
+ sig do
874
+ params(
875
+ organization:
876
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::Organization::OrHash
877
+ ).void
878
+ end
879
+ attr_writer :organization
880
+
881
+ sig { returns(String) }
882
+ attr_accessor :title
883
+
884
+ sig { returns(T.nilable(String)) }
885
+ attr_reader :description
886
+
887
+ sig { params(description: String).void }
888
+ attr_writer :description
889
+
890
+ sig do
891
+ returns(
892
+ T.nilable(
893
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::EndDate
894
+ )
895
+ )
896
+ end
897
+ attr_reader :end_date
898
+
899
+ sig do
900
+ params(
901
+ end_date:
902
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::EndDate::OrHash
903
+ ).void
904
+ end
905
+ attr_writer :end_date
906
+
907
+ sig { returns(T.nilable(T::Boolean)) }
908
+ attr_reader :is_current
909
+
910
+ sig { params(is_current: T::Boolean).void }
911
+ attr_writer :is_current
912
+
913
+ sig { returns(T.nilable(String)) }
914
+ attr_reader :location
915
+
916
+ sig { params(location: String).void }
917
+ attr_writer :location
918
+
919
+ sig do
920
+ returns(
921
+ T.nilable(
922
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::StartDate
923
+ )
924
+ )
925
+ end
926
+ attr_reader :start_date
927
+
928
+ sig do
929
+ params(
930
+ start_date:
931
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::StartDate::OrHash
932
+ ).void
933
+ end
934
+ attr_writer :start_date
935
+
936
+ sig do
937
+ params(
938
+ organization:
939
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::Organization::OrHash,
940
+ title: String,
941
+ description: String,
942
+ end_date:
943
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::EndDate::OrHash,
944
+ is_current: T::Boolean,
945
+ location: String,
946
+ start_date:
947
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::StartDate::OrHash
948
+ ).returns(T.attached_class)
949
+ end
950
+ def self.new(
951
+ organization:,
952
+ title:,
953
+ description: nil,
954
+ end_date: nil,
955
+ is_current: nil,
956
+ location: nil,
957
+ start_date: nil
958
+ )
959
+ end
960
+
961
+ sig do
962
+ override.returns(
963
+ {
964
+ organization:
965
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::Organization,
966
+ title: String,
967
+ description: String,
968
+ end_date:
969
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::EndDate,
970
+ is_current: T::Boolean,
971
+ location: String,
972
+ start_date:
973
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::StartDate
974
+ }
975
+ )
976
+ end
977
+ def to_hash
978
+ end
979
+
980
+ class Organization < ContextDev::Internal::Type::BaseModel
981
+ OrHash =
982
+ T.type_alias do
983
+ T.any(
984
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::Organization,
985
+ ContextDev::Internal::AnyHash
986
+ )
987
+ end
988
+
989
+ sig { returns(String) }
990
+ attr_accessor :name
991
+
992
+ sig { returns(T.nilable(String)) }
993
+ attr_reader :domain
994
+
995
+ sig { params(domain: String).void }
996
+ attr_writer :domain
997
+
998
+ sig do
999
+ params(name: String, domain: String).returns(T.attached_class)
1000
+ end
1001
+ def self.new(name:, domain: nil)
1002
+ end
1003
+
1004
+ sig { override.returns({ name: String, domain: String }) }
1005
+ def to_hash
1006
+ end
1007
+ end
1008
+
1009
+ class EndDate < ContextDev::Internal::Type::BaseModel
1010
+ OrHash =
1011
+ T.type_alias do
1012
+ T.any(
1013
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::EndDate,
1014
+ ContextDev::Internal::AnyHash
1015
+ )
1016
+ end
1017
+
1018
+ sig { returns(Integer) }
1019
+ attr_accessor :year
1020
+
1021
+ sig { returns(T.nilable(Integer)) }
1022
+ attr_reader :day
1023
+
1024
+ sig { params(day: Integer).void }
1025
+ attr_writer :day
1026
+
1027
+ sig { returns(T.nilable(Integer)) }
1028
+ attr_reader :month
1029
+
1030
+ sig { params(month: Integer).void }
1031
+ attr_writer :month
1032
+
1033
+ sig do
1034
+ params(year: Integer, day: Integer, month: Integer).returns(
1035
+ T.attached_class
1036
+ )
1037
+ end
1038
+ def self.new(year:, day: nil, month: nil)
1039
+ end
1040
+
1041
+ sig do
1042
+ override.returns(
1043
+ { year: Integer, day: Integer, month: Integer }
1044
+ )
1045
+ end
1046
+ def to_hash
1047
+ end
1048
+ end
1049
+
1050
+ class StartDate < ContextDev::Internal::Type::BaseModel
1051
+ OrHash =
1052
+ T.type_alias do
1053
+ T.any(
1054
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::StartDate,
1055
+ ContextDev::Internal::AnyHash
1056
+ )
1057
+ end
1058
+
1059
+ sig { returns(Integer) }
1060
+ attr_accessor :year
1061
+
1062
+ sig { returns(T.nilable(Integer)) }
1063
+ attr_reader :day
1064
+
1065
+ sig { params(day: Integer).void }
1066
+ attr_writer :day
1067
+
1068
+ sig { returns(T.nilable(Integer)) }
1069
+ attr_reader :month
1070
+
1071
+ sig { params(month: Integer).void }
1072
+ attr_writer :month
1073
+
1074
+ sig do
1075
+ params(year: Integer, day: Integer, month: Integer).returns(
1076
+ T.attached_class
1077
+ )
1078
+ end
1079
+ def self.new(year:, day: nil, month: nil)
1080
+ end
1081
+
1082
+ sig do
1083
+ override.returns(
1084
+ { year: Integer, day: Integer, month: Integer }
1085
+ )
1086
+ end
1087
+ def to_hash
1088
+ end
1089
+ end
1090
+ end
1091
+
1092
+ class Location < ContextDev::Internal::Type::BaseModel
1093
+ OrHash =
1094
+ T.type_alias do
1095
+ T.any(
1096
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location,
1097
+ ContextDev::Internal::AnyHash
1098
+ )
1099
+ end
1100
+
1101
+ sig { returns(T.nilable(String)) }
1102
+ attr_reader :city
1103
+
1104
+ sig { params(city: String).void }
1105
+ attr_writer :city
1106
+
1107
+ sig { returns(T.nilable(String)) }
1108
+ attr_reader :country
1109
+
1110
+ sig { params(country: String).void }
1111
+ attr_writer :country
1112
+
1113
+ sig { returns(T.nilable(String)) }
1114
+ attr_reader :country_code
1115
+
1116
+ sig { params(country_code: String).void }
1117
+ attr_writer :country_code
1118
+
1119
+ sig { returns(T.nilable(String)) }
1120
+ attr_reader :display_
1121
+
1122
+ sig { params(display_: String).void }
1123
+ attr_writer :display_
1124
+
1125
+ sig { returns(T.nilable(String)) }
1126
+ attr_reader :region
1127
+
1128
+ sig { params(region: String).void }
1129
+ attr_writer :region
1130
+
1131
+ sig do
1132
+ params(
1133
+ city: String,
1134
+ country: String,
1135
+ country_code: String,
1136
+ display_: String,
1137
+ region: String
1138
+ ).returns(T.attached_class)
1139
+ end
1140
+ def self.new(
1141
+ city: nil,
1142
+ country: nil,
1143
+ country_code: nil,
1144
+ display_: nil,
1145
+ region: nil
1146
+ )
1147
+ end
1148
+
1149
+ sig do
1150
+ override.returns(
1151
+ {
1152
+ city: String,
1153
+ country: String,
1154
+ country_code: String,
1155
+ display_: String,
1156
+ region: String
1157
+ }
1158
+ )
1159
+ end
1160
+ def to_hash
1161
+ end
1162
+ end
1163
+
1164
+ class Name < ContextDev::Internal::Type::BaseModel
1165
+ OrHash =
1166
+ T.type_alias do
1167
+ T.any(
1168
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Name,
1169
+ ContextDev::Internal::AnyHash
1170
+ )
1171
+ end
1172
+
1173
+ sig { returns(T.nilable(String)) }
1174
+ attr_reader :first
1175
+
1176
+ sig { params(first: String).void }
1177
+ attr_writer :first
1178
+
1179
+ sig { returns(T.nilable(String)) }
1180
+ attr_reader :full
1181
+
1182
+ sig { params(full: String).void }
1183
+ attr_writer :full
1184
+
1185
+ sig { returns(T.nilable(String)) }
1186
+ attr_reader :last
1187
+
1188
+ sig { params(last: String).void }
1189
+ attr_writer :last
1190
+
1191
+ sig do
1192
+ params(first: String, full: String, last: String).returns(
1193
+ T.attached_class
1194
+ )
1195
+ end
1196
+ def self.new(first: nil, full: nil, last: nil)
1197
+ end
1198
+
1199
+ sig do
1200
+ override.returns({ first: String, full: String, last: String })
1201
+ end
1202
+ def to_hash
1203
+ end
1204
+ end
1205
+ end
1206
+ end
1207
+
1208
+ class NotFound < ContextDev::Internal::Type::BaseModel
1209
+ OrHash =
1210
+ T.type_alias do
1211
+ T.any(
1212
+ ContextDev::Models::PersonEnrichResponse::Match::NotFound,
1213
+ ContextDev::Internal::AnyHash
1214
+ )
1215
+ end
1216
+
1217
+ sig { returns(NilClass) }
1218
+ attr_accessor :person
1219
+
1220
+ sig { returns(NilClass) }
1221
+ attr_accessor :score
1222
+
1223
+ sig { returns(Symbol) }
1224
+ attr_accessor :status
1225
+
1226
+ # No usable person candidate was found.
1227
+ sig do
1228
+ params(person: NilClass, score: NilClass, status: Symbol).returns(
1229
+ T.attached_class
1230
+ )
1231
+ end
1232
+ def self.new(person:, score:, status: :not_found)
1233
+ end
1234
+
1235
+ sig do
1236
+ override.returns(
1237
+ { person: NilClass, score: NilClass, status: Symbol }
1238
+ )
1239
+ end
1240
+ def to_hash
1241
+ end
1242
+ end
1243
+
1244
+ sig do
1245
+ override.returns(
1246
+ T::Array[ContextDev::Models::PersonEnrichResponse::Match::Variants]
1247
+ )
1248
+ end
1249
+ def self.variants
1250
+ end
1251
+ end
1252
+
1253
+ class KeyMetadata < ContextDev::Internal::Type::BaseModel
1254
+ OrHash =
1255
+ T.type_alias do
1256
+ T.any(
1257
+ ContextDev::Models::PersonEnrichResponse::KeyMetadata,
1258
+ ContextDev::Internal::AnyHash
1259
+ )
1260
+ end
1261
+
1262
+ # The number of credits consumed by this request.
1263
+ sig { returns(Integer) }
1264
+ attr_accessor :credits_consumed
1265
+
1266
+ # The number of credits remaining for your organization after this request.
1267
+ sig { returns(Integer) }
1268
+ attr_accessor :credits_remaining
1269
+
1270
+ # Metadata about the API key used for the request. Included in every response
1271
+ # whenever a valid API key is provided, even when the response status is not 200.
1272
+ sig do
1273
+ params(credits_consumed: Integer, credits_remaining: Integer).returns(
1274
+ T.attached_class
1275
+ )
1276
+ end
1277
+ def self.new(
1278
+ # The number of credits consumed by this request.
1279
+ credits_consumed:,
1280
+ # The number of credits remaining for your organization after this request.
1281
+ credits_remaining:
1282
+ )
1283
+ end
1284
+
1285
+ sig do
1286
+ override.returns(
1287
+ { credits_consumed: Integer, credits_remaining: Integer }
1288
+ )
1289
+ end
1290
+ def to_hash
1291
+ end
1292
+ end
1293
+ end
1294
+ end
1295
+ end