Skip to content

types/browser-nodes

ImageSource

Image source for React Native's <Image> component. Contains all information needed to load an image, including URL transformation and authentication headers.

Example

tsx
<Image source={track.artworkSource} />

Properties

PropertyTypeDescription
uristringTransformed URL with query parameters for authentication
method?HttpMethodHTTP method (usually GET for images)
headers?Record<string, string>HTTP headers including User-Agent and Content-Type if configured
body?stringHTTP body for POST requests (rare for images)

ResolvedTrack

A Track that has been resolved with its children through browsing.

This is the return type when browsing a track - it includes the track's metadata along with its immediate children.

Example

ts
const resolved = await audioBrowser.navigate('albums/abbey-road');
console.log(resolved.url); // "albums/abbey-road"
console.log(resolved.title); // "Abbey Road"
console.log(resolved.children); // Array of tracks in this album

Properties

PropertyTypeDescription
src?stringDirect audio source identifier. When present, this track can be played directly. This is typically an absolute URL pointing to an audio resource, but it can also be any string (file path, custom identifier, etc.) that will be passed to MediaRequestConfig.resolve to transform it into the actual media request. At least one of url or src must be defined.
artwork?stringArtwork URL for the item. The artwork URL is also returned by native in the artworkSource property for use in an <Image> component, which will contain the transformed version if artwork configuration is set in BrowserConfiguration or a route.
artworkSource?ImageSourceReady-to-use image source for React Native's <Image> component. Output only - automatically populated when tracks are retrieved from AudioBrowser. Do not set this manually. Contains the transformed URL and any required headers based on the artwork configuration in BrowserConfiguration. Example <Image source={audioBrowser.activeTrack?.artworkSource} />
artworkCarPlayTinted?booleanWhether this artwork should be tinted based on CarPlay's current appearance (light/dark mode). When true, the artwork is treated as a monochrome icon and tinted: - Light mode: tinted black for visibility on light backgrounds - Dark mode: tinted white for visibility on dark backgrounds This is useful for SVG or PNG icons that need to adapt to CarPlay's light/dark themes. Full-color artwork (album covers, logos) should not use this. iOS CarPlay only - Android Auto is dark-only, so content providers should provide appropriately colored icons directly (e.g., white icons). Default false
titlestring-
subtitle?string-
artist?string-
album?string-
description?string-
genre?string-
duration?number-
style?TrackStyleDisplay style for this item in Android Auto/AAOS. - 'list': Display as a list row - 'grid': Display as a grid tile On Android: when artwork is an android.resource:// URI (e.g., android.resource://com.myapp/drawable/ic_folder), the library automatically uses 'category' styling which adds margins around the icon and enables system tinting for vector drawables. See https://developer.android.com/training/cars/media#default-content-style
childrenStyle?TrackStyleDisplay style for this item's children in Android Auto/AAOS. Only applies to browsable items (containers/folders). - 'list': Display children as list rows - 'grid': Display children as grid tiles Must be set on the item when it appears as a child in a parent's list. Android Auto reads the extras at that point to determine how to display the folder's contents when navigated into.
favorited?booleanWhether this track is favorited. When the set-rating capability is enabled, displays a filled/empty heart icon in media controllers (notification, Android Auto).
groupTitle?stringGroup title for section headers in Android Auto/AAOS. Items with the same groupTitle are displayed under a shared section header. Items must be contiguous to form a single group.
live?booleanWhether this track is a live stream. When true, displays a "live" indicator in iOS now playing interfaces.
urlstringURL path for this resolved track. Always present since you navigated to this location.
children?Track[]Immediate children of this track. Present for container tracks (albums, playlists, folders). Undefined for leaf tracks (individual songs without children).

Track

Properties

PropertyTypeDescription
url?stringNavigation path. When present, this track is a container (tab, album, playlist, folder) that can be navigated into to view its contents. At least one of url or src must be defined.
src?stringDirect audio source identifier. When present, this track can be played directly. This is typically an absolute URL pointing to an audio resource, but it can also be any string (file path, custom identifier, etc.) that will be passed to MediaRequestConfig.resolve to transform it into the actual media request. At least one of url or src must be defined.
artwork?stringArtwork URL for the item. The artwork URL is also returned by native in the artworkSource property for use in an <Image> component, which will contain the transformed version if artwork configuration is set in BrowserConfiguration or a route.
artworkSource?ImageSourceReady-to-use image source for React Native's <Image> component. Output only - automatically populated when tracks are retrieved from AudioBrowser. Do not set this manually. Contains the transformed URL and any required headers based on the artwork configuration in BrowserConfiguration. Example <Image source={audioBrowser.activeTrack?.artworkSource} />
artworkCarPlayTinted?booleanWhether this artwork should be tinted based on CarPlay's current appearance (light/dark mode). When true, the artwork is treated as a monochrome icon and tinted: - Light mode: tinted black for visibility on light backgrounds - Dark mode: tinted white for visibility on dark backgrounds This is useful for SVG or PNG icons that need to adapt to CarPlay's light/dark themes. Full-color artwork (album covers, logos) should not use this. iOS CarPlay only - Android Auto is dark-only, so content providers should provide appropriately colored icons directly (e.g., white icons). Default false
titlestring-
subtitle?string-
artist?string-
album?string-
description?string-
genre?string-
duration?number-
style?TrackStyleDisplay style for this item in Android Auto/AAOS. - 'list': Display as a list row - 'grid': Display as a grid tile On Android: when artwork is an android.resource:// URI (e.g., android.resource://com.myapp/drawable/ic_folder), the library automatically uses 'category' styling which adds margins around the icon and enables system tinting for vector drawables. See https://developer.android.com/training/cars/media#default-content-style
childrenStyle?TrackStyleDisplay style for this item's children in Android Auto/AAOS. Only applies to browsable items (containers/folders). - 'list': Display children as list rows - 'grid': Display children as grid tiles Must be set on the item when it appears as a child in a parent's list. Android Auto reads the extras at that point to determine how to display the folder's contents when navigated into.
favorited?booleanWhether this track is favorited. When the set-rating capability is enabled, displays a filled/empty heart icon in media controllers (notification, Android Auto).
groupTitle?stringGroup title for section headers in Android Auto/AAOS. Items with the same groupTitle are displayed under a shared section header. Items must be contiguous to form a single group.
live?booleanWhether this track is a live stream. When true, displays a "live" indicator in iOS now playing interfaces.

TrackStyle

ts
type TrackStyle = "list" | "grid";