Something went wrong. Try again.
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566export interface Author { did: string; handle: string; displayName: string; avatar?: string | null;}
export interface Post { uri: string; author: Author; text: string; createdAt: string; parent_uri: string | null; depth: number; is_quote: boolean; likeCount: number; repostCount: number; replyCount: number; quoteCount: number; faction: string; confidence: number;}
export interface Faction { id: string; name: string; description: string; colorLight: string; colorDark: string; count?: number;}
export interface AnalyzeResult { root_uri: string; posts: Post[]; factions: Faction[]; model: string; context: string; analyzed_at: string;}
export type StreamEvent = | { type: "status"; message: string } | { type: "stage"; stage: "fetch" | "factions" | "classify" } | { type: "fetch_progress"; posts: number } | { type: "fetch_done"; posts: number; cached: boolean } | { type: "factions"; factions: Faction[] } | { type: "analysis_progress"; classified: number; total: number } | { type: "result"; data: AnalyzeResult } | { type: "error"; message: string };
export interface AnalyzeRequest { url: string; context: string; max_depth: number | null; max_posts: number | null; llm_base_url: string; llm_api_key: string; model: string; concurrency: number; force_refresh: boolean;}
export type Mode = "light" | "dark";export type LayoutKind = "radial" | "force";