46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
![]() |
# 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 .department import Department
|
||
|
from .user import User
|
||
|
from .user_group import UserGroup
|
||
|
|
||
|
|
||
|
class Scope(object):
|
||
|
_types = {
|
||
|
"departments": List[Department],
|
||
|
"users": List[User],
|
||
|
"user_groups": List[UserGroup],
|
||
|
}
|
||
|
|
||
|
def __init__(self, d=None):
|
||
|
self.departments: Optional[List[Department]] = None
|
||
|
self.users: Optional[List[User]] = None
|
||
|
self.user_groups: Optional[List[UserGroup]] = None
|
||
|
init(self, d, self._types)
|
||
|
|
||
|
@staticmethod
|
||
|
def builder() -> "ScopeBuilder":
|
||
|
return ScopeBuilder()
|
||
|
|
||
|
|
||
|
class ScopeBuilder(object):
|
||
|
def __init__(self) -> None:
|
||
|
self._scope = Scope()
|
||
|
|
||
|
def departments(self, departments: List[Department]) -> "ScopeBuilder":
|
||
|
self._scope.departments = departments
|
||
|
return self
|
||
|
|
||
|
def users(self, users: List[User]) -> "ScopeBuilder":
|
||
|
self._scope.users = users
|
||
|
return self
|
||
|
|
||
|
def user_groups(self, user_groups: List[UserGroup]) -> "ScopeBuilder":
|
||
|
self._scope.user_groups = user_groups
|
||
|
return self
|
||
|
|
||
|
def build(self) -> "Scope":
|
||
|
return self._scope
|