# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: nebius/iam/v1/group_membership.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import builder as _builder
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from nebius.api.buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
from nebius.api.nebius import annotations_pb2 as nebius_dot_annotations__pb2
from nebius.api.nebius.common.v1 import metadata_pb2 as nebius_dot_common_dot_v1_dot_metadata__pb2
from nebius.api.nebius.iam.v1 import service_account_pb2 as nebius_dot_iam_dot_v1_dot_service__account__pb2
from nebius.api.nebius.iam.v1 import tenant_user_account_pb2 as nebius_dot_iam_dot_v1_dot_tenant__user__account__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$nebius/iam/v1/group_membership.proto\x12\rnebius.iam.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x18nebius/annotations.proto\x1a\x1fnebius/common/v1/metadata.proto\x1a#nebius/iam/v1/service_account.proto\x1a\'nebius/iam/v1/tenant_user_account.proto\"\xa2\x02\n\x0fGroupMembership\x12\x46\n\x08metadata\x18\x01 \x01(\x0b\x32\".nebius.common.v1.ResourceMetadataB\x06\xbaH\x03\xc8\x01\x01R\x08metadata\x12>\n\x04spec\x18\x02 \x01(\x0b\x32\".nebius.iam.v1.GroupMembershipSpecB\x06\xbaH\x03\xc8\x01\x01R\x04spec\x12\x42\n\x06status\x18\x03 \x01(\x0b\x32$.nebius.iam.v1.GroupMembershipStatusB\x04\xbaJ\x01\x05R\x06status\x12=\n\trevoke_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x04\xbaJ\x01\x05R\x08revokeAt:\x04\xbaJ\x01\x02\"8\n\x13GroupMembershipSpec\x12!\n\tmember_id\x18\x01 \x01(\tB\x04\xbaJ\x01\x02R\x08memberId\"\xf2\x01\n\x15GroupMembershipStatus\x12\x65\n\x1atenant_user_account_status\x18\x01 \x01(\x0b\x32&.nebius.iam.v1.TenantUserAccountStatusH\x00R\x17tenantUserAccountStatus\x12[\n\x16service_account_status\x18\x02 \x01(\x0b\x32#.nebius.iam.v1.ServiceAccountStatusH\x00R\x14serviceAccountStatusB\x15\n\x13group_member_status\"\xc0\x01\n\x0fGroupMemberKind\x12\x37\n\x04kind\x18\x01 \x01(\x0e\x32#.nebius.iam.v1.GroupMemberKind.KindR\x04kind\"t\n\x04Kind\x12\x14\n\x10KIND_UNSPECIFIED\x10\x00\x12 \n\x1cORDINARY_TENANT_USER_ACCOUNT\x10\x01\x12\x1f\n\x1bINVITED_TENANT_USER_ACCOUNT\x10\x02\x12\x13\n\x0fSERVICE_ACCOUNT\x10\x03\"\xad\x03\n\x1dGroupMembershipWithAttributes\x12I\n\x10group_membership\x18\x01 \x01(\x0b\x32\x1e.nebius.iam.v1.GroupMembershipR\x0fgroupMembership\x12J\n\x11group_member_kind\x18\x0b \x01(\x0b\x32\x1e.nebius.iam.v1.GroupMemberKindR\x0fgroupMemberKind\x12H\n\x0fuser_attributes\x18\x02 \x01(\x0b\x32\x1d.nebius.iam.v1.UserAttributesH\x00R\x0euserAttributes\x12g\n\x1aservice_account_attributes\x18\x03 \x01(\x0b\x32\'.nebius.iam.v1.ServiceAccountAttributesH\x00R\x18serviceAccountAttributes\x12,\n\x05\x65rror\x18\x63 \x01(\x0b\x32\x14.nebius.iam.v1.ErrorH\x00R\x05\x65rrorB\x14\n\x12\x61ttributesOptionalB[\n\x14\x61i.nebius.pub.iam.v1B\x14GroupMembershipProtoP\x01Z+github.com/nebius/gosdk/proto/nebius/iam/v1b\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'nebius.iam.v1.group_membership_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:

  DESCRIPTOR._options = None
  DESCRIPTOR._serialized_options = b'\n\024ai.nebius.pub.iam.v1B\024GroupMembershipProtoP\001Z+github.com/nebius/gosdk/proto/nebius/iam/v1'
  _GROUPMEMBERSHIP.fields_by_name['metadata']._options = None
  _GROUPMEMBERSHIP.fields_by_name['metadata']._serialized_options = b'\272H\003\310\001\001'
  _GROUPMEMBERSHIP.fields_by_name['spec']._options = None
  _GROUPMEMBERSHIP.fields_by_name['spec']._serialized_options = b'\272H\003\310\001\001'
  _GROUPMEMBERSHIP.fields_by_name['status']._options = None
  _GROUPMEMBERSHIP.fields_by_name['status']._serialized_options = b'\272J\001\005'
  _GROUPMEMBERSHIP.fields_by_name['revoke_at']._options = None
  _GROUPMEMBERSHIP.fields_by_name['revoke_at']._serialized_options = b'\272J\001\005'
  _GROUPMEMBERSHIP._options = None
  _GROUPMEMBERSHIP._serialized_options = b'\272J\001\002'
  _GROUPMEMBERSHIPSPEC.fields_by_name['member_id']._options = None
  _GROUPMEMBERSHIPSPEC.fields_by_name['member_id']._serialized_options = b'\272J\001\002'
  _globals['_GROUPMEMBERSHIP']._serialized_start=255
  _globals['_GROUPMEMBERSHIP']._serialized_end=545
  _globals['_GROUPMEMBERSHIPSPEC']._serialized_start=547
  _globals['_GROUPMEMBERSHIPSPEC']._serialized_end=603
  _globals['_GROUPMEMBERSHIPSTATUS']._serialized_start=606
  _globals['_GROUPMEMBERSHIPSTATUS']._serialized_end=848
  _globals['_GROUPMEMBERKIND']._serialized_start=851
  _globals['_GROUPMEMBERKIND']._serialized_end=1043
  _globals['_GROUPMEMBERKIND_KIND']._serialized_start=927
  _globals['_GROUPMEMBERKIND_KIND']._serialized_end=1043
  _globals['_GROUPMEMBERSHIPWITHATTRIBUTES']._serialized_start=1046
  _globals['_GROUPMEMBERSHIPWITHATTRIBUTES']._serialized_end=1475
# @@protoc_insertion_point(module_scope)
