@fivenet-app/gen 2026.7.3 → 2026.8.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/google/protobuf/descriptor.ts +3 -11
  2. package/google/protobuf/timestamp.ts +6 -7
  3. package/package.json +1 -1
  4. package/perms.ts +21 -4
  5. package/resources/audit/audit.ts +19 -9
  6. package/resources/calendar/calendar.ts +11 -0
  7. package/resources/calendar/entries/entries.ts +23 -0
  8. package/resources/centrum/dispatches/dispatches.ts +8 -8
  9. package/resources/centrum/units/units.ts +5 -5
  10. package/resources/citizens/labels/access.ts +10 -6
  11. package/resources/dbsync/state.ts +192 -0
  12. package/resources/documents/stamps/access.ts +25 -0
  13. package/resources/documents/stamps/stamp.ts +0 -21
  14. package/resources/documents/templates/templates.ts +61 -83
  15. package/resources/documents/workflow/workflow.ts +61 -1
  16. package/resources/jobs/groups/access/access.ts +29 -0
  17. package/resources/jobs/groups/activity.ts +332 -0
  18. package/resources/jobs/groups/group.ts +1666 -0
  19. package/resources/jobs/user_selector.ts +184 -0
  20. package/resources/settings/status.ts +197 -105
  21. package/services/calendar/calendar.ts +1 -1
  22. package/services/calendar/entries.ts +3 -3
  23. package/services/centrum/units.ts +3 -3
  24. package/services/completor/completor.ts +2 -2
  25. package/services/documents/approval.ts +2 -2
  26. package/services/documents/documents.ts +9 -9
  27. package/services/documents/templates.client.ts +13 -0
  28. package/services/documents/templates.ts +136 -14
  29. package/services/jobs/colleagues.client.ts +34 -8
  30. package/services/jobs/colleagues.ts +263 -74
  31. package/services/jobs/conduct.ts +11 -19
  32. package/services/jobs/groups.client.ts +311 -0
  33. package/services/jobs/groups.ts +3596 -1
  34. package/services/jobs/timeclock.ts +30 -27
  35. package/services/qualifications/qualifications.ts +26 -4
  36. package/services/settings/settings.ts +1 -1
  37. package/services/sync/sync.client.ts +90 -37
  38. package/services/sync/sync.ts +555 -6
  39. package/services/vehicles/vehicles.ts +2 -2
  40. package/svcs.ts +31 -1
@@ -5,10 +5,10 @@
5
5
  import { ServiceType } from "@protobuf-ts/runtime-rpc";
6
6
  import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
7
7
  import type { IBinaryWriter } from "@protobuf-ts/runtime";
8
+ import { WireType } from "@protobuf-ts/runtime";
8
9
  import type { BinaryReadOptions } from "@protobuf-ts/runtime";
9
10
  import type { IBinaryReader } from "@protobuf-ts/runtime";
10
11
  import { UnknownFieldHandler } from "@protobuf-ts/runtime";
11
- import { WireType } from "@protobuf-ts/runtime";
12
12
  import type { PartialMessage } from "@protobuf-ts/runtime";
13
13
  import { reflectionMergePartial } from "@protobuf-ts/runtime";
14
14
  import { MessageType } from "@protobuf-ts/runtime";
@@ -18,6 +18,7 @@ import { Timestamp } from "../../resources/timestamp/timestamp";
18
18
  import { TimeclockWeeklyStats } from "../../resources/jobs/timeclock/timeclock";
19
19
  import { TimeclockStats } from "../../resources/jobs/timeclock/timeclock";
20
20
  import { PaginationResponse } from "../../resources/common/database/database";
21
+ import { UserSelector } from "../../resources/jobs/user_selector";
21
22
  import { DateRange } from "../../resources/common/database/database";
22
23
  import { TimeclockMode } from "../../resources/jobs/timeclock/timeclock";
23
24
  import { TimeclockViewMode } from "../../resources/jobs/timeclock/timeclock";
@@ -56,9 +57,9 @@ export interface ListTimeclockRequest {
56
57
  */
57
58
  perDay: boolean;
58
59
  /**
59
- * @generated from protobuf field: repeated int32 user_ids = 7
60
+ * @generated from protobuf field: optional resources.jobs.UserSelector users = 7
60
61
  */
61
- userIds: number[];
62
+ users?: UserSelector;
62
63
  }
63
64
  /**
64
65
  * @generated from protobuf message services.jobs.ListTimeclockResponse
@@ -157,9 +158,9 @@ export interface TimeclockRange {
157
158
  */
158
159
  export interface GetTimeclockStatsRequest {
159
160
  /**
160
- * @generated from protobuf field: optional int32 user_id = 1
161
+ * @generated from protobuf field: optional resources.jobs.UserSelector users = 1
161
162
  */
162
- userId?: number;
163
+ users?: UserSelector;
163
164
  }
164
165
  /**
165
166
  * @generated from protobuf message services.jobs.GetTimeclockStatsResponse
@@ -192,6 +193,10 @@ export interface ListInactiveEmployeesRequest {
192
193
  * @generated from protobuf field: int32 days = 3
193
194
  */
194
195
  days: number;
196
+ /**
197
+ * @generated from protobuf field: optional resources.jobs.UserSelector users = 4
198
+ */
199
+ users?: UserSelector;
195
200
  }
196
201
  /**
197
202
  * @generated from protobuf message services.jobs.ListInactiveEmployeesResponse
@@ -216,7 +221,7 @@ class ListTimeclockRequest$Type extends MessageType<ListTimeclockRequest> {
216
221
  { no: 4, name: "mode", kind: "enum", T: () => ["resources.jobs.timeclock.TimeclockMode", TimeclockMode, "TIMECLOCK_MODE_"], options: { "buf.validate.field": { enum: { definedOnly: true } } } },
217
222
  { no: 5, name: "date", kind: "message", T: () => DateRange },
218
223
  { no: 6, name: "per_day", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
219
- { no: 7, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "15" } } } }
224
+ { no: 7, name: "users", kind: "message", T: () => UserSelector }
220
225
  ]);
221
226
  }
222
227
  create(value?: PartialMessage<ListTimeclockRequest>): ListTimeclockRequest {
@@ -224,7 +229,6 @@ class ListTimeclockRequest$Type extends MessageType<ListTimeclockRequest> {
224
229
  message.userMode = 0;
225
230
  message.mode = 0;
226
231
  message.perDay = false;
227
- message.userIds = [];
228
232
  if (value !== undefined)
229
233
  reflectionMergePartial<ListTimeclockRequest>(this, message, value);
230
234
  return message;
@@ -252,12 +256,8 @@ class ListTimeclockRequest$Type extends MessageType<ListTimeclockRequest> {
252
256
  case /* bool per_day */ 6:
253
257
  message.perDay = reader.bool();
254
258
  break;
255
- case /* repeated int32 user_ids */ 7:
256
- if (wireType === WireType.LengthDelimited)
257
- for (let e = reader.int32() + reader.pos; reader.pos < e;)
258
- message.userIds.push(reader.int32());
259
- else
260
- message.userIds.push(reader.int32());
259
+ case /* optional resources.jobs.UserSelector users */ 7:
260
+ message.users = UserSelector.internalBinaryRead(reader, reader.uint32(), options, message.users);
261
261
  break;
262
262
  default:
263
263
  let u = options.readUnknownField;
@@ -289,13 +289,9 @@ class ListTimeclockRequest$Type extends MessageType<ListTimeclockRequest> {
289
289
  /* bool per_day = 6; */
290
290
  if (message.perDay !== false)
291
291
  writer.tag(6, WireType.Varint).bool(message.perDay);
292
- /* repeated int32 user_ids = 7; */
293
- if (message.userIds.length) {
294
- writer.tag(7, WireType.LengthDelimited).fork();
295
- for (let i = 0; i < message.userIds.length; i++)
296
- writer.int32(message.userIds[i]);
297
- writer.join();
298
- }
292
+ /* optional resources.jobs.UserSelector users = 7; */
293
+ if (message.users)
294
+ UserSelector.internalBinaryWrite(message.users, writer.tag(7, WireType.LengthDelimited).fork(), options).join();
299
295
  let u = options.writeUnknownFields;
300
296
  if (u !== false)
301
297
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -588,7 +584,7 @@ export const TimeclockRange = new TimeclockRange$Type();
588
584
  class GetTimeclockStatsRequest$Type extends MessageType<GetTimeclockStatsRequest> {
589
585
  constructor() {
590
586
  super("services.jobs.GetTimeclockStatsRequest", [
591
- { no: 1, name: "user_id", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 0 } } } }
587
+ { no: 1, name: "users", kind: "message", T: () => UserSelector }
592
588
  ]);
593
589
  }
594
590
  create(value?: PartialMessage<GetTimeclockStatsRequest>): GetTimeclockStatsRequest {
@@ -602,8 +598,8 @@ class GetTimeclockStatsRequest$Type extends MessageType<GetTimeclockStatsRequest
602
598
  while (reader.pos < end) {
603
599
  let [fieldNo, wireType] = reader.tag();
604
600
  switch (fieldNo) {
605
- case /* optional int32 user_id */ 1:
606
- message.userId = reader.int32();
601
+ case /* optional resources.jobs.UserSelector users */ 1:
602
+ message.users = UserSelector.internalBinaryRead(reader, reader.uint32(), options, message.users);
607
603
  break;
608
604
  default:
609
605
  let u = options.readUnknownField;
@@ -617,9 +613,9 @@ class GetTimeclockStatsRequest$Type extends MessageType<GetTimeclockStatsRequest
617
613
  return message;
618
614
  }
619
615
  internalBinaryWrite(message: GetTimeclockStatsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
620
- /* optional int32 user_id = 1; */
621
- if (message.userId !== undefined)
622
- writer.tag(1, WireType.Varint).int32(message.userId);
616
+ /* optional resources.jobs.UserSelector users = 1; */
617
+ if (message.users)
618
+ UserSelector.internalBinaryWrite(message.users, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
623
619
  let u = options.writeUnknownFields;
624
620
  if (u !== false)
625
621
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -690,7 +686,8 @@ class ListInactiveEmployeesRequest$Type extends MessageType<ListInactiveEmployee
690
686
  super("services.jobs.ListInactiveEmployeesRequest", [
691
687
  { no: 1, name: "pagination", kind: "message", T: () => PaginationRequest, options: { "buf.validate.field": { required: true } } },
692
688
  { no: 2, name: "sort", kind: "message", T: () => Sort },
693
- { no: 3, name: "days", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 1 } } } }
689
+ { no: 3, name: "days", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 1 } } } },
690
+ { no: 4, name: "users", kind: "message", T: () => UserSelector }
694
691
  ]);
695
692
  }
696
693
  create(value?: PartialMessage<ListInactiveEmployeesRequest>): ListInactiveEmployeesRequest {
@@ -714,6 +711,9 @@ class ListInactiveEmployeesRequest$Type extends MessageType<ListInactiveEmployee
714
711
  case /* int32 days */ 3:
715
712
  message.days = reader.int32();
716
713
  break;
714
+ case /* optional resources.jobs.UserSelector users */ 4:
715
+ message.users = UserSelector.internalBinaryRead(reader, reader.uint32(), options, message.users);
716
+ break;
717
717
  default:
718
718
  let u = options.readUnknownField;
719
719
  if (u === "throw")
@@ -735,6 +735,9 @@ class ListInactiveEmployeesRequest$Type extends MessageType<ListInactiveEmployee
735
735
  /* int32 days = 3; */
736
736
  if (message.days !== 0)
737
737
  writer.tag(3, WireType.Varint).int32(message.days);
738
+ /* optional resources.jobs.UserSelector users = 4; */
739
+ if (message.users)
740
+ UserSelector.internalBinaryWrite(message.users, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
738
741
  let u = options.writeUnknownFields;
739
742
  if (u !== false)
740
743
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -199,6 +199,10 @@ export interface ListQualificationRequestsRequest {
199
199
  * @generated from protobuf field: repeated int32 user_ids = 5
200
200
  */
201
201
  userIds: number[];
202
+ /**
203
+ * @generated from protobuf field: optional string search = 6
204
+ */
205
+ search?: string;
202
206
  }
203
207
  /**
204
208
  * @generated from protobuf message services.qualifications.ListQualificationRequestsResponse
@@ -277,6 +281,10 @@ export interface ListQualificationsResultsRequest {
277
281
  * @generated from protobuf field: repeated int32 user_ids = 5
278
282
  */
279
283
  userIds: number[];
284
+ /**
285
+ * @generated from protobuf field: optional string search = 6
286
+ */
287
+ search?: string;
280
288
  }
281
289
  /**
282
290
  * @generated from protobuf message services.qualifications.ListQualificationsResultsResponse
@@ -1012,8 +1020,9 @@ class ListQualificationRequestsRequest$Type extends MessageType<ListQualificatio
1012
1020
  { no: 1, name: "pagination", kind: "message", T: () => PaginationRequest, options: { "buf.validate.field": { required: true } } },
1013
1021
  { no: 2, name: "sort", kind: "message", T: () => Sort },
1014
1022
  { no: 3, name: "qualification_id", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/ },
1015
- { no: 4, name: "status", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["resources.qualifications.RequestStatus", RequestStatus, "REQUEST_STATUS_"], options: { "buf.validate.field": { repeated: { items: { enum: { definedOnly: true } } } } } },
1016
- { no: 5, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "5", items: { int32: { gt: 0 } } } } } }
1023
+ { no: 4, name: "status", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["resources.qualifications.RequestStatus", RequestStatus, "REQUEST_STATUS_"], options: { "buf.validate.field": { repeated: { maxItems: "6", items: { enum: { definedOnly: true } } } } } },
1024
+ { no: 5, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "10", items: { int32: { gt: 0 } } } } } },
1025
+ { no: 6, name: "search", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "64" } } } }
1017
1026
  ]);
1018
1027
  }
1019
1028
  create(value?: PartialMessage<ListQualificationRequestsRequest>): ListQualificationRequestsRequest {
@@ -1052,6 +1061,9 @@ class ListQualificationRequestsRequest$Type extends MessageType<ListQualificatio
1052
1061
  else
1053
1062
  message.userIds.push(reader.int32());
1054
1063
  break;
1064
+ case /* optional string search */ 6:
1065
+ message.search = reader.string();
1066
+ break;
1055
1067
  default:
1056
1068
  let u = options.readUnknownField;
1057
1069
  if (u === "throw")
@@ -1087,6 +1099,9 @@ class ListQualificationRequestsRequest$Type extends MessageType<ListQualificatio
1087
1099
  writer.int32(message.userIds[i]);
1088
1100
  writer.join();
1089
1101
  }
1102
+ /* optional string search = 6; */
1103
+ if (message.search !== undefined)
1104
+ writer.tag(6, WireType.LengthDelimited).string(message.search);
1090
1105
  let u = options.writeUnknownFields;
1091
1106
  if (u !== false)
1092
1107
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -1343,8 +1358,9 @@ class ListQualificationsResultsRequest$Type extends MessageType<ListQualificatio
1343
1358
  { no: 1, name: "pagination", kind: "message", T: () => PaginationRequest, options: { "buf.validate.field": { required: true } } },
1344
1359
  { no: 2, name: "sort", kind: "message", T: () => Sort },
1345
1360
  { no: 3, name: "qualification_id", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/ },
1346
- { no: 4, name: "status", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["resources.qualifications.ResultStatus", ResultStatus, "RESULT_STATUS_"], options: { "buf.validate.field": { repeated: { items: { enum: { definedOnly: true } } } } } },
1347
- { no: 5, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "5", items: { int32: { gt: 0 } } } } } }
1361
+ { no: 4, name: "status", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["resources.qualifications.ResultStatus", ResultStatus, "RESULT_STATUS_"], options: { "buf.validate.field": { repeated: { maxItems: "3", items: { enum: { definedOnly: true } } } } } },
1362
+ { no: 5, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "10", items: { int32: { gt: 0 } } } } } },
1363
+ { no: 6, name: "search", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "64" } } } }
1348
1364
  ]);
1349
1365
  }
1350
1366
  create(value?: PartialMessage<ListQualificationsResultsRequest>): ListQualificationsResultsRequest {
@@ -1383,6 +1399,9 @@ class ListQualificationsResultsRequest$Type extends MessageType<ListQualificatio
1383
1399
  else
1384
1400
  message.userIds.push(reader.int32());
1385
1401
  break;
1402
+ case /* optional string search */ 6:
1403
+ message.search = reader.string();
1404
+ break;
1386
1405
  default:
1387
1406
  let u = options.readUnknownField;
1388
1407
  if (u === "throw")
@@ -1418,6 +1437,9 @@ class ListQualificationsResultsRequest$Type extends MessageType<ListQualificatio
1418
1437
  writer.int32(message.userIds[i]);
1419
1438
  writer.join();
1420
1439
  }
1440
+ /* optional string search = 6; */
1441
+ if (message.search !== undefined)
1442
+ writer.tag(6, WireType.LengthDelimited).string(message.search);
1421
1443
  let u = options.writeUnknownFields;
1422
1444
  if (u !== false)
1423
1445
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -1165,7 +1165,7 @@ class ViewAuditLogRequest$Type extends MessageType<ViewAuditLogRequest> {
1165
1165
  super("services.settings.ViewAuditLogRequest", [
1166
1166
  { no: 1, name: "pagination", kind: "message", T: () => PaginationRequest, options: { "buf.validate.field": { required: true } } },
1167
1167
  { no: 2, name: "sort", kind: "message", T: () => Sort },
1168
- { no: 3, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/ },
1168
+ { no: 3, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "10" } } } },
1169
1169
  { no: 4, name: "from", kind: "message", T: () => Timestamp },
1170
1170
  { no: 5, name: "to", kind: "message", T: () => Timestamp },
1171
1171
  { no: 6, name: "services", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { repeated: { maxItems: "10", items: { string: { maxLen: "64" } } } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
@@ -10,7 +10,7 @@ import type { SendDataRequest } from "./sync";
10
10
  import type { AddActivityRequest } from "./sync";
11
11
  import type { StreamResponse } from "./sync";
12
12
  import type { StreamRequest } from "./sync";
13
- import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc";
13
+ import type { DuplexStreamingCall } from "@protobuf-ts/runtime-rpc";
14
14
  import type { DeleteVehiclesRequest } from "./sync";
15
15
  import type { DeleteUsersRequest } from "./sync";
16
16
  import type { SetLastCharIDRequest } from "./sync";
@@ -32,6 +32,12 @@ import type { AddDispatchRequest } from "./sync";
32
32
  import type { AddJobTimeclockRequest } from "./sync";
33
33
  import type { AddColleaguePropsRequest } from "./sync";
34
34
  import type { AddColleagueActivityRequest } from "./sync";
35
+ import type { SetVehiclePropsResponse } from "./sync";
36
+ import type { SetVehiclePropsRequest } from "./sync";
37
+ import type { GetVehiclePropsResponse } from "./sync";
38
+ import type { GetVehiclePropsRequest } from "./sync";
39
+ import type { GetUserPropsResponse } from "./sync";
40
+ import type { GetUserPropsRequest } from "./sync";
35
41
  import type { AddUserPropsRequest } from "./sync";
36
42
  import type { AddUserActivityRequest } from "./sync";
37
43
  import type { AddUserUpdateRequest } from "./sync";
@@ -97,11 +103,29 @@ export interface ISyncServiceClient {
97
103
  */
98
104
  addUserActivity(input: AddUserActivityRequest, options?: RpcOptions): UnaryCall<AddUserActivityRequest, AddActivityResponse>;
99
105
  /**
100
- * Record user property changes.
106
+ * Record user props changes.
101
107
  *
102
108
  * @generated from protobuf rpc: AddUserProps
103
109
  */
104
110
  addUserProps(input: AddUserPropsRequest, options?: RpcOptions): UnaryCall<AddUserPropsRequest, AddActivityResponse>;
111
+ /**
112
+ * Retrieve user props.
113
+ *
114
+ * @generated from protobuf rpc: GetUserProps
115
+ */
116
+ getUserProps(input: GetUserPropsRequest, options?: RpcOptions): UnaryCall<GetUserPropsRequest, GetUserPropsResponse>;
117
+ /**
118
+ * Retrieve vehicle props.
119
+ *
120
+ * @generated from protobuf rpc: GetVehicleProps
121
+ */
122
+ getVehicleProps(input: GetVehiclePropsRequest, options?: RpcOptions): UnaryCall<GetVehiclePropsRequest, GetVehiclePropsResponse>;
123
+ /**
124
+ * Update vehicle props.
125
+ *
126
+ * @generated from protobuf rpc: SetVehicleProps
127
+ */
128
+ setVehicleProps(input: SetVehiclePropsRequest, options?: RpcOptions): UnaryCall<SetVehiclePropsRequest, SetVehiclePropsResponse>;
105
129
  /**
106
130
  * Record a colleague activity entry.
107
131
  *
@@ -109,7 +133,7 @@ export interface ISyncServiceClient {
109
133
  */
110
134
  addColleagueActivity(input: AddColleagueActivityRequest, options?: RpcOptions): UnaryCall<AddColleagueActivityRequest, AddActivityResponse>;
111
135
  /**
112
- * Record colleague property changes.
136
+ * Record colleague props changes.
113
137
  *
114
138
  * @generated from protobuf rpc: AddColleagueProps
115
139
  */
@@ -205,27 +229,28 @@ export interface ISyncServiceClient {
205
229
  */
206
230
  deleteVehicles(input: DeleteVehiclesRequest, options?: RpcOptions): UnaryCall<DeleteVehiclesRequest, DeleteDataResponse>;
207
231
  /**
208
- * Used for the server to stream events to the dbsync (e.g., "refresh" of user/char data)
232
+ * Used for the server to stream events to the dbsync and for the dbsync process to
233
+ * report its current cursor state back to the server.
209
234
  *
210
235
  * @generated from protobuf rpc: Stream
211
236
  */
212
- stream(input: StreamRequest, options?: RpcOptions): ServerStreamingCall<StreamRequest, StreamResponse>;
237
+ stream(options?: RpcOptions): DuplexStreamingCall<StreamRequest, StreamResponse>;
213
238
  /**
214
- * DEPRECATED: For "tracking" activity such as "user received traffic infraction points", timeclock entries, etc.
239
+ * Deprecated: For "tracking" activity such as "user received traffic infraction points", timeclock entries, etc.
215
240
  *
216
241
  * @deprecated
217
242
  * @generated from protobuf rpc: AddActivity
218
243
  */
219
244
  addActivity(input: AddActivityRequest, options?: RpcOptions): UnaryCall<AddActivityRequest, AddActivityResponse>;
220
245
  /**
221
- * DEPRECATED: DBSync's method of sending (mass) data to the FiveNet server for storing.
246
+ * Deprecated: DBSync's method of sending (mass) data to the FiveNet server for storing.
222
247
  *
223
248
  * @deprecated
224
249
  * @generated from protobuf rpc: SendData
225
250
  */
226
251
  sendData(input: SendDataRequest, options?: RpcOptions): UnaryCall<SendDataRequest, SendDataResponse>;
227
252
  /**
228
- * DEPRECATED: Way for the gameserver to delete certain data as well
253
+ * Deprecated: Way for the gameserver to delete certain data as well
229
254
  *
230
255
  * @deprecated
231
256
  * @generated from protobuf rpc: DeleteData
@@ -308,7 +333,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
308
333
  return stackIntercept<AddUserActivityRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
309
334
  }
310
335
  /**
311
- * Record user property changes.
336
+ * Record user props changes.
312
337
  *
313
338
  * @generated from protobuf rpc: AddUserProps
314
339
  */
@@ -316,22 +341,49 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
316
341
  const method = this.methods[7], opt = this._transport.mergeOptions(options);
317
342
  return stackIntercept<AddUserPropsRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
318
343
  }
344
+ /**
345
+ * Retrieve user props.
346
+ *
347
+ * @generated from protobuf rpc: GetUserProps
348
+ */
349
+ getUserProps(input: GetUserPropsRequest, options?: RpcOptions): UnaryCall<GetUserPropsRequest, GetUserPropsResponse> {
350
+ const method = this.methods[8], opt = this._transport.mergeOptions(options);
351
+ return stackIntercept<GetUserPropsRequest, GetUserPropsResponse>("unary", this._transport, method, opt, input);
352
+ }
353
+ /**
354
+ * Retrieve vehicle props.
355
+ *
356
+ * @generated from protobuf rpc: GetVehicleProps
357
+ */
358
+ getVehicleProps(input: GetVehiclePropsRequest, options?: RpcOptions): UnaryCall<GetVehiclePropsRequest, GetVehiclePropsResponse> {
359
+ const method = this.methods[9], opt = this._transport.mergeOptions(options);
360
+ return stackIntercept<GetVehiclePropsRequest, GetVehiclePropsResponse>("unary", this._transport, method, opt, input);
361
+ }
362
+ /**
363
+ * Update vehicle props.
364
+ *
365
+ * @generated from protobuf rpc: SetVehicleProps
366
+ */
367
+ setVehicleProps(input: SetVehiclePropsRequest, options?: RpcOptions): UnaryCall<SetVehiclePropsRequest, SetVehiclePropsResponse> {
368
+ const method = this.methods[10], opt = this._transport.mergeOptions(options);
369
+ return stackIntercept<SetVehiclePropsRequest, SetVehiclePropsResponse>("unary", this._transport, method, opt, input);
370
+ }
319
371
  /**
320
372
  * Record a colleague activity entry.
321
373
  *
322
374
  * @generated from protobuf rpc: AddColleagueActivity
323
375
  */
324
376
  addColleagueActivity(input: AddColleagueActivityRequest, options?: RpcOptions): UnaryCall<AddColleagueActivityRequest, AddActivityResponse> {
325
- const method = this.methods[8], opt = this._transport.mergeOptions(options);
377
+ const method = this.methods[11], opt = this._transport.mergeOptions(options);
326
378
  return stackIntercept<AddColleagueActivityRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
327
379
  }
328
380
  /**
329
- * Record colleague property changes.
381
+ * Record colleague props changes.
330
382
  *
331
383
  * @generated from protobuf rpc: AddColleagueProps
332
384
  */
333
385
  addColleagueProps(input: AddColleaguePropsRequest, options?: RpcOptions): UnaryCall<AddColleaguePropsRequest, AddActivityResponse> {
334
- const method = this.methods[9], opt = this._transport.mergeOptions(options);
386
+ const method = this.methods[12], opt = this._transport.mergeOptions(options);
335
387
  return stackIntercept<AddColleaguePropsRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
336
388
  }
337
389
  /**
@@ -340,7 +392,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
340
392
  * @generated from protobuf rpc: AddJobTimeclock
341
393
  */
342
394
  addJobTimeclock(input: AddJobTimeclockRequest, options?: RpcOptions): UnaryCall<AddJobTimeclockRequest, AddActivityResponse> {
343
- const method = this.methods[10], opt = this._transport.mergeOptions(options);
395
+ const method = this.methods[13], opt = this._transport.mergeOptions(options);
344
396
  return stackIntercept<AddJobTimeclockRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
345
397
  }
346
398
  /**
@@ -349,7 +401,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
349
401
  * @generated from protobuf rpc: AddDispatch
350
402
  */
351
403
  addDispatch(input: AddDispatchRequest, options?: RpcOptions): UnaryCall<AddDispatchRequest, AddActivityResponse> {
352
- const method = this.methods[11], opt = this._transport.mergeOptions(options);
404
+ const method = this.methods[14], opt = this._transport.mergeOptions(options);
353
405
  return stackIntercept<AddDispatchRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
354
406
  }
355
407
  /**
@@ -358,7 +410,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
358
410
  * @generated from protobuf rpc: AddMarker
359
411
  */
360
412
  addMarker(input: AddMarkerRequest, options?: RpcOptions): UnaryCall<AddMarkerRequest, AddActivityResponse> {
361
- const method = this.methods[12], opt = this._transport.mergeOptions(options);
413
+ const method = this.methods[15], opt = this._transport.mergeOptions(options);
362
414
  return stackIntercept<AddMarkerRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
363
415
  }
364
416
  /**
@@ -367,7 +419,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
367
419
  * @generated from protobuf rpc: DeleteMarker
368
420
  */
369
421
  deleteMarker(input: DeleteMarkerRequest, options?: RpcOptions): UnaryCall<DeleteMarkerRequest, DeleteDataResponse> {
370
- const method = this.methods[13], opt = this._transport.mergeOptions(options);
422
+ const method = this.methods[16], opt = this._transport.mergeOptions(options);
371
423
  return stackIntercept<DeleteMarkerRequest, DeleteDataResponse>("unary", this._transport, method, opt, input);
372
424
  }
373
425
  /**
@@ -376,7 +428,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
376
428
  * @generated from protobuf rpc: EndActiveJobTimeclocks
377
429
  */
378
430
  endActiveJobTimeclocks(input: EndActiveJobTimeclocksRequest, options?: RpcOptions): UnaryCall<EndActiveJobTimeclocksRequest, EndActiveJobTimeclocksResponse> {
379
- const method = this.methods[14], opt = this._transport.mergeOptions(options);
431
+ const method = this.methods[17], opt = this._transport.mergeOptions(options);
380
432
  return stackIntercept<EndActiveJobTimeclocksRequest, EndActiveJobTimeclocksResponse>("unary", this._transport, method, opt, input);
381
433
  }
382
434
  /**
@@ -385,7 +437,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
385
437
  * @generated from protobuf rpc: CloseUserDispatches
386
438
  */
387
439
  closeUserDispatches(input: CloseUserDispatchesRequest, options?: RpcOptions): UnaryCall<CloseUserDispatchesRequest, CloseUserDispatchesResponse> {
388
- const method = this.methods[15], opt = this._transport.mergeOptions(options);
440
+ const method = this.methods[18], opt = this._transport.mergeOptions(options);
389
441
  return stackIntercept<CloseUserDispatchesRequest, CloseUserDispatchesResponse>("unary", this._transport, method, opt, input);
390
442
  }
391
443
  /**
@@ -394,7 +446,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
394
446
  * @generated from protobuf rpc: SendJobs
395
447
  */
396
448
  sendJobs(input: SendJobsRequest, options?: RpcOptions): UnaryCall<SendJobsRequest, SendDataResponse> {
397
- const method = this.methods[16], opt = this._transport.mergeOptions(options);
449
+ const method = this.methods[19], opt = this._transport.mergeOptions(options);
398
450
  return stackIntercept<SendJobsRequest, SendDataResponse>("unary", this._transport, method, opt, input);
399
451
  }
400
452
  /**
@@ -403,7 +455,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
403
455
  * @generated from protobuf rpc: SendLicenses
404
456
  */
405
457
  sendLicenses(input: SendLicensesRequest, options?: RpcOptions): UnaryCall<SendLicensesRequest, SendDataResponse> {
406
- const method = this.methods[17], opt = this._transport.mergeOptions(options);
458
+ const method = this.methods[20], opt = this._transport.mergeOptions(options);
407
459
  return stackIntercept<SendLicensesRequest, SendDataResponse>("unary", this._transport, method, opt, input);
408
460
  }
409
461
  /**
@@ -412,7 +464,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
412
464
  * @generated from protobuf rpc: SendAccounts
413
465
  */
414
466
  sendAccounts(input: SendAccountsRequest, options?: RpcOptions): UnaryCall<SendAccountsRequest, SendDataResponse> {
415
- const method = this.methods[18], opt = this._transport.mergeOptions(options);
467
+ const method = this.methods[21], opt = this._transport.mergeOptions(options);
416
468
  return stackIntercept<SendAccountsRequest, SendDataResponse>("unary", this._transport, method, opt, input);
417
469
  }
418
470
  /**
@@ -421,7 +473,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
421
473
  * @generated from protobuf rpc: SendUsers
422
474
  */
423
475
  sendUsers(input: SendUsersRequest, options?: RpcOptions): UnaryCall<SendUsersRequest, SendDataResponse> {
424
- const method = this.methods[19], opt = this._transport.mergeOptions(options);
476
+ const method = this.methods[22], opt = this._transport.mergeOptions(options);
425
477
  return stackIntercept<SendUsersRequest, SendDataResponse>("unary", this._transport, method, opt, input);
426
478
  }
427
479
  /**
@@ -430,7 +482,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
430
482
  * @generated from protobuf rpc: SendVehicles
431
483
  */
432
484
  sendVehicles(input: SendVehiclesRequest, options?: RpcOptions): UnaryCall<SendVehiclesRequest, SendDataResponse> {
433
- const method = this.methods[20], opt = this._transport.mergeOptions(options);
485
+ const method = this.methods[23], opt = this._transport.mergeOptions(options);
434
486
  return stackIntercept<SendVehiclesRequest, SendDataResponse>("unary", this._transport, method, opt, input);
435
487
  }
436
488
  /**
@@ -439,7 +491,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
439
491
  * @generated from protobuf rpc: SendUserLocations
440
492
  */
441
493
  sendUserLocations(input: SendUserLocationsRequest, options?: RpcOptions): UnaryCall<SendUserLocationsRequest, SendDataResponse> {
442
- const method = this.methods[21], opt = this._transport.mergeOptions(options);
494
+ const method = this.methods[24], opt = this._transport.mergeOptions(options);
443
495
  return stackIntercept<SendUserLocationsRequest, SendDataResponse>("unary", this._transport, method, opt, input);
444
496
  }
445
497
  /**
@@ -448,7 +500,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
448
500
  * @generated from protobuf rpc: SetLastCharID
449
501
  */
450
502
  setLastCharID(input: SetLastCharIDRequest, options?: RpcOptions): UnaryCall<SetLastCharIDRequest, SendDataResponse> {
451
- const method = this.methods[22], opt = this._transport.mergeOptions(options);
503
+ const method = this.methods[25], opt = this._transport.mergeOptions(options);
452
504
  return stackIntercept<SetLastCharIDRequest, SendDataResponse>("unary", this._transport, method, opt, input);
453
505
  }
454
506
  /**
@@ -457,7 +509,7 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
457
509
  * @generated from protobuf rpc: DeleteUsers
458
510
  */
459
511
  deleteUsers(input: DeleteUsersRequest, options?: RpcOptions): UnaryCall<DeleteUsersRequest, DeleteDataResponse> {
460
- const method = this.methods[23], opt = this._transport.mergeOptions(options);
512
+ const method = this.methods[26], opt = this._transport.mergeOptions(options);
461
513
  return stackIntercept<DeleteUsersRequest, DeleteDataResponse>("unary", this._transport, method, opt, input);
462
514
  }
463
515
  /**
@@ -466,46 +518,47 @@ export class SyncServiceClient implements ISyncServiceClient, ServiceInfo {
466
518
  * @generated from protobuf rpc: DeleteVehicles
467
519
  */
468
520
  deleteVehicles(input: DeleteVehiclesRequest, options?: RpcOptions): UnaryCall<DeleteVehiclesRequest, DeleteDataResponse> {
469
- const method = this.methods[24], opt = this._transport.mergeOptions(options);
521
+ const method = this.methods[27], opt = this._transport.mergeOptions(options);
470
522
  return stackIntercept<DeleteVehiclesRequest, DeleteDataResponse>("unary", this._transport, method, opt, input);
471
523
  }
472
524
  /**
473
- * Used for the server to stream events to the dbsync (e.g., "refresh" of user/char data)
525
+ * Used for the server to stream events to the dbsync and for the dbsync process to
526
+ * report its current cursor state back to the server.
474
527
  *
475
528
  * @generated from protobuf rpc: Stream
476
529
  */
477
- stream(input: StreamRequest, options?: RpcOptions): ServerStreamingCall<StreamRequest, StreamResponse> {
478
- const method = this.methods[25], opt = this._transport.mergeOptions(options);
479
- return stackIntercept<StreamRequest, StreamResponse>("serverStreaming", this._transport, method, opt, input);
530
+ stream(options?: RpcOptions): DuplexStreamingCall<StreamRequest, StreamResponse> {
531
+ const method = this.methods[28], opt = this._transport.mergeOptions(options);
532
+ return stackIntercept<StreamRequest, StreamResponse>("duplex", this._transport, method, opt);
480
533
  }
481
534
  /**
482
- * DEPRECATED: For "tracking" activity such as "user received traffic infraction points", timeclock entries, etc.
535
+ * Deprecated: For "tracking" activity such as "user received traffic infraction points", timeclock entries, etc.
483
536
  *
484
537
  * @deprecated
485
538
  * @generated from protobuf rpc: AddActivity
486
539
  */
487
540
  addActivity(input: AddActivityRequest, options?: RpcOptions): UnaryCall<AddActivityRequest, AddActivityResponse> {
488
- const method = this.methods[26], opt = this._transport.mergeOptions(options);
541
+ const method = this.methods[29], opt = this._transport.mergeOptions(options);
489
542
  return stackIntercept<AddActivityRequest, AddActivityResponse>("unary", this._transport, method, opt, input);
490
543
  }
491
544
  /**
492
- * DEPRECATED: DBSync's method of sending (mass) data to the FiveNet server for storing.
545
+ * Deprecated: DBSync's method of sending (mass) data to the FiveNet server for storing.
493
546
  *
494
547
  * @deprecated
495
548
  * @generated from protobuf rpc: SendData
496
549
  */
497
550
  sendData(input: SendDataRequest, options?: RpcOptions): UnaryCall<SendDataRequest, SendDataResponse> {
498
- const method = this.methods[27], opt = this._transport.mergeOptions(options);
551
+ const method = this.methods[30], opt = this._transport.mergeOptions(options);
499
552
  return stackIntercept<SendDataRequest, SendDataResponse>("unary", this._transport, method, opt, input);
500
553
  }
501
554
  /**
502
- * DEPRECATED: Way for the gameserver to delete certain data as well
555
+ * Deprecated: Way for the gameserver to delete certain data as well
503
556
  *
504
557
  * @deprecated
505
558
  * @generated from protobuf rpc: DeleteData
506
559
  */
507
560
  deleteData(input: DeleteDataRequest, options?: RpcOptions): UnaryCall<DeleteDataRequest, DeleteDataResponse> {
508
- const method = this.methods[28], opt = this._transport.mergeOptions(options);
561
+ const method = this.methods[31], opt = this._transport.mergeOptions(options);
509
562
  return stackIntercept<DeleteDataRequest, DeleteDataResponse>("unary", this._transport, method, opt, input);
510
563
  }
511
564
  }