sdk/oapiSdk/lark_oapi/api/search/v2/model/schema_property.py

102 lines
3.7 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 .schema_sort_options import SchemaSortOptions
from .schema_type_definitions import SchemaTypeDefinitions
from .schema_search_options import SchemaSearchOptions
from .schema_filter_options import SchemaFilterOptions
from .schema_field_answer_option import SchemaFieldAnswerOption
class SchemaProperty(object):
_types = {
"name": str,
"type": str,
"is_searchable": bool,
"is_sortable": bool,
"is_returnable": bool,
"sort_options": SchemaSortOptions,
"type_definitions": SchemaTypeDefinitions,
"search_options": SchemaSearchOptions,
"is_filterable": bool,
"filter_options": SchemaFilterOptions,
"answer_option": SchemaFieldAnswerOption,
"desc": str,
}
def __init__(self, d=None):
self.name: Optional[str] = None
self.type: Optional[str] = None
self.is_searchable: Optional[bool] = None
self.is_sortable: Optional[bool] = None
self.is_returnable: Optional[bool] = None
self.sort_options: Optional[SchemaSortOptions] = None
self.type_definitions: Optional[SchemaTypeDefinitions] = None
self.search_options: Optional[SchemaSearchOptions] = None
self.is_filterable: Optional[bool] = None
self.filter_options: Optional[SchemaFilterOptions] = None
self.answer_option: Optional[SchemaFieldAnswerOption] = None
self.desc: Optional[str] = None
init(self, d, self._types)
@staticmethod
def builder() -> "SchemaPropertyBuilder":
return SchemaPropertyBuilder()
class SchemaPropertyBuilder(object):
def __init__(self) -> None:
self._schema_property = SchemaProperty()
def name(self, name: str) -> "SchemaPropertyBuilder":
self._schema_property.name = name
return self
def type(self, type: str) -> "SchemaPropertyBuilder":
self._schema_property.type = type
return self
def is_searchable(self, is_searchable: bool) -> "SchemaPropertyBuilder":
self._schema_property.is_searchable = is_searchable
return self
def is_sortable(self, is_sortable: bool) -> "SchemaPropertyBuilder":
self._schema_property.is_sortable = is_sortable
return self
def is_returnable(self, is_returnable: bool) -> "SchemaPropertyBuilder":
self._schema_property.is_returnable = is_returnable
return self
def sort_options(self, sort_options: SchemaSortOptions) -> "SchemaPropertyBuilder":
self._schema_property.sort_options = sort_options
return self
def type_definitions(self, type_definitions: SchemaTypeDefinitions) -> "SchemaPropertyBuilder":
self._schema_property.type_definitions = type_definitions
return self
def search_options(self, search_options: SchemaSearchOptions) -> "SchemaPropertyBuilder":
self._schema_property.search_options = search_options
return self
def is_filterable(self, is_filterable: bool) -> "SchemaPropertyBuilder":
self._schema_property.is_filterable = is_filterable
return self
def filter_options(self, filter_options: SchemaFilterOptions) -> "SchemaPropertyBuilder":
self._schema_property.filter_options = filter_options
return self
def answer_option(self, answer_option: SchemaFieldAnswerOption) -> "SchemaPropertyBuilder":
self._schema_property.answer_option = answer_option
return self
def desc(self, desc: str) -> "SchemaPropertyBuilder":
self._schema_property.desc = desc
return self
def build(self) -> "SchemaProperty":
return self._schema_property