UNPKG

@cerbos/grpc

Version:

Client library for interacting with the Cerbos policy decision point service over gRPC from server-side Node.js applications

1,409 lines (1,408 loc) 65.7 kB
"use strict"; // Code generated by protoc-gen-ts_proto. DO NOT EDIT. // source: cerbos/policy/v1/policy.proto Object.defineProperty(exports, "__esModule", { value: true }); exports.Schemas_Schema = exports.Schemas_IgnoreWhen = exports.Schemas = exports.Output_When = exports.Output = exports.Match_ExprList = exports.Match = exports.Condition = exports.Variables_LocalEntry = exports.Variables = exports.ExportVariables_DefinitionsEntry = exports.ExportVariables = exports.Constants_LocalEntry = exports.Constants = exports.ExportConstants_DefinitionsEntry = exports.ExportConstants = exports.RoleDef = exports.DerivedRoles = exports.PrincipalRule_Action = exports.PrincipalRule = exports.PrincipalPolicy = exports.RoleRule = exports.RolePolicy = exports.ResourceRule = exports.ResourcePolicy = exports.Metadata_AnnotationsEntry = exports.Metadata = exports.SourceAttributes_AttributesEntry = exports.SourceAttributes = exports.Policy_VariablesEntry = exports.Policy = exports.ScopePermissions = exports.protobufPackage = void 0; /* eslint-disable */ const wire_1 = require("@bufbuild/protobuf/wire"); const struct_1 = require("../../../google/protobuf/struct"); const wrappers_1 = require("../../../google/protobuf/wrappers"); exports.protobufPackage = "cerbos.policy.v1"; var ScopePermissions; (function (ScopePermissions) { ScopePermissions[ScopePermissions["SCOPE_PERMISSIONS_UNSPECIFIED"] = 0] = "SCOPE_PERMISSIONS_UNSPECIFIED"; ScopePermissions[ScopePermissions["SCOPE_PERMISSIONS_OVERRIDE_PARENT"] = 1] = "SCOPE_PERMISSIONS_OVERRIDE_PARENT"; ScopePermissions[ScopePermissions["SCOPE_PERMISSIONS_REQUIRE_PARENTAL_CONSENT_FOR_ALLOWS"] = 2] = "SCOPE_PERMISSIONS_REQUIRE_PARENTAL_CONSENT_FOR_ALLOWS"; })(ScopePermissions || (exports.ScopePermissions = ScopePermissions = {})); function createBasePolicy() { return { apiVersion: "", disabled: false, description: "", metadata: undefined, policyType: undefined, variables: {}, jsonSchema: "", }; } exports.Policy = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.apiVersion !== "") { writer.uint32(10).string(message.apiVersion); } if (message.disabled !== false) { writer.uint32(16).bool(message.disabled); } if (message.description !== "") { writer.uint32(26).string(message.description); } if (message.metadata !== undefined) { exports.Metadata.encode(message.metadata, writer.uint32(34).fork()).join(); } switch (message.policyType?.$case) { case "resourcePolicy": exports.ResourcePolicy.encode(message.policyType.resourcePolicy, writer.uint32(42).fork()).join(); break; case "principalPolicy": exports.PrincipalPolicy.encode(message.policyType.principalPolicy, writer.uint32(50).fork()).join(); break; case "derivedRoles": exports.DerivedRoles.encode(message.policyType.derivedRoles, writer.uint32(58).fork()).join(); break; case "exportVariables": exports.ExportVariables.encode(message.policyType.exportVariables, writer.uint32(82).fork()).join(); break; case "rolePolicy": exports.RolePolicy.encode(message.policyType.rolePolicy, writer.uint32(90).fork()).join(); break; case "exportConstants": exports.ExportConstants.encode(message.policyType.exportConstants, writer.uint32(98).fork()).join(); break; } Object.entries(message.variables).forEach(([key, value]) => { exports.Policy_VariablesEntry.encode({ key: key, value }, writer.uint32(66).fork()).join(); }); if (message.jsonSchema !== "") { writer.uint32(74).string(message.jsonSchema); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.apiVersion = reader.string(); continue; } case 2: { if (tag !== 16) { break; } message.disabled = reader.bool(); continue; } case 3: { if (tag !== 26) { break; } message.description = reader.string(); continue; } case 4: { if (tag !== 34) { break; } message.metadata = exports.Metadata.decode(reader, reader.uint32()); continue; } case 5: { if (tag !== 42) { break; } message.policyType = { $case: "resourcePolicy", resourcePolicy: exports.ResourcePolicy.decode(reader, reader.uint32()), }; continue; } case 6: { if (tag !== 50) { break; } message.policyType = { $case: "principalPolicy", principalPolicy: exports.PrincipalPolicy.decode(reader, reader.uint32()), }; continue; } case 7: { if (tag !== 58) { break; } message.policyType = { $case: "derivedRoles", derivedRoles: exports.DerivedRoles.decode(reader, reader.uint32()), }; continue; } case 10: { if (tag !== 82) { break; } message.policyType = { $case: "exportVariables", exportVariables: exports.ExportVariables.decode(reader, reader.uint32()), }; continue; } case 11: { if (tag !== 90) { break; } message.policyType = { $case: "rolePolicy", rolePolicy: exports.RolePolicy.decode(reader, reader.uint32()), }; continue; } case 12: { if (tag !== 98) { break; } message.policyType = { $case: "exportConstants", exportConstants: exports.ExportConstants.decode(reader, reader.uint32()), }; continue; } case 8: { if (tag !== 66) { break; } const entry8 = exports.Policy_VariablesEntry.decode(reader, reader.uint32()); if (entry8.value !== undefined) { message.variables[entry8.key] = entry8.value; } continue; } case 9: { if (tag !== 74) { break; } message.jsonSchema = reader.string(); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBasePolicy_VariablesEntry() { return { key: "", value: "" }; } exports.Policy_VariablesEntry = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== "") { writer.uint32(18).string(message.value); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePolicy_VariablesEntry(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.key = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.value = reader.string(); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseSourceAttributes() { return { attributes: {} }; } exports.SourceAttributes = { encode(message, writer = new wire_1.BinaryWriter()) { Object.entries(message.attributes).forEach(([key, value]) => { if (value !== undefined) { exports.SourceAttributes_AttributesEntry.encode({ key: key, value }, writer.uint32(10).fork()).join(); } }); return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseSourceAttributes(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } const entry1 = exports.SourceAttributes_AttributesEntry.decode(reader, reader.uint32()); if (entry1.value !== undefined) { message.attributes[entry1.key] = entry1.value; } continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseSourceAttributes_AttributesEntry() { return { key: "", value: undefined }; } exports.SourceAttributes_AttributesEntry = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== undefined) { struct_1.Value.encode(struct_1.Value.wrap(message.value), writer.uint32(18).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseSourceAttributes_AttributesEntry(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.key = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.value = struct_1.Value.unwrap(struct_1.Value.decode(reader, reader.uint32())); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseMetadata() { return { sourceFile: "", annotations: {}, hash: undefined, storeIdentifer: "", storeIdentifier: "", sourceAttributes: undefined, }; } exports.Metadata = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.sourceFile !== "") { writer.uint32(10).string(message.sourceFile); } Object.entries(message.annotations).forEach(([key, value]) => { exports.Metadata_AnnotationsEntry.encode({ key: key, value }, writer.uint32(18).fork()).join(); }); if (message.hash !== undefined) { wrappers_1.UInt64Value.encode({ value: message.hash }, writer.uint32(26).fork()).join(); } if (message.storeIdentifer !== "") { writer.uint32(34).string(message.storeIdentifer); } if (message.storeIdentifier !== "") { writer.uint32(42).string(message.storeIdentifier); } if (message.sourceAttributes !== undefined) { exports.SourceAttributes.encode(message.sourceAttributes, writer.uint32(50).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMetadata(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.sourceFile = reader.string(); continue; } case 2: { if (tag !== 18) { break; } const entry2 = exports.Metadata_AnnotationsEntry.decode(reader, reader.uint32()); if (entry2.value !== undefined) { message.annotations[entry2.key] = entry2.value; } continue; } case 3: { if (tag !== 26) { break; } message.hash = wrappers_1.UInt64Value.decode(reader, reader.uint32()).value; continue; } case 4: { if (tag !== 34) { break; } message.storeIdentifer = reader.string(); continue; } case 5: { if (tag !== 42) { break; } message.storeIdentifier = reader.string(); continue; } case 6: { if (tag !== 50) { break; } message.sourceAttributes = exports.SourceAttributes.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseMetadata_AnnotationsEntry() { return { key: "", value: "" }; } exports.Metadata_AnnotationsEntry = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== "") { writer.uint32(18).string(message.value); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMetadata_AnnotationsEntry(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.key = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.value = reader.string(); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseResourcePolicy() { return { resource: "", version: "", importDerivedRoles: [], rules: [], scope: "", schemas: undefined, variables: undefined, scopePermissions: 0, constants: undefined, }; } exports.ResourcePolicy = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.resource !== "") { writer.uint32(10).string(message.resource); } if (message.version !== "") { writer.uint32(18).string(message.version); } for (const v of message.importDerivedRoles) { writer.uint32(26).string(v); } for (const v of message.rules) { exports.ResourceRule.encode(v, writer.uint32(34).fork()).join(); } if (message.scope !== "") { writer.uint32(42).string(message.scope); } if (message.schemas !== undefined) { exports.Schemas.encode(message.schemas, writer.uint32(50).fork()).join(); } if (message.variables !== undefined) { exports.Variables.encode(message.variables, writer.uint32(58).fork()).join(); } if (message.scopePermissions !== 0) { writer.uint32(64).int32(message.scopePermissions); } if (message.constants !== undefined) { exports.Constants.encode(message.constants, writer.uint32(74).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseResourcePolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.resource = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.version = reader.string(); continue; } case 3: { if (tag !== 26) { break; } message.importDerivedRoles.push(reader.string()); continue; } case 4: { if (tag !== 34) { break; } message.rules.push(exports.ResourceRule.decode(reader, reader.uint32())); continue; } case 5: { if (tag !== 42) { break; } message.scope = reader.string(); continue; } case 6: { if (tag !== 50) { break; } message.schemas = exports.Schemas.decode(reader, reader.uint32()); continue; } case 7: { if (tag !== 58) { break; } message.variables = exports.Variables.decode(reader, reader.uint32()); continue; } case 8: { if (tag !== 64) { break; } message.scopePermissions = reader.int32(); continue; } case 9: { if (tag !== 74) { break; } message.constants = exports.Constants.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseResourceRule() { return { actions: [], derivedRoles: [], roles: [], condition: undefined, effect: 0, name: "", output: undefined, }; } exports.ResourceRule = { encode(message, writer = new wire_1.BinaryWriter()) { for (const v of message.actions) { writer.uint32(10).string(v); } for (const v of message.derivedRoles) { writer.uint32(18).string(v); } for (const v of message.roles) { writer.uint32(26).string(v); } if (message.condition !== undefined) { exports.Condition.encode(message.condition, writer.uint32(34).fork()).join(); } if (message.effect !== 0) { writer.uint32(40).int32(message.effect); } if (message.name !== "") { writer.uint32(50).string(message.name); } if (message.output !== undefined) { exports.Output.encode(message.output, writer.uint32(58).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseResourceRule(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.actions.push(reader.string()); continue; } case 2: { if (tag !== 18) { break; } message.derivedRoles.push(reader.string()); continue; } case 3: { if (tag !== 26) { break; } message.roles.push(reader.string()); continue; } case 4: { if (tag !== 34) { break; } message.condition = exports.Condition.decode(reader, reader.uint32()); continue; } case 5: { if (tag !== 40) { break; } message.effect = reader.int32(); continue; } case 6: { if (tag !== 50) { break; } message.name = reader.string(); continue; } case 7: { if (tag !== 58) { break; } message.output = exports.Output.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseRolePolicy() { return { policyType: undefined, parentRoles: [], scope: "", rules: [], scopePermissions: 0, }; } exports.RolePolicy = { encode(message, writer = new wire_1.BinaryWriter()) { switch (message.policyType?.$case) { case "role": writer.uint32(10).string(message.policyType.role); break; } for (const v of message.parentRoles) { writer.uint32(42).string(v); } if (message.scope !== "") { writer.uint32(18).string(message.scope); } for (const v of message.rules) { exports.RoleRule.encode(v, writer.uint32(26).fork()).join(); } if (message.scopePermissions !== 0) { writer.uint32(32).int32(message.scopePermissions); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRolePolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.policyType = { $case: "role", role: reader.string() }; continue; } case 5: { if (tag !== 42) { break; } message.parentRoles.push(reader.string()); continue; } case 2: { if (tag !== 18) { break; } message.scope = reader.string(); continue; } case 3: { if (tag !== 26) { break; } message.rules.push(exports.RoleRule.decode(reader, reader.uint32())); continue; } case 4: { if (tag !== 32) { break; } message.scopePermissions = reader.int32(); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseRoleRule() { return { resource: "", allowActions: [], condition: undefined }; } exports.RoleRule = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.resource !== "") { writer.uint32(10).string(message.resource); } for (const v of message.allowActions) { writer.uint32(18).string(v); } if (message.condition !== undefined) { exports.Condition.encode(message.condition, writer.uint32(26).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRoleRule(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.resource = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.allowActions.push(reader.string()); continue; } case 3: { if (tag !== 26) { break; } message.condition = exports.Condition.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBasePrincipalPolicy() { return { principal: "", version: "", rules: [], scope: "", variables: undefined, scopePermissions: 0, constants: undefined, }; } exports.PrincipalPolicy = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.principal !== "") { writer.uint32(10).string(message.principal); } if (message.version !== "") { writer.uint32(18).string(message.version); } for (const v of message.rules) { exports.PrincipalRule.encode(v, writer.uint32(26).fork()).join(); } if (message.scope !== "") { writer.uint32(34).string(message.scope); } if (message.variables !== undefined) { exports.Variables.encode(message.variables, writer.uint32(42).fork()).join(); } if (message.scopePermissions !== 0) { writer.uint32(48).int32(message.scopePermissions); } if (message.constants !== undefined) { exports.Constants.encode(message.constants, writer.uint32(58).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePrincipalPolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.principal = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.version = reader.string(); continue; } case 3: { if (tag !== 26) { break; } message.rules.push(exports.PrincipalRule.decode(reader, reader.uint32())); continue; } case 4: { if (tag !== 34) { break; } message.scope = reader.string(); continue; } case 5: { if (tag !== 42) { break; } message.variables = exports.Variables.decode(reader, reader.uint32()); continue; } case 6: { if (tag !== 48) { break; } message.scopePermissions = reader.int32(); continue; } case 7: { if (tag !== 58) { break; } message.constants = exports.Constants.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBasePrincipalRule() { return { resource: "", actions: [] }; } exports.PrincipalRule = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.resource !== "") { writer.uint32(10).string(message.resource); } for (const v of message.actions) { exports.PrincipalRule_Action.encode(v, writer.uint32(18).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePrincipalRule(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.resource = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.actions.push(exports.PrincipalRule_Action.decode(reader, reader.uint32())); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBasePrincipalRule_Action() { return { action: "", condition: undefined, effect: 0, name: "", output: undefined, }; } exports.PrincipalRule_Action = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.action !== "") { writer.uint32(10).string(message.action); } if (message.condition !== undefined) { exports.Condition.encode(message.condition, writer.uint32(18).fork()).join(); } if (message.effect !== 0) { writer.uint32(24).int32(message.effect); } if (message.name !== "") { writer.uint32(34).string(message.name); } if (message.output !== undefined) { exports.Output.encode(message.output, writer.uint32(42).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePrincipalRule_Action(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.action = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.condition = exports.Condition.decode(reader, reader.uint32()); continue; } case 3: { if (tag !== 24) { break; } message.effect = reader.int32(); continue; } case 4: { if (tag !== 34) { break; } message.name = reader.string(); continue; } case 5: { if (tag !== 42) { break; } message.output = exports.Output.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseDerivedRoles() { return { name: "", definitions: [], variables: undefined, constants: undefined, }; } exports.DerivedRoles = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.name !== "") { writer.uint32(10).string(message.name); } for (const v of message.definitions) { exports.RoleDef.encode(v, writer.uint32(18).fork()).join(); } if (message.variables !== undefined) { exports.Variables.encode(message.variables, writer.uint32(26).fork()).join(); } if (message.constants !== undefined) { exports.Constants.encode(message.constants, writer.uint32(34).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDerivedRoles(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.name = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.definitions.push(exports.RoleDef.decode(reader, reader.uint32())); continue; } case 3: { if (tag !== 26) { break; } message.variables = exports.Variables.decode(reader, reader.uint32()); continue; } case 4: { if (tag !== 34) { break; } message.constants = exports.Constants.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseRoleDef() { return { name: "", parentRoles: [], condition: undefined }; } exports.RoleDef = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.name !== "") { writer.uint32(10).string(message.name); } for (const v of message.parentRoles) { writer.uint32(18).string(v); } if (message.condition !== undefined) { exports.Condition.encode(message.condition, writer.uint32(26).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseRoleDef(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.name = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.parentRoles.push(reader.string()); continue; } case 3: { if (tag !== 26) { break; } message.condition = exports.Condition.decode(reader, reader.uint32()); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseExportConstants() { return { name: "", definitions: {} }; } exports.ExportConstants = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.name !== "") { writer.uint32(10).string(message.name); } Object.entries(message.definitions).forEach(([key, value]) => { if (value !== undefined) { exports.ExportConstants_DefinitionsEntry.encode({ key: key, value }, writer.uint32(18).fork()).join(); } }); return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseExportConstants(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.name = reader.string(); continue; } case 2: { if (tag !== 18) { break; } const entry2 = exports.ExportConstants_DefinitionsEntry.decode(reader, reader.uint32()); if (entry2.value !== undefined) { message.definitions[entry2.key] = entry2.value; } continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseExportConstants_DefinitionsEntry() { return { key: "", value: undefined }; } exports.ExportConstants_DefinitionsEntry = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== undefined) { struct_1.Value.encode(struct_1.Value.wrap(message.value), writer.uint32(18).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseExportConstants_DefinitionsEntry(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.key = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.value = struct_1.Value.unwrap(struct_1.Value.decode(reader, reader.uint32())); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseConstants() { return { import: [], local: {} }; } exports.Constants = { encode(message, writer = new wire_1.BinaryWriter()) { for (const v of message.import) { writer.uint32(10).string(v); } Object.entries(message.local).forEach(([key, value]) => { if (value !== undefined) { exports.Constants_LocalEntry.encode({ key: key, value }, writer.uint32(18).fork()).join(); } }); return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConstants(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.import.push(reader.string()); continue; } case 2: { if (tag !== 18) { break; } const entry2 = exports.Constants_LocalEntry.decode(reader, reader.uint32()); if (entry2.value !== undefined) { message.local[entry2.key] = entry2.value; } continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseConstants_LocalEntry() { return { key: "", value: undefined }; } exports.Constants_LocalEntry = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== undefined) { struct_1.Value.encode(struct_1.Value.wrap(message.value), writer.uint32(18).fork()).join(); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseConstants_LocalEntry(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.key = reader.string(); continue; } case 2: { if (tag !== 18) { break; } message.value = struct_1.Value.unwrap(struct_1.Value.decode(reader, reader.uint32())); continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseExportVariables() { return { name: "", definitions: {} }; } exports.ExportVariables = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.name !== "") { writer.uint32(10).string(message.name); } Object.entries(message.definitions).forEach(([key, value]) => { exports.ExportVariables_DefinitionsEntry.encode({ key: key, value }, writer.uint32(18).fork()).join(); }); return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseExportVariables(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.name = reader.string(); continue; } case 2: { if (tag !== 18) { break; } const entry2 = exports.ExportVariables_DefinitionsEntry.decode(reader, reader.uint32()); if (entry2.value !== undefined) { message.definitions[entry2.key] = entry2.value; } continue; } } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, }; function createBaseExportVariables_DefinitionsEntry() { return { key: "", value: "" }; } exports.ExportVariables_DefinitionsEntry = { encode(message, writer = new wire_1.BinaryWriter()) { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.value !== "") { writer.uint32(18).string(message.value); } return writer; }, decode(input, length) { const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseExportVariables_DefinitionsEntry(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: { if (tag !== 10) { break; } message.key = reader.string(); continue; } case 2: {