@sarj/eslint-plugin 2.15.0 → 2.17.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
@@ -197,13 +197,16 @@ interface LoggingOptions {
197
197
  }
198
198
 
199
199
  declare const rules: {
200
+ "ban-loose-type-guards-in-tests": _typescript_eslint_utils_ts_eslint.RuleModule<"banLooseTypeGuardsInTests", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
201
+ name: string;
202
+ };
200
203
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
201
204
  name: string;
202
205
  };
203
206
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
204
207
  name: string;
205
208
  };
206
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
209
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
207
210
  name: string;
208
211
  };
209
212
  "no-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"noEnum", readonly [{
@@ -275,14 +278,23 @@ declare const rules: {
275
278
  "no-unsafe-cast": _typescript_eslint_utils_ts_eslint.RuleModule<"asAny" | "doubleCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
276
279
  name: string;
277
280
  };
281
+ "no-unsafe-mock-casting": _typescript_eslint_utils_ts_eslint.RuleModule<"unsafeMockCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
282
+ name: string;
283
+ };
278
284
  "prefer-string-literal-union": _typescript_eslint_utils_ts_eslint.RuleModule<"bareChoiceField" | "comparisonCluster", readonly [{
279
285
  ignoreFields?: readonly string[];
280
286
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
281
287
  name: string;
282
288
  };
289
+ "prefer-zod-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"preferEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
290
+ name: string;
291
+ };
283
292
  "single-public-export": _typescript_eslint_utils_ts_eslint.RuleModule<"renameJunkDrawer", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
284
293
  name: string;
285
294
  };
295
+ "primary-export-file-name": _typescript_eslint_utils_ts_eslint.RuleModule<"primaryExportMismatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
296
+ name: string;
297
+ };
286
298
  "no-silent-promise-catch": _typescript_eslint_utils_ts_eslint.RuleModule<"silentCatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
287
299
  name: string;
288
300
  };
@@ -309,6 +321,9 @@ declare const rules: {
309
321
  "no-sleep-in-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"noSleepInTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
310
322
  name: string;
311
323
  };
324
+ "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
325
+ name: string;
326
+ };
312
327
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
313
328
  name: string;
314
329
  };
@@ -349,9 +364,19 @@ declare const rules: {
349
364
  "require-interface-for-injected-service": _typescript_eslint_utils_ts_eslint.RuleModule<"requireInterface", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
350
365
  name: string;
351
366
  };
367
+ "strict-test-assertions": _typescript_eslint_utils_ts_eslint.RuleModule<"combineAssertions", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
352
368
  "prefer-non-nullable-collection": _typescript_eslint_utils_ts_eslint.RuleModule<"preferNonNullableCollection", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
353
369
  name: string;
354
370
  };
371
+ "no-implicit-attribute-access": _typescript_eslint_utils_ts_eslint.RuleModule<"noImplicitAttributeAccess", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
372
+ name: string;
373
+ };
374
+ "no-async-callback-in-waitfor": _typescript_eslint_utils_ts_eslint.RuleModule<"noAsyncCallbackInWaitFor", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
375
+ name: string;
376
+ };
377
+ "prefer-setup-file-mocks": _typescript_eslint_utils_ts_eslint.RuleModule<"preferSetupFileMocks", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
378
+ name: string;
379
+ };
355
380
  };
356
381
  declare const plugin: {
357
382
  meta: {
@@ -359,13 +384,16 @@ declare const plugin: {
359
384
  version: string;
360
385
  };
361
386
  rules: {
387
+ "ban-loose-type-guards-in-tests": _typescript_eslint_utils_ts_eslint.RuleModule<"banLooseTypeGuardsInTests", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
388
+ name: string;
389
+ };
362
390
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
363
391
  name: string;
364
392
  };
365
393
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
366
394
  name: string;
367
395
  };
368
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
396
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
369
397
  name: string;
370
398
  };
371
399
  "no-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"noEnum", readonly [{
@@ -437,14 +465,23 @@ declare const plugin: {
437
465
  "no-unsafe-cast": _typescript_eslint_utils_ts_eslint.RuleModule<"asAny" | "doubleCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
438
466
  name: string;
439
467
  };
468
+ "no-unsafe-mock-casting": _typescript_eslint_utils_ts_eslint.RuleModule<"unsafeMockCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
469
+ name: string;
470
+ };
440
471
  "prefer-string-literal-union": _typescript_eslint_utils_ts_eslint.RuleModule<"bareChoiceField" | "comparisonCluster", readonly [{
441
472
  ignoreFields?: readonly string[];
442
473
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
443
474
  name: string;
444
475
  };
476
+ "prefer-zod-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"preferEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
477
+ name: string;
478
+ };
445
479
  "single-public-export": _typescript_eslint_utils_ts_eslint.RuleModule<"renameJunkDrawer", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
446
480
  name: string;
447
481
  };
482
+ "primary-export-file-name": _typescript_eslint_utils_ts_eslint.RuleModule<"primaryExportMismatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
483
+ name: string;
484
+ };
448
485
  "no-silent-promise-catch": _typescript_eslint_utils_ts_eslint.RuleModule<"silentCatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
449
486
  name: string;
450
487
  };
@@ -471,6 +508,9 @@ declare const plugin: {
471
508
  "no-sleep-in-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"noSleepInTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
472
509
  name: string;
473
510
  };
511
+ "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
512
+ name: string;
513
+ };
474
514
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
475
515
  name: string;
476
516
  };
@@ -511,9 +551,19 @@ declare const plugin: {
511
551
  "require-interface-for-injected-service": _typescript_eslint_utils_ts_eslint.RuleModule<"requireInterface", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
512
552
  name: string;
513
553
  };
554
+ "strict-test-assertions": _typescript_eslint_utils_ts_eslint.RuleModule<"combineAssertions", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
514
555
  "prefer-non-nullable-collection": _typescript_eslint_utils_ts_eslint.RuleModule<"preferNonNullableCollection", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
515
556
  name: string;
516
557
  };
558
+ "no-implicit-attribute-access": _typescript_eslint_utils_ts_eslint.RuleModule<"noImplicitAttributeAccess", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
559
+ name: string;
560
+ };
561
+ "no-async-callback-in-waitfor": _typescript_eslint_utils_ts_eslint.RuleModule<"noAsyncCallbackInWaitFor", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
562
+ name: string;
563
+ };
564
+ "prefer-setup-file-mocks": _typescript_eslint_utils_ts_eslint.RuleModule<"preferSetupFileMocks", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
565
+ name: string;
566
+ };
517
567
  };
518
568
  configs: {
519
569
  recommended: {
@@ -522,6 +572,7 @@ declare const plugin: {
522
572
  "@sarj/zod-naming-convention": string;
523
573
  "@sarj/require-assert-never": string;
524
574
  "@sarj/require-zod-form-validation": string;
575
+ "@sarj/ban-loose-type-guards-in-tests": string;
525
576
  "@sarj/enforce-file-structure": string;
526
577
  "@sarj/no-client-side-data-fetching": string;
527
578
  "@sarj/prefer-server-actions": string;
@@ -542,8 +593,11 @@ declare const plugin: {
542
593
  "@sarj/no-cors-wildcard-with-credentials": string;
543
594
  "@sarj/no-secret-in-log": string;
544
595
  "@sarj/no-unsafe-cast": string;
596
+ "@sarj/no-unsafe-mock-casting": string;
545
597
  "@sarj/single-public-export": string;
598
+ "@sarj/primary-export-file-name": string;
546
599
  "@sarj/prefer-string-literal-union": string;
600
+ "@sarj/prefer-zod-enum": string;
547
601
  "@sarj/require-fetch-timeout": string;
548
602
  "@sarj/no-silent-promise-catch": string;
549
603
  "@sarj/require-schema-validate-search": string;
@@ -552,6 +606,7 @@ declare const plugin: {
552
606
  "@sarj/no-offset-pagination": string;
553
607
  "@sarj/no-select-star": string;
554
608
  "@sarj/no-sleep-in-test-body": string;
609
+ "@sarj/no-conditional-in-test": string;
555
610
  "@sarj/no-repeated-string-literal": string;
556
611
  "@sarj/no-positional-tuple-return": string;
557
612
  "@sarj/no-dynamic-sql": string;
@@ -563,6 +618,9 @@ declare const plugin: {
563
618
  "@sarj/no-tautological-expect": string;
564
619
  "@sarj/require-interface-for-injected-service": string;
565
620
  "@sarj/prefer-non-nullable-collection": string;
621
+ "@sarj/no-implicit-attribute-access": string;
622
+ "@sarj/no-async-callback-in-waitfor": string;
623
+ "@sarj/prefer-setup-file-mocks": string;
566
624
  };
567
625
  };
568
626
  strict: {
@@ -571,6 +629,7 @@ declare const plugin: {
571
629
  "@sarj/zod-naming-convention": string;
572
630
  "@sarj/require-assert-never": string;
573
631
  "@sarj/require-zod-form-validation": string;
632
+ "@sarj/ban-loose-type-guards-in-tests": string;
574
633
  "@sarj/enforce-file-structure": string;
575
634
  "@sarj/no-raw-env": string;
576
635
  "@sarj/prefer-shadcn": string;
@@ -594,8 +653,11 @@ declare const plugin: {
594
653
  "@sarj/no-cors-wildcard-with-credentials": string;
595
654
  "@sarj/no-secret-in-log": string;
596
655
  "@sarj/no-unsafe-cast": string;
656
+ "@sarj/no-unsafe-mock-casting": string;
597
657
  "@sarj/single-public-export": string;
658
+ "@sarj/primary-export-file-name": string;
598
659
  "@sarj/prefer-string-literal-union": string;
660
+ "@sarj/prefer-zod-enum": string;
599
661
  "@sarj/require-fetch-timeout": string;
600
662
  "@sarj/no-silent-promise-catch": string;
601
663
  "@sarj/require-schema-validate-search": string;
@@ -604,6 +666,7 @@ declare const plugin: {
604
666
  "@sarj/no-offset-pagination": string;
605
667
  "@sarj/no-select-star": string;
606
668
  "@sarj/no-sleep-in-test-body": string;
669
+ "@sarj/no-conditional-in-test": string;
607
670
  "@sarj/no-repeated-string-literal": string;
608
671
  "@sarj/no-positional-tuple-return": string;
609
672
  "@sarj/no-dynamic-sql": string;
@@ -617,6 +680,9 @@ declare const plugin: {
617
680
  "@sarj/no-tautological-expect": string;
618
681
  "@sarj/require-interface-for-injected-service": string;
619
682
  "@sarj/prefer-non-nullable-collection": string;
683
+ "@sarj/no-implicit-attribute-access": string;
684
+ "@sarj/no-async-callback-in-waitfor": string;
685
+ "@sarj/prefer-setup-file-mocks": string;
620
686
  };
621
687
  };
622
688
  };
package/dist/index.d.ts CHANGED
@@ -197,13 +197,16 @@ interface LoggingOptions {
197
197
  }
198
198
 
199
199
  declare const rules: {
200
+ "ban-loose-type-guards-in-tests": _typescript_eslint_utils_ts_eslint.RuleModule<"banLooseTypeGuardsInTests", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
201
+ name: string;
202
+ };
200
203
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
201
204
  name: string;
202
205
  };
203
206
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
204
207
  name: string;
205
208
  };
206
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
209
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
207
210
  name: string;
208
211
  };
209
212
  "no-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"noEnum", readonly [{
@@ -275,14 +278,23 @@ declare const rules: {
275
278
  "no-unsafe-cast": _typescript_eslint_utils_ts_eslint.RuleModule<"asAny" | "doubleCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
276
279
  name: string;
277
280
  };
281
+ "no-unsafe-mock-casting": _typescript_eslint_utils_ts_eslint.RuleModule<"unsafeMockCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
282
+ name: string;
283
+ };
278
284
  "prefer-string-literal-union": _typescript_eslint_utils_ts_eslint.RuleModule<"bareChoiceField" | "comparisonCluster", readonly [{
279
285
  ignoreFields?: readonly string[];
280
286
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
281
287
  name: string;
282
288
  };
289
+ "prefer-zod-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"preferEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
290
+ name: string;
291
+ };
283
292
  "single-public-export": _typescript_eslint_utils_ts_eslint.RuleModule<"renameJunkDrawer", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
284
293
  name: string;
285
294
  };
295
+ "primary-export-file-name": _typescript_eslint_utils_ts_eslint.RuleModule<"primaryExportMismatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
296
+ name: string;
297
+ };
286
298
  "no-silent-promise-catch": _typescript_eslint_utils_ts_eslint.RuleModule<"silentCatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
287
299
  name: string;
288
300
  };
@@ -309,6 +321,9 @@ declare const rules: {
309
321
  "no-sleep-in-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"noSleepInTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
310
322
  name: string;
311
323
  };
324
+ "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
325
+ name: string;
326
+ };
312
327
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
313
328
  name: string;
314
329
  };
@@ -349,9 +364,19 @@ declare const rules: {
349
364
  "require-interface-for-injected-service": _typescript_eslint_utils_ts_eslint.RuleModule<"requireInterface", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
350
365
  name: string;
351
366
  };
367
+ "strict-test-assertions": _typescript_eslint_utils_ts_eslint.RuleModule<"combineAssertions", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
352
368
  "prefer-non-nullable-collection": _typescript_eslint_utils_ts_eslint.RuleModule<"preferNonNullableCollection", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
353
369
  name: string;
354
370
  };
371
+ "no-implicit-attribute-access": _typescript_eslint_utils_ts_eslint.RuleModule<"noImplicitAttributeAccess", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
372
+ name: string;
373
+ };
374
+ "no-async-callback-in-waitfor": _typescript_eslint_utils_ts_eslint.RuleModule<"noAsyncCallbackInWaitFor", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
375
+ name: string;
376
+ };
377
+ "prefer-setup-file-mocks": _typescript_eslint_utils_ts_eslint.RuleModule<"preferSetupFileMocks", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
378
+ name: string;
379
+ };
355
380
  };
356
381
  declare const plugin: {
357
382
  meta: {
@@ -359,13 +384,16 @@ declare const plugin: {
359
384
  version: string;
360
385
  };
361
386
  rules: {
387
+ "ban-loose-type-guards-in-tests": _typescript_eslint_utils_ts_eslint.RuleModule<"banLooseTypeGuardsInTests", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
388
+ name: string;
389
+ };
362
390
  "enforce-file-structure": _typescript_eslint_utils_ts_eslint.RuleModule<"importsFirst" | "useServerDirective", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
363
391
  name: string;
364
392
  };
365
393
  "no-client-side-data-fetching": _typescript_eslint_utils_ts_eslint.RuleModule<"noClientFetch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
366
394
  name: string;
367
395
  };
368
- "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
396
+ "no-comment-cruft": _typescript_eslint_utils_ts_eslint.RuleModule<"commentedOutCode" | "sectionBanner" | "fileHeaderPreamble" | "redundantNarration" | "untrackedTodo", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
369
397
  name: string;
370
398
  };
371
399
  "no-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"noEnum", readonly [{
@@ -437,14 +465,23 @@ declare const plugin: {
437
465
  "no-unsafe-cast": _typescript_eslint_utils_ts_eslint.RuleModule<"asAny" | "doubleCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
438
466
  name: string;
439
467
  };
468
+ "no-unsafe-mock-casting": _typescript_eslint_utils_ts_eslint.RuleModule<"unsafeMockCast", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
469
+ name: string;
470
+ };
440
471
  "prefer-string-literal-union": _typescript_eslint_utils_ts_eslint.RuleModule<"bareChoiceField" | "comparisonCluster", readonly [{
441
472
  ignoreFields?: readonly string[];
442
473
  }?], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
443
474
  name: string;
444
475
  };
476
+ "prefer-zod-enum": _typescript_eslint_utils_ts_eslint.RuleModule<"preferEnum", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
477
+ name: string;
478
+ };
445
479
  "single-public-export": _typescript_eslint_utils_ts_eslint.RuleModule<"renameJunkDrawer", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
446
480
  name: string;
447
481
  };
482
+ "primary-export-file-name": _typescript_eslint_utils_ts_eslint.RuleModule<"primaryExportMismatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
483
+ name: string;
484
+ };
448
485
  "no-silent-promise-catch": _typescript_eslint_utils_ts_eslint.RuleModule<"silentCatch", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
449
486
  name: string;
450
487
  };
@@ -471,6 +508,9 @@ declare const plugin: {
471
508
  "no-sleep-in-test-body": _typescript_eslint_utils_ts_eslint.RuleModule<"noSleepInTestBody", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
472
509
  name: string;
473
510
  };
511
+ "no-conditional-in-test": _typescript_eslint_utils_ts_eslint.RuleModule<"noConditionalInTest", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
512
+ name: string;
513
+ };
474
514
  "prefer-constant-time-secret-compare": _typescript_eslint_utils_ts_eslint.RuleModule<"preferConstantTimeSecretCompare", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
475
515
  name: string;
476
516
  };
@@ -511,9 +551,19 @@ declare const plugin: {
511
551
  "require-interface-for-injected-service": _typescript_eslint_utils_ts_eslint.RuleModule<"requireInterface", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
512
552
  name: string;
513
553
  };
554
+ "strict-test-assertions": _typescript_eslint_utils_ts_eslint.RuleModule<"combineAssertions", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
514
555
  "prefer-non-nullable-collection": _typescript_eslint_utils_ts_eslint.RuleModule<"preferNonNullableCollection", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
515
556
  name: string;
516
557
  };
558
+ "no-implicit-attribute-access": _typescript_eslint_utils_ts_eslint.RuleModule<"noImplicitAttributeAccess", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
559
+ name: string;
560
+ };
561
+ "no-async-callback-in-waitfor": _typescript_eslint_utils_ts_eslint.RuleModule<"noAsyncCallbackInWaitFor", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
562
+ name: string;
563
+ };
564
+ "prefer-setup-file-mocks": _typescript_eslint_utils_ts_eslint.RuleModule<"preferSetupFileMocks", readonly [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener> & {
565
+ name: string;
566
+ };
517
567
  };
518
568
  configs: {
519
569
  recommended: {
@@ -522,6 +572,7 @@ declare const plugin: {
522
572
  "@sarj/zod-naming-convention": string;
523
573
  "@sarj/require-assert-never": string;
524
574
  "@sarj/require-zod-form-validation": string;
575
+ "@sarj/ban-loose-type-guards-in-tests": string;
525
576
  "@sarj/enforce-file-structure": string;
526
577
  "@sarj/no-client-side-data-fetching": string;
527
578
  "@sarj/prefer-server-actions": string;
@@ -542,8 +593,11 @@ declare const plugin: {
542
593
  "@sarj/no-cors-wildcard-with-credentials": string;
543
594
  "@sarj/no-secret-in-log": string;
544
595
  "@sarj/no-unsafe-cast": string;
596
+ "@sarj/no-unsafe-mock-casting": string;
545
597
  "@sarj/single-public-export": string;
598
+ "@sarj/primary-export-file-name": string;
546
599
  "@sarj/prefer-string-literal-union": string;
600
+ "@sarj/prefer-zod-enum": string;
547
601
  "@sarj/require-fetch-timeout": string;
548
602
  "@sarj/no-silent-promise-catch": string;
549
603
  "@sarj/require-schema-validate-search": string;
@@ -552,6 +606,7 @@ declare const plugin: {
552
606
  "@sarj/no-offset-pagination": string;
553
607
  "@sarj/no-select-star": string;
554
608
  "@sarj/no-sleep-in-test-body": string;
609
+ "@sarj/no-conditional-in-test": string;
555
610
  "@sarj/no-repeated-string-literal": string;
556
611
  "@sarj/no-positional-tuple-return": string;
557
612
  "@sarj/no-dynamic-sql": string;
@@ -563,6 +618,9 @@ declare const plugin: {
563
618
  "@sarj/no-tautological-expect": string;
564
619
  "@sarj/require-interface-for-injected-service": string;
565
620
  "@sarj/prefer-non-nullable-collection": string;
621
+ "@sarj/no-implicit-attribute-access": string;
622
+ "@sarj/no-async-callback-in-waitfor": string;
623
+ "@sarj/prefer-setup-file-mocks": string;
566
624
  };
567
625
  };
568
626
  strict: {
@@ -571,6 +629,7 @@ declare const plugin: {
571
629
  "@sarj/zod-naming-convention": string;
572
630
  "@sarj/require-assert-never": string;
573
631
  "@sarj/require-zod-form-validation": string;
632
+ "@sarj/ban-loose-type-guards-in-tests": string;
574
633
  "@sarj/enforce-file-structure": string;
575
634
  "@sarj/no-raw-env": string;
576
635
  "@sarj/prefer-shadcn": string;
@@ -594,8 +653,11 @@ declare const plugin: {
594
653
  "@sarj/no-cors-wildcard-with-credentials": string;
595
654
  "@sarj/no-secret-in-log": string;
596
655
  "@sarj/no-unsafe-cast": string;
656
+ "@sarj/no-unsafe-mock-casting": string;
597
657
  "@sarj/single-public-export": string;
658
+ "@sarj/primary-export-file-name": string;
598
659
  "@sarj/prefer-string-literal-union": string;
660
+ "@sarj/prefer-zod-enum": string;
599
661
  "@sarj/require-fetch-timeout": string;
600
662
  "@sarj/no-silent-promise-catch": string;
601
663
  "@sarj/require-schema-validate-search": string;
@@ -604,6 +666,7 @@ declare const plugin: {
604
666
  "@sarj/no-offset-pagination": string;
605
667
  "@sarj/no-select-star": string;
606
668
  "@sarj/no-sleep-in-test-body": string;
669
+ "@sarj/no-conditional-in-test": string;
607
670
  "@sarj/no-repeated-string-literal": string;
608
671
  "@sarj/no-positional-tuple-return": string;
609
672
  "@sarj/no-dynamic-sql": string;
@@ -617,6 +680,9 @@ declare const plugin: {
617
680
  "@sarj/no-tautological-expect": string;
618
681
  "@sarj/require-interface-for-injected-service": string;
619
682
  "@sarj/prefer-non-nullable-collection": string;
683
+ "@sarj/no-implicit-attribute-access": string;
684
+ "@sarj/no-async-callback-in-waitfor": string;
685
+ "@sarj/prefer-setup-file-mocks": string;
620
686
  };
621
687
  };
622
688
  };