export type DataOrigin = "production_db" | "runtime_export" | "mixed_with_runtime_export"; export type RawRecord = Record; export type RunListItem = { run_id: string; policy_run_id?: string | null; status?: string | null; current_step?: string | null; platform?: string | null; platform_mode?: string | null; content_format?: string | null; strategy_version?: string | null; demand_content_id?: number | null; demand_name?: string | null; demand_desc?: string | null; validation_status?: string | null; error_code?: string | null; started_at?: string | null; completed_at?: string | null; }; export type RunListResponse = { items: RunListItem[]; page: number; page_size: number; total: number; data_origin: DataOrigin; }; export type RuntimeFileResponse = { run_id: string; filename: string; data_origin: DataOrigin; data?: RawRecord; records?: RawRecord[]; offset?: number; limit?: number; total?: number; }; export type DashboardResponse = { run_id: string; summary: RawRecord; counts: Record; files: Record; validation: RawRecord; final_output_summary: RawRecord; business_summary?: RawRecord; data_origin: DataOrigin; links?: Record; }; export type QueryListResponse = { run_id: string; items: RawRecord[]; total: number; data_origin: DataOrigin; }; export type ContentItemsResponse = { run_id: string; items: RawRecord[]; total: number; data_origin: DataOrigin; }; export type TimelineItem = { source: string; stage?: string | null; event_type?: string | null; status?: string | null; timestamp?: string | null; error_code?: string | null; walk_action_id?: string | null; record: RawRecord; }; export type TimelineResponse = { run_id: string; items: TimelineItem[]; total: number; data_origin: DataOrigin; summary: RawRecord; }; export type FlowInput = { dashboard: DashboardResponse; queries: QueryListResponse; contentItems: ContentItemsResponse; timeline: TimelineResponse; searchQueries: RawRecord[]; searchClues: RawRecord[]; ruleDecisions: RawRecord[]; walkActions: RawRecord[]; sourcePathRecords: RawRecord[]; }; export type FlowLedgerApiResponse = { run_id: string; data_origin: DataOrigin; data_origin_label: string; summary: RawRecord; demand_summary?: RawRecord | null; rows: RawRecord[]; extension_queries: RawRecord[]; debug?: RawRecord | null; }; export type FlowLedgerVideosResponse = { run_id: string; query?: RawRecord | null; videos: RawRecord[]; summary: RawRecord; data_origin: DataOrigin; data_origin_label: string; }; export type FlowLedgerWalkResponse = { run_id: string; query?: RawRecord | null; actions: RawRecord[]; lanes: Record; extension_queries: RawRecord[]; summary: RawRecord; data_origin: DataOrigin; data_origin_label: string; }; export type FlowLedgerVideoResponse = { run_id: string; video?: RawRecord | null; source_paths: RawRecord[]; decision?: RawRecord | null; data_origin: DataOrigin; data_origin_label: string; }; export type FlowLedgerVideoWalkResponse = { run_id: string; root_video?: RawRecord | null; actions: RawRecord[]; summary: RawRecord; data_origin: DataOrigin; data_origin_label: string; };