"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations from openrouter.types import BaseModel from typing import List, Literal, Optional from typing_extensions import NotRequired, TypedDict WebFetchPluginID = Literal["web-fetch",] class WebFetchPluginTypedDict(TypedDict): id: WebFetchPluginID allowed_domains: NotRequired[List[str]] r"""Only fetch from these domains.""" blocked_domains: NotRequired[List[str]] r"""Never fetch from these domains.""" max_content_tokens: NotRequired[int] r"""Maximum content length in approximate tokens. Content exceeding this limit is truncated.""" max_uses: NotRequired[int] r"""Maximum number of web fetches per request. Once exceeded, the tool returns an error.""" class WebFetchPlugin(BaseModel): id: WebFetchPluginID allowed_domains: Optional[List[str]] = None r"""Only fetch from these domains.""" blocked_domains: Optional[List[str]] = None r"""Never fetch from these domains.""" max_content_tokens: Optional[int] = None r"""Maximum content length in approximate tokens. Content exceeding this limit is truncated.""" max_uses: Optional[int] = None r"""Maximum number of web fetches per request. Once exceeded, the tool returns an error."""