sorbet-rails 0.7.33 → 0.7.34

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 (147) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci-master.yml +1 -1
  3. data/.github/workflows/ci.yml +1 -1
  4. data/CONTRIBUTING.md +1 -0
  5. data/Gemfile +4 -0
  6. data/README.md +1 -1
  7. data/Rakefile +27 -1
  8. data/lib/sorbet-rails/active_record_rbi_formatter.rb +1 -1
  9. data/lib/sorbet-rails/model_plugins/active_record_querying.rb +14 -0
  10. data/lib/sorbet-rails/rails_mixins/active_record_overrides.rb +1 -1
  11. data/lib/sorbet-rails/tasks/rails_rbi.rake +15 -0
  12. data/sorbet-rails.gemspec +1 -1
  13. data/spec/bin/run_all_specs.sh +1 -0
  14. data/spec/generators/rails-template.rb +2 -7
  15. data/spec/rails_helper.rb +2 -0
  16. data/spec/rake_rails_rbi_models_spec.rb +1 -1
  17. data/spec/support/v5.2/sorbet_test_cases.rb +8 -0
  18. data/spec/support/v6.0/sorbet_test_cases.rb +8 -0
  19. data/spec/support/v6.1/sorbet_test_cases.rb +8 -0
  20. data/spec/support/v7.0/.gitattributes +7 -0
  21. data/spec/support/v7.0/.gitignore +35 -0
  22. data/spec/support/v7.0/Gemfile +48 -0
  23. data/spec/support/v7.0/Gemfile.lock +218 -0
  24. data/spec/support/v7.0/README.md +24 -0
  25. data/spec/support/v7.0/Rakefile +6 -0
  26. data/spec/support/v7.0/app/assets/images/.keep +0 -0
  27. data/spec/support/v7.0/app/assets/stylesheets/application.css +1 -0
  28. data/spec/support/v7.0/app/controllers/application_controller.rb +3 -0
  29. data/spec/support/v7.0/app/controllers/concerns/.keep +0 -0
  30. data/spec/support/v7.0/app/helpers/application_helper.rb +3 -0
  31. data/spec/support/v7.0/app/helpers/bar_helper.rb +3 -0
  32. data/spec/support/v7.0/app/helpers/baz_helper.rb +3 -0
  33. data/spec/support/v7.0/app/helpers/foo_helper.rb +3 -0
  34. data/spec/support/v7.0/app/jobs/application_job.rb +8 -0
  35. data/spec/support/v7.0/app/jobs/award_house_point_hourglasses.rb +12 -0
  36. data/spec/support/v7.0/app/mailers/application_mailer.rb +5 -0
  37. data/spec/support/v7.0/app/mailers/daily_prophet_mailer.rb +9 -0
  38. data/spec/support/v7.0/app/mailers/hogwarts_acceptance_mailer.rb +29 -0
  39. data/spec/support/v7.0/app/models/application_record.rb +4 -0
  40. data/spec/support/v7.0/app/models/concerns/.keep +0 -0
  41. data/spec/support/v7.0/app/models/concerns/mythical.rb +11 -0
  42. data/spec/support/v7.0/app/models/headmaster.rb +8 -0
  43. data/spec/support/v7.0/app/models/potion.rb +6 -0
  44. data/spec/support/v7.0/app/models/robe.rb +4 -0
  45. data/spec/support/v7.0/app/models/school.rb +5 -0
  46. data/spec/support/v7.0/app/models/spell.rb +5 -0
  47. data/spec/support/v7.0/app/models/spell_book.rb +18 -0
  48. data/spec/support/v7.0/app/models/squib.rb +6 -0
  49. data/spec/support/v7.0/app/models/subject.rb +5 -0
  50. data/spec/support/v7.0/app/models/wand.rb +19 -0
  51. data/spec/support/v7.0/app/models/wizard.rb +65 -0
  52. data/spec/support/v7.0/app/views/layouts/application.html.erb +15 -0
  53. data/spec/support/v7.0/app/views/layouts/mailer.html.erb +13 -0
  54. data/spec/support/v7.0/app/views/layouts/mailer.text.erb +1 -0
  55. data/spec/support/v7.0/bin/bundle +114 -0
  56. data/spec/support/v7.0/bin/rails +4 -0
  57. data/spec/support/v7.0/bin/rake +4 -0
  58. data/spec/support/v7.0/bin/setup +33 -0
  59. data/spec/support/v7.0/config/application.rb +38 -0
  60. data/spec/support/v7.0/config/boot.rb +4 -0
  61. data/spec/support/v7.0/config/database.yml +25 -0
  62. data/spec/support/v7.0/config/environment.rb +6 -0
  63. data/spec/support/v7.0/config/environments/development.rb +69 -0
  64. data/spec/support/v7.0/config/environments/production.rb +83 -0
  65. data/spec/support/v7.0/config/environments/test.rb +61 -0
  66. data/spec/support/v7.0/config/initializers/content_security_policy.rb +26 -0
  67. data/spec/support/v7.0/config/initializers/filter_parameter_logging.rb +9 -0
  68. data/spec/support/v7.0/config/initializers/inflections.rb +17 -0
  69. data/spec/support/v7.0/config/initializers/permissions_policy.rb +12 -0
  70. data/spec/support/v7.0/config/initializers/sorbet_rails.rb +3 -0
  71. data/spec/support/v7.0/config/locales/en.yml +33 -0
  72. data/spec/support/v7.0/config/puma.rb +44 -0
  73. data/spec/support/v7.0/config/routes.rb +8 -0
  74. data/spec/support/v7.0/config/storage.yml +34 -0
  75. data/spec/support/v7.0/config.ru +6 -0
  76. data/spec/support/v7.0/db/migrate/20190620000001_create_wizards.rb +14 -0
  77. data/spec/support/v7.0/db/migrate/20190620000002_create_wands.rb +12 -0
  78. data/spec/support/v7.0/db/migrate/20190620000003_create_spell_books.rb +10 -0
  79. data/spec/support/v7.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +14 -0
  80. data/spec/support/v7.0/db/migrate/20190620000005_add_broom_to_wizard.rb +6 -0
  81. data/spec/support/v7.0/db/migrate/20190620000006_add_more_enums_to_wizard.rb +9 -0
  82. data/spec/support/v7.0/db/migrate/20190620000007_add_type_to_wizard.rb +6 -0
  83. data/spec/support/v7.0/db/migrate/20190620000008_add_robe_to_wizard.rb +8 -0
  84. data/spec/support/v7.0/db/migrate/20190620000009_add_school.rb +10 -0
  85. data/spec/support/v7.0/db/migrate/20190620000010_add_subject.rb +8 -0
  86. data/spec/support/v7.0/db/migrate/20190620000011_add_subjects_wizards.rb +8 -0
  87. data/spec/support/v7.0/db/migrate/20190620000012_add_spell.rb +8 -0
  88. data/spec/support/v7.0/db/migrate/20190620000013_add_spells_spell_books.rb +8 -0
  89. data/spec/support/v7.0/db/migrate/20190620000014_create_headmasters.rb +9 -0
  90. data/spec/support/v7.0/db/migrate/20190620000015_add_serialized_to_wizards.rb +9 -0
  91. data/spec/support/v7.0/db/schema.rb +98 -0
  92. data/spec/support/v7.0/db/seeds.rb +8 -0
  93. data/spec/support/v7.0/lib/assets/.keep +0 -0
  94. data/spec/support/v7.0/lib/mythical_rbi_plugin.rb +16 -0
  95. data/spec/support/v7.0/lib/tasks/.keep +0 -0
  96. data/spec/support/v7.0/log/.keep +0 -0
  97. data/spec/support/v7.0/sorbet_test_cases.rb +439 -0
  98. data/spec/support/v7.0/storage/.keep +0 -0
  99. data/spec/support/v7.0/tmp/.keep +0 -0
  100. data/spec/support/v7.0/tmp/pids/.keep +0 -0
  101. data/spec/support/v7.0/tmp/storage/.keep +0 -0
  102. data/spec/support/v7.0/vendor/.keep +0 -0
  103. data/spec/test_data/v5.2/expected_active_record_base.rbi +6 -0
  104. data/spec/test_data/v5.2/expected_active_record_relation.rbi +6 -0
  105. data/spec/test_data/v6.0/expected_active_record_base.rbi +6 -0
  106. data/spec/test_data/v6.0/expected_active_record_relation.rbi +6 -0
  107. data/spec/test_data/v6.1/expected_active_record_base.rbi +6 -0
  108. data/spec/test_data/v6.1/expected_active_record_relation.rbi +6 -0
  109. data/spec/test_data/v7.0/expected_active_record_base.rbi +119 -0
  110. data/spec/test_data/v7.0/expected_active_record_relation.rbi +180 -0
  111. data/spec/test_data/v7.0/expected_application_job.rbi +20 -0
  112. data/spec/test_data/v7.0/expected_application_mailer.rbi +5 -0
  113. data/spec/test_data/v7.0/expected_attachment.rbi +358 -0
  114. data/spec/test_data/v7.0/expected_award_house_point_hourglasses.rbi +20 -0
  115. data/spec/test_data/v7.0/expected_blob.rbi +394 -0
  116. data/spec/test_data/v7.0/expected_custom_application_job.rbi +21 -0
  117. data/spec/test_data/v7.0/expected_custom_application_mailer.rbi +6 -0
  118. data/spec/test_data/v7.0/expected_custom_award_house_point_hourglasses.rbi +21 -0
  119. data/spec/test_data/v7.0/expected_custom_daily_prophet_mailer.rbi +8 -0
  120. data/spec/test_data/v7.0/expected_custom_hogwarts_acceptance_mailer.rbi +21 -0
  121. data/spec/test_data/v7.0/expected_daily_prophet_mailer.rbi +7 -0
  122. data/spec/test_data/v7.0/expected_headmaster.rbi +376 -0
  123. data/spec/test_data/v7.0/expected_helpers.rbi +27 -0
  124. data/spec/test_data/v7.0/expected_helpers_with_application_and_devise_helpers.rbi +34 -0
  125. data/spec/test_data/v7.0/expected_hogwarts_acceptance_mailer.rbi +20 -0
  126. data/spec/test_data/v7.0/expected_internal_metadata.rbi +346 -0
  127. data/spec/test_data/v7.0/expected_no_routes.rbi +4 -0
  128. data/spec/test_data/v7.0/expected_potion.rbi +328 -0
  129. data/spec/test_data/v7.0/expected_record.rbi +307 -0
  130. data/spec/test_data/v7.0/expected_robe.rbi +349 -0
  131. data/spec/test_data/v7.0/expected_routes.rbi +182 -0
  132. data/spec/test_data/v7.0/expected_schema_migration.rbi +319 -0
  133. data/spec/test_data/v7.0/expected_school.rbi +349 -0
  134. data/spec/test_data/v7.0/expected_spell/habtm_spell_books.rbi +367 -0
  135. data/spec/test_data/v7.0/expected_spell.rbi +340 -0
  136. data/spec/test_data/v7.0/expected_spell_book/habtm_spells.rbi +367 -0
  137. data/spec/test_data/v7.0/expected_spell_book.rbi +499 -0
  138. data/spec/test_data/v7.0/expected_squib.rbi +1204 -0
  139. data/spec/test_data/v7.0/expected_srb_tc_output.txt +1 -0
  140. data/spec/test_data/v7.0/expected_subject/habtm_wizards.rbi +367 -0
  141. data/spec/test_data/v7.0/expected_subject.rbi +340 -0
  142. data/spec/test_data/v7.0/expected_variant_record.rbi +382 -0
  143. data/spec/test_data/v7.0/expected_wand.rbi +611 -0
  144. data/spec/test_data/v7.0/expected_wizard/habtm_subjects.rbi +367 -0
  145. data/spec/test_data/v7.0/expected_wizard.rbi +1280 -0
  146. data/spec/test_data/v7.0/expected_wizard_wo_spellbook.rbi +1274 -0
  147. metadata +243 -1
@@ -0,0 +1,394 @@
1
+ # This is an autogenerated file for dynamic methods in ActiveStorage::Blob
2
+ # Please rerun bundle exec rake rails_rbi:models[ActiveStorage::Blob] to regenerate.
3
+
4
+ # typed: strong
5
+ module ActiveStorage::Blob::ActiveRelation_WhereNot
6
+ sig { params(opts: T.untyped, rest: T.untyped).returns(T.self_type) }
7
+ def not(opts, *rest); end
8
+ end
9
+
10
+ module ActiveStorage::Blob::CustomFinderMethods
11
+ sig { params(limit: Integer).returns(T::Array[ActiveStorage::Blob]) }
12
+ def first_n(limit); end
13
+
14
+ sig { params(limit: Integer).returns(T::Array[ActiveStorage::Blob]) }
15
+ def last_n(limit); end
16
+
17
+ sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[ActiveStorage::Blob]) }
18
+ def find_n(*args); end
19
+
20
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(ActiveStorage::Blob)) }
21
+ def find_by_id(id); end
22
+
23
+ sig { params(id: Integer).returns(ActiveStorage::Blob) }
24
+ def find_by_id!(id); end
25
+ end
26
+
27
+ class ActiveStorage::Blob < ActiveStorage::Record
28
+ include ActiveStorage::Blob::GeneratedAssociationMethods
29
+ extend ActiveStorage::Blob::CustomFinderMethods
30
+ extend ActiveStorage::Blob::QueryMethodsReturningRelation
31
+ RelationType = T.type_alias { T.any(ActiveStorage::Blob::ActiveRecord_Relation, ActiveStorage::Blob::ActiveRecord_Associations_CollectionProxy, ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
32
+
33
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
34
+ def self.unattached(*args); end
35
+
36
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
37
+ def self.with_attached_preview_image(*args); end
38
+ end
39
+
40
+ class ActiveStorage::Blob::ActiveRecord_Relation < ActiveRecord::Relation
41
+ include ActiveStorage::Blob::ActiveRelation_WhereNot
42
+ include ActiveStorage::Blob::CustomFinderMethods
43
+ include ActiveStorage::Blob::QueryMethodsReturningRelation
44
+ Elem = type_member {{fixed: ActiveStorage::Blob}}
45
+
46
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
47
+ def unattached(*args); end
48
+
49
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
50
+ def with_attached_preview_image(*args); end
51
+ end
52
+
53
+ class ActiveStorage::Blob::ActiveRecord_AssociationRelation < ActiveRecord::AssociationRelation
54
+ include ActiveStorage::Blob::ActiveRelation_WhereNot
55
+ include ActiveStorage::Blob::CustomFinderMethods
56
+ include ActiveStorage::Blob::QueryMethodsReturningAssociationRelation
57
+ Elem = type_member {{fixed: ActiveStorage::Blob}}
58
+
59
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
60
+ def unattached(*args); end
61
+
62
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
63
+ def with_attached_preview_image(*args); end
64
+ end
65
+
66
+ class ActiveStorage::Blob::ActiveRecord_Associations_CollectionProxy < ActiveRecord::Associations::CollectionProxy
67
+ include ActiveStorage::Blob::CustomFinderMethods
68
+ include ActiveStorage::Blob::QueryMethodsReturningAssociationRelation
69
+ Elem = type_member {{fixed: ActiveStorage::Blob}}
70
+
71
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
72
+ def unattached(*args); end
73
+
74
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
75
+ def with_attached_preview_image(*args); end
76
+
77
+ sig { params(records: T.any(ActiveStorage::Blob, T::Array[ActiveStorage::Blob])).returns(T.self_type) }
78
+ def <<(*records); end
79
+
80
+ sig { params(records: T.any(ActiveStorage::Blob, T::Array[ActiveStorage::Blob])).returns(T.self_type) }
81
+ def append(*records); end
82
+
83
+ sig { params(records: T.any(ActiveStorage::Blob, T::Array[ActiveStorage::Blob])).returns(T.self_type) }
84
+ def push(*records); end
85
+
86
+ sig { params(records: T.any(ActiveStorage::Blob, T::Array[ActiveStorage::Blob])).returns(T.self_type) }
87
+ def concat(*records); end
88
+ end
89
+
90
+ module ActiveStorage::Blob::QueryMethodsReturningRelation
91
+ sig { returns(ActiveStorage::Blob::ActiveRecord_Relation) }
92
+ def all; end
93
+
94
+ sig { params(block: T.nilable(T.proc.void)).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
95
+ def unscoped(&block); end
96
+
97
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
98
+ def reselect(*args); end
99
+
100
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
101
+ def order(*args); end
102
+
103
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
104
+ def reorder(*args); end
105
+
106
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
107
+ def group(*args); end
108
+
109
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
110
+ def limit(*args); end
111
+
112
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
113
+ def offset(*args); end
114
+
115
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
116
+ def joins(*args); end
117
+
118
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
119
+ def left_joins(*args); end
120
+
121
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
122
+ def left_outer_joins(*args); end
123
+
124
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
125
+ def where(*args); end
126
+
127
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
128
+ def rewhere(*args); end
129
+
130
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
131
+ def preload(*args); end
132
+
133
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
134
+ def extract_associated(*args); end
135
+
136
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
137
+ def eager_load(*args); end
138
+
139
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
140
+ def includes(*args); end
141
+
142
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
143
+ def from(*args); end
144
+
145
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
146
+ def lock(*args); end
147
+
148
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
149
+ def readonly(*args); end
150
+
151
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
152
+ def or(*args); end
153
+
154
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
155
+ def having(*args); end
156
+
157
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
158
+ def create_with(*args); end
159
+
160
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
161
+ def distinct(*args); end
162
+
163
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
164
+ def references(*args); end
165
+
166
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
167
+ def none(*args); end
168
+
169
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
170
+ def unscope(*args); end
171
+
172
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
173
+ def optimizer_hints(*args); end
174
+
175
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
176
+ def merge(*args); end
177
+
178
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
179
+ def except(*args); end
180
+
181
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
182
+ def only(*args); end
183
+
184
+ sig { params(block: T.proc.params(e: ActiveStorage::Blob).returns(T::Boolean)).returns(T::Array[ActiveStorage::Blob]) }
185
+ def select(&block); end
186
+
187
+ sig { params(args: T.any(String, Symbol, T::Array[T.any(String, Symbol)])).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
188
+ def select_columns(*args); end
189
+
190
+ sig { params(args: Symbol).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
191
+ def where_missing(*args); end
192
+
193
+ sig { params(column: Symbol, values: T::Array[T.untyped]).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
194
+ def in_order_of(column, values); end
195
+
196
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
197
+ def extending(*args, &block); end
198
+
199
+ sig do
200
+ params(
201
+ of: T.nilable(Integer),
202
+ start: T.nilable(Integer),
203
+ finish: T.nilable(Integer),
204
+ load: T.nilable(T::Boolean),
205
+ error_on_ignore: T.nilable(T::Boolean),
206
+ block: T.nilable(T.proc.params(e: ActiveStorage::Blob::ActiveRecord_Relation).void)
207
+ ).returns(ActiveRecord::Batches::BatchEnumerator)
208
+ end
209
+ def in_batches(of: 1000, start: nil, finish: nil, load: false, error_on_ignore: nil, &block); end
210
+ end
211
+
212
+ module ActiveStorage::Blob::QueryMethodsReturningAssociationRelation
213
+ sig { returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
214
+ def all; end
215
+
216
+ sig { params(block: T.nilable(T.proc.void)).returns(ActiveStorage::Blob::ActiveRecord_Relation) }
217
+ def unscoped(&block); end
218
+
219
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
220
+ def reselect(*args); end
221
+
222
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
223
+ def order(*args); end
224
+
225
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
226
+ def reorder(*args); end
227
+
228
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
229
+ def group(*args); end
230
+
231
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
232
+ def limit(*args); end
233
+
234
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
235
+ def offset(*args); end
236
+
237
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
238
+ def joins(*args); end
239
+
240
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
241
+ def left_joins(*args); end
242
+
243
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
244
+ def left_outer_joins(*args); end
245
+
246
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
247
+ def where(*args); end
248
+
249
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
250
+ def rewhere(*args); end
251
+
252
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
253
+ def preload(*args); end
254
+
255
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
256
+ def extract_associated(*args); end
257
+
258
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
259
+ def eager_load(*args); end
260
+
261
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
262
+ def includes(*args); end
263
+
264
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
265
+ def from(*args); end
266
+
267
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
268
+ def lock(*args); end
269
+
270
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
271
+ def readonly(*args); end
272
+
273
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
274
+ def or(*args); end
275
+
276
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
277
+ def having(*args); end
278
+
279
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
280
+ def create_with(*args); end
281
+
282
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
283
+ def distinct(*args); end
284
+
285
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
286
+ def references(*args); end
287
+
288
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
289
+ def none(*args); end
290
+
291
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
292
+ def unscope(*args); end
293
+
294
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
295
+ def optimizer_hints(*args); end
296
+
297
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
298
+ def merge(*args); end
299
+
300
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
301
+ def except(*args); end
302
+
303
+ sig { params(args: T.untyped).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
304
+ def only(*args); end
305
+
306
+ sig { params(block: T.proc.params(e: ActiveStorage::Blob).returns(T::Boolean)).returns(T::Array[ActiveStorage::Blob]) }
307
+ def select(&block); end
308
+
309
+ sig { params(args: T.any(String, Symbol, T::Array[T.any(String, Symbol)])).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
310
+ def select_columns(*args); end
311
+
312
+ sig { params(args: Symbol).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
313
+ def where_missing(*args); end
314
+
315
+ sig { params(column: Symbol, values: T::Array[T.untyped]).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
316
+ def in_order_of(column, values); end
317
+
318
+ sig { params(args: T.untyped, block: T.nilable(T.proc.void)).returns(ActiveStorage::Blob::ActiveRecord_AssociationRelation) }
319
+ def extending(*args, &block); end
320
+
321
+ sig do
322
+ params(
323
+ of: T.nilable(Integer),
324
+ start: T.nilable(Integer),
325
+ finish: T.nilable(Integer),
326
+ load: T.nilable(T::Boolean),
327
+ error_on_ignore: T.nilable(T::Boolean),
328
+ block: T.nilable(T.proc.params(e: ActiveStorage::Blob::ActiveRecord_AssociationRelation).void)
329
+ ).returns(ActiveRecord::Batches::BatchEnumerator)
330
+ end
331
+ def in_batches(of: 1000, start: nil, finish: nil, load: false, error_on_ignore: nil, &block); end
332
+ end
333
+
334
+ module ActiveStorage::Blob::GeneratedAssociationMethods
335
+ sig { returns(::ActiveStorage::Attachment::ActiveRecord_Associations_CollectionProxy) }
336
+ def attachments; end
337
+
338
+ sig { returns(T::Array[T.untyped]) }
339
+ def attachment_ids; end
340
+
341
+ sig { params(value: T::Enumerable[::ActiveStorage::Attachment]).void }
342
+ def attachments=(value); end
343
+
344
+ sig { returns(T.nilable(::ActiveStorage::Attachment)) }
345
+ def preview_image_attachment; end
346
+
347
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::ActiveStorage::Attachment).void)).returns(::ActiveStorage::Attachment) }
348
+ def build_preview_image_attachment(*args, &block); end
349
+
350
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::ActiveStorage::Attachment).void)).returns(::ActiveStorage::Attachment) }
351
+ def create_preview_image_attachment(*args, &block); end
352
+
353
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::ActiveStorage::Attachment).void)).returns(::ActiveStorage::Attachment) }
354
+ def create_preview_image_attachment!(*args, &block); end
355
+
356
+ sig { params(value: T.nilable(::ActiveStorage::Attachment)).void }
357
+ def preview_image_attachment=(value); end
358
+
359
+ sig { returns(T.nilable(::ActiveStorage::Attachment)) }
360
+ def reload_preview_image_attachment; end
361
+
362
+ sig { returns(T.nilable(::ActiveStorage::Blob)) }
363
+ def preview_image_blob; end
364
+
365
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::ActiveStorage::Blob).void)).returns(::ActiveStorage::Blob) }
366
+ def build_preview_image_blob(*args, &block); end
367
+
368
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::ActiveStorage::Blob).void)).returns(::ActiveStorage::Blob) }
369
+ def create_preview_image_blob(*args, &block); end
370
+
371
+ sig { params(args: T.untyped, block: T.nilable(T.proc.params(object: ::ActiveStorage::Blob).void)).returns(::ActiveStorage::Blob) }
372
+ def create_preview_image_blob!(*args, &block); end
373
+
374
+ sig { params(value: T.nilable(::ActiveStorage::Blob)).void }
375
+ def preview_image_blob=(value); end
376
+
377
+ sig { returns(T.nilable(::ActiveStorage::Blob)) }
378
+ def reload_preview_image_blob; end
379
+
380
+ sig { returns(::ActiveStorage::VariantRecord::ActiveRecord_Associations_CollectionProxy) }
381
+ def variant_records; end
382
+
383
+ sig { returns(T::Array[T.untyped]) }
384
+ def variant_record_ids; end
385
+
386
+ sig { params(value: T::Enumerable[::ActiveStorage::VariantRecord]).void }
387
+ def variant_records=(value); end
388
+
389
+ sig { returns(T.nilable(ActiveStorage::Attached::One)) }
390
+ def preview_image; end
391
+
392
+ sig { params(attachable: T.untyped).returns(T.untyped) }
393
+ def preview_image=(attachable); end
394
+ end
@@ -0,0 +1,21 @@
1
+ # typed: strong
2
+ # == Custom Generator ==
3
+ # This is an autogenerated file for Rails' jobs.
4
+ # Please rerun bundle exec rake rails_rbi:jobs to regenerate.
5
+ class ApplicationJob
6
+ sig { params(_: T.untyped).returns(ApplicationJob) }
7
+ def self.perform_later(*_); end
8
+
9
+ sig { params(_: T.untyped).returns(ApplicationJob) }
10
+ def self.perform_now(*_); end
11
+
12
+ sig do
13
+ params(
14
+ wait: T.nilable(ActiveSupport::Duration),
15
+ wait_until: T.nilable(T.any(ActiveSupport::TimeWithZone, Date, Time)),
16
+ queue: T.nilable(T.any(String, Symbol)),
17
+ priority: T.nilable(Integer)
18
+ ).returns(T.self_type)
19
+ end
20
+ def self.set(wait: nil, wait_until: nil, queue: nil, priority: nil); end
21
+ end
@@ -0,0 +1,6 @@
1
+ # typed: strong
2
+ # == Custom Generator ==
3
+ # This is an autogenerated file for Rails' mailers.
4
+ # Please rerun bundle exec rake rails_rbi:mailers to regenerate.
5
+ class ApplicationMailer
6
+ end
@@ -0,0 +1,21 @@
1
+ # typed: strong
2
+ # == Custom Generator ==
3
+ # This is an autogenerated file for Rails' jobs.
4
+ # Please rerun bundle exec rake rails_rbi:jobs to regenerate.
5
+ class AwardHousePointHourglasses
6
+ sig { params(student: Wizard, point: Integer).returns(AwardHousePointHourglasses) }
7
+ def self.perform_later(student:, point:); end
8
+
9
+ sig { params(student: Wizard, point: Integer).returns(AwardHousePointHourglasses) }
10
+ def self.perform_now(student:, point:); end
11
+
12
+ sig do
13
+ params(
14
+ wait: T.nilable(ActiveSupport::Duration),
15
+ wait_until: T.nilable(T.any(ActiveSupport::TimeWithZone, Date, Time)),
16
+ queue: T.nilable(T.any(String, Symbol)),
17
+ priority: T.nilable(Integer)
18
+ ).returns(T.self_type)
19
+ end
20
+ def self.set(wait: nil, wait_until: nil, queue: nil, priority: nil); end
21
+ end
@@ -0,0 +1,8 @@
1
+ # typed: strong
2
+ # == Custom Generator ==
3
+ # This is an autogenerated file for Rails' mailers.
4
+ # Please rerun bundle exec rake rails_rbi:mailers to regenerate.
5
+ class DailyProphetMailer
6
+ sig { params(wizards: T::Array[Wizard], hotnews_only: T::Boolean).returns(ActionMailer::MessageDelivery) }
7
+ def self.notify_subscribers(wizards:, hotnews_only:); end
8
+ end
@@ -0,0 +1,21 @@
1
+ # typed: strong
2
+ # == Custom Generator ==
3
+ # This is an autogenerated file for Rails' mailers.
4
+ # Please rerun bundle exec rake rails_rbi:mailers to regenerate.
5
+ class HogwartsAcceptanceMailer
6
+ sig { params(student: Wizard).returns(ActionMailer::MessageDelivery) }
7
+ def self.notify(student); end
8
+
9
+ sig { params(student: T.untyped).returns(ActionMailer::MessageDelivery) }
10
+ def self.notify_retry(student); end
11
+
12
+ sig do
13
+ params(
14
+ teacher: Wizard,
15
+ note: String,
16
+ student: Wizard,
17
+ special: T::Boolean
18
+ ).returns(ActionMailer::MessageDelivery)
19
+ end
20
+ def self.notify_teacher(teacher, note = nil, student:, special: false); end
21
+ end
@@ -0,0 +1,7 @@
1
+ # typed: strong
2
+ # This is an autogenerated file for Rails' mailers.
3
+ # Please rerun bundle exec rake rails_rbi:mailers to regenerate.
4
+ class DailyProphetMailer
5
+ sig { params(wizards: T::Array[Wizard], hotnews_only: T::Boolean).returns(ActionMailer::MessageDelivery) }
6
+ def self.notify_subscribers(wizards:, hotnews_only:); end
7
+ end