zelkova 0.1.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 (54) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.rubocop.yml +57 -0
  4. data/.travis.yml +6 -0
  5. data/CODE_OF_CONDUCT.md +74 -0
  6. data/Gemfile +19 -0
  7. data/Gemfile.lock +173 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +53 -0
  10. data/Rakefile +10 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +8 -0
  13. data/bin/tapioca +27 -0
  14. data/lib/zelkova/edge.rb +26 -0
  15. data/lib/zelkova/graph.rb +104 -0
  16. data/lib/zelkova/node.rb +32 -0
  17. data/lib/zelkova/version.rb +4 -0
  18. data/lib/zelkova.rb +10 -0
  19. data/sorbet/config +3 -0
  20. data/sorbet/rbi/gems/byebug.rbi +1041 -0
  21. data/sorbet/rbi/gems/climate_control.rbi +46 -0
  22. data/sorbet/rbi/gems/coderay.rbi +92 -0
  23. data/sorbet/rbi/gems/eikon.rbi +48 -0
  24. data/sorbet/rbi/gems/ffi.rbi +560 -0
  25. data/sorbet/rbi/gems/method_source.rbi +64 -0
  26. data/sorbet/rbi/gems/minitest.rbi +422 -0
  27. data/sorbet/rbi/gems/pry.rbi +1949 -0
  28. data/sorbet/rbi/gems/rake.rbi +645 -0
  29. data/sorbet/rbi/gems/ruby-vips.rbi +656 -0
  30. data/sorbet/rbi/gems/ruby_jard.rbi +681 -0
  31. data/sorbet/rbi/gems/terrapin.rbi +116 -0
  32. data/sorbet/rbi/gems/tty-screen.rbi +66 -0
  33. data/sorbet/rbi/gems/zelkova.rbi +15 -0
  34. data/sorbet/rbi/hidden-definitions/errors.txt +34600 -0
  35. data/sorbet/rbi/hidden-definitions/hidden.rbi +17564 -0
  36. data/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +1138 -0
  37. data/sorbet/rbi/sorbet-typed/lib/actionview/all/actionview.rbi +408 -0
  38. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6/activesupport.rbi +37 -0
  39. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1850 -0
  40. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +108 -0
  41. data/sorbet/rbi/sorbet-typed/lib/railties/>=6.1/railties.rbi +15 -0
  42. data/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +110 -0
  43. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +276 -0
  44. data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +645 -0
  45. data/sorbet/rbi/sorbet-typed/lib/rubocop/>=1.8/rubocop.rbi +12 -0
  46. data/sorbet/rbi/sorbet-typed/lib/rubocop-performance/~>1.6/rubocop-performance.rbi +149 -0
  47. data/sorbet/rbi/sorbet-typed/lib/rubocop-rails/~>2.5/rubocop-rails.rbi +328 -0
  48. data/sorbet/rbi/sorbet-typed/lib/thor/all/thor.rbi +905 -0
  49. data/sorbet/rbi/sorbet-typed/lib/yard/all/yard.rbi +32 -0
  50. data/sorbet/rbi/todo.rbi +15 -0
  51. data/sorbet/tapioca/config.yml +13 -0
  52. data/sorbet/tapioca/require.rb +4 -0
  53. data/zelkova.gemspec +31 -0
  54. metadata +110 -0
@@ -0,0 +1,1138 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi sorbet-typed
3
+ #
4
+ # If you would like to make changes to this file, great! Please upstream any changes you make here:
5
+ #
6
+ # https://github.com/sorbet/sorbet-typed/edit/master/lib/actionpack/all/actionpack.rbi
7
+ #
8
+ # typed: ignore
9
+
10
+ # https://github.com/rails/rails/blob/5-2-stable/actionpack/lib/action_controller.rb
11
+ module ActionController; end
12
+
13
+ # https://api.rubyonrails.org/classes/AbstractController/Callbacks/ClassMethods.html
14
+ module AbstractController::Callbacks::ClassMethods
15
+ sig do
16
+ params(
17
+ names: T.any(Symbol, Proc),
18
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
19
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
20
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
21
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
22
+ raise: T::Boolean,
23
+ block: T.nilable(T.proc.returns(T.untyped))
24
+ ).void
25
+ end
26
+ def after_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
27
+
28
+ # append_after_action is an alias of after_action
29
+ sig do
30
+ params(
31
+ names: T.any(Symbol, Proc),
32
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
33
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
34
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
35
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
36
+ raise: T::Boolean,
37
+ block: T.nilable(T.proc.returns(T.untyped))
38
+ ).void
39
+ end
40
+ def append_after_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
41
+
42
+ # append_around_action is an alias of around_action
43
+ sig do
44
+ params(
45
+ names: T.any(Symbol, Proc),
46
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
47
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
48
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
49
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
50
+ raise: T::Boolean,
51
+ block: T.nilable(T.proc.returns(T.untyped))
52
+ ).void
53
+ end
54
+ def append_around_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
55
+
56
+ # append_before_action is an alias of before_action
57
+ sig do
58
+ params(
59
+ names: T.any(Symbol, Proc),
60
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
61
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
62
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
63
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
64
+ raise: T::Boolean,
65
+ block: T.nilable(T.proc.returns(T.untyped))
66
+ ).void
67
+ end
68
+ def append_before_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
69
+
70
+ sig do
71
+ params(
72
+ names: T.any(Symbol, Proc),
73
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
74
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
75
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
76
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
77
+ raise: T::Boolean,
78
+ block: T.nilable(T.proc.returns(T.untyped))
79
+ ).void
80
+ end
81
+ def around_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
82
+
83
+ sig do
84
+ params(
85
+ names: T.any(Symbol, Proc),
86
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
87
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
88
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
89
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
90
+ raise: T::Boolean,
91
+ block: T.nilable(T.proc.returns(T.untyped))
92
+ ).void
93
+ end
94
+ def before_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
95
+
96
+ sig do
97
+ params(
98
+ names: T.any(Symbol, Proc),
99
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
100
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
101
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
102
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
103
+ raise: T::Boolean,
104
+ block: T.nilable(T.proc.returns(T.untyped))
105
+ ).void
106
+ end
107
+ def prepend_after_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
108
+
109
+ sig do
110
+ params(
111
+ names: T.any(Symbol, Proc),
112
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
113
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
114
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
115
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
116
+ raise: T::Boolean,
117
+ block: T.nilable(T.proc.returns(T.untyped))
118
+ ).void
119
+ end
120
+ def prepend_around_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
121
+
122
+ sig do
123
+ params(
124
+ names: T.any(Symbol, Proc),
125
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
126
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
127
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
128
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
129
+ raise: T::Boolean,
130
+ block: T.nilable(T.proc.returns(T.untyped))
131
+ ).void
132
+ end
133
+ def prepend_before_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true, &block); end
134
+
135
+ sig do
136
+ params(
137
+ names: T.any(Symbol, Proc),
138
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
139
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
140
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
141
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
142
+ raise: T::Boolean
143
+ ).void
144
+ end
145
+ def skip_after_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true); end
146
+
147
+ sig do
148
+ params(
149
+ names: T.any(Symbol, Proc),
150
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
151
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
152
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
153
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
154
+ raise: T::Boolean
155
+ ).void
156
+ end
157
+ def skip_around_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true); end
158
+
159
+ sig do
160
+ params(
161
+ names: T.any(Symbol, Proc),
162
+ except: T.nilable(T.any(Symbol, T::Array[Symbol])),
163
+ only: T.nilable(T.any(Symbol, T::Array[Symbol])),
164
+ if: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
165
+ unless: T.nilable(T.any(Symbol, T::Array[Symbol], Proc)),
166
+ raise: T::Boolean
167
+ ).void
168
+ end
169
+ def skip_before_action(*names, except: nil, only: nil, if: nil, unless: nil, raise: true); end
170
+ end
171
+
172
+ class AbstractController::Base
173
+ end
174
+
175
+ module AbstractController::Helpers
176
+ mixes_in_class_methods(::AbstractController::Helpers::ClassMethods)
177
+ end
178
+
179
+ module AbstractController::Helpers::ClassMethods; end
180
+
181
+ module AbstractController::UrlFor
182
+ mixes_in_class_methods(::AbstractController::UrlFor::ClassMethods)
183
+ end
184
+
185
+ module AbstractController::UrlFor::ClassMethods; end
186
+
187
+ class ActionController::Base < ::ActionController::Metal
188
+ include(::ActiveSupport::Rescuable)
189
+ end
190
+
191
+ class ActionController::API
192
+ MODULES = T.let(T.unsafe(nil), T::Array[T.untyped])
193
+ end
194
+
195
+ ActionController::Base::MODULES = T.let(T.unsafe(nil), T::Array[T.untyped])
196
+
197
+ ActionController::Base::PROTECTED_IVARS = T.let(T.unsafe(nil), T::Set[T.untyped])
198
+
199
+ module ActionController::Flash::ClassMethods
200
+ sig { params(types: Symbol).void }
201
+ def add_flash_types(*types); end
202
+ end
203
+
204
+ module ActionController::Helpers
205
+ mixes_in_class_methods(::ActionController::Helpers::ClassMethods)
206
+ end
207
+
208
+ module ActionController::Helpers::ClassMethods
209
+ sig { returns(ActionView::Base) }
210
+ def helpers; end
211
+ end
212
+
213
+ class ActionController::InvalidAuthenticityToken < ::ActionController::ActionControllerError
214
+ end
215
+
216
+ class ActionController::InvalidCrossOriginRequest < ::ActionController::ActionControllerError
217
+ end
218
+
219
+ class ActionController::Metal < AbstractController::Base
220
+ sig { returns(ActionController::Parameters) }
221
+ def params; end
222
+
223
+ def params=(val); end
224
+ def performed?; end
225
+
226
+ sig { returns(ActionDispatch::Request) }
227
+ def request; end
228
+
229
+ def request=(_); end
230
+ def reset_session; end
231
+
232
+ sig { returns(ActionDispatch::Response) }
233
+ def response; end
234
+ end
235
+
236
+ # https://api.rubyonrails.org/classes/ActionController/MimeResponds.html
237
+ module ActionController::MimeResponds
238
+ sig do
239
+ params(
240
+ mimes: T.nilable(Symbol),
241
+ block: T.nilable(T.proc.params(arg0: ActionController::MimeResponds::Collector).void)
242
+ ).void
243
+ end
244
+ def respond_to(*mimes, &block); end
245
+ end
246
+
247
+ ActionController::Renderer::DEFAULTS = T.let(T.unsafe(nil), T::Hash[T.untyped, T.untyped])
248
+
249
+ ActionController::Renderer::IDENTITY = T.let(T.unsafe(nil), Proc)
250
+
251
+ ActionController::Renderer::RACK_KEY_TRANSLATION = T.let(T.unsafe(nil), T::Hash[T.untyped, T.untyped])
252
+
253
+ ActionController::Renderer::RACK_VALUE_TRANSLATION = T.let(T.unsafe(nil), T::Hash[T.untyped, T.untyped])
254
+
255
+ module ActionController::Renderers
256
+ mixes_in_class_methods(::ActionController::Renderers::ClassMethods)
257
+ end
258
+
259
+ module ActionController::Renderers::ClassMethods; end
260
+
261
+ ActionController::Renderers::RENDERERS = T.let(T.unsafe(nil), T::Set[T.untyped])
262
+
263
+ module ActionController::Rendering
264
+ mixes_in_class_methods(::ActionController::Rendering::ClassMethods)
265
+ end
266
+
267
+ module ActionController::Rendering::ClassMethods; end
268
+
269
+ ActionController::Rendering::RENDER_FORMATS_IN_PRIORITY = T.let(T.unsafe(nil), T::Array[T.untyped])
270
+
271
+ module ActionController::RequestForgeryProtection
272
+ private
273
+
274
+ # https://github.com/rails/rails/blob/5-2-stable/actionpack/lib/action_controller/metal/request_forgery_protection.rb#L435
275
+ sig { returns(T::Boolean) }
276
+ def protect_against_forgery?; end
277
+
278
+ # https://github.com/rails/rails/blob/5-2-stable/actionpack/lib/action_controller/metal/request_forgery_protection.rb#L307
279
+ sig { params(form_options: T::Hash[T.untyped, T.untyped]).returns(String) }
280
+ def form_authenticity_token(form_options: {}); end
281
+ end
282
+
283
+ module ActionController::RequestForgeryProtection::ClassMethods
284
+ sig do
285
+ params(
286
+ only: T.any(T::Array[Symbol], Symbol),
287
+ except: T.nilable(T.any(T::Array[Symbol], Symbol)),
288
+ if: T.untyped,
289
+ unless: T.untyped,
290
+ prepend: T.untyped,
291
+ with: T.nilable(Symbol),
292
+ exception: T.untyped,
293
+ reset_session: T.untyped,
294
+ null_session: T.untyped
295
+ ).void
296
+ end
297
+ def protect_from_forgery(only: nil, except: nil, if: nil, unless: nil, prepend: false, with: nil, exception: nil, reset_session: nil, null_session: nil); end
298
+
299
+ sig { params(options: T::Hash[T.untyped, T.untyped]).void }
300
+ def skip_forgery_protection(options = T.unsafe(nil)); end
301
+ end
302
+
303
+ ActionController::RespondToMismatchError::DEFAULT_MESSAGE = T.let(T.unsafe(nil), String)
304
+
305
+ ActionController::SessionOverflowError::DEFAULT_MESSAGE = T.let(T.unsafe(nil), String)
306
+
307
+ module ActionController::StrongParameters
308
+ sig { returns(ActionController::Parameters) }
309
+ def params; end
310
+ end
311
+
312
+ class ActionController::UnknownFormat < ::ActionController::ActionControllerError
313
+ end
314
+
315
+ class ActionController::UnknownHttpMethod < ::ActionController::ActionControllerError
316
+ end
317
+
318
+ class ActionController::UrlGenerationError < ::ActionController::ActionControllerError
319
+ end
320
+
321
+ module ActionDispatch::Http::Parameters
322
+ sig { returns(ActionController::Parameters) }
323
+ def parameters(); end
324
+
325
+ # params is an alias of parameters
326
+ sig { returns(ActionController::Parameters) }
327
+ def params(); end
328
+ end
329
+
330
+ # these methods are delegated out, sorbet gets confused with them
331
+ class ActionDispatch::IntegrationTest
332
+ sig { returns(ActionDispatch::Flash::FlashHash) }
333
+ def flash; end
334
+
335
+ sig { returns(ActionDispatch::Request::Session) }
336
+ def session; end
337
+ end
338
+
339
+ class ActionDispatch::RemoteIp::IpSpoofAttackError < ::StandardError
340
+ end
341
+
342
+ ActionDispatch::RemoteIp::TRUSTED_PROXIES = T.let(T.unsafe(nil), T::Array[T.untyped])
343
+
344
+ class ActionDispatch::Request
345
+ # Provides access to the request's HTTP headers, for example:
346
+ #
347
+ # ```ruby
348
+ # request.headers["Content-Type"] # => "text/plain"
349
+ # ```
350
+ sig { returns(ActionDispatch::Http::Headers) }
351
+ def headers; end
352
+
353
+ # Returns a `String` with the last requested path including their params.
354
+ #
355
+ # ```ruby
356
+ # # get '/foo'
357
+ # request.original_fullpath # => '/foo'
358
+ #
359
+ # # get '/foo?bar'
360
+ # request.original_fullpath # => '/foo?bar'
361
+ # ```
362
+ sig { returns(String) }
363
+ def original_fullpath; end
364
+
365
+ # Returns the `String` full path including params of the last URL requested.
366
+ #
367
+ # ```ruby
368
+ # # get "/articles"
369
+ # request.fullpath # => "/articles"
370
+ #
371
+ # # get "/articles?page=2"
372
+ # request.fullpath # => "/articles?page=2"
373
+ # ```
374
+ sig { returns(String) }
375
+ def fullpath; end
376
+
377
+ # Returns the original request URL as a `String`.
378
+ #
379
+ # ```ruby
380
+ # # get "/articles?page=2"
381
+ # request.original_url # => "http://www.example.com/articles?page=2"
382
+ # ```
383
+ sig { returns(String) }
384
+ def original_url; end
385
+
386
+ # The `String` MIME type of the request.
387
+ #
388
+ # ```
389
+ # # get "/articles"
390
+ # request.media_type # => "application/x-www-form-urlencoded"
391
+ # ```
392
+ sig { returns(String) }
393
+ def media_type; end
394
+
395
+ # Returns the content length of the request as an integer.
396
+ sig { returns(Integer) }
397
+ def content_length; end
398
+
399
+ # Returns the IP address of client as a `String`.
400
+ sig { returns(String) }
401
+ def ip; end
402
+
403
+ # Returns the IP address of client as a `String`,
404
+ # usually set by the RemoteIp middleware.
405
+ sig { returns(String) }
406
+ def remote_ip; end
407
+
408
+ # Returns the unique request id, which is based on either the X-Request-Id header that can
409
+ # be generated by a firewall, load balancer, or web server or by the RequestId middleware
410
+ # (which sets the action_dispatch.request_id environment variable).
411
+ #
412
+ # This unique ID is useful for tracing a request from end-to-end as part of logging or debugging.
413
+ # This relies on the Rack variable set by the ActionDispatch::RequestId middleware.
414
+ sig { returns(String) }
415
+ def request_id; end
416
+
417
+ # Returns true if the request has a header matching the given key parameter.
418
+ #
419
+ # ```ruby
420
+ # request.key? :ip_spoofing_check # => true
421
+ # ```
422
+ sig { params(key: Symbol).returns(T::Boolean) }
423
+ def key?(key); end
424
+
425
+ # True if the request came from localhost, 127.0.0.1, or ::1.
426
+ sig { returns(T::Boolean) }
427
+ def local?; end
428
+ end
429
+
430
+ ActionDispatch::Response::CONTENT_TYPE = T.let(T.unsafe(nil), String)
431
+
432
+ ActionDispatch::Response::CONTENT_TYPE_PARSER = T.let(T.unsafe(nil), Regexp)
433
+
434
+ ActionDispatch::Response::LOCATION = T.let(T.unsafe(nil), String)
435
+
436
+ ActionDispatch::Response::NO_CONTENT_CODES = T.let(T.unsafe(nil), T::Array[T.untyped])
437
+
438
+ ActionDispatch::Response::NullContentTypeHeader = T.let(T.unsafe(nil), ActionDispatch::Response::ContentTypeHeader)
439
+
440
+ ActionDispatch::Response::SET_COOKIE = T.let(T.unsafe(nil), String)
441
+
442
+ ActionDispatch::Http::Cache::Request::HTTP_IF_MODIFIED_SINCE = T.let(T.unsafe(nil), String)
443
+
444
+ ActionDispatch::Http::Cache::Request::HTTP_IF_NONE_MATCH = T.let(T.unsafe(nil), String)
445
+
446
+ ActionDispatch::Http::Cache::Response::DATE = T.let(T.unsafe(nil), String)
447
+
448
+ ActionDispatch::Http::Cache::Response::DEFAULT_CACHE_CONTROL = T.let(T.unsafe(nil), String)
449
+
450
+ ActionDispatch::Http::Cache::Response::LAST_MODIFIED = T.let(T.unsafe(nil), String)
451
+
452
+ ActionDispatch::Http::Cache::Response::MUST_REVALIDATE = T.let(T.unsafe(nil), String)
453
+
454
+ ActionDispatch::Http::Cache::Response::NO_CACHE = T.let(T.unsafe(nil), String)
455
+
456
+ ActionDispatch::Http::Cache::Response::PRIVATE = T.let(T.unsafe(nil), String)
457
+
458
+ ActionDispatch::Http::Cache::Response::PUBLIC = T.let(T.unsafe(nil), String)
459
+
460
+ ActionDispatch::Http::Cache::Response::SPECIAL_KEYS = T.let(T.unsafe(nil), T::Set[T.untyped])
461
+
462
+ ActionDispatch::Http::ContentDisposition::RFC_5987_ESCAPED_CHAR = T.let(T.unsafe(nil), Regexp)
463
+
464
+ ActionDispatch::Http::ContentDisposition::TRADITIONAL_ESCAPED_CHAR = T.let(T.unsafe(nil), Regexp)
465
+
466
+ ActionDispatch::Http::FilterParameters::ENV_MATCH = T.let(T.unsafe(nil), T::Array[T.untyped])
467
+
468
+ ActionDispatch::Http::FilterParameters::KV_RE = T.let(T.unsafe(nil), String)
469
+
470
+ ActionDispatch::Http::FilterParameters::NULL_ENV_FILTER = T.let(T.unsafe(nil), ActiveSupport::ParameterFilter)
471
+
472
+ ActionDispatch::Http::FilterParameters::NULL_PARAM_FILTER = T.let(T.unsafe(nil), ActiveSupport::ParameterFilter)
473
+
474
+ ActionDispatch::Http::FilterParameters::PAIR_RE = T.let(T.unsafe(nil), Regexp)
475
+
476
+ ActionDispatch::Http::FilterRedirect::FILTERED = T.let(T.unsafe(nil), String)
477
+
478
+ ActionDispatch::Http::Headers::CGI_VARIABLES = T.let(T.unsafe(nil), T::Set[T.untyped])
479
+
480
+ ActionDispatch::Http::Headers::DEFAULT = T.let(T.unsafe(nil), Object)
481
+
482
+ ActionDispatch::Http::Headers::HTTP_HEADER = T.let(T.unsafe(nil), Regexp)
483
+
484
+ ActionDispatch::Http::MimeNegotiation::BROWSER_LIKE_ACCEPTS = T.let(T.unsafe(nil), Regexp)
485
+
486
+ ActionDispatch::Http::MimeNegotiation::RESCUABLE_MIME_FORMAT_ERRORS = T.let(T.unsafe(nil), T::Array[T.untyped])
487
+
488
+ ActionDispatch::Http::ParameterFilter = ActiveSupport::ParameterFilter
489
+
490
+ module ActionDispatch::Http::Parameters
491
+ mixes_in_class_methods(::ActionDispatch::Http::Parameters::ClassMethods)
492
+ end
493
+
494
+ module ActionDispatch::Http::Parameters::ClassMethods; end
495
+
496
+ ActionDispatch::Http::Parameters::DEFAULT_PARSERS = T.let(T.unsafe(nil), T::Hash[T.untyped, T.untyped])
497
+
498
+ ActionDispatch::Http::Parameters::PARAMETERS_KEY = T.let(T.unsafe(nil), String)
499
+
500
+ class ActionDispatch::Http::Parameters::ParseError < ::StandardError
501
+ end
502
+
503
+ ActionDispatch::Http::URL::HOST_REGEXP = T.let(T.unsafe(nil), Regexp)
504
+
505
+ ActionDispatch::Http::URL::IP_HOST_REGEXP = T.let(T.unsafe(nil), Regexp)
506
+
507
+ ActionDispatch::Http::URL::PROTOCOL_REGEXP = T.let(T.unsafe(nil), Regexp)
508
+
509
+ ActionDispatch::Http::Headers::CGI_VARIABLES = T.let(T.unsafe(nil), T::Set[T.untyped])
510
+
511
+ ActionDispatch::Http::Headers::DEFAULT = T.let(T.unsafe(nil), Object)
512
+
513
+ ActionDispatch::Http::Headers::HTTP_HEADER = T.let(T.unsafe(nil), Regexp)
514
+
515
+ class ActionController::Parameters
516
+ sig { params(other: T.any(String, ActionController::Parameters)).returns(T::Boolean) }
517
+ def ==(other); end
518
+
519
+ sig { params(key: T.any(String, Symbol), value: T.untyped).void }
520
+ def []=(key, value); end
521
+
522
+ sig { returns(T.nilable(T::Array[T.any(String, Symbol)])) }
523
+ def always_permitted_parameters; end
524
+
525
+ sig { params(obj: T.nilable(T::Array[T.any(String, Symbol)])).void }
526
+ def always_permitted_parameters=(obj); end
527
+
528
+ sig { params(options: T.untyped).returns(T.untyped) }
529
+ def as_json(options = nil); end
530
+
531
+ sig { returns(T.untyped) }
532
+ def deep_dup; end
533
+
534
+ sig { params(key: T.any(String, Symbol), block: T.untyped).returns(T.untyped) }
535
+ def delete(key, &block); end
536
+
537
+ sig { params(keys: T.any(String, Symbol)).returns(T.untyped) }
538
+ def dig(*keys); end
539
+
540
+ sig { params(block: T.untyped).returns(T.untyped) }
541
+ def each_pair(&block); end
542
+
543
+ # each is an alias of each_pair
544
+ sig { params(block: T.untyped).returns(T.untyped) }
545
+ def each(&block); end
546
+
547
+ sig { returns(T::Boolean) }
548
+ def empty?; end
549
+
550
+ sig { params(keys: T.any(String, Symbol)).returns(ActionController::Parameters) }
551
+ def except(*keys); end
552
+
553
+ sig { params(keys: T.any(String, Symbol)).returns(T.untyped) }
554
+ def extract!(*keys); end
555
+
556
+ sig { params(key: T.any(String, Symbol), args: T.untyped).returns(T.untyped) }
557
+ def fetch(key, *args); end
558
+
559
+ sig { params(key: T.any(String, Symbol)).returns(T::Boolean) }
560
+ def has_key?(key); end
561
+
562
+ sig { params(value: T.untyped).returns(T::Boolean) }
563
+ def has_value?(value); end
564
+
565
+ sig { params(key: T.any(String, Symbol)).returns(T::Boolean) }
566
+ def include?(key); end
567
+
568
+ sig { params(parameters: T.untyped).void }
569
+ def initialize(parameters = nil); end
570
+
571
+ sig { returns(String) }
572
+ def inspect; end
573
+
574
+ sig { params(key: T.any(String, Symbol)).returns(T::Boolean) }
575
+ def key?(key); end
576
+
577
+ sig { returns(T::Array[T.untyped]) }
578
+ def keys; end
579
+
580
+ sig { params(other_hash: T.untyped).returns(ActionController::Parameters) }
581
+ def merge!(other_hash); end
582
+
583
+ sig { params(other_hash: T.untyped).returns(ActionController::Parameters) }
584
+ def merge(other_hash); end
585
+
586
+ sig { returns(T.untyped) }
587
+ def parameters; end
588
+
589
+ sig { returns(T.self_type) }
590
+ def permit!; end
591
+
592
+ # You can pass _a lot_ of stuff to permit, so filters is left untyped for now.
593
+ sig { params(filters: T.untyped).returns(ActionController::Parameters) }
594
+ def permit(*filters); end
595
+
596
+ sig { params(new_permitted: T.untyped).void }
597
+ def permitted=(new_permitted); end
598
+
599
+ sig { returns(T::Boolean) }
600
+ def permitted?; end
601
+
602
+ sig { params(block: T.untyped).returns(T.untyped) }
603
+ def reject!(&block); end
604
+
605
+ # delete_if is an alias of reject!
606
+ sig { params(block: T.untyped).returns(T.untyped) }
607
+ def delete_if(&block); end
608
+
609
+ sig { params(block: T.untyped).returns(T.untyped) }
610
+ def reject(&block); end
611
+
612
+ sig do
613
+ params(
614
+ key: T.any(String, Symbol),
615
+ ).returns(
616
+ T.nilable(
617
+ T.any(
618
+ String,
619
+ Numeric,
620
+ ActionController::Parameters,
621
+ ),
622
+ ),
623
+ )
624
+ end
625
+ def [](key); end
626
+
627
+ sig do
628
+ params(
629
+ key: T.any(
630
+ String,
631
+ Symbol,
632
+ T::Array[T.any(String, Symbol)],
633
+ ),
634
+ ).returns(
635
+ T.any(
636
+ String,
637
+ Numeric,
638
+ T::Array[T.untyped],
639
+ ActionController::Parameters,
640
+ ),
641
+ )
642
+ end
643
+ def require(key); end
644
+
645
+ # required is an alias of require
646
+ sig do
647
+ params(
648
+ key: T.any(
649
+ String,
650
+ Symbol,
651
+ T::Array[T.any(String, Symbol)],
652
+ ),
653
+ ).returns(
654
+ T.any(
655
+ String,
656
+ Numeric,
657
+ T::Array[T.untyped],
658
+ ActionController::Parameters,
659
+ ),
660
+ )
661
+ end
662
+ def required(key); end
663
+
664
+ sig { params(other_hash: T.untyped).returns(ActionController::Parameters) }
665
+ def reverse_merge!(other_hash); end
666
+
667
+ # with_defaults! is an alias of reverse_merge!
668
+ sig { params(other_hash: T.untyped).returns(ActionController::Parameters) }
669
+ def with_defaults!(other_hash); end
670
+
671
+ sig { params(other_hash: T.untyped).returns(ActionController::Parameters) }
672
+ def reverse_merge(other_hash); end
673
+
674
+ # with_defaults is an alias of reverse_merge
675
+ sig { params(other_hash: T.untyped).returns(ActionController::Parameters) }
676
+ def with_defaults(other_hash); end
677
+
678
+ sig { params(block: T.untyped).returns(T.nilable(ActionController::Parameters)) }
679
+ def select!(&block); end
680
+
681
+ # keep_if is an alias of select!
682
+ sig { params(block: T.untyped).returns(T.nilable(ActionController::Parameters)) }
683
+ def keep_if(&block); end
684
+
685
+ sig { params(block: T.untyped).returns(ActionController::Parameters) }
686
+ def select(&block); end
687
+
688
+ sig { returns(T.any(Symbol, T::Boolean)) }
689
+ def self.action_on_unpermitted_parameters; end
690
+
691
+ sig { params(obj: T.any(Symbol, T::Boolean)).void }
692
+ def self.action_on_unpermitted_parameters=(obj); end
693
+
694
+ sig { returns(T::Array[T.any(String, Symbol)]) }
695
+ def self.always_permitted_parameters; end
696
+
697
+ sig { params(obj: T::Array[T.any(String, Symbol)]).void }
698
+ def self.always_permitted_parameters=(obj); end
699
+
700
+ sig { returns(T::Boolean) }
701
+ def self.permit_all_parameters; end
702
+
703
+ sig { params(obj: T::Boolean).void }
704
+ def self.permit_all_parameters=(obj); end
705
+
706
+ sig { params(keys: T.any(String, Symbol)).returns(ActionController::Parameters) }
707
+ def slice!(*keys); end
708
+
709
+ sig { params(keys: T.any(String, Symbol)).returns(ActionController::Parameters) }
710
+ def slice(*keys); end
711
+
712
+ sig { returns(ActiveSupport::HashWithIndifferentAccess) }
713
+ def to_h; end
714
+
715
+ sig { returns(T::Hash[T.untyped, T.untyped]) }
716
+ def to_hash; end
717
+
718
+ # to_param is an alias of to_query
719
+ sig { params(args: String).returns(T.nilable(String)) }
720
+ def to_param(*args); end
721
+
722
+ sig { params(args: String).returns(T.nilable(String)) }
723
+ def to_query(*args); end
724
+
725
+ sig { returns(String) }
726
+ def to_s; end
727
+
728
+ sig { returns(ActiveSupport::HashWithIndifferentAccess) }
729
+ def to_unsafe_h; end
730
+
731
+ # to_unsafe_hash is an alias of to_unsafe_h
732
+ sig { returns(ActiveSupport::HashWithIndifferentAccess) }
733
+ def to_unsafe_hash; end
734
+
735
+ sig { params(block: T.untyped).returns(ActionController::Parameters) }
736
+ def transform_keys!(&block); end
737
+
738
+ sig { params(block: T.untyped).returns(ActionController::Parameters) }
739
+ def transform_keys(&block); end
740
+
741
+ sig { returns(ActionController::Parameters) }
742
+ def transform_values!; end
743
+
744
+ sig { returns(ActionController::Parameters) }
745
+ def transform_values; end
746
+
747
+ sig { params(value: T.untyped).returns(T::Boolean) }
748
+ def value?(value); end
749
+
750
+ sig { returns(T::Array[T.untyped]) }
751
+ def values; end
752
+
753
+ sig { params(keys: T.any(String, Symbol)).returns(T.untyped) }
754
+ def values_at(*keys); end
755
+ end
756
+
757
+ class ActionDispatch::Routing::RouteSet
758
+ sig { params(blk: T.proc.bind(ActionDispatch::Routing::Mapper).void).void }
759
+ def draw(&blk); end
760
+ end
761
+
762
+ module ActionDispatch::Routing::Mapper::HttpHelpers
763
+ # get, put, patch, post, and delete all have the same arguments as
764
+ # ActionDispatch::Routing::Mapper::Resources#match
765
+ sig do
766
+ params(
767
+ name: T.any(String, Symbol, T::Hash[String, String]),
768
+ controller: T.nilable(T.any(String, Symbol)),
769
+ action: T.nilable(T.any(String, Symbol)),
770
+ param: T.nilable(Symbol),
771
+ module: T.nilable(T.any(String, Symbol)),
772
+ as: T.nilable(T.any(String, Symbol)),
773
+ via: T.nilable(T.any(Symbol, T::Array[Symbol])),
774
+ to: T.nilable(T.any(String, T.proc.returns(T.untyped))),
775
+ on: T.nilable(Symbol),
776
+ constraints: T.untyped,
777
+ defaults: T.nilable(T::Hash[T.untyped, T.untyped]),
778
+ anchor: T::Boolean,
779
+ format: T.nilable(T.any(String, T::Boolean)),
780
+ path: T.nilable(T.any(String, Symbol)),
781
+ block: T.untyped
782
+ ).returns(T.untyped)
783
+ end
784
+ def delete(
785
+ name,
786
+ controller: nil,
787
+ action: nil,
788
+ param: :id,
789
+ module: nil,
790
+ as: nil,
791
+ via: nil,
792
+ to: nil,
793
+ on: nil,
794
+ constraints: nil,
795
+ defaults: nil,
796
+ anchor: true,
797
+ format: nil,
798
+ path: nil,
799
+ &block
800
+ ); end
801
+
802
+ sig do
803
+ params(
804
+ name: T.any(String, Symbol, T::Hash[String, String]),
805
+ controller: T.nilable(T.any(String, Symbol)),
806
+ action: T.nilable(T.any(String, Symbol)),
807
+ param: T.nilable(Symbol),
808
+ module: T.nilable(T.any(String, Symbol)),
809
+ as: T.nilable(T.any(String, Symbol)),
810
+ via: T.nilable(T.any(Symbol, T::Array[Symbol])),
811
+ to: T.nilable(T.any(String, Symbol, T.proc.params(arg0: T.untyped).returns(T.untyped))),
812
+ on: T.nilable(Symbol),
813
+ constraints: T.untyped,
814
+ defaults: T.nilable(T::Hash[T.untyped, T.untyped]),
815
+ anchor: T::Boolean,
816
+ format: T.nilable(T.any(String, T::Boolean)),
817
+ path: T.nilable(T.any(String, Symbol)),
818
+ block: T.untyped
819
+ ).returns(T.untyped)
820
+ end
821
+ def get(
822
+ name,
823
+ controller: nil,
824
+ action: nil,
825
+ param: :id,
826
+ module: nil,
827
+ as: nil,
828
+ via: nil,
829
+ to: nil,
830
+ on: nil,
831
+ constraints: nil,
832
+ defaults: nil,
833
+ anchor: true,
834
+ format: nil,
835
+ path: nil,
836
+ &block
837
+ ); end
838
+
839
+ sig do
840
+ params(
841
+ name: T.any(String, Symbol, T::Hash[String, String]),
842
+ controller: T.nilable(T.any(String, Symbol)),
843
+ action: T.nilable(T.any(String, Symbol)),
844
+ param: T.nilable(Symbol),
845
+ module: T.nilable(T.any(String, Symbol)),
846
+ as: T.nilable(T.any(String, Symbol)),
847
+ via: T.nilable(T.any(Symbol, T::Array[Symbol])),
848
+ to: T.nilable(T.any(String, T.proc.returns(T.untyped))),
849
+ on: T.nilable(Symbol),
850
+ constraints: T.untyped,
851
+ defaults: T.nilable(T::Hash[T.untyped, T.untyped]),
852
+ anchor: T::Boolean,
853
+ format: T.nilable(T.any(String, T::Boolean)),
854
+ path: T.nilable(T.any(String, Symbol)),
855
+ block: T.untyped
856
+ ).returns(T.untyped)
857
+ end
858
+ def patch(
859
+ name,
860
+ controller: nil,
861
+ action: nil,
862
+ param: :id,
863
+ module: nil,
864
+ as: nil,
865
+ via: nil,
866
+ to: nil,
867
+ on: nil,
868
+ constraints: nil,
869
+ defaults: nil,
870
+ anchor: true,
871
+ format: nil,
872
+ path: nil,
873
+ &block
874
+ ); end
875
+
876
+ sig do
877
+ params(
878
+ name: T.any(String, Symbol, T::Hash[String, String]),
879
+ controller: T.nilable(T.any(String, Symbol)),
880
+ action: T.nilable(T.any(String, Symbol)),
881
+ param: T.nilable(Symbol),
882
+ module: T.nilable(T.any(String, Symbol)),
883
+ as: T.nilable(T.any(String, Symbol)),
884
+ via: T.nilable(T.any(Symbol, T::Array[Symbol])),
885
+ to: T.nilable(T.any(String, T.proc.returns(T.untyped))),
886
+ on: T.nilable(Symbol),
887
+ constraints: T.untyped,
888
+ defaults: T.nilable(T::Hash[T.untyped, T.untyped]),
889
+ anchor: T::Boolean,
890
+ format: T.nilable(T.any(String, T::Boolean)),
891
+ path: T.nilable(T.any(String, Symbol)),
892
+ block: T.untyped
893
+ ).returns(T.untyped)
894
+ end
895
+ def post(
896
+ name,
897
+ controller: nil,
898
+ action: nil,
899
+ param: :id,
900
+ module: nil,
901
+ as: nil,
902
+ via: nil,
903
+ to: nil,
904
+ on: nil,
905
+ constraints: nil,
906
+ defaults: nil,
907
+ anchor: true,
908
+ format: nil,
909
+ path: nil,
910
+ &block
911
+ ); end
912
+
913
+ sig do
914
+ params(
915
+ name: T.any(String, Symbol, T::Hash[String, String]),
916
+ controller: T.nilable(T.any(String, Symbol)),
917
+ action: T.nilable(T.any(String, Symbol)),
918
+ param: T.nilable(Symbol),
919
+ module: T.nilable(T.any(String, Symbol)),
920
+ as: T.nilable(T.any(String, Symbol)),
921
+ via: T.nilable(T.any(Symbol, T::Array[Symbol])),
922
+ to: T.nilable(T.any(String, T.proc.returns(T.untyped))),
923
+ on: T.nilable(Symbol),
924
+ constraints: T.untyped,
925
+ defaults: T.nilable(T::Hash[T.untyped, T.untyped]),
926
+ anchor: T::Boolean,
927
+ format: T.nilable(T.any(String, T::Boolean)),
928
+ path: T.nilable(T.any(String, Symbol)),
929
+ block: T.untyped
930
+ ).returns(T.untyped)
931
+ end
932
+ def put(
933
+ name,
934
+ controller: nil,
935
+ action: nil,
936
+ param: :id,
937
+ module: nil,
938
+ as: nil,
939
+ via: nil,
940
+ to: nil,
941
+ on: nil,
942
+ constraints: nil,
943
+ defaults: nil,
944
+ anchor: true,
945
+ format: nil,
946
+ path: nil,
947
+ &block
948
+ ); end
949
+ end
950
+
951
+ module ActionDispatch::Routing::Mapper::Resources
952
+ sig { params(name: T.untyped).returns(T.untyped) }
953
+ def action_path(name); end
954
+
955
+ sig { params(block: T.untyped).returns(T.untyped) }
956
+ def collection(&block); end
957
+
958
+ sig do
959
+ params(
960
+ name: T.any(String, Symbol, T::Hash[String, String]),
961
+ controller: T.nilable(T.any(String, Symbol)),
962
+ action: T.nilable(T.any(String, Symbol)),
963
+ param: T.nilable(Symbol),
964
+ module: T.nilable(T.any(String, Symbol)),
965
+ as: T.nilable(T.any(String, Symbol)),
966
+ via: T.nilable(T.any(Symbol, T::Array[Symbol])),
967
+ to: T.nilable(T.any(String, T.proc.returns(T.untyped))),
968
+ on: T.nilable(Symbol),
969
+ constraints: T.untyped,
970
+ defaults: T.nilable(T::Hash[T.untyped, T.untyped]),
971
+ anchor: T::Boolean,
972
+ format: T.nilable(T.any(String, T::Boolean)),
973
+ path: T.nilable(T.any(String, Symbol)),
974
+ block: T.untyped
975
+ ).returns(T.untyped)
976
+ end
977
+ def match(
978
+ name,
979
+ controller: nil,
980
+ action: nil,
981
+ param: :id,
982
+ module: nil,
983
+ as: nil,
984
+ via: nil,
985
+ to: nil,
986
+ on: nil,
987
+ constraints: nil,
988
+ defaults: nil,
989
+ anchor: true,
990
+ format: nil,
991
+ path: nil,
992
+ &block
993
+ ); end
994
+
995
+ sig { params(block: T.untyped).returns(T.untyped) }
996
+ def member(&block); end
997
+
998
+ # These are set to T.unsafe(nil) because they do actually have values, but they
999
+ # can't be determined statically. They take the value of path when no explicit
1000
+ # values are provided.
1001
+ sig do
1002
+ params(
1003
+ path: T.untyped,
1004
+ as: T.untyped,
1005
+ module: T.untyped,
1006
+ shallow_path: T.untyped,
1007
+ shallow_prefix: T.untyped,
1008
+ block: T.untyped
1009
+ ).returns(T.untyped)
1010
+ end
1011
+ def namespace(
1012
+ path,
1013
+ as: T.unsafe(nil),
1014
+ module: T.unsafe(nil),
1015
+ shallow_path: T.unsafe(nil),
1016
+ shallow_prefix: T.unsafe(nil),
1017
+ &block
1018
+ ); end
1019
+
1020
+ sig do
1021
+ params(
1022
+ resources: T.any(String, Symbol),
1023
+ as: T.nilable(T.any(String, Symbol)),
1024
+ controller: T.nilable(T.any(String, Symbol)),
1025
+ concerns: T.nilable(T.any(Symbol, T::Array[Symbol])),
1026
+ param: T.nilable(Symbol),
1027
+ path_names: T.untyped,
1028
+ path: T.untyped,
1029
+ only: T.nilable(T.any(
1030
+ T::Array[T.any(String, Symbol)],
1031
+ String,
1032
+ Symbol
1033
+ )),
1034
+ except: T.nilable(T.any(
1035
+ T::Array[T.any(String, Symbol)],
1036
+ String,
1037
+ Symbol
1038
+ )),
1039
+ shallow: T::Boolean,
1040
+ shallow_path: T.nilable(String),
1041
+ shallow_prefix: T.nilable(String),
1042
+ format: T.untyped,
1043
+ block: T.untyped
1044
+ ).returns(T.untyped)
1045
+ end
1046
+ def resource(
1047
+ *resources,
1048
+ as: nil,
1049
+ controller: nil,
1050
+ concerns: nil,
1051
+ param: nil,
1052
+ path_names: nil,
1053
+ path: nil,
1054
+ only: nil,
1055
+ except: nil,
1056
+ shallow: false,
1057
+ shallow_path: nil,
1058
+ shallow_prefix: nil,
1059
+ format: nil,
1060
+ &block
1061
+ ); end
1062
+
1063
+ sig do
1064
+ params(
1065
+ resources: T.any(String, Symbol),
1066
+ as: T.nilable(T.any(String, Symbol)),
1067
+ constraints: T.untyped,
1068
+ controller: T.nilable(T.any(String, Symbol)),
1069
+ concerns: T.nilable(T.any(Symbol, T::Array[Symbol])),
1070
+ defaults: T.untyped,
1071
+ param: T.nilable(Symbol),
1072
+ path_names: T.untyped,
1073
+ path: T.untyped,
1074
+ only: T.nilable(T.any(
1075
+ T::Array[T.any(String, Symbol)],
1076
+ String,
1077
+ Symbol
1078
+ )),
1079
+ except: T.nilable(T.any(
1080
+ T::Array[T.any(String, Symbol)],
1081
+ String,
1082
+ Symbol
1083
+ )),
1084
+ shallow: T::Boolean,
1085
+ shallow_path: T.nilable(String),
1086
+ shallow_prefix: T.nilable(String),
1087
+ format: T.untyped,
1088
+ block: T.untyped
1089
+ ).returns(T.untyped)
1090
+ end
1091
+ def resources(
1092
+ *resources,
1093
+ as: nil,
1094
+ constraints: nil,
1095
+ controller: nil,
1096
+ concerns: nil,
1097
+ defaults: nil,
1098
+ param: nil,
1099
+ path_names: nil,
1100
+ path: nil,
1101
+ only: nil,
1102
+ except: nil,
1103
+ shallow: false,
1104
+ shallow_path: nil,
1105
+ shallow_prefix: nil,
1106
+ format: nil,
1107
+ &block
1108
+ ); end
1109
+
1110
+ # Technically, path doesn't have a default value set. However, this is
1111
+ # necessary to allow code like `root to: 'home#index'`.
1112
+ sig { params(path: T.nilable(String), to: T.untyped, as: T.nilable(Symbol)).returns(T.untyped) }
1113
+ def root(path = T.unsafe(nil), to: nil, as: nil); end
1114
+
1115
+ sig { returns(T.untyped) }
1116
+ def shallow; end
1117
+
1118
+ sig { returns(T::Boolean) }
1119
+ def shallow?; end
1120
+ end
1121
+
1122
+ Mime::ALL = T.let(T.unsafe(nil), Mime::AllType)
1123
+
1124
+ Mime::EXTENSION_LOOKUP = T.let(T.unsafe(nil), T::Hash[T.untyped, T.untyped])
1125
+
1126
+ Mime::LOOKUP = T.let(T.unsafe(nil), T::Hash[T.untyped, T.untyped])
1127
+
1128
+ Mime::SET = T.let(T.unsafe(nil), Mime::Mimes)
1129
+
1130
+ Mime::Type::MIME_NAME = T.let(T.unsafe(nil), String)
1131
+
1132
+ Mime::Type::MIME_PARAMETER = T.let(T.unsafe(nil), String)
1133
+
1134
+ Mime::Type::MIME_PARAMETER_KEY = T.let(T.unsafe(nil), String)
1135
+
1136
+ Mime::Type::MIME_PARAMETER_VALUE = T.let(T.unsafe(nil), String)
1137
+
1138
+ Mime::Type::MIME_REGEXP = T.let(T.unsafe(nil), Regexp)