# 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 .resume_education import ResumeEducation from .resume_career import ResumeCareer from .resume_project import ResumeProject from .resume_language import ResumeLanguage from .resume_award import ResumeAward from .resume_certificate import ResumeCertificate from .resume_competition import ResumeCompetition class Resume(object): _types = { "file_md5": str, "content": str, "new_content": str, "name": str, "email": str, "mobile": str, "mobile_is_virtual": bool, "country_code": str, "educations": List[ResumeEducation], "careers": List[ResumeCareer], "projects": List[ResumeProject], "work_year": int, "date_of_birth": str, "gender": int, "willing_positions": List[str], "current_location": str, "willing_locations": List[str], "home_location": str, "languages": List[ResumeLanguage], "awards": List[ResumeAward], "certificates": List[ResumeCertificate], "competitions": List[ResumeCompetition], "self_evaluation": str, "urls": List[str], "social_links": List[str], } def __init__(self, d=None): self.file_md5: Optional[str] = None self.content: Optional[str] = None self.new_content: Optional[str] = None self.name: Optional[str] = None self.email: Optional[str] = None self.mobile: Optional[str] = None self.mobile_is_virtual: Optional[bool] = None self.country_code: Optional[str] = None self.educations: Optional[List[ResumeEducation]] = None self.careers: Optional[List[ResumeCareer]] = None self.projects: Optional[List[ResumeProject]] = None self.work_year: Optional[int] = None self.date_of_birth: Optional[str] = None self.gender: Optional[int] = None self.willing_positions: Optional[List[str]] = None self.current_location: Optional[str] = None self.willing_locations: Optional[List[str]] = None self.home_location: Optional[str] = None self.languages: Optional[List[ResumeLanguage]] = None self.awards: Optional[List[ResumeAward]] = None self.certificates: Optional[List[ResumeCertificate]] = None self.competitions: Optional[List[ResumeCompetition]] = None self.self_evaluation: Optional[str] = None self.urls: Optional[List[str]] = None self.social_links: Optional[List[str]] = None init(self, d, self._types) @staticmethod def builder() -> "ResumeBuilder": return ResumeBuilder() class ResumeBuilder(object): def __init__(self) -> None: self._resume = Resume() def file_md5(self, file_md5: str) -> "ResumeBuilder": self._resume.file_md5 = file_md5 return self def content(self, content: str) -> "ResumeBuilder": self._resume.content = content return self def new_content(self, new_content: str) -> "ResumeBuilder": self._resume.new_content = new_content return self def name(self, name: str) -> "ResumeBuilder": self._resume.name = name return self def email(self, email: str) -> "ResumeBuilder": self._resume.email = email return self def mobile(self, mobile: str) -> "ResumeBuilder": self._resume.mobile = mobile return self def mobile_is_virtual(self, mobile_is_virtual: bool) -> "ResumeBuilder": self._resume.mobile_is_virtual = mobile_is_virtual return self def country_code(self, country_code: str) -> "ResumeBuilder": self._resume.country_code = country_code return self def educations(self, educations: List[ResumeEducation]) -> "ResumeBuilder": self._resume.educations = educations return self def careers(self, careers: List[ResumeCareer]) -> "ResumeBuilder": self._resume.careers = careers return self def projects(self, projects: List[ResumeProject]) -> "ResumeBuilder": self._resume.projects = projects return self def work_year(self, work_year: int) -> "ResumeBuilder": self._resume.work_year = work_year return self def date_of_birth(self, date_of_birth: str) -> "ResumeBuilder": self._resume.date_of_birth = date_of_birth return self def gender(self, gender: int) -> "ResumeBuilder": self._resume.gender = gender return self def willing_positions(self, willing_positions: List[str]) -> "ResumeBuilder": self._resume.willing_positions = willing_positions return self def current_location(self, current_location: str) -> "ResumeBuilder": self._resume.current_location = current_location return self def willing_locations(self, willing_locations: List[str]) -> "ResumeBuilder": self._resume.willing_locations = willing_locations return self def home_location(self, home_location: str) -> "ResumeBuilder": self._resume.home_location = home_location return self def languages(self, languages: List[ResumeLanguage]) -> "ResumeBuilder": self._resume.languages = languages return self def awards(self, awards: List[ResumeAward]) -> "ResumeBuilder": self._resume.awards = awards return self def certificates(self, certificates: List[ResumeCertificate]) -> "ResumeBuilder": self._resume.certificates = certificates return self def competitions(self, competitions: List[ResumeCompetition]) -> "ResumeBuilder": self._resume.competitions = competitions return self def self_evaluation(self, self_evaluation: str) -> "ResumeBuilder": self._resume.self_evaluation = self_evaluation return self def urls(self, urls: List[str]) -> "ResumeBuilder": self._resume.urls = urls return self def social_links(self, social_links: List[str]) -> "ResumeBuilder": self._resume.social_links = social_links return self def build(self) -> "Resume": return self._resume