pub mod api;
pub mod client;
pub mod config;
pub mod error;
pub mod types;
#[path = "analytics.rs"]
pub mod analytics;
mod csv_export;
#[path = "file_handler.rs"]
pub mod file_handler;
#[path = "url_builder.rs"]
pub mod url_builder;
#[cfg(feature = "sqlite")]
#[path = "sqlite.rs"]
pub mod sqlite;
pub use client::LastFmClient;
pub use config::{Config, ConfigBuilder, RateLimit};
pub use error::{LastFmError, Result};
pub use types::{Period, TrackLimit, TrackList};
pub use api::{Analyze, FetchAndSave, FetchAndUpdate, LimitBuilder};
pub mod prelude {
pub use crate::api::{Analyze, FetchAndSave, FetchAndUpdate, LimitBuilder};
}
pub use api::{
FriendsRequestBuilder, LovedTracksRequestBuilder, PersonalTagsRequestBuilder, ProgressCallback,
RecentTracksRequestBuilder, TopAlbumsRequestBuilder, TopArtistsRequestBuilder,
TopTagsRequestBuilder, TopTracksRequestBuilder, UserInfoRequestBuilder,
WeeklyAlbumChartRequestBuilder, WeeklyArtistChartRequestBuilder, WeeklyChartListRequestBuilder,
WeeklyTrackChartRequestBuilder,
};
pub use types::{
FriendProfile, FriendsPage, PersonalTaggedAlbum, PersonalTaggedAlbumsPage,
PersonalTaggedArtist, PersonalTaggedArtistsPage, PersonalTaggedTrack, PersonalTaggedTracksPage,
UserInfo, UserTopTag, WeeklyAlbum, WeeklyArtist, WeeklyChartRange, WeeklyTrack,
};
#[cfg(feature = "sqlite")]
pub use sqlite::{SqliteExportable, SqliteLoadable};
pub use types::{
LovedTrack, RecentTrack, RecentTrackExtended, ScoredAlbum, ScoredArtist, ScoredTrack, TopTrack,
UserLovedTracks, UserRecentTracks, UserRecentTracksExtended, UserTopAlbums, UserTopArtists,
UserTopTracks,
};