# 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 .todo_common import TodoCommon from .todo_common import TodoCommon from .todo_common import TodoCommon from .todo_common import TodoCommon class Todo(object): _types = { "evaluation": TodoCommon, "offer": TodoCommon, "exam": TodoCommon, "interview": TodoCommon, } def __init__(self, d=None): self.evaluation: Optional[TodoCommon] = None self.offer: Optional[TodoCommon] = None self.exam: Optional[TodoCommon] = None self.interview: Optional[TodoCommon] = None init(self, d, self._types) @staticmethod def builder() -> "TodoBuilder": return TodoBuilder() class TodoBuilder(object): def __init__(self) -> None: self._todo = Todo() def evaluation(self, evaluation: TodoCommon) -> "TodoBuilder": self._todo.evaluation = evaluation return self def offer(self, offer: TodoCommon) -> "TodoBuilder": self._todo.offer = offer return self def exam(self, exam: TodoCommon) -> "TodoBuilder": self._todo.exam = exam return self def interview(self, interview: TodoCommon) -> "TodoBuilder": self._todo.interview = interview return self def build(self) -> "Todo": return self._todo