SYMBOL INDEX (1469 symbols across 463 files) FILE: assets/assets.d.ts type Styles (line 1) | type Styles = Record; FILE: scripts/after-all-artifact-build.mjs function afterAllArtifactBuild (line 16) | async function afterAllArtifactBuild(buildResult) { FILE: src/main/features/core/autodiscover/index.ts type JellyfinResponse (line 6) | type JellyfinResponse = { function discoverAll (line 12) | function discoverAll(reply: (server: DiscoveredServerItem) => void) { function discoverJellyfin (line 16) | function discoverJellyfin(reply: (server: DiscoveredServerItem) => void) { FILE: src/main/features/core/discord-rpc/index.ts constant FEISHIN_DISCORD_APPLICATION_ID (line 4) | const FEISHIN_DISCORD_APPLICATION_ID = '1165957668758900787'; FILE: src/main/features/core/lyrics/genius.ts constant SEARCH_URL (line 12) | const SEARCH_URL = 'https://genius.com/api/search/song'; type GeniusResponse (line 16) | interface GeniusResponse { type Hit (line 21) | interface Hit { type Meta (line 28) | interface Meta { type PrimaryArtist (line 32) | interface PrimaryArtist { type ReleaseDateComponents (line 46) | interface ReleaseDateComponents { type Response (line 52) | interface Response { type Result (line 57) | interface Result { type Section (line 88) | interface Section { type Stats (line 93) | interface Stats { function getLyricsBySongId (line 98) | async function getLyricsBySongId(url: string): Promise { function getSearchResults (line 122) | async function getSearchResults( function query (line 162) | async function query( function getSongId (line 184) | async function getSongId( FILE: src/main/features/core/lyrics/index.ts type LyricSource (line 15) | enum LyricSource { type FullLyricsMetadata (line 22) | type FullLyricsMetadata = Omit; type LyricSearchQuery (line 53) | type LyricSearchQuery = { type LyricsResponse (line 60) | type LyricsResponse = string | SynchronizedLyricsArray; type SynchronizedLyricsArray (line 62) | type SynchronizedLyricsArray = Array<[number, string]>; type CachedLyrics (line 64) | type CachedLyrics = Record; type GetFetcher (line 65) | type GetFetcher = (id: string) => Promise; type SearchFetcher (line 66) | type SearchFetcher = ( constant SEARCH_FETCHERS (line 70) | const SEARCH_FETCHERS: Record = { constant GET_FETCHERS (line 77) | const GET_FETCHERS: Record = { constant MAX_CACHED_ITEMS (line 84) | const MAX_CACHED_ITEMS = 10; FILE: src/main/features/core/lyrics/lrclib.ts constant FETCH_URL (line 12) | const FETCH_URL = 'https://lrclib.net/api/get'; constant SEEARCH_URL (line 13) | const SEEARCH_URL = 'https://lrclib.net/api/search'; constant TIMEOUT_MS (line 15) | const TIMEOUT_MS = 5000; type LrcLibSearchResponse (line 17) | interface LrcLibSearchResponse { type LrcLibTrackResponse (line 28) | interface LrcLibTrackResponse { function getLyricsBySongId (line 43) | async function getLyricsBySongId(songId: string): Promise { function getSearchResults (line 56) | async function getSearchResults( function query (line 91) | async function query( FILE: src/main/features/core/lyrics/netease.ts constant SEARCH_URL (line 12) | const SEARCH_URL = 'https://music.163.com/api/search/get'; constant LYRICS_URL (line 13) | const LYRICS_URL = 'https://music.163.com/api/song/lyric'; type Result (line 17) | interface Result { type Album (line 23) | interface Album { type Artist (line 36) | interface Artist { type NetEaseResponse (line 49) | interface NetEaseResponse { type Song (line 54) | interface Song { function getLyricsBySongId (line 72) | async function getLyricsBySongId(songId: string): Promise { function getSearchResults (line 96) | async function getSearchResults( function query (line 140) | async function query( function getMatchedLyrics (line 162) | async function getMatchedLyrics( function mergeLyrics (line 176) | function mergeLyrics(original: string | undefined, translated: string | ... FILE: src/main/features/core/lyrics/simpmusic.ts constant API_URL (line 11) | const API_URL = 'https://api-lyrics.simpmusic.org/v1'; constant TIMEOUT_MS (line 13) | const TIMEOUT_MS = 5000; type SimpMusicLyric (line 15) | interface SimpMusicLyric { type SimpMusicSearchResponse (line 28) | interface SimpMusicSearchResponse { function getLyricsBySongId (line 33) | async function getLyricsBySongId(songId: string): Promise { function getSearchResults (line 51) | async function getSearchResults( function query (line 83) | async function query( FILE: src/main/features/core/player/index.ts type NodeMpvError (line 42) | type NodeMpvError = { constant MPV_BINARY_PATH (line 71) | const MPV_BINARY_PATH = store.get('mpv_path') as string | undefined; type MpvState (line 589) | enum MpvState { FILE: src/main/features/core/remote/index.ts function initMpris (line 20) | async function initMpris() { type MimeType (line 29) | interface MimeType { type RemoteConfig (line 36) | interface RemoteConfig { class StatefulWebSocket (line 43) | class StatefulWebSocket extends WebSocket { type SendData (line 58) | type SendData = ServerEvent & { function broadcast (line 62) | function broadcast(message: ServerEvent): void { function send (line 70) | function send({ client, data, event }: SendData): void { constant MIME_TYPES (line 91) | const MIME_TYPES: MimeType = { constant PING_TIMEOUT_MS (line 98) | const PING_TIMEOUT_MS = 10000; constant UP_TIMEOUT_MS (line 99) | const UP_TIMEOUT_MS = 5000; type Encoding (line 101) | enum Encoding { constant GZIP_REGEX (line 107) | const GZIP_REGEX = /\bgzip\b/; constant ZLIB_REGEX (line 108) | const ZLIB_REGEX = /bdeflate\b/; function authorize (line 129) | function authorize(req: IncomingMessage): boolean { function serveFile (line 142) | async function serveFile( function setOk (line 256) | function setOk( FILE: src/main/features/linux/mpris.ts constant REPEAT_TO_MPRIS (line 130) | const REPEAT_TO_MPRIS: Record = { FILE: src/main/index.ts constant ALPHA_UPDATER_CONFIG (line 46) | const ALPHA_UPDATER_CONFIG: { constant GITHUB_UPDATER_CONFIG (line 58) | const GITHUB_UPDATER_CONFIG = { type UpdaterInstance (line 64) | type UpdaterInstance = AppImageUpdater | MacUpdater | NsisUpdater | type... class AppUpdater (line 66) | class AppUpdater { method constructor (line 67) | constructor() { function checkAllChannelsAndGetBest (line 111) | async function checkAllChannelsAndGetBest(): Promise<{ function configureAndGetUpdater (line 176) | function configureAndGetUpdater(): UpdaterInstance { function configureAutoUpdaterForChannel (line 231) | function configureAutoUpdaterForChannel(channel: 'beta' | 'latest'): void { function createAlphaUpdaterInstance (line 247) | function createAlphaUpdaterInstance(): AppImageUpdater | MacUpdater | Ns... constant RESOURCES_PATH (line 329) | const RESOURCES_PATH = app.isPackaged function createWindow (line 457) | async function createWindow(first = true): Promise { type BindingActions (line 762) | enum BindingActions { constant HOTKEY_ACTIONS (line 782) | const HOTKEY_ACTIONS: Record void> = { constant FONT_HEADERS (line 889) | const FONT_HEADERS = [ FILE: src/main/menu.ts type DarwinMenuItemConstructorOptions (line 3) | interface DarwinMenuItemConstructorOptions extends MenuItemConstructorOp... class MenuBuilder (line 8) | class MenuBuilder { method constructor (line 11) | constructor(mainWindow: BrowserWindow) { method buildDarwinTemplate (line 15) | buildDarwinTemplate(): MenuItemConstructorOptions[] { method buildDefaultTemplate (line 162) | buildDefaultTemplate(): MenuItemConstructorOptions[] { method buildMenu (line 265) | buildMenu(): Menu { method setupDevelopmentEnvironment (line 281) | setupDevelopmentEnvironment(): void { FILE: src/preload/autodiscover.ts type AutoDiscover (line 23) | type AutoDiscover = typeof autodiscover; FILE: src/preload/browser.ts type Browser (line 41) | type Browser = typeof browser; FILE: src/preload/discord-rpc.ts type DiscordRpc (line 34) | type DiscordRpc = typeof discordRpc; FILE: src/preload/index.d.ts type Window (line 6) | interface Window { FILE: src/preload/index.ts type PreloadApi (line 30) | type PreloadApi = typeof api; FILE: src/preload/ipc.ts type Ipc (line 31) | type Ipc = typeof ipc; FILE: src/preload/local-settings.ts constant SERVER_TYPE (line 70) | const SERVER_TYPE = toServerType(process.env.SERVER_TYPE); type LocalSettings (line 106) | type LocalSettings = typeof localSettings; FILE: src/preload/lyrics.ts type Lyrics (line 35) | type Lyrics = typeof lyrics; FILE: src/preload/mpris.ts type Mpris (line 73) | type Mpris = typeof mpris; FILE: src/preload/mpv-player.ts type MpvPLayer (line 225) | type MpvPLayer = typeof mpvPlayer; type MpvPlayerListener (line 226) | type MpvPlayerListener = typeof mpvPlayerListener; FILE: src/preload/remote.ts type Remote (line 113) | type Remote = typeof remote; FILE: src/preload/utils.ts type Utils (line 84) | type Utils = typeof utils; FILE: src/remote/components/player-image.tsx type PlayerImageProps (line 5) | interface PlayerImageProps { FILE: src/remote/components/wrapped-slider.tsx type WrappedProps (line 52) | interface WrappedProps extends Omit { FILE: src/remote/store/index.ts type SettingsSlice (line 11) | interface SettingsSlice extends SettingsState { type SettingsState (line 20) | interface SettingsState { type StatefulWebSocket (line 28) | interface StatefulWebSocket extends WebSocket { FILE: src/renderer/api/controller.ts type ApiController (line 15) | type ApiController = { type GeneralController (line 79) | interface GeneralController extends Omit, '... method addToPlaylist (line 88) | addToPlaylist(args) { method authenticate (line 102) | authenticate(url, body, type) { method createFavorite (line 105) | createFavorite(args) { method createInternetRadioStation (line 119) | createInternetRadioStation(args) { method createPlaylist (line 133) | createPlaylist(args) { method deleteFavorite (line 147) | deleteFavorite(args) { method deleteInternetRadioStation (line 161) | deleteInternetRadioStation(args) { method deletePlaylist (line 175) | deletePlaylist(args) { method getAlbumArtistDetail (line 189) | getAlbumArtistDetail(args) { method getAlbumArtistInfo (line 203) | getAlbumArtistInfo(args) { method getAlbumArtistList (line 215) | getAlbumArtistList(args) { method getAlbumArtistListCount (line 235) | getAlbumArtistListCount(args) { method getAlbumDetail (line 255) | getAlbumDetail(args) { method getAlbumInfo (line 269) | getAlbumInfo(args) { method getAlbumList (line 283) | getAlbumList(args) { method getAlbumListCount (line 303) | getAlbumListCount(args) { method getAlbumRadio (line 323) | getAlbumRadio(args) { method getArtistList (line 337) | getArtistList(args) { method getArtistListCount (line 357) | getArtistListCount(args) { method getArtistRadio (line 377) | getArtistRadio(args) { method getDownloadUrl (line 391) | getDownloadUrl(args) { method getFolder (line 405) | getFolder(args) { method getGenreList (line 425) | getGenreList(args) { method getImageRequest (line 445) | getImageRequest(args) { method getImageUrl (line 464) | getImageUrl(args) { method getInternetRadioStations (line 483) | getInternetRadioStations(args) { method getLyrics (line 496) | getLyrics(args) { method getMusicFolderList (line 510) | getMusicFolderList(args) { method getPlaylistDetail (line 524) | getPlaylistDetail(args) { method getPlaylistList (line 538) | getPlaylistList(args) { method getPlaylistListCount (line 552) | getPlaylistListCount(args) { method getPlaylistSongList (line 566) | getPlaylistSongList(args) { method getPlayQueue (line 580) | getPlayQueue(args) { method getRandomSongList (line 594) | getRandomSongList(args) { method getRoles (line 614) | getRoles(args) { method getServerInfo (line 628) | getServerInfo(args) { method getSimilarSongs (line 642) | getSimilarSongs(args) { method getSongDetail (line 662) | getSongDetail(args) { method getSongList (line 676) | getSongList(args) { method getSongListCount (line 696) | getSongListCount(args) { method getStreamUrl (line 716) | getStreamUrl(args) { method getStructuredLyrics (line 728) | getStructuredLyrics(args) { method getTagList (line 742) | getTagList(args) { method getTopSongs (line 756) | getTopSongs(args) { method getUserInfo (line 770) | getUserInfo(args) { method getUserList (line 784) | getUserList(args) { method movePlaylistItem (line 798) | movePlaylistItem(args) { method removeFromPlaylist (line 812) | removeFromPlaylist(args) { method replacePlaylist (line 826) | replacePlaylist(args) { method savePlayQueue (line 840) | savePlayQueue(args) { method scrobble (line 854) | scrobble(args) { method search (line 868) | search(args) { method setRating (line 888) | setRating(args) { method shareItem (line 902) | shareItem(args) { method updateInternetRadioStation (line 916) | updateInternetRadioStation(args) { method updatePlaylist (line 930) | updatePlaylist(args) { FILE: src/renderer/api/jellyfin/jellyfin-controller.ts constant MAX_ITEMS_PER_PLAYLIST_ADD (line 69) | const MAX_ITEMS_PER_PLAYLIST_ADD = 50; constant VERSION_INFO (line 75) | const VERSION_INFO: VersionInfo = [ constant JF_FIELDS (line 86) | const JF_FIELDS = { function getLibraryId (line 1848) | function getLibraryId(musicFolderId?: string | string[]) { FILE: src/renderer/api/navidrome/navidrome-api.ts constant RETRY_DELAY_MS (line 255) | const RETRY_DELAY_MS = 1000; constant MAX_RETRIES (line 256) | const MAX_RETRIES = 5; constant TIMEOUT_ERROR (line 271) | const TIMEOUT_ERROR = Error(); FILE: src/renderer/api/navidrome/navidrome-controller.ts constant VERSION_INFO (line 30) | const VERSION_INFO: VersionInfo = [ constant NAVIDROME_ROLES (line 41) | const NAVIDROME_ROLES: Array = [ constant EXCLUDED_TAGS (line 58) | const EXCLUDED_TAGS = new Set([ constant EXCLUDED_ALBUM_TAGS (line 62) | const EXCLUDED_ALBUM_TAGS = new Set([ constant EXCLUDED_SONG_TAGS (line 76) | const EXCLUDED_SONG_TAGS = new Set(['disctotal', 'tracktotal']); constant ID_TAGS (line 83) | const ID_TAGS = new Set(['albumversion', 'mood']); FILE: src/renderer/api/query-keys.ts type QueryPagination (line 48) | type QueryPagination = { FILE: src/renderer/api/subsonic/subsonic-controller.ts constant ALBUM_LIST_SORT_MAPPING (line 66) | const ALBUM_LIST_SORT_MAPPING: Record( function getLibraryId (line 2175) | function getLibraryId(musicFolderId?: string | string[]) { FILE: src/renderer/api/utils-list-count.ts type OptimizedListCountOptions (line 6) | interface OptimizedListCountOptions { FILE: src/renderer/assets/assets.d.ts type Styles (line 1) | type Styles = Record; FILE: src/renderer/components/drag-preview/drag-preview.tsx type DragPreviewProps (line 11) | interface DragPreviewProps { FILE: src/renderer/components/export-import-settings-modal/export-import-settings-modal.tsx type SCREENS (line 19) | enum SCREENS { FILE: src/renderer/components/feature-carousel/feature-carousel.tsx type FeatureCarouselProps (line 54) | interface FeatureCarouselProps { type CarouselItemProps (line 76) | interface CarouselItemProps { FILE: src/renderer/components/feature-carousel/single-feature-carousel.tsx type CarouselItemProps (line 56) | interface CarouselItemProps { type SingleFeatureCarouselProps (line 60) | interface SingleFeatureCarouselProps { FILE: src/renderer/components/grid-carousel/grid-carousel-v2.tsx type Card (line 28) | interface Card { type GridCarouselProps (line 33) | interface GridCarouselProps { function BaseGridCarousel (line 65) | function BaseGridCarousel(props: GridCarouselProps) { type GridCarouselSkeletonProps (line 364) | interface GridCarouselSkeletonProps { function getCardsToShow (line 437) | function getCardsToShow(breakpoints: { FILE: src/renderer/components/item-card/item-card-controls.tsx type ItemCardControlsProps (line 30) | interface ItemCardControlsProps { type SecondaryButtonProps (line 384) | interface SecondaryButtonProps { FILE: src/renderer/components/item-card/item-card.tsx type DataRow (line 50) | type DataRow = { type ItemCardProps (line 59) | interface ItemCardProps { type ItemCardDerivativeProps (line 160) | interface ItemCardDerivativeProps extends Omit { FILE: src/renderer/components/item-image/item-image.tsx type UseItemImageUrlProps (line 81) | interface UseItemImageUrlProps { function getItemImageRequest (line 162) | function getItemImageRequest(args: UseItemImageUrlProps) { function getItemImageUrl (line 198) | function getItemImageUrl(args: UseItemImageUrlProps) { FILE: src/renderer/components/item-list/expanded-list-container.tsx constant EXPANDED_HEIGHT (line 5) | const EXPANDED_HEIGHT = 300; type ExpandedListContainerProps (line 7) | interface ExpandedListContainerProps { FILE: src/renderer/components/item-list/expanded-list-item.tsx type ExpandedListItemProps (line 10) | interface ExpandedListItemProps { type SelectedItemProps (line 31) | interface SelectedItemProps { FILE: src/renderer/components/item-list/helpers/item-list-controls.ts type UseDefaultItemListControlsArgs (line 15) | interface UseDefaultItemListControlsArgs { FILE: src/renderer/components/item-list/helpers/item-list-infinite-loader.ts type InfiniteLoaderCacheData (line 37) | type InfiniteLoaderCacheData = { type UseItemListInfiniteLoaderProps (line 44) | interface UseItemListInfiniteLoaderProps { function getInitialData (line 55) | function getInitialData(): InfiniteLoaderCacheData { FILE: src/renderer/components/item-list/helpers/item-list-paginated-loader.ts type UseItemListPaginatedLoaderProps (line 36) | interface UseItemListPaginatedLoaderProps { function getInitialData (line 47) | function getInitialData(itemCount: number) { FILE: src/renderer/components/item-list/helpers/item-list-state.ts type ItemListAction (line 34) | type ItemListAction = type ItemListState (line 65) | interface ItemListState { type ItemListStateActions (line 75) | interface ItemListStateActions { type ItemListStateItem (line 108) | interface ItemListStateItem { type ItemListStateItemWithRequiredProperties (line 115) | type ItemListStateItemWithRequiredProperties = Record & { class ItemListStateStore (line 294) | class ItemListStateStore { method dispatch (line 301) | dispatch(action: ItemListAction): void { method getExpandedItems (line 309) | getExpandedItems(): unknown[] { method getState (line 323) | getState(): ItemListState { method subscribe (line 327) | subscribe(listener: () => void): () => void { FILE: src/renderer/components/item-list/helpers/use-item-list-column-reorder.ts type UseItemListColumnReorderProps (line 8) | interface UseItemListColumnReorderProps { type SetListData (line 92) | type SetListData = Parameters< FILE: src/renderer/components/item-list/helpers/use-item-list-column-resize.ts type UseItemListColumnResizeProps (line 6) | interface UseItemListColumnResizeProps { type SetListData (line 30) | type SetListData = Parameters< FILE: src/renderer/components/item-list/helpers/use-item-list-scroll-persist.ts type UseItemListScrollPersistProps (line 6) | interface UseItemListScrollPersistProps { FILE: src/renderer/components/item-list/item-detail-list/columns/default-column.tsx type DefaultColumnProps (line 3) | interface DefaultColumnProps extends ItemDetailListCellProps { FILE: src/renderer/components/item-list/item-detail-list/columns/genre-badge-column.tsx constant MAX_GENRES (line 12) | const MAX_GENRES = 4; FILE: src/renderer/components/item-list/item-detail-list/columns/genre-column.tsx constant TEXT_PROPS (line 8) | const TEXT_PROPS = { isMuted: true, isNoSelect: true, size: 'sm' as cons... FILE: src/renderer/components/item-list/item-detail-list/columns/index.ts type CellComponent (line 40) | type CellComponent = (props: ItemDetailListCellProps) => ReactNode; constant COLUMN_MAP (line 42) | const COLUMN_MAP: Partial> = { type DetailListCellComponentProps (line 76) | type DetailListCellComponentProps = ItemDetailListCellProps & { columnId... function getDetailListCellComponent (line 78) | function getDetailListCellComponent( FILE: src/renderer/components/item-list/item-detail-list/columns/types.ts type ItemDetailListCellProps (line 5) | interface ItemDetailListCellProps { FILE: src/renderer/components/item-list/item-detail-list/item-detail-list.tsx constant DEFAULT_ROW_HEIGHT (line 81) | const DEFAULT_ROW_HEIGHT = 300; constant SKELETON_TRACK_ROW_COUNT (line 83) | const SKELETON_TRACK_ROW_COUNT = 6; type ItemDetailListProps (line 85) | interface ItemDetailListProps { type RowData (line 114) | interface RowData { type TrackRowProps (line 137) | interface TrackRowProps { type MetadataSectionProps (line 415) | interface MetadataSectionProps { type ItemDetailSkeletonRowProps (line 631) | interface ItemDetailSkeletonRowProps { type RowContentProps (line 713) | type RowContentProps = Omit, 'style'>; type DetailListHeaderCellProps (line 880) | interface DetailListHeaderCellProps { type DetailListColumnResizeHandleProps (line 1041) | interface DetailListColumnResizeHandleProps { type DetailListHeaderProps (line 1116) | interface DetailListHeaderProps { constant SCROLL_END_DEBOUNCE_MS (line 1236) | const SCROLL_END_DEBOUNCE_MS = 150; constant DEFAULT_DETAIL_TABLE_ID (line 1238) | const DEFAULT_DETAIL_TABLE_ID = 'album-detail'; method initialized (line 1434) | initialized(osInstance) { FILE: src/renderer/components/item-list/item-detail-list/utils.ts constant FIXED_TRACK_COLUMN_WIDTHS (line 3) | const FIXED_TRACK_COLUMN_WIDTHS: Partial> = { constant HOVER_ONLY_COLUMNS (line 21) | const HOVER_ONLY_COLUMNS: TableColumn[] = [ constant NO_HORIZONTAL_PADDING_COLUMNS (line 27) | const NO_HORIZONTAL_PADDING_COLUMNS: TableColumn[] = [ function getTrackColumnFixed (line 33) | function getTrackColumnFixed(columnId: TableColumn): { function isNoHorizontalPaddingColumn (line 43) | function isNoHorizontalPaddingColumn(columnId: TableColumn): boolean { function isTrackColumnHoverOnly (line 47) | function isTrackColumnHoverOnly(columnId: TableColumn): boolean { function shouldShowHoverOnlyColumnContent (line 51) | function shouldShowHoverOnlyColumnContent( FILE: src/renderer/components/item-list/item-grid-list/item-grid-list.tsx type VirtualizedGridListProps (line 49) | interface VirtualizedGridListProps { type GridItemProps (line 311) | interface GridItemProps { type ItemGridListProps (line 333) | interface ItemGridListProps { method initialized (line 415) | initialized(osInstance) { FILE: src/renderer/components/item-list/item-list-pagination/item-list-pagination.tsx type ItemListWithPaginationProps (line 7) | interface ItemListWithPaginationProps { FILE: src/renderer/components/item-list/item-table-list/album-group-header.tsx type AlbumGroupHeaderProps (line 17) | interface AlbumGroupHeaderProps { FILE: src/renderer/components/item-list/item-table-list/columns/genre-badge-column.tsx constant MAX_GENRES (line 18) | const MAX_GENRES = 4; FILE: src/renderer/components/item-list/item-table-list/columns/title-column.tsx function DefaultTitleColumn (line 34) | function DefaultTitleColumn(props: ItemTableListInnerColumn) { function QueueSongTitleColumn (line 76) | function QueueSongTitleColumn(props: ItemTableListInnerColumn) { FILE: src/renderer/components/item-list/item-table-list/default-columns.ts type DefaultTableColumn (line 5) | type DefaultTableColumn = { constant SONG_TABLE_COLUMNS (line 15) | const SONG_TABLE_COLUMNS: DefaultTableColumn[] = [ constant PLAYLIST_SONG_TABLE_COLUMNS (line 306) | const PLAYLIST_SONG_TABLE_COLUMNS: DefaultTableColumn[] = SONG_TABLE_COL... constant ALBUM_TABLE_COLUMNS (line 308) | const ALBUM_TABLE_COLUMNS: DefaultTableColumn[] = [ constant ALBUM_ARTIST_TABLE_COLUMNS (line 491) | const ALBUM_ARTIST_TABLE_COLUMNS: DefaultTableColumn[] = [ constant PLAYLIST_TABLE_COLUMNS (line 611) | const PLAYLIST_TABLE_COLUMNS: DefaultTableColumn[] = [ constant GENRE_TABLE_COLUMNS (line 686) | const GENRE_TABLE_COLUMNS: DefaultTableColumn[] = [ FILE: src/renderer/components/item-list/item-table-list/hooks/use-container-width-tracking.ts type UseContainerWidthTrackingProps (line 3) | interface UseContainerWidthTrackingProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-item-drag-drop-state.tsx type DragDropState (line 10) | interface DragDropState { type UseItemDragDropStateProps (line 16) | interface UseItemDragDropStateProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-row-interaction-delegate.ts type UseRowInteractionDelegateProps (line 3) | interface UseRowInteractionDelegateProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-sticky-group-row-positioning.ts type UseStickyGroupRowPositioningProps (line 3) | interface UseStickyGroupRowPositioningProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-sticky-header-positioning.ts type UseStickyHeaderPositioningProps (line 3) | interface UseStickyHeaderPositioningProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-sticky-table-group-rows.tsx type GroupRowInfo (line 7) | interface GroupRowInfo { FILE: src/renderer/components/item-list/item-table-list/hooks/use-table-imperative-handle.ts type UseTableImperativeHandleProps (line 6) | interface UseTableImperativeHandleProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-table-initial-scroll.ts type UseTableInitialScrollProps (line 3) | interface UseTableInitialScrollProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-table-keyboard-navigation.ts type UseTableKeyboardNavigationProps (line 12) | interface UseTableKeyboardNavigationProps { FILE: src/renderer/components/item-list/item-table-list/hooks/use-table-pane-sync.ts method initialized (line 47) | initialized(osInstance) { method initialized (line 77) | initialized(osInstance) { FILE: src/renderer/components/item-list/item-table-list/item-table-list-column.tsx type ItemTableListColumn (line 72) | interface ItemTableListColumn extends CellComponentProps { type ItemTableListInnerColumn (line 76) | interface ItemTableListInnerColumn extends ItemTableListColumn { function isAlbumGroupingActive (line 371) | function isAlbumGroupingActive(columns: { id: string; isEnabled?: boolea... function isLastInAlbumGroup (line 375) | function isLastInAlbumGroup( type ColumnResizeHandleProps (line 709) | interface ColumnResizeHandleProps { FILE: src/renderer/components/item-list/item-table-list/item-table-list-context.tsx type ItemTableListConfig (line 14) | type ItemTableListConfig = { type ItemTableListStoreContextValue (line 51) | type ItemTableListStoreContextValue = { class ActiveRowStore (line 55) | class ActiveRowStore { method getActiveRowId (line 59) | getActiveRowId(): null | string { method setActiveRowId (line 63) | setActiveRowId(next: null | string | undefined): void { method subscribe (line 70) | subscribe(listener: () => void): () => void { FILE: src/renderer/components/item-list/item-table-list/item-table-list.tsx type TableItemSize (line 98) | enum TableItemSize { type VirtualizedTableGridProps (line 104) | interface VirtualizedTableGridProps { function shallowEqualNumberArrays (line 727) | function shallowEqualNumberArrays(a: number[], b: number[]): boolean { type TableGroupHeader (line 787) | interface TableGroupHeader { type TableItemProps (line 798) | interface TableItemProps { type ItemTableListProps (line 836) | interface ItemTableListProps { FILE: src/renderer/components/item-list/item-table-list/memoized-cell-router.tsx type MemoizedCellRouterProps (line 11) | interface MemoizedCellRouterProps extends CellComponentProps { type ItemListGridComponentProps (line 67) | interface ItemListGridComponentProps extends ItemListComponentPr... type ItemListHandle (line 73) | interface ItemListHandle { type ItemListItem (line 82) | type ItemListItem = type ItemListTableComponentProps (line 92) | interface ItemListTableComponentProps extends ItemListComponentP... type ItemTableListColumnConfig (line 104) | interface ItemTableListColumnConfig { FILE: src/renderer/components/native-scroll-area/native-scroll-area.tsx type NativeScrollAreaProps (line 12) | interface NativeScrollAreaProps { FILE: src/renderer/components/page-header/page-header.tsx type PageHeaderProps (line 14) | interface PageHeaderProps FILE: src/renderer/components/query-builder/index.tsx type FilterGroup (line 14) | type FilterGroup = { group: string; items: FilterItem[] }; type FilterItem (line 16) | type FilterItem = { label: string; type: string; value: string }; type Filters (line 18) | type Filters = FilterGroup[] | FilterItem[]; type AddArgs (line 19) | type AddArgs = { type DeleteArgs (line 23) | type DeleteArgs = { type QueryBuilderProps (line 29) | interface QueryBuilderProps { FILE: src/renderer/components/query-builder/query-builder-option.tsx type DeleteArgs (line 12) | type DeleteArgs = { type QueryOptionProps (line 18) | interface QueryOptionProps { FILE: src/renderer/components/settings-diff-visualiser/settings-diff-visualiser.tsx type DiffVisualiserProps (line 5) | interface DiffVisualiserProps { FILE: src/renderer/components/simple-item-table/simple-item-table.tsx type TableItemSize (line 22) | enum TableItemSize { type SimpleItemTableProps (line 28) | interface SimpleItemTableProps { type SimpleItemTableRowProps (line 207) | interface SimpleItemTableRowProps { FILE: src/renderer/context/list-context.tsx type ListDisplayMode (line 6) | type ListDisplayMode = LibraryItem.ALBUM | LibraryItem.SONG; type ListContextProps (line 8) | interface ListContextProps { FILE: src/renderer/events/event-emitter.ts class TypedEventEmitterImpl (line 5) | class TypedEventEmitterImpl implements TypedEventEmitter { method emit (line 9) | emit(event: K, payload: EventMap[K]): void { method off (line 22) | off(event: K, callback: EventCallback(event: K, callback: EventCallback(event?: K): void { method setErrorHandler (line 50) | setErrorHandler(handler: ErrorHandler): void { method handleError (line 54) | private handleError(error: Error, event: string, payload: any): void { FILE: src/renderer/events/events.ts type AutoDJQueueAddedEventPayload (line 3) | type AutoDJQueueAddedEventPayload = { type EventMap (line 7) | type EventMap = { type ItemListRefreshEventPayload (line 26) | type ItemListRefreshEventPayload = { type ItemListUpdateItemEventPayload (line 30) | type ItemListUpdateItemEventPayload = { type MediaNextEventPayload (line 36) | type MediaNextEventPayload = { type MediaPrevEventPayload (line 41) | type MediaPrevEventPayload = { type MpvReloadEventPayload (line 46) | type MpvReloadEventPayload = Record; type PlayerPlayEventPayload (line 48) | type PlayerPlayEventPayload = { type PlayerRepeatedEventPayload (line 53) | type PlayerRepeatedEventPayload = { type PlaylistMoveEventPayload (line 57) | type PlaylistMoveEventPayload = { type PlaylistReorderEventPayload (line 62) | type PlaylistReorderEventPayload = { type QueueRestoredEventPayload (line 69) | type QueueRestoredEventPayload = { type UserFavoriteEventPayload (line 75) | type UserFavoriteEventPayload = { type UserRatingEventPayload (line 82) | type UserRatingEventPayload = { FILE: src/renderer/events/types.ts type ErrorHandler (line 1) | type ErrorHandler = (error: Error, event: string, payload: any) => void; type EventCallback (line 3) | type EventCallback = (payload: T) => void; type TypedEventEmitter (line 5) | interface TypedEventEmitter> { FILE: src/renderer/features/action-required/components/action-required-container.tsx type ActionRequiredContainerProps (line 7) | interface ActionRequiredContainerProps { FILE: src/renderer/features/action-required/components/server-required.tsx function ServerSelector (line 51) | function ServerSelector() { FILE: src/renderer/features/albums/components/album-detail-content.tsx type AlbumMetadataTagsProps (line 92) | interface AlbumMetadataTagsProps { constant MOOD_TAG (line 96) | const MOOD_TAG = 'mood'; constant RELEASE_COUNTRY_TAG (line 97) | const RELEASE_COUNTRY_TAG = 'releasecountry'; constant RELEASE_STATUS_TAG (line 98) | const RELEASE_STATUS_TAG = 'releasestatus'; type AlbumMetadataGenresProps (line 228) | interface AlbumMetadataGenresProps { type AlbumMetadataExternalLinksProps (line 294) | interface AlbumMetadataExternalLinksProps { type AlbumDetailSongsTableProps (line 522) | interface AlbumDetailSongsTableProps { type DiscGroupRowProps (line 526) | interface DiscGroupRowProps { function AlbumDetailCarousels (line 600) | function AlbumDetailCarousels({ data }: { data: Album }) { FILE: src/renderer/features/albums/components/album-grid-carousel.tsx type AlbumGridCarouselProps (line 10) | interface AlbumGridCarouselProps { function AlbumGridCarousel (line 17) | function AlbumGridCarousel(props: AlbumGridCarouselProps) { FILE: src/renderer/features/albums/components/album-infinite-carousel.tsx type AlbumCarouselProps (line 25) | interface AlbumCarouselProps { function useAlbumListInfinite (line 138) | function useAlbumListInfinite( FILE: src/renderer/features/albums/components/album-list-content.tsx type OverrideAlbumListQuery (line 98) | type OverrideAlbumListQuery = Omit, 'limit' | 's... FILE: src/renderer/features/albums/components/album-list-header.tsx type AlbumListHeaderProps (line 21) | interface AlbumListHeaderProps { FILE: src/renderer/features/albums/components/album-list-infinite-detail.tsx type AlbumListInfiniteDetailProps (line 19) | interface AlbumListInfiniteDetailProps extends ItemListComponentProps(value: T): T | undefined { FILE: src/renderer/features/artists/components/album-artist-detail-content.tsx type AlbumArtistActionButtonsProps (line 95) | interface AlbumArtistActionButtonsProps { type AlbumArtistMetadataGenresProps (line 157) | interface AlbumArtistMetadataGenresProps { type AlbumArtistMetadataBiographyProps (line 202) | interface AlbumArtistMetadataBiographyProps { constant TABLE_ROW_HEIGHT (line 276) | const TABLE_ROW_HEIGHT = { constant TABLE_HEADER_HEIGHT (line 282) | const TABLE_HEADER_HEIGHT = 40; type SongTableListContainerProps (line 284) | interface SongTableListContainerProps { function getTableRowHeight (line 292) | function getTableRowHeight(size: 'compact' | 'default' | 'large' | undef... type AlbumArtistMetadataTopSongsProps (line 309) | interface AlbumArtistMetadataTopSongsProps { type AlbumArtistMetadataFavoriteSongsProps (line 608) | interface AlbumArtistMetadataFavoriteSongsProps { type AlbumArtistMetadataExternalLinksProps (line 887) | interface AlbumArtistMetadataExternalLinksProps { type AlbumArtistMetadataSimilarArtistsProps (line 1039) | interface AlbumArtistMetadataSimilarArtistsProps { type AlbumArtistDetailContentProps (line 1124) | interface AlbumArtistDetailContentProps { type AlbumSectionProps (line 1270) | interface AlbumSectionProps { constant MAX_SECTION_CARDS (line 1280) | const MAX_SECTION_CARDS = 100; type ArtistAlbumsProps (line 1445) | interface ArtistAlbumsProps { function GroupingTypeSelector (line 1571) | function GroupingTypeSelector() { FILE: src/renderer/features/artists/components/album-artist-detail-favorite-songs-list-header.tsx type AlbumArtistDetailFavoriteSongsListHeaderProps (line 9) | interface AlbumArtistDetailFavoriteSongsListHeaderProps { FILE: src/renderer/features/artists/components/album-artist-detail-header.tsx type AlbumArtistDetailHeaderProps (line 30) | interface AlbumArtistDetailHeaderProps { FILE: src/renderer/features/artists/components/album-artist-detail-top-songs-list-header.tsx type AlbumArtistDetailTopSongsListHeaderProps (line 9) | interface AlbumArtistDetailTopSongsListHeaderProps { FILE: src/renderer/features/artists/components/album-artist-grid-carousel.tsx type AlbumArtistGridCarouselProps (line 13) | interface AlbumArtistGridCarouselProps { function AlbumArtistGridCarousel (line 21) | function AlbumArtistGridCarousel(props: AlbumArtistGridCarouselProps) { FILE: src/renderer/features/artists/components/album-artist-infinite-carousel.tsx type AlbumArtistCarouselProps (line 25) | interface AlbumArtistCarouselProps { function useAlbumArtistListInfinite (line 138) | function useAlbumArtistListInfinite( FILE: src/renderer/features/artists/components/album-artist-list-content.tsx type OverrideAlbumArtistListQuery (line 59) | type OverrideAlbumArtistListQuery = Omit = { FILE: src/renderer/features/item-details/components/song-path.tsx type SongPathProps (line 14) | type SongPathProps = { FILE: src/renderer/features/login/routes/login-route.tsx constant SERVER_ICONS (line 42) | const SERVER_ICONS: Record = { constant SERVER_NAMES (line 48) | const SERVER_NAMES: Record = { FILE: src/renderer/features/lyrics/api/lyrics-api.ts type LyricsQueryResult (line 28) | type LyricsQueryResult = { function computeSelectedFromResult (line 83) | function computeSelectedFromResult( function fetchLocalLyrics (line 150) | async function fetchLocalLyrics(params: { function fetchRemoteLyricsAuto (line 195) | async function fetchRemoteLyricsAuto(song: QueueSong): Promise { FILE: src/renderer/features/lyrics/lyrics-actions.tsx type LyricsActionsProps (line 15) | interface LyricsActionsProps { FILE: src/renderer/features/lyrics/lyrics.tsx type LyricsProps (line 38) | type LyricsProps = { FILE: src/renderer/features/lyrics/synchronized-lyrics.tsx type SynchronizedLyricsProps (line 23) | interface SynchronizedLyricsProps extends Omit... type PlaylistDetailSongListViewProps (line 101) | interface PlaylistDetailSongListViewProps { FILE: src/renderer/features/playlists/components/playlist-detail-song-list-grid.tsx type PlaylistDetailSongListGridProps (line 23) | interface PlaylistDetailSongListGridProps FILE: src/renderer/features/playlists/components/playlist-detail-song-list-header-filters.tsx type PlaylistDetailSongListHeaderFiltersProps (line 56) | interface PlaylistDetailSongListHeaderFiltersProps { FILE: src/renderer/features/playlists/components/playlist-detail-song-list-header.tsx type PlaylistDetailSongListHeaderProps (line 26) | interface PlaylistDetailSongListHeaderProps { FILE: src/renderer/features/playlists/components/playlist-detail-song-list-table.tsx type PlaylistDetailSongListTableProps (line 26) | interface PlaylistDetailSongListTableProps FILE: src/renderer/features/playlists/components/playlist-list-header.tsx type PlaylistListHeaderProps (line 15) | interface PlaylistListHeaderProps { FILE: src/renderer/features/playlists/components/playlist-list-infinite-grid.tsx type PlaylistListInfiniteGridProps (line 19) | interface PlaylistListInfiniteGridProps extends ItemListGridComponentPro... FILE: src/renderer/features/playlists/components/playlist-list-infinite-table.tsx type PlaylistListInfiniteTableProps (line 20) | interface PlaylistListInfiniteTableProps extends ItemListTableComponentP... FILE: src/renderer/features/playlists/components/playlist-list-paginated-grid.tsx type PlaylistListPaginatedGridProps (line 21) | interface PlaylistListPaginatedGridProps extends ItemListGridComponentPr... FILE: src/renderer/features/playlists/components/playlist-list-paginated-table.tsx type PlaylistListPaginatedTableProps (line 22) | interface PlaylistListPaginatedTableProps extends ItemListTableComponent... FILE: src/renderer/features/playlists/components/playlist-query-builder.tsx type AddArgs (line 41) | type AddArgs = { type DeleteArgs (line 46) | type DeleteArgs = { type PlaylistQueryBuilderProps (line 52) | interface PlaylistQueryBuilderProps { type SortEntry (line 60) | type SortEntry = { constant DEFAULT_QUERY (line 65) | const DEFAULT_QUERY: QueryBuilderGroup = { type PlaylistQueryBuilderRef (line 154) | type PlaylistQueryBuilderRef = { type FilterGroup (line 431) | type FilterGroup = { FILE: src/renderer/features/playlists/components/playlist-query-editor.tsx type PlaylistQueryEditorProps (line 27) | interface PlaylistQueryEditorProps { type AppliedJsonState (line 44) | type AppliedJsonState = { type EditorMode (line 50) | type EditorMode = 'builder' | 'json'; FILE: src/renderer/features/playlists/components/save-as-playlist-form.tsx type SaveAsPlaylistFormProps (line 20) | interface SaveAsPlaylistFormProps { FILE: src/renderer/features/playlists/hooks/use-playlist-track-list.ts function applyClientSideSongFilters (line 17) | function applyClientSideSongFilters(songs: Song[], query: Record = { constant ALL_SERVERS (line 88) | const ALL_SERVERS = Object.keys(SERVER_TYPES).map((serverType) => { FILE: src/renderer/features/servers/components/edit-server-form.tsx type EditServerFormProps (line 30) | interface EditServerFormProps { FILE: src/renderer/features/servers/components/ignore-cors-ssl-switches.tsx function IgnoreCorsSslSwitches (line 11) | function IgnoreCorsSslSwitches() { FILE: src/renderer/features/servers/components/server-list-item.tsx type ServerListItemProps (line 19) | interface ServerListItemProps { FILE: src/renderer/features/servers/components/server-section.tsx type ServerSectionProps (line 5) | interface ServerSectionProps { FILE: src/renderer/features/settings/components/advanced/logger-settings.tsx constant DEFAULT_LOG_LEVEL (line 11) | const DEFAULT_LOG_LEVEL: LogLevel = process.env.NODE_ENV === 'production... FILE: src/renderer/features/settings/components/general/application-settings.tsx constant HOME_FEATURE_STYLE_OPTIONS (line 44) | const HOME_FEATURE_STYLE_OPTIONS = [ constant SIDE_QUEUE_OPTIONS (line 61) | const SIDE_QUEUE_OPTIONS = [ constant SIDE_QUEUE_LAYOUT_OPTIONS (line 78) | const SIDE_QUEUE_LAYOUT_OPTIONS = [ constant FONT_TYPES (line 95) | const FONT_TYPES: Font[] = [ FILE: src/renderer/features/settings/components/general/artist-settings.tsx constant ARTIST_ITEMS (line 12) | const ARTIST_ITEMS: Array<[ArtistItem, string]> = [ constant ARTIST_RELEASE_TYPE_ITEMS (line 35) | const ARTIST_RELEASE_TYPE_ITEMS: Array<[ArtistReleaseTypeItem, string]> = [ FILE: src/renderer/features/settings/components/general/draggable-item.tsx type DraggableItemProps (line 23) | interface DraggableItemProps { type SidebarItem (line 29) | interface SidebarItem { FILE: src/renderer/features/settings/components/general/draggable-items.tsx type DraggableItemsProps (line 12) | type DraggableItemsProps = { FILE: src/renderer/features/settings/components/general/fullscreen-player-settings.tsx constant PLAYER_ITEMS (line 11) | const PLAYER_ITEMS: Array<[PlayerItem, string]> = [ FILE: src/renderer/features/settings/components/general/home-settings.tsx constant HOME_ITEMS (line 11) | const HOME_ITEMS: Array<[string, string]> = [ FILE: src/renderer/features/settings/components/general/query-builder-settings.tsx constant QUERY_VALUE_INPUT_TYPES (line 16) | const QUERY_VALUE_INPUT_TYPES = [ FILE: src/renderer/features/settings/components/general/sidebar-reorder.tsx constant SIDEBAR_ITEMS (line 12) | const SIDEBAR_ITEMS: Array<[string, string]> = [ FILE: src/renderer/features/settings/components/hotkeys/hotkey-manager-settings.tsx constant BINDINGS_MAP (line 24) | const BINDINGS_MAP: Record = { FILE: src/renderer/features/settings/components/hotkeys/media-session-settings.tsx function handleMediaSessionChange (line 23) | function handleMediaSessionChange(e: boolean) { FILE: src/renderer/features/settings/components/playback/audio-settings.tsx type AudioDeviceOption (line 39) | type AudioDeviceOption = { label: string; value: string }; FILE: src/renderer/features/settings/components/playback/player-filter-settings.tsx type FilterFieldConfig (line 32) | type FilterFieldConfig = { FILE: src/renderer/features/settings/components/settings-header.tsx type SettingsHeaderProps (line 15) | type SettingsHeaderProps = { FILE: src/renderer/features/settings/components/settings-option.tsx type SettingsOptionProps (line 9) | interface SettingsOptionProps { FILE: src/renderer/features/settings/components/settings-section.tsx type SettingOption (line 8) | type SettingOption = { type SettingsSectionProps (line 16) | interface SettingsSectionProps { FILE: src/renderer/features/settings/components/window/password-settings.tsx constant PASSWORD_SETTINGS (line 14) | const PASSWORD_SETTINGS: { label: string; value: string }[] = [ FILE: src/renderer/features/settings/components/window/update-settings.tsx function disableAutoUpdates (line 16) | function disableAutoUpdates(): boolean { FILE: src/renderer/features/settings/components/window/window-settings.tsx constant WINDOW_BAR_OPTIONS (line 15) | const WINDOW_BAR_OPTIONS = [ FILE: src/renderer/features/shared/components/animated-page.tsx type AnimatedPageProps (line 10) | interface AnimatedPageProps { FILE: src/renderer/features/shared/components/component-error-boundary.tsx type ComponentErrorFallbackProps (line 12) | interface ComponentErrorFallbackProps { type ComponentErrorBoundaryProps (line 41) | interface ComponentErrorBoundaryProps { FILE: src/renderer/features/shared/components/display-type-toggle-button.tsx type DisplayTypeToggleButtonProps (line 6) | interface DisplayTypeToggleButtonProps { FILE: src/renderer/features/shared/components/filter-button.tsx type FilterButtonProps (line 5) | interface FilterButtonProps extends ActionIconProps { FILE: src/renderer/features/shared/components/folder-button.tsx type FolderButtonProps (line 5) | interface FolderButtonProps extends ActionIconProps { FILE: src/renderer/features/shared/components/grid-config.tsx type GridConfigProps (line 41) | type GridConfigProps = { FILE: src/renderer/features/shared/components/json-preview.tsx type JsonPreviewProps (line 5) | interface JsonPreviewProps { FILE: src/renderer/features/shared/components/library-background-overlay.tsx type LibraryBackgroundOverlayProps (line 9) | interface LibraryBackgroundOverlayProps { type BackgroundOverlayProps (line 34) | interface BackgroundOverlayProps { type LibraryBackgroundProps (line 69) | interface LibraryBackgroundProps { FILE: src/renderer/features/shared/components/library-container.tsx type LibraryContainerProps (line 5) | interface LibraryContainerProps { FILE: src/renderer/features/shared/components/library-header-bar.tsx type LibraryHeaderBarProps (line 17) | interface LibraryHeaderBarProps { type HeaderPlayButtonProps (line 33) | interface HeaderPlayButtonProps { type TitleProps (line 42) | interface TitleProps { type HeaderBadgeProps (line 112) | interface HeaderBadgeProps extends BadgeProps { FILE: src/renderer/features/shared/components/library-header.tsx type LibraryHeaderProps (line 34) | interface LibraryHeaderProps { type LibraryHeaderMenuProps (line 280) | interface LibraryHeaderMenuProps { FILE: src/renderer/features/shared/components/list-config-menu.tsx constant SONG_DISPLAY_TYPES (line 21) | const SONG_DISPLAY_TYPES: ListConfigMenuDisplayTypeConfig[] = [ constant DISPLAY_TYPES (line 25) | const DISPLAY_TYPES = [ type ListConfigMenuDetailConfig (line 79) | interface ListConfigMenuDetailConfig { type ListConfigMenuDisplayTypeConfig (line 85) | interface ListConfigMenuDisplayTypeConfig { type ListConfigMenuOptionConfig (line 91) | interface ListConfigMenuOptionConfig { type ListConfigMenuOptionsConfig (line 96) | interface ListConfigMenuOptionsConfig { type ListConfigMenuProps (line 108) | interface ListConfigMenuProps { FILE: src/renderer/features/shared/components/list-display-type-toggle-button.tsx type ListDisplayTypeToggleButtonProps (line 5) | interface ListDisplayTypeToggleButtonProps { FILE: src/renderer/features/shared/components/list-filters.tsx type ListFiltersProps (line 28) | interface ListFiltersProps { type ListFiltersTitleProps (line 141) | interface ListFiltersTitleProps { constant FILTERS (line 181) | const FILTERS = { FILE: src/renderer/features/shared/components/list-music-folder-dropdown.tsx type ListMusicFolderDropdownProps (line 10) | interface ListMusicFolderDropdownProps { FILE: src/renderer/features/shared/components/list-refresh-button.tsx type ListRefreshButtonProps (line 8) | interface ListRefreshButtonProps { constant LIST_REFRESH_MUTATION_KEY (line 23) | const LIST_REFRESH_MUTATION_KEY = 'item-list-refresh'; FILE: src/renderer/features/shared/components/list-search-input.tsx function navigationIdFromState (line 6) | function navigationIdFromState(state: unknown): string | undefined { FILE: src/renderer/features/shared/components/list-select-filter.tsx type SelectOption (line 7) | type SelectOption = string | { label: string; value: string }; type ListSelectFilterProps (line 9) | interface ListSelectFilterProps { FILE: src/renderer/features/shared/components/list-sort-by-dropdown.tsx type ListSortByDropdownProps (line 22) | interface ListSortByDropdownProps { type ListSortByDropdownControlledProps (line 79) | interface ListSortByDropdownControlledProps { constant CLIENT_SIDE_SONG_FILTERS (line 133) | const CLIENT_SIDE_SONG_FILTERS = [ constant CLIENT_SIDE_ALBUM_FILTERS (line 221) | const CLIENT_SIDE_ALBUM_FILTERS = [ constant ALBUM_LIST_FILTERS (line 294) | const ALBUM_LIST_FILTERS: Partial< constant SONG_LIST_FILTERS (line 460) | const SONG_LIST_FILTERS: Partial< constant FOLDER_LIST_FILTERS (line 606) | const FOLDER_LIST_FILTERS: Partial< constant PLAYLIST_SONG_LIST_FILTERS (line 635) | const PLAYLIST_SONG_LIST_FILTERS: Partial< constant ALBUM_ARTIST_LIST_FILTERS (line 643) | const ALBUM_ARTIST_LIST_FILTERS: Partial< constant ARTIST_LIST_FILTERS (line 729) | const ARTIST_LIST_FILTERS: Partial< constant GENRE_LIST_FILTERS (line 815) | const GENRE_LIST_FILTERS: Partial< constant PLAYLIST_LIST_FILTERS (line 841) | const PLAYLIST_LIST_FILTERS: Partial< constant RADIO_LIST_FILTERS (line 902) | const RADIO_LIST_FILTERS: Partial< constant FILTERS (line 943) | const FILTERS: Partial> = { FILE: src/renderer/features/shared/components/list-sort-order-toggle-button.tsx type ListSortOrderToggleButtonProps (line 6) | interface ListSortOrderToggleButtonProps { type ListSortOrderToggleButtonControlledProps (line 33) | interface ListSortOrderToggleButtonControlledProps { FILE: src/renderer/features/shared/components/list-with-sidebar-container.tsx type ListWithSidebarContainerContextValue (line 10) | interface ListWithSidebarContainerContextValue { type ListWithSidebarContainerProps (line 18) | interface ListWithSidebarContainerProps { type SidebarPortalProps (line 24) | interface SidebarPortalProps { type SidebarProps (line 28) | interface SidebarProps { function Sidebar (line 32) | function Sidebar({ children }: SidebarProps) { function SidebarPortal (line 52) | function SidebarPortal({ children }: SidebarPortalProps) { FILE: src/renderer/features/shared/components/more-button.tsx type MoreButtonProps (line 3) | interface MoreButtonProps extends ActionIconProps {} FILE: src/renderer/features/shared/components/multi-select-rows.tsx function ArtistMultiSelectRow (line 13) | function ArtistMultiSelectRow({ function GenreMultiSelectRow (line 76) | function GenreMultiSelectRow({ FILE: src/renderer/features/shared/components/order-toggle-button.tsx type OrderToggleButtonProps (line 6) | interface OrderToggleButtonProps { FILE: src/renderer/features/shared/components/page-error-boundary.tsx type PageErrorFallbackProps (line 15) | interface PageErrorFallbackProps { type PageErrorBoundaryProps (line 79) | interface PageErrorBoundaryProps { FILE: src/renderer/features/shared/components/play-button-group.tsx constant LONG_PRESS_PLAY_BEHAVIOR (line 70) | const LONG_PRESS_PLAY_BEHAVIOR = { constant PLAY_BEHAVIOR_TO_LABEL (line 76) | const PLAY_BEHAVIOR_TO_LABEL = { type PlayButtonGroupPopoverProps (line 114) | interface PlayButtonGroupPopoverProps extends PlayButtonGroupProps { type PlayButtonGroupProps (line 120) | interface PlayButtonGroupProps { type PopoverPosition (line 125) | type PopoverPosition = 'bottom' | 'left' | 'right' | 'top'; FILE: src/renderer/features/shared/components/play-button.tsx type DefaultPlayButtonProps (line 16) | interface DefaultPlayButtonProps extends ActionIconProps { type TextPlayButtonProps (line 41) | interface TextPlayButtonProps extends ButtonProps { type PlayButtonProps (line 137) | interface PlayButtonProps { FILE: src/renderer/features/shared/components/refresh-button.tsx type RefreshButtonProps (line 5) | interface RefreshButtonProps extends ActionIconProps { FILE: src/renderer/features/shared/components/resize-handle.tsx type ResizeHandleProps (line 6) | interface ResizeHandleProps extends HTMLAttributes { FILE: src/renderer/features/shared/components/router-error-boundary.tsx type RouterErrorFallbackProps (line 15) | interface RouterErrorFallbackProps { type RouterErrorBoundaryProps (line 85) | interface RouterErrorBoundaryProps { FILE: src/renderer/features/shared/components/save-as-collection-button.tsx type SaveAsCollectionButtonProps (line 23) | interface SaveAsCollectionButtonProps { FILE: src/renderer/features/shared/components/search-input.tsx type SearchInputProps (line 19) | interface SearchInputProps extends TextInputProps { FILE: src/renderer/features/shared/components/settings-button.tsx type SettingsButtonProps (line 5) | interface SettingsButtonProps extends ActionIconProps {} FILE: src/renderer/features/shared/components/table-config.tsx type TableConfigProps (line 46) | interface TableConfigProps { FILE: src/renderer/features/shared/components/tag-filter.tsx type TagFilterItemProps (line 11) | interface TagFilterItemProps { type TagFiltersProps (line 61) | interface TagFiltersProps { FILE: src/renderer/features/shared/hooks/use-list-filter-persistence.ts type ListFilterPersistence (line 4) | interface ListFilterPersistence { FILE: src/renderer/features/shared/hooks/use-play-button-click.ts type UsePlayButtonClickOptions (line 6) | interface UsePlayButtonClickOptions { type UsePlayButtonClickReturn (line 13) | interface UsePlayButtonClickReturn { FILE: src/renderer/features/shared/mutations/favorite-optimistic-updates.ts type PreviousQueryData (line 23) | interface PreviousQueryData { type PendingUpdate (line 28) | interface PendingUpdate { function collectAndApplyUpdates (line 34) | function collectAndApplyUpdates( function updateItemInArray (line 48) | function updateItemInArray( function updateItemsInPages (line 65) | function updateItemsInPages( function updateItemsInPages (line 61) | function updateItemsInPages, 'limit' | 'sta... FILE: src/renderer/features/songs/components/song-list-header.tsx type SongListHeaderProps (line 22) | interface SongListHeaderProps { FILE: src/renderer/features/songs/components/song-list-infinite-grid.tsx type SongListInfiniteGridProps (line 15) | interface SongListInfiniteGridProps extends ItemListGridComponentProps) { function initializeVisualizer (line 161) | async function initializeVisualizer(width: number, height: number) { FILE: src/renderer/global.d.ts type Window (line 2) | interface Window { FILE: src/renderer/hooks/use-check-for-updates.ts constant CHECK_FOR_UPDATES_INTERVAL_MS (line 5) | const CHECK_FOR_UPDATES_INTERVAL_MS = 6 * 60 * 60 * 1000; FILE: src/renderer/hooks/use-container-query.ts type UseContainerQueryProps (line 3) | interface UseContainerQueryProps { FILE: src/renderer/hooks/use-drag-drop.tsx type UseDraggableProps (line 25) | interface UseDraggableProps { FILE: src/renderer/hooks/use-garbage-collection.ts constant GARBAGE_COLLECTION_INTERVAL (line 5) | const GARBAGE_COLLECTION_INTERVAL = 1000 * 60 * 5; FILE: src/renderer/hooks/use-genre-route.ts constant ALBUM_REGEX (line 6) | const ALBUM_REGEX = /albums$/; constant SONG_REGEX (line 7) | const SONG_REGEX = /songs$/; FILE: src/renderer/hooks/use-server-authenticated.ts constant MIN_AUTH_DELAY_MS (line 19) | const MIN_AUTH_DELAY_MS = 1000; constant MAX_NETWORK_RETRIES (line 20) | const MAX_NETWORK_RETRIES = 1; constant NETWORK_RETRY_DELAY_MS (line 21) | const NETWORK_RETRY_DELAY_MS = 500; FILE: src/renderer/layouts/default-layout.tsx type DefaultLayoutProps (line 27) | interface DefaultLayoutProps { FILE: src/renderer/layouts/default-layout/left-sidebar.tsx type LeftSidebarProps (line 20) | interface LeftSidebarProps { FILE: src/renderer/layouts/default-layout/main-content.tsx constant MINIMUM_SIDEBAR_WIDTH (line 25) | const MINIMUM_SIDEBAR_WIDTH = 260; function GlobalExpandedPanel (line 218) | function GlobalExpandedPanel() { function MainContentBody (line 230) | function MainContentBody() { FILE: src/renderer/layouts/default-layout/right-sidebar.tsx type RightSidebarProps (line 48) | interface RightSidebarProps { FILE: src/renderer/layouts/mobile-layout/mobile-layout.tsx type MobileLayoutProps (line 26) | interface MobileLayoutProps { FILE: src/renderer/layouts/responsive-layout.tsx type ResponsiveLayoutProps (line 19) | interface ResponsiveLayoutProps { FILE: src/renderer/layouts/window-bar.tsx type WindowBarControlsProps (line 29) | interface WindowBarControlsProps { FILE: src/renderer/lib/react-query.ts type InfiniteQueryHookArgs (line 42) | type InfiniteQueryHookArgs = { type MutationHookArgs (line 48) | type MutationHookArgs = { type MutationOptions (line 52) | type MutationOptions = { type QueryHookArgs (line 62) | type QueryHookArgs = { type UseQueryHookOptions (line 68) | type UseQueryHookOptions = { FILE: src/renderer/lib/zustand.ts type WithSelectors (line 3) | type WithSelectors = S extends { getState: () => infer T } FILE: src/renderer/main.tsx function createIDBPersister (line 12) | function createIDBPersister(idbValidKey: IDBValidKey = 'reactQuery') { FILE: src/renderer/release-notes-modal.tsx constant GITHUB_RELEASES_URL (line 22) | const GITHUB_RELEASES_URL = 'https://api.github.com/repos/jeffvli/feishi... constant GITHUB_COMPARE_URL (line 23) | const GITHUB_COMPARE_URL = 'https://api.github.com/repos/jeffvli/feishin... constant RELEASES_TO_FETCH (line 24) | const RELEASES_TO_FETCH = 30; type GitHubCompareCommit (line 26) | interface GitHubCompareCommit { type GitHubCompareResponse (line 35) | interface GitHubCompareResponse { type GitHubRelease (line 40) | interface GitHubRelease { type ReleaseNotesContentProps (line 48) | interface ReleaseNotesContentProps { function isAlphaVersion (line 53) | function isAlphaVersion(version: string): boolean { function parseVersionFromTag (line 57) | function parseVersionFromTag(tagName: string): string { function toTag (line 61) | function toTag(version: string): string { constant WAIT_FOR_LOCAL_STORAGE (line 398) | const WAIT_FOR_LOCAL_STORAGE = 1000 * 2; type ReleaseNotesModalContentWrapperProps (line 400) | interface ReleaseNotesModalContentWrapperProps { FILE: src/renderer/router/routes.ts type AppRoute (line 1) | enum AppRoute { FILE: src/renderer/store/app.store.ts type AppSlice (line 12) | interface AppSlice extends AppState { type AppState (line 34) | interface AppState { type GlobalExpandedState (line 62) | interface GlobalExpandedState { type CommandPaletteProps (line 67) | type CommandPaletteProps = { type SidebarProps (line 74) | type SidebarProps = { type TitlebarProps (line 84) | type TitlebarProps = { FILE: src/renderer/store/auth.store.ts type AuthSlice (line 10) | interface AuthSlice extends AuthState { type AuthState (line 21) | interface AuthState { FILE: src/renderer/store/env-settings-overrides.ts constant APP_THEMES (line 5) | const APP_THEMES = new Set([ constant DISCORD_DISPLAY_TYPES (line 37) | const DISCORD_DISPLAY_TYPES = new Set(['artist', 'feishin', 'song']); constant DISCORD_LINK_TYPES (line 38) | const DISCORD_LINK_TYPES = new Set(['last_fm', 'musicbrainz', 'musicbrai... constant LYRICS_ALIGNMENTS (line 39) | const LYRICS_ALIGNMENTS = new Set(['center', 'left', 'right']); constant FONT_TYPES (line 40) | const FONT_TYPES = new Set(['builtIn', 'custom', 'system']); constant HOME_FEATURE_STYLES (line 41) | const HOME_FEATURE_STYLES = new Set(['multiple', 'single']); constant SIDE_QUEUE_TYPES (line 42) | const SIDE_QUEUE_TYPES = new Set(['sideDrawerQueue', 'sideQueue']); constant SIDE_QUEUE_LAYOUTS (line 43) | const SIDE_QUEUE_LAYOUTS = new Set(['horizontal', 'vertical']); type EnvSettingsOverrides (line 45) | type EnvSettingsOverrides = DeepPartial< type DeepPartial (line 49) | type DeepPartial = { type EnvSettingSpec (line 53) | interface EnvSettingSpec { function setAtPath (line 62) | function setAtPath( constant RGB_ACCENT_REGEX (line 80) | const RGB_ACCENT_REGEX = /^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1... constant ENV_SETTING_SPECS (line 82) | const ENV_SETTING_SPECS: EnvSettingSpec[] = [ function getEnvSettingsOverrides (line 320) | function getEnvSettingsOverrides(): EnvSettingsOverrides { function getWin (line 342) | function getWin(): Record & Window { function isUnsubstitutedPlaceholder (line 347) | function isUnsubstitutedPlaceholder(s: string): boolean { function parseBool (line 351) | function parseBool(s: string | undefined): boolean | undefined { function parseEnum (line 359) | function parseEnum(s: string | undefined, allowed: Set... function parseNum (line 365) | function parseNum(s: string | undefined): number | undefined { function parseValue (line 371) | function parseValue(raw: string | undefined, spec: EnvSettingSpec): unkn... FILE: src/renderer/store/full-screen-player.store.ts type FullScreenPlayerSlice (line 6) | interface FullScreenPlayerSlice extends FullScreenPlayerState { type FullScreenPlayerState (line 12) | interface FullScreenPlayerState { FILE: src/renderer/store/player.store.ts type PlayerState (line 27) | interface PlayerState extends Actions, State {} type QueueGroupingProperty (line 29) | type QueueGroupingProperty = keyof QueueSong; type Actions (line 31) | interface Actions { type GroupedQueue (line 84) | interface GroupedQueue { type State (line 89) | interface State { function calculateNextSong (line 109) | function calculateNextSong( function isShuffleEnabled (line 136) | function isShuffleEnabled(state: { function mapShuffledToQueueIndex (line 144) | function mapShuffledToQueueIndex(shuffledIndex: number, shuffled: number... function addIndexesToShuffled (line 152) | function addIndexesToShuffled( function adjustShuffledIndexesForInsertion (line 166) | function adjustShuffledIndexesForInsertion( function calculateNextIndex (line 180) | function calculateNextIndex( function emitPlayerPlayEvent (line 207) | function emitPlayerPlayEvent( function findShuffledPositionForQueueIndex (line 270) | function findShuffledPositionForQueueIndex( function generateShuffledIndexes (line 279) | function generateShuffledIndexes(length: number): number[] { function regenerateShuffledIndexesIfNeeded (line 285) | function regenerateShuffledIndexesIfNeeded(state: { type AddToQueueByPlayType (line 1671) | type AddToQueueByPlayType = Play; type AddToQueueByUniqueId (line 1673) | type AddToQueueByUniqueId = { type AddToQueueType (line 1678) | type AddToQueueType = AddToQueueByPlayType | AddToQueueByUniqueId; function addToQueueByData (line 1680) | async function addToQueueByData(type: AddToQueueType, data: Song[]) { function cleanupOrphanedSongs (line 2098) | function cleanupOrphanedSongs(state: any): boolean { function parseUniqueSeekToTimestamp (line 2129) | function parseUniqueSeekToTimestamp(timestamp: string) { function recalculatePlayerIndex (line 2133) | function recalculatePlayerIndex(state: any, queue: string[]) { function toQueueSong (line 2144) | function toQueueSong(item: Song): QueueSong { function uniqueSeekToTimestamp (line 2152) | function uniqueSeekToTimestamp(timestamp: number) { FILE: src/renderer/store/scroll.store.ts type ScrollState (line 3) | type ScrollState = { FILE: src/renderer/store/settings.store.ts type DeepPartial (line 46) | type DeepPartial = { type ItemTableListColumnConfig (line 207) | type ItemTableListColumnConfig = z.infer; type HomeFeatureStyle (line 429) | enum HomeFeatureStyle { type ArtistItem (line 704) | enum ArtistItem { type ArtistReleaseTypeItem (line 712) | enum ArtistReleaseTypeItem { type BarAlign (line 733) | enum BarAlign { type BindingActions (line 739) | enum BindingActions { type DiscordDisplayType (line 781) | enum DiscordDisplayType { type DiscordLinkType (line 787) | enum DiscordLinkType { type GenreTarget (line 794) | enum GenreTarget { type HomeItem (line 799) | enum HomeItem { type PlayerbarSliderType (line 808) | enum PlayerbarSliderType { type PlayerItem (line 813) | enum PlayerItem { type PlaylistTarget (line 827) | enum PlaylistTarget { type SidebarItem (line 832) | enum SidebarItem { type DataGridProps (line 849) | type DataGridProps = { type DataTableProps (line 857) | type DataTableProps = z.infer; type ItemDetailListProps (line 858) | type ItemDetailListProps = z.infer; type ItemListSettings (line 859) | type ItemListSettings = { type PlayerFilter (line 868) | type PlayerFilter = z.infer; type PlayerFilterField (line 870) | type PlayerFilterField = z.infer; type PlayerFilterOperator (line 872) | type PlayerFilterOperator = z.infer; type SettingsSlice (line 874) | interface SettingsSlice extends z.infer { type SettingsState (line 897) | interface SettingsState extends z.infer {} type SidebarItemType (line 898) | type SidebarItemType = z.infer; type SideQueueLayout (line 900) | type SideQueueLayout = z.infer; type SideQueueType (line 901) | type SideQueueType = z.infer; type SortableItem (line 903) | type SortableItem = { type TranscodingConfig (line 908) | type TranscodingConfig = z.infer; type VersionedSettings (line 910) | type VersionedSettings = SettingsState & { version: number }; method migrate (line 2074) | migrate(persistedState, version) { FILE: src/renderer/store/sleep-timer.store.ts type SleepTimerMode (line 4) | type SleepTimerMode = 'endOfSong' | 'timed'; type SleepTimerActions (line 6) | interface SleepTimerActions { type SleepTimerState (line 13) | interface SleepTimerState { FILE: src/renderer/store/timestamp.store.ts type TimestampState (line 4) | interface TimestampState { FILE: src/renderer/themes/mantine-theme.tsx function createMantineTheme (line 140) | function createMantineTheme(theme: AppThemeConfiguration): MantineThemeO... FILE: src/renderer/themes/use-app-theme.ts constant THEME_DATA (line 18) | const THEME_DATA = [ FILE: src/renderer/types/emotion.d.ts type GREY (line 5) | interface GREY extends MantineTheme {} FILE: src/renderer/types/fonts.ts type Font (line 3) | type Font = { constant FONT_OPTIONS (line 8) | const FONT_OPTIONS: Font[] = [ FILE: src/renderer/utils/format.tsx constant SIZES (line 145) | const SIZES = ['B', 'KiB', 'MiB', 'GiB', 'TiB']; FILE: src/renderer/utils/linkify.tsx constant URL_REGEX (line 4) | const URL_REGEX = FILE: src/renderer/utils/logger.ts type LogCategory (line 3) | enum LogCategory { type LogLevel (line 15) | type LogLevel = 'debug' | 'error' | 'info' | 'warn'; type LogFn (line 17) | interface LogFn { type Logger (line 27) | interface Logger { constant DEFAULT_LOG_LEVEL (line 35) | const DEFAULT_LOG_LEVEL = process.env.NODE_ENV === 'production' ? 'info'... constant DEBOUNCE_INTERVAL (line 48) | const DEBOUNCE_INTERVAL = 200; constant DEBOUNCE_MAP (line 49) | const DEBOUNCE_MAP = new Map(); class ConsoleLogger (line 77) | class ConsoleLogger implements Logger { method constructor (line 84) | constructor() { method initializeLoggers (line 92) | private initializeLoggers(level: LogLevel) { FILE: src/renderer/utils/normalize-release-types.tsx constant PRIMARY_MAPPING (line 6) | const PRIMARY_MAPPING = { constant SECONDARY_MAPPING (line 14) | const SECONDARY_MAPPING = { FILE: src/renderer/utils/query-params.ts constant PAGINATION_KEYS (line 182) | const PAGINATION_KEYS = ['currentPage', 'scrollOffset']; FILE: src/renderer/utils/sanitize.ts constant SANITIZE_OPTIONS (line 3) | const SANITIZE_OPTIONS: Config = { FILE: src/renderer/utils/shuffle.ts function shuffle (line 1) | function shuffle(array: T[]): T[] { function shuffleInPlace (line 16) | function shuffleInPlace(array: T[]): T[] { FILE: src/shared/api/jellyfin/jellyfin-normalize.ts constant TICKS_PER_MS (line 18) | const TICKS_PER_MS = 10000; type AlbumOrSong (line 20) | type AlbumOrSong = z.infer | z.infer, M... FILE: src/shared/components/breadcrumb/breadcrumb.tsx type BreadcrumbProps (line 6) | interface BreadcrumbProps extends MantineBreadcrumbsProps {} FILE: src/shared/components/button/button.tsx type ButtonProps (line 13) | interface ButtonProps type ExtendedButtonVariant (line 22) | type ExtendedButtonVariant = type TimeoutButtonProps (line 99) | interface TimeoutButtonProps extends ButtonProps { FILE: src/shared/components/center/center.tsx type CenterProps (line 4) | interface CenterProps extends MantineCenterProps { FILE: src/shared/components/checkbox-select/checkbox-select.tsx type CheckboxSelectProps (line 22) | interface CheckboxSelectProps { type CheckboxSelectItemProps (line 49) | interface CheckboxSelectItemProps { function CheckboxSelectItem (line 56) | function CheckboxSelectItem({ enableDrag, onChange, option, values }: Ch... FILE: src/shared/components/checkbox/checkbox.tsx type CheckboxProps (line 6) | interface CheckboxProps extends MantineCheckboxProps {} FILE: src/shared/components/code/code.tsx type CodeProps (line 5) | interface CodeProps extends MantineCodeProps {} FILE: src/shared/components/color-input/color-input.tsx type ColorInputProps (line 8) | interface ColorInputProps extends MantineColorInputProps {} FILE: src/shared/components/context-menu/context-menu.tsx type ContextMenuContext (line 23) | interface ContextMenuContext { type ContentProps (line 30) | interface ContentProps { type ContextMenuProps (line 40) | interface ContextMenuProps { type DividerProps (line 44) | interface DividerProps {} type ItemProps (line 46) | interface ItemProps { type LabelProps (line 56) | interface LabelProps extends React.ComponentPropsWithoutRef<'div'> { type SubmenuContext (line 60) | interface SubmenuContext { type TargetProps (line 69) | interface TargetProps { function ContextMenu (line 73) | function ContextMenu(props: ContextMenuProps) { function Content (line 86) | function Content(props: ContentProps) { function Divider (line 112) | function Divider(props: DividerProps) { function Item (line 116) | function Item(props: ItemProps) { function Label (line 137) | function Label(props: LabelProps) { function Target (line 147) | function Target(props: TargetProps) { type SubmenuContentProps (line 159) | interface SubmenuContentProps { type SubmenuProps (line 164) | interface SubmenuProps { type SubmenuTargetProps (line 171) | interface SubmenuTargetProps { function Submenu (line 175) | function Submenu(props: SubmenuProps) { function SubmenuContent (line 218) | function SubmenuContent(props: SubmenuContentProps) { function SubmenuTarget (line 265) | function SubmenuTarget(props: SubmenuTargetProps) { FILE: src/shared/components/copy-button/copy-button.tsx type CopyButtonProps (line 6) | interface CopyButtonProps extends MantineCopyButtonProps {} FILE: src/shared/components/date-picker/date-picker.tsx type DateInputProps (line 13) | interface DateInputProps extends MantineDateInputProps { type DateTimeInputProps (line 43) | interface DateTimeInputProps extends MantineDateTimeInputProps { FILE: src/shared/components/date-time-picker/date-time-picker.tsx type DateTimePickerProps (line 7) | interface DateTimePickerProps extends MantineDateTimePickerProps { FILE: src/shared/components/dialog/dialog.tsx type DialogProps (line 7) | interface DialogProps extends MantineDialogProps {} FILE: src/shared/components/divider/divider.tsx type DividerProps (line 6) | interface DividerProps extends MantineDividerProps {} FILE: src/shared/components/drag-drop-zone/drag-drop-zone.tsx type DragDropZoneProps (line 8) | interface DragDropZoneProps { FILE: src/shared/components/drawer/drawer.tsx type DrawerProps (line 4) | interface DrawerProps extends MantineDrawerProps { FILE: src/shared/components/dropdown-menu/dropdown-menu.tsx type MenuItemProps (line 17) | interface MenuItemProps extends MantineMenuItemProps { type MenuDividerProps (line 22) | type MenuDividerProps = MantineMenuDividerProps; type MenuDropdownProps (line 23) | type MenuDropdownProps = MantineMenuDropdownProps; type MenuLabelProps (line 24) | type MenuLabelProps = MantineMenuLabelProps; type MenuProps (line 25) | type MenuProps = MantineMenuProps; FILE: src/shared/components/explicit-indicator/explicit-indicator.tsx constant EXPLICIT_SYMBOL (line 8) | const EXPLICIT_SYMBOL = '🅴'; constant CLEAN_SYMBOL (line 9) | const CLEAN_SYMBOL = '🅲'; type ExplicitIndicatorProps (line 11) | interface ExplicitIndicatorProps extends ComponentPropsWithoutRef<'span'> { type ExplicitIndicatorSize (line 17) | type ExplicitIndicatorSize = '2xl' | '3xl' | '4xl' | 'lg' | 'md' | 'sm' ... FILE: src/shared/components/fieldset/fieldset.tsx type FieldsetProps (line 6) | interface FieldsetProps extends MantineFieldsetProps { FILE: src/shared/components/file-input/file-input.tsx type FileInputProps (line 9) | interface FileInputProps extends MantineFileInputProps { FILE: src/shared/components/flex/flex.tsx type FlexProps (line 4) | interface FlexProps extends MantineFlexProps {} FILE: src/shared/components/grid/grid.tsx type GridProps (line 4) | interface GridProps extends MantineGridProps {} FILE: src/shared/components/group/group.tsx type GroupProps (line 4) | interface GroupProps extends MantineGroupProps {} FILE: src/shared/components/hover-card/hover-card.tsx type HoverCardProps (line 8) | interface HoverCardProps extends MantineHoverCardProps {} FILE: src/shared/components/icon/icon.tsx type AppIconSelection (line 144) | type AppIconSelection = keyof typeof AppIcon; type LogoImgProps (line 146) | type LogoImgProps = ImgHTMLAttributes & { size?: numbe... function logoImgStyle (line 148) | function logoImgStyle(size: number | string | undefined): CSSProperties ... type IconProps (line 368) | interface IconProps extends Omit, '... type ImageContainerProps (line 40) | interface ImageContainerProps extends HTMLAttributes { type ImageLoaderProps (line 45) | interface ImageLoaderProps { type ImageUnloaderProps (line 49) | interface ImageUnloaderProps { constant FALLBACK_SVG (line 54) | const FALLBACK_SVG = function BaseImage (line 57) | function BaseImage({ function ImageLoader (line 176) | function ImageLoader({ className }: ImageLoaderProps) { function ImageUnloader (line 185) | function ImageUnloader({ className, icon = 'emptyImage' }: ImageUnloader... FILE: src/shared/components/image/use-native-image.ts type FetchPriority (line 5) | type FetchPriority = 'auto' | 'high' | 'low'; type NativeImageState (line 7) | interface NativeImageState { type UseNativeImageArgs (line 12) | interface UseNativeImageArgs { function useNativeImage (line 19) | function useNativeImage({ FILE: src/shared/components/json-input/json-input.tsx type JsonInputProps (line 9) | interface JsonInputProps extends MantineJsonInputProps { FILE: src/shared/components/kbd/kbd.tsx type KbdProps (line 3) | interface KbdProps extends MantineKbdProps {} FILE: src/shared/components/loading-overlay/loading-overlay.tsx type LoadingOverlayProps (line 8) | interface LoadingOverlayProps extends MantineLoadingOverlayProps { FILE: src/shared/components/modal/modal.tsx type ModalProps (line 24) | interface ModalProps extends Omit { type ContextModalVars (line 70) | type ContextModalVars = { type ConfirmModalProps (line 83) | interface ConfirmModalProps { type ModalsProviderProps (line 132) | interface ModalsProviderProps extends MantineModalsProviderProps {} FILE: src/shared/components/multi-select/multi-select.tsx type MultiSelectProps (line 9) | interface MultiSelectProps extends MantineMultiSelectProps { FILE: src/shared/components/multi-select/virtual-multi-select.tsx type VirtualMultiSelectOption (line 18) | type VirtualMultiSelectOption = T & { label: string; value: string }; type VirtualMultiSelectProps (line 20) | interface VirtualMultiSelectProps { function VirtualMultiSelect (line 42) | function VirtualMultiSelect({ FILE: src/shared/components/number-input/number-input.tsx type NumberInputProps (line 9) | interface NumberInputProps extends MantineNumberInputProps { FILE: src/shared/components/option/option.tsx type OptionProps (line 9) | interface OptionProps extends GroupProps { type LabelProps (line 30) | interface LabelProps { type ControlProps (line 38) | interface ControlProps { FILE: src/shared/components/pagination/pagination.tsx type PaginationProps (line 19) | interface PaginationProps extends MantinePaginationProps { FILE: src/shared/components/paper/paper.tsx type PaperProps (line 8) | interface PaperProps extends MantinePaperProps { FILE: src/shared/components/password-input/password-input.tsx type PasswordInputProps (line 9) | interface PasswordInputProps extends MantinePasswordInputProps { FILE: src/shared/components/pill/pill.tsx type PillProps (line 12) | interface PillProps extends MantinePillProps {} type PillGroupProps (line 39) | interface PillGroupProps extends MantinePillGroupProps {} type PillLinkProps (line 64) | interface PillLinkProps FILE: src/shared/components/popover/popover.tsx type PopoverDropdownProps (line 10) | interface PopoverDropdownProps extends MantinePopoverDropdownProps {} type PopoverProps (line 11) | interface PopoverProps extends MantinePopoverProps {} FILE: src/shared/components/portal/portal.tsx type PortalProps (line 3) | interface PortalProps extends MantinePortalProps {} FILE: src/shared/components/rating/rating.tsx type RatingProps (line 8) | interface RatingProps extends MantineRatingProps { FILE: src/shared/components/read-only-rating/read-only-rating.tsx constant MAX_STARS (line 6) | const MAX_STARS = 5; type ReadOnlyRatingProps (line 8) | interface ReadOnlyRatingProps { function ReadOnlyRatingComponent (line 15) | function ReadOnlyRatingComponent({ className, onChange, size = 'sm', val... FILE: src/shared/components/scroll-area/scroll-area.tsx type ScrollAreaProps (line 12) | interface ScrollAreaProps extends React.ComponentPropsWithoutRef<'div'> { FILE: src/shared/components/segmented-control/segmented-control.tsx type SegmentedControlProps (line 8) | type SegmentedControlProps = MantineSegmentedControlProps; FILE: src/shared/components/select/select.tsx type SelectProps (line 8) | interface SelectProps extends MantineSelectProps { FILE: src/shared/components/skeleton/skeleton.tsx type SkeletonProps (line 6) | interface SkeletonProps { function BaseSkeleton (line 21) | function BaseSkeleton({ FILE: src/shared/components/slider/slider.tsx type SliderProps (line 8) | interface SliderProps extends MantineSliderProps {} FILE: src/shared/components/spinner/spinner.tsx type SpinnerProps (line 8) | interface SpinnerProps extends IconBaseProps { FILE: src/shared/components/spoiler/spoiler.tsx type SpoilerProps (line 8) | interface SpoilerProps extends Omit & Mantin... type TextTitleProps (line 11) | interface TextTitleProps extends MantineTextTitleDivProps { FILE: src/shared/components/text/text.tsx type TextProps (line 9) | interface TextProps extends MantineTextDivProps { type Font (line 20) | type Font = 'Epilogue' | 'Gotham' | 'Inter' | 'Poppins'; type MantineTextDivProps (line 22) | type MantineTextDivProps = ComponentPropsWithoutRef<'div'> & MantineText... FILE: src/shared/components/textarea/textarea.tsx type TextareaProps (line 6) | interface TextareaProps extends MantineTextareaProps { FILE: src/shared/components/toast/toast.tsx type NotificationProps (line 14) | interface NotificationProps extends Omit { FILE: src/shared/components/tooltip/tooltip.tsx type TooltipProps (line 7) | interface TooltipProps extends MantineTooltipProps {} constant DEFAULT_TRANSITION_PROPS (line 9) | const DEFAULT_TRANSITION_PROPS = { FILE: src/shared/components/yes-no-select/yes-no-select.tsx type YesNoSelectProps (line 5) | interface YesNoSelectProps extends SelectProps {} FILE: src/shared/hooks/use-container-query.ts type UseContainerQueryProps (line 3) | interface UseContainerQueryProps { FILE: src/shared/hooks/use-debounced-value.ts type UseDebouncedValueOptions (line 3) | interface UseDebouncedValueOptions { function useDebouncedValue (line 7) | function useDebouncedValue( FILE: src/shared/hooks/use-hotkeys.ts type HotkeyItem (line 8) | type HotkeyItem = MantineHotkeyItem; FILE: src/shared/hooks/use-long-press.ts type UseLongPressOptions (line 3) | interface UseLongPressOptions { type UseLongPressReturn (line 11) | interface UseLongPressReturn { FILE: src/shared/themes/app-theme-types.ts type AppTheme (line 5) | enum AppTheme { type AppThemeConfiguration (line 37) | type AppThemeConfiguration = Partial; type BaseAppThemeConfiguration (line 39) | interface BaseAppThemeConfiguration { FILE: src/shared/types/domain-types.ts type LibraryItem (line 23) | enum LibraryItem { type ServerType (line 36) | enum ServerType { type SortOrder (line 42) | enum SortOrder { type AnyLibraryItem (line 47) | type AnyLibraryItem = Album | AlbumArtist | Artist | Playlist | QueueSon... type AnyLibraryItems (line 49) | type AnyLibraryItems = type PlayerData (line 57) | interface PlayerData { type QueueData (line 69) | interface QueueData { type QueueSong (line 75) | type QueueSong = Song & { type SavedCollection (line 79) | interface SavedCollection { type ServerListItem (line 86) | type ServerListItem = { type ServerListItemWithCredential (line 103) | type ServerListItemWithCredential = ServerListItem & { type User (line 108) | type User = { type SortOrderMap (line 118) | type SortOrderMap = { type ExplicitStatus (line 139) | enum ExplicitStatus { type ExternalSource (line 144) | enum ExternalSource { type ExternalType (line 151) | enum ExternalType { type GenreListSort (line 156) | enum GenreListSort { type ImageType (line 160) | enum ImageType { type TagListSort (line 167) | enum TagListSort { type Album (line 171) | type Album = { type AlbumArtist (line 211) | type AlbumArtist = { type Artist (line 232) | type Artist = Omit & { type AuthenticationResponse (line 236) | type AuthenticationResponse = { type BasePaginatedResponse (line 244) | interface BasePaginatedResponse { type BaseQuery (line 251) | interface BaseQuery { type EndpointDetails (line 256) | type EndpointDetails = { type Folder (line 260) | type Folder = { type FolderArgs (line 275) | type FolderArgs = BaseEndpointArgs & { query: FolderQuery }; type FolderQuery (line 277) | interface FolderQuery extends BaseQuery { type FolderResponse (line 283) | type FolderResponse = Folder; type GainInfo (line 285) | type GainInfo = { type Genre (line 290) | type Genre = { type GenreListArgs (line 302) | type GenreListArgs = BaseEndpointArgs & { query: GenreListQuery }; type GenreListQuery (line 304) | interface GenreListQuery extends BaseQuery { type GenreListResponse (line 316) | type GenreListResponse = BasePaginatedResponse; type GenresResponse (line 318) | type GenresResponse = Genre[]; type ListSortOrder (line 320) | type ListSortOrder = 'asc' | 'desc'; type MusicFolder (line 322) | type MusicFolder = { type MusicFoldersResponse (line 327) | type MusicFoldersResponse = MusicFolder[]; type Playlist (line 329) | type Playlist = { type RelatedAlbumArtist (line 349) | type RelatedAlbumArtist = { type RelatedArtist (line 354) | type RelatedArtist = { type Song (line 363) | type Song = { type BaseEndpointArgs (line 413) | type BaseEndpointArgs = { type GenreListSortMap (line 425) | type GenreListSortMap = { type TagListSortMap (line 443) | type TagListSortMap = { type AlbumListSort (line 461) | enum AlbumListSort { type AlbumListArgs (line 482) | type AlbumListArgs = BaseEndpointArgs & { query: AlbumListQuery }; type AlbumListCountArgs (line 484) | type AlbumListCountArgs = BaseEndpointArgs & { query: ListCountQuery; type ListCountQuery (line 503) | type ListCountQuery = Omit; type AlbumListNavidromeQuery (line 505) | interface AlbumListNavidromeQuery { type AlbumListSortMap (line 510) | type AlbumListSortMap = { type SongListSort (line 580) | enum SongListSort { type AlbumDetailArgs (line 603) | type AlbumDetailArgs = BaseEndpointArgs & { query: AlbumDetailQuery }; type AlbumDetailQuery (line 605) | type AlbumDetailQuery = { id: string }; type AlbumDetailResponse (line 608) | type AlbumDetailResponse = Album; type AlbumInfo (line 610) | type AlbumInfo = { type SongListArgs (line 615) | type SongListArgs = BaseEndpointArgs & { query: SongListQuery }; type SongListCountArgs (line 617) | type SongListCountArgs = BaseEndpointArgs & { query: ListCountQuery { type SongListResponse (line 637) | type SongListResponse = BasePaginatedResponse; type SongListSortMap (line 639) | type SongListSortMap = { type AlbumArtistListSort (line 714) | enum AlbumArtistListSort { type AlbumArtistListArgs (line 728) | type AlbumArtistListArgs = BaseEndpointArgs & { query: AlbumArtistListQu... type AlbumArtistListCountArgs (line 730) | type AlbumArtistListCountArgs = BaseEndpointArgs & { type AlbumArtistListQuery (line 734) | interface AlbumArtistListQuery extends BaseQuery { type AlbumArtistListResponse (line 744) | type AlbumArtistListResponse = BasePaginatedResponse; type SongDetailArgs (line 746) | type SongDetailArgs = BaseEndpointArgs & { query: SongDetailQuery }; type SongDetailQuery (line 748) | type SongDetailQuery = { id: string }; type SongDetailResponse (line 751) | type SongDetailResponse = Song; type AlbumArtistListSortMap (line 753) | type AlbumArtistListSortMap = { type ArtistListSort (line 803) | enum ArtistListSort { type AlbumArtistDetailArgs (line 817) | type AlbumArtistDetailArgs = BaseEndpointArgs & { query: AlbumArtistDeta... type AlbumArtistDetailQuery (line 819) | type AlbumArtistDetailQuery = { id: string }; type AlbumArtistDetailResponse (line 821) | type AlbumArtistDetailResponse = AlbumArtist | null; type AlbumArtistInfoArgs (line 823) | type AlbumArtistInfoArgs = BaseEndpointArgs & { query: AlbumArtistInfoQu... type AlbumArtistInfoQuery (line 825) | type AlbumArtistInfoQuery = { id: string; limit?: number }; type AlbumArtistInfoResponse (line 827) | type AlbumArtistInfoResponse = { type ArtistListArgs (line 833) | type ArtistListArgs = BaseEndpointArgs & { query: ArtistListQuery }; type ArtistListCountArgs (line 835) | type ArtistListCountArgs = BaseEndpointArgs & { query: ListCountQuery { type ArtistListResponse (line 848) | type ArtistListResponse = BasePaginatedResponse; type ArtistListSortMap (line 850) | type ArtistListSortMap = { type PlaylistListSort (line 898) | enum PlaylistListSort { type RadioListSort (line 907) | enum RadioListSort { type AddToPlaylistArgs (line 912) | type AddToPlaylistArgs = BaseEndpointArgs & { type AddToPlaylistBody (line 917) | type AddToPlaylistBody = { type AddToPlaylistQuery (line 921) | type AddToPlaylistQuery = { type AddToPlaylistResponse (line 926) | type AddToPlaylistResponse = null | undefined; type CreateInternetRadioStationArgs (line 928) | type CreateInternetRadioStationArgs = BaseEndpointArgs & { type CreateInternetRadioStationBody (line 932) | type CreateInternetRadioStationBody = { type CreateInternetRadioStationResponse (line 938) | type CreateInternetRadioStationResponse = null | undefined; type CreatePlaylistArgs (line 940) | type CreatePlaylistArgs = BaseEndpointArgs & { body: CreatePlaylistBody }; type CreatePlaylistBody (line 942) | type CreatePlaylistBody = { type CreatePlaylistResponse (line 953) | type CreatePlaylistResponse = undefined | { id: string }; type DeleteInternetRadioStationArgs (line 955) | type DeleteInternetRadioStationArgs = BaseEndpointArgs & { type DeleteInternetRadioStationQuery (line 959) | type DeleteInternetRadioStationQuery = { type DeleteInternetRadioStationResponse (line 963) | type DeleteInternetRadioStationResponse = null | undefined; type DeletePlaylistArgs (line 965) | type DeletePlaylistArgs = BaseEndpointArgs & { type DeletePlaylistQuery (line 969) | type DeletePlaylistQuery = { id: string }; type DeletePlaylistResponse (line 972) | type DeletePlaylistResponse = null | undefined; type FavoriteArgs (line 974) | type FavoriteArgs = BaseEndpointArgs & { query: FavoriteQuery }; type FavoriteQuery (line 976) | type FavoriteQuery = { type FavoriteResponse (line 982) | type FavoriteResponse = null | undefined; type GetInternetRadioStationsArgs (line 984) | type GetInternetRadioStationsArgs = BaseEndpointArgs; type GetInternetRadioStationsResponse (line 986) | type GetInternetRadioStationsResponse = InternetRadioStation[]; type InternetRadioStation (line 988) | type InternetRadioStation = { type PlaylistListArgs (line 995) | type PlaylistListArgs = BaseEndpointArgs & { query: PlaylistListQuery }; type PlaylistListCountArgs (line 997) | type PlaylistListCountArgs = BaseEndpointArgs & { query: ListCountQuery<... type PlaylistListQuery (line 999) | interface PlaylistListQuery extends BaseQuery { type PlaylistListResponse (line 1008) | type PlaylistListResponse = BasePaginatedResponse; type RatingQuery (line 1010) | type RatingQuery = { type RatingResponse (line 1017) | type RatingResponse = null | undefined; type RemoveFromPlaylistArgs (line 1019) | type RemoveFromPlaylistArgs = BaseEndpointArgs & { type RemoveFromPlaylistQuery (line 1023) | type RemoveFromPlaylistQuery = { type RemoveFromPlaylistResponse (line 1029) | type RemoveFromPlaylistResponse = null | undefined; type ReplacePlaylistArgs (line 1031) | type ReplacePlaylistArgs = BaseEndpointArgs & { type ReplacePlaylistBody (line 1036) | type ReplacePlaylistBody = { type ReplacePlaylistQuery (line 1040) | type ReplacePlaylistQuery = { type ReplacePlaylistResponse (line 1045) | type ReplacePlaylistResponse = null | undefined; type SetRatingArgs (line 1047) | type SetRatingArgs = BaseEndpointArgs & { query: RatingQuery }; type ShareItemArgs (line 1049) | type ShareItemArgs = BaseEndpointArgs & { body: ShareItemBody }; type ShareItemBody (line 1051) | type ShareItemBody = { type ShareItemResponse (line 1060) | type ShareItemResponse = undefined | { id: string }; type UpdateInternetRadioStationArgs (line 1062) | type UpdateInternetRadioStationArgs = BaseEndpointArgs & { type UpdateInternetRadioStationBody (line 1067) | type UpdateInternetRadioStationBody = { type UpdateInternetRadioStationQuery (line 1073) | type UpdateInternetRadioStationQuery = { type UpdateInternetRadioStationResponse (line 1077) | type UpdateInternetRadioStationResponse = null | undefined; type UpdatePlaylistArgs (line 1079) | type UpdatePlaylistArgs = BaseEndpointArgs & { type UpdatePlaylistBody (line 1084) | type UpdatePlaylistBody = { type UpdatePlaylistQuery (line 1095) | type UpdatePlaylistQuery = { type UpdatePlaylistResponse (line 1100) | type UpdatePlaylistResponse = null | undefined; type PlaylistListSortMap (line 1102) | type PlaylistListSortMap = { type UserListSort (line 1135) | enum UserListSort { type MusicFolderListArgs (line 1139) | type MusicFolderListArgs = BaseEndpointArgs; type MusicFolderListQuery (line 1141) | type MusicFolderListQuery = null; type MusicFolderListResponse (line 1144) | type MusicFolderListResponse = BasePaginatedResponse; type PlaylistDetailArgs (line 1146) | type PlaylistDetailArgs = BaseEndpointArgs & { query: PlaylistDetailQuer... type PlaylistDetailQuery (line 1148) | type PlaylistDetailQuery = { type PlaylistDetailResponse (line 1153) | type PlaylistDetailResponse = Playlist; type PlaylistSongListArgs (line 1155) | type PlaylistSongListArgs = BaseEndpointArgs & { query: PlaylistSongList... type PlaylistSongListCountArgs (line 1157) | type PlaylistSongListCountArgs = BaseEndpointArgs & { type PlaylistSongListQuery (line 1161) | type PlaylistSongListQuery = { type PlaylistSongListQueryClientSide (line 1165) | type PlaylistSongListQueryClientSide = { type PlaylistSongListResponse (line 1171) | type PlaylistSongListResponse = BasePaginatedResponse; type UserListArgs (line 1173) | type UserListArgs = BaseEndpointArgs & { query: UserListQuery }; type UserListQuery (line 1175) | interface UserListQuery extends BaseQuery { type UserListResponse (line 1184) | type UserListResponse = BasePaginatedResponse; type UserListSortMap (line 1186) | type UserListSortMap = { type Played (line 1204) | enum Played { type ArtistInfoArgs (line 1210) | type ArtistInfoArgs = BaseEndpointArgs & { query: ArtistInfoQuery }; type ArtistInfoQuery (line 1213) | type ArtistInfoQuery = { type FullLyricsMetadata (line 1219) | type FullLyricsMetadata = Omit; type LyricsArgs (line 1245) | type LyricsArgs = BaseEndpointArgs & { type LyricsQuery (line 1249) | type LyricsQuery = { type LyricsResponse (line 1253) | type LyricsResponse = string | SynchronizedLyricsArray; type RandomSongListArgs (line 1255) | type RandomSongListArgs = BaseEndpointArgs & { type RandomSongListQuery (line 1259) | type RandomSongListQuery = { type RandomSongListResponse (line 1268) | type RandomSongListResponse = SongListResponse; type ScrobbleArgs (line 1270) | type ScrobbleArgs = BaseEndpointArgs & { type ScrobbleQuery (line 1274) | type ScrobbleQuery = { type ScrobbleResponse (line 1283) | type ScrobbleResponse = null; type SearchAlbumArtistsQuery (line 1285) | type SearchAlbumArtistsQuery = { type SearchAlbumsQuery (line 1292) | type SearchAlbumsQuery = { type SearchArgs (line 1299) | type SearchArgs = BaseEndpointArgs & { type SearchQuery (line 1303) | type SearchQuery = { type SearchResponse (line 1314) | type SearchResponse = { type SearchSongsQuery (line 1320) | type SearchSongsQuery = { type SynchronizedLyricsArray (line 1327) | type SynchronizedLyricsArray = Array<[number, string]>; type TopSongListArgs (line 1329) | type TopSongListArgs = BaseEndpointArgs & { query: TopSongListQuery }; type TopSongListQuery (line 1331) | type TopSongListQuery = { type TopSongListResponse (line 1339) | type TopSongListResponse = BasePaginatedResponse; type LyricSource (line 1345) | enum LyricSource { type AlbumRadioArgs (line 1352) | type AlbumRadioArgs = BaseEndpointArgs & { type AlbumRadioQuery (line 1356) | type AlbumRadioQuery = { type ArtistRadioArgs (line 1361) | type ArtistRadioArgs = BaseEndpointArgs & { type ArtistRadioQuery (line 1365) | type ArtistRadioQuery = { type ControllerEndpoint (line 1370) | type ControllerEndpoint = { type DownloadArgs (line 1441) | type DownloadArgs = BaseEndpointArgs & { type DownloadQuery (line 1445) | type DownloadQuery = { type FontData (line 1451) | type FontData = { type GetQueueArgs (line 1458) | type GetQueueArgs = BaseEndpointArgs; type GetQueueQuery (line 1460) | interface GetQueueQuery {} type GetQueueResponse (line 1462) | type GetQueueResponse = { type ImageArgs (line 1471) | type ImageArgs = BaseEndpointArgs & { type ImageQuery (line 1476) | type ImageQuery = { type ImageRequest (line 1482) | type ImageRequest = { type InternalControllerEndpoint (line 1489) | type InternalControllerEndpoint = { type LyricGetQuery (line 1594) | type LyricGetQuery = { type LyricSearchQuery (line 1600) | type LyricSearchQuery = { type LyricsOverride (line 1607) | type LyricsOverride = Omit & { id: string }; type MoveItemArgs (line 1609) | type MoveItemArgs = BaseEndpointArgs & { type MoveItemQuery (line 1613) | type MoveItemQuery = { type ReplaceApiClientProps (line 1620) | type ReplaceApiClientProps = BaseEndpointArgsWithServer & Omit & { type StructuredUnsyncedLyric (line 1674) | type StructuredUnsyncedLyric = Omit & { type Tag (line 1679) | type Tag = { type TagListArgs (line 1684) | type TagListArgs = BaseEndpointArgs & { type TagListQuery (line 1688) | type TagListQuery = { type TagListResponse (line 1694) | type TagListResponse = { type UserInfoArgs (line 1702) | type UserInfoArgs = BaseEndpointArgs & { query: UserInfoQuery }; type UserInfoQuery (line 1704) | type UserInfoQuery = { type UserInfoResponse (line 1709) | type UserInfoResponse = { type BaseEndpointArgsWithServer (line 1715) | type BaseEndpointArgsWithServer = { FILE: src/shared/types/drag-and-drop.ts type DragTarget (line 5) | enum DragTarget { type DragOperation (line 31) | enum DragOperation { type AlbumDragMetadata (line 36) | interface AlbumDragMetadata { type DragData (line 41) | interface DragData< FILE: src/shared/types/features-types.ts type ServerFeature (line 3) | enum ServerFeature { type ServerFeatures (line 20) | type ServerFeatures = Partial>; FILE: src/shared/types/remote-types.ts type ClientAuth (line 4) | interface ClientAuth { type ClientEvent (line 9) | type ClientEvent = type ClientFavorite (line 17) | interface ClientFavorite { type ClientPosition (line 23) | interface ClientPosition { type ClientRating (line 28) | interface ClientRating { type ClientSimpleEvent (line 33) | interface ClientSimpleEvent { type ClientVolume (line 37) | interface ClientVolume { type ServerError (line 42) | interface ServerError { type ServerEvent (line 47) | type ServerEvent = type ServerFavorite (line 60) | interface ServerFavorite { type ServerPlayStatus (line 65) | interface ServerPlayStatus { type ServerPosition (line 70) | interface ServerPosition { type ServerProxy (line 75) | interface ServerProxy { type ServerRating (line 80) | interface ServerRating { type ServerRepeat (line 85) | interface ServerRepeat { type ServerShuffle (line 90) | interface ServerShuffle { type ServerSong (line 95) | interface ServerSong { type ServerState (line 100) | interface ServerState { type ServerVolume (line 105) | interface ServerVolume { type SongUpdateSocket (line 110) | interface SongUpdateSocket extends Omit { FILE: src/shared/types/types.ts type ItemListKey (line 16) | enum ItemListKey { type ListDisplayType (line 37) | enum ListDisplayType { type ListPaginationType (line 44) | enum ListPaginationType { type Platform (line 49) | enum Platform { type ServerType (line 56) | enum ServerType { type CardRoute (line 62) | type CardRoute = { type CardRow (line 67) | type CardRow = { type ListPagination (line 74) | type ListPagination = { type RouteSlug (line 81) | type RouteSlug = { type AuthState (line 99) | enum AuthState { type CrossfadeStyle (line 105) | enum CrossfadeStyle { type FontType (line 116) | enum FontType { type Play (line 122) | enum Play { type PlayerQueueType (line 132) | enum PlayerQueueType { type PlayerRepeat (line 137) | enum PlayerRepeat { type PlayerShuffle (line 143) | enum PlayerShuffle { type PlayerStatus (line 149) | enum PlayerStatus { type PlayerStyle (line 154) | enum PlayerStyle { type PlayerType (line 159) | enum PlayerType { type TableColumn (line 164) | enum TableColumn { type DiscoveredServerItem (line 206) | type DiscoveredServerItem = { type GridCardData (line 212) | type GridCardData = { type PlayQueueAddOptions (line 230) | type PlayQueueAddOptions = { type QueryBuilderGroup (line 242) | type QueryBuilderGroup = { type QueryBuilderRule (line 249) | type QueryBuilderRule = { type ServerListItem (line 256) | type ServerListItem = { type SongState (line 272) | type SongState = { type TitleTheme (line 282) | type TitleTheme = 'dark' | 'light' | 'system'; type UniqueId (line 284) | interface UniqueId { type WebAudio (line 288) | type WebAudio = { FILE: src/shared/utils/double-click-handler.ts type DoubleClickHandlerOptions (line 3) | interface DoubleClickHandlerOptions { FILE: src/types/mantine.d.ts type ExtendedActionIconSize (line 3) | type ExtendedActionIconSize = 'compact-md' | 'compact-sm' | 'compact-xs'... type ExtendedPillVariant (line 4) | type ExtendedPillVariant = 'outline' | PillVariant; type ActionIconProps (line 7) | interface ActionIconProps { type PillProps (line 11) | interface PillProps {