musicman_protocols/
songs.rs

1use serde::{Deserialize, Serialize};
2use std::path::PathBuf;
3use uuid::Uuid;
4
5#[derive(Serialize, Deserialize, PartialEq, Clone, Debug, Eq)]
6pub struct SongMeta {
7    pub id: Uuid,
8    pub title: String,
9    pub artists: Vec<String>,
10    pub duration: u32, // in seconds
11    pub path: PathBuf,
12}
13
14#[derive(Serialize, Deserialize, PartialEq, Clone, Debug, Eq)]
15pub enum SearchType {
16    ByTitle(String),
17    ByArtist(String),
18}