use rockbox_search::artist::Artist; use rockbox_search::file::File; use rockbox_search::liked_album::LikedAlbum; use rockbox_search::liked_track::LikedTrack; use rockbox_search::{album::Album, track::Track}; use serde::{Deserialize, Serialize}; pub mod device; #[derive(Debug, Serialize, Deserialize)] pub struct NewPlaylist { pub name: Option, pub tracks: Vec, } #[derive(Debug, Serialize, Deserialize)] pub struct InsertTracks { pub position: i32, pub tracks: Vec, pub directory: Option, pub shuffle: Option, } #[derive(Debug, Serialize, Deserialize)] pub struct LoadTracks { pub tracks: Vec, pub directory: Option, pub album_id: Option, pub shuffle: Option, } #[derive(Debug, Serialize, Deserialize)] pub struct NewVolume { pub steps: i32, } #[derive(Debug, Serialize, Deserialize)] pub struct DeleteTracks { pub positions: Vec, } #[derive(Debug, Serialize, Deserialize)] pub struct StatusCode { pub code: i32, } #[derive(Default, Serialize, Deserialize)] pub struct SearchResults { pub artists: Vec, pub albums: Vec, pub tracks: Vec, pub liked_tracks: Vec, pub liked_albums: Vec, pub files: Vec, } #[derive(Default, Serialize, Deserialize)] pub struct EqBandSetting { pub cutoff: i32, pub q: i32, pub gain: i32, } #[derive(Default, Serialize, Deserialize)] pub struct ReplaygainSettings { pub enabled: bool, pub preamp: i32, pub peak: i32, pub clip: i32, }