zelkova 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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)