from typing import TypedDict, List, Optional class ResearchState(TypedDict): question: str search_results: Optional[List[str]] summary: Optional[str] fact_check: Optional[str] final_report: Optional[str] error: Optional[str]