//! Common types module
//! 
//! This module organizes shared types into sub-modules for better organization.

pub mod user;
pub mod track;
pub mod playlist;
pub mod chat;
pub mod api;
pub mod media;
pub mod system;
pub mod websocket;
pub mod files;

// Re-export specific types for convenience
pub use user::{User, Session};
pub use track::Track;
pub use playlist::{Playlist, PlaylistTrack};
pub use chat::{Conversation, Message, MessageType, Attachment, Reaction};
pub use api::{ApiResponse, ApiError, ApiMeta, PaginationMeta, RateLimitMeta, SearchRequest, SearchResponse};
pub use media::{StreamingRequest, StreamingResponse, AudioChunk, StreamingQuality};
pub use system::{AuditLog, HealthCheck, Metrics, Migration};
pub use websocket::{WebSocketMessage, PresenceStatus, CallType};
pub use files::{FileUploadRequest, FileUploadResponse, FileMetadata};

