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,131 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / Author
# Class: Author
## Constructors
### new Author()
> **new Author**(`item`, `badges`?, `thumbs`?, `id`?): [`Author`](Author.md)
#### Parameters
**item**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
**badges?**: `any`
**thumbs?**: `any`
**id?**: `string`
#### Returns
[`Author`](Author.md)
#### Defined in
[src/parser/classes/misc/Author.ts:21](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L21)
## Properties
### badges
> **badges**: [`ObservedArray`](../../Helpers/type-aliases/ObservedArray.md)\<[`YTNode`](../../Helpers/classes/YTNode.md)\>
#### Defined in
[src/parser/classes/misc/Author.ts:15](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L15)
***
### endpoint?
> `optional` **endpoint**: [`NavigationEndpoint`](../../YTNodes/classes/NavigationEndpoint.md)
#### Defined in
[src/parser/classes/misc/Author.ts:14](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L14)
***
### id
> **id**: `string`
#### Defined in
[src/parser/classes/misc/Author.ts:11](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L11)
***
### is\_moderator?
> `optional` **is\_moderator**: `boolean`
#### Defined in
[src/parser/classes/misc/Author.ts:16](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L16)
***
### is\_verified?
> `optional` **is\_verified**: `boolean`
#### Defined in
[src/parser/classes/misc/Author.ts:17](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L17)
***
### is\_verified\_artist?
> `optional` **is\_verified\_artist**: `boolean`
#### Defined in
[src/parser/classes/misc/Author.ts:18](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L18)
***
### name
> **name**: `string`
#### Defined in
[src/parser/classes/misc/Author.ts:12](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L12)
***
### thumbnails
> **thumbnails**: [`Thumbnail`](Thumbnail.md)[]
#### Defined in
[src/parser/classes/misc/Author.ts:13](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L13)
***
### url
> **url**: `string`
#### Defined in
[src/parser/classes/misc/Author.ts:19](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L19)
## Accessors
### best\_thumbnail
> `get` **best\_thumbnail**(): `undefined` \| [`Thumbnail`](Thumbnail.md)
#### Returns
`undefined` \| [`Thumbnail`](Thumbnail.md)
#### Defined in
[src/parser/classes/misc/Author.ts:51](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Author.ts#L51)

View File

@@ -0,0 +1,223 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / ChildElement
# Class: ChildElement
## Extends
- [`YTNode`](../../Helpers/classes/YTNode.md)
## Constructors
### new ChildElement()
> **new ChildElement**(`data`): [`ChildElement`](ChildElement.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
#### Returns
[`ChildElement`](ChildElement.md)
#### Overrides
[`YTNode`](../../Helpers/classes/YTNode.md).[`constructor`](../../Helpers/classes/YTNode.md#constructors)
#### Defined in
[src/parser/classes/misc/ChildElement.ts:11](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/ChildElement.ts#L11)
## Properties
### child\_elements?
> `optional` **child\_elements**: [`ChildElement`](ChildElement.md)[]
#### Defined in
[src/parser/classes/misc/ChildElement.ts:9](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/ChildElement.ts#L9)
***
### properties
> **properties**: `any`
#### Defined in
[src/parser/classes/misc/ChildElement.ts:8](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/ChildElement.ts#L8)
***
### text?
> `optional` **text**: `string`
#### Defined in
[src/parser/classes/misc/ChildElement.ts:7](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/ChildElement.ts#L7)
***
### type
> `readonly` **type**: `string`
#### Inherited from
[`YTNode`](../../Helpers/classes/YTNode.md).[`type`](../../Helpers/classes/YTNode.md#type)
#### Defined in
[src/parser/helpers.ts:8](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/helpers.ts#L8)
***
### type
> `static` **type**: `string` = `'ChildElement'`
#### Overrides
[`YTNode`](../../Helpers/classes/YTNode.md).[`type`](../../Helpers/classes/YTNode.md#type-1)
#### Defined in
[src/parser/classes/misc/ChildElement.ts:5](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/ChildElement.ts#L5)
## Methods
### as()
> **as**\<`T`, `K`\>(...`types`): `InstanceType`\<`K`\[`number`\]\>
Cast to one of the given types.
#### Type Parameters
**T** *extends* [`YTNode`](../../Helpers/classes/YTNode.md)
**K** *extends* [`YTNodeConstructor`](../../Helpers/interfaces/YTNodeConstructor.md)\<`T`\>[]
#### Parameters
• ...**types**: `K`
#### Returns
`InstanceType`\<`K`\[`number`\]\>
#### Inherited from
[`YTNode`](../../Helpers/classes/YTNode.md).[`as`](../../Helpers/classes/YTNode.md#as)
#### Defined in
[src/parser/helpers.ts:35](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/helpers.ts#L35)
***
### hasKey()
> **hasKey**\<`T`, `R`\>(`key`): `this is ChildElement & { [k in string]: R }`
Check for a key without asserting the type.
#### Type Parameters
**T** *extends* `string`
**R** = `any`
#### Parameters
**key**: `T`
The key to check
#### Returns
`this is ChildElement & { [k in string]: R }`
Whether the node has the key
#### Inherited from
[`YTNode`](../../Helpers/classes/YTNode.md).[`hasKey`](../../Helpers/classes/YTNode.md#haskey)
#### Defined in
[src/parser/helpers.ts:47](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/helpers.ts#L47)
***
### is()
> **is**\<`T`, `K`\>(...`types`): `this is InstanceType<K[number]>`
Check if the node is of the given type.
#### Type Parameters
**T** *extends* [`YTNode`](../../Helpers/classes/YTNode.md)
**K** *extends* [`YTNodeConstructor`](../../Helpers/interfaces/YTNodeConstructor.md)\<`T`\>[]
#### Parameters
• ...**types**: `K`
The type to check
#### Returns
`this is InstanceType<K[number]>`
whether the node is of the given type
#### Inherited from
[`YTNode`](../../Helpers/classes/YTNode.md).[`is`](../../Helpers/classes/YTNode.md#is)
#### Defined in
[src/parser/helpers.ts:28](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/helpers.ts#L28)
***
### key()
> **key**\<`T`, `R`\>(`key`): [`Maybe`](../../Helpers/classes/Maybe.md)
Assert that the node has the given key and return it.
#### Type Parameters
**T** *extends* `string`
**R** = `any`
#### Parameters
**key**: `T`
The key to check
#### Returns
[`Maybe`](../../Helpers/classes/Maybe.md)
The value of the key wrapped in a Maybe
#### Throws
If the node does not have the key
#### Inherited from
[`YTNode`](../../Helpers/classes/YTNode.md).[`key`](../../Helpers/classes/YTNode.md#key)
#### Defined in
[src/parser/helpers.ts:57](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/helpers.ts#L57)

View File

@@ -0,0 +1,105 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / EmojiRun
# Class: EmojiRun
## Implements
- `Run`
## Constructors
### new EmojiRun()
> **new EmojiRun**(`data`): [`EmojiRun`](EmojiRun.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
#### Returns
[`EmojiRun`](EmojiRun.md)
#### Defined in
[src/parser/classes/misc/EmojiRun.ts:15](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/EmojiRun.ts#L15)
## Properties
### emoji
> **emoji**: `object`
#### emoji\_id
> **emoji\_id**: `string`
#### image
> **image**: [`Thumbnail`](Thumbnail.md)[]
#### is\_custom
> **is\_custom**: `boolean`
#### search\_terms
> **search\_terms**: `string`[]
#### shortcuts
> **shortcuts**: `string`[]
#### Defined in
[src/parser/classes/misc/EmojiRun.ts:7](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/EmojiRun.ts#L7)
***
### text
> **text**: `string`
#### Implementation of
`Run.text`
#### Defined in
[src/parser/classes/misc/EmojiRun.ts:6](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/EmojiRun.ts#L6)
## Methods
### toHTML()
> **toHTML**(): `string`
#### Returns
`string`
#### Implementation of
`Run.toHTML`
#### Defined in
[src/parser/classes/misc/EmojiRun.ts:35](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/EmojiRun.ts#L35)
***
### toString()
> **toString**(): `string`
#### Returns
`string`
#### Implementation of
`Run.toString`
#### Defined in
[src/parser/classes/misc/EmojiRun.ts:31](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/EmojiRun.ts#L31)

View File

@@ -0,0 +1,575 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / Format
# Class: Format
## Constructors
### new Format()
> **new Format**(`data`, `this_response_nsig_cache`?): [`Format`](Format.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
**this\_response\_nsig\_cache?**: `Map`\<`string`, `string`\>
#### Returns
[`Format`](Format.md)
#### Defined in
[src/parser/classes/misc/Format.ts:76](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L76)
## Properties
### approx\_duration\_ms
> **approx\_duration\_ms**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:30](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L30)
***
### audio\_channels?
> `optional` **audio\_channels**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:32](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L32)
***
### audio\_quality?
> `optional` **audio\_quality**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:29](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L29)
***
### audio\_sample\_rate?
> `optional` **audio\_sample\_rate**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:31](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L31)
***
### audio\_track?
> `optional` **audio\_track**: `object`
#### audio\_is\_default
> **audio\_is\_default**: `boolean`
#### display\_name
> **display\_name**: `string`
#### id
> **id**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:50](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L50)
***
### average\_bitrate?
> `optional` **average\_bitrate**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:21](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L21)
***
### bitrate
> **bitrate**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:22](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L22)
***
### caption\_track?
> `optional` **caption\_track**: `object`
#### display\_name
> **display\_name**: `string`
#### id
> **id**: `string`
#### kind?
> `optional` **kind**: `"asr"` \| `"frc"`
#### language\_code
> **language\_code**: `string`
#### vss\_id
> **vss\_id**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:68](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L68)
***
### cipher?
> `optional` **cipher**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:49](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L49)
***
### color\_info?
> `optional` **color\_info**: `object`
#### matrix\_coefficients?
> `optional` **matrix\_coefficients**: `string`
#### primaries?
> `optional` **primaries**: `string`
#### transfer\_characteristics?
> `optional` **transfer\_characteristics**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:63](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L63)
***
### content\_length?
> `optional` **content\_length**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:14](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L14)
***
### distinct\_params?
> `optional` **distinct\_params**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:37](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L37)
***
### drm\_families?
> `optional` **drm\_families**: `string`[]
#### Defined in
[src/parser/classes/misc/Format.ts:17](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L17)
***
### drm\_track\_type?
> `optional` **drm\_track\_type**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:36](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L36)
***
### fair\_play\_key\_uri?
> `optional` **fair\_play\_key\_uri**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:25](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L25)
***
### fps?
> `optional` **fps**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:18](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L18)
***
### has\_audio
> **has\_audio**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:55](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L55)
***
### has\_text
> **has\_text**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:57](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L57)
***
### has\_video
> **has\_video**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:56](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L56)
***
### height?
> `optional` **height**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:11](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L11)
***
### high\_replication?
> `optional` **high\_replication**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:28](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L28)
***
### index\_range?
> `optional` **index\_range**: `object`
#### end
> **end**: `number`
#### start
> **start**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:45](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L45)
***
### init\_range?
> `optional` **init\_range**: `object`
#### end
> **end**: `number`
#### start
> **start**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:41](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L41)
***
### is\_descriptive?
> `optional` **is\_descriptive**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:60](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L60)
***
### is\_drc?
> `optional` **is\_drc**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:35](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L35)
***
### is\_dubbed?
> `optional` **is\_dubbed**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:59](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L59)
***
### is\_original?
> `optional` **is\_original**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:62](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L62)
***
### is\_secondary?
> `optional` **is\_secondary**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:61](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L61)
***
### is\_type\_otf
> **is\_type\_otf**: `boolean`
#### Defined in
[src/parser/classes/misc/Format.ts:40](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L40)
***
### itag
> **itag**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:8](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L8)
***
### language?
> `optional` **language**: `null` \| `string`
#### Defined in
[src/parser/classes/misc/Format.ts:58](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L58)
***
### last\_modified
> **last\_modified**: `Date`
#### Defined in
[src/parser/classes/misc/Format.ts:12](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L12)
***
### last\_modified\_ms
> **last\_modified\_ms**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:13](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L13)
***
### loudness\_db?
> `optional` **loudness\_db**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:33](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L33)
***
### max\_dvr\_duration\_sec?
> `optional` **max\_dvr\_duration\_sec**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:27](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L27)
***
### mime\_type
> **mime\_type**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:39](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L39)
***
### projection\_type?
> `optional` **projection\_type**: `"RECTANGULAR"` \| `"EQUIRECTANGULAR"` \| `"EQUIRECTANGULAR_THREED_TOP_BOTTOM"` \| `"MESH"`
#### Defined in
[src/parser/classes/misc/Format.ts:20](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L20)
***
### quality?
> `optional` **quality**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:15](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L15)
***
### quality\_label?
> `optional` **quality\_label**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:19](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L19)
***
### signature\_cipher?
> `optional` **signature\_cipher**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:34](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L34)
***
### spatial\_audio\_type?
> `optional` **spatial\_audio\_type**: `"AMBISONICS_5_1"` \| `"AMBISONICS_QUAD"` \| `"FOA_WITH_NON_DIEGETIC"`
#### Defined in
[src/parser/classes/misc/Format.ts:23](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L23)
***
### stereo\_layout?
> `optional` **stereo\_layout**: `"LEFT_RIGHT"` \| `"TOP_BOTTOM"`
#### Defined in
[src/parser/classes/misc/Format.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L26)
***
### target\_duration\_dec?
> `optional` **target\_duration\_dec**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:24](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L24)
***
### track\_absolute\_loudness\_lkfs?
> `optional` **track\_absolute\_loudness\_lkfs**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:38](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L38)
***
### url?
> `optional` **url**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:9](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L9)
***
### width?
> `optional` **width**: `number`
#### Defined in
[src/parser/classes/misc/Format.ts:10](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L10)
***
### xtags?
> `optional` **xtags**: `string`
#### Defined in
[src/parser/classes/misc/Format.ts:16](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L16)
## Methods
### decipher()
> **decipher**(`player`): `string`
Deciphers the streaming url of the format.
#### Parameters
**player**: `undefined` \| [`Player`](../../../classes/Player.md)
#### Returns
`string`
Deciphered URL.
#### Defined in
[src/parser/classes/misc/Format.ts:234](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Format.ts#L234)

View File

@@ -0,0 +1,123 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / Text
# Class: Text
## Constructors
### new Text()
> **new Text**(`data`): [`Text`](Text.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
#### Returns
[`Text`](Text.md)
#### Defined in
[src/parser/classes/misc/Text.ts:31](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L31)
## Properties
### endpoint?
> `optional` **endpoint**: [`NavigationEndpoint`](../../YTNodes/classes/NavigationEndpoint.md)
#### Defined in
[src/parser/classes/misc/Text.ts:29](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L29)
***
### runs?
> `optional` **runs**: ([`EmojiRun`](EmojiRun.md) \| [`TextRun`](TextRun.md))[]
#### Defined in
[src/parser/classes/misc/Text.ts:28](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L28)
***
### text?
> `optional` **text**: `string`
#### Defined in
[src/parser/classes/misc/Text.ts:27](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L27)
## Methods
### isEmpty()
> **isEmpty**(): `boolean`
Checks if the text is empty.
#### Returns
`boolean`
Whether the text is empty.
#### Defined in
[src/parser/classes/misc/Text.ts:197](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L197)
***
### toHTML()
> **toHTML**(): `undefined` \| `string`
Converts the text to HTML.
#### Returns
`undefined` \| `string`
The HTML.
#### Defined in
[src/parser/classes/misc/Text.ts:189](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L189)
***
### toString()
> **toString**(): `string`
Converts the text to a string.
#### Returns
`string`
The text.
#### Defined in
[src/parser/classes/misc/Text.ts:205](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L205)
***
### fromAttributed()
> `static` **fromAttributed**(`data`): [`Text`](Text.md)
#### Parameters
**data**: `AttributedText`
#### Returns
[`Text`](Text.md)
#### Defined in
[src/parser/classes/misc/Text.ts:54](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Text.ts#L54)

View File

@@ -0,0 +1,125 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / TextRun
# Class: TextRun
## Implements
- `Run`
## Constructors
### new TextRun()
> **new TextRun**(`data`): [`TextRun`](TextRun.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
#### Returns
[`TextRun`](TextRun.md)
#### Defined in
[src/parser/classes/misc/TextRun.ts:13](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L13)
## Properties
### attachment
> **attachment**: `any`
#### Defined in
[src/parser/classes/misc/TextRun.ts:11](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L11)
***
### bold
> **bold**: `boolean`
#### Defined in
[src/parser/classes/misc/TextRun.ts:8](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L8)
***
### endpoint?
> `optional` **endpoint**: [`NavigationEndpoint`](../../YTNodes/classes/NavigationEndpoint.md)
#### Defined in
[src/parser/classes/misc/TextRun.ts:7](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L7)
***
### italics
> **italics**: `boolean`
#### Defined in
[src/parser/classes/misc/TextRun.ts:9](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L9)
***
### strikethrough
> **strikethrough**: `boolean`
#### Defined in
[src/parser/classes/misc/TextRun.ts:10](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L10)
***
### text
> **text**: `string`
#### Implementation of
`Run.text`
#### Defined in
[src/parser/classes/misc/TextRun.ts:6](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L6)
## Methods
### toHTML()
> **toHTML**(): `string`
#### Returns
`string`
#### Implementation of
`Run.toHTML`
#### Defined in
[src/parser/classes/misc/TextRun.ts:30](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L30)
***
### toString()
> **toString**(): `string`
#### Returns
`string`
#### Implementation of
`Run.toString`
#### Defined in
[src/parser/classes/misc/TextRun.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/TextRun.ts#L26)

View File

@@ -0,0 +1,71 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / Thumbnail
# Class: Thumbnail
## Constructors
### new Thumbnail()
> **new Thumbnail**(`data`): [`Thumbnail`](Thumbnail.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
#### Returns
[`Thumbnail`](Thumbnail.md)
#### Defined in
[src/parser/classes/misc/Thumbnail.ts:8](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Thumbnail.ts#L8)
## Properties
### height
> **height**: `number`
#### Defined in
[src/parser/classes/misc/Thumbnail.ts:6](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Thumbnail.ts#L6)
***
### url
> **url**: `string`
#### Defined in
[src/parser/classes/misc/Thumbnail.ts:4](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Thumbnail.ts#L4)
***
### width
> **width**: `number`
#### Defined in
[src/parser/classes/misc/Thumbnail.ts:5](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Thumbnail.ts#L5)
## Methods
### fromResponse()
> `static` **fromResponse**(`data`): [`Thumbnail`](Thumbnail.md)[]
Get thumbnails from response object.
#### Parameters
**data**: `any`
#### Returns
[`Thumbnail`](Thumbnail.md)[]
#### Defined in
[src/parser/classes/misc/Thumbnail.ts:17](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/Thumbnail.ts#L17)

View File

@@ -0,0 +1,221 @@
[youtubei.js](../../../README.md) / [Misc](../README.md) / VideoDetails
# Class: VideoDetails
## Constructors
### new VideoDetails()
> **new VideoDetails**(`data`): [`VideoDetails`](VideoDetails.md)
#### Parameters
**data**: [`RawNode`](../../APIResponseTypes/type-aliases/RawNode.md)
#### Returns
[`VideoDetails`](VideoDetails.md)
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:26](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L26)
## Properties
### allow\_ratings
> **allow\_ratings**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:13](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L13)
***
### author
> **author**: `string`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:15](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L15)
***
### channel\_id
> **channel\_id**: `string`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:6](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L6)
***
### duration
> **duration**: `number`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:8](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L8)
***
### id
> **id**: `string`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:5](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L5)
***
### is\_crawlable
> **is\_crawlable**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:21](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L21)
***
### is\_live
> **is\_live**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:17](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L17)
***
### is\_live\_content
> **is\_live\_content**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:18](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L18)
***
### is\_live\_dvr\_enabled
> **is\_live\_dvr\_enabled**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:19](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L19)
***
### is\_low\_latency\_live\_stream
> **is\_low\_latency\_live\_stream**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:23](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L23)
***
### is\_owner\_viewing
> **is\_owner\_viewing**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:10](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L10)
***
### is\_post\_live\_dvr
> **is\_post\_live\_dvr**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:22](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L22)
***
### is\_private
> **is\_private**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:16](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L16)
***
### is\_upcoming
> **is\_upcoming**: `boolean`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:20](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L20)
***
### keywords
> **keywords**: `string`[]
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:9](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L9)
***
### live\_chunk\_readahead?
> `optional` **live\_chunk\_readahead**: `number`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:24](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L24)
***
### short\_description
> **short\_description**: `string`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:11](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L11)
***
### thumbnail
> **thumbnail**: [`Thumbnail`](Thumbnail.md)[]
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:12](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L12)
***
### title
> **title**: `string`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:7](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L7)
***
### view\_count
> **view\_count**: `number`
#### Defined in
[src/parser/classes/misc/VideoDetails.ts:14](https://github.com/LuanRT/YouTube.js/blob/eb21af33db708f0355f4fb15881f5d4fabc7b06c/src/parser/classes/misc/VideoDetails.ts#L14)