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

from __future__ import annotations
from openrouter.types import BaseModel
from typing import Literal, Optional
from typing_extensions import NotRequired, TypedDict


OpenAIResponseCustomToolCallType = Literal["custom_tool_call",]


class OpenAIResponseCustomToolCallTypedDict(TypedDict):
    call_id: str
    input: str
    name: str
    type: OpenAIResponseCustomToolCallType
    id: NotRequired[str]
    namespace: NotRequired[str]
    r"""Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server)"""


class OpenAIResponseCustomToolCall(BaseModel):
    call_id: str

    input: str

    name: str

    type: OpenAIResponseCustomToolCallType

    id: Optional[str] = None

    namespace: Optional[str] = None
    r"""Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server)"""
