| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- from collections.abc import Mapping
- from typing import Any, Literal, TypeVar, cast
- from attrs import define as _attrs_define
- from attrs import field as _attrs_field
- T = TypeVar("T", bound="ToolStatePending")
- @_attrs_define
- class ToolStatePending:
- """
- Attributes:
- status (Literal['pending']):
- """
- status: Literal["pending"]
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
- def to_dict(self) -> dict[str, Any]:
- status = self.status
- field_dict: dict[str, Any] = {}
- field_dict.update(self.additional_properties)
- field_dict.update(
- {
- "status": status,
- }
- )
- return field_dict
- @classmethod
- def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
- d = dict(src_dict)
- status = cast(Literal["pending"], d.pop("status"))
- if status != "pending":
- raise ValueError(f"status must match const 'pending', got '{status}'")
- tool_state_pending = cls(
- status=status,
- )
- tool_state_pending.additional_properties = d
- return tool_state_pending
- @property
- def additional_keys(self) -> list[str]:
- return list(self.additional_properties.keys())
- def __getitem__(self, key: str) -> Any:
- return self.additional_properties[key]
- def __setitem__(self, key: str, value: Any) -> None:
- self.additional_properties[key] = value
- def __delitem__(self, key: str) -> None:
- del self.additional_properties[key]
- def __contains__(self, key: str) -> bool:
- return key in self.additional_properties
|