@sarj/eslint-plugin 9.13.1 → 9.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -91,6 +91,9 @@ declare const renamedRules: {
91
91
  };
92
92
 
93
93
  declare const rules: {
94
+ "duplicate-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"duplicateTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
95
+ name: string;
96
+ };
94
97
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
95
98
  name: string;
96
99
  };
@@ -100,7 +103,7 @@ declare const rules: {
100
103
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
101
104
  name: string;
102
105
  };
103
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
106
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "placeholderImplementation" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
104
107
  name: string;
105
108
  };
106
109
  "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
@@ -141,6 +144,9 @@ declare const rules: {
141
144
  "no-long-comment": _typescript_eslint_utils_ts_eslint.RuleModule<"tooLong", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
142
145
  name: string;
143
146
  };
147
+ "no-generic-single-export-module": _typescript_eslint_utils_ts_eslint.RuleModule<"genericSingleExport", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
148
+ name: string;
149
+ };
144
150
  "no-offset-pagination": _typescript_eslint_utils_ts_eslint.RuleModule<"noOffsetPagination", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
145
151
  name: string;
146
152
  };
@@ -215,6 +221,9 @@ declare const rules: {
215
221
  "no-zod-native-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"nativeEnum" | "enumOfTsEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
216
222
  name: string;
217
223
  };
224
+ "test-loops-over-literal-cases": _typescript_eslint_utils_ts_eslint.RuleModule<"literalCaseLoop", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
225
+ name: string;
226
+ };
218
227
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
219
228
  name: string;
220
229
  };
@@ -301,6 +310,9 @@ declare const rules: {
301
310
  "store-insert-requires-on-conflict": _typescript_eslint_utils_ts_eslint.RuleModule<"storeInsertRequiresOnConflict", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
302
311
  name: string;
303
312
  };
313
+ stepdown: _typescript_eslint_utils_ts_eslint.RuleModule<"helperAboveOnlyCaller", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
314
+ name: string;
315
+ };
304
316
  "zod-naming-convention": _typescript_eslint_utils_ts_eslint.RuleModule<"zPrefix" | "schemaSuffix" | "zodSchemaName", readonly [{
305
317
  convention?: "prefix" | "suffix" | "either";
306
318
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
@@ -310,6 +322,7 @@ declare const rules: {
310
322
  /** Rules registered for application-profile configs but intentionally absent from general presets. */
311
323
  declare const applicationOnlyRules: readonly ["no-restricted-library-load", "prefer-native-random-uuid", "prefer-shadcn-primitives"];
312
324
  declare const recommendedRules: {
325
+ readonly "@sarj/duplicate-test-body": "warn";
313
326
  readonly "@sarj/enforce-file-structure": "warn";
314
327
  readonly "@sarj/no-async-callback-in-wait-for": "warn";
315
328
  readonly "@sarj/no-client-side-data-fetching": "warn";
@@ -324,6 +337,7 @@ declare const recommendedRules: {
324
337
  readonly "@sarj/no-json-stringify-error": "warn";
325
338
  readonly "@sarj/no-log-only-catch": "warn";
326
339
  readonly "@sarj/no-long-comment": "warn";
340
+ readonly "@sarj/no-generic-single-export-module": "warn";
327
341
  readonly "@sarj/no-offset-pagination": "warn";
328
342
  readonly "@sarj/no-positional-tuple-return": "warn";
329
343
  readonly "@sarj/no-repeated-string-literal": "warn";
@@ -344,6 +358,7 @@ declare const recommendedRules: {
344
358
  readonly "@sarj/no-unnecessary-use-client": "warn";
345
359
  readonly "@sarj/no-unsafe-mock-casting": "warn";
346
360
  readonly "@sarj/no-zod-native-enum": "warn";
361
+ readonly "@sarj/test-loops-over-literal-cases": "warn";
347
362
  readonly "@sarj/prefer-constant-time-secret-compare": "error";
348
363
  readonly "@sarj/prefer-discriminated-union": "warn";
349
364
  readonly "@sarj/prefer-input-group-search": "error";
@@ -367,9 +382,11 @@ declare const recommendedRules: {
367
382
  readonly "@sarj/require-static-next-matcher": "error";
368
383
  readonly "@sarj/require-zod-form-validation": "error";
369
384
  readonly "@sarj/store-insert-requires-on-conflict": "warn";
385
+ readonly "@sarj/stepdown": "warn";
370
386
  readonly "@sarj/zod-naming-convention": "warn";
371
387
  };
372
388
  declare const strictRules: {
389
+ readonly "@sarj/duplicate-test-body": "warn";
373
390
  readonly "@sarj/enforce-file-structure": "error";
374
391
  readonly "@sarj/no-async-callback-in-wait-for": "error";
375
392
  readonly "@sarj/no-client-side-data-fetching": "error";
@@ -385,6 +402,7 @@ declare const strictRules: {
385
402
  readonly "@sarj/no-json-stringify-error": "error";
386
403
  readonly "@sarj/no-log-only-catch": "error";
387
404
  readonly "@sarj/no-long-comment": "error";
405
+ readonly "@sarj/no-generic-single-export-module": "warn";
388
406
  readonly "@sarj/no-offset-pagination": "error";
389
407
  readonly "@sarj/no-positional-tuple-return": "error";
390
408
  readonly "@sarj/no-raw-env": "error";
@@ -408,6 +426,7 @@ declare const strictRules: {
408
426
  readonly "@sarj/no-unnecessary-use-client": "error";
409
427
  readonly "@sarj/no-unsafe-mock-casting": "error";
410
428
  readonly "@sarj/no-zod-native-enum": "error";
429
+ readonly "@sarj/test-loops-over-literal-cases": "warn";
411
430
  readonly "@sarj/prefer-constant-time-secret-compare": "error";
412
431
  readonly "@sarj/prefer-discriminated-union": "error";
413
432
  readonly "@sarj/prefer-input-group-search": "error";
@@ -431,6 +450,7 @@ declare const strictRules: {
431
450
  readonly "@sarj/require-static-next-matcher": "error";
432
451
  readonly "@sarj/require-zod-form-validation": "error";
433
452
  readonly "@sarj/store-insert-requires-on-conflict": "error";
453
+ readonly "@sarj/stepdown": "warn";
434
454
  readonly "@sarj/zod-naming-convention": "error";
435
455
  };
436
456
  type FlatPreset = {
@@ -446,9 +466,12 @@ type FlatPreset = {
446
466
  declare const plugin: {
447
467
  meta: {
448
468
  readonly name: "@sarj/eslint-plugin";
449
- readonly version: "9.13.1";
469
+ readonly version: "9.15.0";
450
470
  };
451
471
  rules: {
472
+ "duplicate-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"duplicateTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
473
+ name: string;
474
+ };
452
475
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
453
476
  name: string;
454
477
  };
@@ -458,7 +481,7 @@ declare const plugin: {
458
481
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
459
482
  name: string;
460
483
  };
461
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
484
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "placeholderImplementation" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
462
485
  name: string;
463
486
  };
464
487
  "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
@@ -499,6 +522,9 @@ declare const plugin: {
499
522
  "no-long-comment": _typescript_eslint_utils_ts_eslint.RuleModule<"tooLong", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
500
523
  name: string;
501
524
  };
525
+ "no-generic-single-export-module": _typescript_eslint_utils_ts_eslint.RuleModule<"genericSingleExport", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
526
+ name: string;
527
+ };
502
528
  "no-offset-pagination": _typescript_eslint_utils_ts_eslint.RuleModule<"noOffsetPagination", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
503
529
  name: string;
504
530
  };
@@ -573,6 +599,9 @@ declare const plugin: {
573
599
  "no-zod-native-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"nativeEnum" | "enumOfTsEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
574
600
  name: string;
575
601
  };
602
+ "test-loops-over-literal-cases": _typescript_eslint_utils_ts_eslint.RuleModule<"literalCaseLoop", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
603
+ name: string;
604
+ };
576
605
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
577
606
  name: string;
578
607
  };
@@ -659,6 +688,9 @@ declare const plugin: {
659
688
  "store-insert-requires-on-conflict": _typescript_eslint_utils_ts_eslint.RuleModule<"storeInsertRequiresOnConflict", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
660
689
  name: string;
661
690
  };
691
+ stepdown: _typescript_eslint_utils_ts_eslint.RuleModule<"helperAboveOnlyCaller", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
692
+ name: string;
693
+ };
662
694
  "zod-naming-convention": _typescript_eslint_utils_ts_eslint.RuleModule<"zPrefix" | "schemaSuffix" | "zodSchemaName", readonly [{
663
695
  convention?: "prefix" | "suffix" | "either";
664
696
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
package/dist/index.d.ts CHANGED
@@ -91,6 +91,9 @@ declare const renamedRules: {
91
91
  };
92
92
 
93
93
  declare const rules: {
94
+ "duplicate-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"duplicateTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
95
+ name: string;
96
+ };
94
97
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
95
98
  name: string;
96
99
  };
@@ -100,7 +103,7 @@ declare const rules: {
100
103
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
101
104
  name: string;
102
105
  };
103
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
106
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "placeholderImplementation" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
104
107
  name: string;
105
108
  };
106
109
  "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
@@ -141,6 +144,9 @@ declare const rules: {
141
144
  "no-long-comment": _typescript_eslint_utils_ts_eslint.RuleModule<"tooLong", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
142
145
  name: string;
143
146
  };
147
+ "no-generic-single-export-module": _typescript_eslint_utils_ts_eslint.RuleModule<"genericSingleExport", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
148
+ name: string;
149
+ };
144
150
  "no-offset-pagination": _typescript_eslint_utils_ts_eslint.RuleModule<"noOffsetPagination", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
145
151
  name: string;
146
152
  };
@@ -215,6 +221,9 @@ declare const rules: {
215
221
  "no-zod-native-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"nativeEnum" | "enumOfTsEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
216
222
  name: string;
217
223
  };
224
+ "test-loops-over-literal-cases": _typescript_eslint_utils_ts_eslint.RuleModule<"literalCaseLoop", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
225
+ name: string;
226
+ };
218
227
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
219
228
  name: string;
220
229
  };
@@ -301,6 +310,9 @@ declare const rules: {
301
310
  "store-insert-requires-on-conflict": _typescript_eslint_utils_ts_eslint.RuleModule<"storeInsertRequiresOnConflict", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
302
311
  name: string;
303
312
  };
313
+ stepdown: _typescript_eslint_utils_ts_eslint.RuleModule<"helperAboveOnlyCaller", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
314
+ name: string;
315
+ };
304
316
  "zod-naming-convention": _typescript_eslint_utils_ts_eslint.RuleModule<"zPrefix" | "schemaSuffix" | "zodSchemaName", readonly [{
305
317
  convention?: "prefix" | "suffix" | "either";
306
318
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
@@ -310,6 +322,7 @@ declare const rules: {
310
322
  /** Rules registered for application-profile configs but intentionally absent from general presets. */
311
323
  declare const applicationOnlyRules: readonly ["no-restricted-library-load", "prefer-native-random-uuid", "prefer-shadcn-primitives"];
312
324
  declare const recommendedRules: {
325
+ readonly "@sarj/duplicate-test-body": "warn";
313
326
  readonly "@sarj/enforce-file-structure": "warn";
314
327
  readonly "@sarj/no-async-callback-in-wait-for": "warn";
315
328
  readonly "@sarj/no-client-side-data-fetching": "warn";
@@ -324,6 +337,7 @@ declare const recommendedRules: {
324
337
  readonly "@sarj/no-json-stringify-error": "warn";
325
338
  readonly "@sarj/no-log-only-catch": "warn";
326
339
  readonly "@sarj/no-long-comment": "warn";
340
+ readonly "@sarj/no-generic-single-export-module": "warn";
327
341
  readonly "@sarj/no-offset-pagination": "warn";
328
342
  readonly "@sarj/no-positional-tuple-return": "warn";
329
343
  readonly "@sarj/no-repeated-string-literal": "warn";
@@ -344,6 +358,7 @@ declare const recommendedRules: {
344
358
  readonly "@sarj/no-unnecessary-use-client": "warn";
345
359
  readonly "@sarj/no-unsafe-mock-casting": "warn";
346
360
  readonly "@sarj/no-zod-native-enum": "warn";
361
+ readonly "@sarj/test-loops-over-literal-cases": "warn";
347
362
  readonly "@sarj/prefer-constant-time-secret-compare": "error";
348
363
  readonly "@sarj/prefer-discriminated-union": "warn";
349
364
  readonly "@sarj/prefer-input-group-search": "error";
@@ -367,9 +382,11 @@ declare const recommendedRules: {
367
382
  readonly "@sarj/require-static-next-matcher": "error";
368
383
  readonly "@sarj/require-zod-form-validation": "error";
369
384
  readonly "@sarj/store-insert-requires-on-conflict": "warn";
385
+ readonly "@sarj/stepdown": "warn";
370
386
  readonly "@sarj/zod-naming-convention": "warn";
371
387
  };
372
388
  declare const strictRules: {
389
+ readonly "@sarj/duplicate-test-body": "warn";
373
390
  readonly "@sarj/enforce-file-structure": "error";
374
391
  readonly "@sarj/no-async-callback-in-wait-for": "error";
375
392
  readonly "@sarj/no-client-side-data-fetching": "error";
@@ -385,6 +402,7 @@ declare const strictRules: {
385
402
  readonly "@sarj/no-json-stringify-error": "error";
386
403
  readonly "@sarj/no-log-only-catch": "error";
387
404
  readonly "@sarj/no-long-comment": "error";
405
+ readonly "@sarj/no-generic-single-export-module": "warn";
388
406
  readonly "@sarj/no-offset-pagination": "error";
389
407
  readonly "@sarj/no-positional-tuple-return": "error";
390
408
  readonly "@sarj/no-raw-env": "error";
@@ -408,6 +426,7 @@ declare const strictRules: {
408
426
  readonly "@sarj/no-unnecessary-use-client": "error";
409
427
  readonly "@sarj/no-unsafe-mock-casting": "error";
410
428
  readonly "@sarj/no-zod-native-enum": "error";
429
+ readonly "@sarj/test-loops-over-literal-cases": "warn";
411
430
  readonly "@sarj/prefer-constant-time-secret-compare": "error";
412
431
  readonly "@sarj/prefer-discriminated-union": "error";
413
432
  readonly "@sarj/prefer-input-group-search": "error";
@@ -431,6 +450,7 @@ declare const strictRules: {
431
450
  readonly "@sarj/require-static-next-matcher": "error";
432
451
  readonly "@sarj/require-zod-form-validation": "error";
433
452
  readonly "@sarj/store-insert-requires-on-conflict": "error";
453
+ readonly "@sarj/stepdown": "warn";
434
454
  readonly "@sarj/zod-naming-convention": "error";
435
455
  };
436
456
  type FlatPreset = {
@@ -446,9 +466,12 @@ type FlatPreset = {
446
466
  declare const plugin: {
447
467
  meta: {
448
468
  readonly name: "@sarj/eslint-plugin";
449
- readonly version: "9.13.1";
469
+ readonly version: "9.15.0";
450
470
  };
451
471
  rules: {
472
+ "duplicate-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"duplicateTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
473
+ name: string;
474
+ };
452
475
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
453
476
  name: string;
454
477
  };
@@ -458,7 +481,7 @@ declare const plugin: {
458
481
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
459
482
  name: string;
460
483
  };
461
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
484
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "commentWall" | "redundantNarration" | "placeholderImplementation" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
462
485
  name: string;
463
486
  };
464
487
  "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
@@ -499,6 +522,9 @@ declare const plugin: {
499
522
  "no-long-comment": _typescript_eslint_utils_ts_eslint.RuleModule<"tooLong", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
500
523
  name: string;
501
524
  };
525
+ "no-generic-single-export-module": _typescript_eslint_utils_ts_eslint.RuleModule<"genericSingleExport", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
526
+ name: string;
527
+ };
502
528
  "no-offset-pagination": _typescript_eslint_utils_ts_eslint.RuleModule<"noOffsetPagination", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
503
529
  name: string;
504
530
  };
@@ -573,6 +599,9 @@ declare const plugin: {
573
599
  "no-zod-native-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"nativeEnum" | "enumOfTsEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
574
600
  name: string;
575
601
  };
602
+ "test-loops-over-literal-cases": _typescript_eslint_utils_ts_eslint.RuleModule<"literalCaseLoop", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
603
+ name: string;
604
+ };
576
605
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
577
606
  name: string;
578
607
  };
@@ -659,6 +688,9 @@ declare const plugin: {
659
688
  "store-insert-requires-on-conflict": _typescript_eslint_utils_ts_eslint.RuleModule<"storeInsertRequiresOnConflict", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
660
689
  name: string;
661
690
  };
691
+ stepdown: _typescript_eslint_utils_ts_eslint.RuleModule<"helperAboveOnlyCaller", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
692
+ name: string;
693
+ };
662
694
  "zod-naming-convention": _typescript_eslint_utils_ts_eslint.RuleModule<"zPrefix" | "schemaSuffix" | "zodSchemaName", readonly [{
663
695
  convention?: "prefix" | "suffix" | "either";
664
696
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {