@milaboratories/pl-client 3.0.0 → 3.1.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.
- package/dist/_virtual/_rolldown/runtime.cjs +12 -22
- package/dist/_virtual/_rolldown/runtime.js +6 -11
- package/dist/core/PromiseTracker.cjs +2 -3
- package/dist/core/PromiseTracker.cjs.map +1 -1
- package/dist/core/PromiseTracker.d.ts.map +1 -0
- package/dist/core/PromiseTracker.js +1 -2
- package/dist/core/PromiseTracker.js.map +1 -1
- package/dist/core/StatefulPromise.cjs +1 -2
- package/dist/core/StatefulPromise.cjs.map +1 -1
- package/dist/core/StatefulPromise.js +1 -1
- package/dist/core/StatefulPromise.js.map +1 -1
- package/dist/core/abstract_stream.d.ts.map +1 -0
- package/dist/core/advisory_locks.cjs +1 -2
- package/dist/core/advisory_locks.cjs.map +1 -1
- package/dist/core/advisory_locks.js +1 -1
- package/dist/core/advisory_locks.js.map +1 -1
- package/dist/core/auth.cjs +2 -3
- package/dist/core/auth.cjs.map +1 -1
- package/dist/core/auth.d.ts.map +1 -0
- package/dist/core/auth.js +1 -2
- package/dist/core/auth.js.map +1 -1
- package/dist/core/cache.d.ts.map +1 -0
- package/dist/core/client.cjs +63 -36
- package/dist/core/client.cjs.map +1 -1
- package/dist/core/client.d.ts +3 -1
- package/dist/core/client.d.ts.map +1 -0
- package/dist/core/client.js +54 -27
- package/dist/core/client.js.map +1 -1
- package/dist/core/config.cjs +16 -17
- package/dist/core/config.cjs.map +1 -1
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +16 -16
- package/dist/core/config.js.map +1 -1
- package/dist/core/default_client.cjs +6 -7
- package/dist/core/default_client.cjs.map +1 -1
- package/dist/core/default_client.d.ts.map +1 -0
- package/dist/core/default_client.js +1 -2
- package/dist/core/default_client.js.map +1 -1
- package/dist/core/driver.cjs +1 -2
- package/dist/core/driver.cjs.map +1 -1
- package/dist/core/driver.d.ts.map +1 -0
- package/dist/core/driver.js +1 -1
- package/dist/core/error_resource.cjs +1 -2
- package/dist/core/error_resource.cjs.map +1 -1
- package/dist/core/error_resource.js +1 -1
- package/dist/core/errors.cjs +11 -4
- package/dist/core/errors.cjs.map +1 -1
- package/dist/core/errors.d.ts +2 -1
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +9 -3
- package/dist/core/errors.js.map +1 -1
- package/dist/core/final.cjs +3 -4
- package/dist/core/final.cjs.map +1 -1
- package/dist/core/final.d.ts.map +1 -0
- package/dist/core/final.js +1 -2
- package/dist/core/final.js.map +1 -1
- package/dist/core/ll_client.cjs +24 -13
- package/dist/core/ll_client.cjs.map +1 -1
- package/dist/core/ll_client.d.ts +6 -1
- package/dist/core/ll_client.d.ts.map +1 -0
- package/dist/core/ll_client.js +13 -2
- package/dist/core/ll_client.js.map +1 -1
- package/dist/core/ll_transaction.cjs +4 -5
- package/dist/core/ll_transaction.cjs.map +1 -1
- package/dist/core/ll_transaction.d.ts.map +1 -0
- package/dist/core/ll_transaction.js +1 -2
- package/dist/core/ll_transaction.js.map +1 -1
- package/dist/core/stat.cjs +1 -2
- package/dist/core/stat.cjs.map +1 -1
- package/dist/core/stat.d.ts.map +1 -0
- package/dist/core/stat.js +1 -1
- package/dist/core/transaction.cjs +30 -19
- package/dist/core/transaction.cjs.map +1 -1
- package/dist/core/transaction.d.ts.map +1 -0
- package/dist/core/transaction.js +21 -10
- package/dist/core/transaction.js.map +1 -1
- package/dist/core/type_conversion.cjs +7 -8
- package/dist/core/type_conversion.cjs.map +1 -1
- package/dist/core/type_conversion.js +3 -4
- package/dist/core/type_conversion.js.map +1 -1
- package/dist/core/types.cjs +3 -4
- package/dist/core/types.cjs.map +1 -1
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +2 -3
- package/dist/core/types.js.map +1 -1
- package/dist/core/unauth_client.cjs +4 -5
- package/dist/core/unauth_client.cjs.map +1 -1
- package/dist/core/unauth_client.d.ts.map +1 -0
- package/dist/core/unauth_client.js +1 -2
- package/dist/core/unauth_client.js.map +1 -1
- package/dist/core/websocket_stream.cjs +4 -5
- package/dist/core/websocket_stream.cjs.map +1 -1
- package/dist/core/websocket_stream.js +1 -2
- package/dist/core/websocket_stream.js.map +1 -1
- package/dist/core/wire.d.ts.map +1 -0
- package/dist/helpers/pl.cjs +12 -14
- package/dist/helpers/pl.cjs.map +1 -1
- package/dist/helpers/pl.d.ts.map +1 -0
- package/dist/helpers/pl.js +5 -7
- package/dist/helpers/pl.js.map +1 -1
- package/dist/helpers/poll.cjs +3 -4
- package/dist/helpers/poll.cjs.map +1 -1
- package/dist/helpers/poll.d.ts.map +1 -0
- package/dist/helpers/poll.js +1 -2
- package/dist/helpers/poll.js.map +1 -1
- package/dist/helpers/retry_strategy.cjs +1 -2
- package/dist/helpers/retry_strategy.cjs.map +1 -1
- package/dist/helpers/retry_strategy.js +1 -1
- package/dist/helpers/retry_strategy.js.map +1 -1
- package/dist/helpers/tx_helpers.cjs +3 -4
- package/dist/helpers/tx_helpers.cjs.map +1 -1
- package/dist/helpers/tx_helpers.d.ts.map +1 -0
- package/dist/helpers/tx_helpers.js +1 -2
- package/dist/helpers/tx_helpers.js.map +1 -1
- package/dist/index.cjs +34 -34
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -3
- package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.cjs +3 -4
- package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.cjs.map +1 -1
- package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.d.ts.map +1 -0
- package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.js +1 -2
- package/dist/proto-grpc/github.com/googleapis/googleapis/google/rpc/status.js.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.cjs +115 -421
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.cjs.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs +3 -4
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.cjs.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.d.ts +4 -4
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.d.ts.map +1 -0
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.js +1 -2
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.client.js.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.d.ts.map +1 -0
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.js +108 -414
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.js.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs +5 -6
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.cjs.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.d.ts.map +1 -0
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.js +1 -2
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.js.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs +2 -3
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.cjs.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.d.ts.map +1 -0
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.js +1 -2
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/base_types.js.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs +6 -16
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.cjs.map +1 -1
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.d.ts.map +1 -0
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js +4 -14
- package/dist/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/resource_types.js.map +1 -1
- package/dist/proto-grpc/google/protobuf/any.cjs +2 -3
- package/dist/proto-grpc/google/protobuf/any.cjs.map +1 -1
- package/dist/proto-grpc/google/protobuf/any.d.ts.map +1 -0
- package/dist/proto-grpc/google/protobuf/any.js +1 -2
- package/dist/proto-grpc/google/protobuf/any.js.map +1 -1
- package/dist/proto-grpc/google/protobuf/duration.cjs +2 -3
- package/dist/proto-grpc/google/protobuf/duration.cjs.map +1 -1
- package/dist/proto-grpc/google/protobuf/duration.d.ts.map +1 -0
- package/dist/proto-grpc/google/protobuf/duration.js +1 -2
- package/dist/proto-grpc/google/protobuf/duration.js.map +1 -1
- package/dist/proto-grpc/google/protobuf/timestamp.cjs +2 -3
- package/dist/proto-grpc/google/protobuf/timestamp.cjs.map +1 -1
- package/dist/proto-grpc/google/protobuf/timestamp.d.ts.map +1 -0
- package/dist/proto-grpc/google/protobuf/timestamp.js +1 -2
- package/dist/proto-grpc/google/protobuf/timestamp.js.map +1 -1
- package/dist/proto-grpc/google/rpc/code.cjs +1 -2
- package/dist/proto-grpc/google/rpc/code.cjs.map +1 -1
- package/dist/proto-grpc/google/rpc/code.d.ts.map +1 -0
- package/dist/proto-grpc/google/rpc/code.js +1 -1
- package/dist/proto-grpc/google/rpc/code.js.map +1 -1
- package/dist/proto-rest/index.cjs +8 -9
- package/dist/proto-rest/index.cjs.map +1 -1
- package/dist/proto-rest/index.d.ts.map +1 -0
- package/dist/proto-rest/index.js +1 -2
- package/dist/proto-rest/index.js.map +1 -1
- package/dist/proto-rest/plapi.d.ts.map +1 -0
- package/dist/test/tcp-proxy.cjs +2 -3
- package/dist/test/tcp-proxy.cjs.map +1 -1
- package/dist/test/tcp-proxy.d.ts.map +1 -0
- package/dist/test/tcp-proxy.js +1 -2
- package/dist/test/tcp-proxy.js.map +1 -1
- package/dist/test/test_config.cjs +16 -19
- package/dist/test/test_config.cjs.map +1 -1
- package/dist/test/test_config.d.ts.map +1 -0
- package/dist/test/test_config.js +3 -6
- package/dist/test/test_config.js.map +1 -1
- package/dist/util/pl.cjs +1 -2
- package/dist/util/pl.cjs.map +1 -1
- package/dist/util/pl.js +1 -1
- package/dist/util/util.cjs +1 -2
- package/dist/util/util.cjs.map +1 -1
- package/dist/util/util.js +1 -1
- package/package.json +8 -8
- package/src/core/client.ts +80 -30
- package/src/core/errors.ts +11 -0
- package/src/core/ll_client.test.ts +8 -0
- package/src/core/ll_client.ts +22 -1
- package/src/core/ll_transaction.test.ts +12 -2
- package/src/core/transaction.ts +8 -2
- package/src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api.ts +4 -0
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
const require_timestamp = require(
|
|
3
|
-
const require_base_types = require(
|
|
4
|
-
const require_resource_types = require(
|
|
1
|
+
require("../../../../../../_virtual/_rolldown/runtime.cjs");
|
|
2
|
+
const require_timestamp = require("../../../../../google/protobuf/timestamp.cjs");
|
|
3
|
+
const require_base_types = require("./base_types.cjs");
|
|
4
|
+
const require_resource_types = require("./resource_types.cjs");
|
|
5
5
|
let _protobuf_ts_runtime = require("@protobuf-ts/runtime");
|
|
6
|
-
|
|
7
6
|
//#region src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.ts
|
|
8
7
|
/**
|
|
9
8
|
* @generated from protobuf enum MiLaboratories.PL.API.Resource.Kind
|
|
@@ -1483,7 +1482,6 @@ var ResourceAPIFeature$Type = class extends _protobuf_ts_runtime.MessageType {
|
|
|
1483
1482
|
* @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceAPIFeature
|
|
1484
1483
|
*/
|
|
1485
1484
|
const ResourceAPIFeature = new ResourceAPIFeature$Type();
|
|
1486
|
-
|
|
1487
1485
|
//#endregion
|
|
1488
1486
|
exports.Controller = Controller;
|
|
1489
1487
|
exports.Field = Field;
|
|
@@ -1495,4 +1493,5 @@ exports.ResourceSchema = ResourceSchema;
|
|
|
1495
1493
|
exports.Resource_Kind = Resource_Kind;
|
|
1496
1494
|
exports.Subscription = Subscription;
|
|
1497
1495
|
exports.Tx = Tx;
|
|
1496
|
+
|
|
1498
1497
|
//# sourceMappingURL=api_types.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api_types.cjs","names":["MessageType","UnknownFieldHandler","WireType","ResourceType","Timestamp","FieldRef","FieldType","NotificationFilter_Payload"],"sources":["../../../../../../../src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.ts"],"sourcesContent":["// @generated by protobuf-ts 2.11.1 with parameter client_generic,optimize_speed,generate_dependencies,force_server_none\n// @generated from protobuf file \"github.com/milaboratory/pl/plapi/plapiproto/api_types.proto\" (package \"MiLaboratories.PL.API\", syntax proto3)\n// tslint:disable\nimport type { BinaryWriteOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryWriter } from \"@protobuf-ts/runtime\";\nimport { WireType } from \"@protobuf-ts/runtime\";\nimport type { BinaryReadOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryReader } from \"@protobuf-ts/runtime\";\nimport { UnknownFieldHandler } from \"@protobuf-ts/runtime\";\nimport type { PartialMessage } from \"@protobuf-ts/runtime\";\nimport { reflectionMergePartial } from \"@protobuf-ts/runtime\";\nimport { MessageType } from \"@protobuf-ts/runtime\";\nimport { NotificationFilter_Payload } from \"./resource_types\";\nimport { FieldType } from \"./base_types\";\nimport { FieldRef } from \"./base_types\";\nimport { Timestamp } from \"../../../../../google/protobuf/timestamp\";\nimport { ResourceType } from \"./base_types\";\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Tx\n */\nexport interface Tx {\n /**\n * @generated from protobuf field: bool is_valid = 1\n */\n isValid: boolean;\n /**\n * @generated from protobuf field: uint64 id = 2\n */\n id: bigint;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Resource\n */\nexport interface Resource {\n /**\n * @generated from protobuf field: uint64 resource_id = 2\n */\n resourceId: bigint;\n /**\n * @generated from protobuf field: optional bytes resource_signature = 18\n */\n resourceSignature?: Uint8Array;\n /**\n * @generated from protobuf field: bytes canonical_id = 17\n */\n canonicalId: Uint8Array; // could be empty; it depends on the resource lifecycle state\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Resource.Kind kind = 3\n */\n kind: Resource_Kind;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType type = 4\n */\n type?: ResourceType;\n /**\n * @generated from protobuf field: bytes data = 5\n */\n data: Uint8Array;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Resource.Features features = 16\n */\n features?: Resource_Features;\n /**\n * @generated from protobuf field: repeated MiLaboratories.PL.API.Field fields = 6\n */\n fields: Field[];\n /**\n * Resource has at least one field with error\n *\n * @generated from protobuf field: bool has_errors = 7\n */\n hasErrors: boolean;\n /**\n * @generated from protobuf field: bool inputs_locked = 8\n */\n inputsLocked: boolean;\n /**\n * @generated from protobuf field: bool outputs_locked = 9\n */\n outputsLocked: boolean;\n /**\n * @generated from protobuf field: bool resource_ready = 14\n */\n resourceReady: boolean;\n /**\n * @generated from protobuf field: bool is_final = 15\n */\n isFinal: boolean;\n /**\n * @generated from protobuf field: uint64 original_resource_id = 10\n */\n originalResourceId: bigint;\n /**\n * @generated from protobuf field: uint64 parent_resource_id = 11\n */\n parentResourceId: bigint;\n /**\n * @generated from protobuf field: google.protobuf.Timestamp created_time = 12\n */\n createdTime?: Timestamp;\n /**\n * @generated from protobuf field: google.protobuf.Timestamp deleted_time = 13\n */\n deletedTime?: Timestamp;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Resource.Features\n */\nexport interface Resource_Features {\n /**\n * @generated from protobuf field: bool ephemeral = 1\n */\n ephemeral: boolean; // false = 'supports deduplication'\n}\n/**\n * @generated from protobuf enum MiLaboratories.PL.API.Resource.Kind\n */\nexport enum Resource_Kind {\n /**\n * @generated from protobuf enum value: KIND_INVALID = 0;\n */\n INVALID = 0,\n /**\n * @generated from protobuf enum value: KIND_STRUCTURAL = 1;\n */\n STRUCTURAL = 1,\n /**\n * @generated from protobuf enum value: KIND_VALUE = 2;\n */\n VALUE = 2\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Field\n */\nexport interface Field {\n /**\n * field ID is always combination of parent resource ID and field name\n *\n * @generated from protobuf field: MiLaboratories.PL.Base.FieldRef id = 1\n */\n id?: FieldRef;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.FieldType type = 2\n */\n type: FieldType;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Resource.Features features = 3\n */\n features?: Resource_Features;\n /**\n * _resolved_ value of a field or _assigned_ if the field was assigned to a resource.\n * If a field refers to another field, it will get\n * a value only when this chain of references ends up with a direct resource\n * reference. At that moment, all fields in the chain will get their values\n * resolved and will start to refer to the same resource directly.\n *\n * @generated from protobuf field: uint64 value = 5\n */\n value: bigint;\n /**\n * Signature for value resource ID, inheriting the parent resource's color.\n * Populated server-side when the parent resource has a known color in the current TX.\n *\n * @generated from protobuf field: optional bytes value_signature = 10\n */\n valueSignature?: Uint8Array;\n /**\n * Whether the value is empty, assigned, or finally resolved.\n *\n * @generated from protobuf field: MiLaboratories.PL.API.Field.ValueStatus value_status = 7\n */\n valueStatus: Field_ValueStatus;\n /**\n * If the value is in its final state (ready, duplicate or error)\n *\n * @generated from protobuf field: bool value_is_final = 8\n */\n valueIsFinal: boolean;\n /**\n * Error resource ID, if any.\n * Is intended to report problems _from_ the platform to the client.\n *\n * @generated from protobuf field: uint64 error = 6\n */\n error: bigint;\n /**\n * Signature for error resource ID, inheriting the parent resource's color.\n *\n * @generated from protobuf field: optional bytes error_signature = 11\n */\n errorSignature?: Uint8Array;\n}\n/**\n * @generated from protobuf enum MiLaboratories.PL.API.Field.ValueStatus\n */\nexport enum Field_ValueStatus {\n /**\n * @generated from protobuf enum value: INVALID = 0;\n */\n INVALID = 0,\n /**\n * @generated from protobuf enum value: EMPTY = 1;\n */\n EMPTY = 1,\n /**\n * @generated from protobuf enum value: ASSIGNED = 2;\n */\n ASSIGNED = 2,\n /**\n * @generated from protobuf enum value: RESOLVED = 3;\n */\n RESOLVED = 3\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Notification\n */\nexport interface Notification {\n /**\n * @generated from protobuf field: uint64 subscription_id = 1\n */\n subscriptionId: bigint;\n /**\n * @generated from protobuf field: uint64 event_id = 2\n */\n eventId: bigint;\n /**\n * @generated from protobuf field: uint64 resource_id = 3\n */\n resourceId: bigint;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType resource_type = 4\n */\n resourceType?: ResourceType;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Notification.Events events = 5\n */\n events?: Notification_Events;\n /**\n * @generated from protobuf field: map<string, MiLaboratories.PL.API.Notification.FieldChange> field_changes = 6\n */\n fieldChanges: {\n [key: string]: Notification_FieldChange;\n };\n /**\n * @generated from protobuf field: MiLaboratories.PL.RTypes.NotificationFilter.Payload payload = 7\n */\n payload?: NotificationFilter_Payload;\n /**\n * @generated from protobuf field: string filter_name = 8\n */\n filterName: string;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.SpanInfo tx_span = 9\n */\n txSpan?: SpanInfo;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Notification.Events\n */\nexport interface Notification_Events {\n /**\n * @generated from protobuf field: bool resource_created = 1\n */\n resourceCreated: boolean;\n /**\n * @generated from protobuf field: bool resource_deleted = 2\n */\n resourceDeleted: boolean;\n /**\n * @generated from protobuf field: bool resource_ready = 4\n */\n resourceReady: boolean;\n /**\n * @generated from protobuf field: bool resource_duplicate = 5\n */\n resourceDuplicate: boolean;\n /**\n * @generated from protobuf field: bool resource_error = 15\n */\n resourceError: boolean;\n /**\n * @generated from protobuf field: bool inputs_locked = 12\n */\n inputsLocked: boolean;\n /**\n * @generated from protobuf field: bool outputs_locked = 13\n */\n outputsLocked: boolean;\n /**\n * @generated from protobuf field: bool field_created = 11\n */\n fieldCreated: boolean;\n /**\n * @generated from protobuf field: bool field_got_error = 16\n */\n fieldGotError: boolean;\n /**\n * @generated from protobuf field: bool input_set = 6\n */\n inputSet: boolean;\n /**\n * @generated from protobuf field: bool all_inputs_set = 7\n */\n allInputsSet: boolean;\n /**\n * @generated from protobuf field: bool output_set = 8\n */\n outputSet: boolean;\n /**\n * @generated from protobuf field: bool all_outputs_set = 9\n */\n allOutputsSet: boolean;\n /**\n * @generated from protobuf field: bool generic_otw_set = 14\n */\n genericOtwSet: boolean;\n /**\n * @generated from protobuf field: bool dynamic_changed = 10\n */\n dynamicChanged: boolean;\n /**\n * @generated from protobuf field: bool resource_recovered = 17\n */\n resourceRecovered: boolean;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Notification.FieldChange\n */\nexport interface Notification_FieldChange {\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Field old = 1\n */\n old?: Field;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Field new = 2\n */\n new?: Field;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.SpanInfo\n */\nexport interface SpanInfo {\n /**\n * @generated from protobuf field: string path = 1\n */\n path: string;\n /**\n * @generated from protobuf field: map<string, string> carrier = 2\n */\n carrier: {\n [key: string]: string;\n };\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Subscription\n */\nexport interface Subscription {\n /**\n * @generated from protobuf field: uint64 id = 1\n */\n id: bigint;\n /**\n * @generated from protobuf field: bool blocking = 3\n */\n blocking: boolean;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Controller\n */\nexport interface Controller {\n /**\n * @generated from protobuf field: string type = 1\n */\n type: string;\n /**\n * @generated from protobuf field: uint64 id = 2\n */\n id: bigint;\n /**\n * @generated from protobuf field: uint64 subscriptionID = 3\n */\n subscriptionID: bigint;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.ResourceSchema\n */\nexport interface ResourceSchema {\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType type = 1\n */\n type?: ResourceType;\n /**\n * @generated from protobuf field: repeated MiLaboratories.PL.API.FieldSchema fields = 2\n */\n fields: FieldSchema[];\n /**\n * Access restriction flags for non-controller roles\n *\n * @generated from protobuf field: optional MiLaboratories.PL.API.ResourceSchema.AccessFlags access_flags = 3\n */\n accessFlags?: ResourceSchema_AccessFlags;\n /**\n * @generated from protobuf field: bool free_inputs = 4\n */\n freeInputs: boolean; // if true, skip automatic input locking on creation\n /**\n * @generated from protobuf field: bool free_outputs = 5\n */\n freeOutputs: boolean; // if true, skip automatic output locking on creation\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.ResourceSchema.AccessFlags\n */\nexport interface ResourceSchema_AccessFlags {\n /**\n * Deny-list approach: default = allowed (true)\n * Controllers set these to false to restrict non-controller roles (role='u', role='w')\n *\n * @generated from protobuf field: optional bool create_resource = 1\n */\n createResource?: boolean; // default: true (creation allowed)\n /**\n * IMPORTANT: read_fields=false with write_fields=true is a forbidden combination\n *\n * @generated from protobuf field: optional bool read_fields = 2\n */\n readFields?: boolean; // default: true (reads allowed)\n /**\n * @generated from protobuf field: optional bool write_fields = 3\n */\n writeFields?: boolean; // default: true (writes allowed)\n /**\n * IMPORTANT: read_kv=false with write_kv=true is a forbidden combination\n *\n * @generated from protobuf field: optional bool read_kv = 4\n */\n readKv?: boolean; // if unset, falls back to read_fields\n /**\n * @generated from protobuf field: optional bool write_kv = 5\n */\n writeKv?: boolean; // if unset, falls back to write_fields\n /**\n * Per-field-type overrides (map: field_type → bool)\n * When defined for a field type, overrides resource-level flags\n *\n * @generated from protobuf field: map<uint32, bool> read_by_field_type = 6\n */\n readByFieldType: {\n [key: number]: boolean;\n };\n /**\n * @generated from protobuf field: map<uint32, bool> write_by_field_type = 7\n */\n writeByFieldType: {\n [key: number]: boolean;\n };\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.FieldSchema\n */\nexport interface FieldSchema {\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.FieldType type = 1\n */\n type: FieldType;\n /**\n * @generated from protobuf field: string name = 2\n */\n name: string;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.ResourceAPIFeature\n */\nexport interface ResourceAPIFeature {\n /**\n * @generated from protobuf field: string controller_type = 1\n */\n controllerType: string;\n /**\n * @generated from protobuf field: string feature_name = 2\n */\n featureName: string;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType resource_type = 3\n */\n resourceType?: ResourceType;\n /**\n * @generated from protobuf field: string endpoint = 4\n */\n endpoint: string;\n}\n// @generated message type with reflection information, may provide speed optimized methods\nclass Tx$Type extends MessageType<Tx> {\n constructor() {\n super(\"MiLaboratories.PL.API.Tx\", [\n { no: 1, name: \"is_valid\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 2, name: \"id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<Tx>): Tx {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.isValid = false;\n message.id = 0n;\n if (value !== undefined)\n reflectionMergePartial<Tx>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Tx): Tx {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* bool is_valid */ 1:\n message.isValid = reader.bool();\n break;\n case /* uint64 id */ 2:\n message.id = reader.uint64().toBigInt();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Tx, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* bool is_valid = 1; */\n if (message.isValid !== false)\n writer.tag(1, WireType.Varint).bool(message.isValid);\n /* uint64 id = 2; */\n if (message.id !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.id);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Tx\n */\nexport const Tx = new Tx$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Resource$Type extends MessageType<Resource> {\n constructor() {\n super(\"MiLaboratories.PL.API.Resource\", [\n { no: 2, name: \"resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 18, name: \"resource_signature\", kind: \"scalar\", opt: true, T: 12 /*ScalarType.BYTES*/ },\n { no: 17, name: \"canonical_id\", kind: \"scalar\", T: 12 /*ScalarType.BYTES*/ },\n { no: 3, name: \"kind\", kind: \"enum\", T: () => [\"MiLaboratories.PL.API.Resource.Kind\", Resource_Kind, \"KIND_\"] },\n { no: 4, name: \"type\", kind: \"message\", T: () => ResourceType },\n { no: 5, name: \"data\", kind: \"scalar\", T: 12 /*ScalarType.BYTES*/ },\n { no: 16, name: \"features\", kind: \"message\", T: () => Resource_Features },\n { no: 6, name: \"fields\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Field },\n { no: 7, name: \"has_errors\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 8, name: \"inputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 9, name: \"outputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 14, name: \"resource_ready\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 15, name: \"is_final\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 10, name: \"original_resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 11, name: \"parent_resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 12, name: \"created_time\", kind: \"message\", T: () => Timestamp },\n { no: 13, name: \"deleted_time\", kind: \"message\", T: () => Timestamp }\n ]);\n }\n create(value?: PartialMessage<Resource>): Resource {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.resourceId = 0n;\n message.canonicalId = new Uint8Array(0);\n message.kind = 0;\n message.data = new Uint8Array(0);\n message.fields = [];\n message.hasErrors = false;\n message.inputsLocked = false;\n message.outputsLocked = false;\n message.resourceReady = false;\n message.isFinal = false;\n message.originalResourceId = 0n;\n message.parentResourceId = 0n;\n if (value !== undefined)\n reflectionMergePartial<Resource>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Resource): Resource {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 resource_id */ 2:\n message.resourceId = reader.uint64().toBigInt();\n break;\n case /* optional bytes resource_signature */ 18:\n message.resourceSignature = reader.bytes();\n break;\n case /* bytes canonical_id */ 17:\n message.canonicalId = reader.bytes();\n break;\n case /* MiLaboratories.PL.API.Resource.Kind kind */ 3:\n message.kind = reader.int32();\n break;\n case /* MiLaboratories.PL.Base.ResourceType type */ 4:\n message.type = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.type);\n break;\n case /* bytes data */ 5:\n message.data = reader.bytes();\n break;\n case /* MiLaboratories.PL.API.Resource.Features features */ 16:\n message.features = Resource_Features.internalBinaryRead(reader, reader.uint32(), options, message.features);\n break;\n case /* repeated MiLaboratories.PL.API.Field fields */ 6:\n message.fields.push(Field.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* bool has_errors */ 7:\n message.hasErrors = reader.bool();\n break;\n case /* bool inputs_locked */ 8:\n message.inputsLocked = reader.bool();\n break;\n case /* bool outputs_locked */ 9:\n message.outputsLocked = reader.bool();\n break;\n case /* bool resource_ready */ 14:\n message.resourceReady = reader.bool();\n break;\n case /* bool is_final */ 15:\n message.isFinal = reader.bool();\n break;\n case /* uint64 original_resource_id */ 10:\n message.originalResourceId = reader.uint64().toBigInt();\n break;\n case /* uint64 parent_resource_id */ 11:\n message.parentResourceId = reader.uint64().toBigInt();\n break;\n case /* google.protobuf.Timestamp created_time */ 12:\n message.createdTime = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.createdTime);\n break;\n case /* google.protobuf.Timestamp deleted_time */ 13:\n message.deletedTime = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.deletedTime);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Resource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 resource_id = 2; */\n if (message.resourceId !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.resourceId);\n /* MiLaboratories.PL.API.Resource.Kind kind = 3; */\n if (message.kind !== 0)\n writer.tag(3, WireType.Varint).int32(message.kind);\n /* MiLaboratories.PL.Base.ResourceType type = 4; */\n if (message.type)\n ResourceType.internalBinaryWrite(message.type, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n /* bytes data = 5; */\n if (message.data.length)\n writer.tag(5, WireType.LengthDelimited).bytes(message.data);\n /* repeated MiLaboratories.PL.API.Field fields = 6; */\n for (let i = 0; i < message.fields.length; i++)\n Field.internalBinaryWrite(message.fields[i], writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n /* bool has_errors = 7; */\n if (message.hasErrors !== false)\n writer.tag(7, WireType.Varint).bool(message.hasErrors);\n /* bool inputs_locked = 8; */\n if (message.inputsLocked !== false)\n writer.tag(8, WireType.Varint).bool(message.inputsLocked);\n /* bool outputs_locked = 9; */\n if (message.outputsLocked !== false)\n writer.tag(9, WireType.Varint).bool(message.outputsLocked);\n /* uint64 original_resource_id = 10; */\n if (message.originalResourceId !== 0n)\n writer.tag(10, WireType.Varint).uint64(message.originalResourceId);\n /* uint64 parent_resource_id = 11; */\n if (message.parentResourceId !== 0n)\n writer.tag(11, WireType.Varint).uint64(message.parentResourceId);\n /* google.protobuf.Timestamp created_time = 12; */\n if (message.createdTime)\n Timestamp.internalBinaryWrite(message.createdTime, writer.tag(12, WireType.LengthDelimited).fork(), options).join();\n /* google.protobuf.Timestamp deleted_time = 13; */\n if (message.deletedTime)\n Timestamp.internalBinaryWrite(message.deletedTime, writer.tag(13, WireType.LengthDelimited).fork(), options).join();\n /* bool resource_ready = 14; */\n if (message.resourceReady !== false)\n writer.tag(14, WireType.Varint).bool(message.resourceReady);\n /* bool is_final = 15; */\n if (message.isFinal !== false)\n writer.tag(15, WireType.Varint).bool(message.isFinal);\n /* MiLaboratories.PL.API.Resource.Features features = 16; */\n if (message.features)\n Resource_Features.internalBinaryWrite(message.features, writer.tag(16, WireType.LengthDelimited).fork(), options).join();\n /* bytes canonical_id = 17; */\n if (message.canonicalId.length)\n writer.tag(17, WireType.LengthDelimited).bytes(message.canonicalId);\n /* optional bytes resource_signature = 18; */\n if (message.resourceSignature !== undefined)\n writer.tag(18, WireType.LengthDelimited).bytes(message.resourceSignature);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Resource\n */\nexport const Resource = new Resource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Resource_Features$Type extends MessageType<Resource_Features> {\n constructor() {\n super(\"MiLaboratories.PL.API.Resource.Features\", [\n { no: 1, name: \"ephemeral\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<Resource_Features>): Resource_Features {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.ephemeral = false;\n if (value !== undefined)\n reflectionMergePartial<Resource_Features>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Resource_Features): Resource_Features {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* bool ephemeral */ 1:\n message.ephemeral = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Resource_Features, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* bool ephemeral = 1; */\n if (message.ephemeral !== false)\n writer.tag(1, WireType.Varint).bool(message.ephemeral);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Resource.Features\n */\nexport const Resource_Features = new Resource_Features$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Field$Type extends MessageType<Field> {\n constructor() {\n super(\"MiLaboratories.PL.API.Field\", [\n { no: 1, name: \"id\", kind: \"message\", T: () => FieldRef },\n { no: 2, name: \"type\", kind: \"enum\", T: () => [\"MiLaboratories.PL.Base.FieldType\", FieldType] },\n { no: 3, name: \"features\", kind: \"message\", T: () => Resource_Features },\n { no: 5, name: \"value\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 10, name: \"value_signature\", kind: \"scalar\", opt: true, T: 12 /*ScalarType.BYTES*/ },\n { no: 7, name: \"value_status\", kind: \"enum\", T: () => [\"MiLaboratories.PL.API.Field.ValueStatus\", Field_ValueStatus] },\n { no: 8, name: \"value_is_final\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 6, name: \"error\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 11, name: \"error_signature\", kind: \"scalar\", opt: true, T: 12 /*ScalarType.BYTES*/ }\n ]);\n }\n create(value?: PartialMessage<Field>): Field {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = 0;\n message.value = 0n;\n message.valueStatus = 0;\n message.valueIsFinal = false;\n message.error = 0n;\n if (value !== undefined)\n reflectionMergePartial<Field>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Field): Field {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.Base.FieldRef id */ 1:\n message.id = FieldRef.internalBinaryRead(reader, reader.uint32(), options, message.id);\n break;\n case /* MiLaboratories.PL.Base.FieldType type */ 2:\n message.type = reader.int32();\n break;\n case /* MiLaboratories.PL.API.Resource.Features features */ 3:\n message.features = Resource_Features.internalBinaryRead(reader, reader.uint32(), options, message.features);\n break;\n case /* uint64 value */ 5:\n message.value = reader.uint64().toBigInt();\n break;\n case /* optional bytes value_signature */ 10:\n message.valueSignature = reader.bytes();\n break;\n case /* MiLaboratories.PL.API.Field.ValueStatus value_status */ 7:\n message.valueStatus = reader.int32();\n break;\n case /* bool value_is_final */ 8:\n message.valueIsFinal = reader.bool();\n break;\n case /* uint64 error */ 6:\n message.error = reader.uint64().toBigInt();\n break;\n case /* optional bytes error_signature */ 11:\n message.errorSignature = reader.bytes();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Field, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.Base.FieldRef id = 1; */\n if (message.id)\n FieldRef.internalBinaryWrite(message.id, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* MiLaboratories.PL.Base.FieldType type = 2; */\n if (message.type !== 0)\n writer.tag(2, WireType.Varint).int32(message.type);\n /* MiLaboratories.PL.API.Resource.Features features = 3; */\n if (message.features)\n Resource_Features.internalBinaryWrite(message.features, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* uint64 value = 5; */\n if (message.value !== 0n)\n writer.tag(5, WireType.Varint).uint64(message.value);\n /* uint64 error = 6; */\n if (message.error !== 0n)\n writer.tag(6, WireType.Varint).uint64(message.error);\n /* MiLaboratories.PL.API.Field.ValueStatus value_status = 7; */\n if (message.valueStatus !== 0)\n writer.tag(7, WireType.Varint).int32(message.valueStatus);\n /* bool value_is_final = 8; */\n if (message.valueIsFinal !== false)\n writer.tag(8, WireType.Varint).bool(message.valueIsFinal);\n /* optional bytes value_signature = 10; */\n if (message.valueSignature !== undefined)\n writer.tag(10, WireType.LengthDelimited).bytes(message.valueSignature);\n /* optional bytes error_signature = 11; */\n if (message.errorSignature !== undefined)\n writer.tag(11, WireType.LengthDelimited).bytes(message.errorSignature);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Field\n */\nexport const Field = new Field$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Notification$Type extends MessageType<Notification> {\n constructor() {\n super(\"MiLaboratories.PL.API.Notification\", [\n { no: 1, name: \"subscription_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 2, name: \"event_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 4, name: \"resource_type\", kind: \"message\", T: () => ResourceType },\n { no: 5, name: \"events\", kind: \"message\", T: () => Notification_Events },\n { no: 6, name: \"field_changes\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => Notification_FieldChange } },\n { no: 7, name: \"payload\", kind: \"message\", T: () => NotificationFilter_Payload },\n { no: 8, name: \"filter_name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 9, name: \"tx_span\", kind: \"message\", T: () => SpanInfo }\n ]);\n }\n create(value?: PartialMessage<Notification>): Notification {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.subscriptionId = 0n;\n message.eventId = 0n;\n message.resourceId = 0n;\n message.fieldChanges = {};\n message.filterName = \"\";\n if (value !== undefined)\n reflectionMergePartial<Notification>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Notification): Notification {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 subscription_id */ 1:\n message.subscriptionId = reader.uint64().toBigInt();\n break;\n case /* uint64 event_id */ 2:\n message.eventId = reader.uint64().toBigInt();\n break;\n case /* uint64 resource_id */ 3:\n message.resourceId = reader.uint64().toBigInt();\n break;\n case /* MiLaboratories.PL.Base.ResourceType resource_type */ 4:\n message.resourceType = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.resourceType);\n break;\n case /* MiLaboratories.PL.API.Notification.Events events */ 5:\n message.events = Notification_Events.internalBinaryRead(reader, reader.uint32(), options, message.events);\n break;\n case /* map<string, MiLaboratories.PL.API.Notification.FieldChange> field_changes */ 6:\n this.binaryReadMap6(message.fieldChanges, reader, options);\n break;\n case /* MiLaboratories.PL.RTypes.NotificationFilter.Payload payload */ 7:\n message.payload = NotificationFilter_Payload.internalBinaryRead(reader, reader.uint32(), options, message.payload);\n break;\n case /* string filter_name */ 8:\n message.filterName = reader.string();\n break;\n case /* MiLaboratories.PL.API.SpanInfo tx_span */ 9:\n message.txSpan = SpanInfo.internalBinaryRead(reader, reader.uint32(), options, message.txSpan);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n private binaryReadMap6(map: Notification[\"fieldChanges\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof Notification[\"fieldChanges\"] | undefined, val: Notification[\"fieldChanges\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.string();\n break;\n case 2:\n val = Notification_FieldChange.internalBinaryRead(reader, reader.uint32(), options);\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.Notification.field_changes\");\n }\n }\n map[key ?? \"\"] = val ?? Notification_FieldChange.create();\n }\n internalBinaryWrite(message: Notification, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 subscription_id = 1; */\n if (message.subscriptionId !== 0n)\n writer.tag(1, WireType.Varint).uint64(message.subscriptionId);\n /* uint64 event_id = 2; */\n if (message.eventId !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.eventId);\n /* uint64 resource_id = 3; */\n if (message.resourceId !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.resourceId);\n /* MiLaboratories.PL.Base.ResourceType resource_type = 4; */\n if (message.resourceType)\n ResourceType.internalBinaryWrite(message.resourceType, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n /* MiLaboratories.PL.API.Notification.Events events = 5; */\n if (message.events)\n Notification_Events.internalBinaryWrite(message.events, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n /* map<string, MiLaboratories.PL.API.Notification.FieldChange> field_changes = 6; */\n for (let k of globalThis.Object.keys(message.fieldChanges)) {\n writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n writer.tag(2, WireType.LengthDelimited).fork();\n Notification_FieldChange.internalBinaryWrite(message.fieldChanges[k], writer, options);\n writer.join().join();\n }\n /* MiLaboratories.PL.RTypes.NotificationFilter.Payload payload = 7; */\n if (message.payload)\n NotificationFilter_Payload.internalBinaryWrite(message.payload, writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n /* string filter_name = 8; */\n if (message.filterName !== \"\")\n writer.tag(8, WireType.LengthDelimited).string(message.filterName);\n /* MiLaboratories.PL.API.SpanInfo tx_span = 9; */\n if (message.txSpan)\n SpanInfo.internalBinaryWrite(message.txSpan, writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Notification\n */\nexport const Notification = new Notification$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Notification_Events$Type extends MessageType<Notification_Events> {\n constructor() {\n super(\"MiLaboratories.PL.API.Notification.Events\", [\n { no: 1, name: \"resource_created\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 2, name: \"resource_deleted\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 4, name: \"resource_ready\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 5, name: \"resource_duplicate\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 15, name: \"resource_error\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 12, name: \"inputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 13, name: \"outputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 11, name: \"field_created\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 16, name: \"field_got_error\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 6, name: \"input_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 7, name: \"all_inputs_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 8, name: \"output_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 9, name: \"all_outputs_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 14, name: \"generic_otw_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 10, name: \"dynamic_changed\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 17, name: \"resource_recovered\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<Notification_Events>): Notification_Events {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.resourceCreated = false;\n message.resourceDeleted = false;\n message.resourceReady = false;\n message.resourceDuplicate = false;\n message.resourceError = false;\n message.inputsLocked = false;\n message.outputsLocked = false;\n message.fieldCreated = false;\n message.fieldGotError = false;\n message.inputSet = false;\n message.allInputsSet = false;\n message.outputSet = false;\n message.allOutputsSet = false;\n message.genericOtwSet = false;\n message.dynamicChanged = false;\n message.resourceRecovered = false;\n if (value !== undefined)\n reflectionMergePartial<Notification_Events>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Notification_Events): Notification_Events {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* bool resource_created */ 1:\n message.resourceCreated = reader.bool();\n break;\n case /* bool resource_deleted */ 2:\n message.resourceDeleted = reader.bool();\n break;\n case /* bool resource_ready */ 4:\n message.resourceReady = reader.bool();\n break;\n case /* bool resource_duplicate */ 5:\n message.resourceDuplicate = reader.bool();\n break;\n case /* bool resource_error */ 15:\n message.resourceError = reader.bool();\n break;\n case /* bool inputs_locked */ 12:\n message.inputsLocked = reader.bool();\n break;\n case /* bool outputs_locked */ 13:\n message.outputsLocked = reader.bool();\n break;\n case /* bool field_created */ 11:\n message.fieldCreated = reader.bool();\n break;\n case /* bool field_got_error */ 16:\n message.fieldGotError = reader.bool();\n break;\n case /* bool input_set */ 6:\n message.inputSet = reader.bool();\n break;\n case /* bool all_inputs_set */ 7:\n message.allInputsSet = reader.bool();\n break;\n case /* bool output_set */ 8:\n message.outputSet = reader.bool();\n break;\n case /* bool all_outputs_set */ 9:\n message.allOutputsSet = reader.bool();\n break;\n case /* bool generic_otw_set */ 14:\n message.genericOtwSet = reader.bool();\n break;\n case /* bool dynamic_changed */ 10:\n message.dynamicChanged = reader.bool();\n break;\n case /* bool resource_recovered */ 17:\n message.resourceRecovered = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Notification_Events, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* bool resource_created = 1; */\n if (message.resourceCreated !== false)\n writer.tag(1, WireType.Varint).bool(message.resourceCreated);\n /* bool resource_deleted = 2; */\n if (message.resourceDeleted !== false)\n writer.tag(2, WireType.Varint).bool(message.resourceDeleted);\n /* bool resource_ready = 4; */\n if (message.resourceReady !== false)\n writer.tag(4, WireType.Varint).bool(message.resourceReady);\n /* bool resource_duplicate = 5; */\n if (message.resourceDuplicate !== false)\n writer.tag(5, WireType.Varint).bool(message.resourceDuplicate);\n /* bool input_set = 6; */\n if (message.inputSet !== false)\n writer.tag(6, WireType.Varint).bool(message.inputSet);\n /* bool all_inputs_set = 7; */\n if (message.allInputsSet !== false)\n writer.tag(7, WireType.Varint).bool(message.allInputsSet);\n /* bool output_set = 8; */\n if (message.outputSet !== false)\n writer.tag(8, WireType.Varint).bool(message.outputSet);\n /* bool all_outputs_set = 9; */\n if (message.allOutputsSet !== false)\n writer.tag(9, WireType.Varint).bool(message.allOutputsSet);\n /* bool dynamic_changed = 10; */\n if (message.dynamicChanged !== false)\n writer.tag(10, WireType.Varint).bool(message.dynamicChanged);\n /* bool field_created = 11; */\n if (message.fieldCreated !== false)\n writer.tag(11, WireType.Varint).bool(message.fieldCreated);\n /* bool inputs_locked = 12; */\n if (message.inputsLocked !== false)\n writer.tag(12, WireType.Varint).bool(message.inputsLocked);\n /* bool outputs_locked = 13; */\n if (message.outputsLocked !== false)\n writer.tag(13, WireType.Varint).bool(message.outputsLocked);\n /* bool generic_otw_set = 14; */\n if (message.genericOtwSet !== false)\n writer.tag(14, WireType.Varint).bool(message.genericOtwSet);\n /* bool resource_error = 15; */\n if (message.resourceError !== false)\n writer.tag(15, WireType.Varint).bool(message.resourceError);\n /* bool field_got_error = 16; */\n if (message.fieldGotError !== false)\n writer.tag(16, WireType.Varint).bool(message.fieldGotError);\n /* bool resource_recovered = 17; */\n if (message.resourceRecovered !== false)\n writer.tag(17, WireType.Varint).bool(message.resourceRecovered);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Notification.Events\n */\nexport const Notification_Events = new Notification_Events$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Notification_FieldChange$Type extends MessageType<Notification_FieldChange> {\n constructor() {\n super(\"MiLaboratories.PL.API.Notification.FieldChange\", [\n { no: 1, name: \"old\", kind: \"message\", T: () => Field },\n { no: 2, name: \"new\", kind: \"message\", T: () => Field }\n ]);\n }\n create(value?: PartialMessage<Notification_FieldChange>): Notification_FieldChange {\n const message = globalThis.Object.create((this.messagePrototype!));\n if (value !== undefined)\n reflectionMergePartial<Notification_FieldChange>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Notification_FieldChange): Notification_FieldChange {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.API.Field old */ 1:\n message.old = Field.internalBinaryRead(reader, reader.uint32(), options, message.old);\n break;\n case /* MiLaboratories.PL.API.Field new */ 2:\n message.new = Field.internalBinaryRead(reader, reader.uint32(), options, message.new);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Notification_FieldChange, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.API.Field old = 1; */\n if (message.old)\n Field.internalBinaryWrite(message.old, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* MiLaboratories.PL.API.Field new = 2; */\n if (message.new)\n Field.internalBinaryWrite(message.new, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Notification.FieldChange\n */\nexport const Notification_FieldChange = new Notification_FieldChange$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SpanInfo$Type extends MessageType<SpanInfo> {\n constructor() {\n super(\"MiLaboratories.PL.API.SpanInfo\", [\n { no: 1, name: \"path\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"carrier\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"scalar\", T: 9 /*ScalarType.STRING*/ } }\n ]);\n }\n create(value?: PartialMessage<SpanInfo>): SpanInfo {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.path = \"\";\n message.carrier = {};\n if (value !== undefined)\n reflectionMergePartial<SpanInfo>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpanInfo): SpanInfo {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string path */ 1:\n message.path = reader.string();\n break;\n case /* map<string, string> carrier */ 2:\n this.binaryReadMap2(message.carrier, reader, options);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n private binaryReadMap2(map: SpanInfo[\"carrier\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof SpanInfo[\"carrier\"] | undefined, val: SpanInfo[\"carrier\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.string();\n break;\n case 2:\n val = reader.string();\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.SpanInfo.carrier\");\n }\n }\n map[key ?? \"\"] = val ?? \"\";\n }\n internalBinaryWrite(message: SpanInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string path = 1; */\n if (message.path !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.path);\n /* map<string, string> carrier = 2; */\n for (let k of globalThis.Object.keys(message.carrier))\n writer.tag(2, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.carrier[k]).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.SpanInfo\n */\nexport const SpanInfo = new SpanInfo$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Subscription$Type extends MessageType<Subscription> {\n constructor() {\n super(\"MiLaboratories.PL.API.Subscription\", [\n { no: 1, name: \"id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"blocking\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<Subscription>): Subscription {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.id = 0n;\n message.blocking = false;\n if (value !== undefined)\n reflectionMergePartial<Subscription>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Subscription): Subscription {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 id */ 1:\n message.id = reader.uint64().toBigInt();\n break;\n case /* bool blocking */ 3:\n message.blocking = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Subscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 id = 1; */\n if (message.id !== 0n)\n writer.tag(1, WireType.Varint).uint64(message.id);\n /* bool blocking = 3; */\n if (message.blocking !== false)\n writer.tag(3, WireType.Varint).bool(message.blocking);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Subscription\n */\nexport const Subscription = new Subscription$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Controller$Type extends MessageType<Controller> {\n constructor() {\n super(\"MiLaboratories.PL.API.Controller\", [\n { no: 1, name: \"type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"subscriptionID\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<Controller>): Controller {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = \"\";\n message.id = 0n;\n message.subscriptionID = 0n;\n if (value !== undefined)\n reflectionMergePartial<Controller>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Controller): Controller {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string type */ 1:\n message.type = reader.string();\n break;\n case /* uint64 id */ 2:\n message.id = reader.uint64().toBigInt();\n break;\n case /* uint64 subscriptionID */ 3:\n message.subscriptionID = reader.uint64().toBigInt();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Controller, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string type = 1; */\n if (message.type !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.type);\n /* uint64 id = 2; */\n if (message.id !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.id);\n /* uint64 subscriptionID = 3; */\n if (message.subscriptionID !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.subscriptionID);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Controller\n */\nexport const Controller = new Controller$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ResourceSchema$Type extends MessageType<ResourceSchema> {\n constructor() {\n super(\"MiLaboratories.PL.API.ResourceSchema\", [\n { no: 1, name: \"type\", kind: \"message\", T: () => ResourceType },\n { no: 2, name: \"fields\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => FieldSchema },\n { no: 3, name: \"access_flags\", kind: \"message\", T: () => ResourceSchema_AccessFlags },\n { no: 4, name: \"free_inputs\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 5, name: \"free_outputs\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<ResourceSchema>): ResourceSchema {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.fields = [];\n message.freeInputs = false;\n message.freeOutputs = false;\n if (value !== undefined)\n reflectionMergePartial<ResourceSchema>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceSchema): ResourceSchema {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.Base.ResourceType type */ 1:\n message.type = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.type);\n break;\n case /* repeated MiLaboratories.PL.API.FieldSchema fields */ 2:\n message.fields.push(FieldSchema.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* optional MiLaboratories.PL.API.ResourceSchema.AccessFlags access_flags */ 3:\n message.accessFlags = ResourceSchema_AccessFlags.internalBinaryRead(reader, reader.uint32(), options, message.accessFlags);\n break;\n case /* bool free_inputs */ 4:\n message.freeInputs = reader.bool();\n break;\n case /* bool free_outputs */ 5:\n message.freeOutputs = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ResourceSchema, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.Base.ResourceType type = 1; */\n if (message.type)\n ResourceType.internalBinaryWrite(message.type, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* repeated MiLaboratories.PL.API.FieldSchema fields = 2; */\n for (let i = 0; i < message.fields.length; i++)\n FieldSchema.internalBinaryWrite(message.fields[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n /* optional MiLaboratories.PL.API.ResourceSchema.AccessFlags access_flags = 3; */\n if (message.accessFlags)\n ResourceSchema_AccessFlags.internalBinaryWrite(message.accessFlags, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* bool free_inputs = 4; */\n if (message.freeInputs !== false)\n writer.tag(4, WireType.Varint).bool(message.freeInputs);\n /* bool free_outputs = 5; */\n if (message.freeOutputs !== false)\n writer.tag(5, WireType.Varint).bool(message.freeOutputs);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceSchema\n */\nexport const ResourceSchema = new ResourceSchema$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ResourceSchema_AccessFlags$Type extends MessageType<ResourceSchema_AccessFlags> {\n constructor() {\n super(\"MiLaboratories.PL.API.ResourceSchema.AccessFlags\", [\n { no: 1, name: \"create_resource\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 2, name: \"read_fields\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 3, name: \"write_fields\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 4, name: \"read_kv\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 5, name: \"write_kv\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 6, name: \"read_by_field_type\", kind: \"map\", K: 13 /*ScalarType.UINT32*/, V: { kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ } },\n { no: 7, name: \"write_by_field_type\", kind: \"map\", K: 13 /*ScalarType.UINT32*/, V: { kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ } }\n ]);\n }\n create(value?: PartialMessage<ResourceSchema_AccessFlags>): ResourceSchema_AccessFlags {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.readByFieldType = {};\n message.writeByFieldType = {};\n if (value !== undefined)\n reflectionMergePartial<ResourceSchema_AccessFlags>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceSchema_AccessFlags): ResourceSchema_AccessFlags {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* optional bool create_resource */ 1:\n message.createResource = reader.bool();\n break;\n case /* optional bool read_fields */ 2:\n message.readFields = reader.bool();\n break;\n case /* optional bool write_fields */ 3:\n message.writeFields = reader.bool();\n break;\n case /* optional bool read_kv */ 4:\n message.readKv = reader.bool();\n break;\n case /* optional bool write_kv */ 5:\n message.writeKv = reader.bool();\n break;\n case /* map<uint32, bool> read_by_field_type */ 6:\n this.binaryReadMap6(message.readByFieldType, reader, options);\n break;\n case /* map<uint32, bool> write_by_field_type */ 7:\n this.binaryReadMap7(message.writeByFieldType, reader, options);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n private binaryReadMap6(map: ResourceSchema_AccessFlags[\"readByFieldType\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof ResourceSchema_AccessFlags[\"readByFieldType\"] | undefined, val: ResourceSchema_AccessFlags[\"readByFieldType\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.uint32();\n break;\n case 2:\n val = reader.bool();\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.ResourceSchema.AccessFlags.read_by_field_type\");\n }\n }\n map[key ?? 0] = val ?? false;\n }\n private binaryReadMap7(map: ResourceSchema_AccessFlags[\"writeByFieldType\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof ResourceSchema_AccessFlags[\"writeByFieldType\"] | undefined, val: ResourceSchema_AccessFlags[\"writeByFieldType\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.uint32();\n break;\n case 2:\n val = reader.bool();\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.ResourceSchema.AccessFlags.write_by_field_type\");\n }\n }\n map[key ?? 0] = val ?? false;\n }\n internalBinaryWrite(message: ResourceSchema_AccessFlags, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* optional bool create_resource = 1; */\n if (message.createResource !== undefined)\n writer.tag(1, WireType.Varint).bool(message.createResource);\n /* optional bool read_fields = 2; */\n if (message.readFields !== undefined)\n writer.tag(2, WireType.Varint).bool(message.readFields);\n /* optional bool write_fields = 3; */\n if (message.writeFields !== undefined)\n writer.tag(3, WireType.Varint).bool(message.writeFields);\n /* optional bool read_kv = 4; */\n if (message.readKv !== undefined)\n writer.tag(4, WireType.Varint).bool(message.readKv);\n /* optional bool write_kv = 5; */\n if (message.writeKv !== undefined)\n writer.tag(5, WireType.Varint).bool(message.writeKv);\n /* map<uint32, bool> read_by_field_type = 6; */\n for (let k of globalThis.Object.keys(message.readByFieldType))\n writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)).tag(2, WireType.Varint).bool(message.readByFieldType[k as any]).join();\n /* map<uint32, bool> write_by_field_type = 7; */\n for (let k of globalThis.Object.keys(message.writeByFieldType))\n writer.tag(7, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)).tag(2, WireType.Varint).bool(message.writeByFieldType[k as any]).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceSchema.AccessFlags\n */\nexport const ResourceSchema_AccessFlags = new ResourceSchema_AccessFlags$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass FieldSchema$Type extends MessageType<FieldSchema> {\n constructor() {\n super(\"MiLaboratories.PL.API.FieldSchema\", [\n { no: 1, name: \"type\", kind: \"enum\", T: () => [\"MiLaboratories.PL.Base.FieldType\", FieldType] },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n ]);\n }\n create(value?: PartialMessage<FieldSchema>): FieldSchema {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = 0;\n message.name = \"\";\n if (value !== undefined)\n reflectionMergePartial<FieldSchema>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FieldSchema): FieldSchema {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.Base.FieldType type */ 1:\n message.type = reader.int32();\n break;\n case /* string name */ 2:\n message.name = reader.string();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: FieldSchema, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.Base.FieldType type = 1; */\n if (message.type !== 0)\n writer.tag(1, WireType.Varint).int32(message.type);\n /* string name = 2; */\n if (message.name !== \"\")\n writer.tag(2, WireType.LengthDelimited).string(message.name);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.FieldSchema\n */\nexport const FieldSchema = new FieldSchema$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ResourceAPIFeature$Type extends MessageType<ResourceAPIFeature> {\n constructor() {\n super(\"MiLaboratories.PL.API.ResourceAPIFeature\", [\n { no: 1, name: \"controller_type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"feature_name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 3, name: \"resource_type\", kind: \"message\", T: () => ResourceType },\n { no: 4, name: \"endpoint\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n ]);\n }\n create(value?: PartialMessage<ResourceAPIFeature>): ResourceAPIFeature {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.controllerType = \"\";\n message.featureName = \"\";\n message.endpoint = \"\";\n if (value !== undefined)\n reflectionMergePartial<ResourceAPIFeature>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceAPIFeature): ResourceAPIFeature {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string controller_type */ 1:\n message.controllerType = reader.string();\n break;\n case /* string feature_name */ 2:\n message.featureName = reader.string();\n break;\n case /* MiLaboratories.PL.Base.ResourceType resource_type */ 3:\n message.resourceType = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.resourceType);\n break;\n case /* string endpoint */ 4:\n message.endpoint = reader.string();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ResourceAPIFeature, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string controller_type = 1; */\n if (message.controllerType !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.controllerType);\n /* string feature_name = 2; */\n if (message.featureName !== \"\")\n writer.tag(2, WireType.LengthDelimited).string(message.featureName);\n /* MiLaboratories.PL.Base.ResourceType resource_type = 3; */\n if (message.resourceType)\n ResourceType.internalBinaryWrite(message.resourceType, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* string endpoint = 4; */\n if (message.endpoint !== \"\")\n writer.tag(4, WireType.LengthDelimited).string(message.endpoint);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceAPIFeature\n */\nexport const ResourceAPIFeature = new ResourceAPIFeature$Type();\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api_types.cjs","names":["MessageType","UnknownFieldHandler","WireType","ResourceType","Timestamp","FieldRef","FieldType","NotificationFilter_Payload"],"sources":["../../../../../../../src/proto-grpc/github.com/milaboratory/pl/plapi/plapiproto/api_types.ts"],"sourcesContent":["// @generated by protobuf-ts 2.11.1 with parameter client_generic,optimize_speed,generate_dependencies,force_server_none\n// @generated from protobuf file \"github.com/milaboratory/pl/plapi/plapiproto/api_types.proto\" (package \"MiLaboratories.PL.API\", syntax proto3)\n// tslint:disable\nimport type { BinaryWriteOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryWriter } from \"@protobuf-ts/runtime\";\nimport { WireType } from \"@protobuf-ts/runtime\";\nimport type { BinaryReadOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryReader } from \"@protobuf-ts/runtime\";\nimport { UnknownFieldHandler } from \"@protobuf-ts/runtime\";\nimport type { PartialMessage } from \"@protobuf-ts/runtime\";\nimport { reflectionMergePartial } from \"@protobuf-ts/runtime\";\nimport { MessageType } from \"@protobuf-ts/runtime\";\nimport { NotificationFilter_Payload } from \"./resource_types\";\nimport { FieldType } from \"./base_types\";\nimport { FieldRef } from \"./base_types\";\nimport { Timestamp } from \"../../../../../google/protobuf/timestamp\";\nimport { ResourceType } from \"./base_types\";\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Tx\n */\nexport interface Tx {\n /**\n * @generated from protobuf field: bool is_valid = 1\n */\n isValid: boolean;\n /**\n * @generated from protobuf field: uint64 id = 2\n */\n id: bigint;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Resource\n */\nexport interface Resource {\n /**\n * @generated from protobuf field: uint64 resource_id = 2\n */\n resourceId: bigint;\n /**\n * @generated from protobuf field: optional bytes resource_signature = 18\n */\n resourceSignature?: Uint8Array;\n /**\n * @generated from protobuf field: bytes canonical_id = 17\n */\n canonicalId: Uint8Array; // could be empty; it depends on the resource lifecycle state\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Resource.Kind kind = 3\n */\n kind: Resource_Kind;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType type = 4\n */\n type?: ResourceType;\n /**\n * @generated from protobuf field: bytes data = 5\n */\n data: Uint8Array;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Resource.Features features = 16\n */\n features?: Resource_Features;\n /**\n * @generated from protobuf field: repeated MiLaboratories.PL.API.Field fields = 6\n */\n fields: Field[];\n /**\n * Resource has at least one field with error\n *\n * @generated from protobuf field: bool has_errors = 7\n */\n hasErrors: boolean;\n /**\n * @generated from protobuf field: bool inputs_locked = 8\n */\n inputsLocked: boolean;\n /**\n * @generated from protobuf field: bool outputs_locked = 9\n */\n outputsLocked: boolean;\n /**\n * @generated from protobuf field: bool resource_ready = 14\n */\n resourceReady: boolean;\n /**\n * @generated from protobuf field: bool is_final = 15\n */\n isFinal: boolean;\n /**\n * @generated from protobuf field: uint64 original_resource_id = 10\n */\n originalResourceId: bigint;\n /**\n * @generated from protobuf field: uint64 parent_resource_id = 11\n */\n parentResourceId: bigint;\n /**\n * @generated from protobuf field: google.protobuf.Timestamp created_time = 12\n */\n createdTime?: Timestamp;\n /**\n * @generated from protobuf field: google.protobuf.Timestamp deleted_time = 13\n */\n deletedTime?: Timestamp;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Resource.Features\n */\nexport interface Resource_Features {\n /**\n * @generated from protobuf field: bool ephemeral = 1\n */\n ephemeral: boolean; // false = 'supports deduplication'\n}\n/**\n * @generated from protobuf enum MiLaboratories.PL.API.Resource.Kind\n */\nexport enum Resource_Kind {\n /**\n * @generated from protobuf enum value: KIND_INVALID = 0;\n */\n INVALID = 0,\n /**\n * @generated from protobuf enum value: KIND_STRUCTURAL = 1;\n */\n STRUCTURAL = 1,\n /**\n * @generated from protobuf enum value: KIND_VALUE = 2;\n */\n VALUE = 2\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Field\n */\nexport interface Field {\n /**\n * field ID is always combination of parent resource ID and field name\n *\n * @generated from protobuf field: MiLaboratories.PL.Base.FieldRef id = 1\n */\n id?: FieldRef;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.FieldType type = 2\n */\n type: FieldType;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Resource.Features features = 3\n */\n features?: Resource_Features;\n /**\n * _resolved_ value of a field or _assigned_ if the field was assigned to a resource.\n * If a field refers to another field, it will get\n * a value only when this chain of references ends up with a direct resource\n * reference. At that moment, all fields in the chain will get their values\n * resolved and will start to refer to the same resource directly.\n *\n * @generated from protobuf field: uint64 value = 5\n */\n value: bigint;\n /**\n * Signature for value resource ID, inheriting the parent resource's color.\n * Populated server-side when the parent resource has a known color in the current TX.\n *\n * @generated from protobuf field: optional bytes value_signature = 10\n */\n valueSignature?: Uint8Array;\n /**\n * Whether the value is empty, assigned, or finally resolved.\n *\n * @generated from protobuf field: MiLaboratories.PL.API.Field.ValueStatus value_status = 7\n */\n valueStatus: Field_ValueStatus;\n /**\n * If the value is in its final state (ready, duplicate or error)\n *\n * @generated from protobuf field: bool value_is_final = 8\n */\n valueIsFinal: boolean;\n /**\n * Error resource ID, if any.\n * Is intended to report problems _from_ the platform to the client.\n *\n * @generated from protobuf field: uint64 error = 6\n */\n error: bigint;\n /**\n * Signature for error resource ID, inheriting the parent resource's color.\n *\n * @generated from protobuf field: optional bytes error_signature = 11\n */\n errorSignature?: Uint8Array;\n}\n/**\n * @generated from protobuf enum MiLaboratories.PL.API.Field.ValueStatus\n */\nexport enum Field_ValueStatus {\n /**\n * @generated from protobuf enum value: INVALID = 0;\n */\n INVALID = 0,\n /**\n * @generated from protobuf enum value: EMPTY = 1;\n */\n EMPTY = 1,\n /**\n * @generated from protobuf enum value: ASSIGNED = 2;\n */\n ASSIGNED = 2,\n /**\n * @generated from protobuf enum value: RESOLVED = 3;\n */\n RESOLVED = 3\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Notification\n */\nexport interface Notification {\n /**\n * @generated from protobuf field: uint64 subscription_id = 1\n */\n subscriptionId: bigint;\n /**\n * @generated from protobuf field: uint64 event_id = 2\n */\n eventId: bigint;\n /**\n * @generated from protobuf field: uint64 resource_id = 3\n */\n resourceId: bigint;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType resource_type = 4\n */\n resourceType?: ResourceType;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Notification.Events events = 5\n */\n events?: Notification_Events;\n /**\n * @generated from protobuf field: map<string, MiLaboratories.PL.API.Notification.FieldChange> field_changes = 6\n */\n fieldChanges: {\n [key: string]: Notification_FieldChange;\n };\n /**\n * @generated from protobuf field: MiLaboratories.PL.RTypes.NotificationFilter.Payload payload = 7\n */\n payload?: NotificationFilter_Payload;\n /**\n * @generated from protobuf field: string filter_name = 8\n */\n filterName: string;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.SpanInfo tx_span = 9\n */\n txSpan?: SpanInfo;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Notification.Events\n */\nexport interface Notification_Events {\n /**\n * @generated from protobuf field: bool resource_created = 1\n */\n resourceCreated: boolean;\n /**\n * @generated from protobuf field: bool resource_deleted = 2\n */\n resourceDeleted: boolean;\n /**\n * @generated from protobuf field: bool resource_ready = 4\n */\n resourceReady: boolean;\n /**\n * @generated from protobuf field: bool resource_duplicate = 5\n */\n resourceDuplicate: boolean;\n /**\n * @generated from protobuf field: bool resource_error = 15\n */\n resourceError: boolean;\n /**\n * @generated from protobuf field: bool inputs_locked = 12\n */\n inputsLocked: boolean;\n /**\n * @generated from protobuf field: bool outputs_locked = 13\n */\n outputsLocked: boolean;\n /**\n * @generated from protobuf field: bool field_created = 11\n */\n fieldCreated: boolean;\n /**\n * @generated from protobuf field: bool field_got_error = 16\n */\n fieldGotError: boolean;\n /**\n * @generated from protobuf field: bool input_set = 6\n */\n inputSet: boolean;\n /**\n * @generated from protobuf field: bool all_inputs_set = 7\n */\n allInputsSet: boolean;\n /**\n * @generated from protobuf field: bool output_set = 8\n */\n outputSet: boolean;\n /**\n * @generated from protobuf field: bool all_outputs_set = 9\n */\n allOutputsSet: boolean;\n /**\n * @generated from protobuf field: bool generic_otw_set = 14\n */\n genericOtwSet: boolean;\n /**\n * @generated from protobuf field: bool dynamic_changed = 10\n */\n dynamicChanged: boolean;\n /**\n * @generated from protobuf field: bool resource_recovered = 17\n */\n resourceRecovered: boolean;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Notification.FieldChange\n */\nexport interface Notification_FieldChange {\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Field old = 1\n */\n old?: Field;\n /**\n * @generated from protobuf field: MiLaboratories.PL.API.Field new = 2\n */\n new?: Field;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.SpanInfo\n */\nexport interface SpanInfo {\n /**\n * @generated from protobuf field: string path = 1\n */\n path: string;\n /**\n * @generated from protobuf field: map<string, string> carrier = 2\n */\n carrier: {\n [key: string]: string;\n };\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Subscription\n */\nexport interface Subscription {\n /**\n * @generated from protobuf field: uint64 id = 1\n */\n id: bigint;\n /**\n * @generated from protobuf field: bool blocking = 3\n */\n blocking: boolean;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.Controller\n */\nexport interface Controller {\n /**\n * @generated from protobuf field: string type = 1\n */\n type: string;\n /**\n * @generated from protobuf field: uint64 id = 2\n */\n id: bigint;\n /**\n * @generated from protobuf field: uint64 subscriptionID = 3\n */\n subscriptionID: bigint;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.ResourceSchema\n */\nexport interface ResourceSchema {\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType type = 1\n */\n type?: ResourceType;\n /**\n * @generated from protobuf field: repeated MiLaboratories.PL.API.FieldSchema fields = 2\n */\n fields: FieldSchema[];\n /**\n * Access restriction flags for non-controller roles\n *\n * @generated from protobuf field: optional MiLaboratories.PL.API.ResourceSchema.AccessFlags access_flags = 3\n */\n accessFlags?: ResourceSchema_AccessFlags;\n /**\n * @generated from protobuf field: bool free_inputs = 4\n */\n freeInputs: boolean; // if true, skip automatic input locking on creation\n /**\n * @generated from protobuf field: bool free_outputs = 5\n */\n freeOutputs: boolean; // if true, skip automatic output locking on creation\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.ResourceSchema.AccessFlags\n */\nexport interface ResourceSchema_AccessFlags {\n /**\n * Deny-list approach: default = allowed (true)\n * Controllers set these to false to restrict non-controller roles (role='u', role='w')\n *\n * @generated from protobuf field: optional bool create_resource = 1\n */\n createResource?: boolean; // default: true (creation allowed)\n /**\n * IMPORTANT: read_fields=false with write_fields=true is a forbidden combination\n *\n * @generated from protobuf field: optional bool read_fields = 2\n */\n readFields?: boolean; // default: true (reads allowed)\n /**\n * @generated from protobuf field: optional bool write_fields = 3\n */\n writeFields?: boolean; // default: true (writes allowed)\n /**\n * IMPORTANT: read_kv=false with write_kv=true is a forbidden combination\n *\n * @generated from protobuf field: optional bool read_kv = 4\n */\n readKv?: boolean; // if unset, falls back to read_fields\n /**\n * @generated from protobuf field: optional bool write_kv = 5\n */\n writeKv?: boolean; // if unset, falls back to write_fields\n /**\n * Per-field-type overrides (map: field_type → bool)\n * When defined for a field type, overrides resource-level flags\n *\n * @generated from protobuf field: map<uint32, bool> read_by_field_type = 6\n */\n readByFieldType: {\n [key: number]: boolean;\n };\n /**\n * @generated from protobuf field: map<uint32, bool> write_by_field_type = 7\n */\n writeByFieldType: {\n [key: number]: boolean;\n };\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.FieldSchema\n */\nexport interface FieldSchema {\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.FieldType type = 1\n */\n type: FieldType;\n /**\n * @generated from protobuf field: string name = 2\n */\n name: string;\n}\n/**\n * @generated from protobuf message MiLaboratories.PL.API.ResourceAPIFeature\n */\nexport interface ResourceAPIFeature {\n /**\n * @generated from protobuf field: string controller_type = 1\n */\n controllerType: string;\n /**\n * @generated from protobuf field: string feature_name = 2\n */\n featureName: string;\n /**\n * @generated from protobuf field: MiLaboratories.PL.Base.ResourceType resource_type = 3\n */\n resourceType?: ResourceType;\n /**\n * @generated from protobuf field: string endpoint = 4\n */\n endpoint: string;\n}\n// @generated message type with reflection information, may provide speed optimized methods\nclass Tx$Type extends MessageType<Tx> {\n constructor() {\n super(\"MiLaboratories.PL.API.Tx\", [\n { no: 1, name: \"is_valid\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 2, name: \"id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<Tx>): Tx {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.isValid = false;\n message.id = 0n;\n if (value !== undefined)\n reflectionMergePartial<Tx>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Tx): Tx {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* bool is_valid */ 1:\n message.isValid = reader.bool();\n break;\n case /* uint64 id */ 2:\n message.id = reader.uint64().toBigInt();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Tx, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* bool is_valid = 1; */\n if (message.isValid !== false)\n writer.tag(1, WireType.Varint).bool(message.isValid);\n /* uint64 id = 2; */\n if (message.id !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.id);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Tx\n */\nexport const Tx = new Tx$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Resource$Type extends MessageType<Resource> {\n constructor() {\n super(\"MiLaboratories.PL.API.Resource\", [\n { no: 2, name: \"resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 18, name: \"resource_signature\", kind: \"scalar\", opt: true, T: 12 /*ScalarType.BYTES*/ },\n { no: 17, name: \"canonical_id\", kind: \"scalar\", T: 12 /*ScalarType.BYTES*/ },\n { no: 3, name: \"kind\", kind: \"enum\", T: () => [\"MiLaboratories.PL.API.Resource.Kind\", Resource_Kind, \"KIND_\"] },\n { no: 4, name: \"type\", kind: \"message\", T: () => ResourceType },\n { no: 5, name: \"data\", kind: \"scalar\", T: 12 /*ScalarType.BYTES*/ },\n { no: 16, name: \"features\", kind: \"message\", T: () => Resource_Features },\n { no: 6, name: \"fields\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Field },\n { no: 7, name: \"has_errors\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 8, name: \"inputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 9, name: \"outputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 14, name: \"resource_ready\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 15, name: \"is_final\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 10, name: \"original_resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 11, name: \"parent_resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 12, name: \"created_time\", kind: \"message\", T: () => Timestamp },\n { no: 13, name: \"deleted_time\", kind: \"message\", T: () => Timestamp }\n ]);\n }\n create(value?: PartialMessage<Resource>): Resource {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.resourceId = 0n;\n message.canonicalId = new Uint8Array(0);\n message.kind = 0;\n message.data = new Uint8Array(0);\n message.fields = [];\n message.hasErrors = false;\n message.inputsLocked = false;\n message.outputsLocked = false;\n message.resourceReady = false;\n message.isFinal = false;\n message.originalResourceId = 0n;\n message.parentResourceId = 0n;\n if (value !== undefined)\n reflectionMergePartial<Resource>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Resource): Resource {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 resource_id */ 2:\n message.resourceId = reader.uint64().toBigInt();\n break;\n case /* optional bytes resource_signature */ 18:\n message.resourceSignature = reader.bytes();\n break;\n case /* bytes canonical_id */ 17:\n message.canonicalId = reader.bytes();\n break;\n case /* MiLaboratories.PL.API.Resource.Kind kind */ 3:\n message.kind = reader.int32();\n break;\n case /* MiLaboratories.PL.Base.ResourceType type */ 4:\n message.type = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.type);\n break;\n case /* bytes data */ 5:\n message.data = reader.bytes();\n break;\n case /* MiLaboratories.PL.API.Resource.Features features */ 16:\n message.features = Resource_Features.internalBinaryRead(reader, reader.uint32(), options, message.features);\n break;\n case /* repeated MiLaboratories.PL.API.Field fields */ 6:\n message.fields.push(Field.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* bool has_errors */ 7:\n message.hasErrors = reader.bool();\n break;\n case /* bool inputs_locked */ 8:\n message.inputsLocked = reader.bool();\n break;\n case /* bool outputs_locked */ 9:\n message.outputsLocked = reader.bool();\n break;\n case /* bool resource_ready */ 14:\n message.resourceReady = reader.bool();\n break;\n case /* bool is_final */ 15:\n message.isFinal = reader.bool();\n break;\n case /* uint64 original_resource_id */ 10:\n message.originalResourceId = reader.uint64().toBigInt();\n break;\n case /* uint64 parent_resource_id */ 11:\n message.parentResourceId = reader.uint64().toBigInt();\n break;\n case /* google.protobuf.Timestamp created_time */ 12:\n message.createdTime = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.createdTime);\n break;\n case /* google.protobuf.Timestamp deleted_time */ 13:\n message.deletedTime = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.deletedTime);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Resource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 resource_id = 2; */\n if (message.resourceId !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.resourceId);\n /* MiLaboratories.PL.API.Resource.Kind kind = 3; */\n if (message.kind !== 0)\n writer.tag(3, WireType.Varint).int32(message.kind);\n /* MiLaboratories.PL.Base.ResourceType type = 4; */\n if (message.type)\n ResourceType.internalBinaryWrite(message.type, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n /* bytes data = 5; */\n if (message.data.length)\n writer.tag(5, WireType.LengthDelimited).bytes(message.data);\n /* repeated MiLaboratories.PL.API.Field fields = 6; */\n for (let i = 0; i < message.fields.length; i++)\n Field.internalBinaryWrite(message.fields[i], writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n /* bool has_errors = 7; */\n if (message.hasErrors !== false)\n writer.tag(7, WireType.Varint).bool(message.hasErrors);\n /* bool inputs_locked = 8; */\n if (message.inputsLocked !== false)\n writer.tag(8, WireType.Varint).bool(message.inputsLocked);\n /* bool outputs_locked = 9; */\n if (message.outputsLocked !== false)\n writer.tag(9, WireType.Varint).bool(message.outputsLocked);\n /* uint64 original_resource_id = 10; */\n if (message.originalResourceId !== 0n)\n writer.tag(10, WireType.Varint).uint64(message.originalResourceId);\n /* uint64 parent_resource_id = 11; */\n if (message.parentResourceId !== 0n)\n writer.tag(11, WireType.Varint).uint64(message.parentResourceId);\n /* google.protobuf.Timestamp created_time = 12; */\n if (message.createdTime)\n Timestamp.internalBinaryWrite(message.createdTime, writer.tag(12, WireType.LengthDelimited).fork(), options).join();\n /* google.protobuf.Timestamp deleted_time = 13; */\n if (message.deletedTime)\n Timestamp.internalBinaryWrite(message.deletedTime, writer.tag(13, WireType.LengthDelimited).fork(), options).join();\n /* bool resource_ready = 14; */\n if (message.resourceReady !== false)\n writer.tag(14, WireType.Varint).bool(message.resourceReady);\n /* bool is_final = 15; */\n if (message.isFinal !== false)\n writer.tag(15, WireType.Varint).bool(message.isFinal);\n /* MiLaboratories.PL.API.Resource.Features features = 16; */\n if (message.features)\n Resource_Features.internalBinaryWrite(message.features, writer.tag(16, WireType.LengthDelimited).fork(), options).join();\n /* bytes canonical_id = 17; */\n if (message.canonicalId.length)\n writer.tag(17, WireType.LengthDelimited).bytes(message.canonicalId);\n /* optional bytes resource_signature = 18; */\n if (message.resourceSignature !== undefined)\n writer.tag(18, WireType.LengthDelimited).bytes(message.resourceSignature);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Resource\n */\nexport const Resource = new Resource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Resource_Features$Type extends MessageType<Resource_Features> {\n constructor() {\n super(\"MiLaboratories.PL.API.Resource.Features\", [\n { no: 1, name: \"ephemeral\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<Resource_Features>): Resource_Features {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.ephemeral = false;\n if (value !== undefined)\n reflectionMergePartial<Resource_Features>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Resource_Features): Resource_Features {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* bool ephemeral */ 1:\n message.ephemeral = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Resource_Features, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* bool ephemeral = 1; */\n if (message.ephemeral !== false)\n writer.tag(1, WireType.Varint).bool(message.ephemeral);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Resource.Features\n */\nexport const Resource_Features = new Resource_Features$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Field$Type extends MessageType<Field> {\n constructor() {\n super(\"MiLaboratories.PL.API.Field\", [\n { no: 1, name: \"id\", kind: \"message\", T: () => FieldRef },\n { no: 2, name: \"type\", kind: \"enum\", T: () => [\"MiLaboratories.PL.Base.FieldType\", FieldType] },\n { no: 3, name: \"features\", kind: \"message\", T: () => Resource_Features },\n { no: 5, name: \"value\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 10, name: \"value_signature\", kind: \"scalar\", opt: true, T: 12 /*ScalarType.BYTES*/ },\n { no: 7, name: \"value_status\", kind: \"enum\", T: () => [\"MiLaboratories.PL.API.Field.ValueStatus\", Field_ValueStatus] },\n { no: 8, name: \"value_is_final\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 6, name: \"error\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 11, name: \"error_signature\", kind: \"scalar\", opt: true, T: 12 /*ScalarType.BYTES*/ }\n ]);\n }\n create(value?: PartialMessage<Field>): Field {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = 0;\n message.value = 0n;\n message.valueStatus = 0;\n message.valueIsFinal = false;\n message.error = 0n;\n if (value !== undefined)\n reflectionMergePartial<Field>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Field): Field {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.Base.FieldRef id */ 1:\n message.id = FieldRef.internalBinaryRead(reader, reader.uint32(), options, message.id);\n break;\n case /* MiLaboratories.PL.Base.FieldType type */ 2:\n message.type = reader.int32();\n break;\n case /* MiLaboratories.PL.API.Resource.Features features */ 3:\n message.features = Resource_Features.internalBinaryRead(reader, reader.uint32(), options, message.features);\n break;\n case /* uint64 value */ 5:\n message.value = reader.uint64().toBigInt();\n break;\n case /* optional bytes value_signature */ 10:\n message.valueSignature = reader.bytes();\n break;\n case /* MiLaboratories.PL.API.Field.ValueStatus value_status */ 7:\n message.valueStatus = reader.int32();\n break;\n case /* bool value_is_final */ 8:\n message.valueIsFinal = reader.bool();\n break;\n case /* uint64 error */ 6:\n message.error = reader.uint64().toBigInt();\n break;\n case /* optional bytes error_signature */ 11:\n message.errorSignature = reader.bytes();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Field, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.Base.FieldRef id = 1; */\n if (message.id)\n FieldRef.internalBinaryWrite(message.id, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* MiLaboratories.PL.Base.FieldType type = 2; */\n if (message.type !== 0)\n writer.tag(2, WireType.Varint).int32(message.type);\n /* MiLaboratories.PL.API.Resource.Features features = 3; */\n if (message.features)\n Resource_Features.internalBinaryWrite(message.features, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* uint64 value = 5; */\n if (message.value !== 0n)\n writer.tag(5, WireType.Varint).uint64(message.value);\n /* uint64 error = 6; */\n if (message.error !== 0n)\n writer.tag(6, WireType.Varint).uint64(message.error);\n /* MiLaboratories.PL.API.Field.ValueStatus value_status = 7; */\n if (message.valueStatus !== 0)\n writer.tag(7, WireType.Varint).int32(message.valueStatus);\n /* bool value_is_final = 8; */\n if (message.valueIsFinal !== false)\n writer.tag(8, WireType.Varint).bool(message.valueIsFinal);\n /* optional bytes value_signature = 10; */\n if (message.valueSignature !== undefined)\n writer.tag(10, WireType.LengthDelimited).bytes(message.valueSignature);\n /* optional bytes error_signature = 11; */\n if (message.errorSignature !== undefined)\n writer.tag(11, WireType.LengthDelimited).bytes(message.errorSignature);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Field\n */\nexport const Field = new Field$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Notification$Type extends MessageType<Notification> {\n constructor() {\n super(\"MiLaboratories.PL.API.Notification\", [\n { no: 1, name: \"subscription_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 2, name: \"event_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"resource_id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 4, name: \"resource_type\", kind: \"message\", T: () => ResourceType },\n { no: 5, name: \"events\", kind: \"message\", T: () => Notification_Events },\n { no: 6, name: \"field_changes\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => Notification_FieldChange } },\n { no: 7, name: \"payload\", kind: \"message\", T: () => NotificationFilter_Payload },\n { no: 8, name: \"filter_name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 9, name: \"tx_span\", kind: \"message\", T: () => SpanInfo }\n ]);\n }\n create(value?: PartialMessage<Notification>): Notification {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.subscriptionId = 0n;\n message.eventId = 0n;\n message.resourceId = 0n;\n message.fieldChanges = {};\n message.filterName = \"\";\n if (value !== undefined)\n reflectionMergePartial<Notification>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Notification): Notification {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 subscription_id */ 1:\n message.subscriptionId = reader.uint64().toBigInt();\n break;\n case /* uint64 event_id */ 2:\n message.eventId = reader.uint64().toBigInt();\n break;\n case /* uint64 resource_id */ 3:\n message.resourceId = reader.uint64().toBigInt();\n break;\n case /* MiLaboratories.PL.Base.ResourceType resource_type */ 4:\n message.resourceType = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.resourceType);\n break;\n case /* MiLaboratories.PL.API.Notification.Events events */ 5:\n message.events = Notification_Events.internalBinaryRead(reader, reader.uint32(), options, message.events);\n break;\n case /* map<string, MiLaboratories.PL.API.Notification.FieldChange> field_changes */ 6:\n this.binaryReadMap6(message.fieldChanges, reader, options);\n break;\n case /* MiLaboratories.PL.RTypes.NotificationFilter.Payload payload */ 7:\n message.payload = NotificationFilter_Payload.internalBinaryRead(reader, reader.uint32(), options, message.payload);\n break;\n case /* string filter_name */ 8:\n message.filterName = reader.string();\n break;\n case /* MiLaboratories.PL.API.SpanInfo tx_span */ 9:\n message.txSpan = SpanInfo.internalBinaryRead(reader, reader.uint32(), options, message.txSpan);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n private binaryReadMap6(map: Notification[\"fieldChanges\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof Notification[\"fieldChanges\"] | undefined, val: Notification[\"fieldChanges\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.string();\n break;\n case 2:\n val = Notification_FieldChange.internalBinaryRead(reader, reader.uint32(), options);\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.Notification.field_changes\");\n }\n }\n map[key ?? \"\"] = val ?? Notification_FieldChange.create();\n }\n internalBinaryWrite(message: Notification, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 subscription_id = 1; */\n if (message.subscriptionId !== 0n)\n writer.tag(1, WireType.Varint).uint64(message.subscriptionId);\n /* uint64 event_id = 2; */\n if (message.eventId !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.eventId);\n /* uint64 resource_id = 3; */\n if (message.resourceId !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.resourceId);\n /* MiLaboratories.PL.Base.ResourceType resource_type = 4; */\n if (message.resourceType)\n ResourceType.internalBinaryWrite(message.resourceType, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n /* MiLaboratories.PL.API.Notification.Events events = 5; */\n if (message.events)\n Notification_Events.internalBinaryWrite(message.events, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n /* map<string, MiLaboratories.PL.API.Notification.FieldChange> field_changes = 6; */\n for (let k of globalThis.Object.keys(message.fieldChanges)) {\n writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n writer.tag(2, WireType.LengthDelimited).fork();\n Notification_FieldChange.internalBinaryWrite(message.fieldChanges[k], writer, options);\n writer.join().join();\n }\n /* MiLaboratories.PL.RTypes.NotificationFilter.Payload payload = 7; */\n if (message.payload)\n NotificationFilter_Payload.internalBinaryWrite(message.payload, writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n /* string filter_name = 8; */\n if (message.filterName !== \"\")\n writer.tag(8, WireType.LengthDelimited).string(message.filterName);\n /* MiLaboratories.PL.API.SpanInfo tx_span = 9; */\n if (message.txSpan)\n SpanInfo.internalBinaryWrite(message.txSpan, writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Notification\n */\nexport const Notification = new Notification$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Notification_Events$Type extends MessageType<Notification_Events> {\n constructor() {\n super(\"MiLaboratories.PL.API.Notification.Events\", [\n { no: 1, name: \"resource_created\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 2, name: \"resource_deleted\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 4, name: \"resource_ready\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 5, name: \"resource_duplicate\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 15, name: \"resource_error\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 12, name: \"inputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 13, name: \"outputs_locked\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 11, name: \"field_created\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 16, name: \"field_got_error\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 6, name: \"input_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 7, name: \"all_inputs_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 8, name: \"output_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 9, name: \"all_outputs_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 14, name: \"generic_otw_set\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 10, name: \"dynamic_changed\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 17, name: \"resource_recovered\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<Notification_Events>): Notification_Events {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.resourceCreated = false;\n message.resourceDeleted = false;\n message.resourceReady = false;\n message.resourceDuplicate = false;\n message.resourceError = false;\n message.inputsLocked = false;\n message.outputsLocked = false;\n message.fieldCreated = false;\n message.fieldGotError = false;\n message.inputSet = false;\n message.allInputsSet = false;\n message.outputSet = false;\n message.allOutputsSet = false;\n message.genericOtwSet = false;\n message.dynamicChanged = false;\n message.resourceRecovered = false;\n if (value !== undefined)\n reflectionMergePartial<Notification_Events>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Notification_Events): Notification_Events {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* bool resource_created */ 1:\n message.resourceCreated = reader.bool();\n break;\n case /* bool resource_deleted */ 2:\n message.resourceDeleted = reader.bool();\n break;\n case /* bool resource_ready */ 4:\n message.resourceReady = reader.bool();\n break;\n case /* bool resource_duplicate */ 5:\n message.resourceDuplicate = reader.bool();\n break;\n case /* bool resource_error */ 15:\n message.resourceError = reader.bool();\n break;\n case /* bool inputs_locked */ 12:\n message.inputsLocked = reader.bool();\n break;\n case /* bool outputs_locked */ 13:\n message.outputsLocked = reader.bool();\n break;\n case /* bool field_created */ 11:\n message.fieldCreated = reader.bool();\n break;\n case /* bool field_got_error */ 16:\n message.fieldGotError = reader.bool();\n break;\n case /* bool input_set */ 6:\n message.inputSet = reader.bool();\n break;\n case /* bool all_inputs_set */ 7:\n message.allInputsSet = reader.bool();\n break;\n case /* bool output_set */ 8:\n message.outputSet = reader.bool();\n break;\n case /* bool all_outputs_set */ 9:\n message.allOutputsSet = reader.bool();\n break;\n case /* bool generic_otw_set */ 14:\n message.genericOtwSet = reader.bool();\n break;\n case /* bool dynamic_changed */ 10:\n message.dynamicChanged = reader.bool();\n break;\n case /* bool resource_recovered */ 17:\n message.resourceRecovered = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Notification_Events, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* bool resource_created = 1; */\n if (message.resourceCreated !== false)\n writer.tag(1, WireType.Varint).bool(message.resourceCreated);\n /* bool resource_deleted = 2; */\n if (message.resourceDeleted !== false)\n writer.tag(2, WireType.Varint).bool(message.resourceDeleted);\n /* bool resource_ready = 4; */\n if (message.resourceReady !== false)\n writer.tag(4, WireType.Varint).bool(message.resourceReady);\n /* bool resource_duplicate = 5; */\n if (message.resourceDuplicate !== false)\n writer.tag(5, WireType.Varint).bool(message.resourceDuplicate);\n /* bool input_set = 6; */\n if (message.inputSet !== false)\n writer.tag(6, WireType.Varint).bool(message.inputSet);\n /* bool all_inputs_set = 7; */\n if (message.allInputsSet !== false)\n writer.tag(7, WireType.Varint).bool(message.allInputsSet);\n /* bool output_set = 8; */\n if (message.outputSet !== false)\n writer.tag(8, WireType.Varint).bool(message.outputSet);\n /* bool all_outputs_set = 9; */\n if (message.allOutputsSet !== false)\n writer.tag(9, WireType.Varint).bool(message.allOutputsSet);\n /* bool dynamic_changed = 10; */\n if (message.dynamicChanged !== false)\n writer.tag(10, WireType.Varint).bool(message.dynamicChanged);\n /* bool field_created = 11; */\n if (message.fieldCreated !== false)\n writer.tag(11, WireType.Varint).bool(message.fieldCreated);\n /* bool inputs_locked = 12; */\n if (message.inputsLocked !== false)\n writer.tag(12, WireType.Varint).bool(message.inputsLocked);\n /* bool outputs_locked = 13; */\n if (message.outputsLocked !== false)\n writer.tag(13, WireType.Varint).bool(message.outputsLocked);\n /* bool generic_otw_set = 14; */\n if (message.genericOtwSet !== false)\n writer.tag(14, WireType.Varint).bool(message.genericOtwSet);\n /* bool resource_error = 15; */\n if (message.resourceError !== false)\n writer.tag(15, WireType.Varint).bool(message.resourceError);\n /* bool field_got_error = 16; */\n if (message.fieldGotError !== false)\n writer.tag(16, WireType.Varint).bool(message.fieldGotError);\n /* bool resource_recovered = 17; */\n if (message.resourceRecovered !== false)\n writer.tag(17, WireType.Varint).bool(message.resourceRecovered);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Notification.Events\n */\nexport const Notification_Events = new Notification_Events$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Notification_FieldChange$Type extends MessageType<Notification_FieldChange> {\n constructor() {\n super(\"MiLaboratories.PL.API.Notification.FieldChange\", [\n { no: 1, name: \"old\", kind: \"message\", T: () => Field },\n { no: 2, name: \"new\", kind: \"message\", T: () => Field }\n ]);\n }\n create(value?: PartialMessage<Notification_FieldChange>): Notification_FieldChange {\n const message = globalThis.Object.create((this.messagePrototype!));\n if (value !== undefined)\n reflectionMergePartial<Notification_FieldChange>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Notification_FieldChange): Notification_FieldChange {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.API.Field old */ 1:\n message.old = Field.internalBinaryRead(reader, reader.uint32(), options, message.old);\n break;\n case /* MiLaboratories.PL.API.Field new */ 2:\n message.new = Field.internalBinaryRead(reader, reader.uint32(), options, message.new);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Notification_FieldChange, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.API.Field old = 1; */\n if (message.old)\n Field.internalBinaryWrite(message.old, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* MiLaboratories.PL.API.Field new = 2; */\n if (message.new)\n Field.internalBinaryWrite(message.new, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Notification.FieldChange\n */\nexport const Notification_FieldChange = new Notification_FieldChange$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SpanInfo$Type extends MessageType<SpanInfo> {\n constructor() {\n super(\"MiLaboratories.PL.API.SpanInfo\", [\n { no: 1, name: \"path\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"carrier\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"scalar\", T: 9 /*ScalarType.STRING*/ } }\n ]);\n }\n create(value?: PartialMessage<SpanInfo>): SpanInfo {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.path = \"\";\n message.carrier = {};\n if (value !== undefined)\n reflectionMergePartial<SpanInfo>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpanInfo): SpanInfo {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string path */ 1:\n message.path = reader.string();\n break;\n case /* map<string, string> carrier */ 2:\n this.binaryReadMap2(message.carrier, reader, options);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n private binaryReadMap2(map: SpanInfo[\"carrier\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof SpanInfo[\"carrier\"] | undefined, val: SpanInfo[\"carrier\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.string();\n break;\n case 2:\n val = reader.string();\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.SpanInfo.carrier\");\n }\n }\n map[key ?? \"\"] = val ?? \"\";\n }\n internalBinaryWrite(message: SpanInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string path = 1; */\n if (message.path !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.path);\n /* map<string, string> carrier = 2; */\n for (let k of globalThis.Object.keys(message.carrier))\n writer.tag(2, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.carrier[k]).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.SpanInfo\n */\nexport const SpanInfo = new SpanInfo$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Subscription$Type extends MessageType<Subscription> {\n constructor() {\n super(\"MiLaboratories.PL.API.Subscription\", [\n { no: 1, name: \"id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"blocking\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<Subscription>): Subscription {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.id = 0n;\n message.blocking = false;\n if (value !== undefined)\n reflectionMergePartial<Subscription>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Subscription): Subscription {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* uint64 id */ 1:\n message.id = reader.uint64().toBigInt();\n break;\n case /* bool blocking */ 3:\n message.blocking = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Subscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* uint64 id = 1; */\n if (message.id !== 0n)\n writer.tag(1, WireType.Varint).uint64(message.id);\n /* bool blocking = 3; */\n if (message.blocking !== false)\n writer.tag(3, WireType.Varint).bool(message.blocking);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Subscription\n */\nexport const Subscription = new Subscription$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Controller$Type extends MessageType<Controller> {\n constructor() {\n super(\"MiLaboratories.PL.API.Controller\", [\n { no: 1, name: \"type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"id\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n { no: 3, name: \"subscriptionID\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n ]);\n }\n create(value?: PartialMessage<Controller>): Controller {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = \"\";\n message.id = 0n;\n message.subscriptionID = 0n;\n if (value !== undefined)\n reflectionMergePartial<Controller>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Controller): Controller {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string type */ 1:\n message.type = reader.string();\n break;\n case /* uint64 id */ 2:\n message.id = reader.uint64().toBigInt();\n break;\n case /* uint64 subscriptionID */ 3:\n message.subscriptionID = reader.uint64().toBigInt();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: Controller, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string type = 1; */\n if (message.type !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.type);\n /* uint64 id = 2; */\n if (message.id !== 0n)\n writer.tag(2, WireType.Varint).uint64(message.id);\n /* uint64 subscriptionID = 3; */\n if (message.subscriptionID !== 0n)\n writer.tag(3, WireType.Varint).uint64(message.subscriptionID);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.Controller\n */\nexport const Controller = new Controller$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ResourceSchema$Type extends MessageType<ResourceSchema> {\n constructor() {\n super(\"MiLaboratories.PL.API.ResourceSchema\", [\n { no: 1, name: \"type\", kind: \"message\", T: () => ResourceType },\n { no: 2, name: \"fields\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => FieldSchema },\n { no: 3, name: \"access_flags\", kind: \"message\", T: () => ResourceSchema_AccessFlags },\n { no: 4, name: \"free_inputs\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n { no: 5, name: \"free_outputs\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n ]);\n }\n create(value?: PartialMessage<ResourceSchema>): ResourceSchema {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.fields = [];\n message.freeInputs = false;\n message.freeOutputs = false;\n if (value !== undefined)\n reflectionMergePartial<ResourceSchema>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceSchema): ResourceSchema {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.Base.ResourceType type */ 1:\n message.type = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.type);\n break;\n case /* repeated MiLaboratories.PL.API.FieldSchema fields */ 2:\n message.fields.push(FieldSchema.internalBinaryRead(reader, reader.uint32(), options));\n break;\n case /* optional MiLaboratories.PL.API.ResourceSchema.AccessFlags access_flags */ 3:\n message.accessFlags = ResourceSchema_AccessFlags.internalBinaryRead(reader, reader.uint32(), options, message.accessFlags);\n break;\n case /* bool free_inputs */ 4:\n message.freeInputs = reader.bool();\n break;\n case /* bool free_outputs */ 5:\n message.freeOutputs = reader.bool();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ResourceSchema, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.Base.ResourceType type = 1; */\n if (message.type)\n ResourceType.internalBinaryWrite(message.type, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n /* repeated MiLaboratories.PL.API.FieldSchema fields = 2; */\n for (let i = 0; i < message.fields.length; i++)\n FieldSchema.internalBinaryWrite(message.fields[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n /* optional MiLaboratories.PL.API.ResourceSchema.AccessFlags access_flags = 3; */\n if (message.accessFlags)\n ResourceSchema_AccessFlags.internalBinaryWrite(message.accessFlags, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* bool free_inputs = 4; */\n if (message.freeInputs !== false)\n writer.tag(4, WireType.Varint).bool(message.freeInputs);\n /* bool free_outputs = 5; */\n if (message.freeOutputs !== false)\n writer.tag(5, WireType.Varint).bool(message.freeOutputs);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceSchema\n */\nexport const ResourceSchema = new ResourceSchema$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ResourceSchema_AccessFlags$Type extends MessageType<ResourceSchema_AccessFlags> {\n constructor() {\n super(\"MiLaboratories.PL.API.ResourceSchema.AccessFlags\", [\n { no: 1, name: \"create_resource\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 2, name: \"read_fields\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 3, name: \"write_fields\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 4, name: \"read_kv\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 5, name: \"write_kv\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n { no: 6, name: \"read_by_field_type\", kind: \"map\", K: 13 /*ScalarType.UINT32*/, V: { kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ } },\n { no: 7, name: \"write_by_field_type\", kind: \"map\", K: 13 /*ScalarType.UINT32*/, V: { kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ } }\n ]);\n }\n create(value?: PartialMessage<ResourceSchema_AccessFlags>): ResourceSchema_AccessFlags {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.readByFieldType = {};\n message.writeByFieldType = {};\n if (value !== undefined)\n reflectionMergePartial<ResourceSchema_AccessFlags>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceSchema_AccessFlags): ResourceSchema_AccessFlags {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* optional bool create_resource */ 1:\n message.createResource = reader.bool();\n break;\n case /* optional bool read_fields */ 2:\n message.readFields = reader.bool();\n break;\n case /* optional bool write_fields */ 3:\n message.writeFields = reader.bool();\n break;\n case /* optional bool read_kv */ 4:\n message.readKv = reader.bool();\n break;\n case /* optional bool write_kv */ 5:\n message.writeKv = reader.bool();\n break;\n case /* map<uint32, bool> read_by_field_type */ 6:\n this.binaryReadMap6(message.readByFieldType, reader, options);\n break;\n case /* map<uint32, bool> write_by_field_type */ 7:\n this.binaryReadMap7(message.writeByFieldType, reader, options);\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n private binaryReadMap6(map: ResourceSchema_AccessFlags[\"readByFieldType\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof ResourceSchema_AccessFlags[\"readByFieldType\"] | undefined, val: ResourceSchema_AccessFlags[\"readByFieldType\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.uint32();\n break;\n case 2:\n val = reader.bool();\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.ResourceSchema.AccessFlags.read_by_field_type\");\n }\n }\n map[key ?? 0] = val ?? false;\n }\n private binaryReadMap7(map: ResourceSchema_AccessFlags[\"writeByFieldType\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n let len = reader.uint32(), end = reader.pos + len, key: keyof ResourceSchema_AccessFlags[\"writeByFieldType\"] | undefined, val: ResourceSchema_AccessFlags[\"writeByFieldType\"][any] | undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n key = reader.uint32();\n break;\n case 2:\n val = reader.bool();\n break;\n default: throw new globalThis.Error(\"unknown map entry field for MiLaboratories.PL.API.ResourceSchema.AccessFlags.write_by_field_type\");\n }\n }\n map[key ?? 0] = val ?? false;\n }\n internalBinaryWrite(message: ResourceSchema_AccessFlags, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* optional bool create_resource = 1; */\n if (message.createResource !== undefined)\n writer.tag(1, WireType.Varint).bool(message.createResource);\n /* optional bool read_fields = 2; */\n if (message.readFields !== undefined)\n writer.tag(2, WireType.Varint).bool(message.readFields);\n /* optional bool write_fields = 3; */\n if (message.writeFields !== undefined)\n writer.tag(3, WireType.Varint).bool(message.writeFields);\n /* optional bool read_kv = 4; */\n if (message.readKv !== undefined)\n writer.tag(4, WireType.Varint).bool(message.readKv);\n /* optional bool write_kv = 5; */\n if (message.writeKv !== undefined)\n writer.tag(5, WireType.Varint).bool(message.writeKv);\n /* map<uint32, bool> read_by_field_type = 6; */\n for (let k of globalThis.Object.keys(message.readByFieldType))\n writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)).tag(2, WireType.Varint).bool(message.readByFieldType[k as any]).join();\n /* map<uint32, bool> write_by_field_type = 7; */\n for (let k of globalThis.Object.keys(message.writeByFieldType))\n writer.tag(7, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)).tag(2, WireType.Varint).bool(message.writeByFieldType[k as any]).join();\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceSchema.AccessFlags\n */\nexport const ResourceSchema_AccessFlags = new ResourceSchema_AccessFlags$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass FieldSchema$Type extends MessageType<FieldSchema> {\n constructor() {\n super(\"MiLaboratories.PL.API.FieldSchema\", [\n { no: 1, name: \"type\", kind: \"enum\", T: () => [\"MiLaboratories.PL.Base.FieldType\", FieldType] },\n { no: 2, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n ]);\n }\n create(value?: PartialMessage<FieldSchema>): FieldSchema {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.type = 0;\n message.name = \"\";\n if (value !== undefined)\n reflectionMergePartial<FieldSchema>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FieldSchema): FieldSchema {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* MiLaboratories.PL.Base.FieldType type */ 1:\n message.type = reader.int32();\n break;\n case /* string name */ 2:\n message.name = reader.string();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: FieldSchema, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* MiLaboratories.PL.Base.FieldType type = 1; */\n if (message.type !== 0)\n writer.tag(1, WireType.Varint).int32(message.type);\n /* string name = 2; */\n if (message.name !== \"\")\n writer.tag(2, WireType.LengthDelimited).string(message.name);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.FieldSchema\n */\nexport const FieldSchema = new FieldSchema$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ResourceAPIFeature$Type extends MessageType<ResourceAPIFeature> {\n constructor() {\n super(\"MiLaboratories.PL.API.ResourceAPIFeature\", [\n { no: 1, name: \"controller_type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 2, name: \"feature_name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n { no: 3, name: \"resource_type\", kind: \"message\", T: () => ResourceType },\n { no: 4, name: \"endpoint\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n ]);\n }\n create(value?: PartialMessage<ResourceAPIFeature>): ResourceAPIFeature {\n const message = globalThis.Object.create((this.messagePrototype!));\n message.controllerType = \"\";\n message.featureName = \"\";\n message.endpoint = \"\";\n if (value !== undefined)\n reflectionMergePartial<ResourceAPIFeature>(this, message, value);\n return message;\n }\n internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResourceAPIFeature): ResourceAPIFeature {\n let message = target ?? this.create(), end = reader.pos + length;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case /* string controller_type */ 1:\n message.controllerType = reader.string();\n break;\n case /* string feature_name */ 2:\n message.featureName = reader.string();\n break;\n case /* MiLaboratories.PL.Base.ResourceType resource_type */ 3:\n message.resourceType = ResourceType.internalBinaryRead(reader, reader.uint32(), options, message.resourceType);\n break;\n case /* string endpoint */ 4:\n message.endpoint = reader.string();\n break;\n default:\n let u = options.readUnknownField;\n if (u === \"throw\")\n throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n }\n }\n return message;\n }\n internalBinaryWrite(message: ResourceAPIFeature, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n /* string controller_type = 1; */\n if (message.controllerType !== \"\")\n writer.tag(1, WireType.LengthDelimited).string(message.controllerType);\n /* string feature_name = 2; */\n if (message.featureName !== \"\")\n writer.tag(2, WireType.LengthDelimited).string(message.featureName);\n /* MiLaboratories.PL.Base.ResourceType resource_type = 3; */\n if (message.resourceType)\n ResourceType.internalBinaryWrite(message.resourceType, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n /* string endpoint = 4; */\n if (message.endpoint !== \"\")\n writer.tag(4, WireType.LengthDelimited).string(message.endpoint);\n let u = options.writeUnknownFields;\n if (u !== false)\n (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n return writer;\n }\n}\n/**\n * @generated MessageType for protobuf message MiLaboratories.PL.API.ResourceAPIFeature\n */\nexport const ResourceAPIFeature = new ResourceAPIFeature$Type();\n"],"mappings":"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"}
|