export interface User { id: string; name: string; email: string; avatar?: string; role: 'admin'|'streamer'|'viewer'; createdAt: string; lastLogin?: string; isActive: boolean; plan: 'free'|'pro'|'enterprise' }
export interface Stream { id: string; title: string; description?: string; status: 'draft'|'scheduled'|'live'|'ended'; userId: string; scheduledAt?: string; startedAt?: string; endedAt?: string; platforms: StreamPlatform[]; viewerCount: number; maxViewers: number; duration?: number; thumbnailUrl?: string; recordingUrl?: string; chatEnabled: boolean; isPrivate: boolean; tags: string[] }
export interface StreamPlatform { id: string; name: 'youtube'|'facebook'|'twitch'|'linkedin'|'custom'; displayName: string; isConnected: boolean; streamKey?: string; streamUrl?: string; accountName?: string; isLive: boolean; viewerCount: number }
export interface ChatMessage { id: string; streamId: string; username: string; message: string; timestamp: string; platform: string; isSuper?: boolean; isModerator?: boolean }
export interface StudioScene { id: string; name: string; type: 'camera'|'screen'|'overlay'|'mixed'; isActive: boolean; sources: any[]; layout: any }
export interface ApiResponse<T> { success: boolean; data?: T; error?: string; message?: string }
