context.dev 2.11.0 → 2.13.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 (70) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +4 -4
  4. data/lib/context_dev/models/ai_extract_product_response.rb +102 -2
  5. data/lib/context_dev/models/ai_extract_products_response.rb +102 -2
  6. data/lib/context_dev/models/batch_get_results_response.rb +56 -1
  7. data/lib/context_dev/models/batch_submit_response.rb +54 -1
  8. data/lib/context_dev/models/brand_retrieve_response.rb +58 -3
  9. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +55 -1
  10. data/lib/context_dev/models/news_search_params.rb +1 -0
  11. data/lib/context_dev/models/web_extract_fonts_response.rb +54 -1
  12. data/lib/context_dev/models/web_extract_params.rb +169 -6
  13. data/lib/context_dev/models/web_extract_response.rb +139 -2
  14. data/lib/context_dev/models/web_extract_styleguide_response.rb +55 -1
  15. data/lib/context_dev/models/web_screenshot_response.rb +54 -1
  16. data/lib/context_dev/models/web_search_response.rb +54 -1
  17. data/lib/context_dev/models/web_web_crawl_md_params.rb +7 -5
  18. data/lib/context_dev/models/web_web_crawl_md_response.rb +54 -1
  19. data/lib/context_dev/models/web_web_scrape_html_params.rb +99 -3
  20. data/lib/context_dev/models/web_web_scrape_html_response.rb +54 -1
  21. data/lib/context_dev/models/web_web_scrape_images_params.rb +99 -3
  22. data/lib/context_dev/models/web_web_scrape_images_response.rb +139 -1
  23. data/lib/context_dev/models/web_web_scrape_md_params.rb +99 -3
  24. data/lib/context_dev/models/web_web_scrape_md_response.rb +54 -1
  25. data/lib/context_dev/resources/web.rb +9 -7
  26. data/lib/context_dev/version.rb +1 -1
  27. data/rbi/context_dev/models/ai_extract_product_response.rbi +218 -0
  28. data/rbi/context_dev/models/ai_extract_products_response.rbi +218 -0
  29. data/rbi/context_dev/models/batch_get_results_response.rbi +121 -0
  30. data/rbi/context_dev/models/batch_submit_response.rbi +117 -0
  31. data/rbi/context_dev/models/brand_retrieve_response.rbi +123 -2
  32. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +121 -0
  33. data/rbi/context_dev/models/news_search_params.rbi +5 -0
  34. data/rbi/context_dev/models/web_extract_fonts_response.rbi +119 -0
  35. data/rbi/context_dev/models/web_extract_params.rbi +353 -8
  36. data/rbi/context_dev/models/web_extract_response.rbi +289 -3
  37. data/rbi/context_dev/models/web_extract_styleguide_response.rbi +119 -0
  38. data/rbi/context_dev/models/web_screenshot_response.rbi +117 -0
  39. data/rbi/context_dev/models/web_search_response.rbi +117 -0
  40. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +10 -6
  41. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +117 -0
  42. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +218 -4
  43. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +119 -0
  44. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +218 -4
  45. data/rbi/context_dev/models/web_web_scrape_images_response.rbi +288 -0
  46. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +218 -4
  47. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +117 -0
  48. data/rbi/context_dev/resources/web.rbi +31 -10
  49. data/sig/context_dev/models/ai_extract_product_response.rbs +79 -0
  50. data/sig/context_dev/models/ai_extract_products_response.rbs +79 -0
  51. data/sig/context_dev/models/batch_get_results_response.rbs +39 -0
  52. data/sig/context_dev/models/batch_submit_response.rbs +39 -0
  53. data/sig/context_dev/models/brand_retrieve_response.rbs +39 -0
  54. data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +39 -0
  55. data/sig/context_dev/models/news_search_params.rbs +2 -0
  56. data/sig/context_dev/models/web_extract_fonts_response.rbs +39 -0
  57. data/sig/context_dev/models/web_extract_params.rbs +117 -0
  58. data/sig/context_dev/models/web_extract_response.rbs +120 -3
  59. data/sig/context_dev/models/web_extract_styleguide_response.rbs +39 -0
  60. data/sig/context_dev/models/web_screenshot_response.rbs +39 -0
  61. data/sig/context_dev/models/web_search_response.rbs +39 -0
  62. data/sig/context_dev/models/web_web_crawl_md_response.rbs +39 -0
  63. data/sig/context_dev/models/web_web_scrape_html_params.rbs +74 -0
  64. data/sig/context_dev/models/web_web_scrape_html_response.rbs +39 -0
  65. data/sig/context_dev/models/web_web_scrape_images_params.rbs +74 -0
  66. data/sig/context_dev/models/web_web_scrape_images_response.rbs +117 -0
  67. data/sig/context_dev/models/web_web_scrape_md_params.rbs +74 -0
  68. data/sig/context_dev/models/web_web_scrape_md_response.rbs +39 -0
  69. data/sig/context_dev/resources/web.rbs +1 -0
  70. metadata +2 -2
@@ -11,6 +11,20 @@ module ContextDev
11
11
  )
12
12
  end
13
13
 
14
+ # Cache outcome for this response. Composite responses are hits only when every
15
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
16
+ # oldest contributing hit.
17
+ sig { returns(ContextDev::Models::WebSearchResponse::CacheMetadata) }
18
+ attr_reader :cache_metadata
19
+
20
+ sig do
21
+ params(
22
+ cache_metadata:
23
+ ContextDev::Models::WebSearchResponse::CacheMetadata::OrHash
24
+ ).void
25
+ end
26
+ attr_writer :cache_metadata
27
+
14
28
  # Echo of the original query (useful when fanout was enabled).
15
29
  sig { returns(String) }
16
30
  attr_accessor :query
@@ -35,6 +49,8 @@ module ContextDev
35
49
 
36
50
  sig do
37
51
  params(
52
+ cache_metadata:
53
+ ContextDev::Models::WebSearchResponse::CacheMetadata::OrHash,
38
54
  query: String,
39
55
  results:
40
56
  T::Array[ContextDev::Models::WebSearchResponse::Result::OrHash],
@@ -43,6 +59,10 @@ module ContextDev
43
59
  ).returns(T.attached_class)
44
60
  end
45
61
  def self.new(
62
+ # Cache outcome for this response. Composite responses are hits only when every
63
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
64
+ # oldest contributing hit.
65
+ cache_metadata:,
46
66
  # Echo of the original query (useful when fanout was enabled).
47
67
  query:,
48
68
  results:,
@@ -55,6 +75,8 @@ module ContextDev
55
75
  sig do
56
76
  override.returns(
57
77
  {
78
+ cache_metadata:
79
+ ContextDev::Models::WebSearchResponse::CacheMetadata,
58
80
  query: String,
59
81
  results: T::Array[ContextDev::Models::WebSearchResponse::Result],
60
82
  key_metadata: ContextDev::Models::WebSearchResponse::KeyMetadata
@@ -64,6 +86,101 @@ module ContextDev
64
86
  def to_hash
65
87
  end
66
88
 
89
+ class CacheMetadata < ContextDev::Internal::Type::BaseModel
90
+ OrHash =
91
+ T.type_alias do
92
+ T.any(
93
+ ContextDev::Models::WebSearchResponse::CacheMetadata,
94
+ ContextDev::Internal::AnyHash
95
+ )
96
+ end
97
+
98
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
99
+ sig { returns(Integer) }
100
+ attr_accessor :age_ms
101
+
102
+ # Whether the response was served from cache, required fresh work, or honored
103
+ # zero-data-retention cache bypass.
104
+ sig do
105
+ returns(
106
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::TaggedSymbol
107
+ )
108
+ end
109
+ attr_accessor :status
110
+
111
+ # Cache outcome for this response. Composite responses are hits only when every
112
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
113
+ # oldest contributing hit.
114
+ sig do
115
+ params(
116
+ age_ms: Integer,
117
+ status:
118
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::OrSymbol
119
+ ).returns(T.attached_class)
120
+ end
121
+ def self.new(
122
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
123
+ age_ms:,
124
+ # Whether the response was served from cache, required fresh work, or honored
125
+ # zero-data-retention cache bypass.
126
+ status:
127
+ )
128
+ end
129
+
130
+ sig do
131
+ override.returns(
132
+ {
133
+ age_ms: Integer,
134
+ status:
135
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::TaggedSymbol
136
+ }
137
+ )
138
+ end
139
+ def to_hash
140
+ end
141
+
142
+ # Whether the response was served from cache, required fresh work, or honored
143
+ # zero-data-retention cache bypass.
144
+ module Status
145
+ extend ContextDev::Internal::Type::Enum
146
+
147
+ TaggedSymbol =
148
+ T.type_alias do
149
+ T.all(
150
+ Symbol,
151
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status
152
+ )
153
+ end
154
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
155
+
156
+ HIT =
157
+ T.let(
158
+ :hit,
159
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::TaggedSymbol
160
+ )
161
+ MISS =
162
+ T.let(
163
+ :miss,
164
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::TaggedSymbol
165
+ )
166
+ ZDR =
167
+ T.let(
168
+ :zdr,
169
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::TaggedSymbol
170
+ )
171
+
172
+ sig do
173
+ override.returns(
174
+ T::Array[
175
+ ContextDev::Models::WebSearchResponse::CacheMetadata::Status::TaggedSymbol
176
+ ]
177
+ )
178
+ end
179
+ def self.values
180
+ end
181
+ end
182
+ end
183
+
67
184
  class Result < ContextDev::Internal::Type::BaseModel
68
185
  OrHash =
69
186
  T.type_alias do
@@ -150,7 +150,9 @@ module ContextDev
150
150
  sig { params(timeout_ms: Integer).void }
151
151
  attr_writer :timeout_ms
152
152
 
153
- # Regex pattern. Only URLs matching this pattern will be followed and scraped.
153
+ # Regex pattern. Only URLs matching this pattern will be followed and scraped. An
154
+ # automatic prefix scope in the form ^<starting URL> follows a redirect of the
155
+ # starting page.
154
156
  sig { returns(T.nilable(String)) }
155
157
  attr_reader :url_regex
156
158
 
@@ -165,8 +167,8 @@ module ContextDev
165
167
  sig { params(use_main_content_only: T::Boolean).void }
166
168
  attr_writer :use_main_content_only
167
169
 
168
- # Optional browser wait time in milliseconds after initial page load for each
169
- # crawled page. Min: 0. Max: 30000 (30 seconds).
170
+ # Browser wait time in milliseconds after initial page load for each crawled page.
171
+ # Defaults to 3500 (3.5 seconds). Min: 0. Max: 30000 (30 seconds).
170
172
  sig { returns(T.nilable(Integer)) }
171
173
  attr_reader :wait_for_ms
172
174
 
@@ -263,13 +265,15 @@ module ContextDev
263
265
  # than this value, it will be aborted with a 408 status code. Maximum allowed
264
266
  # value is 300000ms (5 minutes).
265
267
  timeout_ms: nil,
266
- # Regex pattern. Only URLs matching this pattern will be followed and scraped.
268
+ # Regex pattern. Only URLs matching this pattern will be followed and scraped. An
269
+ # automatic prefix scope in the form ^<starting URL> follows a redirect of the
270
+ # starting page.
267
271
  url_regex: nil,
268
272
  # Extract only the main content, stripping headers, footers, sidebars, and
269
273
  # navigation
270
274
  use_main_content_only: nil,
271
- # Optional browser wait time in milliseconds after initial page load for each
272
- # crawled page. Min: 0. Max: 30000 (30 seconds).
275
+ # Browser wait time in milliseconds after initial page load for each crawled page.
276
+ # Defaults to 3500 (3.5 seconds). Min: 0. Max: 30000 (30 seconds).
273
277
  wait_for_ms: nil,
274
278
  # Set to enabled to bypass shared caches and omit request and response content
275
279
  # from retained usage logs. Requires zero data retention to be enabled for your
@@ -11,6 +11,20 @@ module ContextDev
11
11
  )
12
12
  end
13
13
 
14
+ # Cache outcome for this response. Composite responses are hits only when every
15
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
16
+ # oldest contributing hit.
17
+ sig { returns(ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata) }
18
+ attr_reader :cache_metadata
19
+
20
+ sig do
21
+ params(
22
+ cache_metadata:
23
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::OrHash
24
+ ).void
25
+ end
26
+ attr_writer :cache_metadata
27
+
14
28
  sig { returns(ContextDev::Models::WebWebCrawlMdResponse::Metadata) }
15
29
  attr_reader :metadata
16
30
 
@@ -45,6 +59,8 @@ module ContextDev
45
59
 
46
60
  sig do
47
61
  params(
62
+ cache_metadata:
63
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::OrHash,
48
64
  metadata: ContextDev::Models::WebWebCrawlMdResponse::Metadata::OrHash,
49
65
  results:
50
66
  T::Array[ContextDev::Models::WebWebCrawlMdResponse::Result::OrHash],
@@ -53,6 +69,10 @@ module ContextDev
53
69
  ).returns(T.attached_class)
54
70
  end
55
71
  def self.new(
72
+ # Cache outcome for this response. Composite responses are hits only when every
73
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
74
+ # oldest contributing hit.
75
+ cache_metadata:,
56
76
  metadata:,
57
77
  results:,
58
78
  # Metadata about the API key used for the request. Included in every response
@@ -64,6 +84,8 @@ module ContextDev
64
84
  sig do
65
85
  override.returns(
66
86
  {
87
+ cache_metadata:
88
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata,
67
89
  metadata: ContextDev::Models::WebWebCrawlMdResponse::Metadata,
68
90
  results:
69
91
  T::Array[ContextDev::Models::WebWebCrawlMdResponse::Result],
@@ -74,6 +96,101 @@ module ContextDev
74
96
  def to_hash
75
97
  end
76
98
 
99
+ class CacheMetadata < ContextDev::Internal::Type::BaseModel
100
+ OrHash =
101
+ T.type_alias do
102
+ T.any(
103
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata,
104
+ ContextDev::Internal::AnyHash
105
+ )
106
+ end
107
+
108
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
109
+ sig { returns(Integer) }
110
+ attr_accessor :age_ms
111
+
112
+ # Whether the response was served from cache, required fresh work, or honored
113
+ # zero-data-retention cache bypass.
114
+ sig do
115
+ returns(
116
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::TaggedSymbol
117
+ )
118
+ end
119
+ attr_accessor :status
120
+
121
+ # Cache outcome for this response. Composite responses are hits only when every
122
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
123
+ # oldest contributing hit.
124
+ sig do
125
+ params(
126
+ age_ms: Integer,
127
+ status:
128
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::OrSymbol
129
+ ).returns(T.attached_class)
130
+ end
131
+ def self.new(
132
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
133
+ age_ms:,
134
+ # Whether the response was served from cache, required fresh work, or honored
135
+ # zero-data-retention cache bypass.
136
+ status:
137
+ )
138
+ end
139
+
140
+ sig do
141
+ override.returns(
142
+ {
143
+ age_ms: Integer,
144
+ status:
145
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::TaggedSymbol
146
+ }
147
+ )
148
+ end
149
+ def to_hash
150
+ end
151
+
152
+ # Whether the response was served from cache, required fresh work, or honored
153
+ # zero-data-retention cache bypass.
154
+ module Status
155
+ extend ContextDev::Internal::Type::Enum
156
+
157
+ TaggedSymbol =
158
+ T.type_alias do
159
+ T.all(
160
+ Symbol,
161
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status
162
+ )
163
+ end
164
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
165
+
166
+ HIT =
167
+ T.let(
168
+ :hit,
169
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::TaggedSymbol
170
+ )
171
+ MISS =
172
+ T.let(
173
+ :miss,
174
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::TaggedSymbol
175
+ )
176
+ ZDR =
177
+ T.let(
178
+ :zdr,
179
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::TaggedSymbol
180
+ )
181
+
182
+ sig do
183
+ override.returns(
184
+ T::Array[
185
+ ContextDev::Models::WebWebCrawlMdResponse::CacheMetadata::Status::TaggedSymbol
186
+ ]
187
+ )
188
+ end
189
+ def self.values
190
+ end
191
+ end
192
+ end
193
+
77
194
  class Metadata < ContextDev::Internal::Type::BaseModel
78
195
  OrHash =
79
196
  T.type_alias do
@@ -27,7 +27,8 @@ module ContextDev
27
27
  T::Array[
28
28
  T.any(
29
29
  ContextDev::WebWebScrapeHTMLParams::Action::Wait,
30
- ContextDev::WebWebScrapeHTMLParams::Action::Perform
30
+ ContextDev::WebWebScrapeHTMLParams::Action::Perform,
31
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll
31
32
  )
32
33
  ]
33
34
  )
@@ -155,7 +156,8 @@ module ContextDev
155
156
  T::Array[
156
157
  T.any(
157
158
  ContextDev::WebWebScrapeHTMLParams::Action::Wait::OrHash,
158
- ContextDev::WebWebScrapeHTMLParams::Action::Perform::OrHash
159
+ ContextDev::WebWebScrapeHTMLParams::Action::Perform::OrHash,
160
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::OrHash
159
161
  )
160
162
  ]
161
163
  ),
@@ -242,7 +244,8 @@ module ContextDev
242
244
  T::Array[
243
245
  T.any(
244
246
  ContextDev::WebWebScrapeHTMLParams::Action::Wait,
245
- ContextDev::WebWebScrapeHTMLParams::Action::Perform
247
+ ContextDev::WebWebScrapeHTMLParams::Action::Perform,
248
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll
246
249
  )
247
250
  ]
248
251
  ),
@@ -275,7 +278,8 @@ module ContextDev
275
278
  T.type_alias do
276
279
  T.any(
277
280
  ContextDev::WebWebScrapeHTMLParams::Action::Wait,
278
- ContextDev::WebWebScrapeHTMLParams::Action::Perform
281
+ ContextDev::WebWebScrapeHTMLParams::Action::Perform,
282
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll
279
283
  )
280
284
  end
281
285
 
@@ -331,6 +335,216 @@ module ContextDev
331
335
  end
332
336
  end
333
337
 
338
+ class Scroll < ContextDev::Internal::Type::BaseModel
339
+ OrHash =
340
+ T.type_alias do
341
+ T.any(
342
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll,
343
+ ContextDev::Internal::AnyHash
344
+ )
345
+ end
346
+
347
+ sig { returns(Symbol) }
348
+ attr_accessor :do_
349
+
350
+ # Pixels per scroll, one visible viewport, or the current scroll boundary.
351
+ # Defaults to viewport.
352
+ sig do
353
+ returns(
354
+ T.nilable(
355
+ T.any(
356
+ Integer,
357
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::OrSymbol
358
+ )
359
+ )
360
+ )
361
+ end
362
+ attr_reader :amount
363
+
364
+ sig do
365
+ params(
366
+ amount:
367
+ T.any(
368
+ Integer,
369
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::OrSymbol
370
+ )
371
+ ).void
372
+ end
373
+ attr_writer :amount
374
+
375
+ # CSS selector for the first matching scroll container. Defaults to the page.
376
+ sig { returns(T.nilable(String)) }
377
+ attr_reader :container
378
+
379
+ sig { params(container: String).void }
380
+ attr_writer :container
381
+
382
+ # Direction to scroll. Defaults to down.
383
+ sig do
384
+ returns(
385
+ T.nilable(
386
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::OrSymbol
387
+ )
388
+ )
389
+ end
390
+ attr_reader :direction
391
+
392
+ sig do
393
+ params(
394
+ direction:
395
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::OrSymbol
396
+ ).void
397
+ end
398
+ attr_writer :direction
399
+
400
+ # Maximum scroll iterations. Stops early when scrolling and scrollable extent stop
401
+ # changing. Defaults to 1.
402
+ sig { returns(T.nilable(Integer)) }
403
+ attr_reader :max_scrolls
404
+
405
+ sig { params(max_scrolls: Integer).void }
406
+ attr_writer :max_scrolls
407
+
408
+ # Scroll the page or a selected scrollable container, waiting adaptively for
409
+ # content and dimensions to settle after each iteration.
410
+ sig do
411
+ params(
412
+ amount:
413
+ T.any(
414
+ Integer,
415
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::OrSymbol
416
+ ),
417
+ container: String,
418
+ direction:
419
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::OrSymbol,
420
+ max_scrolls: Integer,
421
+ do_: Symbol
422
+ ).returns(T.attached_class)
423
+ end
424
+ def self.new(
425
+ # Pixels per scroll, one visible viewport, or the current scroll boundary.
426
+ # Defaults to viewport.
427
+ amount: nil,
428
+ # CSS selector for the first matching scroll container. Defaults to the page.
429
+ container: nil,
430
+ # Direction to scroll. Defaults to down.
431
+ direction: nil,
432
+ # Maximum scroll iterations. Stops early when scrolling and scrollable extent stop
433
+ # changing. Defaults to 1.
434
+ max_scrolls: nil,
435
+ do_: :scroll
436
+ )
437
+ end
438
+
439
+ sig do
440
+ override.returns(
441
+ {
442
+ do_: Symbol,
443
+ amount:
444
+ T.any(
445
+ Integer,
446
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::OrSymbol
447
+ ),
448
+ container: String,
449
+ direction:
450
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::OrSymbol,
451
+ max_scrolls: Integer
452
+ }
453
+ )
454
+ end
455
+ def to_hash
456
+ end
457
+
458
+ # Pixels per scroll, one visible viewport, or the current scroll boundary.
459
+ # Defaults to viewport.
460
+ module Amount
461
+ extend ContextDev::Internal::Type::Union
462
+
463
+ Variants =
464
+ T.type_alias do
465
+ T.any(
466
+ Integer,
467
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::TaggedSymbol
468
+ )
469
+ end
470
+
471
+ sig do
472
+ override.returns(
473
+ T::Array[
474
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::Variants
475
+ ]
476
+ )
477
+ end
478
+ def self.variants
479
+ end
480
+
481
+ TaggedSymbol =
482
+ T.type_alias do
483
+ T.all(
484
+ Symbol,
485
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount
486
+ )
487
+ end
488
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
489
+
490
+ VIEWPORT =
491
+ T.let(
492
+ :viewport,
493
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::TaggedSymbol
494
+ )
495
+ MAX =
496
+ T.let(
497
+ :max,
498
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Amount::TaggedSymbol
499
+ )
500
+ end
501
+
502
+ # Direction to scroll. Defaults to down.
503
+ module Direction
504
+ extend ContextDev::Internal::Type::Enum
505
+
506
+ TaggedSymbol =
507
+ T.type_alias do
508
+ T.all(
509
+ Symbol,
510
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction
511
+ )
512
+ end
513
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
514
+
515
+ UP =
516
+ T.let(
517
+ :up,
518
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::TaggedSymbol
519
+ )
520
+ DOWN =
521
+ T.let(
522
+ :down,
523
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::TaggedSymbol
524
+ )
525
+ LEFT =
526
+ T.let(
527
+ :left,
528
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::TaggedSymbol
529
+ )
530
+ RIGHT =
531
+ T.let(
532
+ :right,
533
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::TaggedSymbol
534
+ )
535
+
536
+ sig do
537
+ override.returns(
538
+ T::Array[
539
+ ContextDev::WebWebScrapeHTMLParams::Action::Scroll::Direction::TaggedSymbol
540
+ ]
541
+ )
542
+ end
543
+ def self.values
544
+ end
545
+ end
546
+ end
547
+
334
548
  sig do
335
549
  override.returns(
336
550
  T::Array[ContextDev::WebWebScrapeHTMLParams::Action::Variants]