@awarevue/api-types 1.0.1

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 (132) hide show
  1. package/dist/access-control/access-rule.d.ts +243 -0
  2. package/dist/access-control/access-rule.js +49 -0
  3. package/dist/access-control/credential.d.ts +14 -0
  4. package/dist/access-control/credential.js +12 -0
  5. package/dist/access-control/index.d.ts +7 -0
  6. package/dist/access-control/index.js +23 -0
  7. package/dist/access-control/person-presence.d.ts +249 -0
  8. package/dist/access-control/person-presence.js +61 -0
  9. package/dist/access-control/person.d.ts +209 -0
  10. package/dist/access-control/person.js +49 -0
  11. package/dist/access-control/schedule.d.ts +500 -0
  12. package/dist/access-control/schedule.js +65 -0
  13. package/dist/access-control/sync.d.ts +3 -0
  14. package/dist/access-control/sync.js +2 -0
  15. package/dist/access-control/zone.d.ts +65 -0
  16. package/dist/access-control/zone.js +28 -0
  17. package/dist/agent-communication/index.d.ts +1 -0
  18. package/dist/agent-communication/index.js +17 -0
  19. package/dist/agent-communication/protocol.d.ts +1692 -0
  20. package/dist/agent-communication/protocol.js +341 -0
  21. package/dist/api/alarm.d.ts +23 -0
  22. package/dist/api/alarm.js +2 -0
  23. package/dist/api/auth.d.ts +31 -0
  24. package/dist/api/auth.js +19 -0
  25. package/dist/api/index.d.ts +4 -0
  26. package/dist/api/index.js +20 -0
  27. package/dist/api/media.d.ts +187 -0
  28. package/dist/api/media.js +59 -0
  29. package/dist/api/query.d.ts +33 -0
  30. package/dist/api/query.js +41 -0
  31. package/dist/app.d.ts +12 -0
  32. package/dist/app.js +8 -0
  33. package/dist/automation.d.ts +334 -0
  34. package/dist/automation.js +49 -0
  35. package/dist/aware-config.d.ts +3 -0
  36. package/dist/aware-config.js +2 -0
  37. package/dist/custom-field.d.ts +52 -0
  38. package/dist/custom-field.js +19 -0
  39. package/dist/device/alarm.d.ts +265 -0
  40. package/dist/device/alarm.js +66 -0
  41. package/dist/device/any-device.d.ts +2376 -0
  42. package/dist/device/any-device.js +185 -0
  43. package/dist/device/camera-lift.d.ts +17 -0
  44. package/dist/device/camera-lift.js +7 -0
  45. package/dist/device/camera.d.ts +829 -0
  46. package/dist/device/camera.js +120 -0
  47. package/dist/device/device-gateway.d.ts +3 -0
  48. package/dist/device/device-gateway.js +4 -0
  49. package/dist/device/door.d.ts +217 -0
  50. package/dist/device/door.js +57 -0
  51. package/dist/device/index.d.ts +15 -0
  52. package/dist/device/index.js +31 -0
  53. package/dist/device/intercom-operator.d.ts +13 -0
  54. package/dist/device/intercom-operator.js +5 -0
  55. package/dist/device/intercom-terminal.d.ts +244 -0
  56. package/dist/device/intercom-terminal.js +48 -0
  57. package/dist/device/io-board.d.ts +55 -0
  58. package/dist/device/io-board.js +19 -0
  59. package/dist/device/motion-sensor.d.ts +8 -0
  60. package/dist/device/motion-sensor.js +8 -0
  61. package/dist/device/panic-button.d.ts +26 -0
  62. package/dist/device/panic-button.js +14 -0
  63. package/dist/device/pbx.d.ts +20 -0
  64. package/dist/device/pbx.js +11 -0
  65. package/dist/device/presence-tracker.d.ts +127 -0
  66. package/dist/device/presence-tracker.js +27 -0
  67. package/dist/device/reader/commands.d.ts +1 -0
  68. package/dist/device/reader/commands.js +2 -0
  69. package/dist/device/reader/events.d.ts +37 -0
  70. package/dist/device/reader/events.js +13 -0
  71. package/dist/device/reader/index.d.ts +3 -0
  72. package/dist/device/reader/index.js +19 -0
  73. package/dist/device/reader/specs.d.ts +2 -0
  74. package/dist/device/reader/specs.js +4 -0
  75. package/dist/device/server.d.ts +73 -0
  76. package/dist/device/server.js +33 -0
  77. package/dist/device-command.d.ts +23 -0
  78. package/dist/device-command.js +110 -0
  79. package/dist/device-event.d.ts +682 -0
  80. package/dist/device-event.js +87 -0
  81. package/dist/device-factory.d.ts +112 -0
  82. package/dist/device-factory.js +25 -0
  83. package/dist/device-group.d.ts +74 -0
  84. package/dist/device-group.js +31 -0
  85. package/dist/device-import.d.ts +1412 -0
  86. package/dist/device-import.js +33 -0
  87. package/dist/device-relation.d.ts +30 -0
  88. package/dist/device-relation.js +68 -0
  89. package/dist/device-state.d.ts +10 -0
  90. package/dist/device-state.js +2 -0
  91. package/dist/error.d.ts +13 -0
  92. package/dist/error.js +10 -0
  93. package/dist/file.d.ts +3 -0
  94. package/dist/file.js +2 -0
  95. package/dist/index.d.ts +28 -0
  96. package/dist/index.js +44 -0
  97. package/dist/layout.d.ts +188 -0
  98. package/dist/layout.js +40 -0
  99. package/dist/macros.d.ts +160 -0
  100. package/dist/macros.js +26 -0
  101. package/dist/messages/device-communication.d.ts +121 -0
  102. package/dist/messages/device-communication.js +63 -0
  103. package/dist/messages/index.d.ts +5 -0
  104. package/dist/messages/index.js +21 -0
  105. package/dist/messages/progress.d.ts +118 -0
  106. package/dist/messages/progress.js +51 -0
  107. package/dist/messages/provider-api/index.d.ts +1 -0
  108. package/dist/messages/provider-api/index.js +17 -0
  109. package/dist/messages/provider-api/sync-protocol.d.ts +83 -0
  110. package/dist/messages/provider-api/sync-protocol.js +2 -0
  111. package/dist/messages/web-rtc-signaling.d.ts +265 -0
  112. package/dist/messages/web-rtc-signaling.js +82 -0
  113. package/dist/messages/web-socket.d.ts +7 -0
  114. package/dist/messages/web-socket.js +5 -0
  115. package/dist/milestone.d.ts +5 -0
  116. package/dist/milestone.js +2 -0
  117. package/dist/module-config.d.ts +27 -0
  118. package/dist/module-config.js +2 -0
  119. package/dist/orchid.d.ts +19 -0
  120. package/dist/orchid.js +2 -0
  121. package/dist/package.json +40 -0
  122. package/dist/permissions.d.ts +6 -0
  123. package/dist/permissions.js +168 -0
  124. package/dist/template.d.ts +50 -0
  125. package/dist/template.js +21 -0
  126. package/dist/user.d.ts +184 -0
  127. package/dist/user.js +56 -0
  128. package/dist/view.d.ts +775 -0
  129. package/dist/view.js +74 -0
  130. package/dist/webrtc-playback.d.ts +20 -0
  131. package/dist/webrtc-playback.js +14 -0
  132. package/package.json +40 -0
@@ -0,0 +1,50 @@
1
+ import { z } from 'zod';
2
+ export declare const TemplateTypeEnum: z.ZodEnum<["id", "report"]>;
3
+ export declare const sNewTemplateRequest: z.ZodObject<{
4
+ name: z.ZodString;
5
+ type: z.ZodEnum<["id", "report"]>;
6
+ templateHtmlId: z.ZodString;
7
+ }, "strip", z.ZodTypeAny, {
8
+ name: string;
9
+ type: "id" | "report";
10
+ templateHtmlId: string;
11
+ }, {
12
+ name: string;
13
+ type: "id" | "report";
14
+ templateHtmlId: string;
15
+ }>;
16
+ export declare const sUpdateTemplateRequest: z.ZodObject<{
17
+ name: z.ZodOptional<z.ZodString>;
18
+ type: z.ZodOptional<z.ZodEnum<["id", "report"]>>;
19
+ templateHtmlId: z.ZodOptional<z.ZodString>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ name?: string | undefined;
22
+ type?: "id" | "report" | undefined;
23
+ templateHtmlId?: string | undefined;
24
+ }, {
25
+ name?: string | undefined;
26
+ type?: "id" | "report" | undefined;
27
+ templateHtmlId?: string | undefined;
28
+ }>;
29
+ export declare const sTemplateDto: z.ZodObject<{
30
+ id: z.ZodString;
31
+ name: z.ZodString;
32
+ type: z.ZodEnum<["id", "report"]>;
33
+ templateHtmlId: z.ZodString;
34
+ }, "strip", z.ZodTypeAny, {
35
+ name: string;
36
+ type: "id" | "report";
37
+ id: string;
38
+ templateHtmlId: string;
39
+ }, {
40
+ name: string;
41
+ type: "id" | "report";
42
+ id: string;
43
+ templateHtmlId: string;
44
+ }>;
45
+ export type NewTemplateRequest = z.infer<typeof sNewTemplateRequest>;
46
+ export type UpdateTemplateRequest = z.infer<typeof sUpdateTemplateRequest>;
47
+ export type TemplateDto = z.infer<typeof sTemplateDto>;
48
+ export type TemplateRequestQueryParams = {
49
+ type: TemplateDto['type'];
50
+ };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sTemplateDto = exports.sUpdateTemplateRequest = exports.sNewTemplateRequest = exports.TemplateTypeEnum = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.TemplateTypeEnum = zod_1.z.enum(['id', 'report']);
6
+ exports.sNewTemplateRequest = zod_1.z.object({
7
+ name: zod_1.z.string().min(1).max(64),
8
+ type: exports.TemplateTypeEnum,
9
+ templateHtmlId: zod_1.z.string().uuid(),
10
+ });
11
+ exports.sUpdateTemplateRequest = zod_1.z.object({
12
+ name: zod_1.z.string().min(1).max(64).optional(),
13
+ type: exports.TemplateTypeEnum.optional(),
14
+ templateHtmlId: zod_1.z.string().uuid().optional(),
15
+ });
16
+ exports.sTemplateDto = zod_1.z.object({
17
+ id: zod_1.z.string().uuid(),
18
+ name: zod_1.z.string(),
19
+ type: exports.TemplateTypeEnum,
20
+ templateHtmlId: zod_1.z.string().uuid(),
21
+ });
package/dist/user.d.ts ADDED
@@ -0,0 +1,184 @@
1
+ import { z } from 'zod';
2
+ export declare const sNewUserRequest: z.ZodObject<{
3
+ firstName: z.ZodString;
4
+ lastName: z.ZodString;
5
+ email: z.ZodNullable<z.ZodString>;
6
+ username: z.ZodString;
7
+ password: z.ZodString;
8
+ roles: z.ZodArray<z.ZodString, "many">;
9
+ isActive: z.ZodBoolean;
10
+ }, "strip", z.ZodTypeAny, {
11
+ username: string;
12
+ email: string | null;
13
+ firstName: string;
14
+ lastName: string;
15
+ password: string;
16
+ roles: string[];
17
+ isActive: boolean;
18
+ }, {
19
+ username: string;
20
+ email: string | null;
21
+ firstName: string;
22
+ lastName: string;
23
+ password: string;
24
+ roles: string[];
25
+ isActive: boolean;
26
+ }>;
27
+ export declare const sUpdateUserRequest: z.ZodObject<{
28
+ id: z.ZodString;
29
+ firstName: z.ZodOptional<z.ZodString>;
30
+ lastName: z.ZodOptional<z.ZodString>;
31
+ email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
32
+ username: z.ZodOptional<z.ZodString>;
33
+ password: z.ZodOptional<z.ZodString>;
34
+ isActive: z.ZodOptional<z.ZodBoolean>;
35
+ roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ id: string;
38
+ username?: string | undefined;
39
+ email?: string | null | undefined;
40
+ firstName?: string | undefined;
41
+ lastName?: string | undefined;
42
+ password?: string | undefined;
43
+ roles?: string[] | undefined;
44
+ isActive?: boolean | undefined;
45
+ }, {
46
+ id: string;
47
+ username?: string | undefined;
48
+ email?: string | null | undefined;
49
+ firstName?: string | undefined;
50
+ lastName?: string | undefined;
51
+ password?: string | undefined;
52
+ roles?: string[] | undefined;
53
+ isActive?: boolean | undefined;
54
+ }>;
55
+ export declare const sChangeSelfPasswordRequest: z.ZodObject<{
56
+ oldPassword: z.ZodString;
57
+ newPassword: z.ZodString;
58
+ }, "strip", z.ZodTypeAny, {
59
+ oldPassword: string;
60
+ newPassword: string;
61
+ }, {
62
+ oldPassword: string;
63
+ newPassword: string;
64
+ }>;
65
+ export declare const sUserDto: z.ZodObject<{
66
+ id: z.ZodString;
67
+ firstName: z.ZodString;
68
+ lastName: z.ZodString;
69
+ email: z.ZodNullable<z.ZodString>;
70
+ username: z.ZodString;
71
+ isActive: z.ZodBoolean;
72
+ isRoot: z.ZodBoolean;
73
+ roles: z.ZodArray<z.ZodString, "many">;
74
+ }, "strip", z.ZodTypeAny, {
75
+ id: string;
76
+ username: string;
77
+ email: string | null;
78
+ firstName: string;
79
+ lastName: string;
80
+ roles: string[];
81
+ isActive: boolean;
82
+ isRoot: boolean;
83
+ }, {
84
+ id: string;
85
+ username: string;
86
+ email: string | null;
87
+ firstName: string;
88
+ lastName: string;
89
+ roles: string[];
90
+ isActive: boolean;
91
+ isRoot: boolean;
92
+ }>;
93
+ export declare const sMeResponse: z.ZodObject<{
94
+ id: z.ZodString;
95
+ firstName: z.ZodString;
96
+ lastName: z.ZodString;
97
+ email: z.ZodNullable<z.ZodString>;
98
+ username: z.ZodString;
99
+ isActive: z.ZodBoolean;
100
+ isRoot: z.ZodBoolean;
101
+ roles: z.ZodArray<z.ZodString, "many">;
102
+ } & {
103
+ permissions: z.ZodArray<z.ZodUnion<[z.ZodLiteral<"layout:read">, z.ZodLiteral<"layout:update">, z.ZodLiteral<"layout:delete">, z.ZodLiteral<"layout:create">, z.ZodLiteral<"camera:live">, z.ZodLiteral<"camera:playback">, z.ZodLiteral<"camera:playback-export">, z.ZodLiteral<"camera:ptz">, z.ZodLiteral<"camera:privacy-mode">, z.ZodLiteral<"camera:assign">, z.ZodLiteral<"preset:read">, z.ZodLiteral<"preset:update">, z.ZodLiteral<"preset:delete">, z.ZodLiteral<"preset:create">, z.ZodLiteral<"door:release">, z.ZodLiteral<"door:lock">, z.ZodLiteral<"camera-lift:activate">, z.ZodLiteral<"io-board:activate">, z.ZodLiteral<"public-view:read">, z.ZodLiteral<"public-view:update">, z.ZodLiteral<"public-view:delete">, z.ZodLiteral<"public-view:create">, z.ZodLiteral<"private-view:read">, z.ZodLiteral<"private-view:update">, z.ZodLiteral<"private-view:delete">, z.ZodLiteral<"private-view:create">, z.ZodLiteral<"person:read">, z.ZodLiteral<"person:update">, z.ZodLiteral<"person:delete">, z.ZodLiteral<"person:create">, z.ZodLiteral<"person:assign">, z.ZodLiteral<"person:print">, z.ZodLiteral<"door-group:read">, z.ZodLiteral<"door-group:update">, z.ZodLiteral<"door-group:delete">, z.ZodLiteral<"door-group:create">, z.ZodLiteral<"access-rule:read">, z.ZodLiteral<"access-rule:update">, z.ZodLiteral<"access-rule:delete">, z.ZodLiteral<"access-rule:create">, z.ZodLiteral<"schedule:read">, z.ZodLiteral<"schedule:update">, z.ZodLiteral<"schedule:delete">, z.ZodLiteral<"schedule:create">, z.ZodLiteral<"presence:read">, z.ZodLiteral<"presence:update">, z.ZodLiteral<"presence:update-reader">, z.ZodLiteral<"factory:read">, z.ZodLiteral<"factory:update">, z.ZodLiteral<"factory:delete">, z.ZodLiteral<"factory:create">, z.ZodLiteral<"event:read">, z.ZodLiteral<"event:purge">, z.ZodLiteral<"alarm:read">, z.ZodLiteral<"alarm:acknowlede">, z.ZodLiteral<"alarm:arm">, z.ZodLiteral<"alarm:trigger">, z.ZodLiteral<"user:read">, z.ZodLiteral<"user:change-password">, z.ZodLiteral<"user:change-username">, z.ZodLiteral<"user:change-name">, z.ZodLiteral<"user:change-email">, z.ZodLiteral<"user:activate">, z.ZodLiteral<"user:delete">, z.ZodLiteral<"user:change-roles">, z.ZodLiteral<"user:create">, z.ZodLiteral<"role:read">, z.ZodLiteral<"role:create">, z.ZodLiteral<"role:delete">, z.ZodLiteral<"role:update">, z.ZodLiteral<"module:read">, z.ZodLiteral<"module:update">, z.ZodLiteral<"module:enable">, z.ZodLiteral<"device:discover">, z.ZodLiteral<"device:import">, z.ZodLiteral<"device:override-specs">, z.ZodLiteral<"automation:read">, z.ZodLiteral<"automation:update">, z.ZodLiteral<"automation:delete">, z.ZodLiteral<"automation:create">, z.ZodLiteral<"device-group:read">, z.ZodLiteral<"device-group:update">, z.ZodLiteral<"device-group:delete">, z.ZodLiteral<"device-group:create">, z.ZodLiteral<"macro:read">, z.ZodLiteral<"macro:update">, z.ZodLiteral<"macro:delete">, z.ZodLiteral<"macro:create">, z.ZodLiteral<"macro:run">, z.ZodLiteral<"template:read">, z.ZodLiteral<"template:update">, z.ZodLiteral<"template:delete">, z.ZodLiteral<"template:create">, z.ZodLiteral<"custom-field:read">, z.ZodLiteral<"custom-field:update">, z.ZodLiteral<"custom-field:delete">, z.ZodLiteral<"custom-field:create">, z.ZodLiteral<"media:read">, z.ZodLiteral<"about:read">, z.ZodLiteral<"intercom:read">, ...(z.ZodLiteral<"device:camera"> | z.ZodLiteral<"device:door"> | z.ZodLiteral<"device:motion-sensor"> | z.ZodLiteral<"device:panic-button"> | z.ZodLiteral<"device:intercom-terminal">)[]]>, "many">;
104
+ }, "strip", z.ZodTypeAny, {
105
+ id: string;
106
+ username: string;
107
+ email: string | null;
108
+ firstName: string;
109
+ lastName: string;
110
+ permissions: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[];
111
+ roles: string[];
112
+ isActive: boolean;
113
+ isRoot: boolean;
114
+ }, {
115
+ id: string;
116
+ username: string;
117
+ email: string | null;
118
+ firstName: string;
119
+ lastName: string;
120
+ permissions: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[];
121
+ roles: string[];
122
+ isActive: boolean;
123
+ isRoot: boolean;
124
+ }>;
125
+ export declare const sRoleDto: z.ZodObject<{
126
+ id: z.ZodString;
127
+ displayName: z.ZodString;
128
+ systemName: z.ZodEffects<z.ZodString, string, string>;
129
+ description: z.ZodString;
130
+ permissions: z.ZodArray<z.ZodUnion<[z.ZodLiteral<"layout:read">, z.ZodLiteral<"layout:update">, z.ZodLiteral<"layout:delete">, z.ZodLiteral<"layout:create">, z.ZodLiteral<"camera:live">, z.ZodLiteral<"camera:playback">, z.ZodLiteral<"camera:playback-export">, z.ZodLiteral<"camera:ptz">, z.ZodLiteral<"camera:privacy-mode">, z.ZodLiteral<"camera:assign">, z.ZodLiteral<"preset:read">, z.ZodLiteral<"preset:update">, z.ZodLiteral<"preset:delete">, z.ZodLiteral<"preset:create">, z.ZodLiteral<"door:release">, z.ZodLiteral<"door:lock">, z.ZodLiteral<"camera-lift:activate">, z.ZodLiteral<"io-board:activate">, z.ZodLiteral<"public-view:read">, z.ZodLiteral<"public-view:update">, z.ZodLiteral<"public-view:delete">, z.ZodLiteral<"public-view:create">, z.ZodLiteral<"private-view:read">, z.ZodLiteral<"private-view:update">, z.ZodLiteral<"private-view:delete">, z.ZodLiteral<"private-view:create">, z.ZodLiteral<"person:read">, z.ZodLiteral<"person:update">, z.ZodLiteral<"person:delete">, z.ZodLiteral<"person:create">, z.ZodLiteral<"person:assign">, z.ZodLiteral<"person:print">, z.ZodLiteral<"door-group:read">, z.ZodLiteral<"door-group:update">, z.ZodLiteral<"door-group:delete">, z.ZodLiteral<"door-group:create">, z.ZodLiteral<"access-rule:read">, z.ZodLiteral<"access-rule:update">, z.ZodLiteral<"access-rule:delete">, z.ZodLiteral<"access-rule:create">, z.ZodLiteral<"schedule:read">, z.ZodLiteral<"schedule:update">, z.ZodLiteral<"schedule:delete">, z.ZodLiteral<"schedule:create">, z.ZodLiteral<"presence:read">, z.ZodLiteral<"presence:update">, z.ZodLiteral<"presence:update-reader">, z.ZodLiteral<"factory:read">, z.ZodLiteral<"factory:update">, z.ZodLiteral<"factory:delete">, z.ZodLiteral<"factory:create">, z.ZodLiteral<"event:read">, z.ZodLiteral<"event:purge">, z.ZodLiteral<"alarm:read">, z.ZodLiteral<"alarm:acknowlede">, z.ZodLiteral<"alarm:arm">, z.ZodLiteral<"alarm:trigger">, z.ZodLiteral<"user:read">, z.ZodLiteral<"user:change-password">, z.ZodLiteral<"user:change-username">, z.ZodLiteral<"user:change-name">, z.ZodLiteral<"user:change-email">, z.ZodLiteral<"user:activate">, z.ZodLiteral<"user:delete">, z.ZodLiteral<"user:change-roles">, z.ZodLiteral<"user:create">, z.ZodLiteral<"role:read">, z.ZodLiteral<"role:create">, z.ZodLiteral<"role:delete">, z.ZodLiteral<"role:update">, z.ZodLiteral<"module:read">, z.ZodLiteral<"module:update">, z.ZodLiteral<"module:enable">, z.ZodLiteral<"device:discover">, z.ZodLiteral<"device:import">, z.ZodLiteral<"device:override-specs">, z.ZodLiteral<"automation:read">, z.ZodLiteral<"automation:update">, z.ZodLiteral<"automation:delete">, z.ZodLiteral<"automation:create">, z.ZodLiteral<"device-group:read">, z.ZodLiteral<"device-group:update">, z.ZodLiteral<"device-group:delete">, z.ZodLiteral<"device-group:create">, z.ZodLiteral<"macro:read">, z.ZodLiteral<"macro:update">, z.ZodLiteral<"macro:delete">, z.ZodLiteral<"macro:create">, z.ZodLiteral<"macro:run">, z.ZodLiteral<"template:read">, z.ZodLiteral<"template:update">, z.ZodLiteral<"template:delete">, z.ZodLiteral<"template:create">, z.ZodLiteral<"custom-field:read">, z.ZodLiteral<"custom-field:update">, z.ZodLiteral<"custom-field:delete">, z.ZodLiteral<"custom-field:create">, z.ZodLiteral<"media:read">, z.ZodLiteral<"about:read">, z.ZodLiteral<"intercom:read">, ...(z.ZodLiteral<"device:camera"> | z.ZodLiteral<"device:door"> | z.ZodLiteral<"device:motion-sensor"> | z.ZodLiteral<"device:panic-button"> | z.ZodLiteral<"device:intercom-terminal">)[]]>, "many">;
131
+ }, "strip", z.ZodTypeAny, {
132
+ id: string;
133
+ description: string;
134
+ displayName: string;
135
+ permissions: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[];
136
+ systemName: string;
137
+ }, {
138
+ id: string;
139
+ description: string;
140
+ displayName: string;
141
+ permissions: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[];
142
+ systemName: string;
143
+ }>;
144
+ export declare const sAddRoleRequest: z.ZodObject<Omit<{
145
+ id: z.ZodString;
146
+ displayName: z.ZodString;
147
+ systemName: z.ZodEffects<z.ZodString, string, string>;
148
+ description: z.ZodString;
149
+ permissions: z.ZodArray<z.ZodUnion<[z.ZodLiteral<"layout:read">, z.ZodLiteral<"layout:update">, z.ZodLiteral<"layout:delete">, z.ZodLiteral<"layout:create">, z.ZodLiteral<"camera:live">, z.ZodLiteral<"camera:playback">, z.ZodLiteral<"camera:playback-export">, z.ZodLiteral<"camera:ptz">, z.ZodLiteral<"camera:privacy-mode">, z.ZodLiteral<"camera:assign">, z.ZodLiteral<"preset:read">, z.ZodLiteral<"preset:update">, z.ZodLiteral<"preset:delete">, z.ZodLiteral<"preset:create">, z.ZodLiteral<"door:release">, z.ZodLiteral<"door:lock">, z.ZodLiteral<"camera-lift:activate">, z.ZodLiteral<"io-board:activate">, z.ZodLiteral<"public-view:read">, z.ZodLiteral<"public-view:update">, z.ZodLiteral<"public-view:delete">, z.ZodLiteral<"public-view:create">, z.ZodLiteral<"private-view:read">, z.ZodLiteral<"private-view:update">, z.ZodLiteral<"private-view:delete">, z.ZodLiteral<"private-view:create">, z.ZodLiteral<"person:read">, z.ZodLiteral<"person:update">, z.ZodLiteral<"person:delete">, z.ZodLiteral<"person:create">, z.ZodLiteral<"person:assign">, z.ZodLiteral<"person:print">, z.ZodLiteral<"door-group:read">, z.ZodLiteral<"door-group:update">, z.ZodLiteral<"door-group:delete">, z.ZodLiteral<"door-group:create">, z.ZodLiteral<"access-rule:read">, z.ZodLiteral<"access-rule:update">, z.ZodLiteral<"access-rule:delete">, z.ZodLiteral<"access-rule:create">, z.ZodLiteral<"schedule:read">, z.ZodLiteral<"schedule:update">, z.ZodLiteral<"schedule:delete">, z.ZodLiteral<"schedule:create">, z.ZodLiteral<"presence:read">, z.ZodLiteral<"presence:update">, z.ZodLiteral<"presence:update-reader">, z.ZodLiteral<"factory:read">, z.ZodLiteral<"factory:update">, z.ZodLiteral<"factory:delete">, z.ZodLiteral<"factory:create">, z.ZodLiteral<"event:read">, z.ZodLiteral<"event:purge">, z.ZodLiteral<"alarm:read">, z.ZodLiteral<"alarm:acknowlede">, z.ZodLiteral<"alarm:arm">, z.ZodLiteral<"alarm:trigger">, z.ZodLiteral<"user:read">, z.ZodLiteral<"user:change-password">, z.ZodLiteral<"user:change-username">, z.ZodLiteral<"user:change-name">, z.ZodLiteral<"user:change-email">, z.ZodLiteral<"user:activate">, z.ZodLiteral<"user:delete">, z.ZodLiteral<"user:change-roles">, z.ZodLiteral<"user:create">, z.ZodLiteral<"role:read">, z.ZodLiteral<"role:create">, z.ZodLiteral<"role:delete">, z.ZodLiteral<"role:update">, z.ZodLiteral<"module:read">, z.ZodLiteral<"module:update">, z.ZodLiteral<"module:enable">, z.ZodLiteral<"device:discover">, z.ZodLiteral<"device:import">, z.ZodLiteral<"device:override-specs">, z.ZodLiteral<"automation:read">, z.ZodLiteral<"automation:update">, z.ZodLiteral<"automation:delete">, z.ZodLiteral<"automation:create">, z.ZodLiteral<"device-group:read">, z.ZodLiteral<"device-group:update">, z.ZodLiteral<"device-group:delete">, z.ZodLiteral<"device-group:create">, z.ZodLiteral<"macro:read">, z.ZodLiteral<"macro:update">, z.ZodLiteral<"macro:delete">, z.ZodLiteral<"macro:create">, z.ZodLiteral<"macro:run">, z.ZodLiteral<"template:read">, z.ZodLiteral<"template:update">, z.ZodLiteral<"template:delete">, z.ZodLiteral<"template:create">, z.ZodLiteral<"custom-field:read">, z.ZodLiteral<"custom-field:update">, z.ZodLiteral<"custom-field:delete">, z.ZodLiteral<"custom-field:create">, z.ZodLiteral<"media:read">, z.ZodLiteral<"about:read">, z.ZodLiteral<"intercom:read">, ...(z.ZodLiteral<"device:camera"> | z.ZodLiteral<"device:door"> | z.ZodLiteral<"device:motion-sensor"> | z.ZodLiteral<"device:panic-button"> | z.ZodLiteral<"device:intercom-terminal">)[]]>, "many">;
150
+ }, "id">, "strip", z.ZodTypeAny, {
151
+ description: string;
152
+ displayName: string;
153
+ permissions: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[];
154
+ systemName: string;
155
+ }, {
156
+ description: string;
157
+ displayName: string;
158
+ permissions: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[];
159
+ systemName: string;
160
+ }>;
161
+ export declare const sUpdateRoleRequest: z.ZodObject<{
162
+ description: z.ZodOptional<z.ZodString>;
163
+ displayName: z.ZodOptional<z.ZodString>;
164
+ permissions: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodLiteral<"layout:read">, z.ZodLiteral<"layout:update">, z.ZodLiteral<"layout:delete">, z.ZodLiteral<"layout:create">, z.ZodLiteral<"camera:live">, z.ZodLiteral<"camera:playback">, z.ZodLiteral<"camera:playback-export">, z.ZodLiteral<"camera:ptz">, z.ZodLiteral<"camera:privacy-mode">, z.ZodLiteral<"camera:assign">, z.ZodLiteral<"preset:read">, z.ZodLiteral<"preset:update">, z.ZodLiteral<"preset:delete">, z.ZodLiteral<"preset:create">, z.ZodLiteral<"door:release">, z.ZodLiteral<"door:lock">, z.ZodLiteral<"camera-lift:activate">, z.ZodLiteral<"io-board:activate">, z.ZodLiteral<"public-view:read">, z.ZodLiteral<"public-view:update">, z.ZodLiteral<"public-view:delete">, z.ZodLiteral<"public-view:create">, z.ZodLiteral<"private-view:read">, z.ZodLiteral<"private-view:update">, z.ZodLiteral<"private-view:delete">, z.ZodLiteral<"private-view:create">, z.ZodLiteral<"person:read">, z.ZodLiteral<"person:update">, z.ZodLiteral<"person:delete">, z.ZodLiteral<"person:create">, z.ZodLiteral<"person:assign">, z.ZodLiteral<"person:print">, z.ZodLiteral<"door-group:read">, z.ZodLiteral<"door-group:update">, z.ZodLiteral<"door-group:delete">, z.ZodLiteral<"door-group:create">, z.ZodLiteral<"access-rule:read">, z.ZodLiteral<"access-rule:update">, z.ZodLiteral<"access-rule:delete">, z.ZodLiteral<"access-rule:create">, z.ZodLiteral<"schedule:read">, z.ZodLiteral<"schedule:update">, z.ZodLiteral<"schedule:delete">, z.ZodLiteral<"schedule:create">, z.ZodLiteral<"presence:read">, z.ZodLiteral<"presence:update">, z.ZodLiteral<"presence:update-reader">, z.ZodLiteral<"factory:read">, z.ZodLiteral<"factory:update">, z.ZodLiteral<"factory:delete">, z.ZodLiteral<"factory:create">, z.ZodLiteral<"event:read">, z.ZodLiteral<"event:purge">, z.ZodLiteral<"alarm:read">, z.ZodLiteral<"alarm:acknowlede">, z.ZodLiteral<"alarm:arm">, z.ZodLiteral<"alarm:trigger">, z.ZodLiteral<"user:read">, z.ZodLiteral<"user:change-password">, z.ZodLiteral<"user:change-username">, z.ZodLiteral<"user:change-name">, z.ZodLiteral<"user:change-email">, z.ZodLiteral<"user:activate">, z.ZodLiteral<"user:delete">, z.ZodLiteral<"user:change-roles">, z.ZodLiteral<"user:create">, z.ZodLiteral<"role:read">, z.ZodLiteral<"role:create">, z.ZodLiteral<"role:delete">, z.ZodLiteral<"role:update">, z.ZodLiteral<"module:read">, z.ZodLiteral<"module:update">, z.ZodLiteral<"module:enable">, z.ZodLiteral<"device:discover">, z.ZodLiteral<"device:import">, z.ZodLiteral<"device:override-specs">, z.ZodLiteral<"automation:read">, z.ZodLiteral<"automation:update">, z.ZodLiteral<"automation:delete">, z.ZodLiteral<"automation:create">, z.ZodLiteral<"device-group:read">, z.ZodLiteral<"device-group:update">, z.ZodLiteral<"device-group:delete">, z.ZodLiteral<"device-group:create">, z.ZodLiteral<"macro:read">, z.ZodLiteral<"macro:update">, z.ZodLiteral<"macro:delete">, z.ZodLiteral<"macro:create">, z.ZodLiteral<"macro:run">, z.ZodLiteral<"template:read">, z.ZodLiteral<"template:update">, z.ZodLiteral<"template:delete">, z.ZodLiteral<"template:create">, z.ZodLiteral<"custom-field:read">, z.ZodLiteral<"custom-field:update">, z.ZodLiteral<"custom-field:delete">, z.ZodLiteral<"custom-field:create">, z.ZodLiteral<"media:read">, z.ZodLiteral<"about:read">, z.ZodLiteral<"intercom:read">, ...(z.ZodLiteral<"device:camera"> | z.ZodLiteral<"device:door"> | z.ZodLiteral<"device:motion-sensor"> | z.ZodLiteral<"device:panic-button"> | z.ZodLiteral<"device:intercom-terminal">)[]]>, "many">>;
165
+ systemName: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
166
+ }, "strip", z.ZodTypeAny, {
167
+ description?: string | undefined;
168
+ displayName?: string | undefined;
169
+ permissions?: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[] | undefined;
170
+ systemName?: string | undefined;
171
+ }, {
172
+ description?: string | undefined;
173
+ displayName?: string | undefined;
174
+ permissions?: ("device:camera" | "device:door" | "device:motion-sensor" | "device:panic-button" | "device:intercom-terminal" | "layout:read" | "layout:update" | "layout:delete" | "layout:create" | "camera:live" | "camera:playback" | "camera:playback-export" | "camera:ptz" | "camera:privacy-mode" | "camera:assign" | "preset:read" | "preset:update" | "preset:delete" | "preset:create" | "door:release" | "door:lock" | "camera-lift:activate" | "io-board:activate" | "public-view:read" | "public-view:update" | "public-view:delete" | "public-view:create" | "private-view:read" | "private-view:update" | "private-view:delete" | "private-view:create" | "person:read" | "person:update" | "person:delete" | "person:create" | "person:assign" | "person:print" | "door-group:read" | "door-group:update" | "door-group:delete" | "door-group:create" | "access-rule:read" | "access-rule:update" | "access-rule:delete" | "access-rule:create" | "schedule:read" | "schedule:update" | "schedule:delete" | "schedule:create" | "presence:read" | "presence:update" | "presence:update-reader" | "factory:read" | "factory:update" | "factory:delete" | "factory:create" | "event:read" | "event:purge" | "alarm:read" | "alarm:acknowlede" | "alarm:arm" | "alarm:trigger" | "user:read" | "user:change-password" | "user:change-username" | "user:change-name" | "user:change-email" | "user:activate" | "user:delete" | "user:change-roles" | "user:create" | "role:read" | "role:create" | "role:delete" | "role:update" | "module:read" | "module:update" | "module:enable" | "device:discover" | "device:import" | "device:override-specs" | "automation:read" | "automation:update" | "automation:delete" | "automation:create" | "device-group:read" | "device-group:update" | "device-group:delete" | "device-group:create" | "macro:read" | "macro:update" | "macro:delete" | "macro:create" | "macro:run" | "template:read" | "template:update" | "template:delete" | "template:create" | "custom-field:read" | "custom-field:update" | "custom-field:delete" | "custom-field:create" | "media:read" | "about:read" | "intercom:read")[] | undefined;
175
+ systemName?: string | undefined;
176
+ }>;
177
+ export type NewUserRequest = z.infer<typeof sNewUserRequest>;
178
+ export type UpdateUserRequest = z.infer<typeof sUpdateUserRequest>;
179
+ export type ChangeSelfPasswordRequest = z.infer<typeof sChangeSelfPasswordRequest>;
180
+ export type UserDto = z.infer<typeof sUserDto>;
181
+ export type MeResponse = z.infer<typeof sMeResponse>;
182
+ export type RoleDto = z.infer<typeof sRoleDto>;
183
+ export type AddRoleRequest = z.infer<typeof sAddRoleRequest>;
184
+ export type UpdateRoleRequest = z.infer<typeof sUpdateRoleRequest>;
package/dist/user.js ADDED
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sUpdateRoleRequest = exports.sAddRoleRequest = exports.sRoleDto = exports.sMeResponse = exports.sUserDto = exports.sChangeSelfPasswordRequest = exports.sUpdateUserRequest = exports.sNewUserRequest = void 0;
4
+ const zod_1 = require("zod");
5
+ const permissions_1 = require("./permissions");
6
+ exports.sNewUserRequest = zod_1.z.object({
7
+ firstName: zod_1.z.string().min(1).max(64).nonempty(),
8
+ lastName: zod_1.z.string().min(1).max(64).nonempty(),
9
+ email: zod_1.z.string().email().nullable(),
10
+ username: zod_1.z.string().min(1).max(64).nonempty(),
11
+ password: zod_1.z.string().min(8).max(64).nonempty(),
12
+ roles: zod_1.z.array(zod_1.z.string()).min(1),
13
+ isActive: zod_1.z.boolean(),
14
+ });
15
+ exports.sUpdateUserRequest = zod_1.z.object({
16
+ id: zod_1.z.string(),
17
+ firstName: zod_1.z.string().min(1).max(64).optional(),
18
+ lastName: zod_1.z.string().min(1).max(64).optional(),
19
+ email: zod_1.z.string().email().nullable().optional(),
20
+ username: zod_1.z.string().min(3).max(64).optional(),
21
+ password: zod_1.z.string().min(8).max(64).optional(),
22
+ isActive: zod_1.z.boolean().optional(),
23
+ roles: zod_1.z.array(zod_1.z.string()).min(1).optional(),
24
+ });
25
+ exports.sChangeSelfPasswordRequest = zod_1.z.object({
26
+ oldPassword: zod_1.z.string().min(1).max(64).nonempty(),
27
+ newPassword: zod_1.z.string().min(8).max(64).nonempty(),
28
+ });
29
+ exports.sUserDto = zod_1.z.object({
30
+ id: zod_1.z.string(),
31
+ firstName: zod_1.z.string(),
32
+ lastName: zod_1.z.string(),
33
+ email: zod_1.z.string().nullable(),
34
+ username: zod_1.z.string(),
35
+ isActive: zod_1.z.boolean(),
36
+ isRoot: zod_1.z.boolean(),
37
+ roles: zod_1.z.array(zod_1.z.string()),
38
+ });
39
+ exports.sMeResponse = exports.sUserDto.merge(zod_1.z.object({
40
+ permissions: zod_1.z.array(permissions_1.sPermissionId),
41
+ }));
42
+ exports.sRoleDto = zod_1.z.object({
43
+ id: zod_1.z.string().uuid(),
44
+ displayName: zod_1.z.string().nonempty().max(100),
45
+ systemName: zod_1.z
46
+ .string()
47
+ .nonempty()
48
+ .max(64)
49
+ .refine((value) => !/\s/.test(value), {
50
+ message: 'System name must not contain spaces',
51
+ }),
52
+ description: zod_1.z.string().nonempty(),
53
+ permissions: zod_1.z.array(permissions_1.sPermissionId),
54
+ });
55
+ exports.sAddRoleRequest = exports.sRoleDto.omit({ id: true });
56
+ exports.sUpdateRoleRequest = exports.sAddRoleRequest.partial();