@aeriajs/builtins 0.0.256 → 0.0.258

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/collections/file/download.d.ts +56 -16
  2. package/dist/collections/file/download.js +40 -1
  3. package/dist/collections/file/download.mjs +40 -1
  4. package/dist/collections/file/index.d.ts +461 -20
  5. package/dist/collections/file/index.js +3 -0
  6. package/dist/collections/file/index.mjs +4 -1
  7. package/dist/collections/file/remove.d.ts +2 -2
  8. package/dist/collections/user/activate.d.ts +67 -33
  9. package/dist/collections/user/activate.js +45 -1
  10. package/dist/collections/user/activate.mjs +45 -1
  11. package/dist/collections/user/authenticate.d.ts +136 -41
  12. package/dist/collections/user/authenticate.js +98 -2
  13. package/dist/collections/user/authenticate.mjs +98 -2
  14. package/dist/collections/user/createAccount.d.ts +124 -111
  15. package/dist/collections/user/createAccount.js +27 -1
  16. package/dist/collections/user/createAccount.mjs +27 -1
  17. package/dist/collections/user/editProfile.d.ts +95 -103
  18. package/dist/collections/user/editProfile.js +21 -1
  19. package/dist/collections/user/editProfile.mjs +21 -1
  20. package/dist/collections/user/getActivationLink.d.ts +92 -60
  21. package/dist/collections/user/getActivationLink.js +39 -4
  22. package/dist/collections/user/getActivationLink.mjs +39 -3
  23. package/dist/collections/user/getCurrentUser.d.ts +43 -113
  24. package/dist/collections/user/getCurrentUser.js +31 -1
  25. package/dist/collections/user/getCurrentUser.mjs +31 -1
  26. package/dist/collections/user/getInfo.d.ts +71 -26
  27. package/dist/collections/user/getInfo.js +47 -1
  28. package/dist/collections/user/getInfo.mjs +47 -1
  29. package/dist/collections/user/getRedefinePasswordLink.d.ts +91 -55
  30. package/dist/collections/user/getRedefinePasswordLink.js +32 -2
  31. package/dist/collections/user/getRedefinePasswordLink.mjs +33 -3
  32. package/dist/collections/user/index.d.ts +3493 -619
  33. package/dist/collections/user/index.js +9 -21
  34. package/dist/collections/user/index.mjs +18 -30
  35. package/dist/collections/user/redefinePassword.d.ts +98 -34
  36. package/dist/collections/user/redefinePassword.js +51 -6
  37. package/dist/collections/user/redefinePassword.mjs +51 -6
  38. package/dist/functions/describe.d.ts +38 -12
  39. package/dist/index.d.ts +4427 -1112
  40. package/package.json +6 -6
@@ -269,665 +269,3546 @@ export declare const user: Omit<Collection<never>, "functions" | "description" |
269
269
  } & {
270
270
  httpStatus: 403;
271
271
  }> | import("@aeriajs/types").InsertReturnType<import("@aeriajs/types").SchemaWithId<import("@aeriajs/types").Description>>>;
272
- readonly editProfile: (payload: Partial<import("@aeriajs/types").PackReferences<import("@aeriajs/types").SchemaWithId<{
273
- readonly $id: "user";
274
- readonly icon: "users";
275
- readonly required: readonly ["name", "roles", "email"];
276
- readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
277
- readonly indexes: readonly ["name"];
278
- readonly unique: readonly ["email"];
279
- readonly properties: {
272
+ readonly editProfile: (payload: Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
273
+ readonly picture_file: {
274
+ readonly type: "string";
275
+ readonly format: "objectid";
276
+ };
277
+ readonly name: {
278
+ readonly type: "string";
279
+ readonly minLength: 1;
280
+ };
281
+ readonly given_name: {
282
+ readonly getter: (doc: object) => string | undefined;
283
+ };
284
+ readonly family_name: {
285
+ readonly getter: (doc: object) => string | undefined;
286
+ };
287
+ readonly active: {
288
+ readonly type: "boolean";
289
+ };
290
+ readonly roles: {
291
+ readonly type: "array";
292
+ readonly items: {
293
+ readonly type: "string";
294
+ };
295
+ readonly uniqueItems: true;
296
+ readonly minItems: 1;
297
+ };
298
+ readonly email: {
299
+ readonly type: "string";
300
+ readonly inputType: "email";
301
+ readonly minLength: 3;
302
+ };
303
+ readonly password: {
304
+ readonly type: "string";
305
+ readonly inputType: "password";
306
+ readonly hidden: true;
307
+ };
308
+ readonly phone_number: {
309
+ readonly type: "string";
310
+ readonly mask: "(##) #####-####";
311
+ };
312
+ readonly picture: {
313
+ readonly getter: (doc: object) => Promise<string> | undefined;
314
+ };
315
+ readonly self_registered: {
316
+ readonly type: "boolean";
317
+ readonly readOnly: true;
318
+ };
319
+ readonly updated_at: {
320
+ readonly type: "string";
321
+ readonly format: "date-time";
322
+ };
323
+ }>> & {
324
+ name: string;
325
+ password: string;
326
+ updated_at: Date;
327
+ picture: never;
328
+ roles: string[];
329
+ email: string;
330
+ active: boolean;
331
+ phone_number: string;
332
+ picture_file: import("@aeriajs/core").ObjectId;
333
+ given_name: never;
334
+ family_name: never;
335
+ }, never>>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
336
+ readonly _tag: {
337
+ readonly const: "Error";
338
+ };
339
+ readonly result: {
340
+ readonly const: undefined;
341
+ };
342
+ readonly error: {
343
+ readonly type: "object";
344
+ readonly required: readonly ["httpStatus", "code"];
345
+ readonly properties: {
346
+ readonly httpStatus: {
347
+ readonly enum: [403, 404, 422, 400, 500];
348
+ };
349
+ readonly code: {
350
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
351
+ };
352
+ readonly message: {
353
+ readonly type: "string";
354
+ };
355
+ readonly details: {
356
+ readonly type: "object";
357
+ readonly additionalProperties: true;
358
+ };
359
+ };
360
+ };
361
+ }>> & {
362
+ _tag: "Error";
363
+ result: undefined;
364
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
365
+ readonly httpStatus: {
366
+ readonly enum: [403, 404, 422, 400, 500];
367
+ };
368
+ readonly code: {
369
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
370
+ };
371
+ readonly message: {
372
+ readonly type: "string";
373
+ };
374
+ readonly details: {
375
+ readonly type: "object";
376
+ readonly additionalProperties: true;
377
+ };
378
+ }>> & {
379
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
380
+ httpStatus: 400 | 403 | 404 | 422 | 500;
381
+ message: string;
382
+ details: any;
383
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
384
+ readonly httpStatus: {
385
+ readonly enum: [403, 404, 422, 400, 500];
386
+ };
387
+ readonly code: {
388
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
389
+ };
390
+ readonly message: {
391
+ readonly type: "string";
392
+ };
393
+ readonly details: {
394
+ readonly type: "object";
395
+ readonly additionalProperties: true;
396
+ };
397
+ }>> & {
398
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
399
+ httpStatus: 400 | 403 | 404 | 422 | 500;
400
+ message: string;
401
+ details: any;
402
+ }, never>>;
403
+ }, never>) | ({
404
+ result: import("@aeriajs/types").SchemaWithId<{
405
+ readonly $id: "user";
406
+ readonly icon: "users";
407
+ readonly required: readonly ["name", "roles", "email"];
408
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
409
+ readonly indexes: readonly ["name"];
410
+ readonly unique: readonly ["email"];
411
+ readonly properties: {
412
+ readonly name: {
413
+ readonly type: "string";
414
+ readonly minLength: 1;
415
+ };
416
+ readonly given_name: {
417
+ readonly getter: (doc: object) => string | undefined;
418
+ };
419
+ readonly family_name: {
420
+ readonly getter: (doc: object) => string | undefined;
421
+ };
422
+ readonly active: {
423
+ readonly type: "boolean";
424
+ };
425
+ readonly roles: {
426
+ readonly type: "array";
427
+ readonly items: {
428
+ readonly type: "string";
429
+ };
430
+ readonly uniqueItems: true;
431
+ readonly minItems: 1;
432
+ };
433
+ readonly email: {
434
+ readonly type: "string";
435
+ readonly inputType: "email";
436
+ readonly minLength: 3;
437
+ };
438
+ readonly password: {
439
+ readonly type: "string";
440
+ readonly inputType: "password";
441
+ readonly hidden: true;
442
+ };
443
+ readonly phone_number: {
444
+ readonly type: "string";
445
+ readonly mask: "(##) #####-####";
446
+ };
447
+ readonly picture_file: {
448
+ readonly $ref: "file";
449
+ readonly accept: readonly ["image/*"];
450
+ };
451
+ readonly picture: {
452
+ readonly getter: (doc: object) => Promise<string> | undefined;
453
+ };
454
+ readonly self_registered: {
455
+ readonly type: "boolean";
456
+ readonly readOnly: true;
457
+ };
458
+ readonly updated_at: {
459
+ readonly type: "string";
460
+ readonly format: "date-time";
461
+ };
462
+ };
463
+ readonly presets: readonly ["crud", "duplicate"];
464
+ readonly layout: {
465
+ readonly name: "grid";
466
+ readonly options: {
467
+ readonly title: "name";
468
+ readonly badge: "roles";
469
+ readonly picture: "picture_file";
470
+ readonly information: "email";
471
+ readonly active: "active";
472
+ readonly translateBadge: true;
473
+ };
474
+ };
475
+ readonly individualActions: {
476
+ readonly changePassword: {
477
+ readonly label: "change_password";
478
+ readonly icon: "key";
479
+ readonly translate: true;
480
+ readonly route: {
481
+ readonly name: "/dashboard/user/changepass";
482
+ readonly fetchItem: true;
483
+ };
484
+ };
485
+ readonly copyRedefinePasswordLink: {
486
+ readonly label: "copy_redefine_password_link";
487
+ readonly icon: "link";
488
+ readonly translate: true;
489
+ };
490
+ readonly copyActivationLink: {
491
+ readonly label: "copy_activation_link";
492
+ readonly icon: "link";
493
+ readonly translate: true;
494
+ };
495
+ };
496
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
497
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
498
+ readonly tableMeta: readonly ["email"];
499
+ readonly formLayout: {
500
+ readonly fields: {
501
+ readonly given_name: {
502
+ readonly span: 3;
503
+ };
504
+ readonly family_name: {
505
+ readonly span: 3;
506
+ };
507
+ };
508
+ };
509
+ }>;
510
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
511
+ readonly _tag: {
512
+ readonly const: "Result";
513
+ };
514
+ readonly error: {
515
+ readonly const: undefined;
516
+ };
517
+ readonly result: {
518
+ readonly $ref: "user";
519
+ };
520
+ }>> & {
521
+ _tag: "Result";
522
+ result: never;
523
+ error: undefined;
524
+ }, "result">) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
525
+ readonly _tag: {
526
+ readonly const: "Error";
527
+ };
528
+ readonly result: {
529
+ readonly const: undefined;
530
+ };
531
+ readonly error: {
532
+ readonly type: "object";
533
+ readonly required: readonly ["httpStatus", "code"];
534
+ readonly properties: {
535
+ readonly httpStatus: {
536
+ readonly enum: [403, 404, 422, 400, 500];
537
+ };
538
+ readonly code: {
539
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
540
+ };
541
+ readonly message: {
542
+ readonly type: "string";
543
+ };
544
+ readonly details: {
545
+ readonly type: "object";
546
+ readonly additionalProperties: true;
547
+ };
548
+ };
549
+ };
550
+ }>> & {
551
+ _tag: "Error";
552
+ result: undefined;
553
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
554
+ readonly httpStatus: {
555
+ readonly enum: [403, 404, 422, 400, 500];
556
+ };
557
+ readonly code: {
558
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
559
+ };
560
+ readonly message: {
561
+ readonly type: "string";
562
+ };
563
+ readonly details: {
564
+ readonly type: "object";
565
+ readonly additionalProperties: true;
566
+ };
567
+ }>> & {
568
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
569
+ httpStatus: 400 | 403 | 404 | 422 | 500;
570
+ message: string;
571
+ details: any;
572
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
573
+ readonly httpStatus: {
574
+ readonly enum: [403, 404, 422, 400, 500];
575
+ };
576
+ readonly code: {
577
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
578
+ };
579
+ readonly message: {
580
+ readonly type: "string";
581
+ };
582
+ readonly details: {
583
+ readonly type: "object";
584
+ readonly additionalProperties: true;
585
+ };
586
+ }>> & {
587
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
588
+ httpStatus: 400 | 403 | 404 | 422 | 500;
589
+ message: string;
590
+ details: any;
591
+ }, never>>;
592
+ }, never>) | ({
593
+ result: import("@aeriajs/types").SchemaWithId<{
594
+ readonly $id: "user";
595
+ readonly icon: "users";
596
+ readonly required: readonly ["name", "roles", "email"];
597
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
598
+ readonly indexes: readonly ["name"];
599
+ readonly unique: readonly ["email"];
600
+ readonly properties: {
601
+ readonly name: {
602
+ readonly type: "string";
603
+ readonly minLength: 1;
604
+ };
605
+ readonly given_name: {
606
+ readonly getter: (doc: object) => string | undefined;
607
+ };
608
+ readonly family_name: {
609
+ readonly getter: (doc: object) => string | undefined;
610
+ };
611
+ readonly active: {
612
+ readonly type: "boolean";
613
+ };
614
+ readonly roles: {
615
+ readonly type: "array";
616
+ readonly items: {
617
+ readonly type: "string";
618
+ };
619
+ readonly uniqueItems: true;
620
+ readonly minItems: 1;
621
+ };
622
+ readonly email: {
623
+ readonly type: "string";
624
+ readonly inputType: "email";
625
+ readonly minLength: 3;
626
+ };
627
+ readonly password: {
628
+ readonly type: "string";
629
+ readonly inputType: "password";
630
+ readonly hidden: true;
631
+ };
632
+ readonly phone_number: {
633
+ readonly type: "string";
634
+ readonly mask: "(##) #####-####";
635
+ };
636
+ readonly picture_file: {
637
+ readonly $ref: "file";
638
+ readonly accept: readonly ["image/*"];
639
+ };
640
+ readonly picture: {
641
+ readonly getter: (doc: object) => Promise<string> | undefined;
642
+ };
643
+ readonly self_registered: {
644
+ readonly type: "boolean";
645
+ readonly readOnly: true;
646
+ };
647
+ readonly updated_at: {
648
+ readonly type: "string";
649
+ readonly format: "date-time";
650
+ };
651
+ };
652
+ readonly presets: readonly ["crud", "duplicate"];
653
+ readonly layout: {
654
+ readonly name: "grid";
655
+ readonly options: {
656
+ readonly title: "name";
657
+ readonly badge: "roles";
658
+ readonly picture: "picture_file";
659
+ readonly information: "email";
660
+ readonly active: "active";
661
+ readonly translateBadge: true;
662
+ };
663
+ };
664
+ readonly individualActions: {
665
+ readonly changePassword: {
666
+ readonly label: "change_password";
667
+ readonly icon: "key";
668
+ readonly translate: true;
669
+ readonly route: {
670
+ readonly name: "/dashboard/user/changepass";
671
+ readonly fetchItem: true;
672
+ };
673
+ };
674
+ readonly copyRedefinePasswordLink: {
675
+ readonly label: "copy_redefine_password_link";
676
+ readonly icon: "link";
677
+ readonly translate: true;
678
+ };
679
+ readonly copyActivationLink: {
680
+ readonly label: "copy_activation_link";
681
+ readonly icon: "link";
682
+ readonly translate: true;
683
+ };
684
+ };
685
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
686
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
687
+ readonly tableMeta: readonly ["email"];
688
+ readonly formLayout: {
689
+ readonly fields: {
690
+ readonly given_name: {
691
+ readonly span: 3;
692
+ };
693
+ readonly family_name: {
694
+ readonly span: 3;
695
+ };
696
+ };
697
+ };
698
+ }>;
699
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
700
+ readonly _tag: {
701
+ readonly const: "Result";
702
+ };
703
+ readonly error: {
704
+ readonly const: undefined;
705
+ };
706
+ readonly result: {
707
+ readonly $ref: "user";
708
+ };
709
+ }>> & {
710
+ _tag: "Result";
711
+ result: never;
712
+ error: undefined;
713
+ }, "result">)>;
714
+ readonly authenticate: (payload: Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
715
+ readonly email: {
716
+ readonly type: "string";
717
+ };
718
+ readonly password: {
719
+ readonly type: "string";
720
+ };
721
+ readonly revalidate: {
722
+ readonly type: "boolean";
723
+ };
724
+ readonly token: {
725
+ readonly type: "object";
726
+ readonly properties: {
727
+ readonly type: {
728
+ readonly enum: readonly ["bearer"];
729
+ };
730
+ readonly content: {
731
+ readonly type: "string";
732
+ };
733
+ };
734
+ };
735
+ }>> & {
736
+ password: string;
737
+ email: string;
738
+ revalidate: boolean;
739
+ token: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
740
+ readonly type: {
741
+ readonly enum: readonly ["bearer"];
742
+ };
743
+ readonly content: {
744
+ readonly type: "string";
745
+ };
746
+ }>> & {
747
+ type: "bearer";
748
+ content: string;
749
+ }, never>;
750
+ }, never>>, context: Omit<Context, "token">) => Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
751
+ readonly _tag: {
752
+ readonly const: "Error";
753
+ };
754
+ readonly result: {
755
+ readonly const: undefined;
756
+ };
757
+ readonly error: {
758
+ readonly type: "object";
759
+ readonly required: readonly ["httpStatus", "code"];
760
+ readonly properties: {
761
+ readonly httpStatus: {
762
+ readonly enum: [401];
763
+ };
764
+ readonly code: {
765
+ readonly enum: ["AUTHORIZATION_ERROR", "INVALID_CREDENTIALS", "INACTIVE_USER"];
766
+ };
767
+ readonly message: {
768
+ readonly type: "string";
769
+ };
770
+ readonly details: {
771
+ readonly type: "object";
772
+ readonly additionalProperties: true;
773
+ };
774
+ };
775
+ };
776
+ }>> & {
777
+ _tag: "Error";
778
+ result: undefined;
779
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
780
+ readonly httpStatus: {
781
+ readonly enum: [401];
782
+ };
783
+ readonly code: {
784
+ readonly enum: ["AUTHORIZATION_ERROR", "INVALID_CREDENTIALS", "INACTIVE_USER"];
785
+ };
786
+ readonly message: {
787
+ readonly type: "string";
788
+ };
789
+ readonly details: {
790
+ readonly type: "object";
791
+ readonly additionalProperties: true;
792
+ };
793
+ }>> & {
794
+ code: "AUTHORIZATION_ERROR" | "INVALID_CREDENTIALS" | "INACTIVE_USER";
795
+ httpStatus: 401;
796
+ message: string;
797
+ details: any;
798
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
799
+ readonly httpStatus: {
800
+ readonly enum: [401];
801
+ };
802
+ readonly code: {
803
+ readonly enum: ["AUTHORIZATION_ERROR", "INVALID_CREDENTIALS", "INACTIVE_USER"];
804
+ };
805
+ readonly message: {
806
+ readonly type: "string";
807
+ };
808
+ readonly details: {
809
+ readonly type: "object";
810
+ readonly additionalProperties: true;
811
+ };
812
+ }>> & {
813
+ code: "AUTHORIZATION_ERROR" | "INVALID_CREDENTIALS" | "INACTIVE_USER";
814
+ httpStatus: 401;
815
+ message: string;
816
+ details: any;
817
+ }, never>>;
818
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
819
+ readonly _tag: {
820
+ readonly const: "Result";
821
+ };
822
+ readonly error: {
823
+ readonly const: undefined;
824
+ };
825
+ readonly result: {
826
+ readonly type: "object";
827
+ readonly properties: {
828
+ readonly user: {
829
+ readonly $ref: "user";
830
+ };
831
+ readonly token: {
832
+ readonly type: "object";
833
+ readonly properties: {
834
+ readonly type: {
835
+ readonly enum: readonly ["bearer"];
836
+ };
837
+ readonly content: {
838
+ readonly type: "string";
839
+ };
840
+ };
841
+ };
842
+ };
843
+ };
844
+ }>> & {
845
+ _tag: "Result";
846
+ result: {
847
+ user: import("@aeriajs/types").SchemaWithId<{
848
+ readonly $id: "user";
849
+ readonly icon: "users";
850
+ readonly required: readonly ["name", "roles", "email"];
851
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
852
+ readonly indexes: readonly ["name"];
853
+ readonly unique: readonly ["email"];
854
+ readonly properties: {
855
+ readonly name: {
856
+ readonly type: "string";
857
+ readonly minLength: 1;
858
+ };
859
+ readonly given_name: {
860
+ readonly getter: (doc: object) => string | undefined;
861
+ };
862
+ readonly family_name: {
863
+ readonly getter: (doc: object) => string | undefined;
864
+ };
865
+ readonly active: {
866
+ readonly type: "boolean";
867
+ };
868
+ readonly roles: {
869
+ readonly type: "array";
870
+ readonly items: {
871
+ readonly type: "string";
872
+ };
873
+ readonly uniqueItems: true;
874
+ readonly minItems: 1;
875
+ };
876
+ readonly email: {
877
+ readonly type: "string";
878
+ readonly inputType: "email";
879
+ readonly minLength: 3;
880
+ };
881
+ readonly password: {
882
+ readonly type: "string";
883
+ readonly inputType: "password";
884
+ readonly hidden: true;
885
+ };
886
+ readonly phone_number: {
887
+ readonly type: "string";
888
+ readonly mask: "(##) #####-####";
889
+ };
890
+ readonly picture_file: {
891
+ readonly $ref: "file";
892
+ readonly accept: readonly ["image/*"];
893
+ };
894
+ readonly picture: {
895
+ readonly getter: (doc: object) => Promise<string> | undefined;
896
+ };
897
+ readonly self_registered: {
898
+ readonly type: "boolean";
899
+ readonly readOnly: true;
900
+ };
901
+ readonly updated_at: {
902
+ readonly type: "string";
903
+ readonly format: "date-time";
904
+ };
905
+ };
906
+ readonly presets: readonly ["crud", "duplicate"];
907
+ readonly layout: {
908
+ readonly name: "grid";
909
+ readonly options: {
910
+ readonly title: "name";
911
+ readonly badge: "roles";
912
+ readonly picture: "picture_file";
913
+ readonly information: "email";
914
+ readonly active: "active";
915
+ readonly translateBadge: true;
916
+ };
917
+ };
918
+ readonly individualActions: {
919
+ readonly changePassword: {
920
+ readonly label: "change_password";
921
+ readonly icon: "key";
922
+ readonly translate: true;
923
+ readonly route: {
924
+ readonly name: "/dashboard/user/changepass";
925
+ readonly fetchItem: true;
926
+ };
927
+ };
928
+ readonly copyRedefinePasswordLink: {
929
+ readonly label: "copy_redefine_password_link";
930
+ readonly icon: "link";
931
+ readonly translate: true;
932
+ };
933
+ readonly copyActivationLink: {
934
+ readonly label: "copy_activation_link";
935
+ readonly icon: "link";
936
+ readonly translate: true;
937
+ };
938
+ };
939
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
940
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
941
+ readonly tableMeta: readonly ["email"];
942
+ readonly formLayout: {
943
+ readonly fields: {
944
+ readonly given_name: {
945
+ readonly span: 3;
946
+ };
947
+ readonly family_name: {
948
+ readonly span: 3;
949
+ };
950
+ };
951
+ };
952
+ }>;
953
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
954
+ readonly user: {
955
+ readonly $ref: "user";
956
+ };
957
+ readonly token: {
958
+ readonly type: "object";
959
+ readonly properties: {
960
+ readonly type: {
961
+ readonly enum: readonly ["bearer"];
962
+ };
963
+ readonly content: {
964
+ readonly type: "string";
965
+ };
966
+ };
967
+ };
968
+ }>> & {
969
+ user: never;
970
+ token: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
971
+ readonly type: {
972
+ readonly enum: readonly ["bearer"];
973
+ };
974
+ readonly content: {
975
+ readonly type: "string";
976
+ };
977
+ }>> & {
978
+ type: "bearer";
979
+ content: string;
980
+ }, never>;
981
+ }, "user">;
982
+ error: undefined;
983
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
984
+ readonly _tag: {
985
+ readonly const: "Result";
986
+ };
987
+ readonly error: {
988
+ readonly const: undefined;
989
+ };
990
+ readonly result: {
991
+ readonly type: "object";
992
+ readonly properties: {
993
+ readonly user: {
994
+ readonly type: "object";
995
+ readonly properties: {
996
+ readonly _id: {
997
+ readonly const: null;
998
+ };
999
+ readonly name: {
1000
+ readonly type: "string";
1001
+ };
1002
+ readonly email: {
1003
+ readonly type: "string";
1004
+ };
1005
+ readonly roles: {
1006
+ readonly type: "array";
1007
+ readonly items: {
1008
+ readonly type: "string";
1009
+ };
1010
+ };
1011
+ readonly active: {
1012
+ readonly type: "boolean";
1013
+ };
1014
+ };
1015
+ };
1016
+ readonly token: {
1017
+ readonly type: "object";
1018
+ readonly properties: {
1019
+ readonly type: {
1020
+ readonly type: "string";
1021
+ };
1022
+ readonly content: {
1023
+ readonly type: "string";
1024
+ };
1025
+ };
1026
+ };
1027
+ };
1028
+ };
1029
+ }>> & {
1030
+ _tag: "Result";
1031
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1032
+ readonly user: {
1033
+ readonly type: "object";
1034
+ readonly properties: {
1035
+ readonly _id: {
1036
+ readonly const: null;
1037
+ };
1038
+ readonly name: {
1039
+ readonly type: "string";
1040
+ };
1041
+ readonly email: {
1042
+ readonly type: "string";
1043
+ };
1044
+ readonly roles: {
1045
+ readonly type: "array";
1046
+ readonly items: {
1047
+ readonly type: "string";
1048
+ };
1049
+ };
1050
+ readonly active: {
1051
+ readonly type: "boolean";
1052
+ };
1053
+ };
1054
+ };
1055
+ readonly token: {
1056
+ readonly type: "object";
1057
+ readonly properties: {
1058
+ readonly type: {
1059
+ readonly type: "string";
1060
+ };
1061
+ readonly content: {
1062
+ readonly type: "string";
1063
+ };
1064
+ };
1065
+ };
1066
+ }>> & {
1067
+ user: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1068
+ readonly _id: {
1069
+ readonly const: null;
1070
+ };
1071
+ readonly name: {
1072
+ readonly type: "string";
1073
+ };
1074
+ readonly email: {
1075
+ readonly type: "string";
1076
+ };
1077
+ readonly roles: {
1078
+ readonly type: "array";
1079
+ readonly items: {
1080
+ readonly type: "string";
1081
+ };
1082
+ };
1083
+ readonly active: {
1084
+ readonly type: "boolean";
1085
+ };
1086
+ }>> & {
1087
+ name: string;
1088
+ _id: null;
1089
+ roles: string[];
1090
+ email: string;
1091
+ active: boolean;
1092
+ }, never>;
1093
+ token: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1094
+ readonly type: {
1095
+ readonly type: "string";
1096
+ };
1097
+ readonly content: {
1098
+ readonly type: "string";
1099
+ };
1100
+ }>> & {
1101
+ type: string;
1102
+ content: string;
1103
+ }, never>;
1104
+ }, never>;
1105
+ error: undefined;
1106
+ }, never>) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1107
+ readonly _tag: {
1108
+ readonly const: "Error";
1109
+ };
1110
+ readonly result: {
1111
+ readonly const: undefined;
1112
+ };
1113
+ readonly error: {
1114
+ readonly type: "object";
1115
+ readonly required: readonly ["httpStatus", "code"];
1116
+ readonly properties: {
1117
+ readonly httpStatus: {
1118
+ readonly enum: [401];
1119
+ };
1120
+ readonly code: {
1121
+ readonly enum: ["AUTHORIZATION_ERROR", "INVALID_CREDENTIALS", "INACTIVE_USER"];
1122
+ };
1123
+ readonly message: {
1124
+ readonly type: "string";
1125
+ };
1126
+ readonly details: {
1127
+ readonly type: "object";
1128
+ readonly additionalProperties: true;
1129
+ };
1130
+ };
1131
+ };
1132
+ }>> & {
1133
+ _tag: "Error";
1134
+ result: undefined;
1135
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1136
+ readonly httpStatus: {
1137
+ readonly enum: [401];
1138
+ };
1139
+ readonly code: {
1140
+ readonly enum: ["AUTHORIZATION_ERROR", "INVALID_CREDENTIALS", "INACTIVE_USER"];
1141
+ };
1142
+ readonly message: {
1143
+ readonly type: "string";
1144
+ };
1145
+ readonly details: {
1146
+ readonly type: "object";
1147
+ readonly additionalProperties: true;
1148
+ };
1149
+ }>> & {
1150
+ code: "AUTHORIZATION_ERROR" | "INVALID_CREDENTIALS" | "INACTIVE_USER";
1151
+ httpStatus: 401;
1152
+ message: string;
1153
+ details: any;
1154
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1155
+ readonly httpStatus: {
1156
+ readonly enum: [401];
1157
+ };
1158
+ readonly code: {
1159
+ readonly enum: ["AUTHORIZATION_ERROR", "INVALID_CREDENTIALS", "INACTIVE_USER"];
1160
+ };
1161
+ readonly message: {
1162
+ readonly type: "string";
1163
+ };
1164
+ readonly details: {
1165
+ readonly type: "object";
1166
+ readonly additionalProperties: true;
1167
+ };
1168
+ }>> & {
1169
+ code: "AUTHORIZATION_ERROR" | "INVALID_CREDENTIALS" | "INACTIVE_USER";
1170
+ httpStatus: 401;
1171
+ message: string;
1172
+ details: any;
1173
+ }, never>>;
1174
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1175
+ readonly _tag: {
1176
+ readonly const: "Result";
1177
+ };
1178
+ readonly error: {
1179
+ readonly const: undefined;
1180
+ };
1181
+ readonly result: {
1182
+ readonly type: "object";
1183
+ readonly properties: {
1184
+ readonly user: {
1185
+ readonly $ref: "user";
1186
+ };
1187
+ readonly token: {
1188
+ readonly type: "object";
1189
+ readonly properties: {
1190
+ readonly type: {
1191
+ readonly enum: readonly ["bearer"];
1192
+ };
1193
+ readonly content: {
1194
+ readonly type: "string";
1195
+ };
1196
+ };
1197
+ };
1198
+ };
1199
+ };
1200
+ }>> & {
1201
+ _tag: "Result";
1202
+ result: {
1203
+ user: import("@aeriajs/types").SchemaWithId<{
1204
+ readonly $id: "user";
1205
+ readonly icon: "users";
1206
+ readonly required: readonly ["name", "roles", "email"];
1207
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
1208
+ readonly indexes: readonly ["name"];
1209
+ readonly unique: readonly ["email"];
1210
+ readonly properties: {
1211
+ readonly name: {
1212
+ readonly type: "string";
1213
+ readonly minLength: 1;
1214
+ };
1215
+ readonly given_name: {
1216
+ readonly getter: (doc: object) => string | undefined;
1217
+ };
1218
+ readonly family_name: {
1219
+ readonly getter: (doc: object) => string | undefined;
1220
+ };
1221
+ readonly active: {
1222
+ readonly type: "boolean";
1223
+ };
1224
+ readonly roles: {
1225
+ readonly type: "array";
1226
+ readonly items: {
1227
+ readonly type: "string";
1228
+ };
1229
+ readonly uniqueItems: true;
1230
+ readonly minItems: 1;
1231
+ };
1232
+ readonly email: {
1233
+ readonly type: "string";
1234
+ readonly inputType: "email";
1235
+ readonly minLength: 3;
1236
+ };
1237
+ readonly password: {
1238
+ readonly type: "string";
1239
+ readonly inputType: "password";
1240
+ readonly hidden: true;
1241
+ };
1242
+ readonly phone_number: {
1243
+ readonly type: "string";
1244
+ readonly mask: "(##) #####-####";
1245
+ };
1246
+ readonly picture_file: {
1247
+ readonly $ref: "file";
1248
+ readonly accept: readonly ["image/*"];
1249
+ };
1250
+ readonly picture: {
1251
+ readonly getter: (doc: object) => Promise<string> | undefined;
1252
+ };
1253
+ readonly self_registered: {
1254
+ readonly type: "boolean";
1255
+ readonly readOnly: true;
1256
+ };
1257
+ readonly updated_at: {
1258
+ readonly type: "string";
1259
+ readonly format: "date-time";
1260
+ };
1261
+ };
1262
+ readonly presets: readonly ["crud", "duplicate"];
1263
+ readonly layout: {
1264
+ readonly name: "grid";
1265
+ readonly options: {
1266
+ readonly title: "name";
1267
+ readonly badge: "roles";
1268
+ readonly picture: "picture_file";
1269
+ readonly information: "email";
1270
+ readonly active: "active";
1271
+ readonly translateBadge: true;
1272
+ };
1273
+ };
1274
+ readonly individualActions: {
1275
+ readonly changePassword: {
1276
+ readonly label: "change_password";
1277
+ readonly icon: "key";
1278
+ readonly translate: true;
1279
+ readonly route: {
1280
+ readonly name: "/dashboard/user/changepass";
1281
+ readonly fetchItem: true;
1282
+ };
1283
+ };
1284
+ readonly copyRedefinePasswordLink: {
1285
+ readonly label: "copy_redefine_password_link";
1286
+ readonly icon: "link";
1287
+ readonly translate: true;
1288
+ };
1289
+ readonly copyActivationLink: {
1290
+ readonly label: "copy_activation_link";
1291
+ readonly icon: "link";
1292
+ readonly translate: true;
1293
+ };
1294
+ };
1295
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
1296
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
1297
+ readonly tableMeta: readonly ["email"];
1298
+ readonly formLayout: {
1299
+ readonly fields: {
1300
+ readonly given_name: {
1301
+ readonly span: 3;
1302
+ };
1303
+ readonly family_name: {
1304
+ readonly span: 3;
1305
+ };
1306
+ };
1307
+ };
1308
+ }>;
1309
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1310
+ readonly user: {
1311
+ readonly $ref: "user";
1312
+ };
1313
+ readonly token: {
1314
+ readonly type: "object";
1315
+ readonly properties: {
1316
+ readonly type: {
1317
+ readonly enum: readonly ["bearer"];
1318
+ };
1319
+ readonly content: {
1320
+ readonly type: "string";
1321
+ };
1322
+ };
1323
+ };
1324
+ }>> & {
1325
+ user: never;
1326
+ token: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1327
+ readonly type: {
1328
+ readonly enum: readonly ["bearer"];
1329
+ };
1330
+ readonly content: {
1331
+ readonly type: "string";
1332
+ };
1333
+ }>> & {
1334
+ type: "bearer";
1335
+ content: string;
1336
+ }, never>;
1337
+ }, "user">;
1338
+ error: undefined;
1339
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1340
+ readonly _tag: {
1341
+ readonly const: "Result";
1342
+ };
1343
+ readonly error: {
1344
+ readonly const: undefined;
1345
+ };
1346
+ readonly result: {
1347
+ readonly type: "object";
1348
+ readonly properties: {
1349
+ readonly user: {
1350
+ readonly type: "object";
1351
+ readonly properties: {
1352
+ readonly _id: {
1353
+ readonly const: null;
1354
+ };
1355
+ readonly name: {
1356
+ readonly type: "string";
1357
+ };
1358
+ readonly email: {
1359
+ readonly type: "string";
1360
+ };
1361
+ readonly roles: {
1362
+ readonly type: "array";
1363
+ readonly items: {
1364
+ readonly type: "string";
1365
+ };
1366
+ };
1367
+ readonly active: {
1368
+ readonly type: "boolean";
1369
+ };
1370
+ };
1371
+ };
1372
+ readonly token: {
1373
+ readonly type: "object";
1374
+ readonly properties: {
1375
+ readonly type: {
1376
+ readonly type: "string";
1377
+ };
1378
+ readonly content: {
1379
+ readonly type: "string";
1380
+ };
1381
+ };
1382
+ };
1383
+ };
1384
+ };
1385
+ }>> & {
1386
+ _tag: "Result";
1387
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1388
+ readonly user: {
1389
+ readonly type: "object";
1390
+ readonly properties: {
1391
+ readonly _id: {
1392
+ readonly const: null;
1393
+ };
1394
+ readonly name: {
1395
+ readonly type: "string";
1396
+ };
1397
+ readonly email: {
1398
+ readonly type: "string";
1399
+ };
1400
+ readonly roles: {
1401
+ readonly type: "array";
1402
+ readonly items: {
1403
+ readonly type: "string";
1404
+ };
1405
+ };
1406
+ readonly active: {
1407
+ readonly type: "boolean";
1408
+ };
1409
+ };
1410
+ };
1411
+ readonly token: {
1412
+ readonly type: "object";
1413
+ readonly properties: {
1414
+ readonly type: {
1415
+ readonly type: "string";
1416
+ };
1417
+ readonly content: {
1418
+ readonly type: "string";
1419
+ };
1420
+ };
1421
+ };
1422
+ }>> & {
1423
+ user: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1424
+ readonly _id: {
1425
+ readonly const: null;
1426
+ };
1427
+ readonly name: {
1428
+ readonly type: "string";
1429
+ };
1430
+ readonly email: {
1431
+ readonly type: "string";
1432
+ };
1433
+ readonly roles: {
1434
+ readonly type: "array";
1435
+ readonly items: {
1436
+ readonly type: "string";
1437
+ };
1438
+ };
1439
+ readonly active: {
1440
+ readonly type: "boolean";
1441
+ };
1442
+ }>> & {
1443
+ name: string;
1444
+ _id: null;
1445
+ roles: string[];
1446
+ email: string;
1447
+ active: boolean;
1448
+ }, never>;
1449
+ token: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1450
+ readonly type: {
1451
+ readonly type: "string";
1452
+ };
1453
+ readonly content: {
1454
+ readonly type: "string";
1455
+ };
1456
+ }>> & {
1457
+ type: string;
1458
+ content: string;
1459
+ }, never>;
1460
+ }, never>;
1461
+ error: undefined;
1462
+ }, never>)>>;
1463
+ readonly activate: (payload: Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1464
+ readonly password: {
1465
+ readonly type: "string";
1466
+ };
1467
+ readonly userId: {
1468
+ readonly type: "string";
1469
+ };
1470
+ readonly token: {
1471
+ readonly type: "string";
1472
+ };
1473
+ }>> & {
1474
+ password: string;
1475
+ token: string;
1476
+ userId: string;
1477
+ }, never>>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1478
+ readonly _tag: {
1479
+ readonly const: "Error";
1480
+ };
1481
+ readonly result: {
1482
+ readonly const: undefined;
1483
+ };
1484
+ readonly error: {
1485
+ readonly type: "object";
1486
+ readonly required: readonly ["httpStatus", "code"];
1487
+ readonly properties: {
1488
+ readonly httpStatus: {
1489
+ readonly enum: [404, 403, 401, 422];
1490
+ };
1491
+ readonly code: {
1492
+ readonly enum: ["RESOURCE_NOT_FOUND", "MALFORMED_INPUT", "ALREADY_ACTIVE_USER", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
1493
+ };
1494
+ readonly message: {
1495
+ readonly type: "string";
1496
+ };
1497
+ readonly details: {
1498
+ readonly type: "object";
1499
+ readonly additionalProperties: true;
1500
+ };
1501
+ };
1502
+ };
1503
+ }>> & {
1504
+ _tag: "Error";
1505
+ result: undefined;
1506
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1507
+ readonly httpStatus: {
1508
+ readonly enum: [404, 403, 401, 422];
1509
+ };
1510
+ readonly code: {
1511
+ readonly enum: ["RESOURCE_NOT_FOUND", "MALFORMED_INPUT", "ALREADY_ACTIVE_USER", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
1512
+ };
1513
+ readonly message: {
1514
+ readonly type: "string";
1515
+ };
1516
+ readonly details: {
1517
+ readonly type: "object";
1518
+ readonly additionalProperties: true;
1519
+ };
1520
+ }>> & {
1521
+ code: "RESOURCE_NOT_FOUND" | "MALFORMED_INPUT" | "USER_NOT_FOUND" | "ALREADY_ACTIVE_USER" | "INVALID_LINK" | "INVALID_TOKEN";
1522
+ httpStatus: 401 | 403 | 404 | 422;
1523
+ message: string;
1524
+ details: any;
1525
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1526
+ readonly httpStatus: {
1527
+ readonly enum: [404, 403, 401, 422];
1528
+ };
1529
+ readonly code: {
1530
+ readonly enum: ["RESOURCE_NOT_FOUND", "MALFORMED_INPUT", "ALREADY_ACTIVE_USER", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
1531
+ };
1532
+ readonly message: {
1533
+ readonly type: "string";
1534
+ };
1535
+ readonly details: {
1536
+ readonly type: "object";
1537
+ readonly additionalProperties: true;
1538
+ };
1539
+ }>> & {
1540
+ code: "RESOURCE_NOT_FOUND" | "MALFORMED_INPUT" | "USER_NOT_FOUND" | "ALREADY_ACTIVE_USER" | "INVALID_LINK" | "INVALID_TOKEN";
1541
+ httpStatus: 401 | 403 | 404 | 422;
1542
+ message: string;
1543
+ details: any;
1544
+ }, never>>;
1545
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1546
+ readonly _tag: {
1547
+ readonly const: "Result";
1548
+ };
1549
+ readonly error: {
1550
+ readonly const: undefined;
1551
+ };
1552
+ readonly result: {
1553
+ readonly type: "object";
1554
+ readonly properties: {
1555
+ readonly userId: {
1556
+ readonly type: "string";
1557
+ readonly format: "objectid";
1558
+ };
1559
+ };
1560
+ };
1561
+ }>> & {
1562
+ _tag: "Result";
1563
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1564
+ readonly userId: {
1565
+ readonly type: "string";
1566
+ readonly format: "objectid";
1567
+ };
1568
+ }>> & {
1569
+ userId: import("@aeriajs/core").ObjectId;
1570
+ }, never>;
1571
+ error: undefined;
1572
+ }, never>) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1573
+ readonly _tag: {
1574
+ readonly const: "Error";
1575
+ };
1576
+ readonly result: {
1577
+ readonly const: undefined;
1578
+ };
1579
+ readonly error: {
1580
+ readonly type: "object";
1581
+ readonly required: readonly ["httpStatus", "code"];
1582
+ readonly properties: {
1583
+ readonly httpStatus: {
1584
+ readonly enum: [404, 403, 401, 422];
1585
+ };
1586
+ readonly code: {
1587
+ readonly enum: ["RESOURCE_NOT_FOUND", "MALFORMED_INPUT", "ALREADY_ACTIVE_USER", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
1588
+ };
1589
+ readonly message: {
1590
+ readonly type: "string";
1591
+ };
1592
+ readonly details: {
1593
+ readonly type: "object";
1594
+ readonly additionalProperties: true;
1595
+ };
1596
+ };
1597
+ };
1598
+ }>> & {
1599
+ _tag: "Error";
1600
+ result: undefined;
1601
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1602
+ readonly httpStatus: {
1603
+ readonly enum: [404, 403, 401, 422];
1604
+ };
1605
+ readonly code: {
1606
+ readonly enum: ["RESOURCE_NOT_FOUND", "MALFORMED_INPUT", "ALREADY_ACTIVE_USER", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
1607
+ };
1608
+ readonly message: {
1609
+ readonly type: "string";
1610
+ };
1611
+ readonly details: {
1612
+ readonly type: "object";
1613
+ readonly additionalProperties: true;
1614
+ };
1615
+ }>> & {
1616
+ code: "RESOURCE_NOT_FOUND" | "MALFORMED_INPUT" | "USER_NOT_FOUND" | "ALREADY_ACTIVE_USER" | "INVALID_LINK" | "INVALID_TOKEN";
1617
+ httpStatus: 401 | 403 | 404 | 422;
1618
+ message: string;
1619
+ details: any;
1620
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1621
+ readonly httpStatus: {
1622
+ readonly enum: [404, 403, 401, 422];
1623
+ };
1624
+ readonly code: {
1625
+ readonly enum: ["RESOURCE_NOT_FOUND", "MALFORMED_INPUT", "ALREADY_ACTIVE_USER", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
1626
+ };
1627
+ readonly message: {
1628
+ readonly type: "string";
1629
+ };
1630
+ readonly details: {
1631
+ readonly type: "object";
1632
+ readonly additionalProperties: true;
1633
+ };
1634
+ }>> & {
1635
+ code: "RESOURCE_NOT_FOUND" | "MALFORMED_INPUT" | "USER_NOT_FOUND" | "ALREADY_ACTIVE_USER" | "INVALID_LINK" | "INVALID_TOKEN";
1636
+ httpStatus: 401 | 403 | 404 | 422;
1637
+ message: string;
1638
+ details: any;
1639
+ }, never>>;
1640
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1641
+ readonly _tag: {
1642
+ readonly const: "Result";
1643
+ };
1644
+ readonly error: {
1645
+ readonly const: undefined;
1646
+ };
1647
+ readonly result: {
1648
+ readonly type: "object";
1649
+ readonly properties: {
1650
+ readonly userId: {
1651
+ readonly type: "string";
1652
+ readonly format: "objectid";
1653
+ };
1654
+ };
1655
+ };
1656
+ }>> & {
1657
+ _tag: "Result";
1658
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1659
+ readonly userId: {
1660
+ readonly type: "string";
1661
+ readonly format: "objectid";
1662
+ };
1663
+ }>> & {
1664
+ userId: import("@aeriajs/core").ObjectId;
1665
+ }, never>;
1666
+ error: undefined;
1667
+ }, never>)>;
1668
+ readonly createAccount: (payload: Partial<{
1669
+ picture_file: import("@aeriajs/types").SchemaWithId<{
1670
+ readonly $id: "file";
1671
+ readonly icon: "paperclip";
1672
+ readonly owned: "always";
1673
+ readonly presets: readonly ["owned"];
1674
+ readonly indexes: readonly ["name", "link", "type", "size"];
1675
+ readonly properties: {
1676
+ readonly type: {
1677
+ readonly type: "string";
1678
+ };
1679
+ readonly size: {
1680
+ readonly type: "number";
1681
+ };
1682
+ readonly last_modified: {
1683
+ readonly type: "string";
1684
+ readonly format: "date-time";
1685
+ };
1686
+ readonly name: {
1687
+ readonly type: "string";
1688
+ };
1689
+ readonly absolute_path: {
1690
+ readonly type: "string";
1691
+ };
1692
+ readonly relative_path: {
1693
+ readonly type: "string";
1694
+ };
1695
+ readonly immutable: {
1696
+ readonly type: "boolean";
1697
+ };
1698
+ readonly link: {
1699
+ readonly getter: (doc: object) => Promise<string | undefined>;
1700
+ };
1701
+ readonly download_link: {
1702
+ readonly getter: (doc: object) => Promise<string | undefined>;
1703
+ };
1704
+ };
1705
+ readonly actions: {
1706
+ readonly deleteAll: {
1707
+ readonly label: "Remover";
1708
+ readonly ask: true;
1709
+ readonly selection: true;
1710
+ };
1711
+ };
1712
+ readonly individualActions: {
1713
+ readonly remove: {
1714
+ readonly label: "Remover";
1715
+ readonly icon: "trash";
1716
+ readonly ask: true;
1717
+ };
1718
+ };
1719
+ }>;
1720
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1721
+ readonly name: {
1722
+ readonly type: "string";
1723
+ readonly minLength: 1;
1724
+ };
1725
+ readonly given_name: {
1726
+ readonly getter: (doc: object) => string | undefined;
1727
+ };
1728
+ readonly family_name: {
1729
+ readonly getter: (doc: object) => string | undefined;
1730
+ };
1731
+ readonly active: {
1732
+ readonly type: "boolean";
1733
+ };
1734
+ readonly roles: {
1735
+ readonly type: "array";
1736
+ readonly items: {
1737
+ readonly type: "string";
1738
+ };
1739
+ readonly uniqueItems: true;
1740
+ readonly minItems: 1;
1741
+ };
1742
+ readonly email: {
1743
+ readonly type: "string";
1744
+ readonly inputType: "email";
1745
+ readonly minLength: 3;
1746
+ };
1747
+ readonly password: {
1748
+ readonly type: "string";
1749
+ readonly inputType: "password";
1750
+ readonly hidden: true;
1751
+ };
1752
+ readonly phone_number: {
1753
+ readonly type: "string";
1754
+ readonly mask: "(##) #####-####";
1755
+ };
1756
+ readonly picture_file: {
1757
+ readonly $ref: "file";
1758
+ readonly accept: readonly ["image/*"];
1759
+ };
1760
+ readonly picture: {
1761
+ readonly getter: (doc: object) => Promise<string> | undefined;
1762
+ };
1763
+ readonly self_registered: {
1764
+ readonly type: "boolean";
1765
+ readonly readOnly: true;
1766
+ };
1767
+ readonly updated_at: {
1768
+ readonly type: "string";
1769
+ readonly format: "date-time";
1770
+ };
1771
+ }>> & {
1772
+ name: string;
1773
+ password: string;
1774
+ updated_at: Date;
1775
+ picture: never;
1776
+ roles: string[];
1777
+ email: string;
1778
+ active: boolean;
1779
+ phone_number: string;
1780
+ picture_file: never;
1781
+ given_name: never;
1782
+ family_name: never;
1783
+ }, "picture_file">>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1784
+ readonly _tag: {
1785
+ readonly const: "Error";
1786
+ };
1787
+ readonly result: {
1788
+ readonly const: undefined;
1789
+ };
1790
+ readonly error: {
1791
+ readonly type: "object";
1792
+ readonly required: readonly ["httpStatus", "code"];
1793
+ readonly properties: {
1794
+ readonly httpStatus: {
1795
+ readonly enum: [403, 404, 422, 400, 500];
1796
+ };
1797
+ readonly code: {
1798
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
1799
+ };
1800
+ readonly message: {
1801
+ readonly type: "string";
1802
+ };
1803
+ readonly details: {
1804
+ readonly type: "object";
1805
+ readonly additionalProperties: true;
1806
+ };
1807
+ };
1808
+ };
1809
+ }>> & {
1810
+ _tag: "Error";
1811
+ result: undefined;
1812
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1813
+ readonly httpStatus: {
1814
+ readonly enum: [403, 404, 422, 400, 500];
1815
+ };
1816
+ readonly code: {
1817
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
1818
+ };
1819
+ readonly message: {
1820
+ readonly type: "string";
1821
+ };
1822
+ readonly details: {
1823
+ readonly type: "object";
1824
+ readonly additionalProperties: true;
1825
+ };
1826
+ }>> & {
1827
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
1828
+ httpStatus: 400 | 403 | 404 | 422 | 500;
1829
+ message: string;
1830
+ details: any;
1831
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1832
+ readonly httpStatus: {
1833
+ readonly enum: [403, 404, 422, 400, 500];
1834
+ };
1835
+ readonly code: {
1836
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
1837
+ };
1838
+ readonly message: {
1839
+ readonly type: "string";
1840
+ };
1841
+ readonly details: {
1842
+ readonly type: "object";
1843
+ readonly additionalProperties: true;
1844
+ };
1845
+ }>> & {
1846
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
1847
+ httpStatus: 400 | 403 | 404 | 422 | 500;
1848
+ message: string;
1849
+ details: any;
1850
+ }, never>>;
1851
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1852
+ readonly _tag: {
1853
+ readonly const: "Error";
1854
+ };
1855
+ readonly result: {
1856
+ readonly const: undefined;
1857
+ };
1858
+ readonly error: {
1859
+ readonly type: "object";
1860
+ readonly required: readonly ["httpStatus", "code"];
1861
+ readonly properties: {
1862
+ readonly httpStatus: {
1863
+ readonly enum: [403, 422];
1864
+ };
1865
+ readonly code: {
1866
+ readonly enum: ["MALFORMED_INPUT", "OWNERSHIP_ERROR", "SIGNUP_DISALLOWED"];
1867
+ };
1868
+ readonly message: {
1869
+ readonly type: "string";
1870
+ };
1871
+ readonly details: {
1872
+ readonly type: "object";
1873
+ readonly additionalProperties: true;
1874
+ };
1875
+ };
1876
+ };
1877
+ }>> & {
1878
+ _tag: "Error";
1879
+ result: undefined;
1880
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1881
+ readonly httpStatus: {
1882
+ readonly enum: [403, 422];
1883
+ };
1884
+ readonly code: {
1885
+ readonly enum: ["MALFORMED_INPUT", "OWNERSHIP_ERROR", "SIGNUP_DISALLOWED"];
1886
+ };
1887
+ readonly message: {
1888
+ readonly type: "string";
1889
+ };
1890
+ readonly details: {
1891
+ readonly type: "object";
1892
+ readonly additionalProperties: true;
1893
+ };
1894
+ }>> & {
1895
+ code: "OWNERSHIP_ERROR" | "MALFORMED_INPUT" | "SIGNUP_DISALLOWED";
1896
+ httpStatus: 403 | 422;
1897
+ message: string;
1898
+ details: any;
1899
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1900
+ readonly httpStatus: {
1901
+ readonly enum: [403, 422];
1902
+ };
1903
+ readonly code: {
1904
+ readonly enum: ["MALFORMED_INPUT", "OWNERSHIP_ERROR", "SIGNUP_DISALLOWED"];
1905
+ };
1906
+ readonly message: {
1907
+ readonly type: "string";
1908
+ };
1909
+ readonly details: {
1910
+ readonly type: "object";
1911
+ readonly additionalProperties: true;
1912
+ };
1913
+ }>> & {
1914
+ code: "OWNERSHIP_ERROR" | "MALFORMED_INPUT" | "SIGNUP_DISALLOWED";
1915
+ httpStatus: 403 | 422;
1916
+ message: string;
1917
+ details: any;
1918
+ }, never>>;
1919
+ }, never>) | ({
1920
+ result: import("@aeriajs/types").SchemaWithId<{
1921
+ readonly $id: "user";
1922
+ readonly icon: "users";
1923
+ readonly required: readonly ["name", "roles", "email"];
1924
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
1925
+ readonly indexes: readonly ["name"];
1926
+ readonly unique: readonly ["email"];
1927
+ readonly properties: {
1928
+ readonly name: {
1929
+ readonly type: "string";
1930
+ readonly minLength: 1;
1931
+ };
1932
+ readonly given_name: {
1933
+ readonly getter: (doc: object) => string | undefined;
1934
+ };
1935
+ readonly family_name: {
1936
+ readonly getter: (doc: object) => string | undefined;
1937
+ };
1938
+ readonly active: {
1939
+ readonly type: "boolean";
1940
+ };
1941
+ readonly roles: {
1942
+ readonly type: "array";
1943
+ readonly items: {
1944
+ readonly type: "string";
1945
+ };
1946
+ readonly uniqueItems: true;
1947
+ readonly minItems: 1;
1948
+ };
1949
+ readonly email: {
1950
+ readonly type: "string";
1951
+ readonly inputType: "email";
1952
+ readonly minLength: 3;
1953
+ };
1954
+ readonly password: {
1955
+ readonly type: "string";
1956
+ readonly inputType: "password";
1957
+ readonly hidden: true;
1958
+ };
1959
+ readonly phone_number: {
1960
+ readonly type: "string";
1961
+ readonly mask: "(##) #####-####";
1962
+ };
1963
+ readonly picture_file: {
1964
+ readonly $ref: "file";
1965
+ readonly accept: readonly ["image/*"];
1966
+ };
1967
+ readonly picture: {
1968
+ readonly getter: (doc: object) => Promise<string> | undefined;
1969
+ };
1970
+ readonly self_registered: {
1971
+ readonly type: "boolean";
1972
+ readonly readOnly: true;
1973
+ };
1974
+ readonly updated_at: {
1975
+ readonly type: "string";
1976
+ readonly format: "date-time";
1977
+ };
1978
+ };
1979
+ readonly presets: readonly ["crud", "duplicate"];
1980
+ readonly layout: {
1981
+ readonly name: "grid";
1982
+ readonly options: {
1983
+ readonly title: "name";
1984
+ readonly badge: "roles";
1985
+ readonly picture: "picture_file";
1986
+ readonly information: "email";
1987
+ readonly active: "active";
1988
+ readonly translateBadge: true;
1989
+ };
1990
+ };
1991
+ readonly individualActions: {
1992
+ readonly changePassword: {
1993
+ readonly label: "change_password";
1994
+ readonly icon: "key";
1995
+ readonly translate: true;
1996
+ readonly route: {
1997
+ readonly name: "/dashboard/user/changepass";
1998
+ readonly fetchItem: true;
1999
+ };
2000
+ };
2001
+ readonly copyRedefinePasswordLink: {
2002
+ readonly label: "copy_redefine_password_link";
2003
+ readonly icon: "link";
2004
+ readonly translate: true;
2005
+ };
2006
+ readonly copyActivationLink: {
2007
+ readonly label: "copy_activation_link";
2008
+ readonly icon: "link";
2009
+ readonly translate: true;
2010
+ };
2011
+ };
2012
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
2013
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
2014
+ readonly tableMeta: readonly ["email"];
2015
+ readonly formLayout: {
2016
+ readonly fields: {
2017
+ readonly given_name: {
2018
+ readonly span: 3;
2019
+ };
2020
+ readonly family_name: {
2021
+ readonly span: 3;
2022
+ };
2023
+ };
2024
+ };
2025
+ }>;
2026
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2027
+ readonly _tag: {
2028
+ readonly const: "Result";
2029
+ };
2030
+ readonly error: {
2031
+ readonly const: undefined;
2032
+ };
2033
+ readonly result: {
2034
+ readonly $ref: "user";
2035
+ };
2036
+ }>> & {
2037
+ _tag: "Result";
2038
+ result: never;
2039
+ error: undefined;
2040
+ }, "result">) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2041
+ readonly _tag: {
2042
+ readonly const: "Error";
2043
+ };
2044
+ readonly result: {
2045
+ readonly const: undefined;
2046
+ };
2047
+ readonly error: {
2048
+ readonly type: "object";
2049
+ readonly required: readonly ["httpStatus", "code"];
2050
+ readonly properties: {
2051
+ readonly httpStatus: {
2052
+ readonly enum: [403, 404, 422, 400, 500];
2053
+ };
2054
+ readonly code: {
2055
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
2056
+ };
2057
+ readonly message: {
2058
+ readonly type: "string";
2059
+ };
2060
+ readonly details: {
2061
+ readonly type: "object";
2062
+ readonly additionalProperties: true;
2063
+ };
2064
+ };
2065
+ };
2066
+ }>> & {
2067
+ _tag: "Error";
2068
+ result: undefined;
2069
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2070
+ readonly httpStatus: {
2071
+ readonly enum: [403, 404, 422, 400, 500];
2072
+ };
2073
+ readonly code: {
2074
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
2075
+ };
2076
+ readonly message: {
2077
+ readonly type: "string";
2078
+ };
2079
+ readonly details: {
2080
+ readonly type: "object";
2081
+ readonly additionalProperties: true;
2082
+ };
2083
+ }>> & {
2084
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
2085
+ httpStatus: 400 | 403 | 404 | 422 | 500;
2086
+ message: string;
2087
+ details: any;
2088
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2089
+ readonly httpStatus: {
2090
+ readonly enum: [403, 404, 422, 400, 500];
2091
+ };
2092
+ readonly code: {
2093
+ readonly enum: ["INSECURE_OPERATOR", "OWNERSHIP_ERROR", "RESOURCE_NOT_FOUND", "TARGET_IMMUTABLE", "MALFORMED_INPUT", "UNIQUENESS_VIOLATED", "EMPTY_TARGET", "INVALID_PROPERTIES", "MISSING_PROPERTIES", "INVALID_DOCUMENT_ID", "INVALID_TEMPFILE"];
2094
+ };
2095
+ readonly message: {
2096
+ readonly type: "string";
2097
+ };
2098
+ readonly details: {
2099
+ readonly type: "object";
2100
+ readonly additionalProperties: true;
2101
+ };
2102
+ }>> & {
2103
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "TARGET_IMMUTABLE" | "MALFORMED_INPUT" | "UNIQUENESS_VIOLATED" | "EMPTY_TARGET" | "INVALID_PROPERTIES" | "MISSING_PROPERTIES" | "INVALID_DOCUMENT_ID" | "INVALID_TEMPFILE";
2104
+ httpStatus: 400 | 403 | 404 | 422 | 500;
2105
+ message: string;
2106
+ details: any;
2107
+ }, never>>;
2108
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2109
+ readonly _tag: {
2110
+ readonly const: "Error";
2111
+ };
2112
+ readonly result: {
2113
+ readonly const: undefined;
2114
+ };
2115
+ readonly error: {
2116
+ readonly type: "object";
2117
+ readonly required: readonly ["httpStatus", "code"];
2118
+ readonly properties: {
2119
+ readonly httpStatus: {
2120
+ readonly enum: [403, 422];
2121
+ };
2122
+ readonly code: {
2123
+ readonly enum: ["MALFORMED_INPUT", "OWNERSHIP_ERROR", "SIGNUP_DISALLOWED"];
2124
+ };
2125
+ readonly message: {
2126
+ readonly type: "string";
2127
+ };
2128
+ readonly details: {
2129
+ readonly type: "object";
2130
+ readonly additionalProperties: true;
2131
+ };
2132
+ };
2133
+ };
2134
+ }>> & {
2135
+ _tag: "Error";
2136
+ result: undefined;
2137
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2138
+ readonly httpStatus: {
2139
+ readonly enum: [403, 422];
2140
+ };
2141
+ readonly code: {
2142
+ readonly enum: ["MALFORMED_INPUT", "OWNERSHIP_ERROR", "SIGNUP_DISALLOWED"];
2143
+ };
2144
+ readonly message: {
2145
+ readonly type: "string";
2146
+ };
2147
+ readonly details: {
2148
+ readonly type: "object";
2149
+ readonly additionalProperties: true;
2150
+ };
2151
+ }>> & {
2152
+ code: "OWNERSHIP_ERROR" | "MALFORMED_INPUT" | "SIGNUP_DISALLOWED";
2153
+ httpStatus: 403 | 422;
2154
+ message: string;
2155
+ details: any;
2156
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2157
+ readonly httpStatus: {
2158
+ readonly enum: [403, 422];
2159
+ };
2160
+ readonly code: {
2161
+ readonly enum: ["MALFORMED_INPUT", "OWNERSHIP_ERROR", "SIGNUP_DISALLOWED"];
2162
+ };
2163
+ readonly message: {
2164
+ readonly type: "string";
2165
+ };
2166
+ readonly details: {
2167
+ readonly type: "object";
2168
+ readonly additionalProperties: true;
2169
+ };
2170
+ }>> & {
2171
+ code: "OWNERSHIP_ERROR" | "MALFORMED_INPUT" | "SIGNUP_DISALLOWED";
2172
+ httpStatus: 403 | 422;
2173
+ message: string;
2174
+ details: any;
2175
+ }, never>>;
2176
+ }, never>) | ({
2177
+ result: import("@aeriajs/types").SchemaWithId<{
2178
+ readonly $id: "user";
2179
+ readonly icon: "users";
2180
+ readonly required: readonly ["name", "roles", "email"];
2181
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
2182
+ readonly indexes: readonly ["name"];
2183
+ readonly unique: readonly ["email"];
2184
+ readonly properties: {
2185
+ readonly name: {
2186
+ readonly type: "string";
2187
+ readonly minLength: 1;
2188
+ };
2189
+ readonly given_name: {
2190
+ readonly getter: (doc: object) => string | undefined;
2191
+ };
2192
+ readonly family_name: {
2193
+ readonly getter: (doc: object) => string | undefined;
2194
+ };
2195
+ readonly active: {
2196
+ readonly type: "boolean";
2197
+ };
2198
+ readonly roles: {
2199
+ readonly type: "array";
2200
+ readonly items: {
2201
+ readonly type: "string";
2202
+ };
2203
+ readonly uniqueItems: true;
2204
+ readonly minItems: 1;
2205
+ };
2206
+ readonly email: {
2207
+ readonly type: "string";
2208
+ readonly inputType: "email";
2209
+ readonly minLength: 3;
2210
+ };
2211
+ readonly password: {
2212
+ readonly type: "string";
2213
+ readonly inputType: "password";
2214
+ readonly hidden: true;
2215
+ };
2216
+ readonly phone_number: {
2217
+ readonly type: "string";
2218
+ readonly mask: "(##) #####-####";
2219
+ };
2220
+ readonly picture_file: {
2221
+ readonly $ref: "file";
2222
+ readonly accept: readonly ["image/*"];
2223
+ };
2224
+ readonly picture: {
2225
+ readonly getter: (doc: object) => Promise<string> | undefined;
2226
+ };
2227
+ readonly self_registered: {
2228
+ readonly type: "boolean";
2229
+ readonly readOnly: true;
2230
+ };
2231
+ readonly updated_at: {
2232
+ readonly type: "string";
2233
+ readonly format: "date-time";
2234
+ };
2235
+ };
2236
+ readonly presets: readonly ["crud", "duplicate"];
2237
+ readonly layout: {
2238
+ readonly name: "grid";
2239
+ readonly options: {
2240
+ readonly title: "name";
2241
+ readonly badge: "roles";
2242
+ readonly picture: "picture_file";
2243
+ readonly information: "email";
2244
+ readonly active: "active";
2245
+ readonly translateBadge: true;
2246
+ };
2247
+ };
2248
+ readonly individualActions: {
2249
+ readonly changePassword: {
2250
+ readonly label: "change_password";
2251
+ readonly icon: "key";
2252
+ readonly translate: true;
2253
+ readonly route: {
2254
+ readonly name: "/dashboard/user/changepass";
2255
+ readonly fetchItem: true;
2256
+ };
2257
+ };
2258
+ readonly copyRedefinePasswordLink: {
2259
+ readonly label: "copy_redefine_password_link";
2260
+ readonly icon: "link";
2261
+ readonly translate: true;
2262
+ };
2263
+ readonly copyActivationLink: {
2264
+ readonly label: "copy_activation_link";
2265
+ readonly icon: "link";
2266
+ readonly translate: true;
2267
+ };
2268
+ };
2269
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
2270
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
2271
+ readonly tableMeta: readonly ["email"];
2272
+ readonly formLayout: {
2273
+ readonly fields: {
2274
+ readonly given_name: {
2275
+ readonly span: 3;
2276
+ };
2277
+ readonly family_name: {
2278
+ readonly span: 3;
2279
+ };
2280
+ };
2281
+ };
2282
+ }>;
2283
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2284
+ readonly _tag: {
2285
+ readonly const: "Result";
2286
+ };
2287
+ readonly error: {
2288
+ readonly const: undefined;
2289
+ };
2290
+ readonly result: {
2291
+ readonly $ref: "user";
2292
+ };
2293
+ }>> & {
2294
+ _tag: "Result";
2295
+ result: never;
2296
+ error: undefined;
2297
+ }, "result">)>;
2298
+ readonly getInfo: (payload: Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2299
+ readonly userId: {
2300
+ readonly type: "string";
2301
+ };
2302
+ readonly token: {
2303
+ readonly type: "string";
2304
+ };
2305
+ }>> & {
2306
+ token: string;
2307
+ userId: string;
2308
+ }, never>>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2309
+ readonly _tag: {
2310
+ readonly const: "Error";
2311
+ };
2312
+ readonly result: {
2313
+ readonly const: undefined;
2314
+ };
2315
+ readonly error: {
2316
+ readonly type: "object";
2317
+ readonly required: readonly ["httpStatus", "code"];
2318
+ readonly properties: {
2319
+ readonly httpStatus: {
2320
+ readonly enum: [404, 401, 422];
2321
+ };
2322
+ readonly code: {
2323
+ readonly enum: ["INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
2324
+ };
2325
+ readonly message: {
2326
+ readonly type: "string";
2327
+ };
2328
+ readonly details: {
2329
+ readonly type: "object";
2330
+ readonly additionalProperties: true;
2331
+ };
2332
+ };
2333
+ };
2334
+ }>> & {
2335
+ _tag: "Error";
2336
+ result: undefined;
2337
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2338
+ readonly httpStatus: {
2339
+ readonly enum: [404, 401, 422];
2340
+ };
2341
+ readonly code: {
2342
+ readonly enum: ["INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
2343
+ };
2344
+ readonly message: {
2345
+ readonly type: "string";
2346
+ };
2347
+ readonly details: {
2348
+ readonly type: "object";
2349
+ readonly additionalProperties: true;
2350
+ };
2351
+ }>> & {
2352
+ code: "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN";
2353
+ httpStatus: 401 | 404 | 422;
2354
+ message: string;
2355
+ details: any;
2356
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2357
+ readonly httpStatus: {
2358
+ readonly enum: [404, 401, 422];
2359
+ };
2360
+ readonly code: {
2361
+ readonly enum: ["INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
2362
+ };
2363
+ readonly message: {
2364
+ readonly type: "string";
2365
+ };
2366
+ readonly details: {
2367
+ readonly type: "object";
2368
+ readonly additionalProperties: true;
2369
+ };
2370
+ }>> & {
2371
+ code: "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN";
2372
+ httpStatus: 401 | 404 | 422;
2373
+ message: string;
2374
+ details: any;
2375
+ }, never>>;
2376
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2377
+ readonly _tag: {
2378
+ readonly const: "Result";
2379
+ };
2380
+ readonly error: {
2381
+ readonly const: undefined;
2382
+ };
2383
+ readonly result: {
2384
+ readonly type: "object";
2385
+ readonly required: readonly ["name", "email"];
2386
+ readonly properties: {
2387
+ readonly name: {
2388
+ readonly type: "string";
2389
+ };
2390
+ readonly email: {
2391
+ readonly type: "string";
2392
+ };
2393
+ readonly active: {
2394
+ readonly type: "boolean";
2395
+ };
2396
+ };
2397
+ };
2398
+ }>> & {
2399
+ _tag: "Result";
2400
+ result: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2401
+ readonly name: {
2402
+ readonly type: "string";
2403
+ };
2404
+ readonly email: {
2405
+ readonly type: "string";
2406
+ };
2407
+ readonly active: {
2408
+ readonly type: "boolean";
2409
+ };
2410
+ }>> & {
2411
+ name: string;
2412
+ email: string;
2413
+ active: boolean;
2414
+ }, never>, "name" | "email"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2415
+ readonly name: {
2416
+ readonly type: "string";
2417
+ };
2418
+ readonly email: {
2419
+ readonly type: "string";
2420
+ };
2421
+ readonly active: {
2422
+ readonly type: "boolean";
2423
+ };
2424
+ }>> & {
2425
+ name: string;
2426
+ email: string;
2427
+ active: boolean;
2428
+ }, never>>;
2429
+ error: undefined;
2430
+ }, never>) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2431
+ readonly _tag: {
2432
+ readonly const: "Error";
2433
+ };
2434
+ readonly result: {
2435
+ readonly const: undefined;
2436
+ };
2437
+ readonly error: {
2438
+ readonly type: "object";
2439
+ readonly required: readonly ["httpStatus", "code"];
2440
+ readonly properties: {
2441
+ readonly httpStatus: {
2442
+ readonly enum: [404, 401, 422];
2443
+ };
2444
+ readonly code: {
2445
+ readonly enum: ["INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
2446
+ };
2447
+ readonly message: {
2448
+ readonly type: "string";
2449
+ };
2450
+ readonly details: {
2451
+ readonly type: "object";
2452
+ readonly additionalProperties: true;
2453
+ };
2454
+ };
2455
+ };
2456
+ }>> & {
2457
+ _tag: "Error";
2458
+ result: undefined;
2459
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2460
+ readonly httpStatus: {
2461
+ readonly enum: [404, 401, 422];
2462
+ };
2463
+ readonly code: {
2464
+ readonly enum: ["INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
2465
+ };
2466
+ readonly message: {
2467
+ readonly type: "string";
2468
+ };
2469
+ readonly details: {
2470
+ readonly type: "object";
2471
+ readonly additionalProperties: true;
2472
+ };
2473
+ }>> & {
2474
+ code: "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN";
2475
+ httpStatus: 401 | 404 | 422;
2476
+ message: string;
2477
+ details: any;
2478
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2479
+ readonly httpStatus: {
2480
+ readonly enum: [404, 401, 422];
2481
+ };
2482
+ readonly code: {
2483
+ readonly enum: ["INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND"];
2484
+ };
2485
+ readonly message: {
2486
+ readonly type: "string";
2487
+ };
2488
+ readonly details: {
2489
+ readonly type: "object";
2490
+ readonly additionalProperties: true;
2491
+ };
2492
+ }>> & {
2493
+ code: "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN";
2494
+ httpStatus: 401 | 404 | 422;
2495
+ message: string;
2496
+ details: any;
2497
+ }, never>>;
2498
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2499
+ readonly _tag: {
2500
+ readonly const: "Result";
2501
+ };
2502
+ readonly error: {
2503
+ readonly const: undefined;
2504
+ };
2505
+ readonly result: {
2506
+ readonly type: "object";
2507
+ readonly required: readonly ["name", "email"];
2508
+ readonly properties: {
2509
+ readonly name: {
2510
+ readonly type: "string";
2511
+ };
2512
+ readonly email: {
2513
+ readonly type: "string";
2514
+ };
2515
+ readonly active: {
2516
+ readonly type: "boolean";
2517
+ };
2518
+ };
2519
+ };
2520
+ }>> & {
2521
+ _tag: "Result";
2522
+ result: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2523
+ readonly name: {
2524
+ readonly type: "string";
2525
+ };
2526
+ readonly email: {
2527
+ readonly type: "string";
2528
+ };
2529
+ readonly active: {
2530
+ readonly type: "boolean";
2531
+ };
2532
+ }>> & {
2533
+ name: string;
2534
+ email: string;
2535
+ active: boolean;
2536
+ }, never>, "name" | "email"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2537
+ readonly name: {
2538
+ readonly type: "string";
2539
+ };
2540
+ readonly email: {
2541
+ readonly type: "string";
2542
+ };
2543
+ readonly active: {
2544
+ readonly type: "boolean";
2545
+ };
2546
+ }>> & {
2547
+ name: string;
2548
+ email: string;
2549
+ active: boolean;
2550
+ }, never>>;
2551
+ error: undefined;
2552
+ }, never>)>;
2553
+ readonly getCurrentUser: (payload: undefined, context: Omit<Context, "token">) => ({
2554
+ result: import("@aeriajs/types").SchemaWithId<{
2555
+ readonly $id: "user";
2556
+ readonly icon: "users";
2557
+ readonly required: readonly ["name", "roles", "email"];
2558
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
2559
+ readonly indexes: readonly ["name"];
2560
+ readonly unique: readonly ["email"];
2561
+ readonly properties: {
2562
+ readonly name: {
2563
+ readonly type: "string";
2564
+ readonly minLength: 1;
2565
+ };
2566
+ readonly given_name: {
2567
+ readonly getter: (doc: object) => string | undefined;
2568
+ };
2569
+ readonly family_name: {
2570
+ readonly getter: (doc: object) => string | undefined;
2571
+ };
2572
+ readonly active: {
2573
+ readonly type: "boolean";
2574
+ };
2575
+ readonly roles: {
2576
+ readonly type: "array";
2577
+ readonly items: {
2578
+ readonly type: "string";
2579
+ };
2580
+ readonly uniqueItems: true;
2581
+ readonly minItems: 1;
2582
+ };
2583
+ readonly email: {
2584
+ readonly type: "string";
2585
+ readonly inputType: "email";
2586
+ readonly minLength: 3;
2587
+ };
2588
+ readonly password: {
2589
+ readonly type: "string";
2590
+ readonly inputType: "password";
2591
+ readonly hidden: true;
2592
+ };
2593
+ readonly phone_number: {
2594
+ readonly type: "string";
2595
+ readonly mask: "(##) #####-####";
2596
+ };
2597
+ readonly picture_file: {
2598
+ readonly $ref: "file";
2599
+ readonly accept: readonly ["image/*"];
2600
+ };
2601
+ readonly picture: {
2602
+ readonly getter: (doc: object) => Promise<string> | undefined;
2603
+ };
2604
+ readonly self_registered: {
2605
+ readonly type: "boolean";
2606
+ readonly readOnly: true;
2607
+ };
2608
+ readonly updated_at: {
2609
+ readonly type: "string";
2610
+ readonly format: "date-time";
2611
+ };
2612
+ };
2613
+ readonly presets: readonly ["crud", "duplicate"];
2614
+ readonly layout: {
2615
+ readonly name: "grid";
2616
+ readonly options: {
2617
+ readonly title: "name";
2618
+ readonly badge: "roles";
2619
+ readonly picture: "picture_file";
2620
+ readonly information: "email";
2621
+ readonly active: "active";
2622
+ readonly translateBadge: true;
2623
+ };
2624
+ };
2625
+ readonly individualActions: {
2626
+ readonly changePassword: {
2627
+ readonly label: "change_password";
2628
+ readonly icon: "key";
2629
+ readonly translate: true;
2630
+ readonly route: {
2631
+ readonly name: "/dashboard/user/changepass";
2632
+ readonly fetchItem: true;
2633
+ };
2634
+ };
2635
+ readonly copyRedefinePasswordLink: {
2636
+ readonly label: "copy_redefine_password_link";
2637
+ readonly icon: "link";
2638
+ readonly translate: true;
2639
+ };
2640
+ readonly copyActivationLink: {
2641
+ readonly label: "copy_activation_link";
2642
+ readonly icon: "link";
2643
+ readonly translate: true;
2644
+ };
2645
+ };
2646
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
2647
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
2648
+ readonly tableMeta: readonly ["email"];
2649
+ readonly formLayout: {
2650
+ readonly fields: {
2651
+ readonly given_name: {
2652
+ readonly span: 3;
2653
+ };
2654
+ readonly family_name: {
2655
+ readonly span: 3;
2656
+ };
2657
+ };
2658
+ };
2659
+ }>;
2660
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2661
+ readonly _tag: {
2662
+ readonly const: "Result";
2663
+ };
2664
+ readonly error: {
2665
+ readonly const: undefined;
2666
+ };
2667
+ readonly result: {
2668
+ readonly $ref: "user";
2669
+ };
2670
+ }>> & {
2671
+ _tag: "Result";
2672
+ result: never;
2673
+ error: undefined;
2674
+ }, "result">) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2675
+ readonly _tag: {
2676
+ readonly const: "Result";
2677
+ };
2678
+ readonly error: {
2679
+ readonly const: undefined;
2680
+ };
2681
+ readonly result: {
2682
+ readonly type: "object";
2683
+ readonly properties: {
2684
+ readonly _id: {
2685
+ readonly const: null;
2686
+ };
2687
+ readonly name: {
2688
+ readonly type: "string";
2689
+ };
2690
+ readonly email: {
2691
+ readonly type: "string";
2692
+ };
2693
+ readonly roles: {
2694
+ readonly type: "array";
2695
+ readonly items: {
2696
+ readonly type: "string";
2697
+ };
2698
+ };
2699
+ readonly active: {
2700
+ readonly type: "boolean";
2701
+ };
2702
+ };
2703
+ };
2704
+ }>> & {
2705
+ _tag: "Result";
2706
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2707
+ readonly _id: {
2708
+ readonly const: null;
2709
+ };
2710
+ readonly name: {
2711
+ readonly type: "string";
2712
+ };
2713
+ readonly email: {
2714
+ readonly type: "string";
2715
+ };
2716
+ readonly roles: {
2717
+ readonly type: "array";
2718
+ readonly items: {
2719
+ readonly type: "string";
2720
+ };
2721
+ };
2722
+ readonly active: {
2723
+ readonly type: "boolean";
2724
+ };
2725
+ }>> & {
2726
+ name: string;
2727
+ _id: null;
2728
+ roles: string[];
2729
+ email: string;
2730
+ active: boolean;
2731
+ }, never>;
2732
+ error: undefined;
2733
+ }, never>) | Promise<({
2734
+ result: import("@aeriajs/types").SchemaWithId<{
2735
+ readonly $id: "user";
2736
+ readonly icon: "users";
2737
+ readonly required: readonly ["name", "roles", "email"];
2738
+ readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
2739
+ readonly indexes: readonly ["name"];
2740
+ readonly unique: readonly ["email"];
2741
+ readonly properties: {
2742
+ readonly name: {
2743
+ readonly type: "string";
2744
+ readonly minLength: 1;
2745
+ };
2746
+ readonly given_name: {
2747
+ readonly getter: (doc: object) => string | undefined;
2748
+ };
2749
+ readonly family_name: {
2750
+ readonly getter: (doc: object) => string | undefined;
2751
+ };
2752
+ readonly active: {
2753
+ readonly type: "boolean";
2754
+ };
2755
+ readonly roles: {
2756
+ readonly type: "array";
2757
+ readonly items: {
2758
+ readonly type: "string";
2759
+ };
2760
+ readonly uniqueItems: true;
2761
+ readonly minItems: 1;
2762
+ };
2763
+ readonly email: {
2764
+ readonly type: "string";
2765
+ readonly inputType: "email";
2766
+ readonly minLength: 3;
2767
+ };
2768
+ readonly password: {
2769
+ readonly type: "string";
2770
+ readonly inputType: "password";
2771
+ readonly hidden: true;
2772
+ };
2773
+ readonly phone_number: {
2774
+ readonly type: "string";
2775
+ readonly mask: "(##) #####-####";
2776
+ };
2777
+ readonly picture_file: {
2778
+ readonly $ref: "file";
2779
+ readonly accept: readonly ["image/*"];
2780
+ };
2781
+ readonly picture: {
2782
+ readonly getter: (doc: object) => Promise<string> | undefined;
2783
+ };
2784
+ readonly self_registered: {
2785
+ readonly type: "boolean";
2786
+ readonly readOnly: true;
2787
+ };
2788
+ readonly updated_at: {
2789
+ readonly type: "string";
2790
+ readonly format: "date-time";
2791
+ };
2792
+ };
2793
+ readonly presets: readonly ["crud", "duplicate"];
2794
+ readonly layout: {
2795
+ readonly name: "grid";
2796
+ readonly options: {
2797
+ readonly title: "name";
2798
+ readonly badge: "roles";
2799
+ readonly picture: "picture_file";
2800
+ readonly information: "email";
2801
+ readonly active: "active";
2802
+ readonly translateBadge: true;
2803
+ };
2804
+ };
2805
+ readonly individualActions: {
2806
+ readonly changePassword: {
2807
+ readonly label: "change_password";
2808
+ readonly icon: "key";
2809
+ readonly translate: true;
2810
+ readonly route: {
2811
+ readonly name: "/dashboard/user/changepass";
2812
+ readonly fetchItem: true;
2813
+ };
2814
+ };
2815
+ readonly copyRedefinePasswordLink: {
2816
+ readonly label: "copy_redefine_password_link";
2817
+ readonly icon: "link";
2818
+ readonly translate: true;
2819
+ };
2820
+ readonly copyActivationLink: {
2821
+ readonly label: "copy_activation_link";
2822
+ readonly icon: "link";
2823
+ readonly translate: true;
2824
+ };
2825
+ };
2826
+ readonly filters: readonly ["name", "roles", "email", "phone_number"];
2827
+ readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
2828
+ readonly tableMeta: readonly ["email"];
2829
+ readonly formLayout: {
2830
+ readonly fields: {
2831
+ readonly given_name: {
2832
+ readonly span: 3;
2833
+ };
2834
+ readonly family_name: {
2835
+ readonly span: 3;
2836
+ };
2837
+ };
2838
+ };
2839
+ }>;
2840
+ } & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2841
+ readonly _tag: {
2842
+ readonly const: "Result";
2843
+ };
2844
+ readonly error: {
2845
+ readonly const: undefined;
2846
+ };
2847
+ readonly result: {
2848
+ readonly $ref: "user";
2849
+ };
2850
+ }>> & {
2851
+ _tag: "Result";
2852
+ result: never;
2853
+ error: undefined;
2854
+ }, "result">) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2855
+ readonly _tag: {
2856
+ readonly const: "Result";
2857
+ };
2858
+ readonly error: {
2859
+ readonly const: undefined;
2860
+ };
2861
+ readonly result: {
2862
+ readonly type: "object";
2863
+ readonly properties: {
2864
+ readonly _id: {
2865
+ readonly const: null;
2866
+ };
2867
+ readonly name: {
2868
+ readonly type: "string";
2869
+ };
2870
+ readonly email: {
2871
+ readonly type: "string";
2872
+ };
2873
+ readonly roles: {
2874
+ readonly type: "array";
2875
+ readonly items: {
2876
+ readonly type: "string";
2877
+ };
2878
+ };
2879
+ readonly active: {
2880
+ readonly type: "boolean";
2881
+ };
2882
+ };
2883
+ };
2884
+ }>> & {
2885
+ _tag: "Result";
2886
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2887
+ readonly _id: {
2888
+ readonly const: null;
2889
+ };
280
2890
  readonly name: {
281
2891
  readonly type: "string";
282
- readonly minLength: 1;
283
2892
  };
284
- readonly given_name: {
285
- readonly getter: (doc: object) => string | undefined;
2893
+ readonly email: {
2894
+ readonly type: "string";
286
2895
  };
287
- readonly family_name: {
288
- readonly getter: (doc: object) => string | undefined;
2896
+ readonly roles: {
2897
+ readonly type: "array";
2898
+ readonly items: {
2899
+ readonly type: "string";
2900
+ };
289
2901
  };
290
2902
  readonly active: {
291
2903
  readonly type: "boolean";
292
2904
  };
293
- readonly roles: {
294
- readonly type: "array";
295
- readonly items: {
2905
+ }>> & {
2906
+ name: string;
2907
+ _id: null;
2908
+ roles: string[];
2909
+ email: string;
2910
+ active: boolean;
2911
+ }, never>;
2912
+ error: undefined;
2913
+ }, never>)>;
2914
+ readonly getActivationLink: (payload: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2915
+ readonly userId: {
2916
+ readonly type: "string";
2917
+ readonly format: "objectid";
2918
+ };
2919
+ readonly redirect: {
2920
+ readonly type: "string";
2921
+ };
2922
+ }>> & {
2923
+ userId: import("@aeriajs/core").ObjectId;
2924
+ redirect: string;
2925
+ }, never>, "userId"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2926
+ readonly userId: {
2927
+ readonly type: "string";
2928
+ readonly format: "objectid";
2929
+ };
2930
+ readonly redirect: {
2931
+ readonly type: "string";
2932
+ };
2933
+ }>> & {
2934
+ userId: import("@aeriajs/core").ObjectId;
2935
+ redirect: string;
2936
+ }, never>>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2937
+ readonly _tag: {
2938
+ readonly const: "Error";
2939
+ };
2940
+ readonly result: {
2941
+ readonly const: undefined;
2942
+ };
2943
+ readonly error: {
2944
+ readonly type: "object";
2945
+ readonly required: readonly ["httpStatus", "code"];
2946
+ readonly properties: {
2947
+ readonly httpStatus: {
2948
+ readonly enum: [403, 404, 400];
2949
+ };
2950
+ readonly code: {
2951
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
2952
+ };
2953
+ readonly message: {
296
2954
  readonly type: "string";
297
2955
  };
298
- readonly uniqueItems: true;
299
- readonly minItems: 1;
2956
+ readonly details: {
2957
+ readonly type: "object";
2958
+ readonly additionalProperties: true;
2959
+ };
300
2960
  };
301
- readonly email: {
2961
+ };
2962
+ }>> & {
2963
+ _tag: "Error";
2964
+ result: undefined;
2965
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2966
+ readonly httpStatus: {
2967
+ readonly enum: [403, 404, 400];
2968
+ };
2969
+ readonly code: {
2970
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
2971
+ };
2972
+ readonly message: {
2973
+ readonly type: "string";
2974
+ };
2975
+ readonly details: {
2976
+ readonly type: "object";
2977
+ readonly additionalProperties: true;
2978
+ };
2979
+ }>> & {
2980
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
2981
+ httpStatus: 400 | 403 | 404;
2982
+ message: string;
2983
+ details: any;
2984
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
2985
+ readonly httpStatus: {
2986
+ readonly enum: [403, 404, 400];
2987
+ };
2988
+ readonly code: {
2989
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
2990
+ };
2991
+ readonly message: {
2992
+ readonly type: "string";
2993
+ };
2994
+ readonly details: {
2995
+ readonly type: "object";
2996
+ readonly additionalProperties: true;
2997
+ };
2998
+ }>> & {
2999
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3000
+ httpStatus: 400 | 403 | 404;
3001
+ message: string;
3002
+ details: any;
3003
+ }, never>>;
3004
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3005
+ readonly _tag: {
3006
+ readonly const: "Error";
3007
+ };
3008
+ readonly result: {
3009
+ readonly const: undefined;
3010
+ };
3011
+ readonly error: {
3012
+ readonly type: "object";
3013
+ readonly required: readonly ["httpStatus", "code"];
3014
+ readonly properties: {
3015
+ readonly httpStatus: {
3016
+ readonly enum: [400, 403];
3017
+ };
3018
+ readonly code: {
3019
+ readonly enum: ["INVALID_LINK", "ALREADY_ACTIVE_USER"];
3020
+ };
3021
+ readonly message: {
3022
+ readonly type: "string";
3023
+ };
3024
+ readonly details: {
3025
+ readonly type: "object";
3026
+ readonly additionalProperties: true;
3027
+ };
3028
+ };
3029
+ };
3030
+ }>> & {
3031
+ _tag: "Error";
3032
+ result: undefined;
3033
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3034
+ readonly httpStatus: {
3035
+ readonly enum: [400, 403];
3036
+ };
3037
+ readonly code: {
3038
+ readonly enum: ["INVALID_LINK", "ALREADY_ACTIVE_USER"];
3039
+ };
3040
+ readonly message: {
3041
+ readonly type: "string";
3042
+ };
3043
+ readonly details: {
3044
+ readonly type: "object";
3045
+ readonly additionalProperties: true;
3046
+ };
3047
+ }>> & {
3048
+ code: "ALREADY_ACTIVE_USER" | "INVALID_LINK";
3049
+ httpStatus: 400 | 403;
3050
+ message: string;
3051
+ details: any;
3052
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3053
+ readonly httpStatus: {
3054
+ readonly enum: [400, 403];
3055
+ };
3056
+ readonly code: {
3057
+ readonly enum: ["INVALID_LINK", "ALREADY_ACTIVE_USER"];
3058
+ };
3059
+ readonly message: {
3060
+ readonly type: "string";
3061
+ };
3062
+ readonly details: {
3063
+ readonly type: "object";
3064
+ readonly additionalProperties: true;
3065
+ };
3066
+ }>> & {
3067
+ code: "ALREADY_ACTIVE_USER" | "INVALID_LINK";
3068
+ httpStatus: 400 | 403;
3069
+ message: string;
3070
+ details: any;
3071
+ }, never>>;
3072
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3073
+ readonly _tag: {
3074
+ readonly const: "Result";
3075
+ };
3076
+ readonly error: {
3077
+ readonly const: undefined;
3078
+ };
3079
+ readonly result: {
3080
+ readonly type: "object";
3081
+ readonly properties: {
3082
+ readonly url: {
3083
+ readonly type: "string";
3084
+ };
3085
+ };
3086
+ };
3087
+ }>> & {
3088
+ _tag: "Result";
3089
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3090
+ readonly url: {
3091
+ readonly type: "string";
3092
+ };
3093
+ }>> & {
3094
+ url: string;
3095
+ }, never>;
3096
+ error: undefined;
3097
+ }, never>) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3098
+ readonly _tag: {
3099
+ readonly const: "Error";
3100
+ };
3101
+ readonly result: {
3102
+ readonly const: undefined;
3103
+ };
3104
+ readonly error: {
3105
+ readonly type: "object";
3106
+ readonly required: readonly ["httpStatus", "code"];
3107
+ readonly properties: {
3108
+ readonly httpStatus: {
3109
+ readonly enum: [403, 404, 400];
3110
+ };
3111
+ readonly code: {
3112
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3113
+ };
3114
+ readonly message: {
3115
+ readonly type: "string";
3116
+ };
3117
+ readonly details: {
3118
+ readonly type: "object";
3119
+ readonly additionalProperties: true;
3120
+ };
3121
+ };
3122
+ };
3123
+ }>> & {
3124
+ _tag: "Error";
3125
+ result: undefined;
3126
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3127
+ readonly httpStatus: {
3128
+ readonly enum: [403, 404, 400];
3129
+ };
3130
+ readonly code: {
3131
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3132
+ };
3133
+ readonly message: {
3134
+ readonly type: "string";
3135
+ };
3136
+ readonly details: {
3137
+ readonly type: "object";
3138
+ readonly additionalProperties: true;
3139
+ };
3140
+ }>> & {
3141
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3142
+ httpStatus: 400 | 403 | 404;
3143
+ message: string;
3144
+ details: any;
3145
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3146
+ readonly httpStatus: {
3147
+ readonly enum: [403, 404, 400];
3148
+ };
3149
+ readonly code: {
3150
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3151
+ };
3152
+ readonly message: {
3153
+ readonly type: "string";
3154
+ };
3155
+ readonly details: {
3156
+ readonly type: "object";
3157
+ readonly additionalProperties: true;
3158
+ };
3159
+ }>> & {
3160
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3161
+ httpStatus: 400 | 403 | 404;
3162
+ message: string;
3163
+ details: any;
3164
+ }, never>>;
3165
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3166
+ readonly _tag: {
3167
+ readonly const: "Error";
3168
+ };
3169
+ readonly result: {
3170
+ readonly const: undefined;
3171
+ };
3172
+ readonly error: {
3173
+ readonly type: "object";
3174
+ readonly required: readonly ["httpStatus", "code"];
3175
+ readonly properties: {
3176
+ readonly httpStatus: {
3177
+ readonly enum: [400, 403];
3178
+ };
3179
+ readonly code: {
3180
+ readonly enum: ["INVALID_LINK", "ALREADY_ACTIVE_USER"];
3181
+ };
3182
+ readonly message: {
3183
+ readonly type: "string";
3184
+ };
3185
+ readonly details: {
3186
+ readonly type: "object";
3187
+ readonly additionalProperties: true;
3188
+ };
3189
+ };
3190
+ };
3191
+ }>> & {
3192
+ _tag: "Error";
3193
+ result: undefined;
3194
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3195
+ readonly httpStatus: {
3196
+ readonly enum: [400, 403];
3197
+ };
3198
+ readonly code: {
3199
+ readonly enum: ["INVALID_LINK", "ALREADY_ACTIVE_USER"];
3200
+ };
3201
+ readonly message: {
3202
+ readonly type: "string";
3203
+ };
3204
+ readonly details: {
3205
+ readonly type: "object";
3206
+ readonly additionalProperties: true;
3207
+ };
3208
+ }>> & {
3209
+ code: "ALREADY_ACTIVE_USER" | "INVALID_LINK";
3210
+ httpStatus: 400 | 403;
3211
+ message: string;
3212
+ details: any;
3213
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3214
+ readonly httpStatus: {
3215
+ readonly enum: [400, 403];
3216
+ };
3217
+ readonly code: {
3218
+ readonly enum: ["INVALID_LINK", "ALREADY_ACTIVE_USER"];
3219
+ };
3220
+ readonly message: {
3221
+ readonly type: "string";
3222
+ };
3223
+ readonly details: {
3224
+ readonly type: "object";
3225
+ readonly additionalProperties: true;
3226
+ };
3227
+ }>> & {
3228
+ code: "ALREADY_ACTIVE_USER" | "INVALID_LINK";
3229
+ httpStatus: 400 | 403;
3230
+ message: string;
3231
+ details: any;
3232
+ }, never>>;
3233
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3234
+ readonly _tag: {
3235
+ readonly const: "Result";
3236
+ };
3237
+ readonly error: {
3238
+ readonly const: undefined;
3239
+ };
3240
+ readonly result: {
3241
+ readonly type: "object";
3242
+ readonly properties: {
3243
+ readonly url: {
3244
+ readonly type: "string";
3245
+ };
3246
+ };
3247
+ };
3248
+ }>> & {
3249
+ _tag: "Result";
3250
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3251
+ readonly url: {
302
3252
  readonly type: "string";
303
- readonly inputType: "email";
304
- readonly minLength: 3;
305
3253
  };
306
- readonly password: {
307
- readonly type: "string";
308
- readonly inputType: "password";
309
- readonly hidden: true;
3254
+ }>> & {
3255
+ url: string;
3256
+ }, never>;
3257
+ error: undefined;
3258
+ }, never>)>;
3259
+ readonly getRedefinePasswordLink: (payload: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3260
+ readonly userId: {
3261
+ readonly type: "string";
3262
+ readonly format: "objectid";
3263
+ };
3264
+ readonly redirect: {
3265
+ readonly type: "string";
3266
+ };
3267
+ }>> & {
3268
+ userId: import("@aeriajs/core").ObjectId;
3269
+ redirect: string;
3270
+ }, never>, "userId"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3271
+ readonly userId: {
3272
+ readonly type: "string";
3273
+ readonly format: "objectid";
3274
+ };
3275
+ readonly redirect: {
3276
+ readonly type: "string";
3277
+ };
3278
+ }>> & {
3279
+ userId: import("@aeriajs/core").ObjectId;
3280
+ redirect: string;
3281
+ }, never>>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3282
+ readonly _tag: {
3283
+ readonly const: "Error";
3284
+ };
3285
+ readonly result: {
3286
+ readonly const: undefined;
3287
+ };
3288
+ readonly error: {
3289
+ readonly type: "object";
3290
+ readonly required: readonly ["httpStatus", "code"];
3291
+ readonly properties: {
3292
+ readonly httpStatus: {
3293
+ readonly enum: [403, 404, 400];
3294
+ };
3295
+ readonly code: {
3296
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3297
+ };
3298
+ readonly message: {
3299
+ readonly type: "string";
3300
+ };
3301
+ readonly details: {
3302
+ readonly type: "object";
3303
+ readonly additionalProperties: true;
3304
+ };
3305
+ };
3306
+ };
3307
+ }>> & {
3308
+ _tag: "Error";
3309
+ result: undefined;
3310
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3311
+ readonly httpStatus: {
3312
+ readonly enum: [403, 404, 400];
310
3313
  };
311
- readonly phone_number: {
3314
+ readonly code: {
3315
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3316
+ };
3317
+ readonly message: {
312
3318
  readonly type: "string";
313
- readonly mask: "(##) #####-####";
314
3319
  };
315
- readonly picture_file: {
316
- readonly $ref: "file";
317
- readonly accept: readonly ["image/*"];
3320
+ readonly details: {
3321
+ readonly type: "object";
3322
+ readonly additionalProperties: true;
318
3323
  };
319
- readonly picture: {
320
- readonly getter: (doc: object) => Promise<string> | undefined;
3324
+ }>> & {
3325
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3326
+ httpStatus: 400 | 403 | 404;
3327
+ message: string;
3328
+ details: any;
3329
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3330
+ readonly httpStatus: {
3331
+ readonly enum: [403, 404, 400];
321
3332
  };
322
- readonly self_registered: {
323
- readonly type: "boolean";
324
- readonly readOnly: true;
3333
+ readonly code: {
3334
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
325
3335
  };
326
- readonly updated_at: {
3336
+ readonly message: {
327
3337
  readonly type: "string";
328
- readonly format: "date-time";
329
3338
  };
330
- };
331
- readonly presets: readonly ["crud", "duplicate"];
332
- readonly layout: {
333
- readonly name: "grid";
334
- readonly options: {
335
- readonly title: "name";
336
- readonly badge: "roles";
337
- readonly picture: "picture_file";
338
- readonly information: "email";
339
- readonly active: "active";
340
- readonly translateBadge: true;
3339
+ readonly details: {
3340
+ readonly type: "object";
3341
+ readonly additionalProperties: true;
341
3342
  };
3343
+ }>> & {
3344
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3345
+ httpStatus: 400 | 403 | 404;
3346
+ message: string;
3347
+ details: any;
3348
+ }, never>>;
3349
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3350
+ readonly _tag: {
3351
+ readonly const: "Error";
342
3352
  };
343
- readonly individualActions: {
344
- readonly changePassword: {
345
- readonly label: "change_password";
346
- readonly icon: "key";
347
- readonly translate: true;
348
- readonly route: {
349
- readonly name: "/dashboard/user/changepass";
350
- readonly fetchItem: true;
351
- };
352
- };
353
- readonly copyRedefinePasswordLink: {
354
- readonly label: "copy_redefine_password_link";
355
- readonly icon: "link";
356
- readonly translate: true;
357
- };
358
- readonly copyActivationLink: {
359
- readonly label: "copy_activation_link";
360
- readonly icon: "link";
361
- readonly translate: true;
362
- };
3353
+ readonly result: {
3354
+ readonly const: undefined;
363
3355
  };
364
- readonly filters: readonly ["name", "roles", "email", "phone_number"];
365
- readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
366
- readonly tableMeta: readonly ["email"];
367
- readonly formLayout: {
368
- readonly fields: {
369
- readonly given_name: {
370
- readonly span: 3;
3356
+ readonly error: {
3357
+ readonly type: "object";
3358
+ readonly required: readonly ["httpStatus", "code"];
3359
+ readonly properties: {
3360
+ readonly httpStatus: {
3361
+ readonly enum: [403];
371
3362
  };
372
- readonly family_name: {
373
- readonly span: 3;
3363
+ readonly code: {
3364
+ readonly enum: ["USER_NOT_ACTIVE"];
374
3365
  };
375
- };
376
- };
377
- }>>>, context: Omit<Context, "token">) => Promise<import("@aeriajs/types").InsertReturnType<import("@aeriajs/types").SchemaWithId<{
378
- readonly $id: "user";
379
- readonly icon: "users";
380
- readonly required: readonly ["name", "roles", "email"];
381
- readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
382
- readonly indexes: readonly ["name"];
383
- readonly unique: readonly ["email"];
384
- readonly properties: {
385
- readonly name: {
386
- readonly type: "string";
387
- readonly minLength: 1;
388
- };
389
- readonly given_name: {
390
- readonly getter: (doc: object) => string | undefined;
391
- };
392
- readonly family_name: {
393
- readonly getter: (doc: object) => string | undefined;
394
- };
395
- readonly active: {
396
- readonly type: "boolean";
397
- };
398
- readonly roles: {
399
- readonly type: "array";
400
- readonly items: {
3366
+ readonly message: {
401
3367
  readonly type: "string";
402
3368
  };
403
- readonly uniqueItems: true;
404
- readonly minItems: 1;
3369
+ readonly details: {
3370
+ readonly type: "object";
3371
+ readonly additionalProperties: true;
3372
+ };
405
3373
  };
406
- readonly email: {
407
- readonly type: "string";
408
- readonly inputType: "email";
409
- readonly minLength: 3;
3374
+ };
3375
+ }>> & {
3376
+ _tag: "Error";
3377
+ result: undefined;
3378
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3379
+ readonly httpStatus: {
3380
+ readonly enum: [403];
410
3381
  };
411
- readonly password: {
412
- readonly type: "string";
413
- readonly inputType: "password";
414
- readonly hidden: true;
3382
+ readonly code: {
3383
+ readonly enum: ["USER_NOT_ACTIVE"];
415
3384
  };
416
- readonly phone_number: {
3385
+ readonly message: {
417
3386
  readonly type: "string";
418
- readonly mask: "(##) #####-####";
419
3387
  };
420
- readonly picture_file: {
421
- readonly $ref: "file";
422
- readonly accept: readonly ["image/*"];
3388
+ readonly details: {
3389
+ readonly type: "object";
3390
+ readonly additionalProperties: true;
423
3391
  };
424
- readonly picture: {
425
- readonly getter: (doc: object) => Promise<string> | undefined;
3392
+ }>> & {
3393
+ code: "USER_NOT_ACTIVE";
3394
+ httpStatus: 403;
3395
+ message: string;
3396
+ details: any;
3397
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3398
+ readonly httpStatus: {
3399
+ readonly enum: [403];
426
3400
  };
427
- readonly self_registered: {
428
- readonly type: "boolean";
429
- readonly readOnly: true;
3401
+ readonly code: {
3402
+ readonly enum: ["USER_NOT_ACTIVE"];
430
3403
  };
431
- readonly updated_at: {
3404
+ readonly message: {
432
3405
  readonly type: "string";
433
- readonly format: "date-time";
434
3406
  };
435
- };
436
- readonly presets: readonly ["crud", "duplicate"];
437
- readonly layout: {
438
- readonly name: "grid";
439
- readonly options: {
440
- readonly title: "name";
441
- readonly badge: "roles";
442
- readonly picture: "picture_file";
443
- readonly information: "email";
444
- readonly active: "active";
445
- readonly translateBadge: true;
3407
+ readonly details: {
3408
+ readonly type: "object";
3409
+ readonly additionalProperties: true;
446
3410
  };
3411
+ }>> & {
3412
+ code: "USER_NOT_ACTIVE";
3413
+ httpStatus: 403;
3414
+ message: string;
3415
+ details: any;
3416
+ }, never>>;
3417
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3418
+ readonly _tag: {
3419
+ readonly const: "Result";
3420
+ };
3421
+ readonly error: {
3422
+ readonly const: undefined;
447
3423
  };
448
- readonly individualActions: {
449
- readonly changePassword: {
450
- readonly label: "change_password";
451
- readonly icon: "key";
452
- readonly translate: true;
453
- readonly route: {
454
- readonly name: "/dashboard/user/changepass";
455
- readonly fetchItem: true;
3424
+ readonly result: {
3425
+ readonly type: "object";
3426
+ readonly properties: {
3427
+ readonly url: {
3428
+ readonly type: "string";
456
3429
  };
457
3430
  };
458
- readonly copyRedefinePasswordLink: {
459
- readonly label: "copy_redefine_password_link";
460
- readonly icon: "link";
461
- readonly translate: true;
462
- };
463
- readonly copyActivationLink: {
464
- readonly label: "copy_activation_link";
465
- readonly icon: "link";
466
- readonly translate: true;
3431
+ };
3432
+ }>> & {
3433
+ _tag: "Result";
3434
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3435
+ readonly url: {
3436
+ readonly type: "string";
467
3437
  };
3438
+ }>> & {
3439
+ url: string;
3440
+ }, never>;
3441
+ error: undefined;
3442
+ }, never>) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3443
+ readonly _tag: {
3444
+ readonly const: "Error";
468
3445
  };
469
- readonly filters: readonly ["name", "roles", "email", "phone_number"];
470
- readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
471
- readonly tableMeta: readonly ["email"];
472
- readonly formLayout: {
473
- readonly fields: {
474
- readonly given_name: {
475
- readonly span: 3;
3446
+ readonly result: {
3447
+ readonly const: undefined;
3448
+ };
3449
+ readonly error: {
3450
+ readonly type: "object";
3451
+ readonly required: readonly ["httpStatus", "code"];
3452
+ readonly properties: {
3453
+ readonly httpStatus: {
3454
+ readonly enum: [403, 404, 400];
476
3455
  };
477
- readonly family_name: {
478
- readonly span: 3;
3456
+ readonly code: {
3457
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3458
+ };
3459
+ readonly message: {
3460
+ readonly type: "string";
3461
+ };
3462
+ readonly details: {
3463
+ readonly type: "object";
3464
+ readonly additionalProperties: true;
479
3465
  };
480
3466
  };
481
3467
  };
482
- }>> | import("@aeriajs/types").Result.Error<{
483
- readonly code: "TARGET_IMMUTABLE";
484
- } & {
485
- httpStatus: 403;
486
- }>>;
487
- readonly authenticate: (payload: {
488
- email: string;
489
- password: string;
490
- } | {
491
- token?: import("@aeriajs/types").TokenRecipient;
492
- revalidate: true;
493
- }, context: Omit<Context, "token">) => Promise<import("@aeriajs/types").Result.Error<{
494
- readonly code: "AUTHORIZATION_ERROR";
495
- } & {
496
- httpStatus: 401;
497
- }> | {
498
- readonly _tag: "Result";
499
- readonly error: undefined;
500
- readonly result: {
501
- user: {
502
- _id: null;
503
- name: string;
504
- email: string;
505
- roles: string[];
506
- active: boolean;
3468
+ }>> & {
3469
+ _tag: "Error";
3470
+ result: undefined;
3471
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3472
+ readonly httpStatus: {
3473
+ readonly enum: [403, 404, 400];
507
3474
  };
508
- token: {
509
- type: string;
510
- content: string;
3475
+ readonly code: {
3476
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
511
3477
  };
512
- };
513
- } | {
514
- readonly _tag: "Result";
515
- readonly error: undefined;
516
- readonly result: import("../../authentication.js").SuccessfulAuthentication;
517
- } | import("@aeriajs/types").Result.Error<{
518
- readonly code: "INVALID_CREDENTIALS";
519
- } & {
520
- httpStatus: 401;
521
- }> | import("@aeriajs/types").Result.Error<{
522
- readonly code: "INACTIVE_USER";
523
- } & {
524
- httpStatus: 401;
525
- }>>;
526
- readonly activate: (payload: {
527
- password?: string;
528
- userId?: string;
529
- token?: string;
530
- }, context: Omit<Context, "token">) => Promise<import("@aeriajs/types").Result.Error<{
531
- readonly code: "INVALID_LINK";
532
- } & {
533
- httpStatus: 404;
534
- }> | import("@aeriajs/types").Result.Error<{
535
- readonly code: "USER_NOT_FOUND";
536
- } & {
537
- httpStatus: 404;
538
- }> | import("@aeriajs/types").Result.Error<{
539
- readonly code: "ALREADY_ACTIVE_USER";
540
- } & {
541
- httpStatus: 403;
542
- }> | import("@aeriajs/types").Result.Error<{
543
- readonly code: "INVALID_TOKEN";
544
- } & {
545
- httpStatus: 401;
546
- }> | import("@aeriajs/types").Result.Error<{
547
- readonly code: "MALFORMED_INPUT";
548
- } & {
549
- httpStatus: 422;
550
- }> | {
551
- readonly _tag: "Result";
552
- readonly error: undefined;
553
- readonly result: {
554
- readonly userId: import("@aeriajs/core").ObjectId;
555
- };
556
- }>;
557
- readonly createAccount: (payload: Partial<import("@aeriajs/types").PackReferences<import("@aeriajs/types").SchemaWithId<{
558
- readonly $id: "user";
559
- readonly icon: "users";
560
- readonly required: readonly ["name", "roles", "email"];
561
- readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
562
- readonly indexes: readonly ["name"];
563
- readonly unique: readonly ["email"];
564
- readonly properties: {
565
- readonly name: {
3478
+ readonly message: {
566
3479
  readonly type: "string";
567
- readonly minLength: 1;
568
3480
  };
569
- readonly given_name: {
570
- readonly getter: (doc: object) => string | undefined;
3481
+ readonly details: {
3482
+ readonly type: "object";
3483
+ readonly additionalProperties: true;
571
3484
  };
572
- readonly family_name: {
573
- readonly getter: (doc: object) => string | undefined;
3485
+ }>> & {
3486
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3487
+ httpStatus: 400 | 403 | 404;
3488
+ message: string;
3489
+ details: any;
3490
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3491
+ readonly httpStatus: {
3492
+ readonly enum: [403, 404, 400];
574
3493
  };
575
- readonly active: {
576
- readonly type: "boolean";
3494
+ readonly code: {
3495
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
577
3496
  };
578
- readonly roles: {
579
- readonly type: "array";
580
- readonly items: {
3497
+ readonly message: {
3498
+ readonly type: "string";
3499
+ };
3500
+ readonly details: {
3501
+ readonly type: "object";
3502
+ readonly additionalProperties: true;
3503
+ };
3504
+ }>> & {
3505
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3506
+ httpStatus: 400 | 403 | 404;
3507
+ message: string;
3508
+ details: any;
3509
+ }, never>>;
3510
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3511
+ readonly _tag: {
3512
+ readonly const: "Error";
3513
+ };
3514
+ readonly result: {
3515
+ readonly const: undefined;
3516
+ };
3517
+ readonly error: {
3518
+ readonly type: "object";
3519
+ readonly required: readonly ["httpStatus", "code"];
3520
+ readonly properties: {
3521
+ readonly httpStatus: {
3522
+ readonly enum: [403];
3523
+ };
3524
+ readonly code: {
3525
+ readonly enum: ["USER_NOT_ACTIVE"];
3526
+ };
3527
+ readonly message: {
581
3528
  readonly type: "string";
582
3529
  };
583
- readonly uniqueItems: true;
584
- readonly minItems: 1;
3530
+ readonly details: {
3531
+ readonly type: "object";
3532
+ readonly additionalProperties: true;
3533
+ };
585
3534
  };
586
- readonly email: {
587
- readonly type: "string";
588
- readonly inputType: "email";
589
- readonly minLength: 3;
3535
+ };
3536
+ }>> & {
3537
+ _tag: "Error";
3538
+ result: undefined;
3539
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3540
+ readonly httpStatus: {
3541
+ readonly enum: [403];
590
3542
  };
591
- readonly password: {
592
- readonly type: "string";
593
- readonly inputType: "password";
594
- readonly hidden: true;
3543
+ readonly code: {
3544
+ readonly enum: ["USER_NOT_ACTIVE"];
595
3545
  };
596
- readonly phone_number: {
3546
+ readonly message: {
597
3547
  readonly type: "string";
598
- readonly mask: "(##) #####-####";
599
3548
  };
600
- readonly picture_file: {
601
- readonly $ref: "file";
602
- readonly accept: readonly ["image/*"];
3549
+ readonly details: {
3550
+ readonly type: "object";
3551
+ readonly additionalProperties: true;
603
3552
  };
604
- readonly picture: {
605
- readonly getter: (doc: object) => Promise<string> | undefined;
3553
+ }>> & {
3554
+ code: "USER_NOT_ACTIVE";
3555
+ httpStatus: 403;
3556
+ message: string;
3557
+ details: any;
3558
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3559
+ readonly httpStatus: {
3560
+ readonly enum: [403];
606
3561
  };
607
- readonly self_registered: {
608
- readonly type: "boolean";
609
- readonly readOnly: true;
3562
+ readonly code: {
3563
+ readonly enum: ["USER_NOT_ACTIVE"];
610
3564
  };
611
- readonly updated_at: {
3565
+ readonly message: {
612
3566
  readonly type: "string";
613
- readonly format: "date-time";
614
3567
  };
615
- };
616
- readonly presets: readonly ["crud", "duplicate"];
617
- readonly layout: {
618
- readonly name: "grid";
619
- readonly options: {
620
- readonly title: "name";
621
- readonly badge: "roles";
622
- readonly picture: "picture_file";
623
- readonly information: "email";
624
- readonly active: "active";
625
- readonly translateBadge: true;
3568
+ readonly details: {
3569
+ readonly type: "object";
3570
+ readonly additionalProperties: true;
626
3571
  };
3572
+ }>> & {
3573
+ code: "USER_NOT_ACTIVE";
3574
+ httpStatus: 403;
3575
+ message: string;
3576
+ details: any;
3577
+ }, never>>;
3578
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3579
+ readonly _tag: {
3580
+ readonly const: "Result";
627
3581
  };
628
- readonly individualActions: {
629
- readonly changePassword: {
630
- readonly label: "change_password";
631
- readonly icon: "key";
632
- readonly translate: true;
633
- readonly route: {
634
- readonly name: "/dashboard/user/changepass";
635
- readonly fetchItem: true;
3582
+ readonly error: {
3583
+ readonly const: undefined;
3584
+ };
3585
+ readonly result: {
3586
+ readonly type: "object";
3587
+ readonly properties: {
3588
+ readonly url: {
3589
+ readonly type: "string";
636
3590
  };
637
3591
  };
638
- readonly copyRedefinePasswordLink: {
639
- readonly label: "copy_redefine_password_link";
640
- readonly icon: "link";
641
- readonly translate: true;
642
- };
643
- readonly copyActivationLink: {
644
- readonly label: "copy_activation_link";
645
- readonly icon: "link";
646
- readonly translate: true;
3592
+ };
3593
+ }>> & {
3594
+ _tag: "Result";
3595
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3596
+ readonly url: {
3597
+ readonly type: "string";
647
3598
  };
3599
+ }>> & {
3600
+ url: string;
3601
+ }, never>;
3602
+ error: undefined;
3603
+ }, never>)>;
3604
+ readonly redefinePassword: (payload: Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3605
+ readonly userId: {
3606
+ readonly type: "string";
3607
+ readonly format: "objectid";
648
3608
  };
649
- readonly filters: readonly ["name", "roles", "email", "phone_number"];
650
- readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
651
- readonly tableMeta: readonly ["email"];
652
- readonly formLayout: {
653
- readonly fields: {
654
- readonly given_name: {
655
- readonly span: 3;
3609
+ readonly password: {
3610
+ readonly type: "string";
3611
+ };
3612
+ readonly token: {
3613
+ readonly type: "string";
3614
+ };
3615
+ }>> & {
3616
+ password: string;
3617
+ token: string;
3618
+ userId: import("@aeriajs/core").ObjectId;
3619
+ }, never>>, context: Omit<Context, "token">) => ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3620
+ readonly _tag: {
3621
+ readonly const: "Error";
3622
+ };
3623
+ readonly result: {
3624
+ readonly const: undefined;
3625
+ };
3626
+ readonly error: {
3627
+ readonly type: "object";
3628
+ readonly required: readonly ["httpStatus", "code"];
3629
+ readonly properties: {
3630
+ readonly httpStatus: {
3631
+ readonly enum: [403, 404, 400];
656
3632
  };
657
- readonly family_name: {
658
- readonly span: 3;
3633
+ readonly code: {
3634
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3635
+ };
3636
+ readonly message: {
3637
+ readonly type: "string";
3638
+ };
3639
+ readonly details: {
3640
+ readonly type: "object";
3641
+ readonly additionalProperties: true;
659
3642
  };
660
3643
  };
661
3644
  };
662
- }>>> & Record<string, unknown>, context: Omit<Context, "token">) => Promise<import("@aeriajs/types").Result.Error<{
663
- readonly code: "SIGNUP_DISALLOWED";
664
- } & {
665
- httpStatus: 403;
666
- }> | import("@aeriajs/types").Result.Error<{
667
- readonly code: "MALFORMED_INPUT";
668
- readonly details: import("@aeriajs/types").PropertyValidationError | import("@aeriajs/types").ValidationError;
669
- } & {
670
- httpStatus: 422;
671
- }> | import("@aeriajs/types").Result.Error<{
672
- readonly code: "OWNERSHIP_ERROR";
673
- } & {
674
- httpStatus: 403;
675
- }> | import("@aeriajs/types").InsertReturnType<import("@aeriajs/types").SchemaWithId<{
676
- readonly $id: "user";
677
- readonly icon: "users";
678
- readonly required: readonly ["name", "roles", "email"];
679
- readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
680
- readonly indexes: readonly ["name"];
681
- readonly unique: readonly ["email"];
682
- readonly properties: {
683
- readonly name: {
3645
+ }>> & {
3646
+ _tag: "Error";
3647
+ result: undefined;
3648
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3649
+ readonly httpStatus: {
3650
+ readonly enum: [403, 404, 400];
3651
+ };
3652
+ readonly code: {
3653
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3654
+ };
3655
+ readonly message: {
684
3656
  readonly type: "string";
685
- readonly minLength: 1;
686
3657
  };
687
- readonly given_name: {
688
- readonly getter: (doc: object) => string | undefined;
3658
+ readonly details: {
3659
+ readonly type: "object";
3660
+ readonly additionalProperties: true;
3661
+ };
3662
+ }>> & {
3663
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3664
+ httpStatus: 400 | 403 | 404;
3665
+ message: string;
3666
+ details: any;
3667
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3668
+ readonly httpStatus: {
3669
+ readonly enum: [403, 404, 400];
689
3670
  };
690
- readonly family_name: {
691
- readonly getter: (doc: object) => string | undefined;
3671
+ readonly code: {
3672
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
692
3673
  };
693
- readonly active: {
694
- readonly type: "boolean";
3674
+ readonly message: {
3675
+ readonly type: "string";
695
3676
  };
696
- readonly roles: {
697
- readonly type: "array";
698
- readonly items: {
3677
+ readonly details: {
3678
+ readonly type: "object";
3679
+ readonly additionalProperties: true;
3680
+ };
3681
+ }>> & {
3682
+ code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
3683
+ httpStatus: 400 | 403 | 404;
3684
+ message: string;
3685
+ details: any;
3686
+ }, never>>;
3687
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3688
+ readonly _tag: {
3689
+ readonly const: "Error";
3690
+ };
3691
+ readonly result: {
3692
+ readonly const: undefined;
3693
+ };
3694
+ readonly error: {
3695
+ readonly type: "object";
3696
+ readonly required: readonly ["httpStatus", "code"];
3697
+ readonly properties: {
3698
+ readonly httpStatus: {
3699
+ readonly enum: [404, 403, 401, 422];
3700
+ };
3701
+ readonly code: {
3702
+ readonly enum: ["MALFORMED_INPUT", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND", "USER_NOT_ACTIVE"];
3703
+ };
3704
+ readonly message: {
699
3705
  readonly type: "string";
700
3706
  };
701
- readonly uniqueItems: true;
702
- readonly minItems: 1;
3707
+ readonly details: {
3708
+ readonly type: "object";
3709
+ readonly additionalProperties: true;
3710
+ };
703
3711
  };
704
- readonly email: {
705
- readonly type: "string";
706
- readonly inputType: "email";
707
- readonly minLength: 3;
3712
+ };
3713
+ }>> & {
3714
+ _tag: "Error";
3715
+ result: undefined;
3716
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3717
+ readonly httpStatus: {
3718
+ readonly enum: [404, 403, 401, 422];
708
3719
  };
709
- readonly password: {
710
- readonly type: "string";
711
- readonly inputType: "password";
712
- readonly hidden: true;
3720
+ readonly code: {
3721
+ readonly enum: ["MALFORMED_INPUT", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND", "USER_NOT_ACTIVE"];
713
3722
  };
714
- readonly phone_number: {
3723
+ readonly message: {
715
3724
  readonly type: "string";
716
- readonly mask: "(##) #####-####";
717
3725
  };
718
- readonly picture_file: {
719
- readonly $ref: "file";
720
- readonly accept: readonly ["image/*"];
3726
+ readonly details: {
3727
+ readonly type: "object";
3728
+ readonly additionalProperties: true;
721
3729
  };
722
- readonly picture: {
723
- readonly getter: (doc: object) => Promise<string> | undefined;
3730
+ }>> & {
3731
+ code: "MALFORMED_INPUT" | "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN" | "USER_NOT_ACTIVE";
3732
+ httpStatus: 401 | 403 | 404 | 422;
3733
+ message: string;
3734
+ details: any;
3735
+ }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3736
+ readonly httpStatus: {
3737
+ readonly enum: [404, 403, 401, 422];
724
3738
  };
725
- readonly self_registered: {
726
- readonly type: "boolean";
727
- readonly readOnly: true;
3739
+ readonly code: {
3740
+ readonly enum: ["MALFORMED_INPUT", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND", "USER_NOT_ACTIVE"];
728
3741
  };
729
- readonly updated_at: {
3742
+ readonly message: {
730
3743
  readonly type: "string";
731
- readonly format: "date-time";
732
3744
  };
733
- };
734
- readonly presets: readonly ["crud", "duplicate"];
735
- readonly layout: {
736
- readonly name: "grid";
737
- readonly options: {
738
- readonly title: "name";
739
- readonly badge: "roles";
740
- readonly picture: "picture_file";
741
- readonly information: "email";
742
- readonly active: "active";
743
- readonly translateBadge: true;
3745
+ readonly details: {
3746
+ readonly type: "object";
3747
+ readonly additionalProperties: true;
744
3748
  };
3749
+ }>> & {
3750
+ code: "MALFORMED_INPUT" | "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN" | "USER_NOT_ACTIVE";
3751
+ httpStatus: 401 | 403 | 404 | 422;
3752
+ message: string;
3753
+ details: any;
3754
+ }, never>>;
3755
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3756
+ readonly _tag: {
3757
+ readonly const: "Result";
745
3758
  };
746
- readonly individualActions: {
747
- readonly changePassword: {
748
- readonly label: "change_password";
749
- readonly icon: "key";
750
- readonly translate: true;
751
- readonly route: {
752
- readonly name: "/dashboard/user/changepass";
753
- readonly fetchItem: true;
754
- };
755
- };
756
- readonly copyRedefinePasswordLink: {
757
- readonly label: "copy_redefine_password_link";
758
- readonly icon: "link";
759
- readonly translate: true;
760
- };
761
- readonly copyActivationLink: {
762
- readonly label: "copy_activation_link";
763
- readonly icon: "link";
764
- readonly translate: true;
765
- };
3759
+ readonly error: {
3760
+ readonly const: undefined;
766
3761
  };
767
- readonly filters: readonly ["name", "roles", "email", "phone_number"];
768
- readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
769
- readonly tableMeta: readonly ["email"];
770
- readonly formLayout: {
771
- readonly fields: {
772
- readonly given_name: {
773
- readonly span: 3;
774
- };
775
- readonly family_name: {
776
- readonly span: 3;
3762
+ readonly result: {
3763
+ readonly type: "object";
3764
+ readonly properties: {
3765
+ readonly userId: {
3766
+ readonly type: "string";
3767
+ readonly format: "objectid";
777
3768
  };
778
3769
  };
779
3770
  };
780
- }>>>;
781
- readonly getInfo: (payload: {
782
- userId: string;
783
- token: string;
784
- }, context: Omit<Context, "token">) => Promise<import("@aeriajs/types").Result.Error<{
785
- readonly code: "INVALID_LINK";
786
- } & {
787
- httpStatus: 404;
788
- }> | import("@aeriajs/types").Result.Error<{
789
- readonly code: "USER_NOT_FOUND";
790
- } & {
791
- httpStatus: 404;
792
- }> | import("@aeriajs/types").Result.Error<{
793
- readonly code: "INVALID_TOKEN";
794
- } & {
795
- httpStatus: 401;
796
- }> | {
797
- readonly _tag: "Result";
798
- readonly error: undefined;
799
- readonly result: {
800
- readonly name: string;
801
- readonly email: string;
802
- readonly active: boolean | undefined;
3771
+ }>> & {
3772
+ _tag: "Result";
3773
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3774
+ readonly userId: {
3775
+ readonly type: "string";
3776
+ readonly format: "objectid";
3777
+ };
3778
+ }>> & {
3779
+ userId: import("@aeriajs/core").ObjectId;
3780
+ }, never>;
3781
+ error: undefined;
3782
+ }, never>) | Promise<({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3783
+ readonly _tag: {
3784
+ readonly const: "Error";
803
3785
  };
804
- }>;
805
- readonly getCurrentUser: (payload: undefined, context: Omit<Context, "token">) => Promise<{
806
- readonly _tag: "Result";
807
- readonly error: undefined;
808
3786
  readonly result: {
809
- _id: null;
810
- name: string;
811
- email: string;
812
- roles: string[];
813
- active: boolean;
3787
+ readonly const: undefined;
814
3788
  };
815
- } | {
816
- readonly _tag: "Result";
817
- readonly error: undefined;
818
- readonly result: import("@aeriajs/types").SchemaWithId<{
819
- readonly $id: "user";
820
- readonly icon: "users";
821
- readonly required: readonly ["name", "roles", "email"];
822
- readonly form: readonly ["name", "active", "roles", "email", "phone_number", "picture_file"];
823
- readonly indexes: readonly ["name"];
824
- readonly unique: readonly ["email"];
3789
+ readonly error: {
3790
+ readonly type: "object";
3791
+ readonly required: readonly ["httpStatus", "code"];
825
3792
  readonly properties: {
826
- readonly name: {
827
- readonly type: "string";
828
- readonly minLength: 1;
829
- };
830
- readonly given_name: {
831
- readonly getter: (doc: object) => string | undefined;
832
- };
833
- readonly family_name: {
834
- readonly getter: (doc: object) => string | undefined;
835
- };
836
- readonly active: {
837
- readonly type: "boolean";
838
- };
839
- readonly roles: {
840
- readonly type: "array";
841
- readonly items: {
842
- readonly type: "string";
843
- };
844
- readonly uniqueItems: true;
845
- readonly minItems: 1;
846
- };
847
- readonly email: {
848
- readonly type: "string";
849
- readonly inputType: "email";
850
- readonly minLength: 3;
851
- };
852
- readonly password: {
853
- readonly type: "string";
854
- readonly inputType: "password";
855
- readonly hidden: true;
856
- };
857
- readonly phone_number: {
858
- readonly type: "string";
859
- readonly mask: "(##) #####-####";
860
- };
861
- readonly picture_file: {
862
- readonly $ref: "file";
863
- readonly accept: readonly ["image/*"];
864
- };
865
- readonly picture: {
866
- readonly getter: (doc: object) => Promise<string> | undefined;
3793
+ readonly httpStatus: {
3794
+ readonly enum: [403, 404, 400];
867
3795
  };
868
- readonly self_registered: {
869
- readonly type: "boolean";
870
- readonly readOnly: true;
3796
+ readonly code: {
3797
+ readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
871
3798
  };
872
- readonly updated_at: {
3799
+ readonly message: {
873
3800
  readonly type: "string";
874
- readonly format: "date-time";
875
- };
876
- };
877
- readonly presets: readonly ["crud", "duplicate"];
878
- readonly layout: {
879
- readonly name: "grid";
880
- readonly options: {
881
- readonly title: "name";
882
- readonly badge: "roles";
883
- readonly picture: "picture_file";
884
- readonly information: "email";
885
- readonly active: "active";
886
- readonly translateBadge: true;
887
- };
888
- };
889
- readonly individualActions: {
890
- readonly changePassword: {
891
- readonly label: "change_password";
892
- readonly icon: "key";
893
- readonly translate: true;
894
- readonly route: {
895
- readonly name: "/dashboard/user/changepass";
896
- readonly fetchItem: true;
897
- };
898
- };
899
- readonly copyRedefinePasswordLink: {
900
- readonly label: "copy_redefine_password_link";
901
- readonly icon: "link";
902
- readonly translate: true;
903
- };
904
- readonly copyActivationLink: {
905
- readonly label: "copy_activation_link";
906
- readonly icon: "link";
907
- readonly translate: true;
908
3801
  };
909
- };
910
- readonly filters: readonly ["name", "roles", "email", "phone_number"];
911
- readonly table: readonly ["name", "roles", "picture_file", "active", "updated_at"];
912
- readonly tableMeta: readonly ["email"];
913
- readonly formLayout: {
914
- readonly fields: {
915
- readonly given_name: {
916
- readonly span: 3;
917
- };
918
- readonly family_name: {
919
- readonly span: 3;
920
- };
3802
+ readonly details: {
3803
+ readonly type: "object";
3804
+ readonly additionalProperties: true;
921
3805
  };
922
3806
  };
923
- }>;
924
- }>;
925
- readonly getActivationLink: (payload: {
926
- userId: import("@aeriajs/core").ObjectId | string;
927
- redirect?: string;
928
- }, context: Omit<Context, "token">) => Promise<{
929
- readonly _tag: "Error";
930
- readonly error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3807
+ };
3808
+ }>> & {
3809
+ _tag: "Error";
3810
+ result: undefined;
3811
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
931
3812
  readonly httpStatus: {
932
3813
  readonly enum: [403, 404, 400];
933
3814
  };
@@ -943,7 +3824,7 @@ export declare const user: Omit<Collection<never>, "functions" | "description" |
943
3824
  };
944
3825
  }>> & {
945
3826
  code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
946
- httpStatus: 403 | 400 | 404;
3827
+ httpStatus: 400 | 403 | 404;
947
3828
  message: string;
948
3829
  details: any;
949
3830
  }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
@@ -962,37 +3843,45 @@ export declare const user: Omit<Collection<never>, "functions" | "description" |
962
3843
  };
963
3844
  }>> & {
964
3845
  code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
965
- httpStatus: 403 | 400 | 404;
3846
+ httpStatus: 400 | 403 | 404;
966
3847
  message: string;
967
3848
  details: any;
968
3849
  }, never>>;
969
- readonly result: undefined;
970
- } | import("@aeriajs/types").Result.Error<{
971
- readonly code: "INVALID_LINK";
972
- } & {
973
- httpStatus: 400;
974
- }> | import("@aeriajs/types").Result.Error<{
975
- readonly code: "ALREADY_ACTIVE_USER";
976
- } & {
977
- httpStatus: 403;
978
- }> | {
979
- readonly _tag: "Result";
980
- readonly error: undefined;
3850
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3851
+ readonly _tag: {
3852
+ readonly const: "Error";
3853
+ };
981
3854
  readonly result: {
982
- readonly url: string;
3855
+ readonly const: undefined;
983
3856
  };
984
- }>;
985
- readonly getRedefinePasswordLink: (payload: {
986
- userId: import("@aeriajs/core").ObjectId | string;
987
- redirect?: string;
988
- }, context: Omit<Context, "token">) => Promise<{
989
- readonly _tag: "Error";
990
- readonly error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3857
+ readonly error: {
3858
+ readonly type: "object";
3859
+ readonly required: readonly ["httpStatus", "code"];
3860
+ readonly properties: {
3861
+ readonly httpStatus: {
3862
+ readonly enum: [404, 403, 401, 422];
3863
+ };
3864
+ readonly code: {
3865
+ readonly enum: ["MALFORMED_INPUT", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND", "USER_NOT_ACTIVE"];
3866
+ };
3867
+ readonly message: {
3868
+ readonly type: "string";
3869
+ };
3870
+ readonly details: {
3871
+ readonly type: "object";
3872
+ readonly additionalProperties: true;
3873
+ };
3874
+ };
3875
+ };
3876
+ }>> & {
3877
+ _tag: "Error";
3878
+ result: undefined;
3879
+ error: Pick<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
991
3880
  readonly httpStatus: {
992
- readonly enum: [403, 404, 400];
3881
+ readonly enum: [404, 403, 401, 422];
993
3882
  };
994
3883
  readonly code: {
995
- readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3884
+ readonly enum: ["MALFORMED_INPUT", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND", "USER_NOT_ACTIVE"];
996
3885
  };
997
3886
  readonly message: {
998
3887
  readonly type: "string";
@@ -1002,16 +3891,16 @@ export declare const user: Omit<Collection<never>, "functions" | "description" |
1002
3891
  readonly additionalProperties: true;
1003
3892
  };
1004
3893
  }>> & {
1005
- code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
1006
- httpStatus: 403 | 400 | 404;
3894
+ code: "MALFORMED_INPUT" | "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN" | "USER_NOT_ACTIVE";
3895
+ httpStatus: 401 | 403 | 404 | 422;
1007
3896
  message: string;
1008
3897
  details: any;
1009
3898
  }, never>, "code" | "httpStatus"> & Partial<{} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
1010
3899
  readonly httpStatus: {
1011
- readonly enum: [403, 404, 400];
3900
+ readonly enum: [404, 403, 401, 422];
1012
3901
  };
1013
3902
  readonly code: {
1014
- readonly enum: ["RESOURCE_NOT_FOUND", "OWNERSHIP_ERROR", "INSECURE_OPERATOR", "MALFORMED_INPUT"];
3903
+ readonly enum: ["MALFORMED_INPUT", "INVALID_LINK", "INVALID_TOKEN", "USER_NOT_FOUND", "USER_NOT_ACTIVE"];
1015
3904
  };
1016
3905
  readonly message: {
1017
3906
  readonly type: "string";
@@ -1021,54 +3910,39 @@ export declare const user: Omit<Collection<never>, "functions" | "description" |
1021
3910
  readonly additionalProperties: true;
1022
3911
  };
1023
3912
  }>> & {
1024
- code: "RESOURCE_NOT_FOUND" | "INSECURE_OPERATOR" | "OWNERSHIP_ERROR" | "MALFORMED_INPUT";
1025
- httpStatus: 403 | 400 | 404;
3913
+ code: "MALFORMED_INPUT" | "USER_NOT_FOUND" | "INVALID_LINK" | "INVALID_TOKEN" | "USER_NOT_ACTIVE";
3914
+ httpStatus: 401 | 403 | 404 | 422;
1026
3915
  message: string;
1027
3916
  details: any;
1028
3917
  }, never>>;
1029
- readonly result: undefined;
1030
- } | import("@aeriajs/types").Result.Error<{
1031
- readonly code: "USER_NOT_ACTIVE";
1032
- } & {
1033
- httpStatus: 403;
1034
- }> | {
1035
- readonly _tag: "Result";
1036
- readonly error: undefined;
1037
- readonly result: {
1038
- readonly url: string;
3918
+ }, never>) | ({} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3919
+ readonly _tag: {
3920
+ readonly const: "Result";
3921
+ };
3922
+ readonly error: {
3923
+ readonly const: undefined;
1039
3924
  };
1040
- }>;
1041
- readonly redefinePassword: (payload: {
1042
- password?: string;
1043
- userId?: string;
1044
- token?: string;
1045
- }, context: Omit<Context, "token">) => Promise<import("@aeriajs/types").Result.Error<{
1046
- readonly code: "INVALID_LINK";
1047
- } & {
1048
- httpStatus: 404;
1049
- }> | import("@aeriajs/types").Result.Error<{
1050
- readonly code: "USER_NOT_FOUND";
1051
- } & {
1052
- httpStatus: 404;
1053
- }> | import("@aeriajs/types").Result.Error<{
1054
- readonly code: "USER_NOT_ACTIVE";
1055
- } & {
1056
- httpStatus: 403;
1057
- }> | import("@aeriajs/types").Result.Error<{
1058
- readonly code: "INVALID_TOKEN";
1059
- } & {
1060
- httpStatus: 401;
1061
- }> | import("@aeriajs/types").Result.Error<{
1062
- readonly code: "MALFORMED_INPUT";
1063
- } & {
1064
- httpStatus: 422;
1065
- }> | {
1066
- readonly _tag: "Result";
1067
- readonly error: undefined;
1068
3925
  readonly result: {
1069
- readonly userId: import("@aeriajs/core").ObjectId;
3926
+ readonly type: "object";
3927
+ readonly properties: {
3928
+ readonly userId: {
3929
+ readonly type: "string";
3930
+ readonly format: "objectid";
3931
+ };
3932
+ };
1070
3933
  };
1071
- }>;
3934
+ }>> & {
3935
+ _tag: "Result";
3936
+ result: {} & Omit<Readonly<import("@aeriajs/types").FilterReadonlyProperties<{
3937
+ readonly userId: {
3938
+ readonly type: "string";
3939
+ readonly format: "objectid";
3940
+ };
3941
+ }>> & {
3942
+ userId: import("@aeriajs/core").ObjectId;
3943
+ }, never>;
3944
+ error: undefined;
3945
+ }, never>)>;
1072
3946
  };
1073
3947
  contracts: {
1074
3948
  readonly get?: import("@aeriajs/types").Contract | undefined;