@fivenet-app/gen 2026.5.1 → 2026.7.2

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 (80) hide show
  1. package/clients.ts +6 -0
  2. package/codegen/perms/perms.ts +14 -2
  3. package/codegen/sanitizer/sanitizer.ts +6 -0
  4. package/google/protobuf/descriptor.ts +11 -3
  5. package/google/protobuf/timestamp.ts +7 -6
  6. package/package.json +1 -1
  7. package/perms.ts +352 -8
  8. package/resources/access/access.ts +481 -0
  9. package/resources/calendar/access/access.ts +0 -330
  10. package/resources/calendar/calendar.ts +307 -25
  11. package/resources/calendar/entries/entries.ts +204 -11
  12. package/resources/centrum/units/access/access.ts +0 -373
  13. package/resources/centrum/units/units.ts +20 -8
  14. package/resources/citizens/labels/access.ts +0 -191
  15. package/resources/citizens/labels/labels.ts +20 -8
  16. package/resources/clientconfig/clientconfig.ts +11 -0
  17. package/resources/common/content/diff_activity.ts +1 -1
  18. package/resources/cron/cron.ts +1 -1
  19. package/resources/documents/access/access.ts +0 -329
  20. package/resources/documents/activity/activity.ts +49 -45
  21. package/resources/documents/documents.ts +1 -1
  22. package/resources/documents/requests/requests.ts +1 -1
  23. package/resources/documents/stamps/stamp.ts +40 -210
  24. package/resources/documents/templates/templates.ts +158 -318
  25. package/resources/jobs/colleagues/activity/activity.ts +1 -1
  26. package/resources/jobs/conduct/conduct.ts +2 -2
  27. package/resources/jobs/labels/labels.ts +9 -9
  28. package/resources/laws/laws.ts +24 -0
  29. package/resources/livemap/markers/marker_marker.ts +311 -4
  30. package/resources/mailer/access/access.ts +0 -457
  31. package/resources/mailer/emails/email.ts +4 -4
  32. package/resources/notifications/events/events.ts +37 -2
  33. package/resources/qualifications/access/access.ts +0 -248
  34. package/resources/qualifications/qualifications.ts +9 -9
  35. package/resources/settings/config.ts +64 -5
  36. package/resources/settings/data.ts +1 -1
  37. package/resources/stats/stats.ts +32 -20
  38. package/resources/sync/data/data.ts +26 -1
  39. package/resources/timestamp/timestamp.ts +1 -1
  40. package/resources/userinfo/userinfo.ts +202 -51
  41. package/resources/users/activity/activity.ts +1 -1
  42. package/resources/vehicles/activity/activity.ts +146 -10
  43. package/resources/wiki/access/access.ts +0 -330
  44. package/resources/wiki/activity/activity.ts +45 -45
  45. package/resources/wiki/page.ts +9 -9
  46. package/services/auth/auth.client.ts +15 -2
  47. package/services/auth/auth.ts +135 -0
  48. package/services/calendar/calendar.ts +1 -1
  49. package/services/calendar/entries.ts +12 -1
  50. package/services/centrum/dispatches.ts +27 -7
  51. package/services/centrum/units.client.ts +15 -2
  52. package/services/centrum/units.ts +231 -123
  53. package/services/citizens/citizens.ts +1 -1
  54. package/services/citizens/labels.client.ts +7 -20
  55. package/services/citizens/labels.ts +35 -183
  56. package/services/documents/approval.ts +15 -4
  57. package/services/documents/collab.ts +1 -1
  58. package/services/documents/documents.ts +38 -38
  59. package/services/documents/stats.ts +14 -2
  60. package/services/filestore/filestore.ts +4 -4
  61. package/services/jobs/colleagues.ts +3 -3
  62. package/services/jobs/conduct.ts +15 -4
  63. package/services/jobs/groups.client.ts +22 -0
  64. package/services/jobs/groups.ts +9 -0
  65. package/services/jobs/timeclock.ts +2 -2
  66. package/services/mailer/thread.ts +2 -2
  67. package/services/qualifications/qualifications.ts +52 -34
  68. package/services/settings/accounts.ts +5 -5
  69. package/services/settings/config.ts +2 -2
  70. package/services/settings/cron.ts +2 -2
  71. package/services/settings/laws.client.ts +28 -2
  72. package/services/settings/laws.ts +229 -1
  73. package/services/settings/system.ts +6 -6
  74. package/services/sync/sync.client.ts +129 -20
  75. package/services/sync/sync.ts +262 -19
  76. package/services/vehicles/vehicles.client.ts +13 -0
  77. package/services/vehicles/vehicles.ts +181 -13
  78. package/services/wiki/wiki.client.ts +15 -2
  79. package/services/wiki/wiki.ts +122 -0
  80. package/svcs.ts +21 -2
@@ -2,57 +2,6 @@
2
2
  // @generated from protobuf file "resources/citizens/labels/access.proto" (package "resources.citizens.labels", syntax proto3)
3
3
  // tslint:disable
4
4
  // @ts-nocheck
5
- import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
6
- import type { IBinaryWriter } from "@protobuf-ts/runtime";
7
- import { WireType } from "@protobuf-ts/runtime";
8
- import type { BinaryReadOptions } from "@protobuf-ts/runtime";
9
- import type { IBinaryReader } from "@protobuf-ts/runtime";
10
- import { UnknownFieldHandler } from "@protobuf-ts/runtime";
11
- import type { PartialMessage } from "@protobuf-ts/runtime";
12
- import { reflectionMergePartial } from "@protobuf-ts/runtime";
13
- import { MessageType } from "@protobuf-ts/runtime";
14
- /**
15
- * @generated from protobuf message resources.citizens.labels.LabelAccess
16
- */
17
- export interface LabelAccess {
18
- /**
19
- * @generated from protobuf field: repeated resources.citizens.labels.JobAccess jobs = 1
20
- */
21
- jobs: JobAccess[];
22
- }
23
- /**
24
- * @generated from protobuf message resources.citizens.labels.JobAccess
25
- */
26
- export interface JobAccess {
27
- /**
28
- * @generated from protobuf field: int64 id = 1
29
- */
30
- id: number;
31
- /**
32
- * @generated from protobuf field: int64 target_id = 2
33
- */
34
- targetId: number;
35
- /**
36
- * @generated from protobuf field: string job = 3
37
- */
38
- job: string;
39
- /**
40
- * @generated from protobuf field: optional string job_label = 4
41
- */
42
- jobLabel?: string;
43
- /**
44
- * @generated from protobuf field: int32 minimum_grade = 5
45
- */
46
- minimumGrade: number;
47
- /**
48
- * @generated from protobuf field: optional string job_grade_label = 6
49
- */
50
- jobGradeLabel?: string;
51
- /**
52
- * @generated from protobuf field: resources.citizens.labels.AccessLevel access = 7
53
- */
54
- access: AccessLevel;
55
- }
56
5
  /**
57
6
  * @generated from protobuf enum resources.citizens.labels.AccessLevel
58
7
  */
@@ -74,143 +23,3 @@ export enum AccessLevel {
74
23
  */
75
24
  REMOVE = 3
76
25
  }
77
- // @generated message type with reflection information, may provide speed optimized methods
78
- class LabelAccess$Type extends MessageType<LabelAccess> {
79
- constructor() {
80
- super("resources.citizens.labels.LabelAccess", [
81
- { no: 1, name: "jobs", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => JobAccess, options: { "buf.validate.field": { repeated: { maxItems: "20" } }, "tagger.tags": "alias:\"job_access\"" } }
82
- ], { "codegen.dbscanner.dbscanner": { enabled: true } });
83
- }
84
- create(value?: PartialMessage<LabelAccess>): LabelAccess {
85
- const message = globalThis.Object.create((this.messagePrototype!));
86
- message.jobs = [];
87
- if (value !== undefined)
88
- reflectionMergePartial<LabelAccess>(this, message, value);
89
- return message;
90
- }
91
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LabelAccess): LabelAccess {
92
- let message = target ?? this.create(), end = reader.pos + length;
93
- while (reader.pos < end) {
94
- let [fieldNo, wireType] = reader.tag();
95
- switch (fieldNo) {
96
- case /* repeated resources.citizens.labels.JobAccess jobs */ 1:
97
- message.jobs.push(JobAccess.internalBinaryRead(reader, reader.uint32(), options));
98
- break;
99
- default:
100
- let u = options.readUnknownField;
101
- if (u === "throw")
102
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
103
- let d = reader.skip(wireType);
104
- if (u !== false)
105
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
106
- }
107
- }
108
- return message;
109
- }
110
- internalBinaryWrite(message: LabelAccess, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
111
- /* repeated resources.citizens.labels.JobAccess jobs = 1; */
112
- for (let i = 0; i < message.jobs.length; i++)
113
- JobAccess.internalBinaryWrite(message.jobs[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
114
- let u = options.writeUnknownFields;
115
- if (u !== false)
116
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
117
- return writer;
118
- }
119
- }
120
- /**
121
- * @generated MessageType for protobuf message resources.citizens.labels.LabelAccess
122
- */
123
- export const LabelAccess = new LabelAccess$Type();
124
- // @generated message type with reflection information, may provide speed optimized methods
125
- class JobAccess$Type extends MessageType<JobAccess> {
126
- constructor() {
127
- super("resources.citizens.labels.JobAccess", [
128
- { no: 1, name: "id", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/, options: { "tagger.tags": "sql:\"primary_key\"" } },
129
- { no: 2, name: "target_id", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/ },
130
- { no: 3, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } } } },
131
- { no: 4, name: "job_label", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "50" } } } },
132
- { no: 5, name: "minimum_grade", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 0 } } } },
133
- { no: 6, name: "job_grade_label", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "50" } } } },
134
- { no: 7, name: "access", kind: "enum", T: () => ["resources.citizens.labels.AccessLevel", AccessLevel, "ACCESS_LEVEL_"], options: { "buf.validate.field": { enum: { definedOnly: true } } } }
135
- ]);
136
- }
137
- create(value?: PartialMessage<JobAccess>): JobAccess {
138
- const message = globalThis.Object.create((this.messagePrototype!));
139
- message.id = 0;
140
- message.targetId = 0;
141
- message.job = "";
142
- message.minimumGrade = 0;
143
- message.access = 0;
144
- if (value !== undefined)
145
- reflectionMergePartial<JobAccess>(this, message, value);
146
- return message;
147
- }
148
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: JobAccess): JobAccess {
149
- let message = target ?? this.create(), end = reader.pos + length;
150
- while (reader.pos < end) {
151
- let [fieldNo, wireType] = reader.tag();
152
- switch (fieldNo) {
153
- case /* int64 id */ 1:
154
- message.id = reader.int64().toNumber();
155
- break;
156
- case /* int64 target_id */ 2:
157
- message.targetId = reader.int64().toNumber();
158
- break;
159
- case /* string job */ 3:
160
- message.job = reader.string();
161
- break;
162
- case /* optional string job_label */ 4:
163
- message.jobLabel = reader.string();
164
- break;
165
- case /* int32 minimum_grade */ 5:
166
- message.minimumGrade = reader.int32();
167
- break;
168
- case /* optional string job_grade_label */ 6:
169
- message.jobGradeLabel = reader.string();
170
- break;
171
- case /* resources.citizens.labels.AccessLevel access */ 7:
172
- message.access = reader.int32();
173
- break;
174
- default:
175
- let u = options.readUnknownField;
176
- if (u === "throw")
177
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
178
- let d = reader.skip(wireType);
179
- if (u !== false)
180
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
181
- }
182
- }
183
- return message;
184
- }
185
- internalBinaryWrite(message: JobAccess, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
186
- /* int64 id = 1; */
187
- if (message.id !== 0)
188
- writer.tag(1, WireType.Varint).int64(message.id);
189
- /* int64 target_id = 2; */
190
- if (message.targetId !== 0)
191
- writer.tag(2, WireType.Varint).int64(message.targetId);
192
- /* string job = 3; */
193
- if (message.job !== "")
194
- writer.tag(3, WireType.LengthDelimited).string(message.job);
195
- /* optional string job_label = 4; */
196
- if (message.jobLabel !== undefined)
197
- writer.tag(4, WireType.LengthDelimited).string(message.jobLabel);
198
- /* int32 minimum_grade = 5; */
199
- if (message.minimumGrade !== 0)
200
- writer.tag(5, WireType.Varint).int32(message.minimumGrade);
201
- /* optional string job_grade_label = 6; */
202
- if (message.jobGradeLabel !== undefined)
203
- writer.tag(6, WireType.LengthDelimited).string(message.jobGradeLabel);
204
- /* resources.citizens.labels.AccessLevel access = 7; */
205
- if (message.access !== 0)
206
- writer.tag(7, WireType.Varint).int32(message.access);
207
- let u = options.writeUnknownFields;
208
- if (u !== false)
209
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
210
- return writer;
211
- }
212
- }
213
- /**
214
- * @generated MessageType for protobuf message resources.citizens.labels.JobAccess
215
- */
216
- export const JobAccess = new JobAccess$Type();
@@ -12,7 +12,7 @@ import type { PartialMessage } from "@protobuf-ts/runtime";
12
12
  import { reflectionMergePartial } from "@protobuf-ts/runtime";
13
13
  import { MessageType } from "@protobuf-ts/runtime";
14
14
  import { Duration } from "../../../google/protobuf/duration";
15
- import { LabelAccess } from "./access";
15
+ import { Access } from "../../access/access";
16
16
  import { Timestamp } from "../../timestamp/timestamp";
17
17
  /**
18
18
  * @generated from protobuf message resources.citizens.labels.Labels
@@ -47,6 +47,10 @@ export interface Label {
47
47
  * @generated from protobuf field: optional string job = 5
48
48
  */
49
49
  job?: string;
50
+ /**
51
+ * @generated from protobuf field: int32 sort_order = 12
52
+ */
53
+ sortOrder: number;
50
54
  /**
51
55
  * @generated from protobuf field: string name = 6
52
56
  */
@@ -64,9 +68,9 @@ export interface Label {
64
68
  */
65
69
  settings?: Settings;
66
70
  /**
67
- * @generated from protobuf field: optional resources.citizens.labels.LabelAccess access = 10
71
+ * @generated from protobuf field: optional resources.access.Access access = 10
68
72
  */
69
- access?: LabelAccess;
73
+ access?: Access;
70
74
  /**
71
75
  * Citizen label assignment data
72
76
  *
@@ -147,17 +151,19 @@ class Label$Type extends MessageType<Label> {
147
151
  { no: 3, name: "updated_at", kind: "message", T: () => Timestamp },
148
152
  { no: 4, name: "deleted_at", kind: "message", T: () => Timestamp },
149
153
  { no: 5, name: "job", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } } } },
154
+ { no: 12, name: "sort_order", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 0 } } } },
150
155
  { no: 6, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "48" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
151
156
  { no: 7, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { len: "7", pattern: "^#[A-Fa-f0-9]{6}$" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
152
157
  { no: 8, name: "icon", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "128" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
153
158
  { no: 9, name: "settings", kind: "message", T: () => Settings },
154
- { no: 10, name: "access", kind: "message", T: () => LabelAccess, options: { "buf.validate.field": { required: true } } },
159
+ { no: 10, name: "access", kind: "message", T: () => Access, options: { "buf.validate.field": { required: true } } },
155
160
  { no: 11, name: "expires_at", kind: "message", T: () => Timestamp }
156
161
  ]);
157
162
  }
158
163
  create(value?: PartialMessage<Label>): Label {
159
164
  const message = globalThis.Object.create((this.messagePrototype!));
160
165
  message.id = 0;
166
+ message.sortOrder = 0;
161
167
  message.name = "";
162
168
  message.color = "";
163
169
  if (value !== undefined)
@@ -184,6 +190,9 @@ class Label$Type extends MessageType<Label> {
184
190
  case /* optional string job */ 5:
185
191
  message.job = reader.string();
186
192
  break;
193
+ case /* int32 sort_order */ 12:
194
+ message.sortOrder = reader.int32();
195
+ break;
187
196
  case /* string name */ 6:
188
197
  message.name = reader.string();
189
198
  break;
@@ -196,8 +205,8 @@ class Label$Type extends MessageType<Label> {
196
205
  case /* optional resources.citizens.labels.Settings settings */ 9:
197
206
  message.settings = Settings.internalBinaryRead(reader, reader.uint32(), options, message.settings);
198
207
  break;
199
- case /* optional resources.citizens.labels.LabelAccess access */ 10:
200
- message.access = LabelAccess.internalBinaryRead(reader, reader.uint32(), options, message.access);
208
+ case /* optional resources.access.Access access */ 10:
209
+ message.access = Access.internalBinaryRead(reader, reader.uint32(), options, message.access);
201
210
  break;
202
211
  case /* optional resources.timestamp.Timestamp expires_at */ 11:
203
212
  message.expiresAt = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.expiresAt);
@@ -241,12 +250,15 @@ class Label$Type extends MessageType<Label> {
241
250
  /* optional resources.citizens.labels.Settings settings = 9; */
242
251
  if (message.settings)
243
252
  Settings.internalBinaryWrite(message.settings, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
244
- /* optional resources.citizens.labels.LabelAccess access = 10; */
253
+ /* optional resources.access.Access access = 10; */
245
254
  if (message.access)
246
- LabelAccess.internalBinaryWrite(message.access, writer.tag(10, WireType.LengthDelimited).fork(), options).join();
255
+ Access.internalBinaryWrite(message.access, writer.tag(10, WireType.LengthDelimited).fork(), options).join();
247
256
  /* optional resources.timestamp.Timestamp expires_at = 11; */
248
257
  if (message.expiresAt)
249
258
  Timestamp.internalBinaryWrite(message.expiresAt, writer.tag(11, WireType.LengthDelimited).fork(), options).join();
259
+ /* int32 sort_order = 12; */
260
+ if (message.sortOrder !== 0)
261
+ writer.tag(12, WireType.Varint).int32(message.sortOrder);
250
262
  let u = options.writeUnknownFields;
251
263
  if (u !== false)
252
264
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -26,6 +26,10 @@ export interface ClientConfig {
26
26
  * @generated from protobuf field: string version = 1
27
27
  */
28
28
  version: string;
29
+ /**
30
+ * @generated from protobuf field: optional bool setup_complete = 13
31
+ */
32
+ setupComplete?: boolean;
29
33
  /**
30
34
  * @generated from protobuf field: string default_locale = 2
31
35
  */
@@ -193,6 +197,7 @@ class ClientConfig$Type extends MessageType<ClientConfig> {
193
197
  constructor() {
194
198
  super("resources.clientconfig.ClientConfig", [
195
199
  { no: 1, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"version\"" } },
200
+ { no: 13, name: "setup_complete", kind: "scalar", opt: true, T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"setupComplete\"" } },
196
201
  { no: 2, name: "default_locale", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"defaultLocale\"" } },
197
202
  { no: 3, name: "auth", kind: "message", T: () => Auth, options: { "tagger.tags": "json:\"auth\"" } },
198
203
  { no: 4, name: "discord", kind: "message", T: () => Discord, options: { "tagger.tags": "json:\"discord\"" } },
@@ -221,6 +226,9 @@ class ClientConfig$Type extends MessageType<ClientConfig> {
221
226
  case /* string version */ 1:
222
227
  message.version = reader.string();
223
228
  break;
229
+ case /* optional bool setup_complete */ 13:
230
+ message.setupComplete = reader.bool();
231
+ break;
224
232
  case /* string default_locale */ 2:
225
233
  message.defaultLocale = reader.string();
226
234
  break;
@@ -296,6 +304,9 @@ class ClientConfig$Type extends MessageType<ClientConfig> {
296
304
  /* resources.settings.Data data = 12; */
297
305
  if (message.data)
298
306
  Data.internalBinaryWrite(message.data, writer.tag(12, WireType.LengthDelimited).fork(), options).join();
307
+ /* optional bool setup_complete = 13; */
308
+ if (message.setupComplete !== undefined)
309
+ writer.tag(13, WireType.Varint).bool(message.setupComplete);
299
310
  let u = options.writeUnknownFields;
300
311
  if (u !== false)
301
312
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -97,7 +97,7 @@ export enum Kind {
97
97
  class ContentDiffOp$Type extends MessageType<ContentDiffOp> {
98
98
  constructor() {
99
99
  super("resources.common.content.ContentDiffOp", [
100
- { no: 1, name: "kind", kind: "enum", T: () => ["resources.common.content.Kind", Kind, "KIND_"] },
100
+ { no: 1, name: "kind", kind: "enum", T: () => ["resources.common.content.Kind", Kind, "KIND_"], options: { "buf.validate.field": { enum: { definedOnly: true } } } },
101
101
  { no: 2, name: "text", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
102
102
  ]);
103
103
  }
@@ -209,7 +209,7 @@ class Cronjob$Type extends MessageType<Cronjob> {
209
209
  super("resources.cron.Cronjob", [
210
210
  { no: 1, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
211
211
  { no: 2, name: "schedule", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
212
- { no: 3, name: "state", kind: "enum", T: () => ["resources.cron.CronjobState", CronjobState, "CRONJOB_STATE_"] },
212
+ { no: 3, name: "state", kind: "enum", T: () => ["resources.cron.CronjobState", CronjobState, "CRONJOB_STATE_"], options: { "buf.validate.field": { enum: { definedOnly: true } } } },
213
213
  { no: 4, name: "next_schedule_time", kind: "message", T: () => Timestamp },
214
214
  { no: 5, name: "last_attempt_time", kind: "message", T: () => Timestamp },
215
215
  { no: 6, name: "started_time", kind: "message", T: () => Timestamp },