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

from __future__ import annotations
from .inputtokendetails import InputTokenDetails, InputTokenDetailsTypedDict
from .outputtokendetails import OutputTokenDetails, OutputTokenDetailsTypedDict
from ragie.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class RagieAPISchemaResponseUsageTypedDict(TypedDict):
    input_tokens: int
    output_tokens: int
    total_tokens: int
    input_token_details: NotRequired[InputTokenDetailsTypedDict]
    output_token_details: NotRequired[OutputTokenDetailsTypedDict]


class RagieAPISchemaResponseUsage(BaseModel):
    input_tokens: int

    output_tokens: int

    total_tokens: int

    input_token_details: Optional[InputTokenDetails] = None

    output_token_details: Optional[OutputTokenDetails] = None
