@fivenet-app/gen 0.9.3-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 (123) hide show
  1. package/README.md +1 -0
  2. package/google/protobuf/any.ts +322 -0
  3. package/google/protobuf/descriptor.ts +3475 -0
  4. package/google/protobuf/duration.ts +231 -0
  5. package/google/protobuf/timestamp.ts +290 -0
  6. package/package.json +15 -0
  7. package/perms.ts +178 -0
  8. package/resources/accounts/accounts.ts +195 -0
  9. package/resources/accounts/oauth2.ts +230 -0
  10. package/resources/calendar/access.ts +362 -0
  11. package/resources/calendar/calendar.ts +955 -0
  12. package/resources/centrum/access.ts +380 -0
  13. package/resources/centrum/dispatches.ts +854 -0
  14. package/resources/centrum/general.ts +231 -0
  15. package/resources/centrum/settings.ts +303 -0
  16. package/resources/centrum/units.ts +620 -0
  17. package/resources/common/access/dummy.ts +309 -0
  18. package/resources/common/content/content.ts +252 -0
  19. package/resources/common/cron/cron.ts +536 -0
  20. package/resources/common/database/database.ts +306 -0
  21. package/resources/common/error.ts +79 -0
  22. package/resources/common/grpcws/grpcws.ts +615 -0
  23. package/resources/common/i18n.ts +102 -0
  24. package/resources/common/uuid.ts +68 -0
  25. package/resources/documents/access.ts +388 -0
  26. package/resources/documents/activity.ts +803 -0
  27. package/resources/documents/category.ts +132 -0
  28. package/resources/documents/comment.ts +161 -0
  29. package/resources/documents/documents.ts +1124 -0
  30. package/resources/documents/requests.ts +196 -0
  31. package/resources/documents/templates.ts +949 -0
  32. package/resources/documents/workflow.ts +349 -0
  33. package/resources/filestore/file.ts +204 -0
  34. package/resources/internet/ads.ts +257 -0
  35. package/resources/internet/domain.ts +136 -0
  36. package/resources/internet/internet.ts +344 -0
  37. package/resources/internet/page.ts +236 -0
  38. package/resources/internet/search.ts +104 -0
  39. package/resources/jobs/activity.ts +600 -0
  40. package/resources/jobs/colleagues.ts +346 -0
  41. package/resources/jobs/conduct.ts +220 -0
  42. package/resources/jobs/labels.ts +240 -0
  43. package/resources/jobs/timeclock.ts +372 -0
  44. package/resources/laws/laws.ts +293 -0
  45. package/resources/livemap/livemap.ts +728 -0
  46. package/resources/livemap/tracker.ts +81 -0
  47. package/resources/mailer/access.ts +485 -0
  48. package/resources/mailer/email.ts +222 -0
  49. package/resources/mailer/events.ts +196 -0
  50. package/resources/mailer/message.ts +285 -0
  51. package/resources/mailer/settings.ts +95 -0
  52. package/resources/mailer/template.ts +164 -0
  53. package/resources/mailer/thread.ts +422 -0
  54. package/resources/mailer/user.ts +93 -0
  55. package/resources/notifications/events.ts +287 -0
  56. package/resources/notifications/notifications.ts +444 -0
  57. package/resources/permissions/permissions.ts +829 -0
  58. package/resources/qualifications/access.ts +275 -0
  59. package/resources/qualifications/exam.ts +1421 -0
  60. package/resources/qualifications/qualifications.ts +1289 -0
  61. package/resources/rector/audit.ts +226 -0
  62. package/resources/rector/config.ts +922 -0
  63. package/resources/stats/stats.ts +67 -0
  64. package/resources/sync/activity.ts +356 -0
  65. package/resources/sync/data.ts +455 -0
  66. package/resources/timestamp/timestamp.ts +78 -0
  67. package/resources/users/activity.ts +211 -0
  68. package/resources/users/job_props.ts +992 -0
  69. package/resources/users/jobs.ts +171 -0
  70. package/resources/users/labels.ts +161 -0
  71. package/resources/users/props.ts +207 -0
  72. package/resources/users/users.ts +570 -0
  73. package/resources/vehicles/vehicles.ts +114 -0
  74. package/resources/wiki/access.ts +362 -0
  75. package/resources/wiki/activity.ts +591 -0
  76. package/resources/wiki/page.ts +548 -0
  77. package/services/auth/auth.client.ts +171 -0
  78. package/services/auth/auth.ts +1331 -0
  79. package/services/calendar/calendar.client.ts +262 -0
  80. package/services/calendar/calendar.ts +1733 -0
  81. package/services/centrum/centrum.client.ts +365 -0
  82. package/services/centrum/centrum.ts +2619 -0
  83. package/services/citizenstore/citizenstore.client.ts +126 -0
  84. package/services/citizenstore/citizenstore.ts +847 -0
  85. package/services/completor/completor.client.ts +109 -0
  86. package/services/completor/completor.ts +616 -0
  87. package/services/dmv/vehicles.client.ts +41 -0
  88. package/services/dmv/vehicles.ts +191 -0
  89. package/services/docstore/docstore.client.ts +653 -0
  90. package/services/docstore/docstore.ts +4571 -0
  91. package/services/internet/ads.client.ts +41 -0
  92. package/services/internet/ads.ts +145 -0
  93. package/services/internet/internet.client.ts +58 -0
  94. package/services/internet/internet.ts +257 -0
  95. package/services/jobs/conduct.client.ts +92 -0
  96. package/services/jobs/conduct.ts +541 -0
  97. package/services/jobs/jobs.client.ts +194 -0
  98. package/services/jobs/jobs.ts +1301 -0
  99. package/services/jobs/timeclock.client.ts +75 -0
  100. package/services/jobs/timeclock.ts +808 -0
  101. package/services/livemapper/livemap.client.ts +76 -0
  102. package/services/livemapper/livemap.ts +552 -0
  103. package/services/mailer/mailer.client.ts +381 -0
  104. package/services/mailer/mailer.ts +2590 -0
  105. package/services/notificator/notificator.client.ts +76 -0
  106. package/services/notificator/notificator.ts +510 -0
  107. package/services/qualifications/qualifications.client.ts +279 -0
  108. package/services/qualifications/qualifications.ts +2142 -0
  109. package/services/rector/config.client.ts +58 -0
  110. package/services/rector/config.ts +216 -0
  111. package/services/rector/filestore.client.ts +75 -0
  112. package/services/rector/filestore.ts +378 -0
  113. package/services/rector/laws.client.ts +92 -0
  114. package/services/rector/laws.ts +416 -0
  115. package/services/rector/rector.client.ts +211 -0
  116. package/services/rector/rector.ts +1540 -0
  117. package/services/stats/stats.client.ts +37 -0
  118. package/services/stats/stats.ts +128 -0
  119. package/services/sync/sync.client.ts +110 -0
  120. package/services/sync/sync.ts +831 -0
  121. package/services/wiki/wiki.client.ts +126 -0
  122. package/services/wiki/wiki.ts +749 -0
  123. package/svcs.ts +307 -0
@@ -0,0 +1,992 @@
1
+ // @generated by protobuf-ts 2.9.4 with parameter optimize_speed,long_type_number,force_server_none
2
+ // @generated from protobuf file "resources/users/job_props.proto" (package "resources.users", syntax proto3)
3
+ // @ts-nocheck
4
+ import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
5
+ import type { IBinaryWriter } from "@protobuf-ts/runtime";
6
+ import { WireType } from "@protobuf-ts/runtime";
7
+ import type { BinaryReadOptions } from "@protobuf-ts/runtime";
8
+ import type { IBinaryReader } from "@protobuf-ts/runtime";
9
+ import { UnknownFieldHandler } from "@protobuf-ts/runtime";
10
+ import type { PartialMessage } from "@protobuf-ts/runtime";
11
+ import { reflectionMergePartial } from "@protobuf-ts/runtime";
12
+ import { MessageType } from "@protobuf-ts/runtime";
13
+ import { File } from "../filestore/file";
14
+ import { Timestamp } from "../timestamp/timestamp";
15
+ /**
16
+ * @generated from protobuf message resources.users.JobProps
17
+ */
18
+ export interface JobProps {
19
+ /**
20
+ * @generated from protobuf field: string job = 1;
21
+ */
22
+ job: string;
23
+ /**
24
+ * @generated from protobuf field: optional string job_label = 2;
25
+ */
26
+ jobLabel?: string;
27
+ /**
28
+ * @generated from protobuf field: string theme = 3;
29
+ */
30
+ theme: string;
31
+ /**
32
+ * @generated from protobuf field: string livemap_marker_color = 4;
33
+ */
34
+ livemapMarkerColor: string;
35
+ /**
36
+ * @generated from protobuf field: resources.users.QuickButtons quick_buttons = 5;
37
+ */
38
+ quickButtons?: QuickButtons;
39
+ /**
40
+ * @generated from protobuf field: optional string radio_frequency = 6;
41
+ */
42
+ radioFrequency?: string;
43
+ /**
44
+ * @generated from protobuf field: optional string discord_guild_id = 7;
45
+ */
46
+ discordGuildId?: string;
47
+ /**
48
+ * @generated from protobuf field: optional resources.timestamp.Timestamp discord_last_sync = 8;
49
+ */
50
+ discordLastSync?: Timestamp;
51
+ /**
52
+ * @generated from protobuf field: resources.users.DiscordSyncSettings discord_sync_settings = 9;
53
+ */
54
+ discordSyncSettings?: DiscordSyncSettings;
55
+ /**
56
+ * @generated from protobuf field: optional resources.users.DiscordSyncChanges discord_sync_changes = 10;
57
+ */
58
+ discordSyncChanges?: DiscordSyncChanges;
59
+ /**
60
+ * @generated from protobuf field: optional string motd = 11;
61
+ */
62
+ motd?: string;
63
+ /**
64
+ * @generated from protobuf field: optional resources.filestore.File logo_url = 12;
65
+ */
66
+ logoUrl?: File;
67
+ /**
68
+ * @generated from protobuf field: resources.users.JobSettings settings = 13;
69
+ */
70
+ settings?: JobSettings;
71
+ }
72
+ /**
73
+ * @generated from protobuf message resources.users.QuickButtons
74
+ */
75
+ export interface QuickButtons {
76
+ /**
77
+ * @generated from protobuf field: bool penalty_calculator = 1;
78
+ */
79
+ penaltyCalculator: boolean;
80
+ /**
81
+ * @generated from protobuf field: bool body_checkup = 2;
82
+ */
83
+ bodyCheckup: boolean;
84
+ /**
85
+ * @generated from protobuf field: bool math_calculator = 3;
86
+ */
87
+ mathCalculator: boolean;
88
+ }
89
+ /**
90
+ * @generated from protobuf message resources.users.DiscordSyncSettings
91
+ */
92
+ export interface DiscordSyncSettings {
93
+ /**
94
+ * @generated from protobuf field: bool dry_run = 1;
95
+ */
96
+ dryRun: boolean;
97
+ /**
98
+ * @generated from protobuf field: bool user_info_sync = 2;
99
+ */
100
+ userInfoSync: boolean;
101
+ /**
102
+ * @generated from protobuf field: resources.users.UserInfoSyncSettings user_info_sync_settings = 3;
103
+ */
104
+ userInfoSyncSettings?: UserInfoSyncSettings;
105
+ /**
106
+ * @generated from protobuf field: bool status_log = 4;
107
+ */
108
+ statusLog: boolean;
109
+ /**
110
+ * @generated from protobuf field: resources.users.StatusLogSettings status_log_settings = 5;
111
+ */
112
+ statusLogSettings?: StatusLogSettings;
113
+ /**
114
+ * @generated from protobuf field: bool jobs_absence = 6;
115
+ */
116
+ jobsAbsence: boolean;
117
+ /**
118
+ * @generated from protobuf field: resources.users.JobsAbsenceSettings jobs_absence_settings = 7;
119
+ */
120
+ jobsAbsenceSettings?: JobsAbsenceSettings;
121
+ /**
122
+ * @generated from protobuf field: resources.users.GroupSyncSettings group_sync_settings = 8;
123
+ */
124
+ groupSyncSettings?: GroupSyncSettings;
125
+ /**
126
+ * @generated from protobuf field: string qualifications_role_format = 9;
127
+ */
128
+ qualificationsRoleFormat: string;
129
+ }
130
+ /**
131
+ * @generated from protobuf message resources.users.DiscordSyncChanges
132
+ */
133
+ export interface DiscordSyncChanges {
134
+ /**
135
+ * @generated from protobuf field: repeated resources.users.DiscordSyncChange changes = 1;
136
+ */
137
+ changes: DiscordSyncChange[];
138
+ }
139
+ /**
140
+ * @generated from protobuf message resources.users.DiscordSyncChange
141
+ */
142
+ export interface DiscordSyncChange {
143
+ /**
144
+ * @generated from protobuf field: resources.timestamp.Timestamp time = 1;
145
+ */
146
+ time?: Timestamp;
147
+ /**
148
+ * @generated from protobuf field: string plan = 2;
149
+ */
150
+ plan: string;
151
+ }
152
+ /**
153
+ * @generated from protobuf message resources.users.UserInfoSyncSettings
154
+ */
155
+ export interface UserInfoSyncSettings {
156
+ /**
157
+ * @generated from protobuf field: bool employee_role_enabled = 1;
158
+ */
159
+ employeeRoleEnabled: boolean;
160
+ /**
161
+ * @generated from protobuf field: string employee_role_format = 2;
162
+ */
163
+ employeeRoleFormat: string;
164
+ /**
165
+ * @generated from protobuf field: string grade_role_format = 3;
166
+ */
167
+ gradeRoleFormat: string;
168
+ /**
169
+ * @generated from protobuf field: bool unemployed_enabled = 4;
170
+ */
171
+ unemployedEnabled: boolean;
172
+ /**
173
+ * @generated from protobuf field: resources.users.UserInfoSyncUnemployedMode unemployed_mode = 5;
174
+ */
175
+ unemployedMode: UserInfoSyncUnemployedMode;
176
+ /**
177
+ * @generated from protobuf field: string unemployed_role_name = 6;
178
+ */
179
+ unemployedRoleName: string;
180
+ /**
181
+ * @generated from protobuf field: bool sync_nicknames = 7;
182
+ */
183
+ syncNicknames: boolean;
184
+ /**
185
+ * @generated from protobuf field: repeated resources.users.GroupMapping group_mapping = 8;
186
+ */
187
+ groupMapping: GroupMapping[];
188
+ }
189
+ /**
190
+ * @generated from protobuf message resources.users.GroupMapping
191
+ */
192
+ export interface GroupMapping {
193
+ /**
194
+ * @generated from protobuf field: string name = 1;
195
+ */
196
+ name: string;
197
+ /**
198
+ * @generated from protobuf field: int32 from_grade = 2;
199
+ */
200
+ fromGrade: number;
201
+ /**
202
+ * @generated from protobuf field: int32 to_grade = 3;
203
+ */
204
+ toGrade: number;
205
+ }
206
+ /**
207
+ * @generated from protobuf message resources.users.StatusLogSettings
208
+ */
209
+ export interface StatusLogSettings {
210
+ /**
211
+ * @generated from protobuf field: string channel_id = 1;
212
+ */
213
+ channelId: string;
214
+ }
215
+ /**
216
+ * @generated from protobuf message resources.users.JobsAbsenceSettings
217
+ */
218
+ export interface JobsAbsenceSettings {
219
+ /**
220
+ * @generated from protobuf field: string absence_role = 1;
221
+ */
222
+ absenceRole: string;
223
+ }
224
+ /**
225
+ * @generated from protobuf message resources.users.GroupSyncSettings
226
+ */
227
+ export interface GroupSyncSettings {
228
+ /**
229
+ * @sanitize: method=StripTags
230
+ *
231
+ * @generated from protobuf field: repeated string ignored_role_ids = 1;
232
+ */
233
+ ignoredRoleIds: string[];
234
+ }
235
+ /**
236
+ * @generated from protobuf message resources.users.JobSettings
237
+ */
238
+ export interface JobSettings {
239
+ }
240
+ /**
241
+ * @generated from protobuf enum resources.users.UserInfoSyncUnemployedMode
242
+ */
243
+ export enum UserInfoSyncUnemployedMode {
244
+ /**
245
+ * @generated from protobuf enum value: USER_INFO_SYNC_UNEMPLOYED_MODE_UNSPECIFIED = 0;
246
+ */
247
+ UNSPECIFIED = 0,
248
+ /**
249
+ * @generated from protobuf enum value: USER_INFO_SYNC_UNEMPLOYED_MODE_GIVE_ROLE = 1;
250
+ */
251
+ GIVE_ROLE = 1,
252
+ /**
253
+ * @generated from protobuf enum value: USER_INFO_SYNC_UNEMPLOYED_MODE_KICK = 2;
254
+ */
255
+ KICK = 2
256
+ }
257
+ // @generated message type with reflection information, may provide speed optimized methods
258
+ class JobProps$Type extends MessageType<JobProps> {
259
+ constructor() {
260
+ super("resources.users.JobProps", [
261
+ { no: 1, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "20" } } } },
262
+ { no: 2, name: "job_label", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "50" } } } },
263
+ { no: 3, name: "theme", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "20" } } } },
264
+ { no: 4, name: "livemap_marker_color", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { len: "7", pattern: "^#[A-Fa-f0-9]{6}$" } } } },
265
+ { no: 5, name: "quick_buttons", kind: "message", T: () => QuickButtons },
266
+ { no: 6, name: "radio_frequency", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "24" } } } },
267
+ { no: 7, name: "discord_guild_id", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
268
+ { no: 8, name: "discord_last_sync", kind: "message", T: () => Timestamp },
269
+ { no: 9, name: "discord_sync_settings", kind: "message", T: () => DiscordSyncSettings },
270
+ { no: 10, name: "discord_sync_changes", kind: "message", T: () => DiscordSyncChanges },
271
+ { no: 11, name: "motd", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "1024" } } } },
272
+ { no: 12, name: "logo_url", kind: "message", T: () => File },
273
+ { no: 13, name: "settings", kind: "message", T: () => JobSettings }
274
+ ]);
275
+ }
276
+ create(value?: PartialMessage<JobProps>): JobProps {
277
+ const message = globalThis.Object.create((this.messagePrototype!));
278
+ message.job = "";
279
+ message.theme = "";
280
+ message.livemapMarkerColor = "";
281
+ if (value !== undefined)
282
+ reflectionMergePartial<JobProps>(this, message, value);
283
+ return message;
284
+ }
285
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: JobProps): JobProps {
286
+ let message = target ?? this.create(), end = reader.pos + length;
287
+ while (reader.pos < end) {
288
+ let [fieldNo, wireType] = reader.tag();
289
+ switch (fieldNo) {
290
+ case /* string job */ 1:
291
+ message.job = reader.string();
292
+ break;
293
+ case /* optional string job_label */ 2:
294
+ message.jobLabel = reader.string();
295
+ break;
296
+ case /* string theme */ 3:
297
+ message.theme = reader.string();
298
+ break;
299
+ case /* string livemap_marker_color */ 4:
300
+ message.livemapMarkerColor = reader.string();
301
+ break;
302
+ case /* resources.users.QuickButtons quick_buttons */ 5:
303
+ message.quickButtons = QuickButtons.internalBinaryRead(reader, reader.uint32(), options, message.quickButtons);
304
+ break;
305
+ case /* optional string radio_frequency */ 6:
306
+ message.radioFrequency = reader.string();
307
+ break;
308
+ case /* optional string discord_guild_id */ 7:
309
+ message.discordGuildId = reader.string();
310
+ break;
311
+ case /* optional resources.timestamp.Timestamp discord_last_sync */ 8:
312
+ message.discordLastSync = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.discordLastSync);
313
+ break;
314
+ case /* resources.users.DiscordSyncSettings discord_sync_settings */ 9:
315
+ message.discordSyncSettings = DiscordSyncSettings.internalBinaryRead(reader, reader.uint32(), options, message.discordSyncSettings);
316
+ break;
317
+ case /* optional resources.users.DiscordSyncChanges discord_sync_changes */ 10:
318
+ message.discordSyncChanges = DiscordSyncChanges.internalBinaryRead(reader, reader.uint32(), options, message.discordSyncChanges);
319
+ break;
320
+ case /* optional string motd */ 11:
321
+ message.motd = reader.string();
322
+ break;
323
+ case /* optional resources.filestore.File logo_url */ 12:
324
+ message.logoUrl = File.internalBinaryRead(reader, reader.uint32(), options, message.logoUrl);
325
+ break;
326
+ case /* resources.users.JobSettings settings */ 13:
327
+ message.settings = JobSettings.internalBinaryRead(reader, reader.uint32(), options, message.settings);
328
+ break;
329
+ default:
330
+ let u = options.readUnknownField;
331
+ if (u === "throw")
332
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
333
+ let d = reader.skip(wireType);
334
+ if (u !== false)
335
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
336
+ }
337
+ }
338
+ return message;
339
+ }
340
+ internalBinaryWrite(message: JobProps, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
341
+ /* string job = 1; */
342
+ if (message.job !== "")
343
+ writer.tag(1, WireType.LengthDelimited).string(message.job);
344
+ /* optional string job_label = 2; */
345
+ if (message.jobLabel !== undefined)
346
+ writer.tag(2, WireType.LengthDelimited).string(message.jobLabel);
347
+ /* string theme = 3; */
348
+ if (message.theme !== "")
349
+ writer.tag(3, WireType.LengthDelimited).string(message.theme);
350
+ /* string livemap_marker_color = 4; */
351
+ if (message.livemapMarkerColor !== "")
352
+ writer.tag(4, WireType.LengthDelimited).string(message.livemapMarkerColor);
353
+ /* resources.users.QuickButtons quick_buttons = 5; */
354
+ if (message.quickButtons)
355
+ QuickButtons.internalBinaryWrite(message.quickButtons, writer.tag(5, WireType.LengthDelimited).fork(), options).join();
356
+ /* optional string radio_frequency = 6; */
357
+ if (message.radioFrequency !== undefined)
358
+ writer.tag(6, WireType.LengthDelimited).string(message.radioFrequency);
359
+ /* optional string discord_guild_id = 7; */
360
+ if (message.discordGuildId !== undefined)
361
+ writer.tag(7, WireType.LengthDelimited).string(message.discordGuildId);
362
+ /* optional resources.timestamp.Timestamp discord_last_sync = 8; */
363
+ if (message.discordLastSync)
364
+ Timestamp.internalBinaryWrite(message.discordLastSync, writer.tag(8, WireType.LengthDelimited).fork(), options).join();
365
+ /* resources.users.DiscordSyncSettings discord_sync_settings = 9; */
366
+ if (message.discordSyncSettings)
367
+ DiscordSyncSettings.internalBinaryWrite(message.discordSyncSettings, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
368
+ /* optional resources.users.DiscordSyncChanges discord_sync_changes = 10; */
369
+ if (message.discordSyncChanges)
370
+ DiscordSyncChanges.internalBinaryWrite(message.discordSyncChanges, writer.tag(10, WireType.LengthDelimited).fork(), options).join();
371
+ /* optional string motd = 11; */
372
+ if (message.motd !== undefined)
373
+ writer.tag(11, WireType.LengthDelimited).string(message.motd);
374
+ /* optional resources.filestore.File logo_url = 12; */
375
+ if (message.logoUrl)
376
+ File.internalBinaryWrite(message.logoUrl, writer.tag(12, WireType.LengthDelimited).fork(), options).join();
377
+ /* resources.users.JobSettings settings = 13; */
378
+ if (message.settings)
379
+ JobSettings.internalBinaryWrite(message.settings, writer.tag(13, WireType.LengthDelimited).fork(), options).join();
380
+ let u = options.writeUnknownFields;
381
+ if (u !== false)
382
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
383
+ return writer;
384
+ }
385
+ }
386
+ /**
387
+ * @generated MessageType for protobuf message resources.users.JobProps
388
+ */
389
+ export const JobProps = new JobProps$Type();
390
+ // @generated message type with reflection information, may provide speed optimized methods
391
+ class QuickButtons$Type extends MessageType<QuickButtons> {
392
+ constructor() {
393
+ super("resources.users.QuickButtons", [
394
+ { no: 1, name: "penalty_calculator", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
395
+ { no: 2, name: "body_checkup", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
396
+ { no: 3, name: "math_calculator", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
397
+ ]);
398
+ }
399
+ create(value?: PartialMessage<QuickButtons>): QuickButtons {
400
+ const message = globalThis.Object.create((this.messagePrototype!));
401
+ message.penaltyCalculator = false;
402
+ message.bodyCheckup = false;
403
+ message.mathCalculator = false;
404
+ if (value !== undefined)
405
+ reflectionMergePartial<QuickButtons>(this, message, value);
406
+ return message;
407
+ }
408
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QuickButtons): QuickButtons {
409
+ let message = target ?? this.create(), end = reader.pos + length;
410
+ while (reader.pos < end) {
411
+ let [fieldNo, wireType] = reader.tag();
412
+ switch (fieldNo) {
413
+ case /* bool penalty_calculator */ 1:
414
+ message.penaltyCalculator = reader.bool();
415
+ break;
416
+ case /* bool body_checkup */ 2:
417
+ message.bodyCheckup = reader.bool();
418
+ break;
419
+ case /* bool math_calculator */ 3:
420
+ message.mathCalculator = reader.bool();
421
+ break;
422
+ default:
423
+ let u = options.readUnknownField;
424
+ if (u === "throw")
425
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
426
+ let d = reader.skip(wireType);
427
+ if (u !== false)
428
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
429
+ }
430
+ }
431
+ return message;
432
+ }
433
+ internalBinaryWrite(message: QuickButtons, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
434
+ /* bool penalty_calculator = 1; */
435
+ if (message.penaltyCalculator !== false)
436
+ writer.tag(1, WireType.Varint).bool(message.penaltyCalculator);
437
+ /* bool body_checkup = 2; */
438
+ if (message.bodyCheckup !== false)
439
+ writer.tag(2, WireType.Varint).bool(message.bodyCheckup);
440
+ /* bool math_calculator = 3; */
441
+ if (message.mathCalculator !== false)
442
+ writer.tag(3, WireType.Varint).bool(message.mathCalculator);
443
+ let u = options.writeUnknownFields;
444
+ if (u !== false)
445
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
446
+ return writer;
447
+ }
448
+ }
449
+ /**
450
+ * @generated MessageType for protobuf message resources.users.QuickButtons
451
+ */
452
+ export const QuickButtons = new QuickButtons$Type();
453
+ // @generated message type with reflection information, may provide speed optimized methods
454
+ class DiscordSyncSettings$Type extends MessageType<DiscordSyncSettings> {
455
+ constructor() {
456
+ super("resources.users.DiscordSyncSettings", [
457
+ { no: 1, name: "dry_run", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
458
+ { no: 2, name: "user_info_sync", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
459
+ { no: 3, name: "user_info_sync_settings", kind: "message", T: () => UserInfoSyncSettings },
460
+ { no: 4, name: "status_log", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
461
+ { no: 5, name: "status_log_settings", kind: "message", T: () => StatusLogSettings },
462
+ { no: 6, name: "jobs_absence", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
463
+ { no: 7, name: "jobs_absence_settings", kind: "message", T: () => JobsAbsenceSettings },
464
+ { no: 8, name: "group_sync_settings", kind: "message", T: () => GroupSyncSettings },
465
+ { no: 9, name: "qualifications_role_format", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "64" } } } }
466
+ ]);
467
+ }
468
+ create(value?: PartialMessage<DiscordSyncSettings>): DiscordSyncSettings {
469
+ const message = globalThis.Object.create((this.messagePrototype!));
470
+ message.dryRun = false;
471
+ message.userInfoSync = false;
472
+ message.statusLog = false;
473
+ message.jobsAbsence = false;
474
+ message.qualificationsRoleFormat = "";
475
+ if (value !== undefined)
476
+ reflectionMergePartial<DiscordSyncSettings>(this, message, value);
477
+ return message;
478
+ }
479
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DiscordSyncSettings): DiscordSyncSettings {
480
+ let message = target ?? this.create(), end = reader.pos + length;
481
+ while (reader.pos < end) {
482
+ let [fieldNo, wireType] = reader.tag();
483
+ switch (fieldNo) {
484
+ case /* bool dry_run */ 1:
485
+ message.dryRun = reader.bool();
486
+ break;
487
+ case /* bool user_info_sync */ 2:
488
+ message.userInfoSync = reader.bool();
489
+ break;
490
+ case /* resources.users.UserInfoSyncSettings user_info_sync_settings */ 3:
491
+ message.userInfoSyncSettings = UserInfoSyncSettings.internalBinaryRead(reader, reader.uint32(), options, message.userInfoSyncSettings);
492
+ break;
493
+ case /* bool status_log */ 4:
494
+ message.statusLog = reader.bool();
495
+ break;
496
+ case /* resources.users.StatusLogSettings status_log_settings */ 5:
497
+ message.statusLogSettings = StatusLogSettings.internalBinaryRead(reader, reader.uint32(), options, message.statusLogSettings);
498
+ break;
499
+ case /* bool jobs_absence */ 6:
500
+ message.jobsAbsence = reader.bool();
501
+ break;
502
+ case /* resources.users.JobsAbsenceSettings jobs_absence_settings */ 7:
503
+ message.jobsAbsenceSettings = JobsAbsenceSettings.internalBinaryRead(reader, reader.uint32(), options, message.jobsAbsenceSettings);
504
+ break;
505
+ case /* resources.users.GroupSyncSettings group_sync_settings */ 8:
506
+ message.groupSyncSettings = GroupSyncSettings.internalBinaryRead(reader, reader.uint32(), options, message.groupSyncSettings);
507
+ break;
508
+ case /* string qualifications_role_format */ 9:
509
+ message.qualificationsRoleFormat = reader.string();
510
+ break;
511
+ default:
512
+ let u = options.readUnknownField;
513
+ if (u === "throw")
514
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
515
+ let d = reader.skip(wireType);
516
+ if (u !== false)
517
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
518
+ }
519
+ }
520
+ return message;
521
+ }
522
+ internalBinaryWrite(message: DiscordSyncSettings, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
523
+ /* bool dry_run = 1; */
524
+ if (message.dryRun !== false)
525
+ writer.tag(1, WireType.Varint).bool(message.dryRun);
526
+ /* bool user_info_sync = 2; */
527
+ if (message.userInfoSync !== false)
528
+ writer.tag(2, WireType.Varint).bool(message.userInfoSync);
529
+ /* resources.users.UserInfoSyncSettings user_info_sync_settings = 3; */
530
+ if (message.userInfoSyncSettings)
531
+ UserInfoSyncSettings.internalBinaryWrite(message.userInfoSyncSettings, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
532
+ /* bool status_log = 4; */
533
+ if (message.statusLog !== false)
534
+ writer.tag(4, WireType.Varint).bool(message.statusLog);
535
+ /* resources.users.StatusLogSettings status_log_settings = 5; */
536
+ if (message.statusLogSettings)
537
+ StatusLogSettings.internalBinaryWrite(message.statusLogSettings, writer.tag(5, WireType.LengthDelimited).fork(), options).join();
538
+ /* bool jobs_absence = 6; */
539
+ if (message.jobsAbsence !== false)
540
+ writer.tag(6, WireType.Varint).bool(message.jobsAbsence);
541
+ /* resources.users.JobsAbsenceSettings jobs_absence_settings = 7; */
542
+ if (message.jobsAbsenceSettings)
543
+ JobsAbsenceSettings.internalBinaryWrite(message.jobsAbsenceSettings, writer.tag(7, WireType.LengthDelimited).fork(), options).join();
544
+ /* resources.users.GroupSyncSettings group_sync_settings = 8; */
545
+ if (message.groupSyncSettings)
546
+ GroupSyncSettings.internalBinaryWrite(message.groupSyncSettings, writer.tag(8, WireType.LengthDelimited).fork(), options).join();
547
+ /* string qualifications_role_format = 9; */
548
+ if (message.qualificationsRoleFormat !== "")
549
+ writer.tag(9, WireType.LengthDelimited).string(message.qualificationsRoleFormat);
550
+ let u = options.writeUnknownFields;
551
+ if (u !== false)
552
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
553
+ return writer;
554
+ }
555
+ }
556
+ /**
557
+ * @generated MessageType for protobuf message resources.users.DiscordSyncSettings
558
+ */
559
+ export const DiscordSyncSettings = new DiscordSyncSettings$Type();
560
+ // @generated message type with reflection information, may provide speed optimized methods
561
+ class DiscordSyncChanges$Type extends MessageType<DiscordSyncChanges> {
562
+ constructor() {
563
+ super("resources.users.DiscordSyncChanges", [
564
+ { no: 1, name: "changes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => DiscordSyncChange }
565
+ ]);
566
+ }
567
+ create(value?: PartialMessage<DiscordSyncChanges>): DiscordSyncChanges {
568
+ const message = globalThis.Object.create((this.messagePrototype!));
569
+ message.changes = [];
570
+ if (value !== undefined)
571
+ reflectionMergePartial<DiscordSyncChanges>(this, message, value);
572
+ return message;
573
+ }
574
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DiscordSyncChanges): DiscordSyncChanges {
575
+ let message = target ?? this.create(), end = reader.pos + length;
576
+ while (reader.pos < end) {
577
+ let [fieldNo, wireType] = reader.tag();
578
+ switch (fieldNo) {
579
+ case /* repeated resources.users.DiscordSyncChange changes */ 1:
580
+ message.changes.push(DiscordSyncChange.internalBinaryRead(reader, reader.uint32(), options));
581
+ break;
582
+ default:
583
+ let u = options.readUnknownField;
584
+ if (u === "throw")
585
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
586
+ let d = reader.skip(wireType);
587
+ if (u !== false)
588
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
589
+ }
590
+ }
591
+ return message;
592
+ }
593
+ internalBinaryWrite(message: DiscordSyncChanges, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
594
+ /* repeated resources.users.DiscordSyncChange changes = 1; */
595
+ for (let i = 0; i < message.changes.length; i++)
596
+ DiscordSyncChange.internalBinaryWrite(message.changes[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
597
+ let u = options.writeUnknownFields;
598
+ if (u !== false)
599
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
600
+ return writer;
601
+ }
602
+ }
603
+ /**
604
+ * @generated MessageType for protobuf message resources.users.DiscordSyncChanges
605
+ */
606
+ export const DiscordSyncChanges = new DiscordSyncChanges$Type();
607
+ // @generated message type with reflection information, may provide speed optimized methods
608
+ class DiscordSyncChange$Type extends MessageType<DiscordSyncChange> {
609
+ constructor() {
610
+ super("resources.users.DiscordSyncChange", [
611
+ { no: 1, name: "time", kind: "message", T: () => Timestamp },
612
+ { no: 2, name: "plan", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
613
+ ]);
614
+ }
615
+ create(value?: PartialMessage<DiscordSyncChange>): DiscordSyncChange {
616
+ const message = globalThis.Object.create((this.messagePrototype!));
617
+ message.plan = "";
618
+ if (value !== undefined)
619
+ reflectionMergePartial<DiscordSyncChange>(this, message, value);
620
+ return message;
621
+ }
622
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DiscordSyncChange): DiscordSyncChange {
623
+ let message = target ?? this.create(), end = reader.pos + length;
624
+ while (reader.pos < end) {
625
+ let [fieldNo, wireType] = reader.tag();
626
+ switch (fieldNo) {
627
+ case /* resources.timestamp.Timestamp time */ 1:
628
+ message.time = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.time);
629
+ break;
630
+ case /* string plan */ 2:
631
+ message.plan = reader.string();
632
+ break;
633
+ default:
634
+ let u = options.readUnknownField;
635
+ if (u === "throw")
636
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
637
+ let d = reader.skip(wireType);
638
+ if (u !== false)
639
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
640
+ }
641
+ }
642
+ return message;
643
+ }
644
+ internalBinaryWrite(message: DiscordSyncChange, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
645
+ /* resources.timestamp.Timestamp time = 1; */
646
+ if (message.time)
647
+ Timestamp.internalBinaryWrite(message.time, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
648
+ /* string plan = 2; */
649
+ if (message.plan !== "")
650
+ writer.tag(2, WireType.LengthDelimited).string(message.plan);
651
+ let u = options.writeUnknownFields;
652
+ if (u !== false)
653
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
654
+ return writer;
655
+ }
656
+ }
657
+ /**
658
+ * @generated MessageType for protobuf message resources.users.DiscordSyncChange
659
+ */
660
+ export const DiscordSyncChange = new DiscordSyncChange$Type();
661
+ // @generated message type with reflection information, may provide speed optimized methods
662
+ class UserInfoSyncSettings$Type extends MessageType<UserInfoSyncSettings> {
663
+ constructor() {
664
+ super("resources.users.UserInfoSyncSettings", [
665
+ { no: 1, name: "employee_role_enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
666
+ { no: 2, name: "employee_role_format", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "64" } } } },
667
+ { no: 3, name: "grade_role_format", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "64" } } } },
668
+ { no: 4, name: "unemployed_enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
669
+ { no: 5, name: "unemployed_mode", kind: "enum", T: () => ["resources.users.UserInfoSyncUnemployedMode", UserInfoSyncUnemployedMode, "USER_INFO_SYNC_UNEMPLOYED_MODE_"], options: { "validate.rules": { enum: { definedOnly: true } } } },
670
+ { no: 6, name: "unemployed_role_name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "64" } } } },
671
+ { no: 7, name: "sync_nicknames", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
672
+ { no: 8, name: "group_mapping", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => GroupMapping }
673
+ ]);
674
+ }
675
+ create(value?: PartialMessage<UserInfoSyncSettings>): UserInfoSyncSettings {
676
+ const message = globalThis.Object.create((this.messagePrototype!));
677
+ message.employeeRoleEnabled = false;
678
+ message.employeeRoleFormat = "";
679
+ message.gradeRoleFormat = "";
680
+ message.unemployedEnabled = false;
681
+ message.unemployedMode = 0;
682
+ message.unemployedRoleName = "";
683
+ message.syncNicknames = false;
684
+ message.groupMapping = [];
685
+ if (value !== undefined)
686
+ reflectionMergePartial<UserInfoSyncSettings>(this, message, value);
687
+ return message;
688
+ }
689
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UserInfoSyncSettings): UserInfoSyncSettings {
690
+ let message = target ?? this.create(), end = reader.pos + length;
691
+ while (reader.pos < end) {
692
+ let [fieldNo, wireType] = reader.tag();
693
+ switch (fieldNo) {
694
+ case /* bool employee_role_enabled */ 1:
695
+ message.employeeRoleEnabled = reader.bool();
696
+ break;
697
+ case /* string employee_role_format */ 2:
698
+ message.employeeRoleFormat = reader.string();
699
+ break;
700
+ case /* string grade_role_format */ 3:
701
+ message.gradeRoleFormat = reader.string();
702
+ break;
703
+ case /* bool unemployed_enabled */ 4:
704
+ message.unemployedEnabled = reader.bool();
705
+ break;
706
+ case /* resources.users.UserInfoSyncUnemployedMode unemployed_mode */ 5:
707
+ message.unemployedMode = reader.int32();
708
+ break;
709
+ case /* string unemployed_role_name */ 6:
710
+ message.unemployedRoleName = reader.string();
711
+ break;
712
+ case /* bool sync_nicknames */ 7:
713
+ message.syncNicknames = reader.bool();
714
+ break;
715
+ case /* repeated resources.users.GroupMapping group_mapping */ 8:
716
+ message.groupMapping.push(GroupMapping.internalBinaryRead(reader, reader.uint32(), options));
717
+ break;
718
+ default:
719
+ let u = options.readUnknownField;
720
+ if (u === "throw")
721
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
722
+ let d = reader.skip(wireType);
723
+ if (u !== false)
724
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
725
+ }
726
+ }
727
+ return message;
728
+ }
729
+ internalBinaryWrite(message: UserInfoSyncSettings, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
730
+ /* bool employee_role_enabled = 1; */
731
+ if (message.employeeRoleEnabled !== false)
732
+ writer.tag(1, WireType.Varint).bool(message.employeeRoleEnabled);
733
+ /* string employee_role_format = 2; */
734
+ if (message.employeeRoleFormat !== "")
735
+ writer.tag(2, WireType.LengthDelimited).string(message.employeeRoleFormat);
736
+ /* string grade_role_format = 3; */
737
+ if (message.gradeRoleFormat !== "")
738
+ writer.tag(3, WireType.LengthDelimited).string(message.gradeRoleFormat);
739
+ /* bool unemployed_enabled = 4; */
740
+ if (message.unemployedEnabled !== false)
741
+ writer.tag(4, WireType.Varint).bool(message.unemployedEnabled);
742
+ /* resources.users.UserInfoSyncUnemployedMode unemployed_mode = 5; */
743
+ if (message.unemployedMode !== 0)
744
+ writer.tag(5, WireType.Varint).int32(message.unemployedMode);
745
+ /* string unemployed_role_name = 6; */
746
+ if (message.unemployedRoleName !== "")
747
+ writer.tag(6, WireType.LengthDelimited).string(message.unemployedRoleName);
748
+ /* bool sync_nicknames = 7; */
749
+ if (message.syncNicknames !== false)
750
+ writer.tag(7, WireType.Varint).bool(message.syncNicknames);
751
+ /* repeated resources.users.GroupMapping group_mapping = 8; */
752
+ for (let i = 0; i < message.groupMapping.length; i++)
753
+ GroupMapping.internalBinaryWrite(message.groupMapping[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join();
754
+ let u = options.writeUnknownFields;
755
+ if (u !== false)
756
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
757
+ return writer;
758
+ }
759
+ }
760
+ /**
761
+ * @generated MessageType for protobuf message resources.users.UserInfoSyncSettings
762
+ */
763
+ export const UserInfoSyncSettings = new UserInfoSyncSettings$Type();
764
+ // @generated message type with reflection information, may provide speed optimized methods
765
+ class GroupMapping$Type extends MessageType<GroupMapping> {
766
+ constructor() {
767
+ super("resources.users.GroupMapping", [
768
+ { no: 1, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "64" } } } },
769
+ { no: 2, name: "from_grade", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "validate.rules": { int32: { gte: 0 } } } },
770
+ { no: 3, name: "to_grade", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "validate.rules": { int32: { gte: 0 } } } }
771
+ ]);
772
+ }
773
+ create(value?: PartialMessage<GroupMapping>): GroupMapping {
774
+ const message = globalThis.Object.create((this.messagePrototype!));
775
+ message.name = "";
776
+ message.fromGrade = 0;
777
+ message.toGrade = 0;
778
+ if (value !== undefined)
779
+ reflectionMergePartial<GroupMapping>(this, message, value);
780
+ return message;
781
+ }
782
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GroupMapping): GroupMapping {
783
+ let message = target ?? this.create(), end = reader.pos + length;
784
+ while (reader.pos < end) {
785
+ let [fieldNo, wireType] = reader.tag();
786
+ switch (fieldNo) {
787
+ case /* string name */ 1:
788
+ message.name = reader.string();
789
+ break;
790
+ case /* int32 from_grade */ 2:
791
+ message.fromGrade = reader.int32();
792
+ break;
793
+ case /* int32 to_grade */ 3:
794
+ message.toGrade = reader.int32();
795
+ break;
796
+ default:
797
+ let u = options.readUnknownField;
798
+ if (u === "throw")
799
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
800
+ let d = reader.skip(wireType);
801
+ if (u !== false)
802
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
803
+ }
804
+ }
805
+ return message;
806
+ }
807
+ internalBinaryWrite(message: GroupMapping, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
808
+ /* string name = 1; */
809
+ if (message.name !== "")
810
+ writer.tag(1, WireType.LengthDelimited).string(message.name);
811
+ /* int32 from_grade = 2; */
812
+ if (message.fromGrade !== 0)
813
+ writer.tag(2, WireType.Varint).int32(message.fromGrade);
814
+ /* int32 to_grade = 3; */
815
+ if (message.toGrade !== 0)
816
+ writer.tag(3, WireType.Varint).int32(message.toGrade);
817
+ let u = options.writeUnknownFields;
818
+ if (u !== false)
819
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
820
+ return writer;
821
+ }
822
+ }
823
+ /**
824
+ * @generated MessageType for protobuf message resources.users.GroupMapping
825
+ */
826
+ export const GroupMapping = new GroupMapping$Type();
827
+ // @generated message type with reflection information, may provide speed optimized methods
828
+ class StatusLogSettings$Type extends MessageType<StatusLogSettings> {
829
+ constructor() {
830
+ super("resources.users.StatusLogSettings", [
831
+ { no: 1, name: "channel_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
832
+ ]);
833
+ }
834
+ create(value?: PartialMessage<StatusLogSettings>): StatusLogSettings {
835
+ const message = globalThis.Object.create((this.messagePrototype!));
836
+ message.channelId = "";
837
+ if (value !== undefined)
838
+ reflectionMergePartial<StatusLogSettings>(this, message, value);
839
+ return message;
840
+ }
841
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StatusLogSettings): StatusLogSettings {
842
+ let message = target ?? this.create(), end = reader.pos + length;
843
+ while (reader.pos < end) {
844
+ let [fieldNo, wireType] = reader.tag();
845
+ switch (fieldNo) {
846
+ case /* string channel_id */ 1:
847
+ message.channelId = reader.string();
848
+ break;
849
+ default:
850
+ let u = options.readUnknownField;
851
+ if (u === "throw")
852
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
853
+ let d = reader.skip(wireType);
854
+ if (u !== false)
855
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
856
+ }
857
+ }
858
+ return message;
859
+ }
860
+ internalBinaryWrite(message: StatusLogSettings, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
861
+ /* string channel_id = 1; */
862
+ if (message.channelId !== "")
863
+ writer.tag(1, WireType.LengthDelimited).string(message.channelId);
864
+ let u = options.writeUnknownFields;
865
+ if (u !== false)
866
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
867
+ return writer;
868
+ }
869
+ }
870
+ /**
871
+ * @generated MessageType for protobuf message resources.users.StatusLogSettings
872
+ */
873
+ export const StatusLogSettings = new StatusLogSettings$Type();
874
+ // @generated message type with reflection information, may provide speed optimized methods
875
+ class JobsAbsenceSettings$Type extends MessageType<JobsAbsenceSettings> {
876
+ constructor() {
877
+ super("resources.users.JobsAbsenceSettings", [
878
+ { no: 1, name: "absence_role", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "64" } } } }
879
+ ]);
880
+ }
881
+ create(value?: PartialMessage<JobsAbsenceSettings>): JobsAbsenceSettings {
882
+ const message = globalThis.Object.create((this.messagePrototype!));
883
+ message.absenceRole = "";
884
+ if (value !== undefined)
885
+ reflectionMergePartial<JobsAbsenceSettings>(this, message, value);
886
+ return message;
887
+ }
888
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: JobsAbsenceSettings): JobsAbsenceSettings {
889
+ let message = target ?? this.create(), end = reader.pos + length;
890
+ while (reader.pos < end) {
891
+ let [fieldNo, wireType] = reader.tag();
892
+ switch (fieldNo) {
893
+ case /* string absence_role */ 1:
894
+ message.absenceRole = reader.string();
895
+ break;
896
+ default:
897
+ let u = options.readUnknownField;
898
+ if (u === "throw")
899
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
900
+ let d = reader.skip(wireType);
901
+ if (u !== false)
902
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
903
+ }
904
+ }
905
+ return message;
906
+ }
907
+ internalBinaryWrite(message: JobsAbsenceSettings, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
908
+ /* string absence_role = 1; */
909
+ if (message.absenceRole !== "")
910
+ writer.tag(1, WireType.LengthDelimited).string(message.absenceRole);
911
+ let u = options.writeUnknownFields;
912
+ if (u !== false)
913
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
914
+ return writer;
915
+ }
916
+ }
917
+ /**
918
+ * @generated MessageType for protobuf message resources.users.JobsAbsenceSettings
919
+ */
920
+ export const JobsAbsenceSettings = new JobsAbsenceSettings$Type();
921
+ // @generated message type with reflection information, may provide speed optimized methods
922
+ class GroupSyncSettings$Type extends MessageType<GroupSyncSettings> {
923
+ constructor() {
924
+ super("resources.users.GroupSyncSettings", [
925
+ { no: 1, name: "ignored_role_ids", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { repeated: { maxItems: "25", items: { string: { maxLen: "24" } } } } } }
926
+ ]);
927
+ }
928
+ create(value?: PartialMessage<GroupSyncSettings>): GroupSyncSettings {
929
+ const message = globalThis.Object.create((this.messagePrototype!));
930
+ message.ignoredRoleIds = [];
931
+ if (value !== undefined)
932
+ reflectionMergePartial<GroupSyncSettings>(this, message, value);
933
+ return message;
934
+ }
935
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GroupSyncSettings): GroupSyncSettings {
936
+ let message = target ?? this.create(), end = reader.pos + length;
937
+ while (reader.pos < end) {
938
+ let [fieldNo, wireType] = reader.tag();
939
+ switch (fieldNo) {
940
+ case /* repeated string ignored_role_ids */ 1:
941
+ message.ignoredRoleIds.push(reader.string());
942
+ break;
943
+ default:
944
+ let u = options.readUnknownField;
945
+ if (u === "throw")
946
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
947
+ let d = reader.skip(wireType);
948
+ if (u !== false)
949
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
950
+ }
951
+ }
952
+ return message;
953
+ }
954
+ internalBinaryWrite(message: GroupSyncSettings, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
955
+ /* repeated string ignored_role_ids = 1; */
956
+ for (let i = 0; i < message.ignoredRoleIds.length; i++)
957
+ writer.tag(1, WireType.LengthDelimited).string(message.ignoredRoleIds[i]);
958
+ let u = options.writeUnknownFields;
959
+ if (u !== false)
960
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
961
+ return writer;
962
+ }
963
+ }
964
+ /**
965
+ * @generated MessageType for protobuf message resources.users.GroupSyncSettings
966
+ */
967
+ export const GroupSyncSettings = new GroupSyncSettings$Type();
968
+ // @generated message type with reflection information, may provide speed optimized methods
969
+ class JobSettings$Type extends MessageType<JobSettings> {
970
+ constructor() {
971
+ super("resources.users.JobSettings", []);
972
+ }
973
+ create(value?: PartialMessage<JobSettings>): JobSettings {
974
+ const message = globalThis.Object.create((this.messagePrototype!));
975
+ if (value !== undefined)
976
+ reflectionMergePartial<JobSettings>(this, message, value);
977
+ return message;
978
+ }
979
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: JobSettings): JobSettings {
980
+ return target ?? this.create();
981
+ }
982
+ internalBinaryWrite(message: JobSettings, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
983
+ let u = options.writeUnknownFields;
984
+ if (u !== false)
985
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
986
+ return writer;
987
+ }
988
+ }
989
+ /**
990
+ * @generated MessageType for protobuf message resources.users.JobSettings
991
+ */
992
+ export const JobSettings = new JobSettings$Type();