/// /** List of available embed spotify URL's */ declare enum SpotifyEmbedUrl { TRACK = "https://open.spotify.com/embed/track/", ALBUM = "https://open.spotify.com/embed/album/", PLAYLIST = "https://open.spotify.com/embed/playlist/", ARTIST = "https://open.spotify.com/embed/artist/", SHOW = "https://open.spotify.com/embed/show/", EPISODE = "https://open.spotify.com/embed/episode/" } /** List of Spotify embed types */ declare enum SpotifyEmbedTypes { TRACK = "track", ALBUM = "album", PLAYLIST = "playlist", ARTIST = "artist", SHOW = "show", EPISODE = "episode" } /** Default sizes */ declare enum Default { WIDTH = 300, HEIGHT = 380 } /** Compact sizes */ declare enum Compact { WIDTH = 300, HEIGHT = 80 } /** Theme types */ declare enum Themes { LIGHT = "1", DARK = "0" } /** * @param url - The Spotify resource URL * @param theme - The embed theme * @returns The formated embed URL */ declare const urlParser: (url: string, theme?: "light" | "dark") => string; /** * @param uri - The Spotify resource URI * @param theme - The embed theme * @returns The formated embed url */ declare const uriParser: (uri: string, theme?: "light" | "dark") => string; interface SpotifyEmbedProps extends Omit, "allow-transparency" | "frameBorder" | "aria-label" | "allow"> { /** * The size of the embed * @defaultValue 'default' */ size?: "default" | "compact" | "custom"; /** * The Spotify resource URL/URI * ( track | playlist | album | artist | show | episode ) */ src?: string; /** * The embed theme * @defaultValue 'light' */ theme?: "light" | "dark"; } /** * ## Spotfy Embed * @param props - Spotify embed properties * @returns The Spotify embed * @see https://developer.spotify.com/documentation/widgets/ */ declare const SpotifyEmbed: React.FC; export { Compact, Default, SpotifyEmbed, SpotifyEmbedProps, SpotifyEmbedTypes, SpotifyEmbedUrl, Themes, uriParser, urlParser };