workos 2.10.0 → 2.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +32 -3
  3. data/bin/tapioca +29 -0
  4. data/lib/workos/version.rb +1 -1
  5. data/sorbet/rbi/gems/addressable@2.8.0.rbi +290 -0
  6. data/sorbet/rbi/gems/{ast.rbi → ast@2.4.2.rbi} +27 -22
  7. data/sorbet/rbi/gems/codecov@0.2.12.rbi +55 -0
  8. data/sorbet/rbi/gems/coderay@1.1.3.rbi +8 -0
  9. data/sorbet/rbi/gems/crack@0.4.5.rbi +57 -0
  10. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +185 -0
  11. data/sorbet/rbi/gems/docile@1.3.5.rbi +54 -0
  12. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +82 -0
  13. data/sorbet/rbi/gems/json@2.5.1.rbi +109 -0
  14. data/sorbet/rbi/gems/method_source@1.0.0.rbi +8 -0
  15. data/sorbet/rbi/gems/parallel@1.20.1.rbi +113 -0
  16. data/sorbet/rbi/gems/parser@3.0.1.0.rbi +1187 -0
  17. data/sorbet/rbi/gems/pry@0.14.2.rbi +8 -0
  18. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +146 -0
  19. data/sorbet/rbi/gems/{rainbow.rbi → rainbow@3.0.0.rbi} +90 -55
  20. data/sorbet/rbi/gems/{rake.rbi → rake@13.0.3.rbi} +587 -424
  21. data/sorbet/rbi/gems/rbi@0.0.16.rbi +2118 -0
  22. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +1117 -0
  23. data/sorbet/rbi/gems/{rexml.rbi → rexml@3.2.5.rbi} +587 -506
  24. data/sorbet/rbi/gems/{rspec-core.rbi → rspec-core@3.9.3.rbi} +2321 -1752
  25. data/sorbet/rbi/gems/{rspec-expectations.rbi → rspec-expectations@3.9.4.rbi} +1119 -677
  26. data/sorbet/rbi/gems/{rspec-mocks.rbi → rspec-mocks@3.9.1.rbi} +1327 -933
  27. data/sorbet/rbi/gems/rspec-support@3.9.4.rbi +511 -0
  28. data/sorbet/rbi/gems/rspec@3.9.0.rbi +38 -0
  29. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +1881 -0
  30. data/sorbet/rbi/gems/rubocop@0.93.1.rbi +11497 -0
  31. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +405 -0
  32. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +89 -0
  33. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +577 -0
  34. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.2.rbi +8 -0
  35. data/sorbet/rbi/gems/spoom@1.1.15.rbi +1549 -0
  36. data/sorbet/rbi/gems/tapioca@0.7.3.rbi +1718 -0
  37. data/sorbet/rbi/gems/thor@1.2.1.rbi +844 -0
  38. data/sorbet/rbi/gems/unicode-display_width@1.7.0.rbi +22 -0
  39. data/sorbet/rbi/gems/unparser@0.6.2.rbi +8 -0
  40. data/sorbet/rbi/gems/{vcr.rbi → vcr@5.0.0.rbi} +528 -401
  41. data/sorbet/rbi/gems/webmock@3.12.2.rbi +662 -0
  42. data/sorbet/rbi/gems/yard-sorbet@0.8.0.rbi +268 -0
  43. data/sorbet/rbi/gems/yard@0.9.26.rbi +4048 -0
  44. data/sorbet/tapioca/config.yml +13 -0
  45. data/sorbet/tapioca/require.rb +4 -0
  46. data/workos.gemspec +1 -1
  47. metadata +60 -50
  48. data/sorbet/rbi/gems/addressable.rbi +0 -199
  49. data/sorbet/rbi/gems/codecov.rbi +0 -37
  50. data/sorbet/rbi/gems/crack.rbi +0 -62
  51. data/sorbet/rbi/gems/docile.rbi +0 -36
  52. data/sorbet/rbi/gems/hashdiff.rbi +0 -66
  53. data/sorbet/rbi/gems/parallel.rbi +0 -83
  54. data/sorbet/rbi/gems/parser.rbi +0 -1429
  55. data/sorbet/rbi/gems/public_suffix.rbi +0 -104
  56. data/sorbet/rbi/gems/regexp_parser.rbi +0 -926
  57. data/sorbet/rbi/gems/rspec-support.rbi +0 -280
  58. data/sorbet/rbi/gems/rspec.rbi +0 -15
  59. data/sorbet/rbi/gems/rubocop-ast.rbi +0 -1355
  60. data/sorbet/rbi/gems/rubocop.rbi +0 -7253
  61. data/sorbet/rbi/gems/ruby-progressbar.rbi +0 -304
  62. data/sorbet/rbi/gems/simplecov-html.rbi +0 -35
  63. data/sorbet/rbi/gems/simplecov.rbi +0 -406
  64. data/sorbet/rbi/gems/unicode-display_width.rbi +0 -17
  65. data/sorbet/rbi/gems/webmock.rbi +0 -556
  66. data/sorbet/rbi/gems/yard.rbi +0 -1165
  67. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +0 -276
  68. data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +0 -645
  69. data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +0 -1891
  70. data/sorbet/rbi/sorbet-typed/lib/rubocop/~>0.85/rubocop.rbi +0 -2072
  71. data/sorbet/rbi/sorbet-typed/lib/yard/all/yard.rbi +0 -1214
  72. data/sorbet/rbi/todo.rbi +0 -5
@@ -0,0 +1,1549 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `spoom` gem.
5
+ # Please instead update this file by running `bin/tapioca gem spoom`.
6
+
7
+ module Spoom
8
+ class << self
9
+ sig { params(cmd: ::String, arg: ::String, path: ::String, capture_err: T::Boolean).returns(::Spoom::ExecResult) }
10
+ def exec(cmd, *arg, path: T.unsafe(nil), capture_err: T.unsafe(nil)); end
11
+ end
12
+ end
13
+
14
+ module Spoom::Cli; end
15
+
16
+ class Spoom::Cli::Bump < ::Thor
17
+ include ::Spoom::Colorize
18
+ include ::Spoom::Cli::Helper
19
+
20
+ sig { params(directory: ::String).void }
21
+ def bump(directory = T.unsafe(nil)); end
22
+
23
+ def config_files(path: T.unsafe(nil)); end
24
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
25
+ def print_changes(files, command:, from: T.unsafe(nil), to: T.unsafe(nil), dry: T.unsafe(nil), path: T.unsafe(nil)); end
26
+ def undo_changes(files, from_strictness); end
27
+ end
28
+
29
+ class Spoom::Cli::Config < ::Thor
30
+ include ::Spoom::Colorize
31
+ include ::Spoom::Cli::Helper
32
+
33
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
34
+ def show; end
35
+ end
36
+
37
+ class Spoom::Cli::Coverage < ::Thor
38
+ include ::Spoom::Colorize
39
+ include ::Spoom::Cli::Helper
40
+
41
+ def bundle_install(path, sha); end
42
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
43
+ def message_no_data(file); end
44
+ def open(file = T.unsafe(nil)); end
45
+ def parse_time(string, option); end
46
+ def report; end
47
+ def snapshot; end
48
+ def timeline; end
49
+ end
50
+
51
+ Spoom::Cli::Coverage::DATA_DIR = T.let(T.unsafe(nil), String)
52
+
53
+ module Spoom::Cli::Helper
54
+ include ::Spoom::Colorize
55
+
56
+ requires_ancestor { Thor }
57
+
58
+ sig { params(string: ::String).returns(::String) }
59
+ def blue(string); end
60
+
61
+ sig { params(exit_code: ::Integer, block: T.nilable(T.proc.void)).void }
62
+ def check_sorbet_segfault(exit_code, &block); end
63
+
64
+ sig { returns(T::Boolean) }
65
+ def color?; end
66
+
67
+ sig { params(string: ::String, color: ::Spoom::Color).returns(::String) }
68
+ def colorize(string, *color); end
69
+
70
+ sig { params(string: ::String).returns(::String) }
71
+ def cyan(string); end
72
+
73
+ sig { returns(::String) }
74
+ def exec_path; end
75
+
76
+ sig { params(string: ::String).returns(::String) }
77
+ def gray(string); end
78
+
79
+ sig { params(string: ::String).returns(::String) }
80
+ def green(string); end
81
+
82
+ sig { params(string: ::String).returns(::String) }
83
+ def highlight(string); end
84
+
85
+ sig { void }
86
+ def in_sorbet_project!; end
87
+
88
+ sig { returns(T::Boolean) }
89
+ def in_sorbet_project?; end
90
+
91
+ sig { params(string: ::String).returns(::String) }
92
+ def red(string); end
93
+
94
+ sig { params(message: ::String).void }
95
+ def say(message); end
96
+
97
+ sig { params(message: ::String, status: T.nilable(::String), nl: T::Boolean).void }
98
+ def say_error(message, status: T.unsafe(nil), nl: T.unsafe(nil)); end
99
+
100
+ sig { returns(::Spoom::Sorbet::Config) }
101
+ def sorbet_config; end
102
+
103
+ sig { returns(::String) }
104
+ def sorbet_config_file; end
105
+
106
+ sig { params(string: ::String).returns(::String) }
107
+ def yellow(string); end
108
+ end
109
+
110
+ class Spoom::Cli::LSP < ::Thor
111
+ include ::Spoom::Colorize
112
+ include ::Spoom::Cli::Helper
113
+
114
+ def defs(file, line, col); end
115
+ def find(query); end
116
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
117
+ def hover(file, line, col); end
118
+ def list; end
119
+ def lsp_client; end
120
+ def refs(file, line, col); end
121
+ def run(&block); end
122
+ def show; end
123
+ def sigs(file, line, col); end
124
+ def symbol_printer; end
125
+ def symbols(file); end
126
+ def to_uri(path); end
127
+ def types(file, line, col); end
128
+ end
129
+
130
+ class Spoom::Cli::Main < ::Thor
131
+ include ::Spoom::Colorize
132
+ include ::Spoom::Cli::Helper
133
+
134
+ def __print_version; end
135
+ def bump(*args); end
136
+ def config(*args); end
137
+ def coverage(*args); end
138
+ def files; end
139
+ def lsp(*args); end
140
+ def tc(*args); end
141
+
142
+ class << self
143
+ def exit_on_failure?; end
144
+ end
145
+ end
146
+
147
+ class Spoom::Cli::Run < ::Thor
148
+ include ::Spoom::Colorize
149
+ include ::Spoom::Cli::Helper
150
+
151
+ def colorize_message(message); end
152
+ def format_error(error, format); end
153
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
154
+ def tc(*paths_to_select); end
155
+ end
156
+
157
+ Spoom::Cli::Run::DEFAULT_FORMAT = T.let(T.unsafe(nil), String)
158
+ Spoom::Cli::Run::SORT_CODE = T.let(T.unsafe(nil), String)
159
+ Spoom::Cli::Run::SORT_ENUM = T.let(T.unsafe(nil), Array)
160
+ Spoom::Cli::Run::SORT_LOC = T.let(T.unsafe(nil), String)
161
+
162
+ class Spoom::Color < ::T::Enum
163
+ enums do
164
+ CLEAR = new
165
+ BOLD = new
166
+ BLACK = new
167
+ RED = new
168
+ GREEN = new
169
+ YELLOW = new
170
+ BLUE = new
171
+ MAGENTA = new
172
+ CYAN = new
173
+ WHITE = new
174
+ LIGHT_BLACK = new
175
+ LIGHT_RED = new
176
+ LIGHT_GREEN = new
177
+ LIGHT_YELLOW = new
178
+ LIGHT_BLUE = new
179
+ LIGHT_MAGENTA = new
180
+ LIGHT_CYAN = new
181
+ LIGHT_WHITE = new
182
+ end
183
+
184
+ sig { returns(::String) }
185
+ def ansi_code; end
186
+ end
187
+
188
+ module Spoom::Colorize
189
+ sig { params(string: ::String, color: ::Spoom::Color).returns(::String) }
190
+ def set_color(string, *color); end
191
+ end
192
+
193
+ class Spoom::Context
194
+ sig { params(absolute_path: ::String).void }
195
+ def initialize(absolute_path); end
196
+
197
+ sig { returns(::String) }
198
+ def absolute_path; end
199
+
200
+ sig { params(relative_path: ::String).returns(::String) }
201
+ def absolute_path_to(relative_path); end
202
+
203
+ sig { params(command: ::String, version: T.nilable(::String)).returns(::Spoom::ExecResult) }
204
+ def bundle(command, version: T.unsafe(nil)); end
205
+
206
+ sig { params(command: ::String, version: T.nilable(::String)).returns(::Spoom::ExecResult) }
207
+ def bundle_exec(command, version: T.unsafe(nil)); end
208
+
209
+ sig { params(version: T.nilable(::String)).returns(::Spoom::ExecResult) }
210
+ def bundle_install!(version: T.unsafe(nil)); end
211
+
212
+ sig { void }
213
+ def destroy!; end
214
+
215
+ sig { params(command: ::String, capture_err: T::Boolean).returns(::Spoom::ExecResult) }
216
+ def exec(command, capture_err: T.unsafe(nil)); end
217
+
218
+ sig { returns(T::Boolean) }
219
+ def exist?; end
220
+
221
+ sig { params(relative_path: ::String).returns(T::Boolean) }
222
+ def file?(relative_path); end
223
+
224
+ sig { params(command: ::String).returns(::Spoom::ExecResult) }
225
+ def git(command); end
226
+
227
+ sig { params(ref: ::String).returns(::Spoom::ExecResult) }
228
+ def git_checkout!(ref: T.unsafe(nil)); end
229
+
230
+ sig { returns(T.nilable(::String)) }
231
+ def git_current_branch; end
232
+
233
+ sig { params(branch: ::String).void }
234
+ def git_init!(branch: T.unsafe(nil)); end
235
+
236
+ sig { params(short_sha: T::Boolean).returns(T.nilable(::Spoom::Git::Commit)) }
237
+ def git_last_commit(short_sha: T.unsafe(nil)); end
238
+
239
+ sig { params(pattern: ::String).returns(T::Array[::String]) }
240
+ def glob(pattern = T.unsafe(nil)); end
241
+
242
+ sig { returns(T::Array[::String]) }
243
+ def list; end
244
+
245
+ sig { void }
246
+ def mkdir!; end
247
+
248
+ sig { params(from_relative_path: ::String, to_relative_path: ::String).void }
249
+ def move!(from_relative_path, to_relative_path); end
250
+
251
+ sig { params(relative_path: ::String).returns(::String) }
252
+ def read(relative_path); end
253
+
254
+ sig { params(relative_path: ::String).returns(T.nilable(::String)) }
255
+ def read_file_strictness(relative_path); end
256
+
257
+ sig { returns(T.nilable(::String)) }
258
+ def read_gemfile; end
259
+
260
+ sig { returns(::String) }
261
+ def read_sorbet_config; end
262
+
263
+ sig { params(relative_path: ::String).void }
264
+ def remove!(relative_path); end
265
+
266
+ sig { params(command: ::String).returns(::Spoom::ExecResult) }
267
+ def srb(command); end
268
+
269
+ sig { params(relative_path: ::String, contents: ::String, append: T::Boolean).void }
270
+ def write!(relative_path, contents = T.unsafe(nil), append: T.unsafe(nil)); end
271
+
272
+ sig { params(contents: ::String, append: T::Boolean).void }
273
+ def write_gemfile!(contents, append: T.unsafe(nil)); end
274
+
275
+ sig { params(contents: ::String, append: T::Boolean).void }
276
+ def write_sorbet_config!(contents, append: T.unsafe(nil)); end
277
+
278
+ class << self
279
+ sig { params(name: T.nilable(::String)).returns(T.attached_class) }
280
+ def mktmp!(name = T.unsafe(nil)); end
281
+ end
282
+ end
283
+
284
+ module Spoom::Coverage
285
+ class << self
286
+ sig do
287
+ params(
288
+ snapshots: T::Array[::Spoom::Coverage::Snapshot],
289
+ palette: ::Spoom::Coverage::D3::ColorPalette,
290
+ path: ::String
291
+ ).returns(::Spoom::Coverage::Report)
292
+ end
293
+ def report(snapshots, palette:, path: T.unsafe(nil)); end
294
+
295
+ sig { params(path: ::String).returns(::Spoom::FileTree) }
296
+ def sigils_tree(path: T.unsafe(nil)); end
297
+
298
+ sig do
299
+ params(
300
+ path: ::String,
301
+ rbi: T::Boolean,
302
+ sorbet_bin: T.nilable(::String)
303
+ ).returns(::Spoom::Coverage::Snapshot)
304
+ end
305
+ def snapshot(path: T.unsafe(nil), rbi: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
306
+
307
+ sig { params(path: ::String).returns(::Spoom::Sorbet::Config) }
308
+ def sorbet_config(path: T.unsafe(nil)); end
309
+ end
310
+ end
311
+
312
+ module Spoom::Coverage::Cards; end
313
+
314
+ class Spoom::Coverage::Cards::Card < ::Spoom::Coverage::Template
315
+ sig { params(template: ::String, title: T.nilable(::String), body: T.nilable(::String)).void }
316
+ def initialize(template: T.unsafe(nil), title: T.unsafe(nil), body: T.unsafe(nil)); end
317
+
318
+ def body; end
319
+
320
+ sig { returns(T.nilable(::String)) }
321
+ def title; end
322
+ end
323
+
324
+ Spoom::Coverage::Cards::Card::TEMPLATE = T.let(T.unsafe(nil), String)
325
+
326
+ class Spoom::Coverage::Cards::Erb < ::Spoom::Coverage::Cards::Card
327
+ abstract!
328
+
329
+ sig { void }
330
+ def initialize; end
331
+
332
+ sig { abstract.returns(::String) }
333
+ def erb; end
334
+
335
+ sig { override.returns(::String) }
336
+ def html; end
337
+ end
338
+
339
+ class Spoom::Coverage::Cards::Map < ::Spoom::Coverage::Cards::Card
340
+ sig { params(sigils_tree: ::Spoom::FileTree, title: ::String).void }
341
+ def initialize(sigils_tree:, title: T.unsafe(nil)); end
342
+ end
343
+
344
+ class Spoom::Coverage::Cards::Snapshot < ::Spoom::Coverage::Cards::Card
345
+ sig { params(snapshot: ::Spoom::Coverage::Snapshot, title: ::String).void }
346
+ def initialize(snapshot:, title: T.unsafe(nil)); end
347
+
348
+ sig { returns(::Spoom::Coverage::D3::Pie::Calls) }
349
+ def pie_calls; end
350
+
351
+ sig { returns(::Spoom::Coverage::D3::Pie::Sigils) }
352
+ def pie_sigils; end
353
+
354
+ sig { returns(::Spoom::Coverage::D3::Pie::Sigs) }
355
+ def pie_sigs; end
356
+
357
+ sig { returns(::Spoom::Coverage::Snapshot) }
358
+ def snapshot; end
359
+ end
360
+
361
+ Spoom::Coverage::Cards::Snapshot::TEMPLATE = T.let(T.unsafe(nil), String)
362
+
363
+ class Spoom::Coverage::Cards::SorbetIntro < ::Spoom::Coverage::Cards::Erb
364
+ sig { params(sorbet_intro_commit: T.nilable(::String), sorbet_intro_date: T.nilable(::Time)).void }
365
+ def initialize(sorbet_intro_commit: T.unsafe(nil), sorbet_intro_date: T.unsafe(nil)); end
366
+
367
+ sig { override.returns(::String) }
368
+ def erb; end
369
+ end
370
+
371
+ class Spoom::Coverage::Cards::Timeline < ::Spoom::Coverage::Cards::Card
372
+ sig { params(title: ::String, timeline: ::Spoom::Coverage::D3::Timeline).void }
373
+ def initialize(title:, timeline:); end
374
+ end
375
+
376
+ class Spoom::Coverage::Cards::Timeline::Calls < ::Spoom::Coverage::Cards::Timeline
377
+ sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
378
+ def initialize(snapshots:, title: T.unsafe(nil)); end
379
+ end
380
+
381
+ class Spoom::Coverage::Cards::Timeline::RBIs < ::Spoom::Coverage::Cards::Timeline
382
+ sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
383
+ def initialize(snapshots:, title: T.unsafe(nil)); end
384
+ end
385
+
386
+ class Spoom::Coverage::Cards::Timeline::Runtimes < ::Spoom::Coverage::Cards::Timeline
387
+ sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
388
+ def initialize(snapshots:, title: T.unsafe(nil)); end
389
+ end
390
+
391
+ class Spoom::Coverage::Cards::Timeline::Sigils < ::Spoom::Coverage::Cards::Timeline
392
+ sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
393
+ def initialize(snapshots:, title: T.unsafe(nil)); end
394
+ end
395
+
396
+ class Spoom::Coverage::Cards::Timeline::Sigs < ::Spoom::Coverage::Cards::Timeline
397
+ sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
398
+ def initialize(snapshots:, title: T.unsafe(nil)); end
399
+ end
400
+
401
+ class Spoom::Coverage::Cards::Timeline::Versions < ::Spoom::Coverage::Cards::Timeline
402
+ sig { params(snapshots: T::Array[::Spoom::Coverage::Snapshot], title: ::String).void }
403
+ def initialize(snapshots:, title: T.unsafe(nil)); end
404
+ end
405
+
406
+ module Spoom::Coverage::D3
407
+ class << self
408
+ sig { params(palette: ::Spoom::Coverage::D3::ColorPalette).returns(::String) }
409
+ def header_script(palette); end
410
+
411
+ sig { returns(::String) }
412
+ def header_style; end
413
+ end
414
+ end
415
+
416
+ class Spoom::Coverage::D3::Base
417
+ abstract!
418
+
419
+ sig { params(id: ::String, data: T.untyped).void }
420
+ def initialize(id, data); end
421
+
422
+ sig { returns(::String) }
423
+ def html; end
424
+
425
+ sig { returns(::String) }
426
+ def id; end
427
+
428
+ sig { abstract.returns(::String) }
429
+ def script; end
430
+
431
+ sig { returns(::String) }
432
+ def tooltip; end
433
+
434
+ class << self
435
+ sig { returns(::String) }
436
+ def header_script; end
437
+
438
+ sig { returns(::String) }
439
+ def header_style; end
440
+ end
441
+ end
442
+
443
+ Spoom::Coverage::D3::COLOR_FALSE = T.let(T.unsafe(nil), String)
444
+ Spoom::Coverage::D3::COLOR_IGNORE = T.let(T.unsafe(nil), String)
445
+ Spoom::Coverage::D3::COLOR_STRICT = T.let(T.unsafe(nil), String)
446
+ Spoom::Coverage::D3::COLOR_STRONG = T.let(T.unsafe(nil), String)
447
+ Spoom::Coverage::D3::COLOR_TRUE = T.let(T.unsafe(nil), String)
448
+
449
+ class Spoom::Coverage::D3::CircleMap < ::Spoom::Coverage::D3::Base
450
+ sig { override.returns(::String) }
451
+ def script; end
452
+
453
+ class << self
454
+ sig { returns(::String) }
455
+ def header_script; end
456
+
457
+ sig { returns(::String) }
458
+ def header_style; end
459
+ end
460
+ end
461
+
462
+ class Spoom::Coverage::D3::CircleMap::Sigils < ::Spoom::Coverage::D3::CircleMap
463
+ sig { params(id: ::String, sigils_tree: ::Spoom::FileTree).void }
464
+ def initialize(id, sigils_tree); end
465
+
466
+ sig { params(node: ::Spoom::FileTree::Node).returns(::Float) }
467
+ def tree_node_score(node); end
468
+
469
+ sig { params(node: ::Spoom::FileTree::Node).returns(T.nilable(::String)) }
470
+ def tree_node_strictness(node); end
471
+
472
+ sig { params(node: ::Spoom::FileTree::Node).returns(T::Hash[::Symbol, T.untyped]) }
473
+ def tree_node_to_json(node); end
474
+ end
475
+
476
+ class Spoom::Coverage::D3::ColorPalette < ::T::Struct
477
+ prop :ignore, ::String
478
+ prop :false, ::String
479
+ prop :true, ::String
480
+ prop :strict, ::String
481
+ prop :strong, ::String
482
+
483
+ class << self
484
+ def inherited(s); end
485
+ end
486
+ end
487
+
488
+ class Spoom::Coverage::D3::Pie < ::Spoom::Coverage::D3::Base
489
+ abstract!
490
+
491
+ sig { params(id: ::String, title: ::String, data: T.untyped).void }
492
+ def initialize(id, title, data); end
493
+
494
+ sig { override.returns(::String) }
495
+ def script; end
496
+
497
+ class << self
498
+ sig { returns(::String) }
499
+ def header_script; end
500
+
501
+ sig { returns(::String) }
502
+ def header_style; end
503
+ end
504
+ end
505
+
506
+ class Spoom::Coverage::D3::Pie::Calls < ::Spoom::Coverage::D3::Pie
507
+ sig { params(id: ::String, title: ::String, snapshot: ::Spoom::Coverage::Snapshot).void }
508
+ def initialize(id, title, snapshot); end
509
+
510
+ sig { override.returns(::String) }
511
+ def tooltip; end
512
+ end
513
+
514
+ class Spoom::Coverage::D3::Pie::Sigils < ::Spoom::Coverage::D3::Pie
515
+ sig { params(id: ::String, title: ::String, snapshot: ::Spoom::Coverage::Snapshot).void }
516
+ def initialize(id, title, snapshot); end
517
+
518
+ sig { override.returns(::String) }
519
+ def tooltip; end
520
+ end
521
+
522
+ class Spoom::Coverage::D3::Pie::Sigs < ::Spoom::Coverage::D3::Pie
523
+ sig { params(id: ::String, title: ::String, snapshot: ::Spoom::Coverage::Snapshot).void }
524
+ def initialize(id, title, snapshot); end
525
+
526
+ sig { override.returns(::String) }
527
+ def tooltip; end
528
+ end
529
+
530
+ class Spoom::Coverage::D3::Timeline < ::Spoom::Coverage::D3::Base
531
+ abstract!
532
+
533
+ sig { params(id: ::String, data: T.untyped, keys: T::Array[::String]).void }
534
+ def initialize(id, data, keys); end
535
+
536
+ sig { params(y: ::String, color: ::String, curve: ::String).returns(::String) }
537
+ def area(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
538
+
539
+ sig { params(y: ::String, color: ::String, curve: ::String).returns(::String) }
540
+ def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
541
+
542
+ sig { abstract.returns(::String) }
543
+ def plot; end
544
+
545
+ sig { params(y: ::String).returns(::String) }
546
+ def points(y:); end
547
+
548
+ sig { override.returns(::String) }
549
+ def script; end
550
+
551
+ sig { returns(::String) }
552
+ def x_scale; end
553
+
554
+ sig { returns(::String) }
555
+ def x_ticks; end
556
+
557
+ sig { params(min: ::String, max: ::String, ticks: ::String).returns(::String) }
558
+ def y_scale(min:, max:, ticks:); end
559
+
560
+ sig { params(ticks: ::String, format: ::String, padding: ::Integer).returns(::String) }
561
+ def y_ticks(ticks:, format:, padding:); end
562
+
563
+ class << self
564
+ sig { returns(::String) }
565
+ def header_script; end
566
+
567
+ sig { returns(::String) }
568
+ def header_style; end
569
+ end
570
+ end
571
+
572
+ class Spoom::Coverage::D3::Timeline::Calls < ::Spoom::Coverage::D3::Timeline::Stacked
573
+ sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
574
+ def initialize(id, snapshots); end
575
+
576
+ sig { override.returns(::String) }
577
+ def tooltip; end
578
+ end
579
+
580
+ class Spoom::Coverage::D3::Timeline::RBIs < ::Spoom::Coverage::D3::Timeline::Stacked
581
+ sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
582
+ def initialize(id, snapshots); end
583
+
584
+ sig { override.params(y: ::String, color: ::String, curve: ::String).returns(::String) }
585
+ def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
586
+
587
+ sig { override.returns(::String) }
588
+ def plot; end
589
+
590
+ sig { override.returns(::String) }
591
+ def script; end
592
+
593
+ sig { override.returns(::String) }
594
+ def tooltip; end
595
+ end
596
+
597
+ class Spoom::Coverage::D3::Timeline::Runtimes < ::Spoom::Coverage::D3::Timeline
598
+ sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
599
+ def initialize(id, snapshots); end
600
+
601
+ sig { override.returns(::String) }
602
+ def plot; end
603
+
604
+ sig { override.returns(::String) }
605
+ def tooltip; end
606
+ end
607
+
608
+ class Spoom::Coverage::D3::Timeline::Sigils < ::Spoom::Coverage::D3::Timeline::Stacked
609
+ sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
610
+ def initialize(id, snapshots); end
611
+
612
+ sig { override.returns(::String) }
613
+ def tooltip; end
614
+ end
615
+
616
+ class Spoom::Coverage::D3::Timeline::Sigs < ::Spoom::Coverage::D3::Timeline::Stacked
617
+ sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
618
+ def initialize(id, snapshots); end
619
+
620
+ sig { override.returns(::String) }
621
+ def tooltip; end
622
+ end
623
+
624
+ class Spoom::Coverage::D3::Timeline::Stacked < ::Spoom::Coverage::D3::Timeline
625
+ abstract!
626
+
627
+ def initialize(*args, **_arg1, &blk); end
628
+
629
+ sig { override.params(y: ::String, color: ::String, curve: ::String).returns(::String) }
630
+ def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
631
+
632
+ sig { override.returns(::String) }
633
+ def plot; end
634
+
635
+ sig { override.returns(::String) }
636
+ def script; end
637
+ end
638
+
639
+ class Spoom::Coverage::D3::Timeline::Versions < ::Spoom::Coverage::D3::Timeline
640
+ sig { params(id: ::String, snapshots: T::Array[::Spoom::Coverage::Snapshot]).void }
641
+ def initialize(id, snapshots); end
642
+
643
+ sig { override.returns(::String) }
644
+ def plot; end
645
+
646
+ sig { override.returns(::String) }
647
+ def tooltip; end
648
+ end
649
+
650
+ class Spoom::Coverage::Page < ::Spoom::Coverage::Template
651
+ abstract!
652
+
653
+ sig { params(title: ::String, palette: ::Spoom::Coverage::D3::ColorPalette, template: ::String).void }
654
+ def initialize(title:, palette:, template: T.unsafe(nil)); end
655
+
656
+ sig { returns(::String) }
657
+ def body_html; end
658
+
659
+ sig { abstract.returns(T::Array[::Spoom::Coverage::Cards::Card]) }
660
+ def cards; end
661
+
662
+ sig { returns(::String) }
663
+ def footer_html; end
664
+
665
+ sig { returns(::String) }
666
+ def header_html; end
667
+
668
+ sig { returns(::String) }
669
+ def header_script; end
670
+
671
+ sig { returns(::String) }
672
+ def header_style; end
673
+
674
+ sig { returns(::Spoom::Coverage::D3::ColorPalette) }
675
+ def palette; end
676
+
677
+ sig { returns(::String) }
678
+ def title; end
679
+ end
680
+
681
+ Spoom::Coverage::Page::TEMPLATE = T.let(T.unsafe(nil), String)
682
+
683
+ class Spoom::Coverage::Report < ::Spoom::Coverage::Page
684
+ sig do
685
+ params(
686
+ project_name: ::String,
687
+ palette: ::Spoom::Coverage::D3::ColorPalette,
688
+ snapshots: T::Array[::Spoom::Coverage::Snapshot],
689
+ sigils_tree: ::Spoom::FileTree,
690
+ sorbet_intro_commit: T.nilable(::String),
691
+ sorbet_intro_date: T.nilable(::Time)
692
+ ).void
693
+ end
694
+ def initialize(project_name:, palette:, snapshots:, sigils_tree:, sorbet_intro_commit: T.unsafe(nil), sorbet_intro_date: T.unsafe(nil)); end
695
+
696
+ sig { override.returns(T::Array[::Spoom::Coverage::Cards::Card]) }
697
+ def cards; end
698
+
699
+ sig { override.returns(::String) }
700
+ def header_html; end
701
+
702
+ sig { returns(::String) }
703
+ def project_name; end
704
+
705
+ sig { returns(::Spoom::FileTree) }
706
+ def sigils_tree; end
707
+
708
+ sig { returns(T::Array[::Spoom::Coverage::Snapshot]) }
709
+ def snapshots; end
710
+
711
+ sig { returns(T.nilable(::String)) }
712
+ def sorbet_intro_commit; end
713
+
714
+ sig { returns(T.nilable(::Time)) }
715
+ def sorbet_intro_date; end
716
+ end
717
+
718
+ class Spoom::Coverage::Snapshot < ::T::Struct
719
+ prop :timestamp, ::Integer, default: T.unsafe(nil)
720
+ prop :version_static, T.nilable(::String), default: T.unsafe(nil)
721
+ prop :version_runtime, T.nilable(::String), default: T.unsafe(nil)
722
+ prop :duration, ::Integer, default: T.unsafe(nil)
723
+ prop :commit_sha, T.nilable(::String), default: T.unsafe(nil)
724
+ prop :commit_timestamp, T.nilable(::Integer), default: T.unsafe(nil)
725
+ prop :files, ::Integer, default: T.unsafe(nil)
726
+ prop :rbi_files, ::Integer, default: T.unsafe(nil)
727
+ prop :modules, ::Integer, default: T.unsafe(nil)
728
+ prop :classes, ::Integer, default: T.unsafe(nil)
729
+ prop :singleton_classes, ::Integer, default: T.unsafe(nil)
730
+ prop :methods_without_sig, ::Integer, default: T.unsafe(nil)
731
+ prop :methods_with_sig, ::Integer, default: T.unsafe(nil)
732
+ prop :calls_untyped, ::Integer, default: T.unsafe(nil)
733
+ prop :calls_typed, ::Integer, default: T.unsafe(nil)
734
+ prop :sigils, T::Hash[::String, ::Integer], default: T.unsafe(nil)
735
+ prop :methods_with_sig_excluding_rbis, ::Integer, default: T.unsafe(nil)
736
+ prop :methods_without_sig_excluding_rbis, ::Integer, default: T.unsafe(nil)
737
+ prop :sigils_excluding_rbis, T::Hash[::String, ::Integer], default: T.unsafe(nil)
738
+
739
+ sig { params(out: T.any(::IO, ::StringIO), colors: T::Boolean, indent_level: ::Integer).void }
740
+ def print(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
741
+
742
+ sig { params(arg: T.untyped).returns(::String) }
743
+ def to_json(*arg); end
744
+
745
+ class << self
746
+ sig { params(json: ::String).returns(::Spoom::Coverage::Snapshot) }
747
+ def from_json(json); end
748
+
749
+ sig { params(obj: T::Hash[::String, T.untyped]).returns(::Spoom::Coverage::Snapshot) }
750
+ def from_obj(obj); end
751
+
752
+ def inherited(s); end
753
+ end
754
+ end
755
+
756
+ Spoom::Coverage::Snapshot::STRICTNESSES = T.let(T.unsafe(nil), Array)
757
+
758
+ class Spoom::Coverage::SnapshotPrinter < ::Spoom::Printer
759
+ sig { params(snapshot: ::Spoom::Coverage::Snapshot).void }
760
+ def print_snapshot(snapshot); end
761
+
762
+ private
763
+
764
+ sig { params(value: T.nilable(::Integer), total: T.nilable(::Integer)).returns(::String) }
765
+ def percent(value, total); end
766
+
767
+ sig { params(hash: T::Hash[::String, ::Integer], total: ::Integer).void }
768
+ def print_map(hash, total); end
769
+ end
770
+
771
+ class Spoom::Coverage::Template
772
+ abstract!
773
+
774
+ sig { params(template: ::String).void }
775
+ def initialize(template:); end
776
+
777
+ sig { returns(::String) }
778
+ def erb; end
779
+
780
+ sig { returns(::Binding) }
781
+ def get_binding; end
782
+
783
+ sig { returns(::String) }
784
+ def html; end
785
+ end
786
+
787
+ class Spoom::Error < ::StandardError; end
788
+
789
+ class Spoom::ExecResult < ::T::Struct
790
+ const :out, ::String
791
+ const :err, ::String
792
+ const :status, T::Boolean
793
+ const :exit_code, ::Integer
794
+
795
+ sig { returns(::String) }
796
+ def to_s; end
797
+
798
+ class << self
799
+ def inherited(s); end
800
+ end
801
+ end
802
+
803
+ class Spoom::FileTree
804
+ sig { params(paths: T::Enumerable[::String], strip_prefix: T.nilable(::String)).void }
805
+ def initialize(paths = T.unsafe(nil), strip_prefix: T.unsafe(nil)); end
806
+
807
+ sig { params(path: ::String).returns(::Spoom::FileTree::Node) }
808
+ def add_path(path); end
809
+
810
+ sig { params(paths: T::Enumerable[::String]).void }
811
+ def add_paths(paths); end
812
+
813
+ sig { returns(T::Array[::Spoom::FileTree::Node]) }
814
+ def nodes; end
815
+
816
+ sig { returns(T::Array[::String]) }
817
+ def paths; end
818
+
819
+ sig do
820
+ params(
821
+ out: T.any(::IO, ::StringIO),
822
+ show_strictness: T::Boolean,
823
+ colors: T::Boolean,
824
+ indent_level: ::Integer
825
+ ).void
826
+ end
827
+ def print(out: T.unsafe(nil), show_strictness: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
828
+
829
+ sig { returns(T::Array[::Spoom::FileTree::Node]) }
830
+ def roots; end
831
+
832
+ sig { returns(T.nilable(::String)) }
833
+ def strip_prefix; end
834
+
835
+ private
836
+
837
+ sig do
838
+ params(
839
+ node: ::Spoom::FileTree::Node,
840
+ collected_nodes: T::Array[::Spoom::FileTree::Node]
841
+ ).returns(T::Array[::Spoom::FileTree::Node])
842
+ end
843
+ def collect_nodes(node, collected_nodes = T.unsafe(nil)); end
844
+ end
845
+
846
+ class Spoom::FileTree::Node < ::T::Struct
847
+ const :parent, T.nilable(::Spoom::FileTree::Node)
848
+ const :name, ::String
849
+ const :children, T::Hash[::String, ::Spoom::FileTree::Node], default: T.unsafe(nil)
850
+
851
+ sig { returns(::String) }
852
+ def path; end
853
+
854
+ class << self
855
+ def inherited(s); end
856
+ end
857
+ end
858
+
859
+ class Spoom::FileTree::TreePrinter < ::Spoom::Printer
860
+ sig do
861
+ params(
862
+ tree: ::Spoom::FileTree,
863
+ out: T.any(::IO, ::StringIO),
864
+ show_strictness: T::Boolean,
865
+ colors: T::Boolean,
866
+ indent_level: ::Integer
867
+ ).void
868
+ end
869
+ def initialize(tree:, out: T.unsafe(nil), show_strictness: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
870
+
871
+ sig { params(node: ::Spoom::FileTree::Node).void }
872
+ def print_node(node); end
873
+
874
+ sig { params(nodes: T::Array[::Spoom::FileTree::Node]).void }
875
+ def print_nodes(nodes); end
876
+
877
+ sig { void }
878
+ def print_tree; end
879
+
880
+ sig { returns(::Spoom::FileTree) }
881
+ def tree; end
882
+
883
+ private
884
+
885
+ sig { params(node: ::Spoom::FileTree::Node).returns(T.nilable(::String)) }
886
+ def node_strictness(node); end
887
+
888
+ sig { params(strictness: T.nilable(::String)).returns(::Spoom::Color) }
889
+ def strictness_color(strictness); end
890
+ end
891
+
892
+ module Spoom::Git
893
+ class << self
894
+ sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
895
+ def checkout(*arg, path: T.unsafe(nil)); end
896
+
897
+ sig { params(path: ::String).returns(T.nilable(::String)) }
898
+ def current_branch(path: T.unsafe(nil)); end
899
+
900
+ sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
901
+ def diff(*arg, path: T.unsafe(nil)); end
902
+
903
+ sig { params(command: ::String, arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
904
+ def exec(command, *arg, path: T.unsafe(nil)); end
905
+
906
+ sig { params(path: ::String, short_sha: T::Boolean).returns(T.nilable(::Spoom::Git::Commit)) }
907
+ def last_commit(path: T.unsafe(nil), short_sha: T.unsafe(nil)); end
908
+
909
+ sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
910
+ def log(*arg, path: T.unsafe(nil)); end
911
+
912
+ sig { params(string: ::String).returns(T.nilable(::Spoom::Git::Commit)) }
913
+ def parse_commit(string); end
914
+
915
+ sig { params(arg: ::String, path: ::String).returns(::Spoom::ExecResult) }
916
+ def show(*arg, path: T.unsafe(nil)); end
917
+
918
+ sig { params(path: ::String).returns(T.nilable(::Spoom::Git::Commit)) }
919
+ def sorbet_intro_commit(path: T.unsafe(nil)); end
920
+
921
+ sig { params(path: ::String).returns(T.nilable(::Spoom::Git::Commit)) }
922
+ def sorbet_removal_commit(path: T.unsafe(nil)); end
923
+
924
+ sig { params(path: ::String).returns(T::Boolean) }
925
+ def workdir_clean?(path: T.unsafe(nil)); end
926
+ end
927
+ end
928
+
929
+ class Spoom::Git::Commit < ::T::Struct
930
+ const :sha, ::String
931
+ const :time, ::Time
932
+
933
+ sig { returns(::Integer) }
934
+ def timestamp; end
935
+
936
+ class << self
937
+ def inherited(s); end
938
+ end
939
+ end
940
+
941
+ module Spoom::LSP; end
942
+
943
+ class Spoom::LSP::Client
944
+ sig { params(sorbet_bin: ::String, sorbet_args: ::String, path: ::String).void }
945
+ def initialize(sorbet_bin, *sorbet_args, path: T.unsafe(nil)); end
946
+
947
+ sig { void }
948
+ def close; end
949
+
950
+ sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T::Array[::Spoom::LSP::Location]) }
951
+ def definitions(uri, line, column); end
952
+
953
+ sig { params(uri: ::String).returns(T::Array[::Spoom::LSP::DocumentSymbol]) }
954
+ def document_symbols(uri); end
955
+
956
+ sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T.nilable(::Spoom::LSP::Hover)) }
957
+ def hover(uri, line, column); end
958
+
959
+ sig { returns(::Integer) }
960
+ def next_id; end
961
+
962
+ sig { params(workspace_path: ::String).void }
963
+ def open(workspace_path); end
964
+
965
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
966
+ def read; end
967
+
968
+ sig { returns(T.nilable(::String)) }
969
+ def read_raw; end
970
+
971
+ sig do
972
+ params(
973
+ uri: ::String,
974
+ line: ::Integer,
975
+ column: ::Integer,
976
+ include_decl: T::Boolean
977
+ ).returns(T::Array[::Spoom::LSP::Location])
978
+ end
979
+ def references(uri, line, column, include_decl = T.unsafe(nil)); end
980
+
981
+ sig { params(message: ::Spoom::LSP::Message).returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
982
+ def send(message); end
983
+
984
+ sig { params(json_string: ::String).void }
985
+ def send_raw(json_string); end
986
+
987
+ sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T::Array[::Spoom::LSP::SignatureHelp]) }
988
+ def signatures(uri, line, column); end
989
+
990
+ sig { params(query: ::String).returns(T::Array[::Spoom::LSP::DocumentSymbol]) }
991
+ def symbols(query); end
992
+
993
+ sig { params(uri: ::String, line: ::Integer, column: ::Integer).returns(T::Array[::Spoom::LSP::Location]) }
994
+ def type_definitions(uri, line, column); end
995
+ end
996
+
997
+ class Spoom::LSP::Diagnostic < ::T::Struct
998
+ include ::Spoom::LSP::PrintableSymbol
999
+
1000
+ const :range, ::Spoom::LSP::Range
1001
+ const :code, ::Integer
1002
+ const :message, ::String
1003
+ const :informations, ::Object
1004
+
1005
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1006
+ def accept_printer(printer); end
1007
+
1008
+ sig { returns(::String) }
1009
+ def to_s; end
1010
+
1011
+ class << self
1012
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Diagnostic) }
1013
+ def from_json(json); end
1014
+
1015
+ def inherited(s); end
1016
+ end
1017
+ end
1018
+
1019
+ class Spoom::LSP::DocumentSymbol < ::T::Struct
1020
+ include ::Spoom::LSP::PrintableSymbol
1021
+
1022
+ const :name, ::String
1023
+ const :detail, T.nilable(::String)
1024
+ const :kind, ::Integer
1025
+ const :location, T.nilable(::Spoom::LSP::Location)
1026
+ const :range, T.nilable(::Spoom::LSP::Range)
1027
+ const :children, T::Array[::Spoom::LSP::DocumentSymbol]
1028
+
1029
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1030
+ def accept_printer(printer); end
1031
+
1032
+ sig { returns(::String) }
1033
+ def kind_string; end
1034
+
1035
+ sig { returns(::String) }
1036
+ def to_s; end
1037
+
1038
+ class << self
1039
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::DocumentSymbol) }
1040
+ def from_json(json); end
1041
+
1042
+ def inherited(s); end
1043
+ end
1044
+ end
1045
+
1046
+ Spoom::LSP::DocumentSymbol::SYMBOL_KINDS = T.let(T.unsafe(nil), Hash)
1047
+ class Spoom::LSP::Error < ::StandardError; end
1048
+ class Spoom::LSP::Error::AlreadyOpen < ::Spoom::LSP::Error; end
1049
+ class Spoom::LSP::Error::BadHeaders < ::Spoom::LSP::Error; end
1050
+
1051
+ class Spoom::LSP::Error::Diagnostics < ::Spoom::LSP::Error
1052
+ sig { params(uri: ::String, diagnostics: T::Array[::Spoom::LSP::Diagnostic]).void }
1053
+ def initialize(uri, diagnostics); end
1054
+
1055
+ sig { returns(T::Array[::Spoom::LSP::Diagnostic]) }
1056
+ def diagnostics; end
1057
+
1058
+ sig { returns(::String) }
1059
+ def uri; end
1060
+
1061
+ class << self
1062
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Error::Diagnostics) }
1063
+ def from_json(json); end
1064
+ end
1065
+ end
1066
+
1067
+ class Spoom::LSP::Hover < ::T::Struct
1068
+ include ::Spoom::LSP::PrintableSymbol
1069
+
1070
+ const :contents, ::String
1071
+ const :range, T.nilable(T::Range[T.untyped])
1072
+
1073
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1074
+ def accept_printer(printer); end
1075
+
1076
+ sig { returns(::String) }
1077
+ def to_s; end
1078
+
1079
+ class << self
1080
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Hover) }
1081
+ def from_json(json); end
1082
+
1083
+ def inherited(s); end
1084
+ end
1085
+ end
1086
+
1087
+ class Spoom::LSP::Location < ::T::Struct
1088
+ include ::Spoom::LSP::PrintableSymbol
1089
+
1090
+ const :uri, ::String
1091
+ const :range, ::Spoom::LSP::Range
1092
+
1093
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1094
+ def accept_printer(printer); end
1095
+
1096
+ sig { returns(::String) }
1097
+ def to_s; end
1098
+
1099
+ class << self
1100
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Location) }
1101
+ def from_json(json); end
1102
+
1103
+ def inherited(s); end
1104
+ end
1105
+ end
1106
+
1107
+ class Spoom::LSP::Message
1108
+ sig { void }
1109
+ def initialize; end
1110
+
1111
+ sig { returns(T::Hash[T.untyped, T.untyped]) }
1112
+ def as_json; end
1113
+
1114
+ sig { returns(::String) }
1115
+ def jsonrpc; end
1116
+
1117
+ sig { params(args: T.untyped).returns(::String) }
1118
+ def to_json(*args); end
1119
+ end
1120
+
1121
+ class Spoom::LSP::Notification < ::Spoom::LSP::Message
1122
+ sig { params(method: ::String, params: T::Hash[T.untyped, T.untyped]).void }
1123
+ def initialize(method, params); end
1124
+
1125
+ sig { returns(::String) }
1126
+ def method; end
1127
+
1128
+ sig { returns(T::Hash[T.untyped, T.untyped]) }
1129
+ def params; end
1130
+ end
1131
+
1132
+ class Spoom::LSP::Position < ::T::Struct
1133
+ include ::Spoom::LSP::PrintableSymbol
1134
+
1135
+ const :line, ::Integer
1136
+ const :char, ::Integer
1137
+
1138
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1139
+ def accept_printer(printer); end
1140
+
1141
+ sig { returns(::String) }
1142
+ def to_s; end
1143
+
1144
+ class << self
1145
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Position) }
1146
+ def from_json(json); end
1147
+
1148
+ def inherited(s); end
1149
+ end
1150
+ end
1151
+
1152
+ module Spoom::LSP::PrintableSymbol
1153
+ interface!
1154
+
1155
+ sig { abstract.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1156
+ def accept_printer(printer); end
1157
+ end
1158
+
1159
+ class Spoom::LSP::Range < ::T::Struct
1160
+ include ::Spoom::LSP::PrintableSymbol
1161
+
1162
+ const :start, ::Spoom::LSP::Position
1163
+ const :end, ::Spoom::LSP::Position
1164
+
1165
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1166
+ def accept_printer(printer); end
1167
+
1168
+ sig { returns(::String) }
1169
+ def to_s; end
1170
+
1171
+ class << self
1172
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::Range) }
1173
+ def from_json(json); end
1174
+
1175
+ def inherited(s); end
1176
+ end
1177
+ end
1178
+
1179
+ class Spoom::LSP::Request < ::Spoom::LSP::Message
1180
+ sig { params(id: ::Integer, method: ::String, params: T::Hash[T.untyped, T.untyped]).void }
1181
+ def initialize(id, method, params); end
1182
+
1183
+ sig { returns(::Integer) }
1184
+ def id; end
1185
+
1186
+ sig { returns(::String) }
1187
+ def method; end
1188
+
1189
+ sig { returns(T::Hash[T.untyped, T.untyped]) }
1190
+ def params; end
1191
+ end
1192
+
1193
+ class Spoom::LSP::ResponseError < ::Spoom::LSP::Error
1194
+ sig { params(code: ::Integer, message: ::String, data: T::Hash[T.untyped, T.untyped]).void }
1195
+ def initialize(code, message, data); end
1196
+
1197
+ sig { returns(::Integer) }
1198
+ def code; end
1199
+
1200
+ sig { returns(T::Hash[T.untyped, T.untyped]) }
1201
+ def data; end
1202
+
1203
+ class << self
1204
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::ResponseError) }
1205
+ def from_json(json); end
1206
+ end
1207
+ end
1208
+
1209
+ class Spoom::LSP::SignatureHelp < ::T::Struct
1210
+ include ::Spoom::LSP::PrintableSymbol
1211
+
1212
+ const :label, T.nilable(::String)
1213
+ const :doc, ::Object
1214
+ const :params, T::Array[T.untyped]
1215
+
1216
+ sig { override.params(printer: ::Spoom::LSP::SymbolPrinter).void }
1217
+ def accept_printer(printer); end
1218
+
1219
+ sig { returns(::String) }
1220
+ def to_s; end
1221
+
1222
+ class << self
1223
+ sig { params(json: T::Hash[T.untyped, T.untyped]).returns(::Spoom::LSP::SignatureHelp) }
1224
+ def from_json(json); end
1225
+
1226
+ def inherited(s); end
1227
+ end
1228
+ end
1229
+
1230
+ class Spoom::LSP::SymbolPrinter < ::Spoom::Printer
1231
+ sig do
1232
+ params(
1233
+ out: T.any(::IO, ::StringIO),
1234
+ colors: T::Boolean,
1235
+ indent_level: ::Integer,
1236
+ prefix: T.nilable(::String)
1237
+ ).void
1238
+ end
1239
+ def initialize(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil), prefix: T.unsafe(nil)); end
1240
+
1241
+ sig { params(uri: ::String).returns(::String) }
1242
+ def clean_uri(uri); end
1243
+
1244
+ sig { returns(T.nilable(::String)) }
1245
+ def prefix; end
1246
+
1247
+ sig { params(prefix: T.nilable(::String)).returns(T.nilable(::String)) }
1248
+ def prefix=(prefix); end
1249
+
1250
+ sig { params(objects: T::Array[::Spoom::LSP::PrintableSymbol]).void }
1251
+ def print_list(objects); end
1252
+
1253
+ sig { params(object: T.nilable(::Spoom::LSP::PrintableSymbol)).void }
1254
+ def print_object(object); end
1255
+
1256
+ sig { params(objects: T::Array[::Spoom::LSP::PrintableSymbol]).void }
1257
+ def print_objects(objects); end
1258
+
1259
+ sig { returns(T::Set[::Integer]) }
1260
+ def seen; end
1261
+
1262
+ sig { params(seen: T::Set[::Integer]).returns(T::Set[::Integer]) }
1263
+ def seen=(seen); end
1264
+ end
1265
+
1266
+ class Spoom::Printer
1267
+ include ::Spoom::Colorize
1268
+
1269
+ abstract!
1270
+
1271
+ sig { params(out: T.any(::IO, ::StringIO), colors: T::Boolean, indent_level: ::Integer).void }
1272
+ def initialize(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
1273
+
1274
+ sig { params(string: ::String, color: ::Spoom::Color).returns(::String) }
1275
+ def colorize(string, *color); end
1276
+
1277
+ sig { void }
1278
+ def dedent; end
1279
+
1280
+ sig { void }
1281
+ def indent; end
1282
+
1283
+ sig { returns(T.any(::IO, ::StringIO)) }
1284
+ def out; end
1285
+
1286
+ sig { params(out: T.any(::IO, ::StringIO)).returns(T.any(::IO, ::StringIO)) }
1287
+ def out=(out); end
1288
+
1289
+ sig { params(string: T.nilable(::String)).void }
1290
+ def print(string); end
1291
+
1292
+ sig { params(string: T.nilable(::String), color: ::Spoom::Color).void }
1293
+ def print_colored(string, *color); end
1294
+
1295
+ sig { params(string: T.nilable(::String)).void }
1296
+ def printl(string); end
1297
+
1298
+ sig { void }
1299
+ def printn; end
1300
+
1301
+ sig { void }
1302
+ def printt; end
1303
+ end
1304
+
1305
+ Spoom::SPOOM_PATH = T.let(T.unsafe(nil), String)
1306
+
1307
+ module Spoom::Sorbet
1308
+ class << self
1309
+ sig do
1310
+ params(
1311
+ arg: ::String,
1312
+ path: ::String,
1313
+ capture_err: T::Boolean,
1314
+ sorbet_bin: T.nilable(::String)
1315
+ ).returns(::Spoom::ExecResult)
1316
+ end
1317
+ def srb(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1318
+
1319
+ sig { params(config: ::Spoom::Sorbet::Config, path: ::String).returns(T::Array[::String]) }
1320
+ def srb_files(config, path: T.unsafe(nil)); end
1321
+
1322
+ sig do
1323
+ params(
1324
+ arg: ::String,
1325
+ path: ::String,
1326
+ capture_err: T::Boolean,
1327
+ sorbet_bin: T.nilable(::String)
1328
+ ).returns(T.nilable(T::Hash[::String, ::Integer]))
1329
+ end
1330
+ def srb_metrics(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1331
+
1332
+ sig do
1333
+ params(
1334
+ arg: ::String,
1335
+ path: ::String,
1336
+ capture_err: T::Boolean,
1337
+ sorbet_bin: T.nilable(::String)
1338
+ ).returns(::Spoom::ExecResult)
1339
+ end
1340
+ def srb_tc(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1341
+
1342
+ sig do
1343
+ params(
1344
+ arg: ::String,
1345
+ path: ::String,
1346
+ capture_err: T::Boolean,
1347
+ sorbet_bin: T.nilable(::String)
1348
+ ).returns(T.nilable(::String))
1349
+ end
1350
+ def srb_version(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1351
+
1352
+ sig { params(gem: ::String, path: ::String).returns(T.nilable(::String)) }
1353
+ def version_from_gemfile_lock(gem: T.unsafe(nil), path: T.unsafe(nil)); end
1354
+ end
1355
+ end
1356
+
1357
+ Spoom::Sorbet::BIN_PATH = T.let(T.unsafe(nil), String)
1358
+ Spoom::Sorbet::CONFIG_PATH = T.let(T.unsafe(nil), String)
1359
+
1360
+ class Spoom::Sorbet::Config
1361
+ sig { void }
1362
+ def initialize; end
1363
+
1364
+ def allowed_extensions; end
1365
+
1366
+ sig { returns(::Spoom::Sorbet::Config) }
1367
+ def copy; end
1368
+
1369
+ def ignore; end
1370
+
1371
+ sig { returns(T::Boolean) }
1372
+ def no_stdlib; end
1373
+
1374
+ sig { params(no_stdlib: T::Boolean).returns(T::Boolean) }
1375
+ def no_stdlib=(no_stdlib); end
1376
+
1377
+ sig { returns(::String) }
1378
+ def options_string; end
1379
+
1380
+ sig { returns(T::Array[::String]) }
1381
+ def paths; end
1382
+
1383
+ class << self
1384
+ sig { params(sorbet_config_path: ::String).returns(::Spoom::Sorbet::Config) }
1385
+ def parse_file(sorbet_config_path); end
1386
+
1387
+ sig { params(sorbet_config: ::String).returns(::Spoom::Sorbet::Config) }
1388
+ def parse_string(sorbet_config); end
1389
+
1390
+ private
1391
+
1392
+ sig { params(line: ::String).returns(::String) }
1393
+ def parse_option(line); end
1394
+ end
1395
+ end
1396
+
1397
+ module Spoom::Sorbet::Errors
1398
+ class << self
1399
+ sig { params(errors: T::Array[::Spoom::Sorbet::Errors::Error]).returns(T::Array[::Spoom::Sorbet::Errors::Error]) }
1400
+ def sort_errors_by_code(errors); end
1401
+ end
1402
+ end
1403
+
1404
+ Spoom::Sorbet::Errors::DEFAULT_ERROR_URL_BASE = T.let(T.unsafe(nil), String)
1405
+
1406
+ class Spoom::Sorbet::Errors::Error
1407
+ include ::Comparable
1408
+
1409
+ sig do
1410
+ params(
1411
+ file: T.nilable(::String),
1412
+ line: T.nilable(::Integer),
1413
+ message: T.nilable(::String),
1414
+ code: T.nilable(::Integer),
1415
+ more: T::Array[::String]
1416
+ ).void
1417
+ end
1418
+ def initialize(file, line, message, code, more = T.unsafe(nil)); end
1419
+
1420
+ sig { params(other: T.untyped).returns(::Integer) }
1421
+ def <=>(other); end
1422
+
1423
+ def code; end
1424
+
1425
+ sig { returns(T.nilable(::String)) }
1426
+ def file; end
1427
+
1428
+ sig { returns(T::Set[::String]) }
1429
+ def files_from_error_sections; end
1430
+
1431
+ sig { returns(T.nilable(::Integer)) }
1432
+ def line; end
1433
+
1434
+ def message; end
1435
+
1436
+ sig { returns(T::Array[::String]) }
1437
+ def more; end
1438
+
1439
+ sig { returns(::String) }
1440
+ def to_s; end
1441
+ end
1442
+
1443
+ class Spoom::Sorbet::Errors::Parser
1444
+ sig { params(error_url_base: ::String).void }
1445
+ def initialize(error_url_base: T.unsafe(nil)); end
1446
+
1447
+ sig { params(output: ::String).returns(T::Array[::Spoom::Sorbet::Errors::Error]) }
1448
+ def parse(output); end
1449
+
1450
+ private
1451
+
1452
+ sig { params(line: ::String).void }
1453
+ def append_error(line); end
1454
+
1455
+ sig { void }
1456
+ def close_error; end
1457
+
1458
+ sig { params(error_url_base: ::String).returns(::Regexp) }
1459
+ def error_line_match_regexp(error_url_base); end
1460
+
1461
+ sig { params(line: ::String).returns(T.nilable(::Spoom::Sorbet::Errors::Error)) }
1462
+ def match_error_line(line); end
1463
+
1464
+ sig { params(error: ::Spoom::Sorbet::Errors::Error).void }
1465
+ def open_error(error); end
1466
+
1467
+ class << self
1468
+ sig { params(output: ::String, error_url_base: ::String).returns(T::Array[::Spoom::Sorbet::Errors::Error]) }
1469
+ def parse_string(output, error_url_base: T.unsafe(nil)); end
1470
+ end
1471
+ end
1472
+
1473
+ Spoom::Sorbet::Errors::Parser::HEADER = T.let(T.unsafe(nil), Array)
1474
+ Spoom::Sorbet::GEM_PATH = T.let(T.unsafe(nil), String)
1475
+
1476
+ module Spoom::Sorbet::MetricsParser
1477
+ class << self
1478
+ sig { params(path: ::String, prefix: ::String).returns(T::Hash[::String, ::Integer]) }
1479
+ def parse_file(path, prefix = T.unsafe(nil)); end
1480
+
1481
+ sig { params(obj: T::Hash[::String, T.untyped], prefix: ::String).returns(T::Hash[::String, ::Integer]) }
1482
+ def parse_hash(obj, prefix = T.unsafe(nil)); end
1483
+
1484
+ sig { params(string: ::String, prefix: ::String).returns(T::Hash[::String, ::Integer]) }
1485
+ def parse_string(string, prefix = T.unsafe(nil)); end
1486
+ end
1487
+ end
1488
+
1489
+ Spoom::Sorbet::MetricsParser::DEFAULT_PREFIX = T.let(T.unsafe(nil), String)
1490
+ Spoom::Sorbet::SEGFAULT_CODE = T.let(T.unsafe(nil), Integer)
1491
+
1492
+ module Spoom::Sorbet::Sigils
1493
+ class << self
1494
+ sig { params(path: T.any(::Pathname, ::String), new_strictness: ::String).returns(T::Boolean) }
1495
+ def change_sigil_in_file(path, new_strictness); end
1496
+
1497
+ sig { params(path_list: T::Array[::String], new_strictness: ::String).returns(T::Array[::String]) }
1498
+ def change_sigil_in_files(path_list, new_strictness); end
1499
+
1500
+ sig { params(path: T.any(::Pathname, ::String)).returns(T.nilable(::String)) }
1501
+ def file_strictness(path); end
1502
+
1503
+ sig do
1504
+ params(
1505
+ directory: T.any(::Pathname, ::String),
1506
+ strictness: ::String,
1507
+ extension: ::String
1508
+ ).returns(T::Array[::String])
1509
+ end
1510
+ def files_with_sigil_strictness(directory, strictness, extension: T.unsafe(nil)); end
1511
+
1512
+ sig { params(strictness: ::String).returns(::String) }
1513
+ def sigil_string(strictness); end
1514
+
1515
+ sig { params(content: ::String).returns(T.nilable(::String)) }
1516
+ def strictness_in_content(content); end
1517
+
1518
+ sig { params(content: ::String, new_strictness: ::String).returns(::String) }
1519
+ def update_sigil(content, new_strictness); end
1520
+
1521
+ sig { params(strictness: ::String).returns(T::Boolean) }
1522
+ def valid_strictness?(strictness); end
1523
+ end
1524
+ end
1525
+
1526
+ Spoom::Sorbet::Sigils::SIGIL_REGEXP = T.let(T.unsafe(nil), Regexp)
1527
+ Spoom::Sorbet::Sigils::STRICTNESS_FALSE = T.let(T.unsafe(nil), String)
1528
+ Spoom::Sorbet::Sigils::STRICTNESS_IGNORE = T.let(T.unsafe(nil), String)
1529
+ Spoom::Sorbet::Sigils::STRICTNESS_INTERNAL = T.let(T.unsafe(nil), String)
1530
+ Spoom::Sorbet::Sigils::STRICTNESS_STRICT = T.let(T.unsafe(nil), String)
1531
+ Spoom::Sorbet::Sigils::STRICTNESS_STRONG = T.let(T.unsafe(nil), String)
1532
+ Spoom::Sorbet::Sigils::STRICTNESS_TRUE = T.let(T.unsafe(nil), String)
1533
+ Spoom::Sorbet::Sigils::VALID_STRICTNESS = T.let(T.unsafe(nil), Array)
1534
+
1535
+ class Spoom::Timeline
1536
+ sig { params(from: ::Time, to: ::Time, path: ::String).void }
1537
+ def initialize(from, to, path: T.unsafe(nil)); end
1538
+
1539
+ sig { params(dates: T::Array[::Time]).returns(T::Array[::Spoom::Git::Commit]) }
1540
+ def commits_for_dates(dates); end
1541
+
1542
+ sig { returns(T::Array[::Time]) }
1543
+ def months; end
1544
+
1545
+ sig { returns(T::Array[::Spoom::Git::Commit]) }
1546
+ def ticks; end
1547
+ end
1548
+
1549
+ Spoom::VERSION = T.let(T.unsafe(nil), String)