/**
 * Application Port: IMediaRepository
 * 
 * Repository interface for media assets (logos, avatars).
 * Handles frontend assets like team logos and driver avatars.
 */

export interface IMediaRepository {
  /**
   * Get driver avatar URL
   */
  getDriverAvatar(driverId: string): Promise<string | null>;

  /**
   * Get team logo URL
   */
  getTeamLogo(teamId: string): Promise<string | null>;

  /**
   * Get league logo URL
   */
  getLeagueLogo(leagueId: string): Promise<string | null>;

  /**
   * Get league cover URL
   */
  getLeagueCover(leagueId: string): Promise<string | null>;

  /**
   * Clear all media data (for reseeding)
   */
  clear(): Promise<void>;
}
