tempest-express-sdk 0.20.1 → 0.22.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
@@ -348,21 +348,11 @@ declare function toDict(data: Record<string, unknown>, options?: ToDictOptions):
348
348
  * `baseResponseSchema.extend({ ... })` to build concrete `*ResponseSchema`s.
349
349
  */
350
350
  declare const baseResponseSchema: z.ZodObject<{
351
- id: z.ZodString;
351
+ id: z.ZodUUID;
352
352
  isActive: z.ZodBoolean;
353
- createdAt: z.ZodDate;
354
- updatedAt: z.ZodDate;
355
- }, "strip", z.ZodTypeAny, {
356
- id: string;
357
- isActive: boolean;
358
- createdAt: Date;
359
- updatedAt: Date;
360
- }, {
361
- id: string;
362
- isActive: boolean;
363
- createdAt: Date;
364
- updatedAt: Date;
365
- }>;
353
+ createdAt: z.ZodCoercedDate<unknown>;
354
+ updatedAt: z.ZodCoercedDate<unknown>;
355
+ }, z.core.$strip>;
366
356
  /** The inferred TS type of a {@link baseResponseSchema} payload. */
367
357
  type BaseResponse = z.infer<typeof baseResponseSchema>;
368
358
 
@@ -381,21 +371,11 @@ type BaseResponse = z.infer<typeof baseResponseSchema>;
381
371
  * to add domain filters; {@link getConditions} strips the pagination keys.
382
372
  */
383
373
  declare const paginationFilterSchema: z.ZodObject<{
384
- page: z.ZodDefault<z.ZodNumber>;
385
- pageSize: z.ZodDefault<z.ZodNumber>;
374
+ page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
375
+ pageSize: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
386
376
  orderBy: z.ZodOptional<z.ZodString>;
387
- ascending: z.ZodDefault<z.ZodBoolean>;
388
- }, "strip", z.ZodTypeAny, {
389
- page: number;
390
- pageSize: number;
391
- ascending: boolean;
392
- orderBy?: string | undefined;
393
- }, {
394
- page?: number | undefined;
395
- pageSize?: number | undefined;
396
- orderBy?: string | undefined;
397
- ascending?: boolean | undefined;
398
- }>;
377
+ ascending: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
378
+ }, z.core.$strip>;
399
379
  /** The parsed shape of {@link paginationFilterSchema}. */
400
380
  type PaginationFilter = z.infer<typeof paginationFilterSchema>;
401
381
  /**
@@ -424,42 +404,20 @@ declare function getPaginationConditions(filter: PaginationFilter): {
424
404
  * @param item - The zod schema for a single item.
425
405
  * @returns A zod object schema `{ items, total, page, pageSize, pages }`.
426
406
  */
427
- declare function paginationSchema<T extends z.ZodTypeAny>(item: T): z.ZodObject<{
428
- items: z.ZodArray<T, "many">;
407
+ declare function paginationSchema<T extends z.ZodType>(item: T): z.ZodObject<{
408
+ items: z.ZodArray<T>;
429
409
  total: z.ZodNumber;
430
410
  page: z.ZodNumber;
431
411
  pageSize: z.ZodNumber;
432
412
  pages: z.ZodNumber;
433
- }, "strip", z.ZodTypeAny, {
434
- items: T["_output"][];
435
- page: number;
436
- pageSize: number;
437
- total: number;
438
- pages: number;
439
- }, {
440
- items: T["_input"][];
441
- page: number;
442
- pageSize: number;
443
- total: number;
444
- pages: number;
445
- }>;
413
+ }, z.core.$strip>;
446
414
  /** Filter schema for cursor-paginated endpoints. */
447
415
  declare const cursorPaginationFilterSchema: z.ZodObject<{
448
416
  cursor: z.ZodOptional<z.ZodString>;
449
- limit: z.ZodDefault<z.ZodNumber>;
417
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
450
418
  orderBy: z.ZodDefault<z.ZodString>;
451
- ascending: z.ZodDefault<z.ZodBoolean>;
452
- }, "strip", z.ZodTypeAny, {
453
- orderBy: string;
454
- ascending: boolean;
455
- limit: number;
456
- cursor?: string | undefined;
457
- }, {
458
- orderBy?: string | undefined;
459
- ascending?: boolean | undefined;
460
- cursor?: string | undefined;
461
- limit?: number | undefined;
462
- }>;
419
+ ascending: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
420
+ }, z.core.$strip>;
463
421
  /** The parsed shape of {@link cursorPaginationFilterSchema}. */
464
422
  type CursorPaginationFilter = z.infer<typeof cursorPaginationFilterSchema>;
465
423
  /**
@@ -468,22 +426,12 @@ type CursorPaginationFilter = z.infer<typeof cursorPaginationFilterSchema>;
468
426
  * @param item - The zod schema for a single item.
469
427
  * @returns A zod object schema `{ items, nextCursor, hasMore, limit }`.
470
428
  */
471
- declare function cursorPaginationSchema<T extends z.ZodTypeAny>(item: T): z.ZodObject<{
472
- items: z.ZodArray<T, "many">;
429
+ declare function cursorPaginationSchema<T extends z.ZodType>(item: T): z.ZodObject<{
430
+ items: z.ZodArray<T>;
473
431
  nextCursor: z.ZodNullable<z.ZodString>;
474
432
  hasMore: z.ZodBoolean;
475
433
  limit: z.ZodNumber;
476
- }, "strip", z.ZodTypeAny, {
477
- items: T["_output"][];
478
- limit: number;
479
- nextCursor: string | null;
480
- hasMore: boolean;
481
- }, {
482
- items: T["_input"][];
483
- limit: number;
484
- nextCursor: string | null;
485
- hasMore: boolean;
486
- }>;
434
+ }, z.core.$strip>;
487
435
  /**
488
436
  * Serialize a cursor payload to an opaque URL-safe base64 string (no padding).
489
437
  *
@@ -531,7 +479,7 @@ declare const latitudeField: z.ZodNumber;
531
479
  /** A WGS-84 longitude (`-180..180`). */
532
480
  declare const longitudeField: z.ZodNumber;
533
481
  /** A non-empty string; whitespace is trimmed before the length check. */
534
- declare const nonEmptyStrField: z.ZodPipeline<z.ZodEffects<z.ZodString, string, string>, z.ZodString>;
482
+ declare const nonEmptyStrField: z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>;
535
483
  /** A URL slug: lowercase alphanumerics separated by single hyphens. */
536
484
  declare const slugField: z.ZodString;
537
485
  /** A hex color: `#rgb` or `#rrggbb`. */
@@ -542,6 +490,31 @@ declare const hexColorField: z.ZodString;
542
490
  * to strings, so money stays exact instead of drifting through a float.
543
491
  */
544
492
  declare const priceField: z.ZodString;
493
+ /**
494
+ * A boolean read from a **textual** source — a query string or an environment
495
+ * variable, where every value arrives as a string.
496
+ *
497
+ * `z.coerce.boolean()` is the wrong tool for those: it is `Boolean(input)`, so
498
+ * every non-empty string is `true` — `"false"` and `"0"` included — and there is
499
+ * no way to ask for `false` over the wire. This reads the usual textual tokens
500
+ * in both directions (`true`/`1`/`yes`/`on`/`y`/`enabled` and
501
+ * `false`/`0`/`no`/`off`/`n`/`disabled`, case-insensitive, surrounding
502
+ * whitespace trimmed) and **rejects** anything else, so a typo surfaces as a
503
+ * validation error instead of silently becoming `false`.
504
+ *
505
+ * An absent value — and an empty or whitespace-only string, which is how an
506
+ * unset `.env` entry (`DEBUG=`) reaches the schema — falls back to
507
+ * `defaultValue`. Real booleans pass through untouched, so a schema built for
508
+ * `process.env` still parses a synthetic object in tests.
509
+ *
510
+ * The OpenAPI metadata is pinned to `type: boolean` (with the default) so the
511
+ * document describes the field the client actually sends, not the union used to
512
+ * parse it.
513
+ *
514
+ * @param defaultValue - The value used when the field is absent or empty.
515
+ * @returns A zod schema producing a `boolean`.
516
+ */
517
+ declare function looseBoolean(defaultValue: boolean): z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
545
518
 
546
519
  /**
547
520
  * Delta-sync pagination schemas, mirroring `schemas.pagination` (Sync* half).
@@ -556,21 +529,11 @@ declare const priceField: z.ZodString;
556
529
  * filters; the sync keys stay reserved.
557
530
  */
558
531
  declare const syncFilterSchema: z.ZodObject<{
559
- since: z.ZodOptional<z.ZodDate>;
532
+ since: z.ZodOptional<z.ZodCoercedDate<unknown>>;
560
533
  cursor: z.ZodOptional<z.ZodString>;
561
- limit: z.ZodDefault<z.ZodNumber>;
562
- includeDeleted: z.ZodDefault<z.ZodBoolean>;
563
- }, "strip", z.ZodTypeAny, {
564
- limit: number;
565
- includeDeleted: boolean;
566
- cursor?: string | undefined;
567
- since?: Date | undefined;
568
- }, {
569
- cursor?: string | undefined;
570
- limit?: number | undefined;
571
- since?: Date | undefined;
572
- includeDeleted?: boolean | undefined;
573
- }>;
534
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
535
+ includeDeleted: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
536
+ }, z.core.$strip>;
574
537
  /** The parsed shape of {@link syncFilterSchema}. */
575
538
  type SyncFilter = z.infer<typeof syncFilterSchema>;
576
539
  /**
@@ -580,25 +543,13 @@ type SyncFilter = z.infer<typeof syncFilterSchema>;
580
543
  * @param item - The zod schema for a single item.
581
544
  * @returns A zod object `{ items, nextCursor, hasMore, limit, serverTime }`.
582
545
  */
583
- declare function syncPaginationSchema<T extends z.ZodTypeAny>(item: T): z.ZodObject<{
584
- items: z.ZodArray<T, "many">;
546
+ declare function syncPaginationSchema<T extends z.ZodType>(item: T): z.ZodObject<{
547
+ items: z.ZodArray<T>;
585
548
  nextCursor: z.ZodNullable<z.ZodString>;
586
549
  hasMore: z.ZodBoolean;
587
550
  limit: z.ZodNumber;
588
- serverTime: z.ZodDate;
589
- }, "strip", z.ZodTypeAny, {
590
- items: T["_output"][];
591
- limit: number;
592
- nextCursor: string | null;
593
- hasMore: boolean;
594
- serverTime: Date;
595
- }, {
596
- items: T["_input"][];
597
- limit: number;
598
- nextCursor: string | null;
599
- hasMore: boolean;
600
- serverTime: Date;
601
- }>;
551
+ serverTime: z.ZodCoercedDate<unknown>;
552
+ }, z.core.$strip>;
602
553
 
603
554
  /**
604
555
  * RFC-5988 pagination `Link` header builder, mirroring `schemas.link_headers`.
@@ -636,7 +587,7 @@ declare function buildPaginationLinkHeader(options: PaginationLinkOptions): stri
636
587
  * `logEntrySchema` — the shape of one structured log record, mirroring
637
588
  * `schemas.logs.LogEntrySchema`.
638
589
  *
639
- * Matches the JSON `JSONLogger` emits. It is intentionally open (`.passthrough()`)
590
+ * Matches the JSON `JSONLogger` emits. It is intentionally open (`.loose()`)
640
591
  * so arbitrary `extra` keys (`path`, `requestId`, `http_500`, …) survive instead
641
592
  * of being dropped — useful when a logs endpoint parses and returns records.
642
593
  */
@@ -649,21 +600,7 @@ declare const logEntrySchema: z.ZodObject<{
649
600
  message: z.ZodString;
650
601
  requestId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
651
602
  stack: z.ZodOptional<z.ZodNullable<z.ZodString>>;
652
- }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
653
- timestamp: z.ZodString;
654
- level: z.ZodString;
655
- logger: z.ZodString;
656
- message: z.ZodString;
657
- requestId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
658
- stack: z.ZodOptional<z.ZodNullable<z.ZodString>>;
659
- }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
660
- timestamp: z.ZodString;
661
- level: z.ZodString;
662
- logger: z.ZodString;
663
- message: z.ZodString;
664
- requestId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
665
- stack: z.ZodOptional<z.ZodNullable<z.ZodString>>;
666
- }, z.ZodTypeAny, "passthrough">>;
603
+ }, z.core.$loose>;
667
604
  /** The parsed shape of {@link logEntrySchema} (plus any extra keys). */
668
605
  type LogEntry = z.infer<typeof logEntrySchema>;
669
606
 
@@ -680,8 +617,8 @@ type LogEntry = z.infer<typeof logEntrySchema>;
680
617
  /** Server bind/runtime settings. Defaults bind to localhost. */
681
618
  declare const serverSettingsShape: {
682
619
  readonly HOST: z.ZodDefault<z.ZodString>;
683
- readonly PORT: z.ZodDefault<z.ZodNumber>;
684
- readonly DEBUG: z.ZodDefault<z.ZodBoolean>;
620
+ readonly PORT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
621
+ readonly DEBUG: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
685
622
  };
686
623
  /** Database connection settings. */
687
624
  declare const databaseSettingsShape: {
@@ -689,36 +626,24 @@ declare const databaseSettingsShape: {
689
626
  };
690
627
  /** CORS settings. `CORS_ORIGINS` is a comma-separated list. */
691
628
  declare const corsSettingsShape: {
692
- readonly CORS_ORIGINS: z.ZodEffects<z.ZodDefault<z.ZodString>, string[], string | undefined>;
629
+ readonly CORS_ORIGINS: z.ZodPipe<z.ZodDefault<z.ZodString>, z.ZodTransform<string[], string>>;
693
630
  };
694
631
  /** The combined base settings shape (server + database + CORS). */
695
632
  declare const baseAppSettingsShape: {
696
- readonly CORS_ORIGINS: z.ZodEffects<z.ZodDefault<z.ZodString>, string[], string | undefined>;
633
+ readonly CORS_ORIGINS: z.ZodPipe<z.ZodDefault<z.ZodString>, z.ZodTransform<string[], string>>;
697
634
  readonly DATABASE_URL: z.ZodDefault<z.ZodString>;
698
635
  readonly HOST: z.ZodDefault<z.ZodString>;
699
- readonly PORT: z.ZodDefault<z.ZodNumber>;
700
- readonly DEBUG: z.ZodDefault<z.ZodBoolean>;
636
+ readonly PORT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
637
+ readonly DEBUG: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
701
638
  };
702
639
  /** A zod object built from {@link baseAppSettingsShape}. */
703
640
  declare const baseAppSettingsSchema: z.ZodObject<{
704
- readonly CORS_ORIGINS: z.ZodEffects<z.ZodDefault<z.ZodString>, string[], string | undefined>;
705
- readonly DATABASE_URL: z.ZodDefault<z.ZodString>;
706
- readonly HOST: z.ZodDefault<z.ZodString>;
707
- readonly PORT: z.ZodDefault<z.ZodNumber>;
708
- readonly DEBUG: z.ZodDefault<z.ZodBoolean>;
709
- }, "strip", z.ZodTypeAny, {
710
- CORS_ORIGINS: string[];
711
- DATABASE_URL: string;
712
- HOST: string;
713
- PORT: number;
714
- DEBUG: boolean;
715
- }, {
716
- CORS_ORIGINS?: string | undefined;
717
- DATABASE_URL?: string | undefined;
718
- HOST?: string | undefined;
719
- PORT?: number | undefined;
720
- DEBUG?: boolean | undefined;
721
- }>;
641
+ CORS_ORIGINS: z.ZodPipe<z.ZodDefault<z.ZodString>, z.ZodTransform<string[], string>>;
642
+ DATABASE_URL: z.ZodDefault<z.ZodString>;
643
+ HOST: z.ZodDefault<z.ZodString>;
644
+ PORT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
645
+ DEBUG: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
646
+ }, z.core.$strip>;
722
647
  /** The parsed shape of {@link baseAppSettingsSchema}. */
723
648
  type BaseAppSettings = z.infer<typeof baseAppSettingsSchema>;
724
649
  /**
@@ -737,7 +662,7 @@ type BaseAppSettings = z.infer<typeof baseAppSettingsSchema>;
737
662
  * @returns The validated, frozen settings object.
738
663
  * @throws {z.ZodError} When required env vars are missing or malformed.
739
664
  */
740
- declare function loadSettings<S extends z.ZodTypeAny>(schema: S, env?: NodeJS.ProcessEnv): Readonly<z.infer<S>>;
665
+ declare function loadSettings<S extends z.ZodType>(schema: S, env?: NodeJS.ProcessEnv): Readonly<z.infer<S>>;
741
666
 
742
667
  /**
743
668
  * Composable settings fragments covering common service dependencies,
@@ -761,26 +686,22 @@ declare function loadSettings<S extends z.ZodTypeAny>(schema: S, env?: NodeJS.Pr
761
686
  * fragments stay pure and testable.
762
687
  */
763
688
 
764
- /**
765
- * Parse an environment string into a boolean. Unlike `z.coerce.boolean()`
766
- * (which treats every non-empty string — including `"false"` — as `true`), this
767
- * reads the usual truthy tokens and treats everything else as `false`.
768
- *
769
- * @param defaultValue - The value when the variable is absent.
770
- * @returns A zod schema coercing `"true"`/`"1"`/`"yes"`/`"on"` to `true`.
771
- */
772
- declare function envBoolean(defaultValue: boolean): z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
773
689
  /**
774
690
  * Parse a comma-separated environment string into a trimmed, non-empty list.
775
691
  *
776
692
  * @param defaultValue - The default CSV string when the variable is absent.
777
693
  * @returns A zod schema producing `string[]`.
778
694
  */
779
- declare function envList(defaultValue?: string): z.ZodEffects<z.ZodDefault<z.ZodString>, string[], string | undefined>;
695
+ declare function envList(defaultValue?: string): z.ZodPipe<z.ZodDefault<z.ZodString>, z.ZodTransform<string[], string>>;
780
696
  /** Structured logging configuration. */
781
697
  declare const logSettingsShape: {
782
- readonly LOG_LEVEL: z.ZodDefault<z.ZodEnum<["DEBUG", "INFO", "WARNING", "ERROR"]>>;
783
- readonly LOG_JSON: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
698
+ readonly LOG_LEVEL: z.ZodDefault<z.ZodEnum<{
699
+ DEBUG: "DEBUG";
700
+ INFO: "INFO";
701
+ WARNING: "WARNING";
702
+ ERROR: "ERROR";
703
+ }>>;
704
+ readonly LOG_JSON: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
784
705
  readonly LOG_DIR: z.ZodDefault<z.ZodString>;
785
706
  };
786
707
  /** Redis connection settings (cache / sessions / SSE broker). */
@@ -790,14 +711,14 @@ declare const redisSettingsShape: {
790
711
  /** RabbitMQ connection settings (queue broker). */
791
712
  declare const rabbitmqSettingsShape: {
792
713
  readonly RABBITMQ_URL: z.ZodDefault<z.ZodString>;
793
- readonly RABBITMQ_PREFETCH_COUNT: z.ZodDefault<z.ZodNumber>;
714
+ readonly RABBITMQ_PREFETCH_COUNT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
794
715
  };
795
716
  /** JWT signing/verification settings. */
796
717
  declare const jwtSettingsShape: {
797
718
  readonly JWT_SECRET: z.ZodDefault<z.ZodString>;
798
719
  readonly JWT_ALGORITHM: z.ZodDefault<z.ZodString>;
799
- readonly JWT_ACCESS_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
800
- readonly JWT_REFRESH_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
720
+ readonly JWT_ACCESS_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
721
+ readonly JWT_REFRESH_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
801
722
  readonly JWT_ISSUER: z.ZodOptional<z.ZodString>;
802
723
  };
803
724
  /** Opaque shared-secret token settings (`X-Token` guards). */
@@ -807,57 +728,61 @@ declare const tokenSettingsShape: {
807
728
  /** SMTP email transport settings. */
808
729
  declare const emailSettingsShape: {
809
730
  readonly SMTP_HOST: z.ZodDefault<z.ZodString>;
810
- readonly SMTP_PORT: z.ZodDefault<z.ZodNumber>;
731
+ readonly SMTP_PORT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
811
732
  readonly SMTP_USERNAME: z.ZodOptional<z.ZodString>;
812
733
  readonly SMTP_PASSWORD: z.ZodOptional<z.ZodString>;
813
734
  readonly SMTP_FROM_ADDR: z.ZodDefault<z.ZodString>;
814
- readonly SMTP_USE_TLS: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
815
- readonly SMTP_USE_SSL: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
816
- readonly SMTP_TIMEOUT_SECONDS: z.ZodDefault<z.ZodNumber>;
735
+ readonly SMTP_USE_TLS: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
736
+ readonly SMTP_USE_SSL: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
737
+ readonly SMTP_TIMEOUT_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
817
738
  };
818
739
  /** Local upload storage settings. */
819
740
  declare const uploadSettingsShape: {
820
741
  readonly UPLOAD_DIR: z.ZodDefault<z.ZodString>;
821
- readonly UPLOAD_MAX_SIZE_BYTES: z.ZodDefault<z.ZodNumber>;
822
- readonly UPLOAD_ALLOWED_EXTENSIONS: z.ZodEffects<z.ZodDefault<z.ZodString>, string[], string | undefined>;
823
- readonly UPLOAD_ALLOWED_MIMETYPES: z.ZodEffects<z.ZodDefault<z.ZodString>, string[], string | undefined>;
742
+ readonly UPLOAD_MAX_SIZE_BYTES: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
743
+ readonly UPLOAD_ALLOWED_EXTENSIONS: z.ZodPipe<z.ZodDefault<z.ZodString>, z.ZodTransform<string[], string>>;
744
+ readonly UPLOAD_ALLOWED_MIMETYPES: z.ZodPipe<z.ZodDefault<z.ZodString>, z.ZodTransform<string[], string>>;
824
745
  };
825
746
  /** MinIO / S3 object-storage settings. */
826
747
  declare const minioSettingsShape: {
827
748
  readonly MINIO_ENDPOINT: z.ZodDefault<z.ZodString>;
828
749
  readonly MINIO_ACCESS_KEY: z.ZodDefault<z.ZodString>;
829
750
  readonly MINIO_SECRET_KEY: z.ZodDefault<z.ZodString>;
830
- readonly MINIO_SECURE: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
751
+ readonly MINIO_SECURE: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
831
752
  readonly MINIO_REGION: z.ZodDefault<z.ZodString>;
832
753
  readonly MINIO_DEFAULT_BUCKET: z.ZodDefault<z.ZodString>;
833
754
  readonly MINIO_PUBLIC_ENDPOINT: z.ZodOptional<z.ZodString>;
834
- readonly MINIO_PUBLIC_SECURE: z.ZodEffects<z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean | undefined, string | boolean | undefined>;
755
+ readonly MINIO_PUBLIC_SECURE: z.ZodPipe<z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>, z.ZodTransform<boolean | undefined, string | boolean | undefined>>;
835
756
  };
836
757
  /** Web Push (VAPID) settings. */
837
758
  declare const webPushSettingsShape: {
838
759
  readonly VAPID_PUBLIC_KEY: z.ZodDefault<z.ZodString>;
839
760
  readonly VAPID_PRIVATE_KEY: z.ZodDefault<z.ZodString>;
840
761
  readonly VAPID_SUBJECT: z.ZodDefault<z.ZodString>;
841
- readonly WEBPUSH_DEFAULT_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
762
+ readonly WEBPUSH_DEFAULT_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
842
763
  };
843
764
  /** Server-side session settings (cookie + TTL). */
844
765
  declare const sessionSettingsShape: {
845
- readonly SESSION_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
846
- readonly SESSION_SLIDING: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
766
+ readonly SESSION_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
767
+ readonly SESSION_SLIDING: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
847
768
  readonly SESSION_COOKIE_NAME: z.ZodDefault<z.ZodString>;
848
769
  readonly SESSION_COOKIE_DOMAIN: z.ZodOptional<z.ZodString>;
849
770
  readonly SESSION_COOKIE_PATH: z.ZodDefault<z.ZodString>;
850
- readonly SESSION_COOKIE_SECURE: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
851
- readonly SESSION_COOKIE_HTTPONLY: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
852
- readonly SESSION_COOKIE_SAMESITE: z.ZodDefault<z.ZodEnum<["lax", "strict", "none"]>>;
853
- readonly SESSION_ROTATE_ON_LOGIN: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
771
+ readonly SESSION_COOKIE_SECURE: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
772
+ readonly SESSION_COOKIE_HTTPONLY: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
773
+ readonly SESSION_COOKIE_SAMESITE: z.ZodDefault<z.ZodEnum<{
774
+ lax: "lax";
775
+ strict: "strict";
776
+ none: "none";
777
+ }>>;
778
+ readonly SESSION_ROTATE_ON_LOGIN: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
854
779
  };
855
780
  /** WebSocket hub tuning. */
856
781
  declare const webSocketSettingsShape: {
857
- readonly WS_HEARTBEAT_SECONDS: z.ZodDefault<z.ZodNumber>;
858
- readonly WS_HEARTBEAT_TIMEOUT_SECONDS: z.ZodDefault<z.ZodNumber>;
859
- readonly WS_MAX_CONNECTIONS_PER_USER: z.ZodDefault<z.ZodNumber>;
860
- readonly WS_MAX_MESSAGE_BYTES: z.ZodDefault<z.ZodNumber>;
782
+ readonly WS_HEARTBEAT_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
783
+ readonly WS_HEARTBEAT_TIMEOUT_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
784
+ readonly WS_MAX_CONNECTIONS_PER_USER: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
785
+ readonly WS_MAX_MESSAGE_BYTES: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
861
786
  };
862
787
  /**
863
788
  * Authentication flow settings (signup/activation/reset/MFA + token delivery).
@@ -866,23 +791,31 @@ declare const webSocketSettingsShape: {
866
791
  * decoupled frontend.
867
792
  */
868
793
  declare const authSettingsShape: {
869
- readonly AUTH_AUTO_ACTIVATE: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
870
- readonly AUTH_RETURN_TOKEN_IN_RESPONSE: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
871
- readonly AUTH_ACTIVATION_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
872
- readonly AUTH_PASSWORD_RESET_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
794
+ readonly AUTH_AUTO_ACTIVATE: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
795
+ readonly AUTH_RETURN_TOKEN_IN_RESPONSE: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
796
+ readonly AUTH_ACTIVATION_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
797
+ readonly AUTH_PASSWORD_RESET_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
873
798
  readonly AUTH_ACTIVATION_URL_TEMPLATE: z.ZodDefault<z.ZodString>;
874
799
  readonly AUTH_PASSWORD_RESET_URL_TEMPLATE: z.ZodDefault<z.ZodString>;
875
- readonly AUTH_PASSWORD_MIN_LENGTH: z.ZodDefault<z.ZodNumber>;
876
- readonly AUTH_PASSWORD_REQUIRE_COMPLEXITY: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
800
+ readonly AUTH_PASSWORD_MIN_LENGTH: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
801
+ readonly AUTH_PASSWORD_REQUIRE_COMPLEXITY: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
877
802
  readonly AUTH_DEFAULT_LOCALE: z.ZodDefault<z.ZodString>;
878
- readonly AUTH_MFA_ENABLED: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
803
+ readonly AUTH_MFA_ENABLED: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
879
804
  readonly AUTH_MFA_ISSUER: z.ZodDefault<z.ZodString>;
880
- readonly AUTH_MFA_RECOVERY_CODES_COUNT: z.ZodDefault<z.ZodNumber>;
881
- readonly AUTH_MFA_TOKEN_TTL_SECONDS: z.ZodDefault<z.ZodNumber>;
882
- readonly AUTH_MFA_VERIFY_WINDOW: z.ZodDefault<z.ZodNumber>;
883
- readonly AUTH_TOKEN_DELIVERY: z.ZodDefault<z.ZodEnum<["bearer", "cookie", "both"]>>;
884
- readonly AUTH_COOKIE_SECURE: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>, boolean, string | boolean | undefined>;
885
- readonly AUTH_COOKIE_SAMESITE: z.ZodDefault<z.ZodEnum<["lax", "strict", "none"]>>;
805
+ readonly AUTH_MFA_RECOVERY_CODES_COUNT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
806
+ readonly AUTH_MFA_TOKEN_TTL_SECONDS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
807
+ readonly AUTH_MFA_VERIFY_WINDOW: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
808
+ readonly AUTH_TOKEN_DELIVERY: z.ZodDefault<z.ZodEnum<{
809
+ bearer: "bearer";
810
+ cookie: "cookie";
811
+ both: "both";
812
+ }>>;
813
+ readonly AUTH_COOKIE_SECURE: z.ZodPreprocess<z.ZodDefault<z.ZodUnion<readonly [z.ZodBoolean, z.ZodCodec<z.ZodString, z.ZodBoolean>]>>, unknown>;
814
+ readonly AUTH_COOKIE_SAMESITE: z.ZodDefault<z.ZodEnum<{
815
+ lax: "lax";
816
+ strict: "strict";
817
+ none: "none";
818
+ }>>;
886
819
  readonly AUTH_COOKIE_DOMAIN: z.ZodOptional<z.ZodString>;
887
820
  readonly AUTH_ACCESS_COOKIE_NAME: z.ZodDefault<z.ZodString>;
888
821
  readonly AUTH_REFRESH_COOKIE_NAME: z.ZodDefault<z.ZodString>;
@@ -1517,15 +1450,15 @@ declare function normalizeCep(value: string): string;
1517
1450
  /** Normalize a BR phone to digits only, throwing when invalid. */
1518
1451
  declare function normalizePhoneBr(value: string): string;
1519
1452
  /** Zod field: validates a CPF and normalizes it to 11 digits. */
1520
- declare const cpfField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
1453
+ declare const cpfField: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1521
1454
  /** Zod field: validates a CNPJ and normalizes it to 14 digits. */
1522
- declare const cnpjField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
1455
+ declare const cnpjField: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1523
1456
  /** Zod field: accepts either a CPF or a CNPJ, normalized to digits. */
1524
- declare const cpfOrCnpjField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
1457
+ declare const cpfOrCnpjField: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1525
1458
  /** Zod field: validates a CEP and normalizes it to 8 digits. */
1526
- declare const cepField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
1459
+ declare const cepField: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1527
1460
  /** Zod field: validates a BR phone and normalizes it to digits. */
1528
- declare const phoneBrField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
1461
+ declare const phoneBrField: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1529
1462
 
1530
1463
  /** The 27 Brazilian federative-unit acronyms. */
1531
1464
  declare const UF: Enum<{
@@ -1595,7 +1528,7 @@ declare function normalizeUf(value: string): string;
1595
1528
  /** Whether `name` is a municipality of `uf` (accent/case-insensitive). */
1596
1529
  declare function isValidCity(name: string, uf: string): boolean;
1597
1530
  /** Zod field: validates a UF and normalizes it to its uppercase acronym. */
1598
- declare const ufField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
1531
+ declare const ufField: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1599
1532
 
1600
1533
  /** Datetime helpers, mirroring `utils.datetime`. */
1601
1534
  /**
@@ -2684,13 +2617,7 @@ declare class RedisSSEBroker {
2684
2617
  declare const wsEnvelopeSchema: z.ZodObject<{
2685
2618
  type: z.ZodString;
2686
2619
  data: z.ZodOptional<z.ZodUnknown>;
2687
- }, "strip", z.ZodTypeAny, {
2688
- type: string;
2689
- data?: unknown;
2690
- }, {
2691
- type: string;
2692
- data?: unknown;
2693
- }>;
2620
+ }, z.core.$strip>;
2694
2621
  /** A typed message envelope. */
2695
2622
  type WSEnvelope = z.infer<typeof wsEnvelopeSchema>;
2696
2623
 
@@ -3118,56 +3045,22 @@ declare class S3UploadStorage implements UploadStorage {
3118
3045
  declare const webPushKeysSchema: z.ZodObject<{
3119
3046
  p256dh: z.ZodString;
3120
3047
  auth: z.ZodString;
3121
- }, "strip", z.ZodTypeAny, {
3122
- auth: string;
3123
- p256dh: string;
3124
- }, {
3125
- auth: string;
3126
- p256dh: string;
3127
- }>;
3048
+ }, z.core.$strip>;
3128
3049
  /** A browser push subscription. */
3129
3050
  declare const webPushSubscriptionSchema: z.ZodObject<{
3130
- endpoint: z.ZodString;
3051
+ endpoint: z.ZodURL;
3131
3052
  keys: z.ZodObject<{
3132
3053
  p256dh: z.ZodString;
3133
3054
  auth: z.ZodString;
3134
- }, "strip", z.ZodTypeAny, {
3135
- auth: string;
3136
- p256dh: string;
3137
- }, {
3138
- auth: string;
3139
- p256dh: string;
3140
- }>;
3141
- }, "strip", z.ZodTypeAny, {
3142
- keys: {
3143
- auth: string;
3144
- p256dh: string;
3145
- };
3146
- endpoint: string;
3147
- }, {
3148
- keys: {
3149
- auth: string;
3150
- p256dh: string;
3151
- };
3152
- endpoint: string;
3153
- }>;
3055
+ }, z.core.$strip>;
3056
+ }, z.core.$strip>;
3154
3057
  /** A push notification payload. */
3155
3058
  declare const webPushPayloadSchema: z.ZodObject<{
3156
3059
  title: z.ZodString;
3157
3060
  body: z.ZodOptional<z.ZodString>;
3158
3061
  url: z.ZodOptional<z.ZodString>;
3159
3062
  data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3160
- }, "strip", z.ZodTypeAny, {
3161
- title: string;
3162
- data?: Record<string, unknown> | undefined;
3163
- url?: string | undefined;
3164
- body?: string | undefined;
3165
- }, {
3166
- title: string;
3167
- data?: Record<string, unknown> | undefined;
3168
- url?: string | undefined;
3169
- body?: string | undefined;
3170
- }>;
3063
+ }, z.core.$strip>;
3171
3064
  type WebPushKeys = z.infer<typeof webPushKeysSchema>;
3172
3065
  type WebPushSubscription = z.infer<typeof webPushSubscriptionSchema>;
3173
3066
  type WebPushPayload = z.infer<typeof webPushPayloadSchema>;
@@ -3253,33 +3146,22 @@ interface SendOptions {
3253
3146
  }
3254
3147
  /** A normalized inbound (or echoed outbound) message. */
3255
3148
  declare const inboundMessageSchema: z.ZodObject<{
3256
- /** Conversation JID / sender (e.g. `5511999999999@s.whatsapp.net`). */
3257
3149
  from: z.ZodString;
3258
- /** Provider message id. */
3259
3150
  messageId: z.ZodString;
3260
- /** Text body, when present. */
3261
3151
  text: z.ZodOptional<z.ZodString>;
3262
- /** Media kind, or `null` for plain text. */
3263
- mediaType: z.ZodNullable<z.ZodEnum<["image", "video", "audio", "document", "sticker"]>>;
3264
- /** ISO-8601 timestamp. */
3152
+ mediaType: z.ZodNullable<z.ZodEnum<{
3153
+ image: "image";
3154
+ video: "video";
3155
+ audio: "audio";
3156
+ document: "document";
3157
+ sticker: "sticker";
3158
+ }>>;
3265
3159
  timestamp: z.ZodString;
3266
- /** Delivery direction. */
3267
- direction: z.ZodOptional<z.ZodEnum<["incoming", "outgoing"]>>;
3268
- }, "strip", z.ZodTypeAny, {
3269
- from: string;
3270
- timestamp: string;
3271
- messageId: string;
3272
- mediaType: "image" | "video" | "audio" | "document" | "sticker" | null;
3273
- text?: string | undefined;
3274
- direction?: "incoming" | "outgoing" | undefined;
3275
- }, {
3276
- from: string;
3277
- timestamp: string;
3278
- messageId: string;
3279
- mediaType: "image" | "video" | "audio" | "document" | "sticker" | null;
3280
- text?: string | undefined;
3281
- direction?: "incoming" | "outgoing" | undefined;
3282
- }>;
3160
+ direction: z.ZodOptional<z.ZodEnum<{
3161
+ incoming: "incoming";
3162
+ outgoing: "outgoing";
3163
+ }>>;
3164
+ }, z.core.$strip>;
3283
3165
  /** A normalized inbound message. */
3284
3166
  type InboundMessage = z.infer<typeof inboundMessageSchema>;
3285
3167
  /** Handler invoked for each inbound message. */
@@ -3666,9 +3548,9 @@ interface AdminResource<T = unknown> {
3666
3548
  /** Delete a record by id. */
3667
3549
  remove?(id: string): Promise<void>;
3668
3550
  /** Zod schema validating the create body. */
3669
- createSchema?: z.ZodTypeAny;
3551
+ createSchema?: z.ZodType;
3670
3552
  /** Zod schema validating the update body. */
3671
- updateSchema?: z.ZodTypeAny;
3553
+ updateSchema?: z.ZodType;
3672
3554
  }
3673
3555
  /** A registry of admin resources. */
3674
3556
  declare class AdminSite {
@@ -3735,197 +3617,77 @@ declare function makeAdminRouter(site: AdminSite, options?: AdminRouterOptions):
3735
3617
 
3736
3618
  /** Request body for `POST /auth/signup`. */
3737
3619
  declare const signupSchema: z.ZodObject<{
3738
- email: z.ZodString;
3620
+ email: z.ZodEmail;
3739
3621
  password: z.ZodString;
3740
3622
  name: z.ZodOptional<z.ZodString>;
3741
- }, "strip", z.ZodTypeAny, {
3742
- password: string;
3743
- email: string;
3744
- name?: string | undefined;
3745
- }, {
3746
- password: string;
3747
- email: string;
3748
- name?: string | undefined;
3749
- }>;
3623
+ }, z.core.$strip>;
3750
3624
  /** Request body for `POST /auth/login`. */
3751
3625
  declare const loginSchema: z.ZodObject<{
3752
- email: z.ZodString;
3626
+ email: z.ZodEmail;
3753
3627
  password: z.ZodString;
3754
- }, "strip", z.ZodTypeAny, {
3755
- password: string;
3756
- email: string;
3757
- }, {
3758
- password: string;
3759
- email: string;
3760
- }>;
3628
+ }, z.core.$strip>;
3761
3629
  /** Request body for `POST /auth/refresh`. */
3762
3630
  declare const refreshSchema: z.ZodObject<{
3763
3631
  refreshToken: z.ZodString;
3764
- }, "strip", z.ZodTypeAny, {
3765
- refreshToken: string;
3766
- }, {
3767
- refreshToken: string;
3768
- }>;
3632
+ }, z.core.$strip>;
3769
3633
  /** A signed access/refresh token pair. */
3770
3634
  declare const tokenPairSchema: z.ZodObject<{
3771
3635
  accessToken: z.ZodString;
3772
3636
  refreshToken: z.ZodString;
3773
3637
  tokenType: z.ZodLiteral<"bearer">;
3774
3638
  expiresIn: z.ZodNumber;
3775
- }, "strip", z.ZodTypeAny, {
3776
- refreshToken: string;
3777
- accessToken: string;
3778
- tokenType: "bearer";
3779
- expiresIn: number;
3780
- }, {
3781
- refreshToken: string;
3782
- accessToken: string;
3783
- tokenType: "bearer";
3784
- expiresIn: number;
3785
- }>;
3639
+ }, z.core.$strip>;
3786
3640
  /** Public user projection returned by `GET /auth/me` and signup/login. */
3787
3641
  declare const userPublicSchema: z.ZodObject<{
3788
3642
  id: z.ZodString;
3789
- email: z.ZodString;
3643
+ email: z.ZodEmail;
3790
3644
  name: z.ZodNullable<z.ZodString>;
3791
3645
  isActive: z.ZodBoolean;
3792
- roles: z.ZodArray<z.ZodString, "many">;
3793
- }, "strip", z.ZodTypeAny, {
3794
- id: string;
3795
- isActive: boolean;
3796
- name: string | null;
3797
- email: string;
3798
- roles: string[];
3799
- }, {
3800
- id: string;
3801
- isActive: boolean;
3802
- name: string | null;
3803
- email: string;
3804
- roles: string[];
3805
- }>;
3646
+ roles: z.ZodArray<z.ZodString>;
3647
+ }, z.core.$strip>;
3806
3648
  /** Response body for `POST /auth/signup` and `POST /auth/login`. */
3807
3649
  declare const authResponseSchema: z.ZodObject<{
3808
3650
  user: z.ZodObject<{
3809
3651
  id: z.ZodString;
3810
- email: z.ZodString;
3652
+ email: z.ZodEmail;
3811
3653
  name: z.ZodNullable<z.ZodString>;
3812
3654
  isActive: z.ZodBoolean;
3813
- roles: z.ZodArray<z.ZodString, "many">;
3814
- }, "strip", z.ZodTypeAny, {
3815
- id: string;
3816
- isActive: boolean;
3817
- name: string | null;
3818
- email: string;
3819
- roles: string[];
3820
- }, {
3821
- id: string;
3822
- isActive: boolean;
3823
- name: string | null;
3824
- email: string;
3825
- roles: string[];
3826
- }>;
3655
+ roles: z.ZodArray<z.ZodString>;
3656
+ }, z.core.$strip>;
3827
3657
  tokens: z.ZodObject<{
3828
3658
  accessToken: z.ZodString;
3829
3659
  refreshToken: z.ZodString;
3830
3660
  tokenType: z.ZodLiteral<"bearer">;
3831
3661
  expiresIn: z.ZodNumber;
3832
- }, "strip", z.ZodTypeAny, {
3833
- refreshToken: string;
3834
- accessToken: string;
3835
- tokenType: "bearer";
3836
- expiresIn: number;
3837
- }, {
3838
- refreshToken: string;
3839
- accessToken: string;
3840
- tokenType: "bearer";
3841
- expiresIn: number;
3842
- }>;
3843
- }, "strip", z.ZodTypeAny, {
3844
- user: {
3845
- id: string;
3846
- isActive: boolean;
3847
- name: string | null;
3848
- email: string;
3849
- roles: string[];
3850
- };
3851
- tokens: {
3852
- refreshToken: string;
3853
- accessToken: string;
3854
- tokenType: "bearer";
3855
- expiresIn: number;
3856
- };
3857
- }, {
3858
- user: {
3859
- id: string;
3860
- isActive: boolean;
3861
- name: string | null;
3862
- email: string;
3863
- roles: string[];
3864
- };
3865
- tokens: {
3866
- refreshToken: string;
3867
- accessToken: string;
3868
- tokenType: "bearer";
3869
- expiresIn: number;
3870
- };
3871
- }>;
3662
+ }, z.core.$strip>;
3663
+ }, z.core.$strip>;
3872
3664
  /** MFA enrollment response (`POST /auth/mfa/enroll`). */
3873
3665
  declare const mfaEnrollResponseSchema: z.ZodObject<{
3874
3666
  secret: z.ZodString;
3875
3667
  otpauthUri: z.ZodString;
3876
- }, "strip", z.ZodTypeAny, {
3877
- secret: string;
3878
- otpauthUri: string;
3879
- }, {
3880
- secret: string;
3881
- otpauthUri: string;
3882
- }>;
3668
+ }, z.core.$strip>;
3883
3669
  /** A 6-digit MFA code body (`POST /auth/mfa/confirm|disable`). */
3884
3670
  declare const mfaCodeSchema: z.ZodObject<{
3885
3671
  code: z.ZodString;
3886
- }, "strip", z.ZodTypeAny, {
3887
- code: string;
3888
- }, {
3889
- code: string;
3890
- }>;
3672
+ }, z.core.$strip>;
3891
3673
  /** MFA login-challenge body (`POST /auth/mfa/challenge`). */
3892
3674
  declare const mfaChallengeSchema: z.ZodObject<{
3893
3675
  mfaToken: z.ZodString;
3894
3676
  code: z.ZodString;
3895
- }, "strip", z.ZodTypeAny, {
3896
- code: string;
3897
- mfaToken: string;
3898
- }, {
3899
- code: string;
3900
- mfaToken: string;
3901
- }>;
3677
+ }, z.core.$strip>;
3902
3678
  /** Activation body (`POST /auth/activate`). */
3903
3679
  declare const activationSchema: z.ZodObject<{
3904
3680
  token: z.ZodString;
3905
- }, "strip", z.ZodTypeAny, {
3906
- token: string;
3907
- }, {
3908
- token: string;
3909
- }>;
3681
+ }, z.core.$strip>;
3910
3682
  /** Password-reset request body (`POST /auth/password-reset/request`). */
3911
3683
  declare const passwordResetRequestSchema: z.ZodObject<{
3912
- email: z.ZodString;
3913
- }, "strip", z.ZodTypeAny, {
3914
- email: string;
3915
- }, {
3916
- email: string;
3917
- }>;
3684
+ email: z.ZodEmail;
3685
+ }, z.core.$strip>;
3918
3686
  /** Password-reset confirm body (`POST /auth/password-reset/confirm`). */
3919
3687
  declare const passwordResetConfirmSchema: z.ZodObject<{
3920
3688
  token: z.ZodString;
3921
3689
  password: z.ZodString;
3922
- }, "strip", z.ZodTypeAny, {
3923
- password: string;
3924
- token: string;
3925
- }, {
3926
- password: string;
3927
- token: string;
3928
- }>;
3690
+ }, z.core.$strip>;
3929
3691
  type SignupInput = z.infer<typeof signupSchema>;
3930
3692
  type LoginInput = z.infer<typeof loginSchema>;
3931
3693
  type RefreshInput = z.infer<typeof refreshSchema>;
@@ -5411,6 +5173,6 @@ declare function createTestDatabase(models: readonly ModelClass[]): TestDatabase
5411
5173
  declare function withTestDatabase<T>(models: readonly ModelClass[], fn: (db: TestDatabase) => Promise<T>): Promise<T>;
5412
5174
 
5413
5175
  /** The installed SDK version. Single source of truth for the barrel + CLI. */
5414
- declare const VERSION = "0.20.1";
5176
+ declare const VERSION = "0.22.0";
5415
5177
 
5416
- export { type ActivationInput, ActivationService, type ActivationServiceOptions, type ActivationStore, type AdminField, type AdminListQuery, type AdminListResult, type AdminResource, type AdminRouterOptions, AdminSite, AppException, type AppExceptionHandlerOptions, type AppExceptionOptions, type AttachWebSocketOptions, AttemptThrottle, type AttemptThrottleOptions, AuditAction, type AuthResponse, type AuthResultPageOptions, type AuthRouterOptions, type AuthUser, type BackupOptions, type BaseAppSettings, BaseAuditLogModel, BaseController, BaseModel, BaseOAuthClient, BaseOutboxModel, type BaseResponse, BaseService, BaseUserModel, BaseUserRefreshTokenModel, BaseUserTokenModel, type BodySizeLimitOptions, type BroadcastOptions, type BroadcastResult, type BrokerManager, CEP_PATTERN, CNPJ_PATTERN, CPF_PATTERN, type CPUMetrics, CSRF_COOKIE_NAME, CSRF_HEADER_NAME, type CacheManager, type CachedOptions, type CachedResponse, type CatalogData, CircuitOpenError, type ClientIpOptions, CompositeFeatureFlagBackend, ConflictException, type CreateAppOpenApi, type CreateAppOptions, type CsrfOptions, type CursorPaginationFilter, DEFAULT_LOCALE, type DownloadOptions, type EmailMessage, type EmailOptions, EmailProvider, type EmailProviderOptions, EmailUtils, type Enum, type EnumHelpers, type EnumSpec, EnvFeatureFlagBackend, EventStream, type EventStreamOptions, type ExceptionDetails, ExpiredTokenException, type FeatureFlagBackend, FeatureFlags, type FieldChange, type FileLoggingHandle, type FileLoggingOptions, type FlagContext, ForbiddenException, type GPUMetrics, type GenerateOpenApiOptions, GitHubOAuthClient, GoogleOAuthClient, GracefulShutdown, type GracefulShutdownOptions, HTTPClient, type HTTPClientOptions, HTTP_500_LOG_FILE, HTTP_500_MARKER, type HandshakeInfo, type HealthCheck, type HealthRouterOptions, HttpMetrics, IDEMPOTENCY_HEADER, type IdempotencyOptions, type IdempotencyRedisLike, type IdempotencyStore, type InboundHandler, type InboundMessage, InvalidTokenException, type IssuedSession, JSONLogger, JWTUtils, type JWTUtilsOptions, type JwtAuthOptions, type JwtClaims, type JwtDecoderLike, LEVEL_LOG_FILES, LocalUploadStorage, type LocalUploadStorageOptions, type LogEntry, type LogExtra, type LogLevel, type LogSink, type LogSource, type LoginInput, type LoginResult, type LogsRouterOptions, type MediaKind, MemoryBroker, MemoryCacheManager, MemoryFeatureFlagBackend, MemoryIdempotencyStore, type MemoryMetrics, MemoryRateLimitStore, MemorySessionStore, MemoryThrottleBackend, MessageCatalog, type MessageHandler, MessagingHub, type MessagingProvider, type MetricsRouterOptions, MetricsUtils, type MfaChallenge, type MfaChallengeInput, type MfaCodeInput, type MfaEnrollment, MfaService, type MfaServiceOptions, type MfaStore, NotFoundException, type OAuthClientOptions, OAuthError, type OAuthTokens, type OAuthUser, OIDCProvider, type OIDCProviderOptions, type OpenApiDocument, type OpenApiInfo, type OutboundMedia, type OutboundResult, type OutboxPublisher, OutboxRelay, type OutboxRelayOptions, OutboxStatus, PHONE_BR_PATTERN, type PaginationFilter, type PaginationLinkOptions, type PasswordResetConfirmInput, type PasswordResetFormOptions, type PasswordResetRequestInput, PasswordResetService, type PasswordResetServiceOptions, type PasswordResetStore, PasswordUtils, REQUEST_ID_HEADER, RabbitBroker, type RabbitBrokerOptions, type RateLimitKeyFunc, type RateLimitOptions, type RateLimitRedisLike, type RateLimitResult, type RateLimitStore, RedisCacheManager, RedisIdempotencyStore, type RedisLike, type RedisPublisherLike, RedisRateLimitStore, RedisSSEBroker, type RedisSSEBrokerOptions, RedisSessionStore, type RedisSubscriberLike, type RedocOptions, type RefreshInput, Region, type RegionValue, type RegisterExceptionHandlersOptions, type RequestContext, type RequestTracingOptions, type ResponseMapper, RetryPolicy, type RunServerOptions, type S3ClientLike, S3UploadStorage, type S3UploadStorageOptions, SSEBroker, type SaveOptions, type SendOptions, ServerSentEvent, type ServerSentEventInit, type Session, type SessionMiddlewareOptions, type SessionRedisLike, SessionService, type SessionServiceOptions, type SessionStore, type SignupInput, type SlowQueryOptions, type SpecProvider, type StateBR, type SwaggerOptions, type SyncFilter, type SystemMetrics, TOTPHelper, type TOTPOptions, type TaskHandler, TaskManager, type TaskManagerOptions, TelegramProvider, type TelegramProviderOptions, TenantScopedRepository, type TestDatabase, type ThrottleBackend, type ThrottleStatus, type ToDictOptions, type TokenPair, TooManyRequestsException, type TooManyRequestsOptions, type ToolSpecOptions, TwilioSmsProvider, type TwilioSmsProviderOptions, type TwilioWebhookOptions, UF, type UFValue, UnauthorizedException, type UnhandledExceptionHandlerOptions, type UploadResult, type UploadStorage, UserAuthService, type UserAuthServiceOptions, type UserPublic, type UserStore, UserTokenPurpose, VERSION, ValidationException, type WSEnvelope, WebPushDispatcher, type WebPushDispatcherOptions, WebPushError, WebPushGoneError, type WebPushKeys, type WebPushPayload, type WebPushSubscription, type WebSocketConnection, WebSocketHub, type WebSocketHubOptions, type WebSocketLike, type WebhookSignatureOptions, WebhookSignatureVerifier, WhatsAppProvider, type WhatsAppProviderOptions, type WhatsAppWebhookOptions, activationSchema, addLogSink, attachWebSocketHub, authResponseSchema, authSettingsShape, backupDatabase, baseAppSettingsSchema, baseAppSettingsShape, baseResponseSchema, bearerToken, bodySizeLimitMiddleware, broadcastText, buildContentDisposition, buildPaginationLinkHeader, cached, centsField, cepField, citiesByUf, cnpjField, coerceFlag, configureFileLogging, configureLogging, corsSettingsShape, cpfField, cpfOrCnpjField, createApp, createOpenApiRegistry, createTestDatabase, createdByColumn, csrfMiddleware, cursorPaginationFilterSchema, cursorPaginationSchema, databaseSettingsShape, decodeCursor, defaultMessageCatalog, defineEnum, deletedAtColumn, diffSnapshots, emailSettingsShape, encodeCursor, envBoolean, envList, generateCsrfToken, generateOAuthState, generateOpaqueToken, generateOpenApiDocument, getAuth, getClientIp, getConditions, getPaginationConditions, getRequestId, getState, hashOpaqueToken, hexColorField, idempotencyMiddleware, inboundMessageSchema, isValidCep, isValidCity, isValidCnpj, isValidCpf, isValidCpfCnpj, isValidPhoneBr, isValidUf, jwtSettingsShape, keyByHeader, keyByIp, keyByJwtClaim, keyByJwtSubject, latitudeField, listStates, loadSettings, logEntrySchema, logSettingsShape, loginSchema, longitudeField, makeAdminRouter, makeAppExceptionHandler, makeAuthRouter, makeFlagGuard, makeHealthRouter, makeJwtAuthMiddleware, makeLogsRouter, makeMetricsRouter, makeSessionMiddleware, makeToolSpecRouter, makeTwilioWebhookRouter, makeUnhandledExceptionHandler, makeWhatsAppWebhookRouter, mfaChallengeSchema, mfaCodeSchema, mfaEnrollResponseSchema, minioSettingsShape, modifyDict, mountOpenApiJson, mountRedoc, mountSwaggerUi, nonEmptyStrField, nonNegativeFloatField, nonNegativeIntField, normalizeCep, normalizeCnpj, normalizeCpf, normalizeCpfCnpj, normalizePhoneBr, normalizeUf, notFoundHandler, onlyDigits, paginationFilterSchema, paginationSchema, parseAcceptLanguage, parseCookies, passwordResetConfirmSchema, passwordResetRequestSchema, percentField, phoneBrField, portField, positiveFloatField, positiveIntField, priceField, prometheusMiddleware, rabbitmqSettingsShape, rateLimitMiddleware, ratingField, ratioField, redisSettingsShape, refreshSchema, registerExceptionHandlers, renderAuthResultPage, renderPasswordResetFormPage, requestIdMiddleware, requestTracingMiddleware, requireRoles, resolveDownloadPath, runServer, runWithRequestContext, sendBytesDownload, sendFileDownload, serverSettingsShape, sessionCookie, sessionSettingsShape, setRequestId, signupSchema, slugField, snapshot, sseResponse, statesByRegion, syncFilterSchema, syncPaginationSchema, tableNameFor, toDict, toUtc, tokenFromUrl, tokenPairSchema, tokenSettingsShape, ufField, updatedByColumn, uploadSettingsShape, userPublicSchema, utcnow, validateTwilioSignature, verifyOpaqueToken, webPushKeysSchema, webPushPayloadSchema, webPushSettingsShape, webPushSubscriptionSchema, webSocketSettingsShape, withTestDatabase, wrapWithSlowQueryLog, wsEnvelopeSchema };
5178
+ export { type ActivationInput, ActivationService, type ActivationServiceOptions, type ActivationStore, type AdminField, type AdminListQuery, type AdminListResult, type AdminResource, type AdminRouterOptions, AdminSite, AppException, type AppExceptionHandlerOptions, type AppExceptionOptions, type AttachWebSocketOptions, AttemptThrottle, type AttemptThrottleOptions, AuditAction, type AuthResponse, type AuthResultPageOptions, type AuthRouterOptions, type AuthUser, type BackupOptions, type BaseAppSettings, BaseAuditLogModel, BaseController, BaseModel, BaseOAuthClient, BaseOutboxModel, type BaseResponse, BaseService, BaseUserModel, BaseUserRefreshTokenModel, BaseUserTokenModel, type BodySizeLimitOptions, type BroadcastOptions, type BroadcastResult, type BrokerManager, CEP_PATTERN, CNPJ_PATTERN, CPF_PATTERN, type CPUMetrics, CSRF_COOKIE_NAME, CSRF_HEADER_NAME, type CacheManager, type CachedOptions, type CachedResponse, type CatalogData, CircuitOpenError, type ClientIpOptions, CompositeFeatureFlagBackend, ConflictException, type CreateAppOpenApi, type CreateAppOptions, type CsrfOptions, type CursorPaginationFilter, DEFAULT_LOCALE, type DownloadOptions, type EmailMessage, type EmailOptions, EmailProvider, type EmailProviderOptions, EmailUtils, type Enum, type EnumHelpers, type EnumSpec, EnvFeatureFlagBackend, EventStream, type EventStreamOptions, type ExceptionDetails, ExpiredTokenException, type FeatureFlagBackend, FeatureFlags, type FieldChange, type FileLoggingHandle, type FileLoggingOptions, type FlagContext, ForbiddenException, type GPUMetrics, type GenerateOpenApiOptions, GitHubOAuthClient, GoogleOAuthClient, GracefulShutdown, type GracefulShutdownOptions, HTTPClient, type HTTPClientOptions, HTTP_500_LOG_FILE, HTTP_500_MARKER, type HandshakeInfo, type HealthCheck, type HealthRouterOptions, HttpMetrics, IDEMPOTENCY_HEADER, type IdempotencyOptions, type IdempotencyRedisLike, type IdempotencyStore, type InboundHandler, type InboundMessage, InvalidTokenException, type IssuedSession, JSONLogger, JWTUtils, type JWTUtilsOptions, type JwtAuthOptions, type JwtClaims, type JwtDecoderLike, LEVEL_LOG_FILES, LocalUploadStorage, type LocalUploadStorageOptions, type LogEntry, type LogExtra, type LogLevel, type LogSink, type LogSource, type LoginInput, type LoginResult, type LogsRouterOptions, type MediaKind, MemoryBroker, MemoryCacheManager, MemoryFeatureFlagBackend, MemoryIdempotencyStore, type MemoryMetrics, MemoryRateLimitStore, MemorySessionStore, MemoryThrottleBackend, MessageCatalog, type MessageHandler, MessagingHub, type MessagingProvider, type MetricsRouterOptions, MetricsUtils, type MfaChallenge, type MfaChallengeInput, type MfaCodeInput, type MfaEnrollment, MfaService, type MfaServiceOptions, type MfaStore, NotFoundException, type OAuthClientOptions, OAuthError, type OAuthTokens, type OAuthUser, OIDCProvider, type OIDCProviderOptions, type OpenApiDocument, type OpenApiInfo, type OutboundMedia, type OutboundResult, type OutboxPublisher, OutboxRelay, type OutboxRelayOptions, OutboxStatus, PHONE_BR_PATTERN, type PaginationFilter, type PaginationLinkOptions, type PasswordResetConfirmInput, type PasswordResetFormOptions, type PasswordResetRequestInput, PasswordResetService, type PasswordResetServiceOptions, type PasswordResetStore, PasswordUtils, REQUEST_ID_HEADER, RabbitBroker, type RabbitBrokerOptions, type RateLimitKeyFunc, type RateLimitOptions, type RateLimitRedisLike, type RateLimitResult, type RateLimitStore, RedisCacheManager, RedisIdempotencyStore, type RedisLike, type RedisPublisherLike, RedisRateLimitStore, RedisSSEBroker, type RedisSSEBrokerOptions, RedisSessionStore, type RedisSubscriberLike, type RedocOptions, type RefreshInput, Region, type RegionValue, type RegisterExceptionHandlersOptions, type RequestContext, type RequestTracingOptions, type ResponseMapper, RetryPolicy, type RunServerOptions, type S3ClientLike, S3UploadStorage, type S3UploadStorageOptions, SSEBroker, type SaveOptions, type SendOptions, ServerSentEvent, type ServerSentEventInit, type Session, type SessionMiddlewareOptions, type SessionRedisLike, SessionService, type SessionServiceOptions, type SessionStore, type SignupInput, type SlowQueryOptions, type SpecProvider, type StateBR, type SwaggerOptions, type SyncFilter, type SystemMetrics, TOTPHelper, type TOTPOptions, type TaskHandler, TaskManager, type TaskManagerOptions, TelegramProvider, type TelegramProviderOptions, TenantScopedRepository, type TestDatabase, type ThrottleBackend, type ThrottleStatus, type ToDictOptions, type TokenPair, TooManyRequestsException, type TooManyRequestsOptions, type ToolSpecOptions, TwilioSmsProvider, type TwilioSmsProviderOptions, type TwilioWebhookOptions, UF, type UFValue, UnauthorizedException, type UnhandledExceptionHandlerOptions, type UploadResult, type UploadStorage, UserAuthService, type UserAuthServiceOptions, type UserPublic, type UserStore, UserTokenPurpose, VERSION, ValidationException, type WSEnvelope, WebPushDispatcher, type WebPushDispatcherOptions, WebPushError, WebPushGoneError, type WebPushKeys, type WebPushPayload, type WebPushSubscription, type WebSocketConnection, WebSocketHub, type WebSocketHubOptions, type WebSocketLike, type WebhookSignatureOptions, WebhookSignatureVerifier, WhatsAppProvider, type WhatsAppProviderOptions, type WhatsAppWebhookOptions, activationSchema, addLogSink, attachWebSocketHub, authResponseSchema, authSettingsShape, backupDatabase, baseAppSettingsSchema, baseAppSettingsShape, baseResponseSchema, bearerToken, bodySizeLimitMiddleware, broadcastText, buildContentDisposition, buildPaginationLinkHeader, cached, centsField, cepField, citiesByUf, cnpjField, coerceFlag, configureFileLogging, configureLogging, corsSettingsShape, cpfField, cpfOrCnpjField, createApp, createOpenApiRegistry, createTestDatabase, createdByColumn, csrfMiddleware, cursorPaginationFilterSchema, cursorPaginationSchema, databaseSettingsShape, decodeCursor, defaultMessageCatalog, defineEnum, deletedAtColumn, diffSnapshots, emailSettingsShape, encodeCursor, looseBoolean as envBoolean, envList, generateCsrfToken, generateOAuthState, generateOpaqueToken, generateOpenApiDocument, getAuth, getClientIp, getConditions, getPaginationConditions, getRequestId, getState, hashOpaqueToken, hexColorField, idempotencyMiddleware, inboundMessageSchema, isValidCep, isValidCity, isValidCnpj, isValidCpf, isValidCpfCnpj, isValidPhoneBr, isValidUf, jwtSettingsShape, keyByHeader, keyByIp, keyByJwtClaim, keyByJwtSubject, latitudeField, listStates, loadSettings, logEntrySchema, logSettingsShape, loginSchema, longitudeField, looseBoolean, makeAdminRouter, makeAppExceptionHandler, makeAuthRouter, makeFlagGuard, makeHealthRouter, makeJwtAuthMiddleware, makeLogsRouter, makeMetricsRouter, makeSessionMiddleware, makeToolSpecRouter, makeTwilioWebhookRouter, makeUnhandledExceptionHandler, makeWhatsAppWebhookRouter, mfaChallengeSchema, mfaCodeSchema, mfaEnrollResponseSchema, minioSettingsShape, modifyDict, mountOpenApiJson, mountRedoc, mountSwaggerUi, nonEmptyStrField, nonNegativeFloatField, nonNegativeIntField, normalizeCep, normalizeCnpj, normalizeCpf, normalizeCpfCnpj, normalizePhoneBr, normalizeUf, notFoundHandler, onlyDigits, paginationFilterSchema, paginationSchema, parseAcceptLanguage, parseCookies, passwordResetConfirmSchema, passwordResetRequestSchema, percentField, phoneBrField, portField, positiveFloatField, positiveIntField, priceField, prometheusMiddleware, rabbitmqSettingsShape, rateLimitMiddleware, ratingField, ratioField, redisSettingsShape, refreshSchema, registerExceptionHandlers, renderAuthResultPage, renderPasswordResetFormPage, requestIdMiddleware, requestTracingMiddleware, requireRoles, resolveDownloadPath, runServer, runWithRequestContext, sendBytesDownload, sendFileDownload, serverSettingsShape, sessionCookie, sessionSettingsShape, setRequestId, signupSchema, slugField, snapshot, sseResponse, statesByRegion, syncFilterSchema, syncPaginationSchema, tableNameFor, toDict, toUtc, tokenFromUrl, tokenPairSchema, tokenSettingsShape, ufField, updatedByColumn, uploadSettingsShape, userPublicSchema, utcnow, validateTwilioSignature, verifyOpaqueToken, webPushKeysSchema, webPushPayloadSchema, webPushSettingsShape, webPushSubscriptionSchema, webSocketSettingsShape, withTestDatabase, wrapWithSlowQueryLog, wsEnvelopeSchema };