# Code generated by Lark OpenAPI. from typing import Any, Optional, Union, Dict, List, Set, IO, Callable, Type from lark_oapi.core.construct import init from .i18n import I18n from .i18n import I18n from .permission_collection import PermissionCollection from .permission_collection import PermissionCollection class RoleDetail(object): _types = { "id": str, "name": I18n, "description": I18n, "modify_time": str, "role_status": int, "role_type": int, "scope_of_application": int, "has_business_management_scope": bool, "socail_permission_collection": PermissionCollection, "campus_permission_collection": PermissionCollection, } def __init__(self, d=None): self.id: Optional[str] = None self.name: Optional[I18n] = None self.description: Optional[I18n] = None self.modify_time: Optional[str] = None self.role_status: Optional[int] = None self.role_type: Optional[int] = None self.scope_of_application: Optional[int] = None self.has_business_management_scope: Optional[bool] = None self.socail_permission_collection: Optional[PermissionCollection] = None self.campus_permission_collection: Optional[PermissionCollection] = None init(self, d, self._types) @staticmethod def builder() -> "RoleDetailBuilder": return RoleDetailBuilder() class RoleDetailBuilder(object): def __init__(self) -> None: self._role_detail = RoleDetail() def id(self, id: str) -> "RoleDetailBuilder": self._role_detail.id = id return self def name(self, name: I18n) -> "RoleDetailBuilder": self._role_detail.name = name return self def description(self, description: I18n) -> "RoleDetailBuilder": self._role_detail.description = description return self def modify_time(self, modify_time: str) -> "RoleDetailBuilder": self._role_detail.modify_time = modify_time return self def role_status(self, role_status: int) -> "RoleDetailBuilder": self._role_detail.role_status = role_status return self def role_type(self, role_type: int) -> "RoleDetailBuilder": self._role_detail.role_type = role_type return self def scope_of_application(self, scope_of_application: int) -> "RoleDetailBuilder": self._role_detail.scope_of_application = scope_of_application return self def has_business_management_scope(self, has_business_management_scope: bool) -> "RoleDetailBuilder": self._role_detail.has_business_management_scope = has_business_management_scope return self def socail_permission_collection(self, socail_permission_collection: PermissionCollection) -> "RoleDetailBuilder": self._role_detail.socail_permission_collection = socail_permission_collection return self def campus_permission_collection(self, campus_permission_collection: PermissionCollection) -> "RoleDetailBuilder": self._role_detail.campus_permission_collection = campus_permission_collection return self def build(self) -> "RoleDetail": return self._role_detail