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

from __future__ import annotations
from ._schema14 import Schema14, Schema14TypedDict
from openrouter.types import BaseModel
from typing import Any, Optional, Union
from typing_extensions import NotRequired, TypeAliasType, TypedDict


PromptTypedDict = TypeAliasType("PromptTypedDict", Union[float, str, Any])


Prompt = TypeAliasType("Prompt", Union[float, str, Any])


CompletionTypedDict = TypeAliasType("CompletionTypedDict", Union[float, str, Any])


Completion = TypeAliasType("Completion", Union[float, str, Any])


class Schema10TypedDict(TypedDict):
    prompt: NotRequired[PromptTypedDict]
    completion: NotRequired[CompletionTypedDict]
    image: NotRequired[Schema14TypedDict]
    audio: NotRequired[Schema14TypedDict]
    request: NotRequired[Schema14TypedDict]


class Schema10(BaseModel):
    prompt: Optional[Prompt] = None

    completion: Optional[Completion] = None

    image: Optional[Schema14] = None

    audio: Optional[Schema14] = None

    request: Optional[Schema14] = None
