@milaboratories/pl-client 2.18.5 → 3.0.0

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 (52) hide show
  1. package/dist/core/ll_client.cjs +11 -5
  2. package/dist/core/ll_client.cjs.map +1 -1
  3. package/dist/core/ll_client.js +12 -6
  4. package/dist/core/ll_client.js.map +1 -1
  5. package/dist/core/transaction.cjs +2 -2
  6. package/dist/core/transaction.cjs.map +1 -1
  7. package/dist/core/transaction.js +2 -2
  8. package/dist/core/transaction.js.map +1 -1
  9. package/dist/core/type_conversion.cjs +1 -1
  10. package/dist/core/type_conversion.cjs.map +1 -1
  11. package/dist/core/type_conversion.js +1 -1
  12. package/dist/core/type_conversion.js.map +1 -1
  13. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.cjs +1957 -256
  14. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.cjs.map +1 -1
  15. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs +59 -9
  16. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs.map +1 -1
  17. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.d.ts +74 -4
  18. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.js +59 -9
  19. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.js.map +1 -1
  20. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.d.ts +658 -51
  21. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.js +1957 -257
  22. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.js.map +1 -1
  23. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs +247 -17
  24. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs.map +1 -1
  25. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.d.ts +104 -10
  26. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.js +247 -17
  27. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.js.map +1 -1
  28. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs +26 -12
  29. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs.map +1 -1
  30. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.d.ts +4 -0
  31. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.js +26 -12
  32. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.js.map +1 -1
  33. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs +11 -0
  34. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs.map +1 -1
  35. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.d.ts +4 -0
  36. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js +11 -0
  37. package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js.map +1 -1
  38. package/dist/proto-rest/plapi.d.ts +281 -28
  39. package/package.json +2 -2
  40. package/src/core/ll_client.ts +9 -2
  41. package/src/core/transaction.ts +33 -8
  42. package/src/core/type_conversion.ts +1 -1
  43. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.ts +119 -15
  44. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.ts +2270 -322
  45. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.ts +276 -20
  46. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.ts +11 -0
  47. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/import.ts +2 -2
  48. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.ts +11 -0
  49. package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/ws-test.ts +3 -3
  50. package/src/proto-grpc/google/protobuf/descriptor.ts +2 -5
  51. package/src/proto-grpc/google/protobuf/struct.ts +1 -1
  52. package/src/proto-rest/plapi.ts +293 -22
@@ -11,6 +11,7 @@ import { UnknownFieldHandler } from "@protobuf-ts/runtime";
11
11
  import type { PartialMessage } from "@protobuf-ts/runtime";
12
12
  import { reflectionMergePartial } from "@protobuf-ts/runtime";
13
13
  import { MessageType } from "@protobuf-ts/runtime";
14
+ import { Timestamp } from "../../../../../google/protobuf/timestamp";
14
15
  import { Duration } from "../../../../../google/protobuf/duration";
15
16
  import { ResourceAPIFeature } from "./api_types";
16
17
  import { Controller } from "./api_types";
@@ -26,22 +27,22 @@ import { ResourceType } from "./base_types";
26
27
  import { Tx } from "./api_types";
27
28
  import { Status } from "../../../../googleapis/googleapis/google/rpc/status";
28
29
  /**
29
- * Platform transactions on API level are implemented as bidirectional
30
+ * Platform transactions at the API level are implemented as bidirectional
30
31
  * streams that exist in parallel with transactions.
31
32
  * One stream = one transaction at all times.
32
33
  *
33
- * Long story short from client side:
34
+ * Long story short from the client side:
34
35
  * - client initializes stream and immediately gets transaction info
35
36
  * message from server;
36
37
  * - client calls server methods by sending messages to the server,
37
38
  * each message has its own request ID starting from 1, request ID number
38
39
  * grows as new messages are sent to the server;
39
- * - client reads server responses for each messages sent. Client can batch
40
+ * - client reads server responses for each message sent. Client can batch
40
41
  * writes and reads: e.g. send 3 messages, read 2 responses, send one
41
42
  * more, read 2;
42
- * - to finish communication client sends 'commit' or 'discard' message and reads last
43
+ * - to finish communication, the client sends a 'commit' or 'discard' message and reads last
43
44
  * response;
44
- * - to make server interrupt communication, client sends 'stream_close' message and reads to the last
45
+ * - to make the server interrupt communication, the client sends a 'stream_close' message and reads up to the last
45
46
  * server response. This allows graceful stream close, waiting for all queued server responses
46
47
  * to be sent before closing the stream.
47
48
  *
@@ -51,24 +52,24 @@ import { Status } from "../../../../googleapis/googleapis/google/rpc/status";
51
52
  *
52
53
  * 1. Initialization:
53
54
  *
54
- * - client opens new bidirectional stream by calling 'Tx' gRPC method;
55
- * - client sends 'tx_open' message with request_id = 0 to open RO or RW
55
+ * - the client opens a new bidirectional stream by calling 'Tx' gRPC method;
56
+ * - the client sends a 'tx_open' message with request_id = 0 to open RO or RW
56
57
  * transaction.
57
- * Any message from client other than 'tx_open' during initialization is
58
- * treated as communication error and causes server to close the stream;
59
- * - server opens new transaction and sends transaction info to the client
60
- * 'tx_open' server message;
58
+ * Any message from the client other than 'tx_open' during initialization is
59
+ * treated as a communication error and causes the server to close the stream;
60
+ * - the server opens a new transaction and sends transaction info to the client
61
+ * in a 'tx_open' server message;
61
62
  *
62
63
  * 2. Communication:
63
64
  *
64
65
  * Once the transaction gets initialized, all the communication between
65
- * client and server should be considered as request-response sequence.
66
- * The only difference to simple gRPC call is that sending a request does not
67
- * block client until the response arrives from server.
66
+ * client and server should be considered a request-response sequence.
67
+ * The only difference from a simple gRPC call is that sending a request does not
68
+ * block the client until the response arrives from the server.
68
69
  *
69
- * Client can send as many requests to the server as it wants before
70
- * reading responses. This allows client to batch method calls, when it is not
71
- * interested in result of each action, but needs only overall summary of
70
+ * The client can send as many requests to the server as it wants before
71
+ * reading responses. This allows the client to batch method calls, when it is not
72
+ * interested in the result of each action, but needs only the overall summary of
72
73
  * transaction commit.
73
74
  * For example, the following sequence is totally valid from client side:
74
75
  * 1. send reqA.
@@ -78,69 +79,69 @@ import { Status } from "../../../../googleapis/googleapis/google/rpc/status";
78
79
  * 5. get respB.
79
80
  * 6. get respC.
80
81
  *
81
- * Here are detailed rules of client-server communication inside transaction
82
+ * Here are the detailed rules of client-server communication inside transaction
82
83
  * stream:
83
- * - if stream is closed by client or interrupted by any unrecoverable
84
- * communication error, the accompanied transaction is discarded;
85
- * - each message in client stream (from client to server) is considered as
86
- * method call.
87
- * E.g. 'resource_remove' makes server to actually remove resource inside
88
- * transaction, bound to current stream;
89
- * - each message in client stream MUST have its own ID (request_id),
90
- * generated by client, UNIQUE for transaction. Numeration starts from
91
- * 1 for each at this step. request_id == 0 is treated as unrecoverable
92
- * communication error by server and cancels transaction;
93
- * - server expects 'request_id' from client to grow constantly by one as
84
+ * - if the stream is closed by the client or interrupted by any unrecoverable
85
+ * communication error, the accompanying transaction is discarded;
86
+ * - each message in the client stream (from client to server) is considered
87
+ * a method call.
88
+ * E.g. 'resource_remove' makes the server actually remove the resource inside
89
+ * the transaction bound to the current stream;
90
+ * - each message in the client stream MUST have its own ID (request_id),
91
+ * generated by the client, UNIQUE for the transaction. Numbering starts from
92
+ * 1 for each new transaction. request_id == 0 is treated as an unrecoverable
93
+ * communication error by the server and cancels the transaction;
94
+ * - server expects 'request_id' from the client to grow consecutively by one as
94
95
  * messages come. If message M2 arrives next to M1 and
95
96
  * M2.request_id != (M1.request_id + 1)
96
- * server treats it as unrecoverable communication error and cancels
97
- * transaction;
98
- * - all messages in server stream (from server to client) in communication
99
- * stage have the same 'request_id' as the client messages, that triggered
100
- * the operation. This allows client to match server responses to the
97
+ * server treats it as an unrecoverable communication error and cancels
98
+ * the transaction;
99
+ * - all messages in the server stream (from server to client) in the communication
100
+ * stage have the same 'request_id' as the client messages that triggered
101
+ * the operation. This allows the client to match server responses to the
101
102
  * requests it sent earlier;
102
- * - messages order in server stream matches order in client stream: if
103
- * client sent sequence [ReqA, ReqB], the server will always response
103
+ * - message order in the server stream matches the order in the client stream: if
104
+ * the client sent sequence [ReqA, ReqB], the server will always respond with
104
105
  * [RespA, RespB];
105
- * - server can send several responses to single client request (multi-message
106
+ * - the server can send several responses to a single client request (multi-message
106
107
  * response). In that case, all such responses will have the same 'request_id'
107
- * (the one from client request), but different message IDs. See
108
+ * (the one from the client request), but different message IDs. See
108
109
  * 'Multi-message responses' section below for more info.
109
- * - client is allowed (but not obligated) to generate local IDs for new
110
+ * - the client is allowed (but not obligated) to generate local IDs for new
110
111
  * instances and use them in links and other references. These local IDs
111
- * are valid only within current transaction;
112
- * - any instance in server stream always has _real_ global ID that is valid
113
- * at any times in any other request outside current transaction;
112
+ * are valid only within the current transaction;
113
+ * - any instance in the server stream always has a _real_ global ID that is valid
114
+ * at any time in any other request outside the current transaction;
114
115
  *
115
116
  * 3. Finalization:
116
117
  *
117
- * - client finalizes transaction by sending 'tx_commit' or 'tx_discard'
118
- * message to the server. After that client can close client stream as any
118
+ * - the client finalizes the transaction by sending a 'tx_commit' or 'tx_discard'
119
+ * message to the server. After that, the client can close the client stream as any
119
120
  * message sent to the server after commit/discard will be ignored anyway;
120
- * - server stops reading client stream and does the commit/discard action.
121
- * - once transaction is closed, server sends the result to client and
122
- * closes server stream.
123
- * - client stream reading may be interrupted by special 'stream_close' message, which
124
- * causes transaction automatic discard and does not produce additional reply message.
121
+ * - the server stops reading the client stream and does the commit/discard action.
122
+ * - once the transaction is closed, the server sends the result to the client and
123
+ * closes the server stream.
124
+ * - the client stream reading may be interrupted by a special 'stream_close' message, which
125
+ * causes automatic transaction discard and does not produce an additional reply message.
125
126
  * This 'stream_close' message also does not require any 'request_id' value and does not
126
- * produce any response from server side.
127
+ * produce any response from the server side.
127
128
  *
128
- * At this point the transaction over gRPC is considered as finalized, all
129
+ * At this point the transaction over gRPC is considered finalized, all
129
130
  * local IDs generated within the transaction are no longer valid.
130
131
  *
131
132
  * Multi-message responses
132
133
  *
133
134
  * Some transaction methods produce several messages by design, causing
134
- * single call to result in multiple responses. Listings are the clear
135
+ * a single call to result in multiple responses. Listings are a clear
135
136
  * example of that.
136
- * All responses from server have special field (multi_message) with all meta
137
- * info on multi-message response:
137
+ * All responses from the server have a special field (multi_message) with all meta
138
+ * info on multi-message responses:
138
139
  * - for single-message responses, multi_message is always empty;
139
140
  * - for multi-message responses, multi_message.id is always > 0;
140
- * - all messages in multi-message response have request_id equal to request_id from
141
- * original client's request message;
142
- * - last message in multi-message response always has multi_message.is_last = true;
143
- * - empty multi-message response always has:
141
+ * - all messages in a multi-message response have request_id equal to request_id from
142
+ * the original client's request message;
143
+ * - the last message in a multi-message response always has multi_message.is_last = true;
144
+ * - an empty multi-message response always has:
144
145
  * multi_message.is_last = true;
145
146
  * multi_message.is_empty = true.
146
147
  *
@@ -181,15 +182,15 @@ export interface TxAPI_ClientMessage {
181
182
  } | {
182
183
  oneofKind: "streamClose";
183
184
  /**
184
- * Interrupt the transaction network stream on server side.
185
+ * Interrupt the transaction network stream on the server side.
185
186
  *
186
- * This allows to gracefully close network connection and discard the associated transaction,
187
+ * This allows one to gracefully close the network connection and discard the associated transaction,
187
188
  * ensuring all pending server responses are sent to the client before closing.
188
- * We use this in RO transactions to imitate the feature of 'half-open' connection
189
+ * We use this in RO transactions to imitate the feature of a 'half-open' connection
189
190
  * available in pure gRPC, when we work with WebSockets.
190
- * Pure gRPC uses 'end of client messages stream' as a criteria for graceful discard.
191
- * Pure WebSocket does not allow this, breaking entire connection at once. stream_close helps to get
192
- * behaviour as we have for gRPC.
191
+ * Pure gRPC uses 'end of the client message stream' as a criterion for graceful discard.
192
+ * Pure WebSocket does not allow this, breaking the entire connection at once. stream_close helps
193
+ * achieve the same behavior as in gRPC.
193
194
  *
194
195
  * @generated from protobuf field: MiLaboratories.PL.API.TxAPI.CloseStream.Request stream_close = 14
195
196
  */
@@ -277,7 +278,7 @@ export interface TxAPI_ClientMessage {
277
278
  /**
278
279
  * @generated from protobuf field: MiLaboratories.PL.API.ResourceAPI.SetError.Request resource_set_error = 61
279
280
  */
280
- resourceSetError: ResourceAPI_SetError_Request; // create a special field and set error there.
281
+ resourceSetError: ResourceAPI_SetError_Request; // create a special field and set an error there.
281
282
  } | {
282
283
  oneofKind: "resourceListByType";
283
284
  /**
@@ -331,7 +332,7 @@ export interface TxAPI_ClientMessage {
331
332
  /**
332
333
  * @generated from protobuf field: MiLaboratories.PL.API.FieldAPI.Exists.Request field_exists = 107
333
334
  */
334
- fieldExists: FieldAPI_Exists_Request; // add field to resource
335
+ fieldExists: FieldAPI_Exists_Request; // check if field exists
335
336
  } | {
336
337
  oneofKind: "fieldSet";
337
338
  /**
@@ -385,7 +386,7 @@ export interface TxAPI_ClientMessage {
385
386
  /**
386
387
  * @generated from protobuf field: MiLaboratories.PL.API.SubscriptionAPI.DetachFilter.Request subscription_detach_filter = 113
387
388
  */
388
- subscriptionDetachFilter: SubscriptionAPI_DetachFilter_Request; // add filter to existing subscription
389
+ subscriptionDetachFilter: SubscriptionAPI_DetachFilter_Request; // detach filter from existing subscription
389
390
  } | {
390
391
  oneofKind: "subscriptionCreateFilter";
391
392
  /**
@@ -403,13 +404,13 @@ export interface TxAPI_ClientMessage {
403
404
  /**
404
405
  * @generated from protobuf field: MiLaboratories.PL.API.NotificationAPI.Ack.Request notification_ack = 155
405
406
  */
406
- notificationAck: NotificationAPI_Ack_Request; // acknowledge notification handle by controller
407
+ notificationAck: NotificationAPI_Ack_Request; // acknowledge notification handled by controller
407
408
  } | {
408
409
  oneofKind: "notificationDiscard";
409
410
  /**
410
411
  * @generated from protobuf field: MiLaboratories.PL.API.NotificationAPI.Discard.Request notification_discard = 156
411
412
  */
412
- notificationDiscard: NotificationAPI_Discard_Request; // discard notification handle by controller
413
+ notificationDiscard: NotificationAPI_Discard_Request; // discard notification handled by controller
413
414
  } | {
414
415
  oneofKind: "resourceKeyValueSet";
415
416
  /**
@@ -503,9 +504,10 @@ export interface TxAPI_ClientMessage {
503
504
  } | {
504
505
  oneofKind: "cacheDeleteExpiredRecords";
505
506
  /**
506
- * @generated from protobuf field: MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Request cache_delete_expired_records = 301
507
+ * @deprecated
508
+ * @generated from protobuf field: MiLaboratories.PL.API.Util.Deprecated cache_delete_expired_records = 301 [deprecated = true]
507
509
  */
508
- cacheDeleteExpiredRecords: CacheAPI_DeleteExpiredRecords_Request; // iterate through all records and delete expired.
510
+ cacheDeleteExpiredRecords: Util_Deprecated;
509
511
  } | {
510
512
  oneofKind: "controllerFeaturesSet";
511
513
  /**
@@ -518,6 +520,12 @@ export interface TxAPI_ClientMessage {
518
520
  * @generated from protobuf field: MiLaboratories.PL.API.ControllerAPI.ClearFeatures.Request controller_features_clear = 351
519
521
  */
520
522
  controllerFeaturesClear: ControllerAPI_ClearFeatures_Request; // clear list of resource features, provided by controller.
523
+ } | {
524
+ oneofKind: "setDefaultColor";
525
+ /**
526
+ * @generated from protobuf field: MiLaboratories.PL.API.TxAPI.SetDefaultColor.Request set_default_color = 400
527
+ */
528
+ setDefaultColor: TxAPI_SetDefaultColor_Request; // set default color for resource creation
521
529
  } | {
522
530
  oneofKind: undefined;
523
531
  };
@@ -873,9 +881,10 @@ export interface TxAPI_ServerMessage {
873
881
  } | {
874
882
  oneofKind: "cacheDeleteExpiredRecords";
875
883
  /**
876
- * @generated from protobuf field: MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Response cache_delete_expired_records = 301
884
+ * @deprecated
885
+ * @generated from protobuf field: MiLaboratories.PL.API.Util.Deprecated cache_delete_expired_records = 301 [deprecated = true]
877
886
  */
878
- cacheDeleteExpiredRecords: CacheAPI_DeleteExpiredRecords_Response;
887
+ cacheDeleteExpiredRecords: Util_Deprecated;
879
888
  } | {
880
889
  oneofKind: "controllerFeaturesSet";
881
890
  /**
@@ -888,6 +897,12 @@ export interface TxAPI_ServerMessage {
888
897
  * @generated from protobuf field: MiLaboratories.PL.API.ControllerAPI.ClearFeatures.Response controller_features_clear = 351
889
898
  */
890
899
  controllerFeaturesClear: ControllerAPI_ClearFeatures_Response;
900
+ } | {
901
+ oneofKind: "setDefaultColor";
902
+ /**
903
+ * @generated from protobuf field: MiLaboratories.PL.API.TxAPI.SetDefaultColor.Response set_default_color = 400
904
+ */
905
+ setDefaultColor: TxAPI_SetDefaultColor_Response;
891
906
  } | {
892
907
  oneofKind: undefined;
893
908
  };
@@ -904,7 +919,7 @@ export interface TxAPI_ServerMessage_Multi {
904
919
  * Sequential message ID for multi-message response, starting from 1.
905
920
  * Caller can use 'id > 0' check as a sign of multi-message response.
906
921
  * Some API requests produce several messages in response by design (say, listings)
907
- * In that case, the server responses to the client with many messages, each having
922
+ * In that case, the server responds to the client with many messages, each having
908
923
  * the same <request_id> value and different <message_id> values.
909
924
  *
910
925
  * @generated from protobuf field: uint32 id = 1
@@ -919,7 +934,7 @@ export interface TxAPI_ServerMessage_Multi {
919
934
  isLast: boolean;
920
935
  /**
921
936
  * Sign of empty multi-message response. Some multi-message responses can produce nothing
922
- * (like listing of empty directory). In that case client still has to know that the request was
937
+ * (like a listing of an empty directory). In that case, the client still has to know that the request was
923
938
  * handled and the empty result is OK.
924
939
  *
925
940
  * @generated from protobuf field: bool is_empty = 3
@@ -1042,6 +1057,25 @@ export interface TxAPI_Sync_Request {
1042
1057
  */
1043
1058
  export interface TxAPI_Sync_Response {
1044
1059
  }
1060
+ /**
1061
+ * @generated from protobuf message MiLaboratories.PL.API.TxAPI.SetDefaultColor
1062
+ */
1063
+ export interface TxAPI_SetDefaultColor {
1064
+ }
1065
+ /**
1066
+ * @generated from protobuf message MiLaboratories.PL.API.TxAPI.SetDefaultColor.Request
1067
+ */
1068
+ export interface TxAPI_SetDefaultColor_Request {
1069
+ /**
1070
+ * @generated from protobuf field: optional bytes color_proof = 1
1071
+ */
1072
+ colorProof?: Uint8Array;
1073
+ }
1074
+ /**
1075
+ * @generated from protobuf message MiLaboratories.PL.API.TxAPI.SetDefaultColor.Response
1076
+ */
1077
+ export interface TxAPI_SetDefaultColor_Response {
1078
+ }
1045
1079
  /**
1046
1080
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI
1047
1081
  */
@@ -1068,6 +1102,10 @@ export interface ResourceAPI_CreateStruct_Request {
1068
1102
  * @generated from protobuf field: optional bytes data = 4
1069
1103
  */
1070
1104
  data?: Uint8Array;
1105
+ /**
1106
+ * @generated from protobuf field: optional bytes color_proof = 5
1107
+ */
1108
+ colorProof?: Uint8Array;
1071
1109
  }
1072
1110
  /**
1073
1111
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateStruct.Response
@@ -1077,6 +1115,10 @@ export interface ResourceAPI_CreateStruct_Response {
1077
1115
  * @generated from protobuf field: uint64 resource_id = 1
1078
1116
  */
1079
1117
  resourceId: bigint;
1118
+ /**
1119
+ * @generated from protobuf field: optional bytes resource_signature = 2
1120
+ */
1121
+ resourceSignature?: Uint8Array;
1080
1122
  }
1081
1123
  /**
1082
1124
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateEphemeral
@@ -1099,6 +1141,10 @@ export interface ResourceAPI_CreateEphemeral_Request {
1099
1141
  * @generated from protobuf field: optional bytes data = 4
1100
1142
  */
1101
1143
  data?: Uint8Array;
1144
+ /**
1145
+ * @generated from protobuf field: optional bytes color_proof = 5
1146
+ */
1147
+ colorProof?: Uint8Array;
1102
1148
  }
1103
1149
  /**
1104
1150
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateEphemeral.Response
@@ -1108,6 +1154,10 @@ export interface ResourceAPI_CreateEphemeral_Response {
1108
1154
  * @generated from protobuf field: uint64 resource_id = 1
1109
1155
  */
1110
1156
  resourceId: bigint;
1157
+ /**
1158
+ * @generated from protobuf field: optional bytes resource_signature = 2
1159
+ */
1160
+ resourceSignature?: Uint8Array;
1111
1161
  }
1112
1162
  /**
1113
1163
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateChild
@@ -1165,6 +1215,10 @@ export interface ResourceAPI_CreateValue_Request {
1165
1215
  * @generated from protobuf field: bool error_if_exists = 7
1166
1216
  */
1167
1217
  errorIfExists: boolean;
1218
+ /**
1219
+ * @generated from protobuf field: optional bytes color_proof = 8
1220
+ */
1221
+ colorProof?: Uint8Array;
1168
1222
  }
1169
1223
  /**
1170
1224
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateValue.Response
@@ -1174,6 +1228,10 @@ export interface ResourceAPI_CreateValue_Response {
1174
1228
  * @generated from protobuf field: uint64 resource_id = 1
1175
1229
  */
1176
1230
  resourceId: bigint;
1231
+ /**
1232
+ * @generated from protobuf field: optional bytes resource_signature = 2
1233
+ */
1234
+ resourceSignature?: Uint8Array;
1177
1235
  }
1178
1236
  /**
1179
1237
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.GetValueID
@@ -1201,6 +1259,10 @@ export interface ResourceAPI_GetValueID_Response {
1201
1259
  * @generated from protobuf field: uint64 resource_id = 1
1202
1260
  */
1203
1261
  resourceId: bigint;
1262
+ /**
1263
+ * @generated from protobuf field: optional bytes resource_signature = 2
1264
+ */
1265
+ resourceSignature?: Uint8Array;
1204
1266
  }
1205
1267
  /**
1206
1268
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateSingleton
@@ -1227,6 +1289,10 @@ export interface ResourceAPI_CreateSingleton_Request {
1227
1289
  * @generated from protobuf field: bool error_if_exists = 7
1228
1290
  */
1229
1291
  errorIfExists: boolean;
1292
+ /**
1293
+ * @generated from protobuf field: optional bytes color_proof = 8
1294
+ */
1295
+ colorProof?: Uint8Array;
1230
1296
  }
1231
1297
  /**
1232
1298
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.CreateSingleton.Response
@@ -1236,6 +1302,10 @@ export interface ResourceAPI_CreateSingleton_Response {
1236
1302
  * @generated from protobuf field: uint64 resource_id = 1
1237
1303
  */
1238
1304
  resourceId: bigint;
1305
+ /**
1306
+ * @generated from protobuf field: optional bytes resource_signature = 2
1307
+ */
1308
+ resourceSignature?: Uint8Array;
1239
1309
  }
1240
1310
  /**
1241
1311
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.GetSingleton
@@ -1281,6 +1351,10 @@ export interface ResourceAPI_LockInputs_Request {
1281
1351
  * @generated from protobuf field: uint64 resource_id = 1
1282
1352
  */
1283
1353
  resourceId: bigint;
1354
+ /**
1355
+ * @generated from protobuf field: optional bytes resource_signature = 2
1356
+ */
1357
+ resourceSignature?: Uint8Array;
1284
1358
  }
1285
1359
  /**
1286
1360
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.LockInputs.Response
@@ -1300,6 +1374,10 @@ export interface ResourceAPI_LockOutputs_Request {
1300
1374
  * @generated from protobuf field: uint64 resource_id = 1
1301
1375
  */
1302
1376
  resourceId: bigint;
1377
+ /**
1378
+ * @generated from protobuf field: optional bytes resource_signature = 2
1379
+ */
1380
+ resourceSignature?: Uint8Array;
1303
1381
  }
1304
1382
  /**
1305
1383
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.LockOutputs.Response
@@ -1319,6 +1397,10 @@ export interface ResourceAPI_Exists_Request {
1319
1397
  * @generated from protobuf field: uint64 resource_id = 1
1320
1398
  */
1321
1399
  resourceId: bigint;
1400
+ /**
1401
+ * @generated from protobuf field: optional bytes resource_signature = 2
1402
+ */
1403
+ resourceSignature?: Uint8Array;
1322
1404
  }
1323
1405
  /**
1324
1406
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.Exists.Response
@@ -1342,10 +1424,18 @@ export interface ResourceAPI_SetError_Request {
1342
1424
  * @generated from protobuf field: uint64 resource_id = 1
1343
1425
  */
1344
1426
  resourceId: bigint;
1427
+ /**
1428
+ * @generated from protobuf field: optional bytes resource_signature = 3
1429
+ */
1430
+ resourceSignature?: Uint8Array;
1345
1431
  /**
1346
1432
  * @generated from protobuf field: uint64 error_resource_id = 2
1347
1433
  */
1348
1434
  errorResourceId: bigint;
1435
+ /**
1436
+ * @generated from protobuf field: optional bytes error_resource_signature = 4
1437
+ */
1438
+ errorResourceSignature?: Uint8Array;
1349
1439
  }
1350
1440
  /**
1351
1441
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.SetError.Response
@@ -1365,6 +1455,10 @@ export interface ResourceAPI_Get_Request {
1365
1455
  * @generated from protobuf field: uint64 resource_id = 1
1366
1456
  */
1367
1457
  resourceId: bigint;
1458
+ /**
1459
+ * @generated from protobuf field: optional bytes resource_signature = 3
1460
+ */
1461
+ resourceSignature?: Uint8Array;
1368
1462
  /**
1369
1463
  * @generated from protobuf field: bool load_fields = 2
1370
1464
  */
@@ -1398,9 +1492,9 @@ export interface ResourceAPI_List_ByType_Request {
1398
1492
  */
1399
1493
  resourceType?: ResourceType;
1400
1494
  /**
1401
- * Non-zero value makes API to limit its responses count to at most
1495
+ * Non-zero value makes the API limit its response count to at most
1402
1496
  * <limit> number of items.
1403
- * Zero value makes API to return all available items.
1497
+ * Zero value makes the API return all available items.
1404
1498
  *
1405
1499
  * @generated from protobuf field: uint32 limit = 3
1406
1500
  */
@@ -1413,7 +1507,7 @@ export interface ResourceAPI_List_ByType_Request {
1413
1507
  */
1414
1508
  after: bigint;
1415
1509
  /**
1416
- * True value makes API to return original resources instead of duplicates.
1510
+ * True value makes the API return original resources instead of duplicates.
1417
1511
  *
1418
1512
  * @generated from protobuf field: bool resolve_duplicates = 4
1419
1513
  */
@@ -1462,11 +1556,15 @@ export interface ResourceAPI_CreateRoot_Response {
1462
1556
  * @generated from protobuf field: uint64 resource_id = 1
1463
1557
  */
1464
1558
  resourceId: bigint;
1559
+ /**
1560
+ * @generated from protobuf field: optional bytes resource_signature = 2
1561
+ */
1562
+ resourceSignature?: Uint8Array;
1465
1563
  }
1466
1564
  // FIXME: add CreateResource method to API
1467
1565
 
1468
1566
  /**
1469
- * Remove any resource, that has garbage collection disabled
1567
+ * Remove any resource that has garbage collection disabled
1470
1568
  *
1471
1569
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.Remove
1472
1570
  */
@@ -1477,9 +1575,13 @@ export interface ResourceAPI_Remove {
1477
1575
  */
1478
1576
  export interface ResourceAPI_Remove_Request {
1479
1577
  /**
1480
- * @generated from protobuf field: uint64 id = 1
1578
+ * @generated from protobuf field: uint64 resource_id = 1
1481
1579
  */
1482
- id: bigint;
1580
+ resourceId: bigint;
1581
+ /**
1582
+ * @generated from protobuf field: optional bytes resource_signature = 2
1583
+ */
1584
+ resourceSignature?: Uint8Array;
1483
1585
  }
1484
1586
  /**
1485
1587
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.Remove.Response
@@ -1504,6 +1606,10 @@ export interface ResourceAPI_Name_Set_Request {
1504
1606
  * @generated from protobuf field: uint64 resource_id = 1
1505
1607
  */
1506
1608
  resourceId: bigint;
1609
+ /**
1610
+ * @generated from protobuf field: optional bytes resource_signature = 3
1611
+ */
1612
+ resourceSignature?: Uint8Array;
1507
1613
  /**
1508
1614
  * @generated from protobuf field: string name = 2
1509
1615
  */
@@ -1536,6 +1642,10 @@ export interface ResourceAPI_Name_Get_Response {
1536
1642
  * @generated from protobuf field: uint64 resource_id = 1
1537
1643
  */
1538
1644
  resourceId: bigint;
1645
+ /**
1646
+ * @generated from protobuf field: optional bytes resource_signature = 2
1647
+ */
1648
+ resourceSignature?: Uint8Array;
1539
1649
  }
1540
1650
  /**
1541
1651
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.Name.Exists
@@ -1593,11 +1703,15 @@ export interface ResourceAPI_Tree_Request {
1593
1703
  */
1594
1704
  resourceId: bigint;
1595
1705
  /**
1596
- * Limit maximum depth the tree is traversed.
1597
- * The resource <resource_id> is considered on depth = 0, the values of its fiels
1706
+ * @generated from protobuf field: optional bytes resource_signature = 3
1707
+ */
1708
+ resourceSignature?: Uint8Array;
1709
+ /**
1710
+ * Limit the maximum depth the tree is traversed.
1711
+ * The resource <resource_id> is considered at depth = 0, the values of its fields
1598
1712
  * are on depth = 1 and so on.
1599
- * The maximum uint32 value disables the limit at all.
1600
- * 0 value makes API to return only single resource <resource_id> and is actually
1713
+ * The maximum uint32 value disables the limit entirely.
1714
+ * A 0 value makes the API return only a single resource <resource_id> and is actually
1601
1715
  * equal to Get.Request
1602
1716
  *
1603
1717
  * @generated from protobuf field: optional uint32 max_depth = 2
@@ -1628,6 +1742,10 @@ export interface ResourceAPI_TreeSize_Request {
1628
1742
  * @generated from protobuf field: uint64 resource_id = 1
1629
1743
  */
1630
1744
  resourceId: bigint;
1745
+ /**
1746
+ * @generated from protobuf field: optional bytes resource_signature = 2
1747
+ */
1748
+ resourceSignature?: Uint8Array;
1631
1749
  }
1632
1750
  /**
1633
1751
  * @generated from protobuf message MiLaboratories.PL.API.ResourceAPI.TreeSize.Response
@@ -1635,7 +1753,7 @@ export interface ResourceAPI_TreeSize_Request {
1635
1753
  export interface ResourceAPI_TreeSize_Response {
1636
1754
  /**
1637
1755
  * size of all tree resources in bytes
1638
- * could change between call regarding compression algorithm
1756
+ * could change between calls depending on compression algorithm
1639
1757
  *
1640
1758
  * @generated from protobuf field: uint64 size = 1
1641
1759
  */
@@ -1739,9 +1857,13 @@ export interface FieldAPI_SetError_Request {
1739
1857
  */
1740
1858
  field?: FieldRef;
1741
1859
  /**
1742
- * @generated from protobuf field: uint64 err_resource_id = 2
1860
+ * @generated from protobuf field: uint64 error_resource_id = 2
1861
+ */
1862
+ errorResourceId: bigint;
1863
+ /**
1864
+ * @generated from protobuf field: optional bytes error_resource_signature = 3
1743
1865
  */
1744
- errResourceId: bigint;
1866
+ errorResourceSignature?: Uint8Array;
1745
1867
  }
1746
1868
  /**
1747
1869
  * @generated from protobuf message MiLaboratories.PL.API.FieldAPI.SetError.Response
@@ -1822,6 +1944,10 @@ export interface FieldAPI_List_Request {
1822
1944
  * @generated from protobuf field: uint64 resource_id = 1
1823
1945
  */
1824
1946
  resourceId: bigint;
1947
+ /**
1948
+ * @generated from protobuf field: optional bytes resource_signature = 4
1949
+ */
1950
+ resourceSignature?: Uint8Array;
1825
1951
  /**
1826
1952
  * Start the listing from given position, returning first field with
1827
1953
  * name >= start_from.
@@ -1830,9 +1956,9 @@ export interface FieldAPI_List_Request {
1830
1956
  */
1831
1957
  startFrom: string;
1832
1958
  /**
1833
- * Non-zero value makes API to limit number of returned fields to at
1959
+ * Non-zero value makes the API limit the number of returned fields to at
1834
1960
  * most <limit>.
1835
- * Zero value makes API to return all available fields of the resource.
1961
+ * Zero value makes the API return all available fields of the resource.
1836
1962
  *
1837
1963
  * @generated from protobuf field: uint32 limit = 3
1838
1964
  */
@@ -1852,7 +1978,7 @@ export interface FieldAPI_List_Response {
1852
1978
  * The name of field next to the current one.
1853
1979
  *
1854
1980
  * Is not empty only for the last message in the current listing, when <limit> was > 0 in List.Request AND
1855
- * there is more items to read (the listing was stopped because of that limit)
1981
+ * there are more items to read (the listing was stopped because of that limit)
1856
1982
  *
1857
1983
  * Use <next> value as <start_from> in the List.Request to continue listing.
1858
1984
  *
@@ -2433,6 +2559,10 @@ export interface ResourceKVAPI_List_Request {
2433
2559
  * @generated from protobuf field: uint64 resource_id = 1
2434
2560
  */
2435
2561
  resourceId: bigint;
2562
+ /**
2563
+ * @generated from protobuf field: optional bytes resource_signature = 4
2564
+ */
2565
+ resourceSignature?: Uint8Array;
2436
2566
  /**
2437
2567
  * Start the listing from given position, returning first item with
2438
2568
  * key >= start_from.
@@ -2441,9 +2571,9 @@ export interface ResourceKVAPI_List_Request {
2441
2571
  */
2442
2572
  startFrom: string;
2443
2573
  /**
2444
- * Non-zero value makes API to limit its responses count to at most
2574
+ * Non-zero value makes the API limit its response count to at most
2445
2575
  * <limit> number of items.
2446
- * Zero value makes API to return all available items.
2576
+ * Zero value makes the API return all available items.
2447
2577
  *
2448
2578
  * @generated from protobuf field: uint32 limit = 3
2449
2579
  */
@@ -2463,7 +2593,7 @@ export interface ResourceKVAPI_List_Response {
2463
2593
  * The key of the KV item next to the last returned item.
2464
2594
  *
2465
2595
  * Is not empty only for the last message in the current listing, when <limit> was > 0 in List.Request AND
2466
- * there is more items to read (the listing was stopped because of that limit)
2596
+ * there are more items to read (the listing was stopped because of that limit)
2467
2597
  *
2468
2598
  * Use <next> value as <start_from> of the List.Request to continue listing.
2469
2599
  *
@@ -2497,6 +2627,10 @@ export interface ResourceKVAPI_Set_Request {
2497
2627
  * @generated from protobuf field: uint64 resource_id = 1
2498
2628
  */
2499
2629
  resourceId: bigint;
2630
+ /**
2631
+ * @generated from protobuf field: optional bytes resource_signature = 4
2632
+ */
2633
+ resourceSignature?: Uint8Array;
2500
2634
  /**
2501
2635
  * @generated from protobuf field: string key = 2
2502
2636
  */
@@ -2524,6 +2658,10 @@ export interface ResourceKVAPI_Get_Request {
2524
2658
  * @generated from protobuf field: uint64 resource_id = 1
2525
2659
  */
2526
2660
  resourceId: bigint;
2661
+ /**
2662
+ * @generated from protobuf field: optional bytes resource_signature = 3
2663
+ */
2664
+ resourceSignature?: Uint8Array;
2527
2665
  /**
2528
2666
  * @generated from protobuf field: string key = 2
2529
2667
  */
@@ -2551,6 +2689,10 @@ export interface ResourceKVAPI_GetIfExists_Request {
2551
2689
  * @generated from protobuf field: uint64 resource_id = 1
2552
2690
  */
2553
2691
  resourceId: bigint;
2692
+ /**
2693
+ * @generated from protobuf field: optional bytes resource_signature = 3
2694
+ */
2695
+ resourceSignature?: Uint8Array;
2554
2696
  /**
2555
2697
  * @generated from protobuf field: string key = 2
2556
2698
  */
@@ -2582,6 +2724,10 @@ export interface ResourceKVAPI_Delete_Request {
2582
2724
  * @generated from protobuf field: uint64 resource_id = 1
2583
2725
  */
2584
2726
  resourceId: bigint;
2727
+ /**
2728
+ * @generated from protobuf field: optional bytes resource_signature = 3
2729
+ */
2730
+ resourceSignature?: Uint8Array;
2585
2731
  /**
2586
2732
  * @generated from protobuf field: string key = 2
2587
2733
  */
@@ -2605,6 +2751,10 @@ export interface ResourceKVAPI_SetFlag_Request {
2605
2751
  * @generated from protobuf field: uint64 resource_id = 1
2606
2752
  */
2607
2753
  resourceId: bigint;
2754
+ /**
2755
+ * @generated from protobuf field: optional bytes resource_signature = 4
2756
+ */
2757
+ resourceSignature?: Uint8Array;
2608
2758
  /**
2609
2759
  * @generated from protobuf field: string key = 2
2610
2760
  */
@@ -2632,6 +2782,10 @@ export interface ResourceKVAPI_GetFlag_Request {
2632
2782
  * @generated from protobuf field: uint64 resource_id = 1
2633
2783
  */
2634
2784
  resourceId: bigint;
2785
+ /**
2786
+ * @generated from protobuf field: optional bytes resource_signature = 3
2787
+ */
2788
+ resourceSignature?: Uint8Array;
2635
2789
  /**
2636
2790
  * @generated from protobuf field: string key = 2
2637
2791
  */
@@ -2850,24 +3004,85 @@ export interface CacheAPI_SetToField_Request {
2850
3004
  export interface CacheAPI_SetToField_Response {
2851
3005
  }
2852
3006
  /**
2853
- * @generated from protobuf message MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords
3007
+ * @generated from protobuf message MiLaboratories.PL.API.LocksAPI
2854
3008
  */
2855
- export interface CacheAPI_DeleteExpiredRecords {
3009
+ export interface LocksAPI {
2856
3010
  }
2857
3011
  /**
2858
- * @generated from protobuf message MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Request
3012
+ * @generated from protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues
2859
3013
  */
2860
- export interface CacheAPI_DeleteExpiredRecords_Request {
3014
+ export interface LocksAPI_LockFieldValues {
2861
3015
  }
2862
3016
  /**
2863
- * @generated from protobuf message MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Response
3017
+ * @generated from protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create
2864
3018
  */
2865
- export interface CacheAPI_DeleteExpiredRecords_Response {
3019
+ export interface LocksAPI_LockFieldValues_Create {
2866
3020
  }
2867
3021
  /**
2868
- * @generated from protobuf message MiLaboratories.PL.API.LocksAPI
3022
+ * @generated from protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Request
2869
3023
  */
2870
- export interface LocksAPI {
3024
+ export interface LocksAPI_LockFieldValues_Create_Request {
3025
+ /**
3026
+ * @generated from protobuf field: uint64 resource_id = 1
3027
+ */
3028
+ resourceId: bigint; // resource ID that will own the lock
3029
+ /**
3030
+ * @generated from protobuf field: repeated string lock_references_of = 2
3031
+ */
3032
+ lockReferencesOf: string[]; // list of fields whose values should be locked
3033
+ /**
3034
+ * @generated from protobuf field: string comment = 3
3035
+ */
3036
+ comment: string; // comment to show for other lockers on lock conflict. Truncated to 1024 bytes.
3037
+ }
3038
+ /**
3039
+ * @generated from protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response
3040
+ */
3041
+ export interface LocksAPI_LockFieldValues_Create_Response {
3042
+ /**
3043
+ * true when lock was acquired (new, or already owned by the owner)
3044
+ * Client MUST pay attention to this flag, as it shows if lock was successful.
3045
+ *
3046
+ * @generated from protobuf field: bool acquired = 1
3047
+ */
3048
+ acquired: boolean;
3049
+ /**
3050
+ * Info about why lock was not acquired.
3051
+ * Limited number of conflicts is reported: i.e. if lock operation failed for 20 fields, only first 10 are listed here.
3052
+ * The number '10' is not a fixed contract for external clients. It is just 'somehow truncated'.
3053
+ *
3054
+ * @generated from protobuf field: repeated MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response.LockInfo conflicting_locks = 2
3055
+ */
3056
+ conflictingLocks: LocksAPI_LockFieldValues_Create_Response_LockInfo[];
3057
+ /**
3058
+ * @generated from protobuf field: bool conflicts_list_truncated = 3
3059
+ */
3060
+ conflictsListTruncated: boolean; // true if there were more conflicts than reported
3061
+ }
3062
+ /**
3063
+ * @generated from protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response.LockInfo
3064
+ */
3065
+ export interface LocksAPI_LockFieldValues_Create_Response_LockInfo {
3066
+ /**
3067
+ * @generated from protobuf field: uint64 target_id = 1
3068
+ */
3069
+ targetId: bigint; // ID of resource that failed to be locked
3070
+ /**
3071
+ * @generated from protobuf field: string field_name = 2
3072
+ */
3073
+ fieldName: string; // what field was referencing this <target_id>
3074
+ /**
3075
+ * @generated from protobuf field: uint64 locked_by = 3
3076
+ */
3077
+ lockedBy: bigint; // Who is owning the lock for <target_id>
3078
+ /**
3079
+ * @generated from protobuf field: google.protobuf.Timestamp locked_at = 4
3080
+ */
3081
+ lockedAt?: Timestamp; // when the lock was obtained
3082
+ /**
3083
+ * @generated from protobuf field: string comment = 5
3084
+ */
3085
+ comment: string; // comment from the locker holding the lock
2871
3086
  }
2872
3087
  /**
2873
3088
  * @generated from protobuf message MiLaboratories.PL.API.LocksAPI.Lease
@@ -2887,6 +3102,10 @@ export interface LocksAPI_Lease_Create_Request {
2887
3102
  * @generated from protobuf field: uint64 resource_id = 1
2888
3103
  */
2889
3104
  resourceId: bigint;
3105
+ /**
3106
+ * @generated from protobuf field: optional bytes resource_signature = 5
3107
+ */
3108
+ resourceSignature?: Uint8Array;
2890
3109
  /**
2891
3110
  * @generated from protobuf field: google.protobuf.Duration timeout = 3
2892
3111
  */
@@ -2918,6 +3137,10 @@ export interface LocksAPI_Lease_Update_Request {
2918
3137
  * @generated from protobuf field: uint64 resource_id = 1
2919
3138
  */
2920
3139
  resourceId: bigint;
3140
+ /**
3141
+ * @generated from protobuf field: optional bytes resource_signature = 5
3142
+ */
3143
+ resourceSignature?: Uint8Array;
2921
3144
  /**
2922
3145
  * @generated from protobuf field: bytes lease_id = 2
2923
3146
  */
@@ -2949,6 +3172,10 @@ export interface LocksAPI_Lease_Release_Request {
2949
3172
  * @generated from protobuf field: uint64 resource_id = 1
2950
3173
  */
2951
3174
  resourceId: bigint;
3175
+ /**
3176
+ * @generated from protobuf field: optional bytes resource_signature = 3
3177
+ */
3178
+ resourceSignature?: Uint8Array;
2952
3179
  /**
2953
3180
  * @generated from protobuf field: bytes lease_id = 2
2954
3181
  */
@@ -3015,6 +3242,10 @@ export interface AuthAPI_GetJWTToken_Request {
3015
3242
  * @generated from protobuf field: google.protobuf.Duration expiration = 1
3016
3243
  */
3017
3244
  expiration?: Duration;
3245
+ /**
3246
+ * @generated from protobuf field: optional MiLaboratories.PL.API.AuthAPI.GetJWTToken.Role requested_role = 2
3247
+ */
3248
+ requestedRole?: AuthAPI_GetJWTToken_Role;
3018
3249
  }
3019
3250
  /**
3020
3251
  * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.GetJWTToken.Response
@@ -3024,135 +3255,388 @@ export interface AuthAPI_GetJWTToken_Response {
3024
3255
  * @generated from protobuf field: string token = 1
3025
3256
  */
3026
3257
  token: string;
3258
+ /**
3259
+ * @generated from protobuf field: bytes session_id = 2
3260
+ */
3261
+ sessionId: Uint8Array;
3027
3262
  }
3028
3263
  /**
3029
- * @generated from protobuf message MiLaboratories.PL.API.MiscAPI
3264
+ * @generated from protobuf enum MiLaboratories.PL.API.AuthAPI.GetJWTToken.Role
3030
3265
  */
3031
- export interface MiscAPI {
3266
+ export enum AuthAPI_GetJWTToken_Role {
3267
+ /**
3268
+ * issue JWT with caller's natural role
3269
+ *
3270
+ * @generated from protobuf enum value: ROLE_UNSPECIFIED = 0;
3271
+ */
3272
+ ROLE_UNSPECIFIED = 0,
3273
+ /**
3274
+ * @generated from protobuf enum value: USER = 1;
3275
+ */
3276
+ USER = 1,
3277
+ /**
3278
+ * @generated from protobuf enum value: CONTROLLER = 2;
3279
+ */
3280
+ CONTROLLER = 2,
3281
+ /**
3282
+ * @generated from protobuf enum value: WORKFLOW = 3;
3283
+ */
3284
+ WORKFLOW = 3
3032
3285
  }
3033
3286
  /**
3034
- * @generated from protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes
3287
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.GrantAccess
3035
3288
  */
3036
- export interface MiscAPI_ListResourceTypes {
3289
+ export interface AuthAPI_GrantAccess {
3037
3290
  }
3038
3291
  /**
3039
- * @generated from protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Request
3292
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.GrantAccess.Request
3040
3293
  */
3041
- export interface MiscAPI_ListResourceTypes_Request {
3294
+ export interface AuthAPI_GrantAccess_Request {
3295
+ /**
3296
+ * @generated from protobuf field: uint64 resource_id = 1
3297
+ */
3298
+ resourceId: bigint;
3299
+ /**
3300
+ * @generated from protobuf field: optional bytes resource_signature = 2
3301
+ */
3302
+ resourceSignature?: Uint8Array;
3303
+ /**
3304
+ * @generated from protobuf field: string target_user = 3
3305
+ */
3306
+ targetUser: string; // user login to grant access to
3307
+ /**
3308
+ * @generated from protobuf field: MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions = 4
3309
+ */
3310
+ permissions?: AuthAPI_Grant_Permissions; // access level to grant
3042
3311
  }
3043
3312
  /**
3044
- * @generated from protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Response
3313
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.GrantAccess.Response
3045
3314
  */
3046
- export interface MiscAPI_ListResourceTypes_Response {
3047
- /**
3048
- * @generated from protobuf field: repeated MiLaboratories.PL.Base.ResourceType types = 1
3049
- */
3050
- types: ResourceType[];
3315
+ export interface AuthAPI_GrantAccess_Response {
3051
3316
  }
3052
3317
  /**
3053
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI
3318
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.RevokeGrant
3054
3319
  */
3055
- export interface MaintenanceAPI {
3320
+ export interface AuthAPI_RevokeGrant {
3056
3321
  }
3057
3322
  /**
3058
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping
3323
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.RevokeGrant.Request
3059
3324
  */
3060
- export interface MaintenanceAPI_Ping {
3325
+ export interface AuthAPI_RevokeGrant_Request {
3326
+ /**
3327
+ * @generated from protobuf field: uint64 resource_id = 1
3328
+ */
3329
+ resourceId: bigint;
3330
+ /**
3331
+ * @generated from protobuf field: optional bytes resource_signature = 2
3332
+ */
3333
+ resourceSignature?: Uint8Array;
3334
+ /**
3335
+ * @generated from protobuf field: string target_user = 3
3336
+ */
3337
+ targetUser: string; // user login whose grant to revoke
3061
3338
  }
3062
3339
  /**
3063
- * Early connection check
3064
- *
3065
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping.Request
3340
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.RevokeGrant.Response
3066
3341
  */
3067
- export interface MaintenanceAPI_Ping_Request {
3342
+ export interface AuthAPI_RevokeGrant_Response {
3068
3343
  }
3069
3344
  /**
3070
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping.Response
3345
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListGrants
3071
3346
  */
3072
- export interface MaintenanceAPI_Ping_Response {
3347
+ export interface AuthAPI_ListGrants {
3348
+ }
3349
+ /**
3350
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListGrants.Request
3351
+ */
3352
+ export interface AuthAPI_ListGrants_Request {
3073
3353
  /**
3074
- * @generated from protobuf field: string core_version = 1
3354
+ * @generated from protobuf field: uint64 resource_id = 1
3075
3355
  */
3076
- coreVersion: string;
3356
+ resourceId: bigint;
3077
3357
  /**
3078
- * @generated from protobuf field: string core_full_version = 2
3358
+ * @generated from protobuf field: optional bytes resource_signature = 2
3079
3359
  */
3080
- coreFullVersion: string;
3360
+ resourceSignature?: Uint8Array;
3361
+ }
3362
+ /**
3363
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListGrants.Response
3364
+ */
3365
+ export interface AuthAPI_ListGrants_Response {
3081
3366
  /**
3082
- * @generated from protobuf field: string server_info = 3
3367
+ * @generated from protobuf field: MiLaboratories.PL.API.AuthAPI.Grant grant = 1
3083
3368
  */
3084
- serverInfo: string;
3369
+ grant?: AuthAPI_Grant; // one per stream message
3370
+ }
3371
+ /**
3372
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.Grant
3373
+ */
3374
+ export interface AuthAPI_Grant {
3085
3375
  /**
3086
- * @generated from protobuf field: MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression compression = 4
3376
+ * @generated from protobuf field: string user = 1
3087
3377
  */
3088
- compression: MaintenanceAPI_Ping_Response_Compression;
3378
+ user: string;
3089
3379
  /**
3090
- * instanceID is a unique ID that changes when we reset DB state.
3091
- * If we reset a state and a database, but the address of the backend is still the same,
3092
- * without instanceID we are not sure if it's the same state or not,
3093
- * and UI can't detect it and clear its state (e.g. caches of drivers).
3094
- *
3095
- * @generated from protobuf field: string instance_id = 5
3380
+ * @generated from protobuf field: uint64 resource_id = 2
3096
3381
  */
3097
- instanceId: string;
3382
+ resourceId: bigint;
3098
3383
  /**
3099
- * @generated from protobuf field: string platform = 6
3384
+ * @generated from protobuf field: MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions = 3
3100
3385
  */
3101
- platform: string; // <os>-<arch>
3386
+ permissions?: AuthAPI_Grant_Permissions; // access level from grant table
3102
3387
  /**
3103
- * @generated from protobuf field: string os = 7
3388
+ * @generated from protobuf field: string granted_by = 4
3104
3389
  */
3105
- os: string; // linux / windows / macosx
3390
+ grantedBy: string; // login of the user who created this grant
3106
3391
  /**
3107
- * @generated from protobuf field: string arch = 8
3392
+ * @generated from protobuf field: int64 granted_at = 5
3108
3393
  */
3109
- arch: string; // x64 / aarch64
3394
+ grantedAt: bigint; // unix timestamp in milliseconds
3110
3395
  }
3111
3396
  /**
3112
- * @generated from protobuf enum MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression
3397
+ * Permissions describes access level for a grant.
3398
+ *
3399
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.Grant.Permissions
3113
3400
  */
3114
- export enum MaintenanceAPI_Ping_Response_Compression {
3115
- /**
3116
- * @generated from protobuf enum value: NONE = 0;
3117
- */
3118
- NONE = 0,
3401
+ export interface AuthAPI_Grant_Permissions {
3119
3402
  /**
3120
- * @generated from protobuf enum value: GZIP = 1;
3403
+ * @generated from protobuf field: bool writable = 1
3121
3404
  */
3122
- GZIP = 1
3405
+ writable: boolean; // write access = ability to modify resource tree + share access
3123
3406
  }
3124
3407
  /**
3125
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.License
3408
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources
3126
3409
  */
3127
- export interface MaintenanceAPI_License {
3410
+ export interface AuthAPI_ListUserResources {
3128
3411
  }
3129
3412
  /**
3130
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.License.Request
3413
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.Request
3131
3414
  */
3132
- export interface MaintenanceAPI_License_Request {
3415
+ export interface AuthAPI_ListUserResources_Request {
3416
+ /**
3417
+ * User login to list resources for.
3418
+ * Is ignored for regular user role: it can list only its own resources.
3419
+ *
3420
+ * @generated from protobuf field: string login = 1
3421
+ */
3422
+ login: string;
3423
+ /**
3424
+ * Start listing shared resources from given resource ID.
3425
+ * User root is returned only on the first page (when start_from == 0).
3426
+ *
3427
+ * @generated from protobuf field: uint64 start_from = 2
3428
+ */
3429
+ startFrom: bigint;
3430
+ /**
3431
+ * Non-zero value limits total resource count to at most <limit>.
3432
+ * limit = 1 with start_from = 0 returns solely user's root
3433
+ * limit = 2 with non-zero start_from returns 2 shared resources.
3434
+ * Zero returns all resources.
3435
+ *
3436
+ * @generated from protobuf field: uint32 limit = 3
3437
+ */
3438
+ limit: number;
3133
3439
  }
3134
3440
  /**
3135
- * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.License.Response
3441
+ * Multi-message: first message contains UserRoot (only when start_from == 0),
3442
+ *
3443
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.Response
3136
3444
  */
3137
- export interface MaintenanceAPI_License_Response {
3138
- /**
3139
- * @generated from protobuf field: int32 status = 1
3140
- */
3141
- status: number; // HTTP status code of the last valid response from license server.
3445
+ export interface AuthAPI_ListUserResources_Response {
3142
3446
  /**
3143
- * @generated from protobuf field: bool is_ok = 2
3447
+ * @generated from protobuf oneof: entry
3144
3448
  */
3145
- isOk: boolean; // true if status is 200
3449
+ entry: {
3450
+ oneofKind: "userRoot";
3451
+ /**
3452
+ * @generated from protobuf field: MiLaboratories.PL.API.AuthAPI.ListUserResources.UserRoot user_root = 1
3453
+ */
3454
+ userRoot: AuthAPI_ListUserResources_UserRoot;
3455
+ } | {
3456
+ oneofKind: "sharedResource";
3457
+ /**
3458
+ * @generated from protobuf field: MiLaboratories.PL.API.AuthAPI.ListUserResources.SharedResource shared_resource = 2
3459
+ */
3460
+ sharedResource: AuthAPI_ListUserResources_SharedResource;
3461
+ } | {
3462
+ oneofKind: undefined;
3463
+ };
3146
3464
  /**
3147
- * Raw response body as it was received from the license server.
3465
+ * Set only on the last message when limit > 0 and more items exist.
3466
+ * Use as 'start_from' in the next request to continue listing.
3148
3467
  *
3149
- * @generated from protobuf field: bytes response_body = 3
3468
+ * @generated from protobuf field: uint64 next_resource_id = 3
3150
3469
  */
3151
- responseBody: Uint8Array;
3470
+ nextResourceId: bigint;
3152
3471
  }
3153
- // @generated message type with reflection information, may provide speed optimized methods
3154
- class TxAPI$Type extends MessageType<TxAPI> {
3155
- constructor() {
3472
+ /**
3473
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.UserRoot
3474
+ */
3475
+ export interface AuthAPI_ListUserResources_UserRoot {
3476
+ /**
3477
+ * @generated from protobuf field: uint64 resource_id = 1
3478
+ */
3479
+ resourceId: bigint;
3480
+ /**
3481
+ * @generated from protobuf field: optional bytes resource_signature = 2
3482
+ */
3483
+ resourceSignature?: Uint8Array;
3484
+ }
3485
+ /**
3486
+ * @generated from protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.SharedResource
3487
+ */
3488
+ export interface AuthAPI_ListUserResources_SharedResource {
3489
+ /**
3490
+ * @generated from protobuf field: uint64 resource_id = 1
3491
+ */
3492
+ resourceId: bigint;
3493
+ /**
3494
+ * @generated from protobuf field: optional bytes resource_signature = 2
3495
+ */
3496
+ resourceSignature?: Uint8Array;
3497
+ /**
3498
+ * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType resource_type = 3
3499
+ */
3500
+ resourceType?: ResourceType;
3501
+ /**
3502
+ * @generated from protobuf field: MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions = 4
3503
+ */
3504
+ permissions?: AuthAPI_Grant_Permissions;
3505
+ }
3506
+ /**
3507
+ * @generated from protobuf message MiLaboratories.PL.API.MiscAPI
3508
+ */
3509
+ export interface MiscAPI {
3510
+ }
3511
+ /**
3512
+ * @generated from protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes
3513
+ */
3514
+ export interface MiscAPI_ListResourceTypes {
3515
+ }
3516
+ /**
3517
+ * @generated from protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Request
3518
+ */
3519
+ export interface MiscAPI_ListResourceTypes_Request {
3520
+ }
3521
+ /**
3522
+ * @generated from protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Response
3523
+ */
3524
+ export interface MiscAPI_ListResourceTypes_Response {
3525
+ /**
3526
+ * @generated from protobuf field: repeated MiLaboratories.PL.Base.ResourceType types = 1
3527
+ */
3528
+ types: ResourceType[];
3529
+ }
3530
+ /**
3531
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI
3532
+ */
3533
+ export interface MaintenanceAPI {
3534
+ }
3535
+ /**
3536
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping
3537
+ */
3538
+ export interface MaintenanceAPI_Ping {
3539
+ }
3540
+ /**
3541
+ * Early connection check
3542
+ *
3543
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping.Request
3544
+ */
3545
+ export interface MaintenanceAPI_Ping_Request {
3546
+ }
3547
+ /**
3548
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping.Response
3549
+ */
3550
+ export interface MaintenanceAPI_Ping_Response {
3551
+ /**
3552
+ * @generated from protobuf field: string core_version = 1
3553
+ */
3554
+ coreVersion: string;
3555
+ /**
3556
+ * @generated from protobuf field: string core_full_version = 2
3557
+ */
3558
+ coreFullVersion: string;
3559
+ /**
3560
+ * @generated from protobuf field: MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression compression = 4
3561
+ */
3562
+ compression: MaintenanceAPI_Ping_Response_Compression;
3563
+ /**
3564
+ * instanceID is a unique ID that changes when we reset DB state.
3565
+ * If we reset a state and a database, but the address of the backend is still the same,
3566
+ * without instanceID we are not sure if it's the same state or not,
3567
+ * and UI can't detect it and clear its state (e.g. caches of drivers).
3568
+ *
3569
+ * @generated from protobuf field: string instance_id = 5
3570
+ */
3571
+ instanceId: string;
3572
+ /**
3573
+ * @generated from protobuf field: string platform = 6
3574
+ */
3575
+ platform: string; // <os>-<arch>
3576
+ /**
3577
+ * @generated from protobuf field: string os = 7
3578
+ */
3579
+ os: string; // linux / windows / macosx
3580
+ /**
3581
+ * @generated from protobuf field: string arch = 8
3582
+ */
3583
+ arch: string; // x64 / aarch64
3584
+ }
3585
+ /**
3586
+ * @generated from protobuf enum MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression
3587
+ */
3588
+ export enum MaintenanceAPI_Ping_Response_Compression {
3589
+ /**
3590
+ * @generated from protobuf enum value: NONE = 0;
3591
+ */
3592
+ NONE = 0,
3593
+ /**
3594
+ * @generated from protobuf enum value: GZIP = 1;
3595
+ */
3596
+ GZIP = 1
3597
+ }
3598
+ /**
3599
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.License
3600
+ */
3601
+ export interface MaintenanceAPI_License {
3602
+ }
3603
+ /**
3604
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.License.Request
3605
+ */
3606
+ export interface MaintenanceAPI_License_Request {
3607
+ }
3608
+ /**
3609
+ * @generated from protobuf message MiLaboratories.PL.API.MaintenanceAPI.License.Response
3610
+ */
3611
+ export interface MaintenanceAPI_License_Response {
3612
+ /**
3613
+ * @generated from protobuf field: int32 status = 1
3614
+ */
3615
+ status: number; // HTTP status code of the last valid response from license server.
3616
+ /**
3617
+ * @generated from protobuf field: bool is_ok = 2
3618
+ */
3619
+ isOk: boolean; // true if status is 200
3620
+ /**
3621
+ * Raw response body as it was received from the license server.
3622
+ *
3623
+ * @generated from protobuf field: bytes response_body = 3
3624
+ */
3625
+ responseBody: Uint8Array;
3626
+ }
3627
+ /**
3628
+ * @generated from protobuf message MiLaboratories.PL.API.Util
3629
+ */
3630
+ export interface Util {
3631
+ }
3632
+ /**
3633
+ * @generated from protobuf message MiLaboratories.PL.API.Util.Deprecated
3634
+ */
3635
+ export interface Util_Deprecated {
3636
+ }
3637
+ // @generated message type with reflection information, may provide speed optimized methods
3638
+ class TxAPI$Type extends MessageType<TxAPI> {
3639
+ constructor() {
3156
3640
  super("MiLaboratories.PL.API.TxAPI", []);
3157
3641
  }
3158
3642
  create(value?: PartialMessage<TxAPI>): TxAPI {
@@ -3248,9 +3732,10 @@ class TxAPI_ClientMessage$Type extends MessageType<TxAPI_ClientMessage> {
3248
3732
  { no: 254, name: "controller_key_value_get_flag", kind: "message", oneof: "request", T: () => ControllerKVAPI_GetFlag_Request },
3249
3733
  { no: 255, name: "controller_key_value_get_flag_if_exists", kind: "message", oneof: "request", T: () => ControllerKVAPI_GetFlagIfExists_Request },
3250
3734
  { no: 300, name: "cache_set_to_field", kind: "message", oneof: "request", T: () => CacheAPI_SetToField_Request },
3251
- { no: 301, name: "cache_delete_expired_records", kind: "message", oneof: "request", T: () => CacheAPI_DeleteExpiredRecords_Request },
3735
+ { no: 301, name: "cache_delete_expired_records", kind: "message", oneof: "request", T: () => Util_Deprecated },
3252
3736
  { no: 350, name: "controller_features_set", kind: "message", oneof: "request", T: () => ControllerAPI_SetFeatures_Request },
3253
- { no: 351, name: "controller_features_clear", kind: "message", oneof: "request", T: () => ControllerAPI_ClearFeatures_Request }
3737
+ { no: 351, name: "controller_features_clear", kind: "message", oneof: "request", T: () => ControllerAPI_ClearFeatures_Request },
3738
+ { no: 400, name: "set_default_color", kind: "message", oneof: "request", T: () => TxAPI_SetDefaultColor_Request }
3254
3739
  ]);
3255
3740
  }
3256
3741
  create(value?: PartialMessage<TxAPI_ClientMessage>): TxAPI_ClientMessage {
@@ -3599,10 +4084,10 @@ class TxAPI_ClientMessage$Type extends MessageType<TxAPI_ClientMessage> {
3599
4084
  cacheSetToField: CacheAPI_SetToField_Request.internalBinaryRead(reader, reader.uint32(), options, (message.request as any).cacheSetToField)
3600
4085
  };
3601
4086
  break;
3602
- case /* MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Request cache_delete_expired_records */ 301:
4087
+ case /* MiLaboratories.PL.API.Util.Deprecated cache_delete_expired_records = 301 [deprecated = true] */ 301:
3603
4088
  message.request = {
3604
4089
  oneofKind: "cacheDeleteExpiredRecords",
3605
- cacheDeleteExpiredRecords: CacheAPI_DeleteExpiredRecords_Request.internalBinaryRead(reader, reader.uint32(), options, (message.request as any).cacheDeleteExpiredRecords)
4090
+ cacheDeleteExpiredRecords: Util_Deprecated.internalBinaryRead(reader, reader.uint32(), options, (message.request as any).cacheDeleteExpiredRecords)
3606
4091
  };
3607
4092
  break;
3608
4093
  case /* MiLaboratories.PL.API.ControllerAPI.SetFeatures.Request controller_features_set */ 350:
@@ -3617,6 +4102,12 @@ class TxAPI_ClientMessage$Type extends MessageType<TxAPI_ClientMessage> {
3617
4102
  controllerFeaturesClear: ControllerAPI_ClearFeatures_Request.internalBinaryRead(reader, reader.uint32(), options, (message.request as any).controllerFeaturesClear)
3618
4103
  };
3619
4104
  break;
4105
+ case /* MiLaboratories.PL.API.TxAPI.SetDefaultColor.Request set_default_color */ 400:
4106
+ message.request = {
4107
+ oneofKind: "setDefaultColor",
4108
+ setDefaultColor: TxAPI_SetDefaultColor_Request.internalBinaryRead(reader, reader.uint32(), options, (message.request as any).setDefaultColor)
4109
+ };
4110
+ break;
3620
4111
  default:
3621
4112
  let u = options.readUnknownField;
3622
4113
  if (u === "throw")
@@ -3797,15 +4288,18 @@ class TxAPI_ClientMessage$Type extends MessageType<TxAPI_ClientMessage> {
3797
4288
  /* MiLaboratories.PL.API.CacheAPI.SetToField.Request cache_set_to_field = 300; */
3798
4289
  if (message.request.oneofKind === "cacheSetToField")
3799
4290
  CacheAPI_SetToField_Request.internalBinaryWrite(message.request.cacheSetToField, writer.tag(300, WireType.LengthDelimited).fork(), options).join();
3800
- /* MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Request cache_delete_expired_records = 301; */
4291
+ /* MiLaboratories.PL.API.Util.Deprecated cache_delete_expired_records = 301 [deprecated = true]; */
3801
4292
  if (message.request.oneofKind === "cacheDeleteExpiredRecords")
3802
- CacheAPI_DeleteExpiredRecords_Request.internalBinaryWrite(message.request.cacheDeleteExpiredRecords, writer.tag(301, WireType.LengthDelimited).fork(), options).join();
4293
+ Util_Deprecated.internalBinaryWrite(message.request.cacheDeleteExpiredRecords, writer.tag(301, WireType.LengthDelimited).fork(), options).join();
3803
4294
  /* MiLaboratories.PL.API.ControllerAPI.SetFeatures.Request controller_features_set = 350; */
3804
4295
  if (message.request.oneofKind === "controllerFeaturesSet")
3805
4296
  ControllerAPI_SetFeatures_Request.internalBinaryWrite(message.request.controllerFeaturesSet, writer.tag(350, WireType.LengthDelimited).fork(), options).join();
3806
4297
  /* MiLaboratories.PL.API.ControllerAPI.ClearFeatures.Request controller_features_clear = 351; */
3807
4298
  if (message.request.oneofKind === "controllerFeaturesClear")
3808
4299
  ControllerAPI_ClearFeatures_Request.internalBinaryWrite(message.request.controllerFeaturesClear, writer.tag(351, WireType.LengthDelimited).fork(), options).join();
4300
+ /* MiLaboratories.PL.API.TxAPI.SetDefaultColor.Request set_default_color = 400; */
4301
+ if (message.request.oneofKind === "setDefaultColor")
4302
+ TxAPI_SetDefaultColor_Request.internalBinaryWrite(message.request.setDefaultColor, writer.tag(400, WireType.LengthDelimited).fork(), options).join();
3809
4303
  let u = options.writeUnknownFields;
3810
4304
  if (u !== false)
3811
4305
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -3877,9 +4371,10 @@ class TxAPI_ServerMessage$Type extends MessageType<TxAPI_ServerMessage> {
3877
4371
  { no: 254, name: "controller_key_value_get_flag", kind: "message", oneof: "response", T: () => ControllerKVAPI_GetFlag_Response },
3878
4372
  { no: 255, name: "controller_key_value_get_flag_if_exists", kind: "message", oneof: "response", T: () => ControllerKVAPI_GetFlagIfExists_Response },
3879
4373
  { no: 300, name: "cache_set_to_field", kind: "message", oneof: "response", T: () => CacheAPI_SetToField_Response },
3880
- { no: 301, name: "cache_delete_expired_records", kind: "message", oneof: "response", T: () => CacheAPI_DeleteExpiredRecords_Response },
4374
+ { no: 301, name: "cache_delete_expired_records", kind: "message", oneof: "response", T: () => Util_Deprecated },
3881
4375
  { no: 350, name: "controller_features_set", kind: "message", oneof: "response", T: () => ControllerAPI_SetFeatures_Response },
3882
4376
  { no: 351, name: "controller_features_clear", kind: "message", oneof: "response", T: () => ControllerAPI_ClearFeatures_Response },
4377
+ { no: 400, name: "set_default_color", kind: "message", oneof: "response", T: () => TxAPI_SetDefaultColor_Response },
3883
4378
  { no: 3, name: "error", kind: "message", T: () => Status }
3884
4379
  ]);
3885
4380
  }
@@ -4232,10 +4727,10 @@ class TxAPI_ServerMessage$Type extends MessageType<TxAPI_ServerMessage> {
4232
4727
  cacheSetToField: CacheAPI_SetToField_Response.internalBinaryRead(reader, reader.uint32(), options, (message.response as any).cacheSetToField)
4233
4728
  };
4234
4729
  break;
4235
- case /* MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Response cache_delete_expired_records */ 301:
4730
+ case /* MiLaboratories.PL.API.Util.Deprecated cache_delete_expired_records = 301 [deprecated = true] */ 301:
4236
4731
  message.response = {
4237
4732
  oneofKind: "cacheDeleteExpiredRecords",
4238
- cacheDeleteExpiredRecords: CacheAPI_DeleteExpiredRecords_Response.internalBinaryRead(reader, reader.uint32(), options, (message.response as any).cacheDeleteExpiredRecords)
4733
+ cacheDeleteExpiredRecords: Util_Deprecated.internalBinaryRead(reader, reader.uint32(), options, (message.response as any).cacheDeleteExpiredRecords)
4239
4734
  };
4240
4735
  break;
4241
4736
  case /* MiLaboratories.PL.API.ControllerAPI.SetFeatures.Response controller_features_set */ 350:
@@ -4250,6 +4745,12 @@ class TxAPI_ServerMessage$Type extends MessageType<TxAPI_ServerMessage> {
4250
4745
  controllerFeaturesClear: ControllerAPI_ClearFeatures_Response.internalBinaryRead(reader, reader.uint32(), options, (message.response as any).controllerFeaturesClear)
4251
4746
  };
4252
4747
  break;
4748
+ case /* MiLaboratories.PL.API.TxAPI.SetDefaultColor.Response set_default_color */ 400:
4749
+ message.response = {
4750
+ oneofKind: "setDefaultColor",
4751
+ setDefaultColor: TxAPI_SetDefaultColor_Response.internalBinaryRead(reader, reader.uint32(), options, (message.response as any).setDefaultColor)
4752
+ };
4753
+ break;
4253
4754
  case /* google.rpc.Status error */ 3:
4254
4755
  message.error = Status.internalBinaryRead(reader, reader.uint32(), options, message.error);
4255
4756
  break;
@@ -4439,15 +4940,18 @@ class TxAPI_ServerMessage$Type extends MessageType<TxAPI_ServerMessage> {
4439
4940
  /* MiLaboratories.PL.API.CacheAPI.SetToField.Response cache_set_to_field = 300; */
4440
4941
  if (message.response.oneofKind === "cacheSetToField")
4441
4942
  CacheAPI_SetToField_Response.internalBinaryWrite(message.response.cacheSetToField, writer.tag(300, WireType.LengthDelimited).fork(), options).join();
4442
- /* MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Response cache_delete_expired_records = 301; */
4943
+ /* MiLaboratories.PL.API.Util.Deprecated cache_delete_expired_records = 301 [deprecated = true]; */
4443
4944
  if (message.response.oneofKind === "cacheDeleteExpiredRecords")
4444
- CacheAPI_DeleteExpiredRecords_Response.internalBinaryWrite(message.response.cacheDeleteExpiredRecords, writer.tag(301, WireType.LengthDelimited).fork(), options).join();
4945
+ Util_Deprecated.internalBinaryWrite(message.response.cacheDeleteExpiredRecords, writer.tag(301, WireType.LengthDelimited).fork(), options).join();
4445
4946
  /* MiLaboratories.PL.API.ControllerAPI.SetFeatures.Response controller_features_set = 350; */
4446
4947
  if (message.response.oneofKind === "controllerFeaturesSet")
4447
4948
  ControllerAPI_SetFeatures_Response.internalBinaryWrite(message.response.controllerFeaturesSet, writer.tag(350, WireType.LengthDelimited).fork(), options).join();
4448
4949
  /* MiLaboratories.PL.API.ControllerAPI.ClearFeatures.Response controller_features_clear = 351; */
4449
4950
  if (message.response.oneofKind === "controllerFeaturesClear")
4450
4951
  ControllerAPI_ClearFeatures_Response.internalBinaryWrite(message.response.controllerFeaturesClear, writer.tag(351, WireType.LengthDelimited).fork(), options).join();
4952
+ /* MiLaboratories.PL.API.TxAPI.SetDefaultColor.Response set_default_color = 400; */
4953
+ if (message.response.oneofKind === "setDefaultColor")
4954
+ TxAPI_SetDefaultColor_Response.internalBinaryWrite(message.response.setDefaultColor, writer.tag(400, WireType.LengthDelimited).fork(), options).join();
4451
4955
  let u = options.writeUnknownFields;
4452
4956
  if (u !== false)
4453
4957
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5143,6 +5647,128 @@ class TxAPI_Sync_Response$Type extends MessageType<TxAPI_Sync_Response> {
5143
5647
  */
5144
5648
  export const TxAPI_Sync_Response = new TxAPI_Sync_Response$Type();
5145
5649
  // @generated message type with reflection information, may provide speed optimized methods
5650
+ class TxAPI_SetDefaultColor$Type extends MessageType<TxAPI_SetDefaultColor> {
5651
+ constructor() {
5652
+ super("MiLaboratories.PL.API.TxAPI.SetDefaultColor", []);
5653
+ }
5654
+ create(value?: PartialMessage<TxAPI_SetDefaultColor>): TxAPI_SetDefaultColor {
5655
+ const message = globalThis.Object.create((this.messagePrototype!));
5656
+ if (value !== undefined)
5657
+ reflectionMergePartial<TxAPI_SetDefaultColor>(this, message, value);
5658
+ return message;
5659
+ }
5660
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TxAPI_SetDefaultColor): TxAPI_SetDefaultColor {
5661
+ let message = target ?? this.create(), end = reader.pos + length;
5662
+ while (reader.pos < end) {
5663
+ let [fieldNo, wireType] = reader.tag();
5664
+ switch (fieldNo) {
5665
+ default:
5666
+ let u = options.readUnknownField;
5667
+ if (u === "throw")
5668
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
5669
+ let d = reader.skip(wireType);
5670
+ if (u !== false)
5671
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
5672
+ }
5673
+ }
5674
+ return message;
5675
+ }
5676
+ internalBinaryWrite(message: TxAPI_SetDefaultColor, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
5677
+ let u = options.writeUnknownFields;
5678
+ if (u !== false)
5679
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
5680
+ return writer;
5681
+ }
5682
+ }
5683
+ /**
5684
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.TxAPI.SetDefaultColor
5685
+ */
5686
+ export const TxAPI_SetDefaultColor = new TxAPI_SetDefaultColor$Type();
5687
+ // @generated message type with reflection information, may provide speed optimized methods
5688
+ class TxAPI_SetDefaultColor_Request$Type extends MessageType<TxAPI_SetDefaultColor_Request> {
5689
+ constructor() {
5690
+ super("MiLaboratories.PL.API.TxAPI.SetDefaultColor.Request", [
5691
+ { no: 1, name: "color_proof", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5692
+ ]);
5693
+ }
5694
+ create(value?: PartialMessage<TxAPI_SetDefaultColor_Request>): TxAPI_SetDefaultColor_Request {
5695
+ const message = globalThis.Object.create((this.messagePrototype!));
5696
+ if (value !== undefined)
5697
+ reflectionMergePartial<TxAPI_SetDefaultColor_Request>(this, message, value);
5698
+ return message;
5699
+ }
5700
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TxAPI_SetDefaultColor_Request): TxAPI_SetDefaultColor_Request {
5701
+ let message = target ?? this.create(), end = reader.pos + length;
5702
+ while (reader.pos < end) {
5703
+ let [fieldNo, wireType] = reader.tag();
5704
+ switch (fieldNo) {
5705
+ case /* optional bytes color_proof */ 1:
5706
+ message.colorProof = reader.bytes();
5707
+ break;
5708
+ default:
5709
+ let u = options.readUnknownField;
5710
+ if (u === "throw")
5711
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
5712
+ let d = reader.skip(wireType);
5713
+ if (u !== false)
5714
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
5715
+ }
5716
+ }
5717
+ return message;
5718
+ }
5719
+ internalBinaryWrite(message: TxAPI_SetDefaultColor_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
5720
+ /* optional bytes color_proof = 1; */
5721
+ if (message.colorProof !== undefined)
5722
+ writer.tag(1, WireType.LengthDelimited).bytes(message.colorProof);
5723
+ let u = options.writeUnknownFields;
5724
+ if (u !== false)
5725
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
5726
+ return writer;
5727
+ }
5728
+ }
5729
+ /**
5730
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.TxAPI.SetDefaultColor.Request
5731
+ */
5732
+ export const TxAPI_SetDefaultColor_Request = new TxAPI_SetDefaultColor_Request$Type();
5733
+ // @generated message type with reflection information, may provide speed optimized methods
5734
+ class TxAPI_SetDefaultColor_Response$Type extends MessageType<TxAPI_SetDefaultColor_Response> {
5735
+ constructor() {
5736
+ super("MiLaboratories.PL.API.TxAPI.SetDefaultColor.Response", []);
5737
+ }
5738
+ create(value?: PartialMessage<TxAPI_SetDefaultColor_Response>): TxAPI_SetDefaultColor_Response {
5739
+ const message = globalThis.Object.create((this.messagePrototype!));
5740
+ if (value !== undefined)
5741
+ reflectionMergePartial<TxAPI_SetDefaultColor_Response>(this, message, value);
5742
+ return message;
5743
+ }
5744
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TxAPI_SetDefaultColor_Response): TxAPI_SetDefaultColor_Response {
5745
+ let message = target ?? this.create(), end = reader.pos + length;
5746
+ while (reader.pos < end) {
5747
+ let [fieldNo, wireType] = reader.tag();
5748
+ switch (fieldNo) {
5749
+ default:
5750
+ let u = options.readUnknownField;
5751
+ if (u === "throw")
5752
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
5753
+ let d = reader.skip(wireType);
5754
+ if (u !== false)
5755
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
5756
+ }
5757
+ }
5758
+ return message;
5759
+ }
5760
+ internalBinaryWrite(message: TxAPI_SetDefaultColor_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
5761
+ let u = options.writeUnknownFields;
5762
+ if (u !== false)
5763
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
5764
+ return writer;
5765
+ }
5766
+ }
5767
+ /**
5768
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.TxAPI.SetDefaultColor.Response
5769
+ */
5770
+ export const TxAPI_SetDefaultColor_Response = new TxAPI_SetDefaultColor_Response$Type();
5771
+ // @generated message type with reflection information, may provide speed optimized methods
5146
5772
  class ResourceAPI$Type extends MessageType<ResourceAPI> {
5147
5773
  constructor() {
5148
5774
  super("MiLaboratories.PL.API.ResourceAPI", []);
@@ -5224,7 +5850,8 @@ class ResourceAPI_CreateStruct_Request$Type extends MessageType<ResourceAPI_Crea
5224
5850
  super("MiLaboratories.PL.API.ResourceAPI.CreateStruct.Request", [
5225
5851
  { no: 2, name: "id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
5226
5852
  { no: 3, name: "type", kind: "message", T: () => ResourceType },
5227
- { no: 4, name: "data", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5853
+ { no: 4, name: "data", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
5854
+ { no: 5, name: "color_proof", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5228
5855
  ]);
5229
5856
  }
5230
5857
  create(value?: PartialMessage<ResourceAPI_CreateStruct_Request>): ResourceAPI_CreateStruct_Request {
@@ -5248,6 +5875,9 @@ class ResourceAPI_CreateStruct_Request$Type extends MessageType<ResourceAPI_Crea
5248
5875
  case /* optional bytes data */ 4:
5249
5876
  message.data = reader.bytes();
5250
5877
  break;
5878
+ case /* optional bytes color_proof */ 5:
5879
+ message.colorProof = reader.bytes();
5880
+ break;
5251
5881
  default:
5252
5882
  let u = options.readUnknownField;
5253
5883
  if (u === "throw")
@@ -5269,6 +5899,9 @@ class ResourceAPI_CreateStruct_Request$Type extends MessageType<ResourceAPI_Crea
5269
5899
  /* optional bytes data = 4; */
5270
5900
  if (message.data !== undefined)
5271
5901
  writer.tag(4, WireType.LengthDelimited).bytes(message.data);
5902
+ /* optional bytes color_proof = 5; */
5903
+ if (message.colorProof !== undefined)
5904
+ writer.tag(5, WireType.LengthDelimited).bytes(message.colorProof);
5272
5905
  let u = options.writeUnknownFields;
5273
5906
  if (u !== false)
5274
5907
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5283,7 +5916,8 @@ export const ResourceAPI_CreateStruct_Request = new ResourceAPI_CreateStruct_Req
5283
5916
  class ResourceAPI_CreateStruct_Response$Type extends MessageType<ResourceAPI_CreateStruct_Response> {
5284
5917
  constructor() {
5285
5918
  super("MiLaboratories.PL.API.ResourceAPI.CreateStruct.Response", [
5286
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
5919
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
5920
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5287
5921
  ]);
5288
5922
  }
5289
5923
  create(value?: PartialMessage<ResourceAPI_CreateStruct_Response>): ResourceAPI_CreateStruct_Response {
@@ -5301,6 +5935,9 @@ class ResourceAPI_CreateStruct_Response$Type extends MessageType<ResourceAPI_Cre
5301
5935
  case /* uint64 resource_id */ 1:
5302
5936
  message.resourceId = reader.uint64().toBigInt();
5303
5937
  break;
5938
+ case /* optional bytes resource_signature */ 2:
5939
+ message.resourceSignature = reader.bytes();
5940
+ break;
5304
5941
  default:
5305
5942
  let u = options.readUnknownField;
5306
5943
  if (u === "throw")
@@ -5316,6 +5953,9 @@ class ResourceAPI_CreateStruct_Response$Type extends MessageType<ResourceAPI_Cre
5316
5953
  /* uint64 resource_id = 1; */
5317
5954
  if (message.resourceId !== 0n)
5318
5955
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
5956
+ /* optional bytes resource_signature = 2; */
5957
+ if (message.resourceSignature !== undefined)
5958
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
5319
5959
  let u = options.writeUnknownFields;
5320
5960
  if (u !== false)
5321
5961
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5370,7 +6010,8 @@ class ResourceAPI_CreateEphemeral_Request$Type extends MessageType<ResourceAPI_C
5370
6010
  super("MiLaboratories.PL.API.ResourceAPI.CreateEphemeral.Request", [
5371
6011
  { no: 2, name: "id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
5372
6012
  { no: 3, name: "type", kind: "message", T: () => ResourceType },
5373
- { no: 4, name: "data", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
6013
+ { no: 4, name: "data", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
6014
+ { no: 5, name: "color_proof", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5374
6015
  ]);
5375
6016
  }
5376
6017
  create(value?: PartialMessage<ResourceAPI_CreateEphemeral_Request>): ResourceAPI_CreateEphemeral_Request {
@@ -5394,6 +6035,9 @@ class ResourceAPI_CreateEphemeral_Request$Type extends MessageType<ResourceAPI_C
5394
6035
  case /* optional bytes data */ 4:
5395
6036
  message.data = reader.bytes();
5396
6037
  break;
6038
+ case /* optional bytes color_proof */ 5:
6039
+ message.colorProof = reader.bytes();
6040
+ break;
5397
6041
  default:
5398
6042
  let u = options.readUnknownField;
5399
6043
  if (u === "throw")
@@ -5415,6 +6059,9 @@ class ResourceAPI_CreateEphemeral_Request$Type extends MessageType<ResourceAPI_C
5415
6059
  /* optional bytes data = 4; */
5416
6060
  if (message.data !== undefined)
5417
6061
  writer.tag(4, WireType.LengthDelimited).bytes(message.data);
6062
+ /* optional bytes color_proof = 5; */
6063
+ if (message.colorProof !== undefined)
6064
+ writer.tag(5, WireType.LengthDelimited).bytes(message.colorProof);
5418
6065
  let u = options.writeUnknownFields;
5419
6066
  if (u !== false)
5420
6067
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5429,7 +6076,8 @@ export const ResourceAPI_CreateEphemeral_Request = new ResourceAPI_CreateEphemer
5429
6076
  class ResourceAPI_CreateEphemeral_Response$Type extends MessageType<ResourceAPI_CreateEphemeral_Response> {
5430
6077
  constructor() {
5431
6078
  super("MiLaboratories.PL.API.ResourceAPI.CreateEphemeral.Response", [
5432
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
6079
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
6080
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5433
6081
  ]);
5434
6082
  }
5435
6083
  create(value?: PartialMessage<ResourceAPI_CreateEphemeral_Response>): ResourceAPI_CreateEphemeral_Response {
@@ -5447,6 +6095,9 @@ class ResourceAPI_CreateEphemeral_Response$Type extends MessageType<ResourceAPI_
5447
6095
  case /* uint64 resource_id */ 1:
5448
6096
  message.resourceId = reader.uint64().toBigInt();
5449
6097
  break;
6098
+ case /* optional bytes resource_signature */ 2:
6099
+ message.resourceSignature = reader.bytes();
6100
+ break;
5450
6101
  default:
5451
6102
  let u = options.readUnknownField;
5452
6103
  if (u === "throw")
@@ -5462,6 +6113,9 @@ class ResourceAPI_CreateEphemeral_Response$Type extends MessageType<ResourceAPI_
5462
6113
  /* uint64 resource_id = 1; */
5463
6114
  if (message.resourceId !== 0n)
5464
6115
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
6116
+ /* optional bytes resource_signature = 2; */
6117
+ if (message.resourceSignature !== undefined)
6118
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
5465
6119
  let u = options.writeUnknownFields;
5466
6120
  if (u !== false)
5467
6121
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5663,7 +6317,8 @@ class ResourceAPI_CreateValue_Request$Type extends MessageType<ResourceAPI_Creat
5663
6317
  { no: 2, name: "id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
5664
6318
  { no: 3, name: "type", kind: "message", T: () => ResourceType },
5665
6319
  { no: 6, name: "data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ },
5666
- { no: 7, name: "error_if_exists", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
6320
+ { no: 7, name: "error_if_exists", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
6321
+ { no: 8, name: "color_proof", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5667
6322
  ]);
5668
6323
  }
5669
6324
  create(value?: PartialMessage<ResourceAPI_CreateValue_Request>): ResourceAPI_CreateValue_Request {
@@ -5692,6 +6347,9 @@ class ResourceAPI_CreateValue_Request$Type extends MessageType<ResourceAPI_Creat
5692
6347
  case /* bool error_if_exists */ 7:
5693
6348
  message.errorIfExists = reader.bool();
5694
6349
  break;
6350
+ case /* optional bytes color_proof */ 8:
6351
+ message.colorProof = reader.bytes();
6352
+ break;
5695
6353
  default:
5696
6354
  let u = options.readUnknownField;
5697
6355
  if (u === "throw")
@@ -5716,6 +6374,9 @@ class ResourceAPI_CreateValue_Request$Type extends MessageType<ResourceAPI_Creat
5716
6374
  /* bool error_if_exists = 7; */
5717
6375
  if (message.errorIfExists !== false)
5718
6376
  writer.tag(7, WireType.Varint).bool(message.errorIfExists);
6377
+ /* optional bytes color_proof = 8; */
6378
+ if (message.colorProof !== undefined)
6379
+ writer.tag(8, WireType.LengthDelimited).bytes(message.colorProof);
5719
6380
  let u = options.writeUnknownFields;
5720
6381
  if (u !== false)
5721
6382
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5730,7 +6391,8 @@ export const ResourceAPI_CreateValue_Request = new ResourceAPI_CreateValue_Reque
5730
6391
  class ResourceAPI_CreateValue_Response$Type extends MessageType<ResourceAPI_CreateValue_Response> {
5731
6392
  constructor() {
5732
6393
  super("MiLaboratories.PL.API.ResourceAPI.CreateValue.Response", [
5733
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
6394
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
6395
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5734
6396
  ]);
5735
6397
  }
5736
6398
  create(value?: PartialMessage<ResourceAPI_CreateValue_Response>): ResourceAPI_CreateValue_Response {
@@ -5748,6 +6410,9 @@ class ResourceAPI_CreateValue_Response$Type extends MessageType<ResourceAPI_Crea
5748
6410
  case /* uint64 resource_id */ 1:
5749
6411
  message.resourceId = reader.uint64().toBigInt();
5750
6412
  break;
6413
+ case /* optional bytes resource_signature */ 2:
6414
+ message.resourceSignature = reader.bytes();
6415
+ break;
5751
6416
  default:
5752
6417
  let u = options.readUnknownField;
5753
6418
  if (u === "throw")
@@ -5763,6 +6428,9 @@ class ResourceAPI_CreateValue_Response$Type extends MessageType<ResourceAPI_Crea
5763
6428
  /* uint64 resource_id = 1; */
5764
6429
  if (message.resourceId !== 0n)
5765
6430
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
6431
+ /* optional bytes resource_signature = 2; */
6432
+ if (message.resourceSignature !== undefined)
6433
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
5766
6434
  let u = options.writeUnknownFields;
5767
6435
  if (u !== false)
5768
6436
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5869,7 +6537,8 @@ export const ResourceAPI_GetValueID_Request = new ResourceAPI_GetValueID_Request
5869
6537
  class ResourceAPI_GetValueID_Response$Type extends MessageType<ResourceAPI_GetValueID_Response> {
5870
6538
  constructor() {
5871
6539
  super("MiLaboratories.PL.API.ResourceAPI.GetValueID.Response", [
5872
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
6540
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
6541
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5873
6542
  ]);
5874
6543
  }
5875
6544
  create(value?: PartialMessage<ResourceAPI_GetValueID_Response>): ResourceAPI_GetValueID_Response {
@@ -5887,6 +6556,9 @@ class ResourceAPI_GetValueID_Response$Type extends MessageType<ResourceAPI_GetVa
5887
6556
  case /* uint64 resource_id */ 1:
5888
6557
  message.resourceId = reader.uint64().toBigInt();
5889
6558
  break;
6559
+ case /* optional bytes resource_signature */ 2:
6560
+ message.resourceSignature = reader.bytes();
6561
+ break;
5890
6562
  default:
5891
6563
  let u = options.readUnknownField;
5892
6564
  if (u === "throw")
@@ -5902,6 +6574,9 @@ class ResourceAPI_GetValueID_Response$Type extends MessageType<ResourceAPI_GetVa
5902
6574
  /* uint64 resource_id = 1; */
5903
6575
  if (message.resourceId !== 0n)
5904
6576
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
6577
+ /* optional bytes resource_signature = 2; */
6578
+ if (message.resourceSignature !== undefined)
6579
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
5905
6580
  let u = options.writeUnknownFields;
5906
6581
  if (u !== false)
5907
6582
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -5957,7 +6632,8 @@ class ResourceAPI_CreateSingleton_Request$Type extends MessageType<ResourceAPI_C
5957
6632
  { no: 2, name: "id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
5958
6633
  { no: 3, name: "type", kind: "message", T: () => ResourceType },
5959
6634
  { no: 6, name: "data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ },
5960
- { no: 7, name: "error_if_exists", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
6635
+ { no: 7, name: "error_if_exists", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
6636
+ { no: 8, name: "color_proof", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
5961
6637
  ]);
5962
6638
  }
5963
6639
  create(value?: PartialMessage<ResourceAPI_CreateSingleton_Request>): ResourceAPI_CreateSingleton_Request {
@@ -5986,6 +6662,9 @@ class ResourceAPI_CreateSingleton_Request$Type extends MessageType<ResourceAPI_C
5986
6662
  case /* bool error_if_exists */ 7:
5987
6663
  message.errorIfExists = reader.bool();
5988
6664
  break;
6665
+ case /* optional bytes color_proof */ 8:
6666
+ message.colorProof = reader.bytes();
6667
+ break;
5989
6668
  default:
5990
6669
  let u = options.readUnknownField;
5991
6670
  if (u === "throw")
@@ -6010,6 +6689,9 @@ class ResourceAPI_CreateSingleton_Request$Type extends MessageType<ResourceAPI_C
6010
6689
  /* bool error_if_exists = 7; */
6011
6690
  if (message.errorIfExists !== false)
6012
6691
  writer.tag(7, WireType.Varint).bool(message.errorIfExists);
6692
+ /* optional bytes color_proof = 8; */
6693
+ if (message.colorProof !== undefined)
6694
+ writer.tag(8, WireType.LengthDelimited).bytes(message.colorProof);
6013
6695
  let u = options.writeUnknownFields;
6014
6696
  if (u !== false)
6015
6697
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -6024,7 +6706,8 @@ export const ResourceAPI_CreateSingleton_Request = new ResourceAPI_CreateSinglet
6024
6706
  class ResourceAPI_CreateSingleton_Response$Type extends MessageType<ResourceAPI_CreateSingleton_Response> {
6025
6707
  constructor() {
6026
6708
  super("MiLaboratories.PL.API.ResourceAPI.CreateSingleton.Response", [
6027
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
6709
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
6710
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
6028
6711
  ]);
6029
6712
  }
6030
6713
  create(value?: PartialMessage<ResourceAPI_CreateSingleton_Response>): ResourceAPI_CreateSingleton_Response {
@@ -6042,6 +6725,9 @@ class ResourceAPI_CreateSingleton_Response$Type extends MessageType<ResourceAPI_
6042
6725
  case /* uint64 resource_id */ 1:
6043
6726
  message.resourceId = reader.uint64().toBigInt();
6044
6727
  break;
6728
+ case /* optional bytes resource_signature */ 2:
6729
+ message.resourceSignature = reader.bytes();
6730
+ break;
6045
6731
  default:
6046
6732
  let u = options.readUnknownField;
6047
6733
  if (u === "throw")
@@ -6057,6 +6743,9 @@ class ResourceAPI_CreateSingleton_Response$Type extends MessageType<ResourceAPI_
6057
6743
  /* uint64 resource_id = 1; */
6058
6744
  if (message.resourceId !== 0n)
6059
6745
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
6746
+ /* optional bytes resource_signature = 2; */
6747
+ if (message.resourceSignature !== undefined)
6748
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
6060
6749
  let u = options.writeUnknownFields;
6061
6750
  if (u !== false)
6062
6751
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -6255,7 +6944,8 @@ export const ResourceAPI_LockInputs = new ResourceAPI_LockInputs$Type();
6255
6944
  class ResourceAPI_LockInputs_Request$Type extends MessageType<ResourceAPI_LockInputs_Request> {
6256
6945
  constructor() {
6257
6946
  super("MiLaboratories.PL.API.ResourceAPI.LockInputs.Request", [
6258
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
6947
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
6948
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
6259
6949
  ]);
6260
6950
  }
6261
6951
  create(value?: PartialMessage<ResourceAPI_LockInputs_Request>): ResourceAPI_LockInputs_Request {
@@ -6273,6 +6963,9 @@ class ResourceAPI_LockInputs_Request$Type extends MessageType<ResourceAPI_LockIn
6273
6963
  case /* uint64 resource_id */ 1:
6274
6964
  message.resourceId = reader.uint64().toBigInt();
6275
6965
  break;
6966
+ case /* optional bytes resource_signature */ 2:
6967
+ message.resourceSignature = reader.bytes();
6968
+ break;
6276
6969
  default:
6277
6970
  let u = options.readUnknownField;
6278
6971
  if (u === "throw")
@@ -6288,6 +6981,9 @@ class ResourceAPI_LockInputs_Request$Type extends MessageType<ResourceAPI_LockIn
6288
6981
  /* uint64 resource_id = 1; */
6289
6982
  if (message.resourceId !== 0n)
6290
6983
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
6984
+ /* optional bytes resource_signature = 2; */
6985
+ if (message.resourceSignature !== undefined)
6986
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
6291
6987
  let u = options.writeUnknownFields;
6292
6988
  if (u !== false)
6293
6989
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -6378,7 +7074,8 @@ export const ResourceAPI_LockOutputs = new ResourceAPI_LockOutputs$Type();
6378
7074
  class ResourceAPI_LockOutputs_Request$Type extends MessageType<ResourceAPI_LockOutputs_Request> {
6379
7075
  constructor() {
6380
7076
  super("MiLaboratories.PL.API.ResourceAPI.LockOutputs.Request", [
6381
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
7077
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
7078
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
6382
7079
  ]);
6383
7080
  }
6384
7081
  create(value?: PartialMessage<ResourceAPI_LockOutputs_Request>): ResourceAPI_LockOutputs_Request {
@@ -6396,6 +7093,9 @@ class ResourceAPI_LockOutputs_Request$Type extends MessageType<ResourceAPI_LockO
6396
7093
  case /* uint64 resource_id */ 1:
6397
7094
  message.resourceId = reader.uint64().toBigInt();
6398
7095
  break;
7096
+ case /* optional bytes resource_signature */ 2:
7097
+ message.resourceSignature = reader.bytes();
7098
+ break;
6399
7099
  default:
6400
7100
  let u = options.readUnknownField;
6401
7101
  if (u === "throw")
@@ -6411,6 +7111,9 @@ class ResourceAPI_LockOutputs_Request$Type extends MessageType<ResourceAPI_LockO
6411
7111
  /* uint64 resource_id = 1; */
6412
7112
  if (message.resourceId !== 0n)
6413
7113
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
7114
+ /* optional bytes resource_signature = 2; */
7115
+ if (message.resourceSignature !== undefined)
7116
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
6414
7117
  let u = options.writeUnknownFields;
6415
7118
  if (u !== false)
6416
7119
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -6501,7 +7204,8 @@ export const ResourceAPI_Exists = new ResourceAPI_Exists$Type();
6501
7204
  class ResourceAPI_Exists_Request$Type extends MessageType<ResourceAPI_Exists_Request> {
6502
7205
  constructor() {
6503
7206
  super("MiLaboratories.PL.API.ResourceAPI.Exists.Request", [
6504
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
7207
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
7208
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
6505
7209
  ]);
6506
7210
  }
6507
7211
  create(value?: PartialMessage<ResourceAPI_Exists_Request>): ResourceAPI_Exists_Request {
@@ -6519,6 +7223,9 @@ class ResourceAPI_Exists_Request$Type extends MessageType<ResourceAPI_Exists_Req
6519
7223
  case /* uint64 resource_id */ 1:
6520
7224
  message.resourceId = reader.uint64().toBigInt();
6521
7225
  break;
7226
+ case /* optional bytes resource_signature */ 2:
7227
+ message.resourceSignature = reader.bytes();
7228
+ break;
6522
7229
  default:
6523
7230
  let u = options.readUnknownField;
6524
7231
  if (u === "throw")
@@ -6534,6 +7241,9 @@ class ResourceAPI_Exists_Request$Type extends MessageType<ResourceAPI_Exists_Req
6534
7241
  /* uint64 resource_id = 1; */
6535
7242
  if (message.resourceId !== 0n)
6536
7243
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
7244
+ /* optional bytes resource_signature = 2; */
7245
+ if (message.resourceSignature !== undefined)
7246
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
6537
7247
  let u = options.writeUnknownFields;
6538
7248
  if (u !== false)
6539
7249
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -6634,7 +7344,9 @@ class ResourceAPI_SetError_Request$Type extends MessageType<ResourceAPI_SetError
6634
7344
  constructor() {
6635
7345
  super("MiLaboratories.PL.API.ResourceAPI.SetError.Request", [
6636
7346
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
6637
- { no: 2, name: "error_resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
7347
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
7348
+ { no: 2, name: "error_resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
7349
+ { no: 4, name: "error_resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
6638
7350
  ]);
6639
7351
  }
6640
7352
  create(value?: PartialMessage<ResourceAPI_SetError_Request>): ResourceAPI_SetError_Request {
@@ -6653,9 +7365,15 @@ class ResourceAPI_SetError_Request$Type extends MessageType<ResourceAPI_SetError
6653
7365
  case /* uint64 resource_id */ 1:
6654
7366
  message.resourceId = reader.uint64().toBigInt();
6655
7367
  break;
7368
+ case /* optional bytes resource_signature */ 3:
7369
+ message.resourceSignature = reader.bytes();
7370
+ break;
6656
7371
  case /* uint64 error_resource_id */ 2:
6657
7372
  message.errorResourceId = reader.uint64().toBigInt();
6658
7373
  break;
7374
+ case /* optional bytes error_resource_signature */ 4:
7375
+ message.errorResourceSignature = reader.bytes();
7376
+ break;
6659
7377
  default:
6660
7378
  let u = options.readUnknownField;
6661
7379
  if (u === "throw")
@@ -6674,6 +7392,12 @@ class ResourceAPI_SetError_Request$Type extends MessageType<ResourceAPI_SetError
6674
7392
  /* uint64 error_resource_id = 2; */
6675
7393
  if (message.errorResourceId !== 0n)
6676
7394
  writer.tag(2, WireType.Varint).uint64(message.errorResourceId);
7395
+ /* optional bytes resource_signature = 3; */
7396
+ if (message.resourceSignature !== undefined)
7397
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
7398
+ /* optional bytes error_resource_signature = 4; */
7399
+ if (message.errorResourceSignature !== undefined)
7400
+ writer.tag(4, WireType.LengthDelimited).bytes(message.errorResourceSignature);
6677
7401
  let u = options.writeUnknownFields;
6678
7402
  if (u !== false)
6679
7403
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -6765,6 +7489,7 @@ class ResourceAPI_Get_Request$Type extends MessageType<ResourceAPI_Get_Request>
6765
7489
  constructor() {
6766
7490
  super("MiLaboratories.PL.API.ResourceAPI.Get.Request", [
6767
7491
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
7492
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
6768
7493
  { no: 2, name: "load_fields", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
6769
7494
  ]);
6770
7495
  }
@@ -6784,6 +7509,9 @@ class ResourceAPI_Get_Request$Type extends MessageType<ResourceAPI_Get_Request>
6784
7509
  case /* uint64 resource_id */ 1:
6785
7510
  message.resourceId = reader.uint64().toBigInt();
6786
7511
  break;
7512
+ case /* optional bytes resource_signature */ 3:
7513
+ message.resourceSignature = reader.bytes();
7514
+ break;
6787
7515
  case /* bool load_fields */ 2:
6788
7516
  message.loadFields = reader.bool();
6789
7517
  break;
@@ -6805,6 +7533,9 @@ class ResourceAPI_Get_Request$Type extends MessageType<ResourceAPI_Get_Request>
6805
7533
  /* bool load_fields = 2; */
6806
7534
  if (message.loadFields !== false)
6807
7535
  writer.tag(2, WireType.Varint).bool(message.loadFields);
7536
+ /* optional bytes resource_signature = 3; */
7537
+ if (message.resourceSignature !== undefined)
7538
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
6808
7539
  let u = options.writeUnknownFields;
6809
7540
  if (u !== false)
6810
7541
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -7157,7 +7888,8 @@ export const ResourceAPI_CreateRoot_Request = new ResourceAPI_CreateRoot_Request
7157
7888
  class ResourceAPI_CreateRoot_Response$Type extends MessageType<ResourceAPI_CreateRoot_Response> {
7158
7889
  constructor() {
7159
7890
  super("MiLaboratories.PL.API.ResourceAPI.CreateRoot.Response", [
7160
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
7891
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
7892
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
7161
7893
  ]);
7162
7894
  }
7163
7895
  create(value?: PartialMessage<ResourceAPI_CreateRoot_Response>): ResourceAPI_CreateRoot_Response {
@@ -7175,6 +7907,9 @@ class ResourceAPI_CreateRoot_Response$Type extends MessageType<ResourceAPI_Creat
7175
7907
  case /* uint64 resource_id */ 1:
7176
7908
  message.resourceId = reader.uint64().toBigInt();
7177
7909
  break;
7910
+ case /* optional bytes resource_signature */ 2:
7911
+ message.resourceSignature = reader.bytes();
7912
+ break;
7178
7913
  default:
7179
7914
  let u = options.readUnknownField;
7180
7915
  if (u === "throw")
@@ -7190,6 +7925,9 @@ class ResourceAPI_CreateRoot_Response$Type extends MessageType<ResourceAPI_Creat
7190
7925
  /* uint64 resource_id = 1; */
7191
7926
  if (message.resourceId !== 0n)
7192
7927
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
7928
+ /* optional bytes resource_signature = 2; */
7929
+ if (message.resourceSignature !== undefined)
7930
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
7193
7931
  let u = options.writeUnknownFields;
7194
7932
  if (u !== false)
7195
7933
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -7242,12 +7980,13 @@ export const ResourceAPI_Remove = new ResourceAPI_Remove$Type();
7242
7980
  class ResourceAPI_Remove_Request$Type extends MessageType<ResourceAPI_Remove_Request> {
7243
7981
  constructor() {
7244
7982
  super("MiLaboratories.PL.API.ResourceAPI.Remove.Request", [
7245
- { no: 1, name: "id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
7983
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
7984
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
7246
7985
  ]);
7247
7986
  }
7248
7987
  create(value?: PartialMessage<ResourceAPI_Remove_Request>): ResourceAPI_Remove_Request {
7249
7988
  const message = globalThis.Object.create((this.messagePrototype!));
7250
- message.id = 0n;
7989
+ message.resourceId = 0n;
7251
7990
  if (value !== undefined)
7252
7991
  reflectionMergePartial<ResourceAPI_Remove_Request>(this, message, value);
7253
7992
  return message;
@@ -7257,8 +7996,11 @@ class ResourceAPI_Remove_Request$Type extends MessageType<ResourceAPI_Remove_Req
7257
7996
  while (reader.pos < end) {
7258
7997
  let [fieldNo, wireType] = reader.tag();
7259
7998
  switch (fieldNo) {
7260
- case /* uint64 id */ 1:
7261
- message.id = reader.uint64().toBigInt();
7999
+ case /* uint64 resource_id */ 1:
8000
+ message.resourceId = reader.uint64().toBigInt();
8001
+ break;
8002
+ case /* optional bytes resource_signature */ 2:
8003
+ message.resourceSignature = reader.bytes();
7262
8004
  break;
7263
8005
  default:
7264
8006
  let u = options.readUnknownField;
@@ -7272,9 +8014,12 @@ class ResourceAPI_Remove_Request$Type extends MessageType<ResourceAPI_Remove_Req
7272
8014
  return message;
7273
8015
  }
7274
8016
  internalBinaryWrite(message: ResourceAPI_Remove_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
7275
- /* uint64 id = 1; */
7276
- if (message.id !== 0n)
7277
- writer.tag(1, WireType.Varint).uint64(message.id);
8017
+ /* uint64 resource_id = 1; */
8018
+ if (message.resourceId !== 0n)
8019
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
8020
+ /* optional bytes resource_signature = 2; */
8021
+ if (message.resourceSignature !== undefined)
8022
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
7278
8023
  let u = options.writeUnknownFields;
7279
8024
  if (u !== false)
7280
8025
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -7404,6 +8149,7 @@ class ResourceAPI_Name_Set_Request$Type extends MessageType<ResourceAPI_Name_Set
7404
8149
  constructor() {
7405
8150
  super("MiLaboratories.PL.API.ResourceAPI.Name.Set.Request", [
7406
8151
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
8152
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
7407
8153
  { no: 2, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
7408
8154
  ]);
7409
8155
  }
@@ -7423,6 +8169,9 @@ class ResourceAPI_Name_Set_Request$Type extends MessageType<ResourceAPI_Name_Set
7423
8169
  case /* uint64 resource_id */ 1:
7424
8170
  message.resourceId = reader.uint64().toBigInt();
7425
8171
  break;
8172
+ case /* optional bytes resource_signature */ 3:
8173
+ message.resourceSignature = reader.bytes();
8174
+ break;
7426
8175
  case /* string name */ 2:
7427
8176
  message.name = reader.string();
7428
8177
  break;
@@ -7444,6 +8193,9 @@ class ResourceAPI_Name_Set_Request$Type extends MessageType<ResourceAPI_Name_Set
7444
8193
  /* string name = 2; */
7445
8194
  if (message.name !== "")
7446
8195
  writer.tag(2, WireType.LengthDelimited).string(message.name);
8196
+ /* optional bytes resource_signature = 3; */
8197
+ if (message.resourceSignature !== undefined)
8198
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
7447
8199
  let u = options.writeUnknownFields;
7448
8200
  if (u !== false)
7449
8201
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -7581,7 +8333,8 @@ export const ResourceAPI_Name_Get_Request = new ResourceAPI_Name_Get_Request$Typ
7581
8333
  class ResourceAPI_Name_Get_Response$Type extends MessageType<ResourceAPI_Name_Get_Response> {
7582
8334
  constructor() {
7583
8335
  super("MiLaboratories.PL.API.ResourceAPI.Name.Get.Response", [
7584
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
8336
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
8337
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
7585
8338
  ]);
7586
8339
  }
7587
8340
  create(value?: PartialMessage<ResourceAPI_Name_Get_Response>): ResourceAPI_Name_Get_Response {
@@ -7599,6 +8352,9 @@ class ResourceAPI_Name_Get_Response$Type extends MessageType<ResourceAPI_Name_Ge
7599
8352
  case /* uint64 resource_id */ 1:
7600
8353
  message.resourceId = reader.uint64().toBigInt();
7601
8354
  break;
8355
+ case /* optional bytes resource_signature */ 2:
8356
+ message.resourceSignature = reader.bytes();
8357
+ break;
7602
8358
  default:
7603
8359
  let u = options.readUnknownField;
7604
8360
  if (u === "throw")
@@ -7614,6 +8370,9 @@ class ResourceAPI_Name_Get_Response$Type extends MessageType<ResourceAPI_Name_Ge
7614
8370
  /* uint64 resource_id = 1; */
7615
8371
  if (message.resourceId !== 0n)
7616
8372
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
8373
+ /* optional bytes resource_signature = 2; */
8374
+ if (message.resourceSignature !== undefined)
8375
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
7617
8376
  let u = options.writeUnknownFields;
7618
8377
  if (u !== false)
7619
8378
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -7922,6 +8681,7 @@ class ResourceAPI_Tree_Request$Type extends MessageType<ResourceAPI_Tree_Request
7922
8681
  constructor() {
7923
8682
  super("MiLaboratories.PL.API.ResourceAPI.Tree.Request", [
7924
8683
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
8684
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
7925
8685
  { no: 2, name: "max_depth", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ }
7926
8686
  ]);
7927
8687
  }
@@ -7940,6 +8700,9 @@ class ResourceAPI_Tree_Request$Type extends MessageType<ResourceAPI_Tree_Request
7940
8700
  case /* uint64 resource_id */ 1:
7941
8701
  message.resourceId = reader.uint64().toBigInt();
7942
8702
  break;
8703
+ case /* optional bytes resource_signature */ 3:
8704
+ message.resourceSignature = reader.bytes();
8705
+ break;
7943
8706
  case /* optional uint32 max_depth */ 2:
7944
8707
  message.maxDepth = reader.uint32();
7945
8708
  break;
@@ -7961,6 +8724,9 @@ class ResourceAPI_Tree_Request$Type extends MessageType<ResourceAPI_Tree_Request
7961
8724
  /* optional uint32 max_depth = 2; */
7962
8725
  if (message.maxDepth !== undefined)
7963
8726
  writer.tag(2, WireType.Varint).uint32(message.maxDepth);
8727
+ /* optional bytes resource_signature = 3; */
8728
+ if (message.resourceSignature !== undefined)
8729
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
7964
8730
  let u = options.writeUnknownFields;
7965
8731
  if (u !== false)
7966
8732
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -8059,7 +8825,8 @@ export const ResourceAPI_TreeSize = new ResourceAPI_TreeSize$Type();
8059
8825
  class ResourceAPI_TreeSize_Request$Type extends MessageType<ResourceAPI_TreeSize_Request> {
8060
8826
  constructor() {
8061
8827
  super("MiLaboratories.PL.API.ResourceAPI.TreeSize.Request", [
8062
- { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
8828
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
8829
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
8063
8830
  ]);
8064
8831
  }
8065
8832
  create(value?: PartialMessage<ResourceAPI_TreeSize_Request>): ResourceAPI_TreeSize_Request {
@@ -8077,6 +8844,9 @@ class ResourceAPI_TreeSize_Request$Type extends MessageType<ResourceAPI_TreeSize
8077
8844
  case /* uint64 resource_id */ 1:
8078
8845
  message.resourceId = reader.uint64().toBigInt();
8079
8846
  break;
8847
+ case /* optional bytes resource_signature */ 2:
8848
+ message.resourceSignature = reader.bytes();
8849
+ break;
8080
8850
  default:
8081
8851
  let u = options.readUnknownField;
8082
8852
  if (u === "throw")
@@ -8092,6 +8862,9 @@ class ResourceAPI_TreeSize_Request$Type extends MessageType<ResourceAPI_TreeSize
8092
8862
  /* uint64 resource_id = 1; */
8093
8863
  if (message.resourceId !== 0n)
8094
8864
  writer.tag(1, WireType.Varint).uint64(message.resourceId);
8865
+ /* optional bytes resource_signature = 2; */
8866
+ if (message.resourceSignature !== undefined)
8867
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
8095
8868
  let u = options.writeUnknownFields;
8096
8869
  if (u !== false)
8097
8870
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -8636,12 +9409,13 @@ class FieldAPI_SetError_Request$Type extends MessageType<FieldAPI_SetError_Reque
8636
9409
  constructor() {
8637
9410
  super("MiLaboratories.PL.API.FieldAPI.SetError.Request", [
8638
9411
  { no: 1, name: "field", kind: "message", T: () => FieldRef },
8639
- { no: 2, name: "err_resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
9412
+ { no: 2, name: "error_resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
9413
+ { no: 3, name: "error_resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
8640
9414
  ]);
8641
9415
  }
8642
9416
  create(value?: PartialMessage<FieldAPI_SetError_Request>): FieldAPI_SetError_Request {
8643
9417
  const message = globalThis.Object.create((this.messagePrototype!));
8644
- message.errResourceId = 0n;
9418
+ message.errorResourceId = 0n;
8645
9419
  if (value !== undefined)
8646
9420
  reflectionMergePartial<FieldAPI_SetError_Request>(this, message, value);
8647
9421
  return message;
@@ -8654,8 +9428,11 @@ class FieldAPI_SetError_Request$Type extends MessageType<FieldAPI_SetError_Reque
8654
9428
  case /* MiLaboratories.PL.Base.FieldRef field */ 1:
8655
9429
  message.field = FieldRef.internalBinaryRead(reader, reader.uint32(), options, message.field);
8656
9430
  break;
8657
- case /* uint64 err_resource_id */ 2:
8658
- message.errResourceId = reader.uint64().toBigInt();
9431
+ case /* uint64 error_resource_id */ 2:
9432
+ message.errorResourceId = reader.uint64().toBigInt();
9433
+ break;
9434
+ case /* optional bytes error_resource_signature */ 3:
9435
+ message.errorResourceSignature = reader.bytes();
8659
9436
  break;
8660
9437
  default:
8661
9438
  let u = options.readUnknownField;
@@ -8672,9 +9449,12 @@ class FieldAPI_SetError_Request$Type extends MessageType<FieldAPI_SetError_Reque
8672
9449
  /* MiLaboratories.PL.Base.FieldRef field = 1; */
8673
9450
  if (message.field)
8674
9451
  FieldRef.internalBinaryWrite(message.field, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
8675
- /* uint64 err_resource_id = 2; */
8676
- if (message.errResourceId !== 0n)
8677
- writer.tag(2, WireType.Varint).uint64(message.errResourceId);
9452
+ /* uint64 error_resource_id = 2; */
9453
+ if (message.errorResourceId !== 0n)
9454
+ writer.tag(2, WireType.Varint).uint64(message.errorResourceId);
9455
+ /* optional bytes error_resource_signature = 3; */
9456
+ if (message.errorResourceSignature !== undefined)
9457
+ writer.tag(3, WireType.LengthDelimited).bytes(message.errorResourceSignature);
8678
9458
  let u = options.writeUnknownFields;
8679
9459
  if (u !== false)
8680
9460
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -9140,6 +9920,7 @@ class FieldAPI_List_Request$Type extends MessageType<FieldAPI_List_Request> {
9140
9920
  constructor() {
9141
9921
  super("MiLaboratories.PL.API.FieldAPI.List.Request", [
9142
9922
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
9923
+ { no: 4, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
9143
9924
  { no: 2, name: "start_from", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
9144
9925
  { no: 3, name: "limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }
9145
9926
  ]);
@@ -9161,6 +9942,9 @@ class FieldAPI_List_Request$Type extends MessageType<FieldAPI_List_Request> {
9161
9942
  case /* uint64 resource_id */ 1:
9162
9943
  message.resourceId = reader.uint64().toBigInt();
9163
9944
  break;
9945
+ case /* optional bytes resource_signature */ 4:
9946
+ message.resourceSignature = reader.bytes();
9947
+ break;
9164
9948
  case /* string start_from */ 2:
9165
9949
  message.startFrom = reader.string();
9166
9950
  break;
@@ -9188,6 +9972,9 @@ class FieldAPI_List_Request$Type extends MessageType<FieldAPI_List_Request> {
9188
9972
  /* uint32 limit = 3; */
9189
9973
  if (message.limit !== 0)
9190
9974
  writer.tag(3, WireType.Varint).uint32(message.limit);
9975
+ /* optional bytes resource_signature = 4; */
9976
+ if (message.resourceSignature !== undefined)
9977
+ writer.tag(4, WireType.LengthDelimited).bytes(message.resourceSignature);
9191
9978
  let u = options.writeUnknownFields;
9192
9979
  if (u !== false)
9193
9980
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -12379,6 +13166,7 @@ class ResourceKVAPI_List_Request$Type extends MessageType<ResourceKVAPI_List_Req
12379
13166
  constructor() {
12380
13167
  super("MiLaboratories.PL.API.ResourceKVAPI.List.Request", [
12381
13168
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
13169
+ { no: 4, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
12382
13170
  { no: 2, name: "start_from", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
12383
13171
  { no: 3, name: "limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }
12384
13172
  ]);
@@ -12400,6 +13188,9 @@ class ResourceKVAPI_List_Request$Type extends MessageType<ResourceKVAPI_List_Req
12400
13188
  case /* uint64 resource_id */ 1:
12401
13189
  message.resourceId = reader.uint64().toBigInt();
12402
13190
  break;
13191
+ case /* optional bytes resource_signature */ 4:
13192
+ message.resourceSignature = reader.bytes();
13193
+ break;
12403
13194
  case /* string start_from */ 2:
12404
13195
  message.startFrom = reader.string();
12405
13196
  break;
@@ -12427,6 +13218,9 @@ class ResourceKVAPI_List_Request$Type extends MessageType<ResourceKVAPI_List_Req
12427
13218
  /* uint32 limit = 3; */
12428
13219
  if (message.limit !== 0)
12429
13220
  writer.tag(3, WireType.Varint).uint32(message.limit);
13221
+ /* optional bytes resource_signature = 4; */
13222
+ if (message.resourceSignature !== undefined)
13223
+ writer.tag(4, WireType.LengthDelimited).bytes(message.resourceSignature);
12430
13224
  let u = options.writeUnknownFields;
12431
13225
  if (u !== false)
12432
13226
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -12589,6 +13383,7 @@ class ResourceKVAPI_Set_Request$Type extends MessageType<ResourceKVAPI_Set_Reque
12589
13383
  constructor() {
12590
13384
  super("MiLaboratories.PL.API.ResourceKVAPI.Set.Request", [
12591
13385
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
13386
+ { no: 4, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
12592
13387
  { no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
12593
13388
  { no: 3, name: "value", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }
12594
13389
  ]);
@@ -12610,6 +13405,9 @@ class ResourceKVAPI_Set_Request$Type extends MessageType<ResourceKVAPI_Set_Reque
12610
13405
  case /* uint64 resource_id */ 1:
12611
13406
  message.resourceId = reader.uint64().toBigInt();
12612
13407
  break;
13408
+ case /* optional bytes resource_signature */ 4:
13409
+ message.resourceSignature = reader.bytes();
13410
+ break;
12613
13411
  case /* string key */ 2:
12614
13412
  message.key = reader.string();
12615
13413
  break;
@@ -12637,6 +13435,9 @@ class ResourceKVAPI_Set_Request$Type extends MessageType<ResourceKVAPI_Set_Reque
12637
13435
  /* bytes value = 3; */
12638
13436
  if (message.value.length)
12639
13437
  writer.tag(3, WireType.LengthDelimited).bytes(message.value);
13438
+ /* optional bytes resource_signature = 4; */
13439
+ if (message.resourceSignature !== undefined)
13440
+ writer.tag(4, WireType.LengthDelimited).bytes(message.resourceSignature);
12640
13441
  let u = options.writeUnknownFields;
12641
13442
  if (u !== false)
12642
13443
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -12728,6 +13529,7 @@ class ResourceKVAPI_Get_Request$Type extends MessageType<ResourceKVAPI_Get_Reque
12728
13529
  constructor() {
12729
13530
  super("MiLaboratories.PL.API.ResourceKVAPI.Get.Request", [
12730
13531
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
13532
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
12731
13533
  { no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
12732
13534
  ]);
12733
13535
  }
@@ -12747,6 +13549,9 @@ class ResourceKVAPI_Get_Request$Type extends MessageType<ResourceKVAPI_Get_Reque
12747
13549
  case /* uint64 resource_id */ 1:
12748
13550
  message.resourceId = reader.uint64().toBigInt();
12749
13551
  break;
13552
+ case /* optional bytes resource_signature */ 3:
13553
+ message.resourceSignature = reader.bytes();
13554
+ break;
12750
13555
  case /* string key */ 2:
12751
13556
  message.key = reader.string();
12752
13557
  break;
@@ -12768,6 +13573,9 @@ class ResourceKVAPI_Get_Request$Type extends MessageType<ResourceKVAPI_Get_Reque
12768
13573
  /* string key = 2; */
12769
13574
  if (message.key !== "")
12770
13575
  writer.tag(2, WireType.LengthDelimited).string(message.key);
13576
+ /* optional bytes resource_signature = 3; */
13577
+ if (message.resourceSignature !== undefined)
13578
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
12771
13579
  let u = options.writeUnknownFields;
12772
13580
  if (u !== false)
12773
13581
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -12868,6 +13676,7 @@ class ResourceKVAPI_GetIfExists_Request$Type extends MessageType<ResourceKVAPI_G
12868
13676
  constructor() {
12869
13677
  super("MiLaboratories.PL.API.ResourceKVAPI.GetIfExists.Request", [
12870
13678
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
13679
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
12871
13680
  { no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
12872
13681
  ]);
12873
13682
  }
@@ -12887,6 +13696,9 @@ class ResourceKVAPI_GetIfExists_Request$Type extends MessageType<ResourceKVAPI_G
12887
13696
  case /* uint64 resource_id */ 1:
12888
13697
  message.resourceId = reader.uint64().toBigInt();
12889
13698
  break;
13699
+ case /* optional bytes resource_signature */ 3:
13700
+ message.resourceSignature = reader.bytes();
13701
+ break;
12890
13702
  case /* string key */ 2:
12891
13703
  message.key = reader.string();
12892
13704
  break;
@@ -12908,6 +13720,9 @@ class ResourceKVAPI_GetIfExists_Request$Type extends MessageType<ResourceKVAPI_G
12908
13720
  /* string key = 2; */
12909
13721
  if (message.key !== "")
12910
13722
  writer.tag(2, WireType.LengthDelimited).string(message.key);
13723
+ /* optional bytes resource_signature = 3; */
13724
+ if (message.resourceSignature !== undefined)
13725
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
12911
13726
  let u = options.writeUnknownFields;
12912
13727
  if (u !== false)
12913
13728
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -13016,6 +13831,7 @@ class ResourceKVAPI_Delete_Request$Type extends MessageType<ResourceKVAPI_Delete
13016
13831
  constructor() {
13017
13832
  super("MiLaboratories.PL.API.ResourceKVAPI.Delete.Request", [
13018
13833
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
13834
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
13019
13835
  { no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
13020
13836
  ]);
13021
13837
  }
@@ -13035,6 +13851,9 @@ class ResourceKVAPI_Delete_Request$Type extends MessageType<ResourceKVAPI_Delete
13035
13851
  case /* uint64 resource_id */ 1:
13036
13852
  message.resourceId = reader.uint64().toBigInt();
13037
13853
  break;
13854
+ case /* optional bytes resource_signature */ 3:
13855
+ message.resourceSignature = reader.bytes();
13856
+ break;
13038
13857
  case /* string key */ 2:
13039
13858
  message.key = reader.string();
13040
13859
  break;
@@ -13056,6 +13875,9 @@ class ResourceKVAPI_Delete_Request$Type extends MessageType<ResourceKVAPI_Delete
13056
13875
  /* string key = 2; */
13057
13876
  if (message.key !== "")
13058
13877
  writer.tag(2, WireType.LengthDelimited).string(message.key);
13878
+ /* optional bytes resource_signature = 3; */
13879
+ if (message.resourceSignature !== undefined)
13880
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
13059
13881
  let u = options.writeUnknownFields;
13060
13882
  if (u !== false)
13061
13883
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -13147,6 +13969,7 @@ class ResourceKVAPI_SetFlag_Request$Type extends MessageType<ResourceKVAPI_SetFl
13147
13969
  constructor() {
13148
13970
  super("MiLaboratories.PL.API.ResourceKVAPI.SetFlag.Request", [
13149
13971
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
13972
+ { no: 4, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
13150
13973
  { no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
13151
13974
  { no: 3, name: "value", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
13152
13975
  ]);
@@ -13168,6 +13991,9 @@ class ResourceKVAPI_SetFlag_Request$Type extends MessageType<ResourceKVAPI_SetFl
13168
13991
  case /* uint64 resource_id */ 1:
13169
13992
  message.resourceId = reader.uint64().toBigInt();
13170
13993
  break;
13994
+ case /* optional bytes resource_signature */ 4:
13995
+ message.resourceSignature = reader.bytes();
13996
+ break;
13171
13997
  case /* string key */ 2:
13172
13998
  message.key = reader.string();
13173
13999
  break;
@@ -13195,6 +14021,9 @@ class ResourceKVAPI_SetFlag_Request$Type extends MessageType<ResourceKVAPI_SetFl
13195
14021
  /* bool value = 3; */
13196
14022
  if (message.value !== false)
13197
14023
  writer.tag(3, WireType.Varint).bool(message.value);
14024
+ /* optional bytes resource_signature = 4; */
14025
+ if (message.resourceSignature !== undefined)
14026
+ writer.tag(4, WireType.LengthDelimited).bytes(message.resourceSignature);
13198
14027
  let u = options.writeUnknownFields;
13199
14028
  if (u !== false)
13200
14029
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -13286,6 +14115,7 @@ class ResourceKVAPI_GetFlag_Request$Type extends MessageType<ResourceKVAPI_GetFl
13286
14115
  constructor() {
13287
14116
  super("MiLaboratories.PL.API.ResourceKVAPI.GetFlag.Request", [
13288
14117
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
14118
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
13289
14119
  { no: 2, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
13290
14120
  ]);
13291
14121
  }
@@ -13305,6 +14135,9 @@ class ResourceKVAPI_GetFlag_Request$Type extends MessageType<ResourceKVAPI_GetFl
13305
14135
  case /* uint64 resource_id */ 1:
13306
14136
  message.resourceId = reader.uint64().toBigInt();
13307
14137
  break;
14138
+ case /* optional bytes resource_signature */ 3:
14139
+ message.resourceSignature = reader.bytes();
14140
+ break;
13308
14141
  case /* string key */ 2:
13309
14142
  message.key = reader.string();
13310
14143
  break;
@@ -13326,6 +14159,9 @@ class ResourceKVAPI_GetFlag_Request$Type extends MessageType<ResourceKVAPI_GetFl
13326
14159
  /* string key = 2; */
13327
14160
  if (message.key !== "")
13328
14161
  writer.tag(2, WireType.LengthDelimited).string(message.key);
14162
+ /* optional bytes resource_signature = 3; */
14163
+ if (message.resourceSignature !== undefined)
14164
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
13329
14165
  let u = options.writeUnknownFields;
13330
14166
  if (u !== false)
13331
14167
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14443,17 +15279,17 @@ class CacheAPI_SetToField_Response$Type extends MessageType<CacheAPI_SetToField_
14443
15279
  */
14444
15280
  export const CacheAPI_SetToField_Response = new CacheAPI_SetToField_Response$Type();
14445
15281
  // @generated message type with reflection information, may provide speed optimized methods
14446
- class CacheAPI_DeleteExpiredRecords$Type extends MessageType<CacheAPI_DeleteExpiredRecords> {
15282
+ class LocksAPI$Type extends MessageType<LocksAPI> {
14447
15283
  constructor() {
14448
- super("MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords", []);
15284
+ super("MiLaboratories.PL.API.LocksAPI", []);
14449
15285
  }
14450
- create(value?: PartialMessage<CacheAPI_DeleteExpiredRecords>): CacheAPI_DeleteExpiredRecords {
15286
+ create(value?: PartialMessage<LocksAPI>): LocksAPI {
14451
15287
  const message = globalThis.Object.create((this.messagePrototype!));
14452
15288
  if (value !== undefined)
14453
- reflectionMergePartial<CacheAPI_DeleteExpiredRecords>(this, message, value);
15289
+ reflectionMergePartial<LocksAPI>(this, message, value);
14454
15290
  return message;
14455
15291
  }
14456
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CacheAPI_DeleteExpiredRecords): CacheAPI_DeleteExpiredRecords {
15292
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI): LocksAPI {
14457
15293
  let message = target ?? this.create(), end = reader.pos + length;
14458
15294
  while (reader.pos < end) {
14459
15295
  let [fieldNo, wireType] = reader.tag();
@@ -14469,7 +15305,7 @@ class CacheAPI_DeleteExpiredRecords$Type extends MessageType<CacheAPI_DeleteExpi
14469
15305
  }
14470
15306
  return message;
14471
15307
  }
14472
- internalBinaryWrite(message: CacheAPI_DeleteExpiredRecords, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15308
+ internalBinaryWrite(message: LocksAPI, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
14473
15309
  let u = options.writeUnknownFields;
14474
15310
  if (u !== false)
14475
15311
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14477,21 +15313,21 @@ class CacheAPI_DeleteExpiredRecords$Type extends MessageType<CacheAPI_DeleteExpi
14477
15313
  }
14478
15314
  }
14479
15315
  /**
14480
- * @generated MessageType for protobuf message MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords
15316
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI
14481
15317
  */
14482
- export const CacheAPI_DeleteExpiredRecords = new CacheAPI_DeleteExpiredRecords$Type();
15318
+ export const LocksAPI = new LocksAPI$Type();
14483
15319
  // @generated message type with reflection information, may provide speed optimized methods
14484
- class CacheAPI_DeleteExpiredRecords_Request$Type extends MessageType<CacheAPI_DeleteExpiredRecords_Request> {
15320
+ class LocksAPI_LockFieldValues$Type extends MessageType<LocksAPI_LockFieldValues> {
14485
15321
  constructor() {
14486
- super("MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Request", []);
15322
+ super("MiLaboratories.PL.API.LocksAPI.LockFieldValues", []);
14487
15323
  }
14488
- create(value?: PartialMessage<CacheAPI_DeleteExpiredRecords_Request>): CacheAPI_DeleteExpiredRecords_Request {
15324
+ create(value?: PartialMessage<LocksAPI_LockFieldValues>): LocksAPI_LockFieldValues {
14489
15325
  const message = globalThis.Object.create((this.messagePrototype!));
14490
15326
  if (value !== undefined)
14491
- reflectionMergePartial<CacheAPI_DeleteExpiredRecords_Request>(this, message, value);
15327
+ reflectionMergePartial<LocksAPI_LockFieldValues>(this, message, value);
14492
15328
  return message;
14493
15329
  }
14494
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CacheAPI_DeleteExpiredRecords_Request): CacheAPI_DeleteExpiredRecords_Request {
15330
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI_LockFieldValues): LocksAPI_LockFieldValues {
14495
15331
  let message = target ?? this.create(), end = reader.pos + length;
14496
15332
  while (reader.pos < end) {
14497
15333
  let [fieldNo, wireType] = reader.tag();
@@ -14507,7 +15343,7 @@ class CacheAPI_DeleteExpiredRecords_Request$Type extends MessageType<CacheAPI_De
14507
15343
  }
14508
15344
  return message;
14509
15345
  }
14510
- internalBinaryWrite(message: CacheAPI_DeleteExpiredRecords_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15346
+ internalBinaryWrite(message: LocksAPI_LockFieldValues, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
14511
15347
  let u = options.writeUnknownFields;
14512
15348
  if (u !== false)
14513
15349
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14515,21 +15351,21 @@ class CacheAPI_DeleteExpiredRecords_Request$Type extends MessageType<CacheAPI_De
14515
15351
  }
14516
15352
  }
14517
15353
  /**
14518
- * @generated MessageType for protobuf message MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Request
15354
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues
14519
15355
  */
14520
- export const CacheAPI_DeleteExpiredRecords_Request = new CacheAPI_DeleteExpiredRecords_Request$Type();
15356
+ export const LocksAPI_LockFieldValues = new LocksAPI_LockFieldValues$Type();
14521
15357
  // @generated message type with reflection information, may provide speed optimized methods
14522
- class CacheAPI_DeleteExpiredRecords_Response$Type extends MessageType<CacheAPI_DeleteExpiredRecords_Response> {
15358
+ class LocksAPI_LockFieldValues_Create$Type extends MessageType<LocksAPI_LockFieldValues_Create> {
14523
15359
  constructor() {
14524
- super("MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Response", []);
15360
+ super("MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create", []);
14525
15361
  }
14526
- create(value?: PartialMessage<CacheAPI_DeleteExpiredRecords_Response>): CacheAPI_DeleteExpiredRecords_Response {
15362
+ create(value?: PartialMessage<LocksAPI_LockFieldValues_Create>): LocksAPI_LockFieldValues_Create {
14527
15363
  const message = globalThis.Object.create((this.messagePrototype!));
14528
15364
  if (value !== undefined)
14529
- reflectionMergePartial<CacheAPI_DeleteExpiredRecords_Response>(this, message, value);
15365
+ reflectionMergePartial<LocksAPI_LockFieldValues_Create>(this, message, value);
14530
15366
  return message;
14531
15367
  }
14532
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CacheAPI_DeleteExpiredRecords_Response): CacheAPI_DeleteExpiredRecords_Response {
15368
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI_LockFieldValues_Create): LocksAPI_LockFieldValues_Create {
14533
15369
  let message = target ?? this.create(), end = reader.pos + length;
14534
15370
  while (reader.pos < end) {
14535
15371
  let [fieldNo, wireType] = reader.tag();
@@ -14545,7 +15381,7 @@ class CacheAPI_DeleteExpiredRecords_Response$Type extends MessageType<CacheAPI_D
14545
15381
  }
14546
15382
  return message;
14547
15383
  }
14548
- internalBinaryWrite(message: CacheAPI_DeleteExpiredRecords_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15384
+ internalBinaryWrite(message: LocksAPI_LockFieldValues_Create, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
14549
15385
  let u = options.writeUnknownFields;
14550
15386
  if (u !== false)
14551
15387
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14553,25 +15389,41 @@ class CacheAPI_DeleteExpiredRecords_Response$Type extends MessageType<CacheAPI_D
14553
15389
  }
14554
15390
  }
14555
15391
  /**
14556
- * @generated MessageType for protobuf message MiLaboratories.PL.API.CacheAPI.DeleteExpiredRecords.Response
15392
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create
14557
15393
  */
14558
- export const CacheAPI_DeleteExpiredRecords_Response = new CacheAPI_DeleteExpiredRecords_Response$Type();
15394
+ export const LocksAPI_LockFieldValues_Create = new LocksAPI_LockFieldValues_Create$Type();
14559
15395
  // @generated message type with reflection information, may provide speed optimized methods
14560
- class LocksAPI$Type extends MessageType<LocksAPI> {
15396
+ class LocksAPI_LockFieldValues_Create_Request$Type extends MessageType<LocksAPI_LockFieldValues_Create_Request> {
14561
15397
  constructor() {
14562
- super("MiLaboratories.PL.API.LocksAPI", []);
15398
+ super("MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Request", [
15399
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
15400
+ { no: 2, name: "lock_references_of", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
15401
+ { no: 3, name: "comment", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
15402
+ ]);
14563
15403
  }
14564
- create(value?: PartialMessage<LocksAPI>): LocksAPI {
15404
+ create(value?: PartialMessage<LocksAPI_LockFieldValues_Create_Request>): LocksAPI_LockFieldValues_Create_Request {
14565
15405
  const message = globalThis.Object.create((this.messagePrototype!));
15406
+ message.resourceId = 0n;
15407
+ message.lockReferencesOf = [];
15408
+ message.comment = "";
14566
15409
  if (value !== undefined)
14567
- reflectionMergePartial<LocksAPI>(this, message, value);
15410
+ reflectionMergePartial<LocksAPI_LockFieldValues_Create_Request>(this, message, value);
14568
15411
  return message;
14569
15412
  }
14570
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI): LocksAPI {
15413
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI_LockFieldValues_Create_Request): LocksAPI_LockFieldValues_Create_Request {
14571
15414
  let message = target ?? this.create(), end = reader.pos + length;
14572
15415
  while (reader.pos < end) {
14573
15416
  let [fieldNo, wireType] = reader.tag();
14574
15417
  switch (fieldNo) {
15418
+ case /* uint64 resource_id */ 1:
15419
+ message.resourceId = reader.uint64().toBigInt();
15420
+ break;
15421
+ case /* repeated string lock_references_of */ 2:
15422
+ message.lockReferencesOf.push(reader.string());
15423
+ break;
15424
+ case /* string comment */ 3:
15425
+ message.comment = reader.string();
15426
+ break;
14575
15427
  default:
14576
15428
  let u = options.readUnknownField;
14577
15429
  if (u === "throw")
@@ -14583,7 +15435,16 @@ class LocksAPI$Type extends MessageType<LocksAPI> {
14583
15435
  }
14584
15436
  return message;
14585
15437
  }
14586
- internalBinaryWrite(message: LocksAPI, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15438
+ internalBinaryWrite(message: LocksAPI_LockFieldValues_Create_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15439
+ /* uint64 resource_id = 1; */
15440
+ if (message.resourceId !== 0n)
15441
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
15442
+ /* repeated string lock_references_of = 2; */
15443
+ for (let i = 0; i < message.lockReferencesOf.length; i++)
15444
+ writer.tag(2, WireType.LengthDelimited).string(message.lockReferencesOf[i]);
15445
+ /* string comment = 3; */
15446
+ if (message.comment !== "")
15447
+ writer.tag(3, WireType.LengthDelimited).string(message.comment);
14587
15448
  let u = options.writeUnknownFields;
14588
15449
  if (u !== false)
14589
15450
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14591,9 +15452,150 @@ class LocksAPI$Type extends MessageType<LocksAPI> {
14591
15452
  }
14592
15453
  }
14593
15454
  /**
14594
- * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI
15455
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Request
14595
15456
  */
14596
- export const LocksAPI = new LocksAPI$Type();
15457
+ export const LocksAPI_LockFieldValues_Create_Request = new LocksAPI_LockFieldValues_Create_Request$Type();
15458
+ // @generated message type with reflection information, may provide speed optimized methods
15459
+ class LocksAPI_LockFieldValues_Create_Response$Type extends MessageType<LocksAPI_LockFieldValues_Create_Response> {
15460
+ constructor() {
15461
+ super("MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response", [
15462
+ { no: 1, name: "acquired", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
15463
+ { no: 2, name: "conflicting_locks", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => LocksAPI_LockFieldValues_Create_Response_LockInfo },
15464
+ { no: 3, name: "conflicts_list_truncated", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
15465
+ ]);
15466
+ }
15467
+ create(value?: PartialMessage<LocksAPI_LockFieldValues_Create_Response>): LocksAPI_LockFieldValues_Create_Response {
15468
+ const message = globalThis.Object.create((this.messagePrototype!));
15469
+ message.acquired = false;
15470
+ message.conflictingLocks = [];
15471
+ message.conflictsListTruncated = false;
15472
+ if (value !== undefined)
15473
+ reflectionMergePartial<LocksAPI_LockFieldValues_Create_Response>(this, message, value);
15474
+ return message;
15475
+ }
15476
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI_LockFieldValues_Create_Response): LocksAPI_LockFieldValues_Create_Response {
15477
+ let message = target ?? this.create(), end = reader.pos + length;
15478
+ while (reader.pos < end) {
15479
+ let [fieldNo, wireType] = reader.tag();
15480
+ switch (fieldNo) {
15481
+ case /* bool acquired */ 1:
15482
+ message.acquired = reader.bool();
15483
+ break;
15484
+ case /* repeated MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response.LockInfo conflicting_locks */ 2:
15485
+ message.conflictingLocks.push(LocksAPI_LockFieldValues_Create_Response_LockInfo.internalBinaryRead(reader, reader.uint32(), options));
15486
+ break;
15487
+ case /* bool conflicts_list_truncated */ 3:
15488
+ message.conflictsListTruncated = reader.bool();
15489
+ break;
15490
+ default:
15491
+ let u = options.readUnknownField;
15492
+ if (u === "throw")
15493
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
15494
+ let d = reader.skip(wireType);
15495
+ if (u !== false)
15496
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
15497
+ }
15498
+ }
15499
+ return message;
15500
+ }
15501
+ internalBinaryWrite(message: LocksAPI_LockFieldValues_Create_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15502
+ /* bool acquired = 1; */
15503
+ if (message.acquired !== false)
15504
+ writer.tag(1, WireType.Varint).bool(message.acquired);
15505
+ /* repeated MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response.LockInfo conflicting_locks = 2; */
15506
+ for (let i = 0; i < message.conflictingLocks.length; i++)
15507
+ LocksAPI_LockFieldValues_Create_Response_LockInfo.internalBinaryWrite(message.conflictingLocks[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
15508
+ /* bool conflicts_list_truncated = 3; */
15509
+ if (message.conflictsListTruncated !== false)
15510
+ writer.tag(3, WireType.Varint).bool(message.conflictsListTruncated);
15511
+ let u = options.writeUnknownFields;
15512
+ if (u !== false)
15513
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
15514
+ return writer;
15515
+ }
15516
+ }
15517
+ /**
15518
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response
15519
+ */
15520
+ export const LocksAPI_LockFieldValues_Create_Response = new LocksAPI_LockFieldValues_Create_Response$Type();
15521
+ // @generated message type with reflection information, may provide speed optimized methods
15522
+ class LocksAPI_LockFieldValues_Create_Response_LockInfo$Type extends MessageType<LocksAPI_LockFieldValues_Create_Response_LockInfo> {
15523
+ constructor() {
15524
+ super("MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response.LockInfo", [
15525
+ { no: 1, name: "target_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
15526
+ { no: 2, name: "field_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
15527
+ { no: 3, name: "locked_by", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
15528
+ { no: 4, name: "locked_at", kind: "message", T: () => Timestamp },
15529
+ { no: 5, name: "comment", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
15530
+ ]);
15531
+ }
15532
+ create(value?: PartialMessage<LocksAPI_LockFieldValues_Create_Response_LockInfo>): LocksAPI_LockFieldValues_Create_Response_LockInfo {
15533
+ const message = globalThis.Object.create((this.messagePrototype!));
15534
+ message.targetId = 0n;
15535
+ message.fieldName = "";
15536
+ message.lockedBy = 0n;
15537
+ message.comment = "";
15538
+ if (value !== undefined)
15539
+ reflectionMergePartial<LocksAPI_LockFieldValues_Create_Response_LockInfo>(this, message, value);
15540
+ return message;
15541
+ }
15542
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LocksAPI_LockFieldValues_Create_Response_LockInfo): LocksAPI_LockFieldValues_Create_Response_LockInfo {
15543
+ let message = target ?? this.create(), end = reader.pos + length;
15544
+ while (reader.pos < end) {
15545
+ let [fieldNo, wireType] = reader.tag();
15546
+ switch (fieldNo) {
15547
+ case /* uint64 target_id */ 1:
15548
+ message.targetId = reader.uint64().toBigInt();
15549
+ break;
15550
+ case /* string field_name */ 2:
15551
+ message.fieldName = reader.string();
15552
+ break;
15553
+ case /* uint64 locked_by */ 3:
15554
+ message.lockedBy = reader.uint64().toBigInt();
15555
+ break;
15556
+ case /* google.protobuf.Timestamp locked_at */ 4:
15557
+ message.lockedAt = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.lockedAt);
15558
+ break;
15559
+ case /* string comment */ 5:
15560
+ message.comment = reader.string();
15561
+ break;
15562
+ default:
15563
+ let u = options.readUnknownField;
15564
+ if (u === "throw")
15565
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
15566
+ let d = reader.skip(wireType);
15567
+ if (u !== false)
15568
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
15569
+ }
15570
+ }
15571
+ return message;
15572
+ }
15573
+ internalBinaryWrite(message: LocksAPI_LockFieldValues_Create_Response_LockInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15574
+ /* uint64 target_id = 1; */
15575
+ if (message.targetId !== 0n)
15576
+ writer.tag(1, WireType.Varint).uint64(message.targetId);
15577
+ /* string field_name = 2; */
15578
+ if (message.fieldName !== "")
15579
+ writer.tag(2, WireType.LengthDelimited).string(message.fieldName);
15580
+ /* uint64 locked_by = 3; */
15581
+ if (message.lockedBy !== 0n)
15582
+ writer.tag(3, WireType.Varint).uint64(message.lockedBy);
15583
+ /* google.protobuf.Timestamp locked_at = 4; */
15584
+ if (message.lockedAt)
15585
+ Timestamp.internalBinaryWrite(message.lockedAt, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
15586
+ /* string comment = 5; */
15587
+ if (message.comment !== "")
15588
+ writer.tag(5, WireType.LengthDelimited).string(message.comment);
15589
+ let u = options.writeUnknownFields;
15590
+ if (u !== false)
15591
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
15592
+ return writer;
15593
+ }
15594
+ }
15595
+ /**
15596
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.LocksAPI.LockFieldValues.Create.Response.LockInfo
15597
+ */
15598
+ export const LocksAPI_LockFieldValues_Create_Response_LockInfo = new LocksAPI_LockFieldValues_Create_Response_LockInfo$Type();
14597
15599
  // @generated message type with reflection information, may provide speed optimized methods
14598
15600
  class LocksAPI_Lease$Type extends MessageType<LocksAPI_Lease> {
14599
15601
  constructor() {
@@ -14675,6 +15677,7 @@ class LocksAPI_Lease_Create_Request$Type extends MessageType<LocksAPI_Lease_Crea
14675
15677
  constructor() {
14676
15678
  super("MiLaboratories.PL.API.LocksAPI.Lease.Create.Request", [
14677
15679
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
15680
+ { no: 5, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
14678
15681
  { no: 3, name: "timeout", kind: "message", T: () => Duration },
14679
15682
  { no: 4, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
14680
15683
  ]);
@@ -14695,6 +15698,9 @@ class LocksAPI_Lease_Create_Request$Type extends MessageType<LocksAPI_Lease_Crea
14695
15698
  case /* uint64 resource_id */ 1:
14696
15699
  message.resourceId = reader.uint64().toBigInt();
14697
15700
  break;
15701
+ case /* optional bytes resource_signature */ 5:
15702
+ message.resourceSignature = reader.bytes();
15703
+ break;
14698
15704
  case /* google.protobuf.Duration timeout */ 3:
14699
15705
  message.timeout = Duration.internalBinaryRead(reader, reader.uint32(), options, message.timeout);
14700
15706
  break;
@@ -14722,6 +15728,9 @@ class LocksAPI_Lease_Create_Request$Type extends MessageType<LocksAPI_Lease_Crea
14722
15728
  /* string name = 4; */
14723
15729
  if (message.name !== "")
14724
15730
  writer.tag(4, WireType.LengthDelimited).string(message.name);
15731
+ /* optional bytes resource_signature = 5; */
15732
+ if (message.resourceSignature !== undefined)
15733
+ writer.tag(5, WireType.LengthDelimited).bytes(message.resourceSignature);
14725
15734
  let u = options.writeUnknownFields;
14726
15735
  if (u !== false)
14727
15736
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14822,6 +15831,7 @@ class LocksAPI_Lease_Update_Request$Type extends MessageType<LocksAPI_Lease_Upda
14822
15831
  constructor() {
14823
15832
  super("MiLaboratories.PL.API.LocksAPI.Lease.Update.Request", [
14824
15833
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
15834
+ { no: 5, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
14825
15835
  { no: 2, name: "lease_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ },
14826
15836
  { no: 3, name: "timeout", kind: "message", T: () => Duration },
14827
15837
  { no: 4, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
@@ -14844,6 +15854,9 @@ class LocksAPI_Lease_Update_Request$Type extends MessageType<LocksAPI_Lease_Upda
14844
15854
  case /* uint64 resource_id */ 1:
14845
15855
  message.resourceId = reader.uint64().toBigInt();
14846
15856
  break;
15857
+ case /* optional bytes resource_signature */ 5:
15858
+ message.resourceSignature = reader.bytes();
15859
+ break;
14847
15860
  case /* bytes lease_id */ 2:
14848
15861
  message.leaseId = reader.bytes();
14849
15862
  break;
@@ -14877,6 +15890,9 @@ class LocksAPI_Lease_Update_Request$Type extends MessageType<LocksAPI_Lease_Upda
14877
15890
  /* string name = 4; */
14878
15891
  if (message.name !== "")
14879
15892
  writer.tag(4, WireType.LengthDelimited).string(message.name);
15893
+ /* optional bytes resource_signature = 5; */
15894
+ if (message.resourceSignature !== undefined)
15895
+ writer.tag(5, WireType.LengthDelimited).bytes(message.resourceSignature);
14880
15896
  let u = options.writeUnknownFields;
14881
15897
  if (u !== false)
14882
15898
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -14968,6 +15984,7 @@ class LocksAPI_Lease_Release_Request$Type extends MessageType<LocksAPI_Lease_Rel
14968
15984
  constructor() {
14969
15985
  super("MiLaboratories.PL.API.LocksAPI.Lease.Release.Request", [
14970
15986
  { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
15987
+ { no: 3, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
14971
15988
  { no: 2, name: "lease_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }
14972
15989
  ]);
14973
15990
  }
@@ -14987,6 +16004,9 @@ class LocksAPI_Lease_Release_Request$Type extends MessageType<LocksAPI_Lease_Rel
14987
16004
  case /* uint64 resource_id */ 1:
14988
16005
  message.resourceId = reader.uint64().toBigInt();
14989
16006
  break;
16007
+ case /* optional bytes resource_signature */ 3:
16008
+ message.resourceSignature = reader.bytes();
16009
+ break;
14990
16010
  case /* bytes lease_id */ 2:
14991
16011
  message.leaseId = reader.bytes();
14992
16012
  break;
@@ -15008,6 +16028,9 @@ class LocksAPI_Lease_Release_Request$Type extends MessageType<LocksAPI_Lease_Rel
15008
16028
  /* bytes lease_id = 2; */
15009
16029
  if (message.leaseId.length)
15010
16030
  writer.tag(2, WireType.LengthDelimited).bytes(message.leaseId);
16031
+ /* optional bytes resource_signature = 3; */
16032
+ if (message.resourceSignature !== undefined)
16033
+ writer.tag(3, WireType.LengthDelimited).bytes(message.resourceSignature);
15011
16034
  let u = options.writeUnknownFields;
15012
16035
  if (u !== false)
15013
16036
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15338,7 +16361,8 @@ export const AuthAPI_GetJWTToken = new AuthAPI_GetJWTToken$Type();
15338
16361
  class AuthAPI_GetJWTToken_Request$Type extends MessageType<AuthAPI_GetJWTToken_Request> {
15339
16362
  constructor() {
15340
16363
  super("MiLaboratories.PL.API.AuthAPI.GetJWTToken.Request", [
15341
- { no: 1, name: "expiration", kind: "message", T: () => Duration }
16364
+ { no: 1, name: "expiration", kind: "message", T: () => Duration },
16365
+ { no: 2, name: "requested_role", kind: "enum", opt: true, T: () => ["MiLaboratories.PL.API.AuthAPI.GetJWTToken.Role", AuthAPI_GetJWTToken_Role] }
15342
16366
  ]);
15343
16367
  }
15344
16368
  create(value?: PartialMessage<AuthAPI_GetJWTToken_Request>): AuthAPI_GetJWTToken_Request {
@@ -15355,6 +16379,9 @@ class AuthAPI_GetJWTToken_Request$Type extends MessageType<AuthAPI_GetJWTToken_R
15355
16379
  case /* google.protobuf.Duration expiration */ 1:
15356
16380
  message.expiration = Duration.internalBinaryRead(reader, reader.uint32(), options, message.expiration);
15357
16381
  break;
16382
+ case /* optional MiLaboratories.PL.API.AuthAPI.GetJWTToken.Role requested_role */ 2:
16383
+ message.requestedRole = reader.int32();
16384
+ break;
15358
16385
  default:
15359
16386
  let u = options.readUnknownField;
15360
16387
  if (u === "throw")
@@ -15370,6 +16397,9 @@ class AuthAPI_GetJWTToken_Request$Type extends MessageType<AuthAPI_GetJWTToken_R
15370
16397
  /* google.protobuf.Duration expiration = 1; */
15371
16398
  if (message.expiration)
15372
16399
  Duration.internalBinaryWrite(message.expiration, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
16400
+ /* optional MiLaboratories.PL.API.AuthAPI.GetJWTToken.Role requested_role = 2; */
16401
+ if (message.requestedRole !== undefined)
16402
+ writer.tag(2, WireType.Varint).int32(message.requestedRole);
15373
16403
  let u = options.writeUnknownFields;
15374
16404
  if (u !== false)
15375
16405
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15384,12 +16414,14 @@ export const AuthAPI_GetJWTToken_Request = new AuthAPI_GetJWTToken_Request$Type(
15384
16414
  class AuthAPI_GetJWTToken_Response$Type extends MessageType<AuthAPI_GetJWTToken_Response> {
15385
16415
  constructor() {
15386
16416
  super("MiLaboratories.PL.API.AuthAPI.GetJWTToken.Response", [
15387
- { no: 1, name: "token", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
16417
+ { no: 1, name: "token", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
16418
+ { no: 2, name: "session_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }
15388
16419
  ]);
15389
16420
  }
15390
16421
  create(value?: PartialMessage<AuthAPI_GetJWTToken_Response>): AuthAPI_GetJWTToken_Response {
15391
16422
  const message = globalThis.Object.create((this.messagePrototype!));
15392
16423
  message.token = "";
16424
+ message.sessionId = new Uint8Array(0);
15393
16425
  if (value !== undefined)
15394
16426
  reflectionMergePartial<AuthAPI_GetJWTToken_Response>(this, message, value);
15395
16427
  return message;
@@ -15402,6 +16434,9 @@ class AuthAPI_GetJWTToken_Response$Type extends MessageType<AuthAPI_GetJWTToken_
15402
16434
  case /* string token */ 1:
15403
16435
  message.token = reader.string();
15404
16436
  break;
16437
+ case /* bytes session_id */ 2:
16438
+ message.sessionId = reader.bytes();
16439
+ break;
15405
16440
  default:
15406
16441
  let u = options.readUnknownField;
15407
16442
  if (u === "throw")
@@ -15417,6 +16452,9 @@ class AuthAPI_GetJWTToken_Response$Type extends MessageType<AuthAPI_GetJWTToken_
15417
16452
  /* string token = 1; */
15418
16453
  if (message.token !== "")
15419
16454
  writer.tag(1, WireType.LengthDelimited).string(message.token);
16455
+ /* bytes session_id = 2; */
16456
+ if (message.sessionId.length)
16457
+ writer.tag(2, WireType.LengthDelimited).bytes(message.sessionId);
15420
16458
  let u = options.writeUnknownFields;
15421
16459
  if (u !== false)
15422
16460
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15428,17 +16466,17 @@ class AuthAPI_GetJWTToken_Response$Type extends MessageType<AuthAPI_GetJWTToken_
15428
16466
  */
15429
16467
  export const AuthAPI_GetJWTToken_Response = new AuthAPI_GetJWTToken_Response$Type();
15430
16468
  // @generated message type with reflection information, may provide speed optimized methods
15431
- class MiscAPI$Type extends MessageType<MiscAPI> {
16469
+ class AuthAPI_GrantAccess$Type extends MessageType<AuthAPI_GrantAccess> {
15432
16470
  constructor() {
15433
- super("MiLaboratories.PL.API.MiscAPI", []);
16471
+ super("MiLaboratories.PL.API.AuthAPI.GrantAccess", []);
15434
16472
  }
15435
- create(value?: PartialMessage<MiscAPI>): MiscAPI {
16473
+ create(value?: PartialMessage<AuthAPI_GrantAccess>): AuthAPI_GrantAccess {
15436
16474
  const message = globalThis.Object.create((this.messagePrototype!));
15437
16475
  if (value !== undefined)
15438
- reflectionMergePartial<MiscAPI>(this, message, value);
16476
+ reflectionMergePartial<AuthAPI_GrantAccess>(this, message, value);
15439
16477
  return message;
15440
16478
  }
15441
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI): MiscAPI {
16479
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_GrantAccess): AuthAPI_GrantAccess {
15442
16480
  let message = target ?? this.create(), end = reader.pos + length;
15443
16481
  while (reader.pos < end) {
15444
16482
  let [fieldNo, wireType] = reader.tag();
@@ -15454,7 +16492,7 @@ class MiscAPI$Type extends MessageType<MiscAPI> {
15454
16492
  }
15455
16493
  return message;
15456
16494
  }
15457
- internalBinaryWrite(message: MiscAPI, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16495
+ internalBinaryWrite(message: AuthAPI_GrantAccess, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15458
16496
  let u = options.writeUnknownFields;
15459
16497
  if (u !== false)
15460
16498
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15462,25 +16500,44 @@ class MiscAPI$Type extends MessageType<MiscAPI> {
15462
16500
  }
15463
16501
  }
15464
16502
  /**
15465
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI
16503
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.GrantAccess
15466
16504
  */
15467
- export const MiscAPI = new MiscAPI$Type();
16505
+ export const AuthAPI_GrantAccess = new AuthAPI_GrantAccess$Type();
15468
16506
  // @generated message type with reflection information, may provide speed optimized methods
15469
- class MiscAPI_ListResourceTypes$Type extends MessageType<MiscAPI_ListResourceTypes> {
16507
+ class AuthAPI_GrantAccess_Request$Type extends MessageType<AuthAPI_GrantAccess_Request> {
15470
16508
  constructor() {
15471
- super("MiLaboratories.PL.API.MiscAPI.ListResourceTypes", []);
16509
+ super("MiLaboratories.PL.API.AuthAPI.GrantAccess.Request", [
16510
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
16511
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
16512
+ { no: 3, name: "target_user", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
16513
+ { no: 4, name: "permissions", kind: "message", T: () => AuthAPI_Grant_Permissions }
16514
+ ]);
15472
16515
  }
15473
- create(value?: PartialMessage<MiscAPI_ListResourceTypes>): MiscAPI_ListResourceTypes {
16516
+ create(value?: PartialMessage<AuthAPI_GrantAccess_Request>): AuthAPI_GrantAccess_Request {
15474
16517
  const message = globalThis.Object.create((this.messagePrototype!));
16518
+ message.resourceId = 0n;
16519
+ message.targetUser = "";
15475
16520
  if (value !== undefined)
15476
- reflectionMergePartial<MiscAPI_ListResourceTypes>(this, message, value);
16521
+ reflectionMergePartial<AuthAPI_GrantAccess_Request>(this, message, value);
15477
16522
  return message;
15478
16523
  }
15479
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI_ListResourceTypes): MiscAPI_ListResourceTypes {
16524
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_GrantAccess_Request): AuthAPI_GrantAccess_Request {
15480
16525
  let message = target ?? this.create(), end = reader.pos + length;
15481
16526
  while (reader.pos < end) {
15482
16527
  let [fieldNo, wireType] = reader.tag();
15483
16528
  switch (fieldNo) {
16529
+ case /* uint64 resource_id */ 1:
16530
+ message.resourceId = reader.uint64().toBigInt();
16531
+ break;
16532
+ case /* optional bytes resource_signature */ 2:
16533
+ message.resourceSignature = reader.bytes();
16534
+ break;
16535
+ case /* string target_user */ 3:
16536
+ message.targetUser = reader.string();
16537
+ break;
16538
+ case /* MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions */ 4:
16539
+ message.permissions = AuthAPI_Grant_Permissions.internalBinaryRead(reader, reader.uint32(), options, message.permissions);
16540
+ break;
15484
16541
  default:
15485
16542
  let u = options.readUnknownField;
15486
16543
  if (u === "throw")
@@ -15492,7 +16549,19 @@ class MiscAPI_ListResourceTypes$Type extends MessageType<MiscAPI_ListResourceTyp
15492
16549
  }
15493
16550
  return message;
15494
16551
  }
15495
- internalBinaryWrite(message: MiscAPI_ListResourceTypes, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16552
+ internalBinaryWrite(message: AuthAPI_GrantAccess_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16553
+ /* uint64 resource_id = 1; */
16554
+ if (message.resourceId !== 0n)
16555
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
16556
+ /* optional bytes resource_signature = 2; */
16557
+ if (message.resourceSignature !== undefined)
16558
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
16559
+ /* string target_user = 3; */
16560
+ if (message.targetUser !== "")
16561
+ writer.tag(3, WireType.LengthDelimited).string(message.targetUser);
16562
+ /* MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions = 4; */
16563
+ if (message.permissions)
16564
+ AuthAPI_Grant_Permissions.internalBinaryWrite(message.permissions, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
15496
16565
  let u = options.writeUnknownFields;
15497
16566
  if (u !== false)
15498
16567
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15500,21 +16569,21 @@ class MiscAPI_ListResourceTypes$Type extends MessageType<MiscAPI_ListResourceTyp
15500
16569
  }
15501
16570
  }
15502
16571
  /**
15503
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes
16572
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.GrantAccess.Request
15504
16573
  */
15505
- export const MiscAPI_ListResourceTypes = new MiscAPI_ListResourceTypes$Type();
16574
+ export const AuthAPI_GrantAccess_Request = new AuthAPI_GrantAccess_Request$Type();
15506
16575
  // @generated message type with reflection information, may provide speed optimized methods
15507
- class MiscAPI_ListResourceTypes_Request$Type extends MessageType<MiscAPI_ListResourceTypes_Request> {
16576
+ class AuthAPI_GrantAccess_Response$Type extends MessageType<AuthAPI_GrantAccess_Response> {
15508
16577
  constructor() {
15509
- super("MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Request", []);
16578
+ super("MiLaboratories.PL.API.AuthAPI.GrantAccess.Response", []);
15510
16579
  }
15511
- create(value?: PartialMessage<MiscAPI_ListResourceTypes_Request>): MiscAPI_ListResourceTypes_Request {
16580
+ create(value?: PartialMessage<AuthAPI_GrantAccess_Response>): AuthAPI_GrantAccess_Response {
15512
16581
  const message = globalThis.Object.create((this.messagePrototype!));
15513
16582
  if (value !== undefined)
15514
- reflectionMergePartial<MiscAPI_ListResourceTypes_Request>(this, message, value);
16583
+ reflectionMergePartial<AuthAPI_GrantAccess_Response>(this, message, value);
15515
16584
  return message;
15516
16585
  }
15517
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI_ListResourceTypes_Request): MiscAPI_ListResourceTypes_Request {
16586
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_GrantAccess_Response): AuthAPI_GrantAccess_Response {
15518
16587
  let message = target ?? this.create(), end = reader.pos + length;
15519
16588
  while (reader.pos < end) {
15520
16589
  let [fieldNo, wireType] = reader.tag();
@@ -15530,7 +16599,7 @@ class MiscAPI_ListResourceTypes_Request$Type extends MessageType<MiscAPI_ListRes
15530
16599
  }
15531
16600
  return message;
15532
16601
  }
15533
- internalBinaryWrite(message: MiscAPI_ListResourceTypes_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16602
+ internalBinaryWrite(message: AuthAPI_GrantAccess_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15534
16603
  let u = options.writeUnknownFields;
15535
16604
  if (u !== false)
15536
16605
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15538,31 +16607,25 @@ class MiscAPI_ListResourceTypes_Request$Type extends MessageType<MiscAPI_ListRes
15538
16607
  }
15539
16608
  }
15540
16609
  /**
15541
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Request
16610
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.GrantAccess.Response
15542
16611
  */
15543
- export const MiscAPI_ListResourceTypes_Request = new MiscAPI_ListResourceTypes_Request$Type();
16612
+ export const AuthAPI_GrantAccess_Response = new AuthAPI_GrantAccess_Response$Type();
15544
16613
  // @generated message type with reflection information, may provide speed optimized methods
15545
- class MiscAPI_ListResourceTypes_Response$Type extends MessageType<MiscAPI_ListResourceTypes_Response> {
16614
+ class AuthAPI_RevokeGrant$Type extends MessageType<AuthAPI_RevokeGrant> {
15546
16615
  constructor() {
15547
- super("MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Response", [
15548
- { no: 1, name: "types", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => ResourceType }
15549
- ]);
16616
+ super("MiLaboratories.PL.API.AuthAPI.RevokeGrant", []);
15550
16617
  }
15551
- create(value?: PartialMessage<MiscAPI_ListResourceTypes_Response>): MiscAPI_ListResourceTypes_Response {
16618
+ create(value?: PartialMessage<AuthAPI_RevokeGrant>): AuthAPI_RevokeGrant {
15552
16619
  const message = globalThis.Object.create((this.messagePrototype!));
15553
- message.types = [];
15554
16620
  if (value !== undefined)
15555
- reflectionMergePartial<MiscAPI_ListResourceTypes_Response>(this, message, value);
16621
+ reflectionMergePartial<AuthAPI_RevokeGrant>(this, message, value);
15556
16622
  return message;
15557
16623
  }
15558
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI_ListResourceTypes_Response): MiscAPI_ListResourceTypes_Response {
16624
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_RevokeGrant): AuthAPI_RevokeGrant {
15559
16625
  let message = target ?? this.create(), end = reader.pos + length;
15560
16626
  while (reader.pos < end) {
15561
16627
  let [fieldNo, wireType] = reader.tag();
15562
16628
  switch (fieldNo) {
15563
- case /* repeated MiLaboratories.PL.Base.ResourceType types */ 1:
15564
- message.types.push(ResourceType.internalBinaryRead(reader, reader.uint32(), options));
15565
- break;
15566
16629
  default:
15567
16630
  let u = options.readUnknownField;
15568
16631
  if (u === "throw")
@@ -15574,10 +16637,7 @@ class MiscAPI_ListResourceTypes_Response$Type extends MessageType<MiscAPI_ListRe
15574
16637
  }
15575
16638
  return message;
15576
16639
  }
15577
- internalBinaryWrite(message: MiscAPI_ListResourceTypes_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15578
- /* repeated MiLaboratories.PL.Base.ResourceType types = 1; */
15579
- for (let i = 0; i < message.types.length; i++)
15580
- ResourceType.internalBinaryWrite(message.types[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
16640
+ internalBinaryWrite(message: AuthAPI_RevokeGrant, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15581
16641
  let u = options.writeUnknownFields;
15582
16642
  if (u !== false)
15583
16643
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15585,25 +16645,40 @@ class MiscAPI_ListResourceTypes_Response$Type extends MessageType<MiscAPI_ListRe
15585
16645
  }
15586
16646
  }
15587
16647
  /**
15588
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Response
16648
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.RevokeGrant
15589
16649
  */
15590
- export const MiscAPI_ListResourceTypes_Response = new MiscAPI_ListResourceTypes_Response$Type();
16650
+ export const AuthAPI_RevokeGrant = new AuthAPI_RevokeGrant$Type();
15591
16651
  // @generated message type with reflection information, may provide speed optimized methods
15592
- class MaintenanceAPI$Type extends MessageType<MaintenanceAPI> {
16652
+ class AuthAPI_RevokeGrant_Request$Type extends MessageType<AuthAPI_RevokeGrant_Request> {
15593
16653
  constructor() {
15594
- super("MiLaboratories.PL.API.MaintenanceAPI", []);
16654
+ super("MiLaboratories.PL.API.AuthAPI.RevokeGrant.Request", [
16655
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
16656
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
16657
+ { no: 3, name: "target_user", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
16658
+ ]);
15595
16659
  }
15596
- create(value?: PartialMessage<MaintenanceAPI>): MaintenanceAPI {
16660
+ create(value?: PartialMessage<AuthAPI_RevokeGrant_Request>): AuthAPI_RevokeGrant_Request {
15597
16661
  const message = globalThis.Object.create((this.messagePrototype!));
16662
+ message.resourceId = 0n;
16663
+ message.targetUser = "";
15598
16664
  if (value !== undefined)
15599
- reflectionMergePartial<MaintenanceAPI>(this, message, value);
16665
+ reflectionMergePartial<AuthAPI_RevokeGrant_Request>(this, message, value);
15600
16666
  return message;
15601
16667
  }
15602
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaintenanceAPI): MaintenanceAPI {
16668
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_RevokeGrant_Request): AuthAPI_RevokeGrant_Request {
15603
16669
  let message = target ?? this.create(), end = reader.pos + length;
15604
16670
  while (reader.pos < end) {
15605
16671
  let [fieldNo, wireType] = reader.tag();
15606
16672
  switch (fieldNo) {
16673
+ case /* uint64 resource_id */ 1:
16674
+ message.resourceId = reader.uint64().toBigInt();
16675
+ break;
16676
+ case /* optional bytes resource_signature */ 2:
16677
+ message.resourceSignature = reader.bytes();
16678
+ break;
16679
+ case /* string target_user */ 3:
16680
+ message.targetUser = reader.string();
16681
+ break;
15607
16682
  default:
15608
16683
  let u = options.readUnknownField;
15609
16684
  if (u === "throw")
@@ -15615,7 +16690,16 @@ class MaintenanceAPI$Type extends MessageType<MaintenanceAPI> {
15615
16690
  }
15616
16691
  return message;
15617
16692
  }
15618
- internalBinaryWrite(message: MaintenanceAPI, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16693
+ internalBinaryWrite(message: AuthAPI_RevokeGrant_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16694
+ /* uint64 resource_id = 1; */
16695
+ if (message.resourceId !== 0n)
16696
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
16697
+ /* optional bytes resource_signature = 2; */
16698
+ if (message.resourceSignature !== undefined)
16699
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
16700
+ /* string target_user = 3; */
16701
+ if (message.targetUser !== "")
16702
+ writer.tag(3, WireType.LengthDelimited).string(message.targetUser);
15619
16703
  let u = options.writeUnknownFields;
15620
16704
  if (u !== false)
15621
16705
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15623,21 +16707,21 @@ class MaintenanceAPI$Type extends MessageType<MaintenanceAPI> {
15623
16707
  }
15624
16708
  }
15625
16709
  /**
15626
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI
16710
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.RevokeGrant.Request
15627
16711
  */
15628
- export const MaintenanceAPI = new MaintenanceAPI$Type();
16712
+ export const AuthAPI_RevokeGrant_Request = new AuthAPI_RevokeGrant_Request$Type();
15629
16713
  // @generated message type with reflection information, may provide speed optimized methods
15630
- class MaintenanceAPI_Ping$Type extends MessageType<MaintenanceAPI_Ping> {
16714
+ class AuthAPI_RevokeGrant_Response$Type extends MessageType<AuthAPI_RevokeGrant_Response> {
15631
16715
  constructor() {
15632
- super("MiLaboratories.PL.API.MaintenanceAPI.Ping", []);
16716
+ super("MiLaboratories.PL.API.AuthAPI.RevokeGrant.Response", []);
15633
16717
  }
15634
- create(value?: PartialMessage<MaintenanceAPI_Ping>): MaintenanceAPI_Ping {
16718
+ create(value?: PartialMessage<AuthAPI_RevokeGrant_Response>): AuthAPI_RevokeGrant_Response {
15635
16719
  const message = globalThis.Object.create((this.messagePrototype!));
15636
16720
  if (value !== undefined)
15637
- reflectionMergePartial<MaintenanceAPI_Ping>(this, message, value);
16721
+ reflectionMergePartial<AuthAPI_RevokeGrant_Response>(this, message, value);
15638
16722
  return message;
15639
16723
  }
15640
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaintenanceAPI_Ping): MaintenanceAPI_Ping {
16724
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_RevokeGrant_Response): AuthAPI_RevokeGrant_Response {
15641
16725
  let message = target ?? this.create(), end = reader.pos + length;
15642
16726
  while (reader.pos < end) {
15643
16727
  let [fieldNo, wireType] = reader.tag();
@@ -15653,7 +16737,7 @@ class MaintenanceAPI_Ping$Type extends MessageType<MaintenanceAPI_Ping> {
15653
16737
  }
15654
16738
  return message;
15655
16739
  }
15656
- internalBinaryWrite(message: MaintenanceAPI_Ping, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16740
+ internalBinaryWrite(message: AuthAPI_RevokeGrant_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15657
16741
  let u = options.writeUnknownFields;
15658
16742
  if (u !== false)
15659
16743
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15661,21 +16745,21 @@ class MaintenanceAPI_Ping$Type extends MessageType<MaintenanceAPI_Ping> {
15661
16745
  }
15662
16746
  }
15663
16747
  /**
15664
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping
16748
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.RevokeGrant.Response
15665
16749
  */
15666
- export const MaintenanceAPI_Ping = new MaintenanceAPI_Ping$Type();
16750
+ export const AuthAPI_RevokeGrant_Response = new AuthAPI_RevokeGrant_Response$Type();
15667
16751
  // @generated message type with reflection information, may provide speed optimized methods
15668
- class MaintenanceAPI_Ping_Request$Type extends MessageType<MaintenanceAPI_Ping_Request> {
16752
+ class AuthAPI_ListGrants$Type extends MessageType<AuthAPI_ListGrants> {
15669
16753
  constructor() {
15670
- super("MiLaboratories.PL.API.MaintenanceAPI.Ping.Request", []);
16754
+ super("MiLaboratories.PL.API.AuthAPI.ListGrants", []);
15671
16755
  }
15672
- create(value?: PartialMessage<MaintenanceAPI_Ping_Request>): MaintenanceAPI_Ping_Request {
16756
+ create(value?: PartialMessage<AuthAPI_ListGrants>): AuthAPI_ListGrants {
15673
16757
  const message = globalThis.Object.create((this.messagePrototype!));
15674
16758
  if (value !== undefined)
15675
- reflectionMergePartial<MaintenanceAPI_Ping_Request>(this, message, value);
16759
+ reflectionMergePartial<AuthAPI_ListGrants>(this, message, value);
15676
16760
  return message;
15677
16761
  }
15678
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaintenanceAPI_Ping_Request): MaintenanceAPI_Ping_Request {
16762
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListGrants): AuthAPI_ListGrants {
15679
16763
  let message = target ?? this.create(), end = reader.pos + length;
15680
16764
  while (reader.pos < end) {
15681
16765
  let [fieldNo, wireType] = reader.tag();
@@ -15691,7 +16775,7 @@ class MaintenanceAPI_Ping_Request$Type extends MessageType<MaintenanceAPI_Ping_R
15691
16775
  }
15692
16776
  return message;
15693
16777
  }
15694
- internalBinaryWrite(message: MaintenanceAPI_Ping_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16778
+ internalBinaryWrite(message: AuthAPI_ListGrants, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
15695
16779
  let u = options.writeUnknownFields;
15696
16780
  if (u !== false)
15697
16781
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -15699,16 +16783,806 @@ class MaintenanceAPI_Ping_Request$Type extends MessageType<MaintenanceAPI_Ping_R
15699
16783
  }
15700
16784
  }
15701
16785
  /**
15702
- * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping.Request
16786
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListGrants
15703
16787
  */
15704
- export const MaintenanceAPI_Ping_Request = new MaintenanceAPI_Ping_Request$Type();
16788
+ export const AuthAPI_ListGrants = new AuthAPI_ListGrants$Type();
16789
+ // @generated message type with reflection information, may provide speed optimized methods
16790
+ class AuthAPI_ListGrants_Request$Type extends MessageType<AuthAPI_ListGrants_Request> {
16791
+ constructor() {
16792
+ super("MiLaboratories.PL.API.AuthAPI.ListGrants.Request", [
16793
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
16794
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
16795
+ ]);
16796
+ }
16797
+ create(value?: PartialMessage<AuthAPI_ListGrants_Request>): AuthAPI_ListGrants_Request {
16798
+ const message = globalThis.Object.create((this.messagePrototype!));
16799
+ message.resourceId = 0n;
16800
+ if (value !== undefined)
16801
+ reflectionMergePartial<AuthAPI_ListGrants_Request>(this, message, value);
16802
+ return message;
16803
+ }
16804
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListGrants_Request): AuthAPI_ListGrants_Request {
16805
+ let message = target ?? this.create(), end = reader.pos + length;
16806
+ while (reader.pos < end) {
16807
+ let [fieldNo, wireType] = reader.tag();
16808
+ switch (fieldNo) {
16809
+ case /* uint64 resource_id */ 1:
16810
+ message.resourceId = reader.uint64().toBigInt();
16811
+ break;
16812
+ case /* optional bytes resource_signature */ 2:
16813
+ message.resourceSignature = reader.bytes();
16814
+ break;
16815
+ default:
16816
+ let u = options.readUnknownField;
16817
+ if (u === "throw")
16818
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
16819
+ let d = reader.skip(wireType);
16820
+ if (u !== false)
16821
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
16822
+ }
16823
+ }
16824
+ return message;
16825
+ }
16826
+ internalBinaryWrite(message: AuthAPI_ListGrants_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16827
+ /* uint64 resource_id = 1; */
16828
+ if (message.resourceId !== 0n)
16829
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
16830
+ /* optional bytes resource_signature = 2; */
16831
+ if (message.resourceSignature !== undefined)
16832
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
16833
+ let u = options.writeUnknownFields;
16834
+ if (u !== false)
16835
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
16836
+ return writer;
16837
+ }
16838
+ }
16839
+ /**
16840
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListGrants.Request
16841
+ */
16842
+ export const AuthAPI_ListGrants_Request = new AuthAPI_ListGrants_Request$Type();
16843
+ // @generated message type with reflection information, may provide speed optimized methods
16844
+ class AuthAPI_ListGrants_Response$Type extends MessageType<AuthAPI_ListGrants_Response> {
16845
+ constructor() {
16846
+ super("MiLaboratories.PL.API.AuthAPI.ListGrants.Response", [
16847
+ { no: 1, name: "grant", kind: "message", T: () => AuthAPI_Grant }
16848
+ ]);
16849
+ }
16850
+ create(value?: PartialMessage<AuthAPI_ListGrants_Response>): AuthAPI_ListGrants_Response {
16851
+ const message = globalThis.Object.create((this.messagePrototype!));
16852
+ if (value !== undefined)
16853
+ reflectionMergePartial<AuthAPI_ListGrants_Response>(this, message, value);
16854
+ return message;
16855
+ }
16856
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListGrants_Response): AuthAPI_ListGrants_Response {
16857
+ let message = target ?? this.create(), end = reader.pos + length;
16858
+ while (reader.pos < end) {
16859
+ let [fieldNo, wireType] = reader.tag();
16860
+ switch (fieldNo) {
16861
+ case /* MiLaboratories.PL.API.AuthAPI.Grant grant */ 1:
16862
+ message.grant = AuthAPI_Grant.internalBinaryRead(reader, reader.uint32(), options, message.grant);
16863
+ break;
16864
+ default:
16865
+ let u = options.readUnknownField;
16866
+ if (u === "throw")
16867
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
16868
+ let d = reader.skip(wireType);
16869
+ if (u !== false)
16870
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
16871
+ }
16872
+ }
16873
+ return message;
16874
+ }
16875
+ internalBinaryWrite(message: AuthAPI_ListGrants_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16876
+ /* MiLaboratories.PL.API.AuthAPI.Grant grant = 1; */
16877
+ if (message.grant)
16878
+ AuthAPI_Grant.internalBinaryWrite(message.grant, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
16879
+ let u = options.writeUnknownFields;
16880
+ if (u !== false)
16881
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
16882
+ return writer;
16883
+ }
16884
+ }
16885
+ /**
16886
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListGrants.Response
16887
+ */
16888
+ export const AuthAPI_ListGrants_Response = new AuthAPI_ListGrants_Response$Type();
16889
+ // @generated message type with reflection information, may provide speed optimized methods
16890
+ class AuthAPI_Grant$Type extends MessageType<AuthAPI_Grant> {
16891
+ constructor() {
16892
+ super("MiLaboratories.PL.API.AuthAPI.Grant", [
16893
+ { no: 1, name: "user", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
16894
+ { no: 2, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
16895
+ { no: 3, name: "permissions", kind: "message", T: () => AuthAPI_Grant_Permissions },
16896
+ { no: 4, name: "granted_by", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
16897
+ { no: 5, name: "granted_at", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }
16898
+ ]);
16899
+ }
16900
+ create(value?: PartialMessage<AuthAPI_Grant>): AuthAPI_Grant {
16901
+ const message = globalThis.Object.create((this.messagePrototype!));
16902
+ message.user = "";
16903
+ message.resourceId = 0n;
16904
+ message.grantedBy = "";
16905
+ message.grantedAt = 0n;
16906
+ if (value !== undefined)
16907
+ reflectionMergePartial<AuthAPI_Grant>(this, message, value);
16908
+ return message;
16909
+ }
16910
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_Grant): AuthAPI_Grant {
16911
+ let message = target ?? this.create(), end = reader.pos + length;
16912
+ while (reader.pos < end) {
16913
+ let [fieldNo, wireType] = reader.tag();
16914
+ switch (fieldNo) {
16915
+ case /* string user */ 1:
16916
+ message.user = reader.string();
16917
+ break;
16918
+ case /* uint64 resource_id */ 2:
16919
+ message.resourceId = reader.uint64().toBigInt();
16920
+ break;
16921
+ case /* MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions */ 3:
16922
+ message.permissions = AuthAPI_Grant_Permissions.internalBinaryRead(reader, reader.uint32(), options, message.permissions);
16923
+ break;
16924
+ case /* string granted_by */ 4:
16925
+ message.grantedBy = reader.string();
16926
+ break;
16927
+ case /* int64 granted_at */ 5:
16928
+ message.grantedAt = reader.int64().toBigInt();
16929
+ break;
16930
+ default:
16931
+ let u = options.readUnknownField;
16932
+ if (u === "throw")
16933
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
16934
+ let d = reader.skip(wireType);
16935
+ if (u !== false)
16936
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
16937
+ }
16938
+ }
16939
+ return message;
16940
+ }
16941
+ internalBinaryWrite(message: AuthAPI_Grant, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
16942
+ /* string user = 1; */
16943
+ if (message.user !== "")
16944
+ writer.tag(1, WireType.LengthDelimited).string(message.user);
16945
+ /* uint64 resource_id = 2; */
16946
+ if (message.resourceId !== 0n)
16947
+ writer.tag(2, WireType.Varint).uint64(message.resourceId);
16948
+ /* MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions = 3; */
16949
+ if (message.permissions)
16950
+ AuthAPI_Grant_Permissions.internalBinaryWrite(message.permissions, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
16951
+ /* string granted_by = 4; */
16952
+ if (message.grantedBy !== "")
16953
+ writer.tag(4, WireType.LengthDelimited).string(message.grantedBy);
16954
+ /* int64 granted_at = 5; */
16955
+ if (message.grantedAt !== 0n)
16956
+ writer.tag(5, WireType.Varint).int64(message.grantedAt);
16957
+ let u = options.writeUnknownFields;
16958
+ if (u !== false)
16959
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
16960
+ return writer;
16961
+ }
16962
+ }
16963
+ /**
16964
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.Grant
16965
+ */
16966
+ export const AuthAPI_Grant = new AuthAPI_Grant$Type();
16967
+ // @generated message type with reflection information, may provide speed optimized methods
16968
+ class AuthAPI_Grant_Permissions$Type extends MessageType<AuthAPI_Grant_Permissions> {
16969
+ constructor() {
16970
+ super("MiLaboratories.PL.API.AuthAPI.Grant.Permissions", [
16971
+ { no: 1, name: "writable", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
16972
+ ]);
16973
+ }
16974
+ create(value?: PartialMessage<AuthAPI_Grant_Permissions>): AuthAPI_Grant_Permissions {
16975
+ const message = globalThis.Object.create((this.messagePrototype!));
16976
+ message.writable = false;
16977
+ if (value !== undefined)
16978
+ reflectionMergePartial<AuthAPI_Grant_Permissions>(this, message, value);
16979
+ return message;
16980
+ }
16981
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_Grant_Permissions): AuthAPI_Grant_Permissions {
16982
+ let message = target ?? this.create(), end = reader.pos + length;
16983
+ while (reader.pos < end) {
16984
+ let [fieldNo, wireType] = reader.tag();
16985
+ switch (fieldNo) {
16986
+ case /* bool writable */ 1:
16987
+ message.writable = reader.bool();
16988
+ break;
16989
+ default:
16990
+ let u = options.readUnknownField;
16991
+ if (u === "throw")
16992
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
16993
+ let d = reader.skip(wireType);
16994
+ if (u !== false)
16995
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
16996
+ }
16997
+ }
16998
+ return message;
16999
+ }
17000
+ internalBinaryWrite(message: AuthAPI_Grant_Permissions, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17001
+ /* bool writable = 1; */
17002
+ if (message.writable !== false)
17003
+ writer.tag(1, WireType.Varint).bool(message.writable);
17004
+ let u = options.writeUnknownFields;
17005
+ if (u !== false)
17006
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17007
+ return writer;
17008
+ }
17009
+ }
17010
+ /**
17011
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.Grant.Permissions
17012
+ */
17013
+ export const AuthAPI_Grant_Permissions = new AuthAPI_Grant_Permissions$Type();
17014
+ // @generated message type with reflection information, may provide speed optimized methods
17015
+ class AuthAPI_ListUserResources$Type extends MessageType<AuthAPI_ListUserResources> {
17016
+ constructor() {
17017
+ super("MiLaboratories.PL.API.AuthAPI.ListUserResources", []);
17018
+ }
17019
+ create(value?: PartialMessage<AuthAPI_ListUserResources>): AuthAPI_ListUserResources {
17020
+ const message = globalThis.Object.create((this.messagePrototype!));
17021
+ if (value !== undefined)
17022
+ reflectionMergePartial<AuthAPI_ListUserResources>(this, message, value);
17023
+ return message;
17024
+ }
17025
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListUserResources): AuthAPI_ListUserResources {
17026
+ let message = target ?? this.create(), end = reader.pos + length;
17027
+ while (reader.pos < end) {
17028
+ let [fieldNo, wireType] = reader.tag();
17029
+ switch (fieldNo) {
17030
+ default:
17031
+ let u = options.readUnknownField;
17032
+ if (u === "throw")
17033
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17034
+ let d = reader.skip(wireType);
17035
+ if (u !== false)
17036
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17037
+ }
17038
+ }
17039
+ return message;
17040
+ }
17041
+ internalBinaryWrite(message: AuthAPI_ListUserResources, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17042
+ let u = options.writeUnknownFields;
17043
+ if (u !== false)
17044
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17045
+ return writer;
17046
+ }
17047
+ }
17048
+ /**
17049
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources
17050
+ */
17051
+ export const AuthAPI_ListUserResources = new AuthAPI_ListUserResources$Type();
17052
+ // @generated message type with reflection information, may provide speed optimized methods
17053
+ class AuthAPI_ListUserResources_Request$Type extends MessageType<AuthAPI_ListUserResources_Request> {
17054
+ constructor() {
17055
+ super("MiLaboratories.PL.API.AuthAPI.ListUserResources.Request", [
17056
+ { no: 1, name: "login", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
17057
+ { no: 2, name: "start_from", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
17058
+ { no: 3, name: "limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }
17059
+ ]);
17060
+ }
17061
+ create(value?: PartialMessage<AuthAPI_ListUserResources_Request>): AuthAPI_ListUserResources_Request {
17062
+ const message = globalThis.Object.create((this.messagePrototype!));
17063
+ message.login = "";
17064
+ message.startFrom = 0n;
17065
+ message.limit = 0;
17066
+ if (value !== undefined)
17067
+ reflectionMergePartial<AuthAPI_ListUserResources_Request>(this, message, value);
17068
+ return message;
17069
+ }
17070
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListUserResources_Request): AuthAPI_ListUserResources_Request {
17071
+ let message = target ?? this.create(), end = reader.pos + length;
17072
+ while (reader.pos < end) {
17073
+ let [fieldNo, wireType] = reader.tag();
17074
+ switch (fieldNo) {
17075
+ case /* string login */ 1:
17076
+ message.login = reader.string();
17077
+ break;
17078
+ case /* uint64 start_from */ 2:
17079
+ message.startFrom = reader.uint64().toBigInt();
17080
+ break;
17081
+ case /* uint32 limit */ 3:
17082
+ message.limit = reader.uint32();
17083
+ break;
17084
+ default:
17085
+ let u = options.readUnknownField;
17086
+ if (u === "throw")
17087
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17088
+ let d = reader.skip(wireType);
17089
+ if (u !== false)
17090
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17091
+ }
17092
+ }
17093
+ return message;
17094
+ }
17095
+ internalBinaryWrite(message: AuthAPI_ListUserResources_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17096
+ /* string login = 1; */
17097
+ if (message.login !== "")
17098
+ writer.tag(1, WireType.LengthDelimited).string(message.login);
17099
+ /* uint64 start_from = 2; */
17100
+ if (message.startFrom !== 0n)
17101
+ writer.tag(2, WireType.Varint).uint64(message.startFrom);
17102
+ /* uint32 limit = 3; */
17103
+ if (message.limit !== 0)
17104
+ writer.tag(3, WireType.Varint).uint32(message.limit);
17105
+ let u = options.writeUnknownFields;
17106
+ if (u !== false)
17107
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17108
+ return writer;
17109
+ }
17110
+ }
17111
+ /**
17112
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.Request
17113
+ */
17114
+ export const AuthAPI_ListUserResources_Request = new AuthAPI_ListUserResources_Request$Type();
17115
+ // @generated message type with reflection information, may provide speed optimized methods
17116
+ class AuthAPI_ListUserResources_Response$Type extends MessageType<AuthAPI_ListUserResources_Response> {
17117
+ constructor() {
17118
+ super("MiLaboratories.PL.API.AuthAPI.ListUserResources.Response", [
17119
+ { no: 1, name: "user_root", kind: "message", oneof: "entry", T: () => AuthAPI_ListUserResources_UserRoot },
17120
+ { no: 2, name: "shared_resource", kind: "message", oneof: "entry", T: () => AuthAPI_ListUserResources_SharedResource },
17121
+ { no: 3, name: "next_resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }
17122
+ ]);
17123
+ }
17124
+ create(value?: PartialMessage<AuthAPI_ListUserResources_Response>): AuthAPI_ListUserResources_Response {
17125
+ const message = globalThis.Object.create((this.messagePrototype!));
17126
+ message.entry = { oneofKind: undefined };
17127
+ message.nextResourceId = 0n;
17128
+ if (value !== undefined)
17129
+ reflectionMergePartial<AuthAPI_ListUserResources_Response>(this, message, value);
17130
+ return message;
17131
+ }
17132
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListUserResources_Response): AuthAPI_ListUserResources_Response {
17133
+ let message = target ?? this.create(), end = reader.pos + length;
17134
+ while (reader.pos < end) {
17135
+ let [fieldNo, wireType] = reader.tag();
17136
+ switch (fieldNo) {
17137
+ case /* MiLaboratories.PL.API.AuthAPI.ListUserResources.UserRoot user_root */ 1:
17138
+ message.entry = {
17139
+ oneofKind: "userRoot",
17140
+ userRoot: AuthAPI_ListUserResources_UserRoot.internalBinaryRead(reader, reader.uint32(), options, (message.entry as any).userRoot)
17141
+ };
17142
+ break;
17143
+ case /* MiLaboratories.PL.API.AuthAPI.ListUserResources.SharedResource shared_resource */ 2:
17144
+ message.entry = {
17145
+ oneofKind: "sharedResource",
17146
+ sharedResource: AuthAPI_ListUserResources_SharedResource.internalBinaryRead(reader, reader.uint32(), options, (message.entry as any).sharedResource)
17147
+ };
17148
+ break;
17149
+ case /* uint64 next_resource_id */ 3:
17150
+ message.nextResourceId = reader.uint64().toBigInt();
17151
+ break;
17152
+ default:
17153
+ let u = options.readUnknownField;
17154
+ if (u === "throw")
17155
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17156
+ let d = reader.skip(wireType);
17157
+ if (u !== false)
17158
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17159
+ }
17160
+ }
17161
+ return message;
17162
+ }
17163
+ internalBinaryWrite(message: AuthAPI_ListUserResources_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17164
+ /* MiLaboratories.PL.API.AuthAPI.ListUserResources.UserRoot user_root = 1; */
17165
+ if (message.entry.oneofKind === "userRoot")
17166
+ AuthAPI_ListUserResources_UserRoot.internalBinaryWrite(message.entry.userRoot, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
17167
+ /* MiLaboratories.PL.API.AuthAPI.ListUserResources.SharedResource shared_resource = 2; */
17168
+ if (message.entry.oneofKind === "sharedResource")
17169
+ AuthAPI_ListUserResources_SharedResource.internalBinaryWrite(message.entry.sharedResource, writer.tag(2, WireType.LengthDelimited).fork(), options).join();
17170
+ /* uint64 next_resource_id = 3; */
17171
+ if (message.nextResourceId !== 0n)
17172
+ writer.tag(3, WireType.Varint).uint64(message.nextResourceId);
17173
+ let u = options.writeUnknownFields;
17174
+ if (u !== false)
17175
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17176
+ return writer;
17177
+ }
17178
+ }
17179
+ /**
17180
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.Response
17181
+ */
17182
+ export const AuthAPI_ListUserResources_Response = new AuthAPI_ListUserResources_Response$Type();
17183
+ // @generated message type with reflection information, may provide speed optimized methods
17184
+ class AuthAPI_ListUserResources_UserRoot$Type extends MessageType<AuthAPI_ListUserResources_UserRoot> {
17185
+ constructor() {
17186
+ super("MiLaboratories.PL.API.AuthAPI.ListUserResources.UserRoot", [
17187
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
17188
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ }
17189
+ ]);
17190
+ }
17191
+ create(value?: PartialMessage<AuthAPI_ListUserResources_UserRoot>): AuthAPI_ListUserResources_UserRoot {
17192
+ const message = globalThis.Object.create((this.messagePrototype!));
17193
+ message.resourceId = 0n;
17194
+ if (value !== undefined)
17195
+ reflectionMergePartial<AuthAPI_ListUserResources_UserRoot>(this, message, value);
17196
+ return message;
17197
+ }
17198
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListUserResources_UserRoot): AuthAPI_ListUserResources_UserRoot {
17199
+ let message = target ?? this.create(), end = reader.pos + length;
17200
+ while (reader.pos < end) {
17201
+ let [fieldNo, wireType] = reader.tag();
17202
+ switch (fieldNo) {
17203
+ case /* uint64 resource_id */ 1:
17204
+ message.resourceId = reader.uint64().toBigInt();
17205
+ break;
17206
+ case /* optional bytes resource_signature */ 2:
17207
+ message.resourceSignature = reader.bytes();
17208
+ break;
17209
+ default:
17210
+ let u = options.readUnknownField;
17211
+ if (u === "throw")
17212
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17213
+ let d = reader.skip(wireType);
17214
+ if (u !== false)
17215
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17216
+ }
17217
+ }
17218
+ return message;
17219
+ }
17220
+ internalBinaryWrite(message: AuthAPI_ListUserResources_UserRoot, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17221
+ /* uint64 resource_id = 1; */
17222
+ if (message.resourceId !== 0n)
17223
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
17224
+ /* optional bytes resource_signature = 2; */
17225
+ if (message.resourceSignature !== undefined)
17226
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
17227
+ let u = options.writeUnknownFields;
17228
+ if (u !== false)
17229
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17230
+ return writer;
17231
+ }
17232
+ }
17233
+ /**
17234
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.UserRoot
17235
+ */
17236
+ export const AuthAPI_ListUserResources_UserRoot = new AuthAPI_ListUserResources_UserRoot$Type();
17237
+ // @generated message type with reflection information, may provide speed optimized methods
17238
+ class AuthAPI_ListUserResources_SharedResource$Type extends MessageType<AuthAPI_ListUserResources_SharedResource> {
17239
+ constructor() {
17240
+ super("MiLaboratories.PL.API.AuthAPI.ListUserResources.SharedResource", [
17241
+ { no: 1, name: "resource_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
17242
+ { no: 2, name: "resource_signature", kind: "scalar", opt: true, T: 12 /*ScalarType.BYTES*/ },
17243
+ { no: 3, name: "resource_type", kind: "message", T: () => ResourceType },
17244
+ { no: 4, name: "permissions", kind: "message", T: () => AuthAPI_Grant_Permissions }
17245
+ ]);
17246
+ }
17247
+ create(value?: PartialMessage<AuthAPI_ListUserResources_SharedResource>): AuthAPI_ListUserResources_SharedResource {
17248
+ const message = globalThis.Object.create((this.messagePrototype!));
17249
+ message.resourceId = 0n;
17250
+ if (value !== undefined)
17251
+ reflectionMergePartial<AuthAPI_ListUserResources_SharedResource>(this, message, value);
17252
+ return message;
17253
+ }
17254
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AuthAPI_ListUserResources_SharedResource): AuthAPI_ListUserResources_SharedResource {
17255
+ let message = target ?? this.create(), end = reader.pos + length;
17256
+ while (reader.pos < end) {
17257
+ let [fieldNo, wireType] = reader.tag();
17258
+ switch (fieldNo) {
17259
+ case /* uint64 resource_id */ 1:
17260
+ message.resourceId = reader.uint64().toBigInt();
17261
+ break;
17262
+ case /* optional bytes resource_signature */ 2:
17263
+ message.resourceSignature = reader.bytes();
17264
+ break;
17265
+ case /* MiLaboratories.PL.Base.ResourceType resource_type */ 3:
17266
+ message.resourceType = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.resourceType);
17267
+ break;
17268
+ case /* MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions */ 4:
17269
+ message.permissions = AuthAPI_Grant_Permissions.internalBinaryRead(reader, reader.uint32(), options, message.permissions);
17270
+ break;
17271
+ default:
17272
+ let u = options.readUnknownField;
17273
+ if (u === "throw")
17274
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17275
+ let d = reader.skip(wireType);
17276
+ if (u !== false)
17277
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17278
+ }
17279
+ }
17280
+ return message;
17281
+ }
17282
+ internalBinaryWrite(message: AuthAPI_ListUserResources_SharedResource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17283
+ /* uint64 resource_id = 1; */
17284
+ if (message.resourceId !== 0n)
17285
+ writer.tag(1, WireType.Varint).uint64(message.resourceId);
17286
+ /* optional bytes resource_signature = 2; */
17287
+ if (message.resourceSignature !== undefined)
17288
+ writer.tag(2, WireType.LengthDelimited).bytes(message.resourceSignature);
17289
+ /* MiLaboratories.PL.Base.ResourceType resource_type = 3; */
17290
+ if (message.resourceType)
17291
+ ResourceType.internalBinaryWrite(message.resourceType, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
17292
+ /* MiLaboratories.PL.API.AuthAPI.Grant.Permissions permissions = 4; */
17293
+ if (message.permissions)
17294
+ AuthAPI_Grant_Permissions.internalBinaryWrite(message.permissions, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
17295
+ let u = options.writeUnknownFields;
17296
+ if (u !== false)
17297
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17298
+ return writer;
17299
+ }
17300
+ }
17301
+ /**
17302
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.AuthAPI.ListUserResources.SharedResource
17303
+ */
17304
+ export const AuthAPI_ListUserResources_SharedResource = new AuthAPI_ListUserResources_SharedResource$Type();
17305
+ // @generated message type with reflection information, may provide speed optimized methods
17306
+ class MiscAPI$Type extends MessageType<MiscAPI> {
17307
+ constructor() {
17308
+ super("MiLaboratories.PL.API.MiscAPI", []);
17309
+ }
17310
+ create(value?: PartialMessage<MiscAPI>): MiscAPI {
17311
+ const message = globalThis.Object.create((this.messagePrototype!));
17312
+ if (value !== undefined)
17313
+ reflectionMergePartial<MiscAPI>(this, message, value);
17314
+ return message;
17315
+ }
17316
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI): MiscAPI {
17317
+ let message = target ?? this.create(), end = reader.pos + length;
17318
+ while (reader.pos < end) {
17319
+ let [fieldNo, wireType] = reader.tag();
17320
+ switch (fieldNo) {
17321
+ default:
17322
+ let u = options.readUnknownField;
17323
+ if (u === "throw")
17324
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17325
+ let d = reader.skip(wireType);
17326
+ if (u !== false)
17327
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17328
+ }
17329
+ }
17330
+ return message;
17331
+ }
17332
+ internalBinaryWrite(message: MiscAPI, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17333
+ let u = options.writeUnknownFields;
17334
+ if (u !== false)
17335
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17336
+ return writer;
17337
+ }
17338
+ }
17339
+ /**
17340
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI
17341
+ */
17342
+ export const MiscAPI = new MiscAPI$Type();
17343
+ // @generated message type with reflection information, may provide speed optimized methods
17344
+ class MiscAPI_ListResourceTypes$Type extends MessageType<MiscAPI_ListResourceTypes> {
17345
+ constructor() {
17346
+ super("MiLaboratories.PL.API.MiscAPI.ListResourceTypes", []);
17347
+ }
17348
+ create(value?: PartialMessage<MiscAPI_ListResourceTypes>): MiscAPI_ListResourceTypes {
17349
+ const message = globalThis.Object.create((this.messagePrototype!));
17350
+ if (value !== undefined)
17351
+ reflectionMergePartial<MiscAPI_ListResourceTypes>(this, message, value);
17352
+ return message;
17353
+ }
17354
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI_ListResourceTypes): MiscAPI_ListResourceTypes {
17355
+ let message = target ?? this.create(), end = reader.pos + length;
17356
+ while (reader.pos < end) {
17357
+ let [fieldNo, wireType] = reader.tag();
17358
+ switch (fieldNo) {
17359
+ default:
17360
+ let u = options.readUnknownField;
17361
+ if (u === "throw")
17362
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17363
+ let d = reader.skip(wireType);
17364
+ if (u !== false)
17365
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17366
+ }
17367
+ }
17368
+ return message;
17369
+ }
17370
+ internalBinaryWrite(message: MiscAPI_ListResourceTypes, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17371
+ let u = options.writeUnknownFields;
17372
+ if (u !== false)
17373
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17374
+ return writer;
17375
+ }
17376
+ }
17377
+ /**
17378
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes
17379
+ */
17380
+ export const MiscAPI_ListResourceTypes = new MiscAPI_ListResourceTypes$Type();
17381
+ // @generated message type with reflection information, may provide speed optimized methods
17382
+ class MiscAPI_ListResourceTypes_Request$Type extends MessageType<MiscAPI_ListResourceTypes_Request> {
17383
+ constructor() {
17384
+ super("MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Request", []);
17385
+ }
17386
+ create(value?: PartialMessage<MiscAPI_ListResourceTypes_Request>): MiscAPI_ListResourceTypes_Request {
17387
+ const message = globalThis.Object.create((this.messagePrototype!));
17388
+ if (value !== undefined)
17389
+ reflectionMergePartial<MiscAPI_ListResourceTypes_Request>(this, message, value);
17390
+ return message;
17391
+ }
17392
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI_ListResourceTypes_Request): MiscAPI_ListResourceTypes_Request {
17393
+ let message = target ?? this.create(), end = reader.pos + length;
17394
+ while (reader.pos < end) {
17395
+ let [fieldNo, wireType] = reader.tag();
17396
+ switch (fieldNo) {
17397
+ default:
17398
+ let u = options.readUnknownField;
17399
+ if (u === "throw")
17400
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17401
+ let d = reader.skip(wireType);
17402
+ if (u !== false)
17403
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17404
+ }
17405
+ }
17406
+ return message;
17407
+ }
17408
+ internalBinaryWrite(message: MiscAPI_ListResourceTypes_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17409
+ let u = options.writeUnknownFields;
17410
+ if (u !== false)
17411
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17412
+ return writer;
17413
+ }
17414
+ }
17415
+ /**
17416
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Request
17417
+ */
17418
+ export const MiscAPI_ListResourceTypes_Request = new MiscAPI_ListResourceTypes_Request$Type();
17419
+ // @generated message type with reflection information, may provide speed optimized methods
17420
+ class MiscAPI_ListResourceTypes_Response$Type extends MessageType<MiscAPI_ListResourceTypes_Response> {
17421
+ constructor() {
17422
+ super("MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Response", [
17423
+ { no: 1, name: "types", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => ResourceType }
17424
+ ]);
17425
+ }
17426
+ create(value?: PartialMessage<MiscAPI_ListResourceTypes_Response>): MiscAPI_ListResourceTypes_Response {
17427
+ const message = globalThis.Object.create((this.messagePrototype!));
17428
+ message.types = [];
17429
+ if (value !== undefined)
17430
+ reflectionMergePartial<MiscAPI_ListResourceTypes_Response>(this, message, value);
17431
+ return message;
17432
+ }
17433
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiscAPI_ListResourceTypes_Response): MiscAPI_ListResourceTypes_Response {
17434
+ let message = target ?? this.create(), end = reader.pos + length;
17435
+ while (reader.pos < end) {
17436
+ let [fieldNo, wireType] = reader.tag();
17437
+ switch (fieldNo) {
17438
+ case /* repeated MiLaboratories.PL.Base.ResourceType types */ 1:
17439
+ message.types.push(ResourceType.internalBinaryRead(reader, reader.uint32(), options));
17440
+ break;
17441
+ default:
17442
+ let u = options.readUnknownField;
17443
+ if (u === "throw")
17444
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17445
+ let d = reader.skip(wireType);
17446
+ if (u !== false)
17447
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17448
+ }
17449
+ }
17450
+ return message;
17451
+ }
17452
+ internalBinaryWrite(message: MiscAPI_ListResourceTypes_Response, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17453
+ /* repeated MiLaboratories.PL.Base.ResourceType types = 1; */
17454
+ for (let i = 0; i < message.types.length; i++)
17455
+ ResourceType.internalBinaryWrite(message.types[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
17456
+ let u = options.writeUnknownFields;
17457
+ if (u !== false)
17458
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17459
+ return writer;
17460
+ }
17461
+ }
17462
+ /**
17463
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MiscAPI.ListResourceTypes.Response
17464
+ */
17465
+ export const MiscAPI_ListResourceTypes_Response = new MiscAPI_ListResourceTypes_Response$Type();
17466
+ // @generated message type with reflection information, may provide speed optimized methods
17467
+ class MaintenanceAPI$Type extends MessageType<MaintenanceAPI> {
17468
+ constructor() {
17469
+ super("MiLaboratories.PL.API.MaintenanceAPI", []);
17470
+ }
17471
+ create(value?: PartialMessage<MaintenanceAPI>): MaintenanceAPI {
17472
+ const message = globalThis.Object.create((this.messagePrototype!));
17473
+ if (value !== undefined)
17474
+ reflectionMergePartial<MaintenanceAPI>(this, message, value);
17475
+ return message;
17476
+ }
17477
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaintenanceAPI): MaintenanceAPI {
17478
+ let message = target ?? this.create(), end = reader.pos + length;
17479
+ while (reader.pos < end) {
17480
+ let [fieldNo, wireType] = reader.tag();
17481
+ switch (fieldNo) {
17482
+ default:
17483
+ let u = options.readUnknownField;
17484
+ if (u === "throw")
17485
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17486
+ let d = reader.skip(wireType);
17487
+ if (u !== false)
17488
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17489
+ }
17490
+ }
17491
+ return message;
17492
+ }
17493
+ internalBinaryWrite(message: MaintenanceAPI, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17494
+ let u = options.writeUnknownFields;
17495
+ if (u !== false)
17496
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17497
+ return writer;
17498
+ }
17499
+ }
17500
+ /**
17501
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI
17502
+ */
17503
+ export const MaintenanceAPI = new MaintenanceAPI$Type();
17504
+ // @generated message type with reflection information, may provide speed optimized methods
17505
+ class MaintenanceAPI_Ping$Type extends MessageType<MaintenanceAPI_Ping> {
17506
+ constructor() {
17507
+ super("MiLaboratories.PL.API.MaintenanceAPI.Ping", []);
17508
+ }
17509
+ create(value?: PartialMessage<MaintenanceAPI_Ping>): MaintenanceAPI_Ping {
17510
+ const message = globalThis.Object.create((this.messagePrototype!));
17511
+ if (value !== undefined)
17512
+ reflectionMergePartial<MaintenanceAPI_Ping>(this, message, value);
17513
+ return message;
17514
+ }
17515
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaintenanceAPI_Ping): MaintenanceAPI_Ping {
17516
+ let message = target ?? this.create(), end = reader.pos + length;
17517
+ while (reader.pos < end) {
17518
+ let [fieldNo, wireType] = reader.tag();
17519
+ switch (fieldNo) {
17520
+ default:
17521
+ let u = options.readUnknownField;
17522
+ if (u === "throw")
17523
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17524
+ let d = reader.skip(wireType);
17525
+ if (u !== false)
17526
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17527
+ }
17528
+ }
17529
+ return message;
17530
+ }
17531
+ internalBinaryWrite(message: MaintenanceAPI_Ping, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17532
+ let u = options.writeUnknownFields;
17533
+ if (u !== false)
17534
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17535
+ return writer;
17536
+ }
17537
+ }
17538
+ /**
17539
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping
17540
+ */
17541
+ export const MaintenanceAPI_Ping = new MaintenanceAPI_Ping$Type();
17542
+ // @generated message type with reflection information, may provide speed optimized methods
17543
+ class MaintenanceAPI_Ping_Request$Type extends MessageType<MaintenanceAPI_Ping_Request> {
17544
+ constructor() {
17545
+ super("MiLaboratories.PL.API.MaintenanceAPI.Ping.Request", []);
17546
+ }
17547
+ create(value?: PartialMessage<MaintenanceAPI_Ping_Request>): MaintenanceAPI_Ping_Request {
17548
+ const message = globalThis.Object.create((this.messagePrototype!));
17549
+ if (value !== undefined)
17550
+ reflectionMergePartial<MaintenanceAPI_Ping_Request>(this, message, value);
17551
+ return message;
17552
+ }
17553
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaintenanceAPI_Ping_Request): MaintenanceAPI_Ping_Request {
17554
+ let message = target ?? this.create(), end = reader.pos + length;
17555
+ while (reader.pos < end) {
17556
+ let [fieldNo, wireType] = reader.tag();
17557
+ switch (fieldNo) {
17558
+ default:
17559
+ let u = options.readUnknownField;
17560
+ if (u === "throw")
17561
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17562
+ let d = reader.skip(wireType);
17563
+ if (u !== false)
17564
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17565
+ }
17566
+ }
17567
+ return message;
17568
+ }
17569
+ internalBinaryWrite(message: MaintenanceAPI_Ping_Request, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17570
+ let u = options.writeUnknownFields;
17571
+ if (u !== false)
17572
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17573
+ return writer;
17574
+ }
17575
+ }
17576
+ /**
17577
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI.Ping.Request
17578
+ */
17579
+ export const MaintenanceAPI_Ping_Request = new MaintenanceAPI_Ping_Request$Type();
15705
17580
  // @generated message type with reflection information, may provide speed optimized methods
15706
17581
  class MaintenanceAPI_Ping_Response$Type extends MessageType<MaintenanceAPI_Ping_Response> {
15707
17582
  constructor() {
15708
17583
  super("MiLaboratories.PL.API.MaintenanceAPI.Ping.Response", [
15709
17584
  { no: 1, name: "core_version", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
15710
17585
  { no: 2, name: "core_full_version", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
15711
- { no: 3, name: "server_info", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
15712
17586
  { no: 4, name: "compression", kind: "enum", T: () => ["MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression", MaintenanceAPI_Ping_Response_Compression] },
15713
17587
  { no: 5, name: "instance_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
15714
17588
  { no: 6, name: "platform", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
@@ -15720,7 +17594,6 @@ class MaintenanceAPI_Ping_Response$Type extends MessageType<MaintenanceAPI_Ping_
15720
17594
  const message = globalThis.Object.create((this.messagePrototype!));
15721
17595
  message.coreVersion = "";
15722
17596
  message.coreFullVersion = "";
15723
- message.serverInfo = "";
15724
17597
  message.compression = 0;
15725
17598
  message.instanceId = "";
15726
17599
  message.platform = "";
@@ -15741,9 +17614,6 @@ class MaintenanceAPI_Ping_Response$Type extends MessageType<MaintenanceAPI_Ping_
15741
17614
  case /* string core_full_version */ 2:
15742
17615
  message.coreFullVersion = reader.string();
15743
17616
  break;
15744
- case /* string server_info */ 3:
15745
- message.serverInfo = reader.string();
15746
- break;
15747
17617
  case /* MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression compression */ 4:
15748
17618
  message.compression = reader.int32();
15749
17619
  break;
@@ -15777,9 +17647,6 @@ class MaintenanceAPI_Ping_Response$Type extends MessageType<MaintenanceAPI_Ping_
15777
17647
  /* string core_full_version = 2; */
15778
17648
  if (message.coreFullVersion !== "")
15779
17649
  writer.tag(2, WireType.LengthDelimited).string(message.coreFullVersion);
15780
- /* string server_info = 3; */
15781
- if (message.serverInfo !== "")
15782
- writer.tag(3, WireType.LengthDelimited).string(message.serverInfo);
15783
17650
  /* MiLaboratories.PL.API.MaintenanceAPI.Ping.Response.Compression compression = 4; */
15784
17651
  if (message.compression !== 0)
15785
17652
  writer.tag(4, WireType.Varint).int32(message.compression);
@@ -15944,6 +17811,82 @@ class MaintenanceAPI_License_Response$Type extends MessageType<MaintenanceAPI_Li
15944
17811
  * @generated MessageType for protobuf message MiLaboratories.PL.API.MaintenanceAPI.License.Response
15945
17812
  */
15946
17813
  export const MaintenanceAPI_License_Response = new MaintenanceAPI_License_Response$Type();
17814
+ // @generated message type with reflection information, may provide speed optimized methods
17815
+ class Util$Type extends MessageType<Util> {
17816
+ constructor() {
17817
+ super("MiLaboratories.PL.API.Util", []);
17818
+ }
17819
+ create(value?: PartialMessage<Util>): Util {
17820
+ const message = globalThis.Object.create((this.messagePrototype!));
17821
+ if (value !== undefined)
17822
+ reflectionMergePartial<Util>(this, message, value);
17823
+ return message;
17824
+ }
17825
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Util): Util {
17826
+ let message = target ?? this.create(), end = reader.pos + length;
17827
+ while (reader.pos < end) {
17828
+ let [fieldNo, wireType] = reader.tag();
17829
+ switch (fieldNo) {
17830
+ default:
17831
+ let u = options.readUnknownField;
17832
+ if (u === "throw")
17833
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17834
+ let d = reader.skip(wireType);
17835
+ if (u !== false)
17836
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17837
+ }
17838
+ }
17839
+ return message;
17840
+ }
17841
+ internalBinaryWrite(message: Util, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17842
+ let u = options.writeUnknownFields;
17843
+ if (u !== false)
17844
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17845
+ return writer;
17846
+ }
17847
+ }
17848
+ /**
17849
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.Util
17850
+ */
17851
+ export const Util = new Util$Type();
17852
+ // @generated message type with reflection information, may provide speed optimized methods
17853
+ class Util_Deprecated$Type extends MessageType<Util_Deprecated> {
17854
+ constructor() {
17855
+ super("MiLaboratories.PL.API.Util.Deprecated", []);
17856
+ }
17857
+ create(value?: PartialMessage<Util_Deprecated>): Util_Deprecated {
17858
+ const message = globalThis.Object.create((this.messagePrototype!));
17859
+ if (value !== undefined)
17860
+ reflectionMergePartial<Util_Deprecated>(this, message, value);
17861
+ return message;
17862
+ }
17863
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Util_Deprecated): Util_Deprecated {
17864
+ let message = target ?? this.create(), end = reader.pos + length;
17865
+ while (reader.pos < end) {
17866
+ let [fieldNo, wireType] = reader.tag();
17867
+ switch (fieldNo) {
17868
+ default:
17869
+ let u = options.readUnknownField;
17870
+ if (u === "throw")
17871
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
17872
+ let d = reader.skip(wireType);
17873
+ if (u !== false)
17874
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
17875
+ }
17876
+ }
17877
+ return message;
17878
+ }
17879
+ internalBinaryWrite(message: Util_Deprecated, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
17880
+ let u = options.writeUnknownFields;
17881
+ if (u !== false)
17882
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
17883
+ return writer;
17884
+ }
17885
+ }
17886
+ /**
17887
+ * @generated MessageType for protobuf message MiLaboratories.PL.API.Util.Deprecated
17888
+ */
17889
+ export const Util_Deprecated = new Util_Deprecated$Type();
15947
17890
  /**
15948
17891
  * @generated ServiceType for protobuf service MiLaboratories.PL.API.Platform
15949
17892
  */
@@ -15966,11 +17909,16 @@ export const Platform = new ServiceType("MiLaboratories.PL.API.Platform", [
15966
17909
  { name: "GetControllerUrl", options: { "google.api.http": { post: "/v1/controller/url", body: "*" } }, I: ControllerAPI_GetUrl_Request, O: ControllerAPI_GetUrl_Response },
15967
17910
  { name: "ControllerSetFeatures", options: { "google.api.http": { post: "/v1/controller/features", body: "*" } }, I: ControllerAPI_SetFeatures_Request, O: ControllerAPI_SetFeatures_Response },
15968
17911
  { name: "ControllerClearFeatures", options: { "google.api.http": { delete: "/v1/controller/features", body: "*" } }, I: ControllerAPI_ClearFeatures_Request, O: ControllerAPI_ClearFeatures_Response },
15969
- { name: "LeaseResource", options: { "google.api.http": { post: "/v1/locks/lease", body: "*" } }, I: LocksAPI_Lease_Create_Request, O: LocksAPI_Lease_Create_Response },
15970
- { name: "UpdateLease", options: { "google.api.http": { put: "/v1/locks/lease", body: "*" } }, I: LocksAPI_Lease_Update_Request, O: LocksAPI_Lease_Update_Response },
15971
- { name: "ReleaseLease", options: { "google.api.http": { delete: "/v1/locks/lease", body: "*" } }, I: LocksAPI_Lease_Release_Request, O: LocksAPI_Lease_Release_Response },
17912
+ { name: "LockFieldValues", options: { "google.api.http": { post: "/v1/locks/lock/create", body: "*" } }, I: LocksAPI_LockFieldValues_Create_Request, O: LocksAPI_LockFieldValues_Create_Response },
17913
+ { name: "LeaseResource", options: { "google.api.http": { post: "/v1/locks/lease/create", body: "*" } }, I: LocksAPI_Lease_Create_Request, O: LocksAPI_Lease_Create_Response },
17914
+ { name: "UpdateLease", options: { "google.api.http": { post: "/v1/locks/lease/update", body: "*" } }, I: LocksAPI_Lease_Update_Request, O: LocksAPI_Lease_Update_Response },
17915
+ { name: "ReleaseLease", options: { "google.api.http": { post: "/v1/locks/lease/release", body: "*" } }, I: LocksAPI_Lease_Release_Request, O: LocksAPI_Lease_Release_Response },
15972
17916
  { name: "AuthMethods", options: { "google.api.http": { get: "/v1/auth/methods" } }, I: AuthAPI_ListMethods_Request, O: AuthAPI_ListMethods_Response },
15973
17917
  { name: "GetJWTToken", options: { "google.api.http": { post: "/v1/auth/jwt-token", body: "*" } }, I: AuthAPI_GetJWTToken_Request, O: AuthAPI_GetJWTToken_Response },
17918
+ { name: "GrantAccess", options: { "google.api.http": { post: "/v1/auth/grant-access", body: "*" } }, I: AuthAPI_GrantAccess_Request, O: AuthAPI_GrantAccess_Response },
17919
+ { name: "RevokeGrant", options: { "google.api.http": { post: "/v1/auth/revoke-grant", body: "*" } }, I: AuthAPI_RevokeGrant_Request, O: AuthAPI_RevokeGrant_Response },
17920
+ { name: "ListGrants", serverStreaming: true, options: {}, I: AuthAPI_ListGrants_Request, O: AuthAPI_ListGrants_Response },
17921
+ { name: "ListUserResources", serverStreaming: true, options: {}, I: AuthAPI_ListUserResources_Request, O: AuthAPI_ListUserResources_Response },
15974
17922
  { name: "ListResourceTypes", options: { "google.api.http": { get: "/v1/resource-types" } }, I: MiscAPI_ListResourceTypes_Request, O: MiscAPI_ListResourceTypes_Response },
15975
17923
  { name: "Ping", options: { "google.api.http": { get: "/v1/ping" } }, I: MaintenanceAPI_Ping_Request, O: MaintenanceAPI_Ping_Response },
15976
17924
  { name: "License", options: { "google.api.http": { get: "/v1/license" } }, I: MaintenanceAPI_License_Request, O: MaintenanceAPI_License_Response }