"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from .searchmodelsservertoolconfig import (
    SearchModelsServerToolConfig,
    SearchModelsServerToolConfigTypedDict,
)
from openrouter.types import BaseModel
from typing import Literal, Optional
from typing_extensions import NotRequired, TypedDict


ChatSearchModelsServerToolType = Literal["openrouter:experimental__search_models",]


class ChatSearchModelsServerToolTypedDict(TypedDict):
    r"""OpenRouter built-in server tool: searches and filters AI models available on OpenRouter"""

    type: ChatSearchModelsServerToolType
    parameters: NotRequired[SearchModelsServerToolConfigTypedDict]
    r"""Configuration for the openrouter:experimental__search_models server tool"""


class ChatSearchModelsServerTool(BaseModel):
    r"""OpenRouter built-in server tool: searches and filters AI models available on OpenRouter"""

    type: ChatSearchModelsServerToolType

    parameters: Optional[SearchModelsServerToolConfig] = None
    r"""Configuration for the openrouter:experimental__search_models server tool"""
