chore: add proper documentation (#763)

* chore: generate API ref using `typedoc`

* chore: declutter readme and add links to ytjs.dev

* chore: clean up
This commit is contained in:
Luan
2024-09-23 17:32:50 -03:00
committed by GitHub
parent dd7f5cf778
commit 74659fd03f
853 changed files with 139814 additions and 1929 deletions

View File

@@ -0,0 +1,18 @@
[youtubei.js](../../README.md) / YTMusic
# YTMusic
## Index
### Classes
- [Album](classes/Album.md)
- [Artist](classes/Artist.md)
- [Explore](classes/Explore.md)
- [HomeFeed](classes/HomeFeed.md)
- [Library](classes/Library.md)
- [LibraryContinuation](classes/LibraryContinuation.md)
- [Playlist](classes/Playlist.md)
- [Recap](classes/Recap.md)
- [Search](classes/Search.md)
- [TrackInfo](classes/TrackInfo.md)

View File

@@ -0,0 +1,85 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Album
# Class: Album
## Constructors
### new Album()
> **new Album**(`response`): [`Album`](Album.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
#### Returns
[`Album`](Album.md)
#### Defined in
[src/parser/ytmusic/Album.ts:24](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L24)
## Properties
### background?
> `optional` **background**: [`MusicThumbnail`](../../YTNodes/classes/MusicThumbnail.md)
#### Defined in
[src/parser/ytmusic/Album.ts:21](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L21)
***
### contents
> **contents**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>
#### Defined in
[src/parser/ytmusic/Album.ts:19](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L19)
***
### header?
> `optional` **header**: [`MusicDetailHeader`](../../YTNodes/classes/MusicDetailHeader.md) \| [`MusicResponsiveHeader`](../../YTNodes/classes/MusicResponsiveHeader.md)
#### Defined in
[src/parser/ytmusic/Album.ts:18](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L18)
***
### sections
> **sections**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md)\>
#### Defined in
[src/parser/ytmusic/Album.ts:20](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L20)
***
### url?
> `optional` **url**: `string`
#### Defined in
[src/parser/ytmusic/Album.ts:22](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L22)
## Accessors
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Album.ts:37](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Album.ts#L37)

View File

@@ -0,0 +1,71 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Artist
# Class: Artist
## Constructors
### new Artist()
> **new Artist**(`response`, `actions`): [`Artist`](Artist.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
#### Returns
[`Artist`](Artist.md)
#### Defined in
[src/parser/ytmusic/Artist.ts:23](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Artist.ts#L23)
## Properties
### header?
> `optional` **header**: [`MusicImmersiveHeader`](../../YTNodes/classes/MusicImmersiveHeader.md) \| [`MusicVisualHeader`](../../YTNodes/classes/MusicVisualHeader.md) \| [`MusicHeader`](../../YTNodes/classes/MusicHeader.md)
#### Defined in
[src/parser/ytmusic/Artist.ts:20](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Artist.ts#L20)
***
### sections
> **sections**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md) \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)\>
#### Defined in
[src/parser/ytmusic/Artist.ts:21](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Artist.ts#L21)
## Accessors
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Artist.ts:55](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Artist.ts#L55)
## Methods
### getAllSongs()
> **getAllSongs**(): `Promise`\<`undefined` \| [`MusicPlaylistShelf`](../../YTNodes/classes/MusicPlaylistShelf.md)\>
#### Returns
`Promise`\<`undefined` \| [`MusicPlaylistShelf`](../../YTNodes/classes/MusicPlaylistShelf.md)\>
#### Defined in
[src/parser/ytmusic/Artist.ts:35](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Artist.ts#L35)

View File

@@ -0,0 +1,55 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Explore
# Class: Explore
## Constructors
### new Explore()
> **new Explore**(`response`): [`Explore`](Explore.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
#### Returns
[`Explore`](Explore.md)
#### Defined in
[src/parser/ytmusic/Explore.ts:20](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Explore.ts#L20)
## Properties
### sections
> **sections**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md)\>
#### Defined in
[src/parser/ytmusic/Explore.ts:18](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Explore.ts#L18)
***
### top\_buttons
> **top\_buttons**: [`MusicNavigationButton`](../../YTNodes/classes/MusicNavigationButton.md)[]
#### Defined in
[src/parser/ytmusic/Explore.ts:17](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Explore.ts#L17)
## Accessors
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Explore.ts:37](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Explore.ts#L37)

View File

@@ -0,0 +1,119 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / HomeFeed
# Class: HomeFeed
## Constructors
### new HomeFeed()
> **new HomeFeed**(`response`, `actions`): [`HomeFeed`](HomeFeed.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
#### Returns
[`HomeFeed`](HomeFeed.md)
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:22](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L22)
## Properties
### header?
> `optional` **header**: [`ChipCloud`](../../YTNodes/classes/ChipCloud.md)
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:20](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L20)
***
### sections?
> `optional` **sections**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md) \| [`MusicTastebuilderShelf`](../../YTNodes/classes/MusicTastebuilderShelf.md)\>
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:19](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L19)
## Accessors
### filters
> `get` **filters**(): `string`[]
#### Returns
`string`[]
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:84](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L84)
***
### has\_continuation
> `get` **has\_continuation**(): `boolean`
#### Returns
`boolean`
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:88](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L88)
***
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:92](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L92)
## Methods
### applyFilter()
> **applyFilter**(`target_filter`): `Promise`\<[`HomeFeed`](HomeFeed.md)\>
#### Parameters
**target\_filter**: `string` \| [`ChipCloudChip`](../../YTNodes/classes/ChipCloudChip.md)
#### Returns
`Promise`\<[`HomeFeed`](HomeFeed.md)\>
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:61](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L61)
***
### getContinuation()
> **getContinuation**(): `Promise`\<[`HomeFeed`](HomeFeed.md)\>
Retrieves home feed continuation.
#### Returns
`Promise`\<[`HomeFeed`](HomeFeed.md)\>
#### Defined in
[src/parser/ytmusic/HomeFeed.ts:49](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/HomeFeed.ts#L49)

View File

@@ -0,0 +1,155 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Library
# Class: Library
## Constructors
### new Library()
> **new Library**(`response`, `actions`): [`Library`](Library.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
#### Returns
[`Library`](Library.md)
#### Defined in
[src/parser/ytmusic/Library.ts:28](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L28)
## Properties
### contents?
> `optional` **contents**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicShelf`](../../YTNodes/classes/MusicShelf.md) \| [`Grid`](../../YTNodes/classes/Grid.md)\>
#### Defined in
[src/parser/ytmusic/Library.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L26)
***
### header?
> `optional` **header**: [`MusicSideAlignedItem`](../../YTNodes/classes/MusicSideAlignedItem.md)
#### Defined in
[src/parser/ytmusic/Library.ts:25](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L25)
## Accessors
### filters
> `get` **filters**(): `string`[]
#### Returns
`string`[]
#### Defined in
[src/parser/ytmusic/Library.ts:141](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L141)
***
### has\_continuation
> `get` **has\_continuation**(): `boolean`
#### Returns
`boolean`
#### Defined in
[src/parser/ytmusic/Library.ts:131](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L131)
***
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Library.ts:145](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L145)
***
### sort\_options
> `get` **sort\_options**(): `string`[]
#### Returns
`string`[]
#### Defined in
[src/parser/ytmusic/Library.ts:135](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L135)
## Methods
### applyFilter()
> **applyFilter**(`filter`): `Promise`\<[`Library`](Library.md)\>
Applies given filter to the library.
#### Parameters
**filter**: `string` \| [`ChipCloudChip`](../../YTNodes/classes/ChipCloudChip.md)
#### Returns
`Promise`\<[`Library`](Library.md)\>
#### Defined in
[src/parser/ytmusic/Library.ts:93](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L93)
***
### applySort()
> **applySort**(`sort_by`): `Promise`\<[`Library`](Library.md)\>
Applies given sort option to the library items.
#### Parameters
**sort\_by**: `string` \| [`MusicMultiSelectMenuItem`](../../YTNodes/classes/MusicMultiSelectMenuItem.md)
#### Returns
`Promise`\<[`Library`](Library.md)\>
#### Defined in
[src/parser/ytmusic/Library.ts:43](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L43)
***
### getContinuation()
> **getContinuation**(): `Promise`\<[`LibraryContinuation`](LibraryContinuation.md)\>
Retrieves continuation of the library items.
#### Returns
`Promise`\<[`LibraryContinuation`](LibraryContinuation.md)\>
#### Defined in
[src/parser/ytmusic/Library.ts:119](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L119)

View File

@@ -0,0 +1,75 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / LibraryContinuation
# Class: LibraryContinuation
## Constructors
### new LibraryContinuation()
> **new LibraryContinuation**(`response`, `actions`): [`LibraryContinuation`](LibraryContinuation.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
#### Returns
[`LibraryContinuation`](LibraryContinuation.md)
#### Defined in
[src/parser/ytmusic/Library.ts:157](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L157)
## Properties
### contents
> **contents**: [`MusicShelfContinuation`](../../../classes/MusicShelfContinuation.md) \| [`GridContinuation`](../../../classes/GridContinuation.md)
#### Defined in
[src/parser/ytmusic/Library.ts:155](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L155)
## Accessors
### has\_continuation
> `get` **has\_continuation**(): `boolean`
#### Returns
`boolean`
#### Defined in
[src/parser/ytmusic/Library.ts:181](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L181)
***
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Library.ts:185](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L185)
## Methods
### getContinuation()
> **getContinuation**(): `Promise`\<[`LibraryContinuation`](LibraryContinuation.md)\>
#### Returns
`Promise`\<[`LibraryContinuation`](LibraryContinuation.md)\>
#### Defined in
[src/parser/ytmusic/Library.ts:169](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Library.ts#L169)

View File

@@ -0,0 +1,145 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Playlist
# Class: Playlist
## Constructors
### new Playlist()
> **new Playlist**(`response`, `actions`): [`Playlist`](Playlist.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
#### Returns
[`Playlist`](Playlist.md)
#### Defined in
[src/parser/ytmusic/Playlist.ts:29](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L29)
## Properties
### background?
> `optional` **background**: [`MusicThumbnail`](../../YTNodes/classes/MusicThumbnail.md)
#### Defined in
[src/parser/ytmusic/Playlist.ts:27](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L27)
***
### contents?
> `optional` **contents**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>
#### Defined in
[src/parser/ytmusic/Playlist.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L26)
***
### header?
> `optional` **header**: [`MusicDetailHeader`](../../YTNodes/classes/MusicDetailHeader.md) \| [`MusicResponsiveHeader`](../../YTNodes/classes/MusicResponsiveHeader.md) \| [`MusicEditablePlaylistDetailHeader`](../../YTNodes/classes/MusicEditablePlaylistDetailHeader.md)
#### Defined in
[src/parser/ytmusic/Playlist.ts:25](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L25)
## Accessors
### has\_continuation
> `get` **has\_continuation**(): `boolean`
#### Returns
`boolean`
#### Defined in
[src/parser/ytmusic/Playlist.ts:148](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L148)
***
### items
> `get` **items**(): [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>
#### Returns
[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>
#### Defined in
[src/parser/ytmusic/Playlist.ts:144](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L144)
***
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Playlist.ts:140](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L140)
## Methods
### getContinuation()
> **getContinuation**(): `Promise`\<[`Playlist`](Playlist.md)\>
Retrieves playlist items continuation.
#### Returns
`Promise`\<[`Playlist`](Playlist.md)\>
#### Defined in
[src/parser/ytmusic/Playlist.ts:55](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L55)
***
### getRelated()
> **getRelated**(): `Promise`\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md)\>
Retrieves related playlists
#### Returns
`Promise`\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md)\>
#### Defined in
[src/parser/ytmusic/Playlist.ts:70](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L70)
***
### getSuggestions()
> **getSuggestions**(`refresh`): `Promise`\<[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>\>
#### Parameters
**refresh**: `boolean` = `true`
#### Returns
`Promise`\<[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>\>
#### Defined in
[src/parser/ytmusic/Playlist.ts:99](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Playlist.ts#L99)

View File

@@ -0,0 +1,73 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Recap
# Class: Recap
## Constructors
### new Recap()
> **new Recap**(`response`, `actions`): [`Recap`](Recap.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
#### Returns
[`Recap`](Recap.md)
#### Defined in
[src/parser/ytmusic/Recap.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Recap.ts#L26)
## Properties
### header?
> `optional` **header**: [`MusicHeader`](../../YTNodes/classes/MusicHeader.md) \| [`HighlightsCarousel`](../../YTNodes/classes/HighlightsCarousel.md)
#### Defined in
[src/parser/ytmusic/Recap.ts:23](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Recap.ts#L23)
***
### sections?
> `optional` **sections**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`ItemSection`](../../YTNodes/classes/ItemSection.md) \| [`Message`](../../YTNodes/classes/Message.md) \| [`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md)\>
#### Defined in
[src/parser/ytmusic/Recap.ts:24](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Recap.ts#L24)
## Accessors
### page
> `get` **page**(): [`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Returns
[`IBrowseResponse`](../../APIResponseTypes/type-aliases/IBrowseResponse.md)
#### Defined in
[src/parser/ytmusic/Recap.ts:60](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Recap.ts#L60)
## Methods
### getPlaylist()
> **getPlaylist**(): `Promise`\<[`Playlist`](Playlist.md)\>
Retrieves recap playlist.
#### Returns
`Promise`\<[`Playlist`](Playlist.md)\>
#### Defined in
[src/parser/ytmusic/Recap.ts:47](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Recap.ts#L47)

View File

@@ -0,0 +1,291 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / Search
# Class: Search
## Constructors
### new Search()
> **new Search**(`response`, `actions`, `is_filtered`?): [`Search`](Search.md)
#### Parameters
**response**: [`ApiResponse`](../../../interfaces/ApiResponse.md)
**actions**: [`Actions`](../../../classes/Actions.md)
**is\_filtered?**: `boolean`
#### Returns
[`Search`](Search.md)
#### Defined in
[src/parser/ytmusic/Search.ts:29](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L29)
## Properties
### contents?
> `optional` **contents**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`ItemSection`](../../YTNodes/classes/ItemSection.md) \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md) \| [`MusicCardShelf`](../../YTNodes/classes/MusicCardShelf.md)\>
#### Defined in
[src/parser/ytmusic/Search.ts:27](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L27)
***
### header?
> `optional` **header**: [`ChipCloud`](../../YTNodes/classes/ChipCloud.md)
#### Defined in
[src/parser/ytmusic/Search.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L26)
## Accessors
### albums
> `get` **albums**(): `undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Returns
`undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Defined in
[src/parser/ytmusic/Search.ts:138](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L138)
***
### artists
> `get` **artists**(): `undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Returns
`undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Defined in
[src/parser/ytmusic/Search.ts:142](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L142)
***
### did\_you\_mean
> `get` **did\_you\_mean**(): `undefined` \| [`DidYouMean`](../../YTNodes/classes/DidYouMean.md)
#### Returns
`undefined` \| [`DidYouMean`](../../YTNodes/classes/DidYouMean.md)
#### Defined in
[src/parser/ytmusic/Search.ts:118](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L118)
***
### filters
> `get` **filters**(): `string`[]
#### Returns
`string`[]
#### Defined in
[src/parser/ytmusic/Search.ts:110](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L110)
***
### has\_continuation
> `get` **has\_continuation**(): `boolean`
#### Returns
`boolean`
#### Defined in
[src/parser/ytmusic/Search.ts:114](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L114)
***
### message
> `get` **message**(): `undefined` \| [`Message`](../../YTNodes/classes/Message.md)
#### Returns
`undefined` \| [`Message`](../../YTNodes/classes/Message.md)
#### Defined in
[src/parser/ytmusic/Search.ts:126](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L126)
***
### page
> `get` **page**(): [`ISearchResponse`](../../APIResponseTypes/type-aliases/ISearchResponse.md)
#### Returns
[`ISearchResponse`](../../APIResponseTypes/type-aliases/ISearchResponse.md)
#### Defined in
[src/parser/ytmusic/Search.ts:164](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L164)
***
### playlists
> `get` **playlists**(): `undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Returns
`undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Defined in
[src/parser/ytmusic/Search.ts:146](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L146)
***
### results
> `get` **results**(): `undefined` \| [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>
#### Deprecated
Use [Search.contents](Search.md#contents) instead.
#### Returns
`undefined` \| [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicResponsiveListItem`](../../YTNodes/classes/MusicResponsiveListItem.md)\>
#### Defined in
[src/parser/ytmusic/Search.ts:153](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L153)
***
### sections
> `get` **sections**(): `undefined` \| [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicShelf`](../../YTNodes/classes/MusicShelf.md)\>
#### Deprecated
Use [Search.contents](Search.md#contents) instead.
#### Returns
`undefined` \| [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicShelf`](../../YTNodes/classes/MusicShelf.md)\>
#### Defined in
[src/parser/ytmusic/Search.ts:160](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L160)
***
### showing\_results\_for
> `get` **showing\_results\_for**(): `undefined` \| [`ShowingResultsFor`](../../YTNodes/classes/ShowingResultsFor.md)
#### Returns
`undefined` \| [`ShowingResultsFor`](../../YTNodes/classes/ShowingResultsFor.md)
#### Defined in
[src/parser/ytmusic/Search.ts:122](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L122)
***
### songs
> `get` **songs**(): `undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Returns
`undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Defined in
[src/parser/ytmusic/Search.ts:130](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L130)
***
### videos
> `get` **videos**(): `undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Returns
`undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Defined in
[src/parser/ytmusic/Search.ts:134](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L134)
## Methods
### applyFilter()
> **applyFilter**(`target_filter`): `Promise`\<[`Search`](Search.md)\>
Applies given filter to the search.
#### Parameters
**target\_filter**: `string` \| [`ChipCloudChip`](../../YTNodes/classes/ChipCloudChip.md)
#### Returns
`Promise`\<[`Search`](Search.md)\>
#### Defined in
[src/parser/ytmusic/Search.ts:87](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L87)
***
### getContinuation()
> **getContinuation**(): `Promise`\<`SearchContinuation`\>
Retrieves search continuation. Only available for filtered searches and shelf continuations.
#### Returns
`Promise`\<`SearchContinuation`\>
#### Defined in
[src/parser/ytmusic/Search.ts:72](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L72)
***
### getMore()
> **getMore**(`shelf`): `Promise`\<[`Search`](Search.md)\>
Loads more items for the given shelf.
#### Parameters
**shelf**: `undefined` \| [`MusicShelf`](../../YTNodes/classes/MusicShelf.md)
#### Returns
`Promise`\<[`Search`](Search.md)\>
#### Defined in
[src/parser/ytmusic/Search.ts:57](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/Search.ts#L57)

View File

@@ -0,0 +1,621 @@
[youtubei.js](../../../README.md) / [YTMusic](../README.md) / TrackInfo
# Class: TrackInfo
## Extends
- [`MediaInfo`](../../Mixins/classes/MediaInfo.md)
## Constructors
### new TrackInfo()
> **new TrackInfo**(`data`, `actions`, `cpn`): [`TrackInfo`](TrackInfo.md)
#### Parameters
**data**: [[`ApiResponse`](../../../interfaces/ApiResponse.md), `ApiResponse?`]
**actions**: [`Actions`](../../../classes/Actions.md)
**cpn**: `string`
#### Returns
[`TrackInfo`](TrackInfo.md)
#### Overrides
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`constructor`](../../Mixins/classes/MediaInfo.md#constructors)
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L26)
## Properties
### annotations?
> `optional` **annotations**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`PlayerAnnotationsExpanded`](../../YTNodes/classes/PlayerAnnotationsExpanded.md)\>
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`annotations`](../../Mixins/classes/MediaInfo.md#annotations)
#### Defined in
[src/core/mixins/MediaInfo.ts:31](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L31)
***
### basic\_info
> **basic\_info**: `object`
#### allow\_ratings?
> `optional` **allow\_ratings**: `boolean`
#### author?
> `optional` **author**: `string`
#### category
> **category**: `null` \| `string`
#### channel
> **channel**: `null` \| `object`
#### channel\_id?
> `optional` **channel\_id**: `string`
#### duration?
> `optional` **duration**: `number`
#### embed
> **embed**: `undefined` \| `null` \| `object`
#### end\_timestamp
> **end\_timestamp**: `null` \| `Date`
#### has\_ypc\_metadata
> **has\_ypc\_metadata**: `null` \| `boolean`
#### id?
> `optional` **id**: `string`
#### is\_crawlable?
> `optional` **is\_crawlable**: `boolean`
#### is\_disliked
> **is\_disliked**: `undefined` \| `boolean`
#### is\_family\_safe
> **is\_family\_safe**: `undefined` \| `boolean` = `info.microformat.is_family_safe`
#### is\_liked
> **is\_liked**: `undefined` \| `boolean`
#### is\_live?
> `optional` **is\_live**: `boolean`
#### is\_live\_content?
> `optional` **is\_live\_content**: `boolean`
#### is\_live\_dvr\_enabled?
> `optional` **is\_live\_dvr\_enabled**: `boolean`
#### is\_low\_latency\_live\_stream?
> `optional` **is\_low\_latency\_live\_stream**: `boolean`
#### is\_owner\_viewing?
> `optional` **is\_owner\_viewing**: `boolean`
#### is\_post\_live\_dvr?
> `optional` **is\_post\_live\_dvr**: `boolean`
#### is\_private?
> `optional` **is\_private**: `boolean`
#### is\_unlisted
> **is\_unlisted**: `undefined` \| `boolean` = `info.microformat.is_unlisted`
#### is\_upcoming?
> `optional` **is\_upcoming**: `boolean`
#### keywords?
> `optional` **keywords**: `string`[]
#### like\_count
> **like\_count**: `undefined` \| `number`
#### live\_chunk\_readahead?
> `optional` **live\_chunk\_readahead**: `number`
#### short\_description?
> `optional` **short\_description**: `string`
#### start\_timestamp
> **start\_timestamp**: `null` \| `Date`
#### tags
> **tags**: `null` \| `string`[]
#### thumbnail?
> `optional` **thumbnail**: [`Thumbnail`](../../Misc/classes/Thumbnail.md)[]
#### title?
> `optional` **title**: `string`
#### url\_canonical
> **url\_canonical**: `null` \| `string`
#### view\_count
> **view\_count**: `undefined` \| `number`
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`basic_info`](../../Mixins/classes/MediaInfo.md#basic_info)
#### Defined in
[src/core/mixins/MediaInfo.ts:30](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L30)
***
### captions?
> `optional` **captions**: [`PlayerCaptionsTracklist`](../../YTNodes/classes/PlayerCaptionsTracklist.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`captions`](../../Mixins/classes/MediaInfo.md#captions)
#### Defined in
[src/core/mixins/MediaInfo.ts:34](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L34)
***
### cards?
> `optional` **cards**: [`CardCollection`](../../YTNodes/classes/CardCollection.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`cards`](../../Mixins/classes/MediaInfo.md#cards)
#### Defined in
[src/core/mixins/MediaInfo.ts:35](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L35)
***
### current\_video\_endpoint?
> `optional` **current\_video\_endpoint**: [`NavigationEndpoint`](../../YTNodes/classes/NavigationEndpoint.md)
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:23](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L23)
***
### endscreen?
> `optional` **endscreen**: [`Endscreen`](../../YTNodes/classes/Endscreen.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`endscreen`](../../Mixins/classes/MediaInfo.md#endscreen)
#### Defined in
[src/core/mixins/MediaInfo.ts:33](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L33)
***
### playability\_status?
> `optional` **playability\_status**: [`IPlayabilityStatus`](../../APIResponseTypes/interfaces/IPlayabilityStatus.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`playability_status`](../../Mixins/classes/MediaInfo.md#playability_status)
#### Defined in
[src/core/mixins/MediaInfo.ts:37](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L37)
***
### player\_config?
> `optional` **player\_config**: [`IPlayerConfig`](../../APIResponseTypes/interfaces/IPlayerConfig.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`player_config`](../../Mixins/classes/MediaInfo.md#player_config)
#### Defined in
[src/core/mixins/MediaInfo.ts:38](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L38)
***
### player\_overlays?
> `optional` **player\_overlays**: [`PlayerOverlay`](../../YTNodes/classes/PlayerOverlay.md)
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:24](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L24)
***
### storyboards?
> `optional` **storyboards**: [`PlayerLiveStoryboardSpec`](../../YTNodes/classes/PlayerLiveStoryboardSpec.md) \| [`PlayerStoryboardSpec`](../../YTNodes/classes/PlayerStoryboardSpec.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`storyboards`](../../Mixins/classes/MediaInfo.md#storyboards)
#### Defined in
[src/core/mixins/MediaInfo.ts:32](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L32)
***
### streaming\_data?
> `optional` **streaming\_data**: [`IStreamingData`](../../APIResponseTypes/interfaces/IStreamingData.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`streaming_data`](../../Mixins/classes/MediaInfo.md#streaming_data)
#### Defined in
[src/core/mixins/MediaInfo.ts:36](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L36)
***
### tabs?
> `optional` **tabs**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`Tab`](../../YTNodes/classes/Tab.md)\>
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:22](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L22)
## Accessors
### actions
> `get` **actions**(): [`Actions`](../../../classes/Actions.md)
Actions instance.
#### Returns
[`Actions`](../../../classes/Actions.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`actions`](../../Mixins/classes/MediaInfo.md#actions)
#### Defined in
[src/core/mixins/MediaInfo.ts:223](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L223)
***
### available\_tabs
> `get` **available\_tabs**(): `string`[]
#### Returns
`string`[]
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:126](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L126)
***
### cpn
> `get` **cpn**(): `string`
Content Playback Nonce.
#### Returns
`string`
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`cpn`](../../Mixins/classes/MediaInfo.md#cpn)
#### Defined in
[src/core/mixins/MediaInfo.ts:230](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L230)
***
### page
> `get` **page**(): [[`IPlayerResponse`](../../APIResponseTypes/type-aliases/IPlayerResponse.md), `INextResponse?`]
Original parsed InnerTube response.
#### Returns
[[`IPlayerResponse`](../../APIResponseTypes/type-aliases/IPlayerResponse.md), `INextResponse?`]
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`page`](../../Mixins/classes/MediaInfo.md#page)
#### Defined in
[src/core/mixins/MediaInfo.ts:237](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L237)
## Methods
### addToWatchHistory()
> **addToWatchHistory**(): `Promise`\<`Response`\>
Adds the song to the watch history.
#### Returns
`Promise`\<`Response`\>
#### Overrides
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`addToWatchHistory`](../../Mixins/classes/MediaInfo.md#addtowatchhistory)
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:122](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L122)
***
### chooseFormat()
> **chooseFormat**(`options`): [`Format`](../../Misc/classes/Format.md)
Selects the format that best matches the given options.
#### Parameters
**options**: [`FormatOptions`](../../Types/interfaces/FormatOptions.md)
Options
#### Returns
[`Format`](../../Misc/classes/Format.md)
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`chooseFormat`](../../Mixins/classes/MediaInfo.md#chooseformat)
#### Defined in
[src/core/mixins/MediaInfo.ts:149](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L149)
***
### download()
> **download**(`options`): `Promise`\<`ReadableStream`\<`Uint8Array`\>\>
Downloads the video.
#### Parameters
**options**: [`DownloadOptions`](../../Types/interfaces/DownloadOptions.md) = `{}`
Download options.
#### Returns
`Promise`\<`ReadableStream`\<`Uint8Array`\>\>
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`download`](../../Mixins/classes/MediaInfo.md#download)
#### Defined in
[src/core/mixins/MediaInfo.ts:157](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L157)
***
### getLyrics()
> **getLyrics**(): `Promise`\<`undefined` \| [`MusicDescriptionShelf`](../../YTNodes/classes/MusicDescriptionShelf.md)\>
Retrieves lyrics.
#### Returns
`Promise`\<`undefined` \| [`MusicDescriptionShelf`](../../YTNodes/classes/MusicDescriptionShelf.md)\>
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:114](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L114)
***
### getRelated()
> **getRelated**(): `Promise`\<[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md) \| [`MusicDescriptionShelf`](../../YTNodes/classes/MusicDescriptionShelf.md)\>\>
Retrieves related content.
#### Returns
`Promise`\<[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`MusicCarouselShelf`](../../YTNodes/classes/MusicCarouselShelf.md) \| [`MusicDescriptionShelf`](../../YTNodes/classes/MusicDescriptionShelf.md)\>\>
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:106](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L106)
***
### getStreamingInfo()
> **getStreamingInfo**(`url_transformer`?, `format_filter`?): `StreamingInfo`
Get a cleaned up representation of the adaptive_formats
#### Parameters
**url\_transformer?**: [`URLTransformer`](../../Types/type-aliases/URLTransformer.md)
**format\_filter?**: [`FormatFilter`](../../Types/type-aliases/FormatFilter.md)
#### Returns
`StreamingInfo`
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`getStreamingInfo`](../../Mixins/classes/MediaInfo.md#getstreaminginfo)
#### Defined in
[src/core/mixins/MediaInfo.ts:132](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L132)
***
### getTab()
> **getTab**(`title_or_page_type`): `Promise`\<[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`YTNode`](../../Helpers/classes/YTNode.md)\> \| [`SectionList`](../../YTNodes/classes/SectionList.md) \| [`MusicQueue`](../../YTNodes/classes/MusicQueue.md) \| [`RichGrid`](../../YTNodes/classes/RichGrid.md) \| [`Message`](../../YTNodes/classes/Message.md)\>
Retrieves contents of the given tab.
#### Parameters
**title\_or\_page\_type**: `string`
#### Returns
`Promise`\<[`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`YTNode`](../../Helpers/classes/YTNode.md)\> \| [`SectionList`](../../YTNodes/classes/SectionList.md) \| [`MusicQueue`](../../YTNodes/classes/MusicQueue.md) \| [`RichGrid`](../../YTNodes/classes/RichGrid.md) \| [`Message`](../../YTNodes/classes/Message.md)\>
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:45](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L45)
***
### getTranscript()
> **getTranscript**(): `Promise`\<[`TranscriptInfo`](../../YT/classes/TranscriptInfo.md)\>
Retrieves the video's transcript.
#### Returns
`Promise`\<[`TranscriptInfo`](../../YT/classes/TranscriptInfo.md)\>
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`getTranscript`](../../Mixins/classes/MediaInfo.md#gettranscript)
#### Defined in
[src/core/mixins/MediaInfo.ts:170](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L170)
***
### getUpNext()
> **getUpNext**(`automix`): `Promise`\<[`PlaylistPanel`](../../YTNodes/classes/PlaylistPanel.md)\>
Retrieves up next.
#### Parameters
**automix**: `boolean` = `true`
#### Returns
`Promise`\<[`PlaylistPanel`](../../YTNodes/classes/PlaylistPanel.md)\>
#### Defined in
[src/parser/ytmusic/TrackInfo.ts:74](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/ytmusic/TrackInfo.ts#L74)
***
### toDash()
> **toDash**(`url_transformer`?, `format_filter`?, `options`?): `Promise`\<`string`\>
Generates a DASH manifest from the streaming data.
#### Parameters
**url\_transformer?**: [`URLTransformer`](../../Types/type-aliases/URLTransformer.md)
Function to transform the URLs.
**format\_filter?**: [`FormatFilter`](../../Types/type-aliases/FormatFilter.md)
Function to filter the formats.
**options?**: `DashOptions` = `...`
Additional options to customise the manifest generation
#### Returns
`Promise`\<`string`\>
DASH manifest
#### Inherited from
[`MediaInfo`](../../Mixins/classes/MediaInfo.md).[`toDash`](../../Mixins/classes/MediaInfo.md#todash)
#### Defined in
[src/core/mixins/MediaInfo.ts:97](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/core/mixins/MediaInfo.ts#L97)