# 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 .approval_task import ApprovalTask from .approval_comment import ApprovalComment class ApprovalInstance(object): _types = { "id": str, "label": Dict[str, str], "initiator": str, "instance_start_time": str, "status": str, "tasks": List[ApprovalTask], "comments": List[ApprovalComment], "api_id": str, } def __init__(self, d=None): self.id: Optional[str] = None self.label: Optional[Dict[str, str]] = None self.initiator: Optional[str] = None self.instance_start_time: Optional[str] = None self.status: Optional[str] = None self.tasks: Optional[List[ApprovalTask]] = None self.comments: Optional[List[ApprovalComment]] = None self.api_id: Optional[str] = None init(self, d, self._types) @staticmethod def builder() -> "ApprovalInstanceBuilder": return ApprovalInstanceBuilder() class ApprovalInstanceBuilder(object): def __init__(self) -> None: self._approval_instance = ApprovalInstance() def id(self, id: str) -> "ApprovalInstanceBuilder": self._approval_instance.id = id return self def label(self, label: Dict[str, str]) -> "ApprovalInstanceBuilder": self._approval_instance.label = label return self def initiator(self, initiator: str) -> "ApprovalInstanceBuilder": self._approval_instance.initiator = initiator return self def instance_start_time(self, instance_start_time: str) -> "ApprovalInstanceBuilder": self._approval_instance.instance_start_time = instance_start_time return self def status(self, status: str) -> "ApprovalInstanceBuilder": self._approval_instance.status = status return self def tasks(self, tasks: List[ApprovalTask]) -> "ApprovalInstanceBuilder": self._approval_instance.tasks = tasks return self def comments(self, comments: List[ApprovalComment]) -> "ApprovalInstanceBuilder": self._approval_instance.comments = comments return self def api_id(self, api_id: str) -> "ApprovalInstanceBuilder": self._approval_instance.api_id = api_id return self def build(self) -> "ApprovalInstance": return self._approval_instance