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

from __future__ import annotations
from .stageresponse import StageResponse, StageResponseTypedDict
from mixpeek.types import BaseModel
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict


class RetrieverResponseTypedDict(TypedDict):
    r"""Response from a retriever execution"""

    execution_time: float
    stage_results: NotRequired[List[StageResponseTypedDict]]
    r"""Results from each stage execution"""


class RetrieverResponse(BaseModel):
    r"""Response from a retriever execution"""

    execution_time: float

    stage_results: Optional[List[StageResponse]] = None
    r"""Results from each stage execution"""
