export interface Document { id: string; title: string; content: string; version: number; lastSaved: string; isSynced: boolean; history?: { id: string; timestamp: string; content: string; version: number; label?: string; }[]; } export interface ChatMessage { id: string; sender: "user" | "assistant"; text: string; timestamp: string; } export type UserTier = "free" | "pro" | "enterprise"; export interface AuthUser { email: string | null; displayName: string | null; isLoggedIn: boolean; isGuest?: boolean; tier: UserTier; privateKeySeed: string; hasPasskey?: boolean; oauthProvider?: string | null; } export interface SyncLog { id: string; text: string; timestamp: string; type: "success" | "info" | "sync" | "error"; } export interface TeamMember { id: string; name: string; role: string; status: "active" | "offline"; permission: "edit" | "view"; }