# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: chatto/admin/v1/permissions.proto
# Protobuf Python Version: 7.34.1
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import runtime_version as _runtime_version
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder
_runtime_version.ValidateProtobufRuntimeVersion(
    _runtime_version.Domain.PUBLIC,
    7,
    34,
    1,
    '',
    'chatto/admin/v1/permissions.proto'
)
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
from chatto.api.v1 import roles_pb2 as chatto_dot_api_dot_v1_dot_roles__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!chatto/admin/v1/permissions.proto\x12\x0f\x63hatto.admin.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x19\x63hatto/api/v1/roles.proto\"[\n\x0fPermissionScope\x12<\n\x04kind\x18\x01 \x01(\x0e\x32$.chatto.admin.v1.PermissionScopeKindB\x08\xbaH\x05\x82\x01\x02\x10\x01\x12\n\n\x02id\x18\x02 \x01(\t\"B\n\x0fTierPermissions\x12\x13\n\x0bpermissions\x18\x01 \x03(\t\x12\x1a\n\x12permission_denials\x18\x02 \x03(\t\"\xd7\x01\n\x08TierRole\x12\x32\n\x08override\x18\x06 \x01(\x0b\x32 .chatto.admin.v1.TierPermissions\x12\x18\n\x10inherited_allows\x18\x07 \x03(\t\x12\x19\n\x11inherited_denials\x18\x08 \x03(\t\x12!\n\x04role\x18\t \x01(\x0b\x32\x13.chatto.api.v1.RoleJ\x04\x08\x01\x10\x06R\trole_nameR\x0c\x64isplay_nameR\x0b\x64\x65scriptionR\tis_systemR\x08position\"U\n\tTierRoles\x12\x1e\n\x16\x61pplicable_permissions\x18\x01 \x03(\t\x12(\n\x05roles\x18\x02 \x03(\x0b\x32\x19.chatto.admin.v1.TierRole\"U\n\"GetRolePermissionTierMatrixRequest\x12/\n\x05scope\x18\x01 \x01(\x0b\x32 .chatto.admin.v1.PermissionScope\"Q\n#GetRolePermissionTierMatrixResponse\x12*\n\x06matrix\x18\x01 \x01(\x0b\x32\x1a.chatto.admin.v1.TierRoles\"\x7f\n\x15PermissionMatrixScope\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x32\n\x04kind\x18\x03 \x01(\x0e\x32$.chatto.admin.v1.PermissionScopeKind\x12\x17\n\x0fparent_group_id\x18\x04 \x01(\t\"\xab\x01\n\x14PermissionMatrixCell\x12\x12\n\npermission\x18\x01 \x01(\t\x12\x10\n\x08scope_id\x18\x02 \x01(\t\x12\x35\n\x08override\x18\x03 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\x12\x36\n\teffective\x18\x04 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\"\xb7\x01\n\x14RolePermissionMatrix\x12\x11\n\trole_name\x18\x01 \x01(\t\x12\x1e\n\x16\x61pplicable_permissions\x18\x02 \x03(\t\x12\x36\n\x06scopes\x18\x03 \x03(\x0b\x32&.chatto.admin.v1.PermissionMatrixScope\x12\x34\n\x05\x63\x65lls\x18\x04 \x03(\x0b\x32%.chatto.admin.v1.PermissionMatrixCell\"<\n\x1eGetRolePermissionMatrixRequest\x12\x1a\n\trole_name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\"X\n\x1fGetRolePermissionMatrixResponse\x12\x35\n\x06matrix\x18\x01 \x01(\x0b\x32%.chatto.admin.v1.RolePermissionMatrix\"\xb5\x01\n\x14UserPermissionMatrix\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12\x1e\n\x16\x61pplicable_permissions\x18\x02 \x03(\t\x12\x36\n\x06scopes\x18\x03 \x03(\x0b\x32&.chatto.admin.v1.PermissionMatrixScope\x12\x34\n\x05\x63\x65lls\x18\x04 \x03(\x0b\x32%.chatto.admin.v1.PermissionMatrixCell\"\xce\x01\n\x18ScopedPermissionDecision\x12\x12\n\npermission\x18\x01 \x01(\t\x12/\n\x05scope\x18\x02 \x01(\x0b\x32 .chatto.admin.v1.PermissionScope\x12\x35\n\x08override\x18\x03 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\x12\x36\n\teffective\x18\x04 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\"\x96\x01\n\x18PermissionDecisionUpdate\x12\x12\n\npermission\x18\x01 \x01(\t\x12/\n\x05scope\x18\x02 \x01(\x0b\x32 .chatto.admin.v1.PermissionScope\x12\x35\n\x08\x64\x65\x63ision\x18\x03 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\"@\n\"ListRolePermissionDecisionsRequest\x12\x1a\n\trole_name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\"v\n#ListRolePermissionDecisionsResponse\x12\x11\n\trole_name\x18\x01 \x01(\t\x12<\n\tdecisions\x18\x02 \x03(\x0b\x32).chatto.admin.v1.ScopedPermissionDecision\">\n\"ListUserPermissionDecisionsRequest\x12\x18\n\x07user_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\"t\n#ListUserPermissionDecisionsResponse\x12\x0f\n\x07user_id\x18\x01 \x01(\t\x12<\n\tdecisions\x18\x02 \x03(\x0b\x32).chatto.admin.v1.ScopedPermissionDecision\"\xaa\x01\n\x14PermissionTraceEntry\x12\x37\n\x05level\x18\x01 \x01(\x0e\x32(.chatto.admin.v1.PermissionDecisionLevel\x12\x11\n\trole_name\x18\x02 \x01(\t\x12\x35\n\x08\x64\x65\x63ision\x18\x03 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\x12\x0f\n\x07\x61pplied\x18\x04 \x01(\x08\"\xec\x01\n\x15PermissionExplanation\x12\x12\n\npermission\x18\x01 \x01(\t\x12\x32\n\x05state\x18\x02 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecision\x12<\n\ndecided_at\x18\x03 \x01(\x0e\x32(.chatto.admin.v1.PermissionDecisionLevel\x12\x17\n\x0f\x64\x65\x63ided_by_role\x18\x04 \x01(\t\x12\x34\n\x05trace\x18\x05 \x03(\x0b\x32%.chatto.admin.v1.PermissionTraceEntry\"F\n\x19\x45xplainPermissionsRequest\x12\x18\n\x07user_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\x12\x0f\n\x07room_id\x18\x02 \x01(\t\"Z\n\x1a\x45xplainPermissionsResponse\x12<\n\x0c\x65xplanations\x18\x01 \x03(\x0b\x32&.chatto.admin.v1.PermissionExplanation\":\n\x1eGetUserPermissionMatrixRequest\x12\x18\n\x07user_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\"X\n\x1fGetUserPermissionMatrixResponse\x12\x35\n\x06matrix\x18\x01 \x01(\x0b\x32%.chatto.admin.v1.UserPermissionMatrix\"\xc7\x01\n\x18SetRolePermissionRequest\x12\x1a\n\trole_name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\x12\x1b\n\npermission\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\x12\x41\n\x08\x64\x65\x63ision\x18\x03 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecisionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00\x12/\n\x05scope\x18\x04 \x01(\x0b\x32 .chatto.admin.v1.PermissionScope\"X\n\x19SetRolePermissionResponse\x12;\n\x08\x64\x65\x63ision\x18\x01 \x01(\x0b\x32).chatto.admin.v1.PermissionDecisionUpdate\"\xc5\x01\n\x18SetUserPermissionRequest\x12\x18\n\x07user_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\x12\x1b\n\npermission\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01\x12\x41\n\x08\x64\x65\x63ision\x18\x03 \x01(\x0e\x32#.chatto.admin.v1.PermissionDecisionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00\x12/\n\x05scope\x18\x04 \x01(\x0b\x32 .chatto.admin.v1.PermissionScope\"X\n\x19SetUserPermissionResponse\x12;\n\x08\x64\x65\x63ision\x18\x01 \x01(\x0b\x32).chatto.admin.v1.PermissionDecisionUpdate*\x94\x01\n\x12PermissionDecision\x12#\n\x1fPERMISSION_DECISION_UNSPECIFIED\x10\x00\x12\x1d\n\x19PERMISSION_DECISION_ALLOW\x10\x01\x12\x1c\n\x18PERMISSION_DECISION_DENY\x10\x02\x12\x1c\n\x18PERMISSION_DECISION_NONE\x10\x03*\x9f\x01\n\x13PermissionScopeKind\x12%\n!PERMISSION_SCOPE_KIND_UNSPECIFIED\x10\x00\x12 \n\x1cPERMISSION_SCOPE_KIND_SERVER\x10\x01\x12\x1f\n\x1bPERMISSION_SCOPE_KIND_GROUP\x10\x02\x12\x1e\n\x1aPERMISSION_SCOPE_KIND_ROOM\x10\x03*\xb3\x01\n\x17PermissionDecisionLevel\x12)\n%PERMISSION_DECISION_LEVEL_UNSPECIFIED\x10\x00\x12$\n PERMISSION_DECISION_LEVEL_SERVER\x10\x01\x12#\n\x1fPERMISSION_DECISION_LEVEL_GROUP\x10\x02\x12\"\n\x1ePERMISSION_DECISION_LEVEL_ROOM\x10\x03\x32\xfc\x07\n\x16\x41\x64minPermissionService\x12\x88\x01\n\x1bGetRolePermissionTierMatrix\x12\x33.chatto.admin.v1.GetRolePermissionTierMatrixRequest\x1a\x34.chatto.admin.v1.GetRolePermissionTierMatrixResponse\x12|\n\x17GetRolePermissionMatrix\x12/.chatto.admin.v1.GetRolePermissionMatrixRequest\x1a\x30.chatto.admin.v1.GetRolePermissionMatrixResponse\x12\x88\x01\n\x1bListRolePermissionDecisions\x12\x33.chatto.admin.v1.ListRolePermissionDecisionsRequest\x1a\x34.chatto.admin.v1.ListRolePermissionDecisionsResponse\x12|\n\x17GetUserPermissionMatrix\x12/.chatto.admin.v1.GetUserPermissionMatrixRequest\x1a\x30.chatto.admin.v1.GetUserPermissionMatrixResponse\x12\x88\x01\n\x1bListUserPermissionDecisions\x12\x33.chatto.admin.v1.ListUserPermissionDecisionsRequest\x1a\x34.chatto.admin.v1.ListUserPermissionDecisionsResponse\x12m\n\x12\x45xplainPermissions\x12*.chatto.admin.v1.ExplainPermissionsRequest\x1a+.chatto.admin.v1.ExplainPermissionsResponse\x12j\n\x11SetRolePermission\x12).chatto.admin.v1.SetRolePermissionRequest\x1a*.chatto.admin.v1.SetRolePermissionResponse\x12j\n\x11SetUserPermission\x12).chatto.admin.v1.SetUserPermissionRequest\x1a*.chatto.admin.v1.SetUserPermissionResponseb\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'chatto.admin.v1.permissions_pb2', _globals)
if not _descriptor._USE_C_DESCRIPTORS:
  DESCRIPTOR._loaded_options = None
  _globals['_PERMISSIONSCOPE'].fields_by_name['kind']._loaded_options = None
  _globals['_PERMISSIONSCOPE'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001'
  _globals['_GETROLEPERMISSIONMATRIXREQUEST'].fields_by_name['role_name']._loaded_options = None
  _globals['_GETROLEPERMISSIONMATRIXREQUEST'].fields_by_name['role_name']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_LISTROLEPERMISSIONDECISIONSREQUEST'].fields_by_name['role_name']._loaded_options = None
  _globals['_LISTROLEPERMISSIONDECISIONSREQUEST'].fields_by_name['role_name']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_LISTUSERPERMISSIONDECISIONSREQUEST'].fields_by_name['user_id']._loaded_options = None
  _globals['_LISTUSERPERMISSIONDECISIONSREQUEST'].fields_by_name['user_id']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_EXPLAINPERMISSIONSREQUEST'].fields_by_name['user_id']._loaded_options = None
  _globals['_EXPLAINPERMISSIONSREQUEST'].fields_by_name['user_id']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_GETUSERPERMISSIONMATRIXREQUEST'].fields_by_name['user_id']._loaded_options = None
  _globals['_GETUSERPERMISSIONMATRIXREQUEST'].fields_by_name['user_id']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_SETROLEPERMISSIONREQUEST'].fields_by_name['role_name']._loaded_options = None
  _globals['_SETROLEPERMISSIONREQUEST'].fields_by_name['role_name']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_SETROLEPERMISSIONREQUEST'].fields_by_name['permission']._loaded_options = None
  _globals['_SETROLEPERMISSIONREQUEST'].fields_by_name['permission']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_SETROLEPERMISSIONREQUEST'].fields_by_name['decision']._loaded_options = None
  _globals['_SETROLEPERMISSIONREQUEST'].fields_by_name['decision']._serialized_options = b'\272H\007\202\001\004\020\001 \000'
  _globals['_SETUSERPERMISSIONREQUEST'].fields_by_name['user_id']._loaded_options = None
  _globals['_SETUSERPERMISSIONREQUEST'].fields_by_name['user_id']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_SETUSERPERMISSIONREQUEST'].fields_by_name['permission']._loaded_options = None
  _globals['_SETUSERPERMISSIONREQUEST'].fields_by_name['permission']._serialized_options = b'\272H\004r\002\020\001'
  _globals['_SETUSERPERMISSIONREQUEST'].fields_by_name['decision']._loaded_options = None
  _globals['_SETUSERPERMISSIONREQUEST'].fields_by_name['decision']._serialized_options = b'\272H\007\202\001\004\020\001 \000'
  _globals['_PERMISSIONDECISION']._serialized_start=3610
  _globals['_PERMISSIONDECISION']._serialized_end=3758
  _globals['_PERMISSIONSCOPEKIND']._serialized_start=3761
  _globals['_PERMISSIONSCOPEKIND']._serialized_end=3920
  _globals['_PERMISSIONDECISIONLEVEL']._serialized_start=3923
  _globals['_PERMISSIONDECISIONLEVEL']._serialized_end=4102
  _globals['_PERMISSIONSCOPE']._serialized_start=110
  _globals['_PERMISSIONSCOPE']._serialized_end=201
  _globals['_TIERPERMISSIONS']._serialized_start=203
  _globals['_TIERPERMISSIONS']._serialized_end=269
  _globals['_TIERROLE']._serialized_start=272
  _globals['_TIERROLE']._serialized_end=487
  _globals['_TIERROLES']._serialized_start=489
  _globals['_TIERROLES']._serialized_end=574
  _globals['_GETROLEPERMISSIONTIERMATRIXREQUEST']._serialized_start=576
  _globals['_GETROLEPERMISSIONTIERMATRIXREQUEST']._serialized_end=661
  _globals['_GETROLEPERMISSIONTIERMATRIXRESPONSE']._serialized_start=663
  _globals['_GETROLEPERMISSIONTIERMATRIXRESPONSE']._serialized_end=744
  _globals['_PERMISSIONMATRIXSCOPE']._serialized_start=746
  _globals['_PERMISSIONMATRIXSCOPE']._serialized_end=873
  _globals['_PERMISSIONMATRIXCELL']._serialized_start=876
  _globals['_PERMISSIONMATRIXCELL']._serialized_end=1047
  _globals['_ROLEPERMISSIONMATRIX']._serialized_start=1050
  _globals['_ROLEPERMISSIONMATRIX']._serialized_end=1233
  _globals['_GETROLEPERMISSIONMATRIXREQUEST']._serialized_start=1235
  _globals['_GETROLEPERMISSIONMATRIXREQUEST']._serialized_end=1295
  _globals['_GETROLEPERMISSIONMATRIXRESPONSE']._serialized_start=1297
  _globals['_GETROLEPERMISSIONMATRIXRESPONSE']._serialized_end=1385
  _globals['_USERPERMISSIONMATRIX']._serialized_start=1388
  _globals['_USERPERMISSIONMATRIX']._serialized_end=1569
  _globals['_SCOPEDPERMISSIONDECISION']._serialized_start=1572
  _globals['_SCOPEDPERMISSIONDECISION']._serialized_end=1778
  _globals['_PERMISSIONDECISIONUPDATE']._serialized_start=1781
  _globals['_PERMISSIONDECISIONUPDATE']._serialized_end=1931
  _globals['_LISTROLEPERMISSIONDECISIONSREQUEST']._serialized_start=1933
  _globals['_LISTROLEPERMISSIONDECISIONSREQUEST']._serialized_end=1997
  _globals['_LISTROLEPERMISSIONDECISIONSRESPONSE']._serialized_start=1999
  _globals['_LISTROLEPERMISSIONDECISIONSRESPONSE']._serialized_end=2117
  _globals['_LISTUSERPERMISSIONDECISIONSREQUEST']._serialized_start=2119
  _globals['_LISTUSERPERMISSIONDECISIONSREQUEST']._serialized_end=2181
  _globals['_LISTUSERPERMISSIONDECISIONSRESPONSE']._serialized_start=2183
  _globals['_LISTUSERPERMISSIONDECISIONSRESPONSE']._serialized_end=2299
  _globals['_PERMISSIONTRACEENTRY']._serialized_start=2302
  _globals['_PERMISSIONTRACEENTRY']._serialized_end=2472
  _globals['_PERMISSIONEXPLANATION']._serialized_start=2475
  _globals['_PERMISSIONEXPLANATION']._serialized_end=2711
  _globals['_EXPLAINPERMISSIONSREQUEST']._serialized_start=2713
  _globals['_EXPLAINPERMISSIONSREQUEST']._serialized_end=2783
  _globals['_EXPLAINPERMISSIONSRESPONSE']._serialized_start=2785
  _globals['_EXPLAINPERMISSIONSRESPONSE']._serialized_end=2875
  _globals['_GETUSERPERMISSIONMATRIXREQUEST']._serialized_start=2877
  _globals['_GETUSERPERMISSIONMATRIXREQUEST']._serialized_end=2935
  _globals['_GETUSERPERMISSIONMATRIXRESPONSE']._serialized_start=2937
  _globals['_GETUSERPERMISSIONMATRIXRESPONSE']._serialized_end=3025
  _globals['_SETROLEPERMISSIONREQUEST']._serialized_start=3028
  _globals['_SETROLEPERMISSIONREQUEST']._serialized_end=3227
  _globals['_SETROLEPERMISSIONRESPONSE']._serialized_start=3229
  _globals['_SETROLEPERMISSIONRESPONSE']._serialized_end=3317
  _globals['_SETUSERPERMISSIONREQUEST']._serialized_start=3320
  _globals['_SETUSERPERMISSIONREQUEST']._serialized_end=3517
  _globals['_SETUSERPERMISSIONRESPONSE']._serialized_start=3519
  _globals['_SETUSERPERMISSIONRESPONSE']._serialized_end=3607
  _globals['_ADMINPERMISSIONSERVICE']._serialized_start=4105
  _globals['_ADMINPERMISSIONSERVICE']._serialized_end=5125
# @@protoc_insertion_point(module_scope)
