@hanifhan1f/vidstack-react 1.12.13 → 1.12.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/dev/chunks/vidstack-B-FM4-oZ.js +668 -0
  2. package/dev/chunks/vidstack-B92UncBI.js +61 -0
  3. package/dev/chunks/vidstack-BDiAEW1N.js +11691 -0
  4. package/dev/chunks/vidstack-BZIhWvGa.js +1371 -0
  5. package/dev/chunks/vidstack-Bfi_jCvb.js +476 -0
  6. package/dev/chunks/vidstack-CBF7iUqu.js +22 -0
  7. package/dev/chunks/vidstack-CFZ0rYJz.js +34 -0
  8. package/dev/chunks/vidstack-CM82l-7o.js +551 -0
  9. package/dev/chunks/vidstack-CvWDiSTs.js +84 -0
  10. package/dev/chunks/vidstack-CzU-uC5f.js +189 -0
  11. package/dev/chunks/vidstack-D-hQD1eE.js +9 -0
  12. package/dev/chunks/vidstack-D6_9yy0x.js +643 -0
  13. package/dev/chunks/vidstack-DJQOTrl6.js +180 -0
  14. package/dev/chunks/vidstack-DNbKNc4R.js +288 -0
  15. package/dev/chunks/vidstack-D_bWd66h.js +2023 -0
  16. package/dev/chunks/vidstack-Dm1xEU9Q.js +36 -0
  17. package/dev/chunks/vidstack-f6WXkmfP.js +375 -0
  18. package/dev/chunks/vidstack-krOAtKMi.js +34 -0
  19. package/dev/chunks/vidstack-lYFZKRUc.js +401 -0
  20. package/dev/chunks/vidstack-vz-aZSfo.js +1497 -0
  21. package/dev/player/vidstack-default-components.js +14 -0
  22. package/dev/player/vidstack-default-icons.js +88 -0
  23. package/dev/player/vidstack-default-layout.js +14 -0
  24. package/dev/player/vidstack-plyr-icons.js +62 -0
  25. package/dev/player/vidstack-plyr-layout.js +636 -0
  26. package/dev/player/vidstack-remotion.js +345 -0
  27. package/dev/vidstack.js +587 -0
  28. package/dom.d.ts +91 -0
  29. package/google-cast.d.ts +1422 -0
  30. package/icons.d.ts +5 -0
  31. package/index.d.ts +8 -0
  32. package/package.json +9 -60
  33. package/player/layouts/default.d.ts +11392 -0
  34. package/player/layouts/plyr.d.ts +5 -0
  35. package/player/remotion.d.ts +5 -0
  36. package/player/styles/base.css +153 -0
  37. package/player/styles/default/buffering.css +55 -0
  38. package/player/styles/default/buttons.css +175 -0
  39. package/player/styles/default/captions.css +181 -0
  40. package/player/styles/default/chapter-title.css +26 -0
  41. package/player/styles/default/controls.css +56 -0
  42. package/player/styles/default/gestures.css +19 -0
  43. package/player/styles/default/icons.css +6 -0
  44. package/player/styles/default/keyboard.css +148 -0
  45. package/player/styles/default/layouts/audio.css +417 -0
  46. package/player/styles/default/layouts/video.css +1082 -0
  47. package/player/styles/default/menus.css +959 -0
  48. package/player/styles/default/poster.css +52 -0
  49. package/player/styles/default/sliders.css +391 -0
  50. package/player/styles/default/theme.css +2461 -0
  51. package/player/styles/default/thumbnail.css +40 -0
  52. package/player/styles/default/time.css +45 -0
  53. package/player/styles/default/tooltips.css +141 -0
  54. package/player/styles/plyr/theme.css +1237 -0
  55. package/prod/chunks/vidstack-0Foyib2F.js +34 -0
  56. package/prod/chunks/vidstack-BbPEqH3g.js +11196 -0
  57. package/prod/chunks/vidstack-Bh7M8kL6.js +663 -0
  58. package/prod/chunks/vidstack-BlPINAXN.js +189 -0
  59. package/prod/chunks/vidstack-C5Rzkyfp.js +375 -0
  60. package/prod/chunks/vidstack-CBF7iUqu.js +22 -0
  61. package/prod/chunks/vidstack-CZNlvfmV.js +288 -0
  62. package/prod/chunks/vidstack-CZgUA94N.js +1979 -0
  63. package/prod/chunks/vidstack-Ce0Qn3e1.js +1497 -0
  64. package/prod/chunks/vidstack-D0XCUWbp.js +159 -0
  65. package/prod/chunks/vidstack-DTyDOhwS.js +504 -0
  66. package/prod/chunks/vidstack-DhC5F6c8.js +470 -0
  67. package/prod/chunks/vidstack-Dm1xEU9Q.js +36 -0
  68. package/prod/chunks/vidstack-Ma9rwtR0.js +386 -0
  69. package/prod/chunks/vidstack-WsodkLQg.js +1371 -0
  70. package/prod/chunks/vidstack-jIPoNqhj.js +545 -0
  71. package/prod/chunks/vidstack-krOAtKMi.js +34 -0
  72. package/prod/chunks/vidstack-vqp2QaHR.js +9 -0
  73. package/prod/chunks/vidstack-xo_SmgiV.js +84 -0
  74. package/prod/chunks/vidstack-xvxeRtaN.js +61 -0
  75. package/prod/player/vidstack-default-components.js +14 -0
  76. package/prod/player/vidstack-default-icons.js +88 -0
  77. package/prod/player/vidstack-default-layout.js +14 -0
  78. package/prod/player/vidstack-plyr-icons.js +62 -0
  79. package/prod/player/vidstack-plyr-layout.js +636 -0
  80. package/prod/player/vidstack-remotion.js +335 -0
  81. package/prod/vidstack-icons.js +435 -0
  82. package/prod/vidstack.js +648 -0
  83. package/server/chunks/vidstack-2zMSe4ym.js +1371 -0
  84. package/server/chunks/vidstack-BtqWstSj.js +375 -0
  85. package/server/chunks/vidstack-C-HdFsZi.js +84 -0
  86. package/server/chunks/vidstack-C4iWXMC-.js +545 -0
  87. package/server/chunks/vidstack-C5zFBMwg.js +386 -0
  88. package/server/chunks/vidstack-CBF7iUqu.js +22 -0
  89. package/server/chunks/vidstack-CEh38XpD.js +288 -0
  90. package/server/chunks/vidstack-CWR0J8Qz.js +1497 -0
  91. package/server/chunks/vidstack-CkMAeO-e.js +34 -0
  92. package/server/chunks/vidstack-Cm0qnRvu.js +11196 -0
  93. package/server/chunks/vidstack-CoGzBr_V.js +663 -0
  94. package/server/chunks/vidstack-CyFwkPiu.js +470 -0
  95. package/server/chunks/vidstack-D-hQD1eE.js +9 -0
  96. package/server/chunks/vidstack-D_bWd66h.js +2023 -0
  97. package/server/chunks/vidstack-Dm1xEU9Q.js +36 -0
  98. package/server/chunks/vidstack-DtQSvsQr.js +189 -0
  99. package/server/chunks/vidstack-jlaBqZq5.js +61 -0
  100. package/server/chunks/vidstack-krOAtKMi.js +34 -0
  101. package/server/chunks/vidstack-rWs25cS9.js +159 -0
  102. package/server/chunks/vidstack-uyCXITen.js +504 -0
  103. package/server/player/vidstack-default-components.js +14 -0
  104. package/server/player/vidstack-default-icons.js +88 -0
  105. package/server/player/vidstack-default-layout.js +14 -0
  106. package/server/player/vidstack-plyr-icons.js +62 -0
  107. package/server/player/vidstack-plyr-layout.js +636 -0
  108. package/server/player/vidstack-remotion.js +335 -0
  109. package/server/vidstack.js +648 -0
  110. package/tailwind.cjs +101 -0
  111. package/tailwind.d.cts +15 -0
  112. package/.templates/sandbox/document.css +0 -27
  113. package/.templates/sandbox/favicon-32x32.png +0 -0
  114. package/.templates/sandbox/index.html +0 -21
  115. package/.templates/sandbox/main.tsx +0 -12
  116. package/.templates/sandbox/player.css +0 -39
  117. package/.templates/sandbox/player.tsx +0 -121
  118. package/.templates/sandbox/tracks.ts +0 -23
  119. package/analyze.config.ts +0 -7
  120. package/build/build-icons.js +0 -62
  121. package/rollup.config.ts +0 -256
  122. package/src/components/announcer.tsx +0 -47
  123. package/src/components/layouts/default/audio-layout.tsx +0 -231
  124. package/src/components/layouts/default/context.ts +0 -28
  125. package/src/components/layouts/default/hooks.ts +0 -13
  126. package/src/components/layouts/default/icons.tsx +0 -225
  127. package/src/components/layouts/default/index.ts +0 -11
  128. package/src/components/layouts/default/media-layout.tsx +0 -259
  129. package/src/components/layouts/default/slots.tsx +0 -98
  130. package/src/components/layouts/default/ui/announcer.tsx +0 -22
  131. package/src/components/layouts/default/ui/buttons.tsx +0 -301
  132. package/src/components/layouts/default/ui/captions.tsx +0 -16
  133. package/src/components/layouts/default/ui/controls.tsx +0 -12
  134. package/src/components/layouts/default/ui/keyboard-display.tsx +0 -132
  135. package/src/components/layouts/default/ui/menus/accessibility-menu.tsx +0 -100
  136. package/src/components/layouts/default/ui/menus/audio-menu.tsx +0 -167
  137. package/src/components/layouts/default/ui/menus/captions-menu.tsx +0 -61
  138. package/src/components/layouts/default/ui/menus/chapters-menu.tsx +0 -132
  139. package/src/components/layouts/default/ui/menus/font-menu.tsx +0 -331
  140. package/src/components/layouts/default/ui/menus/items/menu-checkbox.tsx +0 -72
  141. package/src/components/layouts/default/ui/menus/items/menu-items.tsx +0 -135
  142. package/src/components/layouts/default/ui/menus/items/menu-slider.tsx +0 -92
  143. package/src/components/layouts/default/ui/menus/playback-menu.tsx +0 -232
  144. package/src/components/layouts/default/ui/menus/settings-menu.tsx +0 -114
  145. package/src/components/layouts/default/ui/menus/utils.ts +0 -12
  146. package/src/components/layouts/default/ui/sliders.tsx +0 -136
  147. package/src/components/layouts/default/ui/time.tsx +0 -73
  148. package/src/components/layouts/default/ui/title.tsx +0 -24
  149. package/src/components/layouts/default/ui/tooltip.tsx +0 -27
  150. package/src/components/layouts/default/ui.ts +0 -8
  151. package/src/components/layouts/default/video-layout.tsx +0 -344
  152. package/src/components/layouts/plyr/context.ts +0 -26
  153. package/src/components/layouts/plyr/icons/plyr-airplay.js +0 -1
  154. package/src/components/layouts/plyr/icons/plyr-captions-off.js +0 -1
  155. package/src/components/layouts/plyr/icons/plyr-captions-on.js +0 -1
  156. package/src/components/layouts/plyr/icons/plyr-download.js +0 -1
  157. package/src/components/layouts/plyr/icons/plyr-enter-fullscreen.js +0 -1
  158. package/src/components/layouts/plyr/icons/plyr-exit-fullscreen.js +0 -1
  159. package/src/components/layouts/plyr/icons/plyr-fast-forward.js +0 -1
  160. package/src/components/layouts/plyr/icons/plyr-muted.js +0 -1
  161. package/src/components/layouts/plyr/icons/plyr-pause.js +0 -1
  162. package/src/components/layouts/plyr/icons/plyr-pip.js +0 -1
  163. package/src/components/layouts/plyr/icons/plyr-play.js +0 -1
  164. package/src/components/layouts/plyr/icons/plyr-restart.js +0 -1
  165. package/src/components/layouts/plyr/icons/plyr-rewind.js +0 -1
  166. package/src/components/layouts/plyr/icons/plyr-settings.js +0 -1
  167. package/src/components/layouts/plyr/icons/plyr-volume.js +0 -1
  168. package/src/components/layouts/plyr/icons.tsx +0 -71
  169. package/src/components/layouts/plyr/index.ts +0 -11
  170. package/src/components/layouts/plyr/layout.tsx +0 -1024
  171. package/src/components/layouts/plyr/props.ts +0 -104
  172. package/src/components/layouts/plyr/slots.tsx +0 -52
  173. package/src/components/layouts/remotion-ui.ts +0 -13
  174. package/src/components/layouts/utils.ts +0 -17
  175. package/src/components/player-callbacks.ts +0 -67
  176. package/src/components/player.tsx +0 -67
  177. package/src/components/primitives/instances.ts +0 -92
  178. package/src/components/primitives/nodes.tsx +0 -58
  179. package/src/components/primitives/slot.tsx +0 -132
  180. package/src/components/provider.tsx +0 -187
  181. package/src/components/text-track.tsx +0 -106
  182. package/src/components/ui/buttons/airplay-button.tsx +0 -53
  183. package/src/components/ui/buttons/caption-button.tsx +0 -55
  184. package/src/components/ui/buttons/fullscreen-button.tsx +0 -55
  185. package/src/components/ui/buttons/google-cast-button.tsx +0 -53
  186. package/src/components/ui/buttons/live-button.tsx +0 -56
  187. package/src/components/ui/buttons/mute-button.tsx +0 -60
  188. package/src/components/ui/buttons/pip-button.tsx +0 -54
  189. package/src/components/ui/buttons/play-button.tsx +0 -53
  190. package/src/components/ui/buttons/seek-button.tsx +0 -55
  191. package/src/components/ui/buttons/toggle-button.tsx +0 -51
  192. package/src/components/ui/caption.tsx +0 -70
  193. package/src/components/ui/captions.tsx +0 -41
  194. package/src/components/ui/chapter-title.tsx +0 -40
  195. package/src/components/ui/controls.tsx +0 -90
  196. package/src/components/ui/gesture.tsx +0 -43
  197. package/src/components/ui/menu.tsx +0 -251
  198. package/src/components/ui/poster.tsx +0 -101
  199. package/src/components/ui/radio-group.tsx +0 -88
  200. package/src/components/ui/sliders/audio-gain-slider.tsx +0 -55
  201. package/src/components/ui/sliders/quality-slider.tsx +0 -54
  202. package/src/components/ui/sliders/slider-callbacks.ts +0 -14
  203. package/src/components/ui/sliders/slider-value.tsx +0 -13
  204. package/src/components/ui/sliders/slider.tsx +0 -254
  205. package/src/components/ui/sliders/speed-slider.tsx +0 -54
  206. package/src/components/ui/sliders/time-slider.tsx +0 -379
  207. package/src/components/ui/sliders/volume-slider.tsx +0 -55
  208. package/src/components/ui/spinner.tsx +0 -105
  209. package/src/components/ui/thumbnail.tsx +0 -82
  210. package/src/components/ui/time.tsx +0 -77
  211. package/src/components/ui/title.tsx +0 -32
  212. package/src/components/ui/tooltip.tsx +0 -135
  213. package/src/globals.d.ts +0 -3
  214. package/src/hooks/create-text-track.ts +0 -22
  215. package/src/hooks/options/use-audio-gain-options.ts +0 -75
  216. package/src/hooks/options/use-audio-options.ts +0 -71
  217. package/src/hooks/options/use-caption-options.ts +0 -95
  218. package/src/hooks/options/use-chapter-options.ts +0 -97
  219. package/src/hooks/options/use-playback-rate-options.ts +0 -75
  220. package/src/hooks/options/use-video-quality-options.ts +0 -123
  221. package/src/hooks/use-active-text-cues.ts +0 -28
  222. package/src/hooks/use-active-text-track.ts +0 -19
  223. package/src/hooks/use-chapter-title.ts +0 -12
  224. package/src/hooks/use-dom.ts +0 -121
  225. package/src/hooks/use-media-context.ts +0 -6
  226. package/src/hooks/use-media-player.ts +0 -19
  227. package/src/hooks/use-media-provider.ts +0 -31
  228. package/src/hooks/use-media-remote.ts +0 -37
  229. package/src/hooks/use-media-state.ts +0 -58
  230. package/src/hooks/use-signals.ts +0 -24
  231. package/src/hooks/use-slider-preview.ts +0 -126
  232. package/src/hooks/use-slider-state.ts +0 -63
  233. package/src/hooks/use-state.ts +0 -47
  234. package/src/hooks/use-text-cues.ts +0 -33
  235. package/src/hooks/use-thumbnails.ts +0 -69
  236. package/src/icon.ts +0 -37
  237. package/src/icons.ts +0 -754
  238. package/src/index.ts +0 -181
  239. package/src/providers/remotion/index.ts +0 -10
  240. package/src/providers/remotion/layout-engine.ts +0 -123
  241. package/src/providers/remotion/loader.ts +0 -35
  242. package/src/providers/remotion/playback-engine.ts +0 -142
  243. package/src/providers/remotion/provider.tsx +0 -514
  244. package/src/providers/remotion/type-check.ts +0 -13
  245. package/src/providers/remotion/types.ts +0 -94
  246. package/src/providers/remotion/ui/context.tsx +0 -120
  247. package/src/providers/remotion/ui/error-boundary.tsx +0 -57
  248. package/src/providers/remotion/ui/poster.tsx +0 -33
  249. package/src/providers/remotion/ui/slider-thumbnail.tsx +0 -41
  250. package/src/providers/remotion/ui/thumbnail.tsx +0 -166
  251. package/src/providers/remotion/validate.ts +0 -220
  252. package/src/source.ts +0 -5
  253. package/src/utils.ts +0 -27
  254. package/tsconfig.build.json +0 -10
  255. package/tsconfig.json +0 -11
  256. package/types/react/src/components/announcer.d.ts +0 -16
  257. package/types/react/src/components/layouts/default/audio-layout.d.ts +0 -27
  258. package/types/react/src/components/layouts/default/context.d.ts +0 -14
  259. package/types/react/src/components/layouts/default/hooks.d.ts +0 -2
  260. package/types/react/src/components/layouts/default/icons.d.ts +0 -95
  261. package/types/react/src/components/layouts/default/index.d.ts +0 -5
  262. package/types/react/src/components/layouts/default/media-layout.d.ts +0 -133
  263. package/types/react/src/components/layouts/default/slots.d.ts +0 -22
  264. package/types/react/src/components/layouts/default/ui/announcer.d.ts +0 -6
  265. package/types/react/src/components/layouts/default/ui/buttons.d.ts +0 -54
  266. package/types/react/src/components/layouts/default/ui/captions.d.ts +0 -6
  267. package/types/react/src/components/layouts/default/ui/controls.d.ts +0 -6
  268. package/types/react/src/components/layouts/default/ui/keyboard-display.d.ts +0 -8
  269. package/types/react/src/components/layouts/default/ui/menus/accessibility-menu.d.ts +0 -10
  270. package/types/react/src/components/layouts/default/ui/menus/audio-menu.d.ts +0 -10
  271. package/types/react/src/components/layouts/default/ui/menus/captions-menu.d.ts +0 -10
  272. package/types/react/src/components/layouts/default/ui/menus/chapters-menu.d.ts +0 -7
  273. package/types/react/src/components/layouts/default/ui/menus/font-menu.d.ts +0 -6
  274. package/types/react/src/components/layouts/default/ui/menus/items/menu-checkbox.d.ts +0 -13
  275. package/types/react/src/components/layouts/default/ui/menus/items/menu-items.d.ts +0 -49
  276. package/types/react/src/components/layouts/default/ui/menus/items/menu-slider.d.ts +0 -26
  277. package/types/react/src/components/layouts/default/ui/menus/playback-menu.d.ts +0 -10
  278. package/types/react/src/components/layouts/default/ui/menus/settings-menu.d.ts +0 -15
  279. package/types/react/src/components/layouts/default/ui/menus/utils.d.ts +0 -1
  280. package/types/react/src/components/layouts/default/ui/sliders.d.ts +0 -24
  281. package/types/react/src/components/layouts/default/ui/time.d.ts +0 -30
  282. package/types/react/src/components/layouts/default/ui/title.d.ts +0 -6
  283. package/types/react/src/components/layouts/default/ui/tooltip.d.ts +0 -12
  284. package/types/react/src/components/layouts/default/ui.d.ts +0 -8
  285. package/types/react/src/components/layouts/default/video-layout.d.ts +0 -47
  286. package/types/react/src/components/layouts/plyr/context.d.ts +0 -12
  287. package/types/react/src/components/layouts/plyr/icons/plyr-airplay.d.ts +0 -2
  288. package/types/react/src/components/layouts/plyr/icons/plyr-captions-off.d.ts +0 -2
  289. package/types/react/src/components/layouts/plyr/icons/plyr-captions-on.d.ts +0 -2
  290. package/types/react/src/components/layouts/plyr/icons/plyr-download.d.ts +0 -2
  291. package/types/react/src/components/layouts/plyr/icons/plyr-enter-fullscreen.d.ts +0 -2
  292. package/types/react/src/components/layouts/plyr/icons/plyr-exit-fullscreen.d.ts +0 -2
  293. package/types/react/src/components/layouts/plyr/icons/plyr-fast-forward.d.ts +0 -2
  294. package/types/react/src/components/layouts/plyr/icons/plyr-muted.d.ts +0 -2
  295. package/types/react/src/components/layouts/plyr/icons/plyr-pause.d.ts +0 -2
  296. package/types/react/src/components/layouts/plyr/icons/plyr-pip.d.ts +0 -2
  297. package/types/react/src/components/layouts/plyr/icons/plyr-play.d.ts +0 -2
  298. package/types/react/src/components/layouts/plyr/icons/plyr-restart.d.ts +0 -2
  299. package/types/react/src/components/layouts/plyr/icons/plyr-rewind.d.ts +0 -2
  300. package/types/react/src/components/layouts/plyr/icons/plyr-settings.d.ts +0 -2
  301. package/types/react/src/components/layouts/plyr/icons/plyr-volume.d.ts +0 -2
  302. package/types/react/src/components/layouts/plyr/icons.d.ts +0 -25
  303. package/types/react/src/components/layouts/plyr/index.d.ts +0 -6
  304. package/types/react/src/components/layouts/plyr/layout.d.ts +0 -17
  305. package/types/react/src/components/layouts/plyr/props.d.ts +0 -71
  306. package/types/react/src/components/layouts/plyr/slots.d.ts +0 -9
  307. package/types/react/src/components/layouts/remotion-ui.d.ts +0 -3
  308. package/types/react/src/components/layouts/utils.d.ts +0 -1
  309. package/types/react/src/components/player-callbacks.d.ts +0 -6
  310. package/types/react/src/components/player.d.ts +0 -32
  311. package/types/react/src/components/primitives/instances.d.ts +0 -83
  312. package/types/react/src/components/primitives/nodes.d.ts +0 -15
  313. package/types/react/src/components/primitives/slot.d.ts +0 -11
  314. package/types/react/src/components/provider.d.ts +0 -26
  315. package/types/react/src/components/text-track.d.ts +0 -100
  316. package/types/react/src/components/ui/buttons/airplay-button.d.ts +0 -22
  317. package/types/react/src/components/ui/buttons/caption-button.d.ts +0 -24
  318. package/types/react/src/components/ui/buttons/fullscreen-button.d.ts +0 -24
  319. package/types/react/src/components/ui/buttons/google-cast-button.d.ts +0 -22
  320. package/types/react/src/components/ui/buttons/live-button.d.ts +0 -26
  321. package/types/react/src/components/ui/buttons/mute-button.d.ts +0 -30
  322. package/types/react/src/components/ui/buttons/pip-button.d.ts +0 -24
  323. package/types/react/src/components/ui/buttons/play-button.d.ts +0 -23
  324. package/types/react/src/components/ui/buttons/seek-button.d.ts +0 -25
  325. package/types/react/src/components/ui/buttons/toggle-button.d.ts +0 -22
  326. package/types/react/src/components/ui/caption.d.ts +0 -11
  327. package/types/react/src/components/ui/captions.d.ts +0 -20
  328. package/types/react/src/components/ui/chapter-title.d.ts +0 -20
  329. package/types/react/src/components/ui/controls.d.ts +0 -40
  330. package/types/react/src/components/ui/gesture.d.ts +0 -20
  331. package/types/react/src/components/ui/menu.d.ts +0 -102
  332. package/types/react/src/components/ui/poster.d.ts +0 -25
  333. package/types/react/src/components/ui/radio-group.d.ts +0 -39
  334. package/types/react/src/components/ui/sliders/audio-gain-slider.d.ts +0 -29
  335. package/types/react/src/components/ui/sliders/quality-slider.d.ts +0 -28
  336. package/types/react/src/components/ui/sliders/slider-callbacks.d.ts +0 -6
  337. package/types/react/src/components/ui/sliders/slider-value.d.ts +0 -9
  338. package/types/react/src/components/ui/sliders/slider.d.ts +0 -134
  339. package/types/react/src/components/ui/sliders/speed-slider.d.ts +0 -28
  340. package/types/react/src/components/ui/sliders/time-slider.d.ts +0 -124
  341. package/types/react/src/components/ui/sliders/volume-slider.d.ts +0 -29
  342. package/types/react/src/components/ui/spinner.d.ts +0 -31
  343. package/types/react/src/components/ui/thumbnail.d.ts +0 -26
  344. package/types/react/src/components/ui/time.d.ts +0 -20
  345. package/types/react/src/components/ui/title.d.ts +0 -15
  346. package/types/react/src/components/ui/tooltip.d.ts +0 -63
  347. package/types/react/src/hooks/create-text-track.d.ts +0 -7
  348. package/types/react/src/hooks/options/use-audio-gain-options.d.ts +0 -22
  349. package/types/react/src/hooks/options/use-audio-options.d.ts +0 -17
  350. package/types/react/src/hooks/options/use-caption-options.d.ts +0 -24
  351. package/types/react/src/hooks/options/use-chapter-options.d.ts +0 -18
  352. package/types/react/src/hooks/options/use-playback-rate-options.d.ts +0 -22
  353. package/types/react/src/hooks/options/use-video-quality-options.d.ts +0 -35
  354. package/types/react/src/hooks/use-active-text-cues.d.ts +0 -6
  355. package/types/react/src/hooks/use-active-text-track.d.ts +0 -5
  356. package/types/react/src/hooks/use-chapter-title.d.ts +0 -4
  357. package/types/react/src/hooks/use-dom.d.ts +0 -9
  358. package/types/react/src/hooks/use-media-context.d.ts +0 -1
  359. package/types/react/src/hooks/use-media-player.d.ts +0 -7
  360. package/types/react/src/hooks/use-media-provider.d.ts +0 -7
  361. package/types/react/src/hooks/use-media-remote.d.ts +0 -12
  362. package/types/react/src/hooks/use-media-state.d.ts +0 -15
  363. package/types/react/src/hooks/use-signals.d.ts +0 -5
  364. package/types/react/src/hooks/use-slider-preview.d.ts +0 -27
  365. package/types/react/src/hooks/use-slider-state.d.ts +0 -16
  366. package/types/react/src/hooks/use-state.d.ts +0 -18
  367. package/types/react/src/hooks/use-text-cues.d.ts +0 -6
  368. package/types/react/src/hooks/use-thumbnails.d.ts +0 -16
  369. package/types/react/src/icon.d.ts +0 -17
  370. package/types/react/src/icons.d.ts +0 -215
  371. package/types/react/src/index.d.ts +0 -78
  372. package/types/react/src/providers/remotion/index.d.ts +0 -7
  373. package/types/react/src/providers/remotion/layout-engine.d.ts +0 -8
  374. package/types/react/src/providers/remotion/loader.d.ts +0 -9
  375. package/types/react/src/providers/remotion/playback-engine.d.ts +0 -11
  376. package/types/react/src/providers/remotion/provider.d.ts +0 -26
  377. package/types/react/src/providers/remotion/type-check.d.ts +0 -6
  378. package/types/react/src/providers/remotion/types.d.ts +0 -91
  379. package/types/react/src/providers/remotion/ui/context.d.ts +0 -17
  380. package/types/react/src/providers/remotion/ui/error-boundary.d.ts +0 -21
  381. package/types/react/src/providers/remotion/ui/poster.d.ts +0 -18
  382. package/types/react/src/providers/remotion/ui/slider-thumbnail.d.ts +0 -17
  383. package/types/react/src/providers/remotion/ui/thumbnail.d.ts +0 -32
  384. package/types/react/src/providers/remotion/validate.d.ts +0 -12
  385. package/types/react/src/source.d.ts +0 -3
  386. package/types/react/src/utils.d.ts +0 -3
  387. package/types/vidstack/src/core/api/src-types.d.ts +0 -50
  388. package/types/vidstack/src/utils/mime.d.ts +0 -15
  389. package/types/vidstack/src/utils/network.d.ts +0 -17
  390. package/types/vidstack/src/utils/support.d.ts +0 -72
  391. package/vite.config.ts +0 -23
  392. /package/{npm/analyze.json.d.ts → analyze.json.d.ts} +0 -0
@@ -0,0 +1,1422 @@
1
+ interface Window {
2
+ cast?: typeof cast;
3
+ __onGCastApiAvailable?(available: boolean, reason?: string): void;
4
+ }
5
+
6
+ declare namespace chrome.cast {
7
+ /**
8
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.AutoJoinPolicy
9
+ */
10
+ export enum AutoJoinPolicy {
11
+ CUSTOM_CONTROLLER_SCOPED = 'custom_controller_scoped',
12
+ TAB_AND_ORIGIN_SCOPED = 'tab_and_origin_scoped',
13
+ ORIGIN_SCOPED = 'origin_scoped',
14
+ PAGE_SCOPED = 'page_scoped',
15
+ }
16
+
17
+ /**
18
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.DefaultActionPolicy
19
+ */
20
+ export enum DefaultActionPolicy {
21
+ CREATE_SESSION = 'create_session',
22
+ CAST_THIS_TAB = 'cast_this_tab',
23
+ }
24
+
25
+ /**
26
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.Capability
27
+ */
28
+ export enum Capability {
29
+ VIDEO_OUT = 'video_out',
30
+ AUDIO_OUT = 'audio_out',
31
+ VIDEO_IN = 'video_in',
32
+ AUDIO_IN = 'audio_in',
33
+ MULTIZONE_GROUP = 'multizone_group',
34
+ }
35
+
36
+ /**
37
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.ErrorCode
38
+ */
39
+ export enum ErrorCode {
40
+ CANCEL = 'cancel',
41
+ TIMEOUT = 'timeout',
42
+ API_NOT_INITIALIZED = 'api_not_initialized',
43
+ INVALID_PARAMETER = 'invalid_parameter',
44
+ EXTENSION_NOT_COMPATIBLE = 'extension_not_compatible',
45
+ EXTENSION_MISSING = 'extension_missing',
46
+ RECEIVER_UNAVAILABLE = 'receiver_unavailable',
47
+ SESSION_ERROR = 'session_error',
48
+ CHANNEL_ERROR = 'channel_error',
49
+ LOAD_MEDIA_FAILED = 'load_media_failed',
50
+ }
51
+
52
+ /**
53
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.ReceiverAvailability
54
+ */
55
+ export enum ReceiverAvailability {
56
+ AVAILABLE = 'available',
57
+ UNAVAILABLE = 'unavailable',
58
+ }
59
+
60
+ /**
61
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.SenderPlatform
62
+ */
63
+ export enum SenderPlatform {
64
+ CHROME = 'chrome',
65
+ IOS = 'ios',
66
+ ANDROID = 'android',
67
+ }
68
+
69
+ /**
70
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.ReceiverType
71
+ */
72
+ export enum ReceiverType {
73
+ CAST = 'cast',
74
+ DIAL = 'dial',
75
+ HANGOUT = 'hangout',
76
+ CUSTOM = 'custom',
77
+ }
78
+
79
+ /**
80
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.ReceiverAction
81
+ */
82
+ export enum ReceiverAction {
83
+ CAST = 'cast',
84
+ STOP = 'stop',
85
+ }
86
+
87
+ /**
88
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.SessionStatus
89
+ */
90
+ export enum SessionStatus {
91
+ CONNECTED = 'connected',
92
+ DISCONNECTED = 'disconnected',
93
+ STOPPED = 'stopped',
94
+ }
95
+
96
+ /**
97
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.VERSION
98
+ */
99
+ export var VERSION: number[];
100
+
101
+ /**
102
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.isAvailable
103
+ */
104
+ export var isAvailable: boolean;
105
+
106
+ /**
107
+ * @param apiConfig
108
+ * @param successCallback
109
+ * @param errorCallback
110
+ */
111
+ export function initialize(
112
+ apiConfig: chrome.cast.ApiConfig,
113
+ successCallback: Function,
114
+ errorCallback: (error: chrome.cast.Error) => void,
115
+ ): void;
116
+
117
+ /**
118
+ * @param successCallback
119
+ * @param errorCallback
120
+ * @param opt_sessionRequest
121
+ * @param opt_label
122
+ */
123
+ export function requestSession(
124
+ successCallback: (session: chrome.cast.Session) => void,
125
+ errorCallback: (error: chrome.cast.Error) => void,
126
+ sessionRequest?: chrome.cast.SessionRequest,
127
+ label?: string,
128
+ ): void;
129
+
130
+ /**
131
+ * @param sessionId The id of the session to join.
132
+ */
133
+ export function requestSessionById(sessionId: string): void;
134
+
135
+ /**
136
+ * @param listener
137
+ */
138
+ export function addReceiverActionListener(
139
+ listener: (receiver: chrome.cast.Receiver, receiverAction: chrome.cast.ReceiverAction) => void,
140
+ ): void;
141
+
142
+ /**
143
+ * @param listener
144
+ */
145
+ export function removeReceiverActionListener(
146
+ listener: (receiver: chrome.cast.Receiver, receiverAction: chrome.cast.ReceiverAction) => void,
147
+ ): void;
148
+
149
+ /**
150
+ * @param message The message to log.
151
+ */
152
+ export function logMessage(message: string): void;
153
+
154
+ /**
155
+ * @param receivers
156
+ * @param successCallback
157
+ * @param errorCallback
158
+ */
159
+ export function setCustomReceivers(
160
+ receivers: chrome.cast.Receiver[],
161
+ successCallback: Function,
162
+ errorCallback: (error: chrome.cast.Error) => void,
163
+ ): void;
164
+
165
+ /**
166
+ * @param receiver
167
+ * @param successCallback
168
+ * @param errorCallback
169
+ */
170
+ export function setReceiverDisplayStatus(
171
+ receiver: chrome.cast.Receiver,
172
+ successCallback: Function,
173
+ errorCallback: (error: chrome.cast.Error) => void,
174
+ ): void;
175
+
176
+ /**
177
+ * @param escaped A string to unescape.
178
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast#.unescape
179
+ */
180
+ export function unescape(escaped: string): string;
181
+
182
+ export class ApiConfig {
183
+ /**
184
+ * @param sessionRequest
185
+ * @param sessionListener
186
+ * @param receiverListener
187
+ * @param opt_autoJoinPolicy
188
+ * @param opt_defaultActionPolicy
189
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.ApiConfig
190
+ */
191
+ constructor(
192
+ sessionRequest: chrome.cast.SessionRequest,
193
+ sessionListener: (session: chrome.cast.Session) => void,
194
+ receiverListener: (receiverAvailability: chrome.cast.ReceiverAvailability) => void,
195
+ autoJoinPolicy?: chrome.cast.AutoJoinPolicy,
196
+ defaultActionPolicy?: chrome.cast.DefaultActionPolicy,
197
+ );
198
+
199
+ sessionRequest: chrome.cast.SessionRequest;
200
+ sessionListener: (session: chrome.cast.Session) => void;
201
+ receiverListener: (receiverAvailability: chrome.cast.ReceiverAvailability) => void;
202
+ autoJoinPolicy: chrome.cast.AutoJoinPolicy;
203
+ defaultActionPolicy: chrome.cast.DefaultActionPolicy;
204
+ }
205
+
206
+ export class Error {
207
+ /**
208
+ * @param code
209
+ * @param opt_description
210
+ * @param opt_details
211
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.Error
212
+ */
213
+ constructor(code: chrome.cast.ErrorCode, description?: string, details?: Object);
214
+
215
+ code: chrome.cast.ErrorCode;
216
+ description: string | null;
217
+ details: object;
218
+ }
219
+
220
+ export class Image {
221
+ /**
222
+ * @param url
223
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.Image
224
+ */
225
+ constructor(url: string);
226
+
227
+ url: string;
228
+ height: number | null;
229
+ width: number | null;
230
+ }
231
+
232
+ export class SenderApplication {
233
+ /**
234
+ * @param platform
235
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.SenderApplication
236
+ */
237
+ constructor(platform: chrome.cast.SenderPlatform);
238
+
239
+ platform: chrome.cast.SenderPlatform;
240
+ url: string | null;
241
+ packageId: string | null;
242
+ }
243
+
244
+ export class SessionRequest {
245
+ /**
246
+ * @param appId
247
+ * @param opt_capabilities
248
+ * @param opt_timeout
249
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.SessionRequest
250
+ */
251
+ constructor(appId: string, capabilities?: chrome.cast.Capability[], timeout?: number);
252
+
253
+ appId: string;
254
+ capabilities: chrome.cast.Capability[];
255
+ requestSessionTimeout: number;
256
+ language: string | null;
257
+ }
258
+
259
+ export class Session {
260
+ /**
261
+ * @param sessionId
262
+ * @param appId
263
+ * @param displayName
264
+ * @param appImages
265
+ * @param receiver
266
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.Session
267
+ */
268
+ constructor(
269
+ sessionId: string,
270
+ appId: string,
271
+ displayName: string,
272
+ appImages: chrome.cast.Image[],
273
+ receiver: chrome.cast.Receiver,
274
+ );
275
+
276
+ sessionId: string;
277
+ appId: string;
278
+ displayName: string;
279
+ appImages: chrome.cast.Image[];
280
+ receiver: chrome.cast.Receiver;
281
+ senderApps: chrome.cast.SenderApplication[];
282
+ namespaces: Array<{ name: string }>;
283
+ media: chrome.cast.media.Media[];
284
+ status: chrome.cast.SessionStatus;
285
+ statusText: string | null;
286
+ transportId: string;
287
+
288
+ /**
289
+ * @param newLevel
290
+ * @param successCallback
291
+ * @param errorCallback
292
+ */
293
+ setReceiverVolumeLevel(
294
+ newLevel: number,
295
+ successCallback: Function,
296
+ errorCallback: (error: chrome.cast.Error) => void,
297
+ ): void;
298
+
299
+ /**
300
+ * @param muted
301
+ * @param successCallback
302
+ * @param errorCallback
303
+ */
304
+ setReceiverMuted(
305
+ muted: boolean,
306
+ successCallback: Function,
307
+ errorCallback: (error: chrome.cast.Error) => void,
308
+ ): void;
309
+
310
+ /**
311
+ * @param successCallback
312
+ * @param errorCallback
313
+ */
314
+ leave(successCallback: Function, errorCallback: (error: chrome.cast.Error) => void): void;
315
+
316
+ /**
317
+ * @param successCallback
318
+ * @param errorCallback
319
+ */
320
+ stop(successCallback: Function, errorCallback: (error: chrome.cast.Error) => void): void;
321
+
322
+ /**
323
+ * @param namespace
324
+ * @param message
325
+ * @param successCallback
326
+ * @param errorCallback
327
+ */
328
+ sendMessage(
329
+ namespace: string,
330
+ message: string | object,
331
+ successCallback: Function,
332
+ errorCallback: (error: chrome.cast.Error) => void,
333
+ ): void;
334
+
335
+ /**
336
+ * @param listener
337
+ */
338
+ addUpdateListener(listener: (isAlive: boolean) => void): void;
339
+
340
+ /**
341
+ * @param listener
342
+ */
343
+ removeUpdateListener(listener: (isAlive: boolean) => void): void;
344
+
345
+ /**
346
+ * @param namespace
347
+ * @param listener
348
+ */
349
+ addMessageListener(
350
+ namespace: string,
351
+ listener: (namespace: string, message: string) => void,
352
+ ): void;
353
+
354
+ /**
355
+ * @param namespace
356
+ * @param listener
357
+ */
358
+ removeMessageListener(
359
+ namespace: string,
360
+ listener: (namespace: string, message: string) => void,
361
+ ): void;
362
+
363
+ /**
364
+ * @param listener
365
+ */
366
+ addMediaListener(listener: (media: chrome.cast.media.Media) => void): void;
367
+
368
+ /**
369
+ * @param listener
370
+ */
371
+ removeMediaListener(listener: (media: chrome.cast.media.Media) => void): void;
372
+
373
+ /**
374
+ * @param loadRequest
375
+ * @param successCallback
376
+ * @param errorCallback
377
+ */
378
+ loadMedia(
379
+ loadRequest: chrome.cast.media.LoadRequest,
380
+ successCallback: (media: chrome.cast.media.Media) => void,
381
+ errorCallback: (error: chrome.cast.Error) => void,
382
+ ): void;
383
+
384
+ /**
385
+ * @param queueLoadRequest
386
+ * @param successCallback
387
+ * @param errorCallback
388
+ */
389
+ queueLoad(
390
+ queueLoadRequest: chrome.cast.media.QueueLoadRequest,
391
+ successCallback: (media: chrome.cast.media.Media) => void,
392
+ errorCallback: (error: chrome.cast.Error) => void,
393
+ ): void;
394
+ }
395
+
396
+ export class Receiver {
397
+ /**
398
+ * @param label
399
+ * @param friendlyName
400
+ * @param opt_capabilities
401
+ * @param opt_volume
402
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.Receiver
403
+ */
404
+ constructor(
405
+ label: string,
406
+ friendlyName: string,
407
+ capabilities?: chrome.cast.Capability[],
408
+ volume?: chrome.cast.Volume,
409
+ );
410
+
411
+ label: string;
412
+ friendlyName: string;
413
+ capabilities: chrome.cast.Capability[];
414
+ volume: chrome.cast.Volume;
415
+ receiverType: chrome.cast.ReceiverType;
416
+ displayStatus: chrome.cast.ReceiverDisplayStatus;
417
+ }
418
+
419
+ export class ReceiverDisplayStatus {
420
+ /**
421
+ * @param statusText
422
+ * @param appImages
423
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.ReceiverDisplayStatus
424
+ */
425
+ constructor(statusText: string, appImages: chrome.cast.Image[]);
426
+
427
+ statusText: string;
428
+ appImages: chrome.cast.Image[];
429
+ }
430
+
431
+ export class Volume {
432
+ /**
433
+ * @param opt_level
434
+ * @param opt_muted
435
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.Volume
436
+ */
437
+ constructor(level?: number, muted?: boolean);
438
+
439
+ level: number | null;
440
+ muted: boolean | null;
441
+ }
442
+ }
443
+
444
+ declare namespace chrome.cast.media {
445
+ export var DEFAULT_MEDIA_RECEIVER_APP_ID: string;
446
+
447
+ /**
448
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.MediaCommand
449
+ */
450
+ export enum MediaCommand {
451
+ PAUSE = 'pause',
452
+ SEEK = 'seek',
453
+ STREAM_VOLUME = 'stream_volume',
454
+ STREAM_MUTE = 'stream_mute',
455
+ }
456
+
457
+ /**
458
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.MetadataType
459
+ */
460
+ export enum MetadataType {
461
+ GENERIC,
462
+ TV_SHOW,
463
+ MOVIE,
464
+ MUSIC_TRACK,
465
+ PHOTO,
466
+ }
467
+
468
+ /**
469
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.PlayerState
470
+ */
471
+ export enum PlayerState {
472
+ IDLE = 'IDLE',
473
+ PLAYING = 'PLAYING',
474
+ PAUSED = 'PAUSED',
475
+ BUFFERING = 'BUFFERING',
476
+ }
477
+
478
+ /**
479
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.ResumeState
480
+ */
481
+ export enum ResumeState {
482
+ PLAYBACK_START = 'PLAYBACK_START',
483
+ PLAYBACK_PAUSE = 'PLAYBACK_PAUSE',
484
+ }
485
+
486
+ /**
487
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.StreamType
488
+ */
489
+ export enum StreamType {
490
+ BUFFERED = 'BUFFERED',
491
+ LIVE = 'LIVE',
492
+ OTHER = 'OTHER',
493
+ }
494
+
495
+ /**
496
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.IdleReason
497
+ */
498
+ export enum IdleReason {
499
+ CANCELLED = 'CANCELLED',
500
+ INTERRUPTED = 'INTERRUPTED',
501
+ FINISHED = 'FINISHED',
502
+ ERROR = 'ERROR',
503
+ }
504
+
505
+ /**
506
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.RepeatMode
507
+ */
508
+ export enum RepeatMode {
509
+ OFF = 'REPEAT_OFF',
510
+ ALL = 'REPEAT_ALL',
511
+ SINGLE = 'REPEAT_SINGLE',
512
+ ALL_AND_SHUFFLE = 'REPEAT_ALL_AND_SHUFFLE',
513
+ }
514
+
515
+ export class QueueItem {
516
+ /**
517
+ * @param mediaInfo
518
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.QueueItem
519
+ */
520
+ constructor(mediaInfo: chrome.cast.media.MediaInfo);
521
+
522
+ activeTrackIds: Number[];
523
+ autoplay: boolean;
524
+ customData: Object;
525
+ itemId: number;
526
+ media: chrome.cast.media.MediaInfo;
527
+ preloadTime: number;
528
+ startTime: number;
529
+ }
530
+
531
+ export class QueueLoadRequest {
532
+ /**
533
+ * @param items
534
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.QueueLoadRequest
535
+ */
536
+ constructor(items: chrome.cast.media.QueueItem[]);
537
+
538
+ customData: Object;
539
+ items: chrome.cast.media.QueueItem[];
540
+ repeatMode: chrome.cast.media.RepeatMode;
541
+ startIndex: number;
542
+ }
543
+
544
+ export class QueueInsertItemsRequest {
545
+ /**
546
+ * @param itemsToInsert
547
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.QueueInsertItemsRequest
548
+ */
549
+ constructor(itemsToInsert: chrome.cast.media.QueueItem[]);
550
+
551
+ customData: Object;
552
+ insertBefore: number;
553
+ items: chrome.cast.media.QueueItem[];
554
+ }
555
+
556
+ export class QueueRemoveItemsRequest {
557
+ /**
558
+ * @param itemIdsToRemove
559
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.QueueRemoveItemsRequest
560
+ */
561
+ constructor(itemIdsToRemove: number[]);
562
+
563
+ customData: Object;
564
+ itemIds: number[];
565
+ }
566
+
567
+ export class QueueReorderItemsRequest {
568
+ /**
569
+ * @param itemIdsToReorder
570
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.QueueReorderItemsRequest
571
+ */
572
+ constructor(itemIdsToReorder: number[]);
573
+
574
+ customData: Object;
575
+ insertBefore: number;
576
+ itemIds: number[];
577
+ }
578
+
579
+ export class QueueUpdateItemsRequest {
580
+ /**
581
+ * @param itemsToUpdate
582
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.QueueUpdateItemsRequest
583
+ */
584
+ constructor(itemsToUpdate: chrome.cast.media.QueueItem[]);
585
+
586
+ customData: Object;
587
+ item: chrome.cast.media.QueueItem[];
588
+ }
589
+
590
+ /**
591
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.TrackType
592
+ */
593
+ export enum TrackType {
594
+ TEXT = 'TEXT',
595
+ AUDIO = 'AUDIO',
596
+ VIDEO = 'VIDEO',
597
+ }
598
+
599
+ /**
600
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.TextTrackType
601
+ */
602
+ export enum TextTrackType {
603
+ SUBTITLES = 'SUBTITLES',
604
+ CAPTIONS = 'CAPTIONS',
605
+ DESCRIPTIONS = 'DESCRIPTIONS',
606
+ CHAPTERS = 'CHAPTERS',
607
+ METADATA = 'METADATA',
608
+ }
609
+
610
+ /**
611
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.TextTrackEdgeType
612
+ */
613
+ export enum TextTrackEdgeType {
614
+ NONE = 'NONE',
615
+ OUTLINE = 'OUTLINE',
616
+ DROP_SHADOW = 'DROP_SHADOW',
617
+ RAISED = 'RAISED',
618
+ DEPRESSED = 'DEPRESSED',
619
+ }
620
+
621
+ /**
622
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.TextTrackWindowType
623
+ */
624
+ export enum TextTrackWindowType {
625
+ NONE = 'NONE',
626
+ NORMAL = 'NORMAL',
627
+ ROUNDED_CORNERS = 'ROUNDED_CORNERS',
628
+ }
629
+
630
+ /**
631
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.TextTrackFontGenericFamily
632
+ */
633
+ export enum TextTrackFontGenericFamily {
634
+ SANS_SERIF = 'SANS_SERIF',
635
+ MONOSPACED_SANS_SERIF = 'MONOSPACED_SANS_SERIF',
636
+ SERIF = 'SERIF',
637
+ MONOSPACED_SERIF = 'MONOSPACED_SERIF',
638
+ CASUAL = 'CASUAL',
639
+ CURSIVE = 'CURSIVE',
640
+ SMALL_CAPITALS = 'SMALL_CAPITALS',
641
+ }
642
+
643
+ /**
644
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media#.TextTrackFontStyle
645
+ */
646
+ export enum TextTrackFontStyle {
647
+ NORMAL = 'NORMAL',
648
+ BOLD = 'BOLD',
649
+ BOLD_ITALIC = 'BOLD_ITALIC',
650
+ ITALIC = 'ITALIC',
651
+ }
652
+
653
+ export class GetStatusRequest {
654
+ /**
655
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.GetStatusRequest
656
+ */
657
+ constructor();
658
+
659
+ customData: Object;
660
+ }
661
+
662
+ export class PauseRequest {
663
+ /**
664
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.PauseRequest
665
+ */
666
+ constructor();
667
+
668
+ customData: Object;
669
+ }
670
+
671
+ export class PlayRequest {
672
+ /**
673
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.PlayRequest
674
+ */
675
+ constructor();
676
+
677
+ customData: Object;
678
+ }
679
+
680
+ export class SeekRequest {
681
+ /**
682
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.SeekRequest
683
+ */
684
+ constructor();
685
+
686
+ currentTime: number;
687
+ resumeState: chrome.cast.media.ResumeState;
688
+ customData: Object;
689
+ }
690
+
691
+ export class StopRequest {
692
+ /**
693
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.StopRequest
694
+ */
695
+ constructor();
696
+
697
+ customData: Object;
698
+ }
699
+
700
+ export class VolumeRequest {
701
+ /**
702
+ * @param volume
703
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.VolumeRequest
704
+ */
705
+ constructor(volume: chrome.cast.Volume);
706
+
707
+ volume: chrome.cast.Volume;
708
+ customData: Object;
709
+ }
710
+
711
+ export class LoadRequest {
712
+ /**
713
+ * @param mediaInfo
714
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.LoadRequest
715
+ */
716
+ constructor(mediaInfo: chrome.cast.media.MediaInfo);
717
+
718
+ activeTrackIds: number[];
719
+ autoplay: boolean;
720
+ currentTime: number;
721
+ customData: Object;
722
+ media: chrome.cast.media.MediaInfo;
723
+ playbackRate?: number | undefined;
724
+ }
725
+
726
+ export class EditTracksInfoRequest {
727
+ /**
728
+ * @param opt_activeTrackIds
729
+ * @param opt_textTrackStyle
730
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.EditTracksInfoRequest
731
+ */
732
+ constructor(activeTrackIds?: number[], textTrackStyle?: chrome.cast.media.TextTrackStyle);
733
+
734
+ activeTrackIds: number[];
735
+ textTrackStyle: chrome.cast.media.TextTrackStyle;
736
+ }
737
+
738
+ export class GenericMediaMetadata {
739
+ images: chrome.cast.Image[];
740
+ metadataType: chrome.cast.media.MetadataType;
741
+ releaseDate: string;
742
+ /** @deprecated Use releaseDate instead. */
743
+ releaseYear: number;
744
+ subtitle: string;
745
+ title: string;
746
+ /** @deprecated Use metadataType instead. */
747
+ type: chrome.cast.media.MetadataType;
748
+ }
749
+
750
+ export class MovieMediaMetadata {
751
+ /**
752
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.MovieMediaMetadata
753
+ */
754
+ constructor();
755
+
756
+ images: chrome.cast.Image[];
757
+ metadataType: chrome.cast.media.MetadataType;
758
+ releaseDate: string;
759
+ /** @deprecated Use releaseDate instead. */
760
+ releaseYear: number;
761
+ subtitle: string;
762
+ title: string;
763
+ studio: string;
764
+ /** @deprecated Use metadataType instead. */
765
+ type: chrome.cast.media.MetadataType;
766
+ }
767
+
768
+ export class TvShowMediaMetadata {
769
+ /**
770
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.TvShowMediaMetadata
771
+ */
772
+ constructor();
773
+
774
+ metadataType: chrome.cast.media.MetadataType;
775
+ seriesTitle: string;
776
+ title: string;
777
+ season: number;
778
+ episode: number;
779
+ images: chrome.cast.Image[];
780
+ originalAirdate: string;
781
+
782
+ /** @deprecated Use metadataType instead. */
783
+ type: chrome.cast.media.MetadataType;
784
+ /** @deprecated Use title instead. */
785
+ episodeTitle: string;
786
+ /** @deprecated Use season instead. */
787
+ seasonNumber: number;
788
+ /** @deprecated Use episode instead. */
789
+ episodeNumber: number;
790
+ /** @deprecated Use originalAirdate instead. */
791
+ releaseYear: number;
792
+ }
793
+
794
+ export class MusicTrackMediaMetadata {
795
+ /**
796
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.MusicTrackMediaMetadata
797
+ */
798
+ constructor();
799
+
800
+ metadataType: chrome.cast.media.MetadataType;
801
+ albumName: string;
802
+ title: string;
803
+ albumArtist: string;
804
+ artist: string;
805
+ composer: string;
806
+ songName: string;
807
+ trackNumber: number;
808
+ discNumber: number;
809
+ images: chrome.cast.Image[];
810
+ releaseDate: string;
811
+
812
+ /** @deprecated Use metadataType instead. */
813
+ type: chrome.cast.media.MetadataType;
814
+ /** @deprecated Use artist instead. */
815
+ artistName: string;
816
+ /** @deprecated Use releaseDate instead. */
817
+ releaseYear: number;
818
+ }
819
+
820
+ export class PhotoMediaMetadata {
821
+ /**
822
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.PhotoMediaMetadata
823
+ */
824
+ constructor();
825
+
826
+ metadataType: chrome.cast.media.MetadataType;
827
+ title: string;
828
+ artist: string;
829
+ location: string;
830
+ images: chrome.cast.Image[];
831
+ latitude: number;
832
+ longitude: number;
833
+ width: number;
834
+ height: number;
835
+ creationDateTime: string;
836
+
837
+ /** @deprecated Use metadataType instead. */
838
+ type: chrome.cast.media.MetadataType;
839
+ }
840
+
841
+ export class MediaInfo {
842
+ /**
843
+ * @param contentId
844
+ * @param contentType
845
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.MediaInfo
846
+ */
847
+ constructor(contentId: string, contentType: string);
848
+
849
+ contentId: string;
850
+ streamType: chrome.cast.media.StreamType;
851
+ contentType: string;
852
+ metadata: any;
853
+ duration: number;
854
+ tracks: chrome.cast.media.Track[];
855
+ textTrackStyle: chrome.cast.media.TextTrackStyle;
856
+ customData: Object;
857
+ }
858
+
859
+ export class Media {
860
+ /**
861
+ * @param sessionId
862
+ * @param mediaSessionId
863
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.Media
864
+ */
865
+ constructor(sessionId: string, mediaSessionId: number);
866
+
867
+ activeTrackIds: number[];
868
+ currentItemId: number;
869
+ customData: Object;
870
+ idleReason: chrome.cast.media.IdleReason | null;
871
+ items: chrome.cast.media.QueueItem[];
872
+ liveSeekableRange?: chrome.cast.media.LiveSeekableRange | undefined;
873
+ loadingItemId: number;
874
+ media: chrome.cast.media.MediaInfo;
875
+ mediaSessionId: number;
876
+ playbackRate: number;
877
+ playerState: chrome.cast.media.PlayerState;
878
+ preloadedItemId: number;
879
+ repeatMode: chrome.cast.media.RepeatMode;
880
+ sessionId: string;
881
+ supportedMediaCommands: chrome.cast.media.MediaCommand[];
882
+ volume: chrome.cast.Volume;
883
+
884
+ /** @deprecated Use getEstimatedTime instead */
885
+ currentTime: number;
886
+
887
+ /**
888
+ * @param getStatusRequest
889
+ * @param successCallback
890
+ * @param errorCallback
891
+ */
892
+ getStatus(
893
+ getStatusRequest: chrome.cast.media.GetStatusRequest,
894
+ successCallback: Function,
895
+ errorCallback: (error: chrome.cast.Error) => void,
896
+ ): void;
897
+
898
+ /**
899
+ * @param playRequest
900
+ * @param successCallback
901
+ * @param errorCallback
902
+ */
903
+ play(
904
+ playRequest: chrome.cast.media.PlayRequest,
905
+ successCallback: Function,
906
+ errorCallback: (error: chrome.cast.Error) => void,
907
+ ): void;
908
+
909
+ /**
910
+ * @param pauseRequest
911
+ * @param successCallback
912
+ * @param errorCallback
913
+ */
914
+ pause(
915
+ pauseRequest: chrome.cast.media.PauseRequest,
916
+ successCallback: Function,
917
+ errorCallback: (error: chrome.cast.Error) => void,
918
+ ): void;
919
+
920
+ /**
921
+ * @param seekRequest
922
+ * @param successCallback
923
+ * @param errorCallback
924
+ */
925
+ seek(
926
+ seekRequest: chrome.cast.media.SeekRequest,
927
+ successCallback: Function,
928
+ errorCallback: (error: chrome.cast.Error) => void,
929
+ ): void;
930
+
931
+ /**
932
+ * @param stopRequest
933
+ * @param successCallback
934
+ * @param errorCallback
935
+ */
936
+ stop(
937
+ stopRequest: chrome.cast.media.StopRequest,
938
+ successCallback: Function,
939
+ errorCallback: (error: chrome.cast.Error) => void,
940
+ ): void;
941
+
942
+ /**
943
+ * @param volumeRequest
944
+ * @param successCallback
945
+ * @param errorCallback
946
+ */
947
+ setVolume(
948
+ volumeRequest: chrome.cast.media.VolumeRequest,
949
+ successCallback: Function,
950
+ errorCallback: (error: chrome.cast.Error) => void,
951
+ ): void;
952
+
953
+ /**
954
+ * @param editTracksInfoRequest
955
+ * @param successCallback
956
+ * @param errorCallback
957
+ */
958
+ editTracksInfo(
959
+ editTracksInfoRequest: chrome.cast.media.EditTracksInfoRequest,
960
+ successCallback: Function,
961
+ errorCallback: (error: chrome.cast.Error) => void,
962
+ ): void;
963
+
964
+ /**
965
+ * @param command
966
+ * @return whether or not the receiver supports the given chrome.cast.media.MediaCommand
967
+ */
968
+ supportsCommand(command: chrome.cast.media.MediaCommand): boolean;
969
+
970
+ /**
971
+ * @param listener
972
+ */
973
+ addUpdateListener(listener: (isAlive: boolean) => void): void;
974
+
975
+ /**
976
+ * @param listener
977
+ */
978
+ removeUpdateListener(listener: (isAlive: boolean) => void): void;
979
+
980
+ /**
981
+ * @return
982
+ * @suppress {deprecated} Uses currentTime member to compute estimated time.
983
+ */
984
+ getEstimatedTime(): number;
985
+
986
+ /**
987
+ * @param item
988
+ * @param successCallback
989
+ * @param errorCallback
990
+ */
991
+ queueAppendItem(
992
+ item: chrome.cast.media.QueueItem,
993
+ successCallback: Function,
994
+ errorCallback: (error: chrome.cast.Error) => void,
995
+ ): void;
996
+
997
+ /**
998
+ * @param queueInsertItemsRequest
999
+ * @param successCallback
1000
+ * @param errorCallback
1001
+ */
1002
+ queueInsertItems(
1003
+ queueInsertItemsRequest: chrome.cast.media.QueueInsertItemsRequest,
1004
+ successCallback: Function,
1005
+ errorCallback: (error: chrome.cast.Error) => void,
1006
+ ): void;
1007
+
1008
+ /**
1009
+ * @param itemId
1010
+ * @param successCallback
1011
+ * @param errorCallback
1012
+ */
1013
+ queueJumpToItem(
1014
+ itemId: number,
1015
+ successCallback: Function,
1016
+ errorCallback: (error: chrome.cast.Error) => void,
1017
+ ): void;
1018
+
1019
+ /**
1020
+ * @param itemId
1021
+ * @param newIndex
1022
+ * @param successCallback
1023
+ * @param errorCallback
1024
+ */
1025
+ queueMoveItemToNewIndex(
1026
+ itemId: number,
1027
+ newIndex: number,
1028
+ successCallback: Function,
1029
+ errorCallback: (error: chrome.cast.Error) => void,
1030
+ ): void;
1031
+
1032
+ /**
1033
+ * @param successCallback
1034
+ * @param errorCallback
1035
+ */
1036
+ queueNext(successCallback: Function, errorCallback: (error: chrome.cast.Error) => void): void;
1037
+
1038
+ /**
1039
+ * @param successCallback
1040
+ * @param errorCallback
1041
+ */
1042
+ queuePrev(successCallback: Function, errorCallback: (error: chrome.cast.Error) => void): void;
1043
+
1044
+ /**
1045
+ * @param itemId
1046
+ * @param successCallback
1047
+ * @param errorCallback
1048
+ */
1049
+ queueRemoveItem(
1050
+ itemId: number,
1051
+ successCallback: Function,
1052
+ errorCallback: (error: chrome.cast.Error) => void,
1053
+ ): void;
1054
+
1055
+ /**
1056
+ * @param queueReorderItemsRequest
1057
+ * @param successCallback
1058
+ * @param errorCallback
1059
+ */
1060
+ queueReorderItems(
1061
+ queueReorderItemsRequest: chrome.cast.media.QueueReorderItemsRequest,
1062
+ successCallback: Function,
1063
+ errorCallback: (error: chrome.cast.Error) => void,
1064
+ ): void;
1065
+
1066
+ /**
1067
+ * @param repeatMode
1068
+ * @param successCallback
1069
+ * @param errorCallback
1070
+ */
1071
+ queueSetRepeatMode(
1072
+ repeatMode: chrome.cast.media.RepeatMode,
1073
+ successCallback: Function,
1074
+ errorCallback: (error: chrome.cast.Error) => void,
1075
+ ): void;
1076
+
1077
+ /**
1078
+ * @param queueUpdateItemsRequest
1079
+ * @param successCallback
1080
+ * @param errorCallback
1081
+ */
1082
+ queueUpdateItems(
1083
+ queueUpdateItemsRequest: chrome.cast.media.QueueUpdateItemsRequest,
1084
+ successCallback: Function,
1085
+ errorCallback: (error: chrome.cast.Error) => void,
1086
+ ): void;
1087
+ }
1088
+
1089
+ export class Track {
1090
+ /**
1091
+ * @param trackId
1092
+ * @param trackType
1093
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.Track
1094
+ */
1095
+ constructor(trackId: number, trackType: chrome.cast.media.TrackType);
1096
+
1097
+ trackId: number;
1098
+ trackContentId: string;
1099
+ trackContentType: string;
1100
+ type: chrome.cast.media.TrackType;
1101
+ name: string;
1102
+ language: string;
1103
+ subtype: chrome.cast.media.TextTrackType;
1104
+ customData: Object;
1105
+ }
1106
+
1107
+ export class TextTrackStyle {
1108
+ /**
1109
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.TextTrackStyle
1110
+ */
1111
+ constructor();
1112
+
1113
+ foregroundColor: string;
1114
+ backgroundColor: string;
1115
+ edgeType: chrome.cast.media.TextTrackEdgeType;
1116
+ edgeColor: string;
1117
+ windowType: chrome.cast.media.TextTrackWindowType;
1118
+ windowColor: string;
1119
+ windowRoundedCornerRadius: number;
1120
+ fontScale: number;
1121
+ fontFamily: string;
1122
+ fontGenericFamily: chrome.cast.media.TextTrackFontGenericFamily;
1123
+ fontStyle: chrome.cast.media.TextTrackFontStyle;
1124
+ customData: Object;
1125
+ }
1126
+
1127
+ export class LiveSeekableRange {
1128
+ /**
1129
+ * @param start
1130
+ * @param end
1131
+ * @param isMovingWindow
1132
+ * @param isLiveDone
1133
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.LiveSeekableRange
1134
+ */
1135
+ constructor(start?: number, end?: number, isMovingWindow?: boolean, isLiveDone?: boolean);
1136
+
1137
+ start?: number | undefined;
1138
+ end?: number | undefined;
1139
+ isMovingWindow?: boolean | undefined;
1140
+ isLiveDone?: boolean | undefined;
1141
+ }
1142
+ }
1143
+
1144
+ /**
1145
+ * @see https://developers.google.com/cast/docs/reference/chrome/chrome.cast.media.timeout
1146
+ */
1147
+ declare namespace chrome.cast.media.timeout {
1148
+ export var load: number;
1149
+ export var getStatus: number;
1150
+ export var play: number;
1151
+ export var pause: number;
1152
+ export var seek: number;
1153
+ export var stop: number;
1154
+ export var setVolume: number;
1155
+ export var editTracksInfo: number;
1156
+ export var queueInsert: number;
1157
+ export var queueLoad: number;
1158
+ export var queueRemove: number;
1159
+ export var queueReorder: number;
1160
+ export var queueUpdate: number;
1161
+ }
1162
+
1163
+ /**
1164
+ * Cast Application Framework
1165
+ *
1166
+ * @see https://developers.google.com/cast/docs/reference/chrome/cast.framework
1167
+ */
1168
+ declare namespace cast.framework {
1169
+ export enum LoggerLevel {
1170
+ DEBUG,
1171
+ INFO,
1172
+ WARNING,
1173
+ ERROR,
1174
+ NONE,
1175
+ }
1176
+
1177
+ export enum CastState {
1178
+ NO_DEVICES_AVAILABLE = 'NO_DEVICES_AVAILABLE',
1179
+ NOT_CONNECTED = 'NOT_CONNECTED',
1180
+ CONNECTING = 'CONNECTING',
1181
+ CONNECTED = 'CONNECTED',
1182
+ }
1183
+
1184
+ export enum SessionState {
1185
+ NO_SESSION = 'NO_SESSION',
1186
+ SESSION_STARTING = 'SESSION_STARTING',
1187
+ SESSION_STARTED = 'SESSION_STARTED',
1188
+ SESSION_START_FAILED = 'SESSION_START_FAILED',
1189
+ SESSION_ENDING = 'SESSION_ENDING',
1190
+ SESSION_ENDED = 'SESSION_ENDED',
1191
+ SESSION_RESUMED = 'SESSION_RESUMED',
1192
+ }
1193
+
1194
+ export enum CastContextEventType {
1195
+ CAST_STATE_CHANGED = 'caststatechanged',
1196
+ SESSION_STATE_CHANGED = 'sessionstatechanged',
1197
+ }
1198
+
1199
+ export enum SessionEventType {
1200
+ APPLICATION_STATUS_CHANGED = 'applicationstatuschanged',
1201
+ APPLICATION_METADATA_CHANGED = 'applicationmetadatachanged',
1202
+ ACTIVE_INPUT_STATE_CHANGED = 'activeinputstatechanged',
1203
+ VOLUME_CHANGED = 'volumechanged',
1204
+ MEDIA_SESSION = 'mediasession',
1205
+ }
1206
+
1207
+ export enum RemotePlayerEventType {
1208
+ ANY_CHANGE = 'anyChanged',
1209
+ IS_CONNECTED_CHANGED = 'isConnectedChanged',
1210
+ IS_MEDIA_LOADED_CHANGED = 'isMediaLoadedChanged',
1211
+ DURATION_CHANGED = 'durationChanged',
1212
+ CURRENT_TIME_CHANGED = 'currentTimeChanged',
1213
+ IS_PAUSED_CHANGED = 'isPausedChanged',
1214
+ VOLUME_LEVEL_CHANGED = 'volumeLevelChanged',
1215
+ CAN_CONTROL_VOLUME_CHANGED = 'canControlVolumeChanged',
1216
+ IS_MUTED_CHANGED = 'isMutedChanged',
1217
+ CAN_PAUSE_CHANGED = 'canPauseChanged',
1218
+ CAN_SEEK_CHANGED = 'canSeekChanged',
1219
+ DISPLAY_NAME_CHANGED = 'displayNameChanged',
1220
+ STATUS_TEXT_CHANGED = 'statusTextChanged',
1221
+ TITLE_CHANGED = 'titleChanged',
1222
+ DISPLAY_STATUS_CHANGED = 'displayStatusChanged',
1223
+ MEDIA_INFO_CHANGED = 'mediaInfoChanged',
1224
+ IMAGE_URL_CHANGED = 'imageUrlChanged',
1225
+ PLAYER_STATE_CHANGED = 'playerStateChanged',
1226
+ LIVE_SEEKABLE_RANGE_CHANGED = 'liveSeekableRange',
1227
+ }
1228
+
1229
+ export enum ActiveInputState {
1230
+ ACTIVE_INPUT_STATE_UNKNOWN = -1,
1231
+ ACTIVE_INPUT_STATE_NO = 0,
1232
+ ACTIVE_INPUT_STATE_YES = 1,
1233
+ }
1234
+
1235
+ export interface CastOptions {
1236
+ autoJoinPolicy: chrome.cast.AutoJoinPolicy;
1237
+ language?: string | undefined;
1238
+ receiverApplicationId?: string | undefined;
1239
+ resumeSavedSession?: boolean | undefined;
1240
+ /** The following flag enables Cast Connect(requires Chrome 87 or higher) */
1241
+ androidReceiverCompatible?: boolean | undefined;
1242
+ }
1243
+
1244
+ export const VERSION: string;
1245
+ export function setLoggerLevel(level: LoggerLevel): void;
1246
+
1247
+ export class CastContext {
1248
+ static getInstance(): CastContext;
1249
+ setOptions(options: CastOptions): void;
1250
+ getCastState(): CastState;
1251
+ getSessionState(): SessionState;
1252
+ requestSession(): Promise<chrome.cast.ErrorCode | undefined>;
1253
+ getCurrentSession(): CastSession | null;
1254
+ endCurrentSession(stopCasting: boolean): void;
1255
+ addEventListener<T extends keyof CastContextEvents>(
1256
+ type: T,
1257
+ handler: (event: CastContextEvents[T]) => void,
1258
+ ): void;
1259
+ removeEventListener<T extends keyof CastContextEvents>(
1260
+ type: T,
1261
+ handler: (event: CastContextEvents[T]) => void,
1262
+ ): void;
1263
+ }
1264
+
1265
+ export interface CastContextEvents {
1266
+ [CastContextEventType.CAST_STATE_CHANGED]: CastStateEventData;
1267
+ [CastContextEventType.SESSION_STATE_CHANGED]: SessionStateEventData;
1268
+ }
1269
+
1270
+ export class CastSession {
1271
+ constructor(sessionObj: chrome.cast.Session, state: SessionState);
1272
+ getSessionObj(): chrome.cast.Session;
1273
+ getSessionId(): string;
1274
+ getSessionState(): SessionState;
1275
+ getCastDevice(): chrome.cast.Receiver;
1276
+ getApplicationMetadata(): ApplicationMetadata;
1277
+ getApplicationStatus(): string;
1278
+ getActiveInputState(): ActiveInputState;
1279
+ endSession(stopCasting: boolean): void;
1280
+ setVolume(volume: number): Promise<chrome.cast.ErrorCode | undefined>;
1281
+ getVolume(): number;
1282
+ setMute(mute: boolean): Promise<chrome.cast.ErrorCode | undefined>;
1283
+ isMute(): boolean;
1284
+ sendMessage(namespace: string, data: any): Promise<chrome.cast.ErrorCode | undefined>;
1285
+ addMessageListener(
1286
+ namespace: string,
1287
+ listener: (namespace: string, message: string) => void,
1288
+ ): void;
1289
+ removeMessageListener(
1290
+ namespace: string,
1291
+ listener: (namespace: string, message: string) => void,
1292
+ ): void;
1293
+ loadMedia(request: chrome.cast.media.LoadRequest): Promise<chrome.cast.ErrorCode | undefined>;
1294
+ getMediaSession(): chrome.cast.media.Media | null;
1295
+ addEventListener<T extends keyof CastSessionEvents>(
1296
+ type: T,
1297
+ handler: (event: CastSessionEvents[T]) => void,
1298
+ ): void;
1299
+ removeEventListener<T extends keyof CastSessionEvents>(
1300
+ type: T,
1301
+ handler: (event: CastSessionEvents[T]) => void,
1302
+ ): void;
1303
+ }
1304
+
1305
+ export interface CastSessionEvents {
1306
+ [SessionEventType.ACTIVE_INPUT_STATE_CHANGED]: ActiveInputStateEventData;
1307
+ [SessionEventType.APPLICATION_METADATA_CHANGED]: ApplicationMetadataEventData;
1308
+ [SessionEventType.APPLICATION_STATUS_CHANGED]: ApplicationStatusEventData;
1309
+ [SessionEventType.MEDIA_SESSION]: MediaSessionEventData;
1310
+ [SessionEventType.VOLUME_CHANGED]: VolumeEventData;
1311
+ }
1312
+
1313
+ export class RemotePlayerController {
1314
+ constructor(player: RemotePlayer);
1315
+ playOrPause(): void;
1316
+ stop(): void;
1317
+ seek(): void;
1318
+ muteOrUnmute(): void;
1319
+ setVolumeLevel(): void;
1320
+ getFormattedTime(timeInSec: number): string;
1321
+ getSeekPosition(currentTime: number, duration: number): number;
1322
+ getSeekTime(currentPosition: number, duration: number): number;
1323
+ addEventListener(
1324
+ type: RemotePlayerEventType,
1325
+ handler: (event: RemotePlayerChangedEvent) => void,
1326
+ ): void;
1327
+ removeEventListener(
1328
+ type: RemotePlayerEventType,
1329
+ handler: (event: RemotePlayerChangedEvent) => void,
1330
+ ): void;
1331
+ }
1332
+
1333
+ export interface SavedPlayerState {
1334
+ mediaInfo: chrome.cast.media.PlayerState | null;
1335
+ currentTime: number;
1336
+ isPaused: boolean;
1337
+ }
1338
+
1339
+ export class RemotePlayer {
1340
+ isConnected: boolean;
1341
+ isMediaLoaded: boolean;
1342
+ duration: number;
1343
+ currentTime: number;
1344
+ volumeLevel: number;
1345
+ canControlVolume: boolean;
1346
+ isPaused: boolean;
1347
+ isMuted: boolean;
1348
+ canPause: boolean;
1349
+ canSeek: boolean;
1350
+ displayName: string;
1351
+ statusText: string;
1352
+ title: string;
1353
+ displayStatus: string;
1354
+ liveSeekableRange?: chrome.cast.media.LiveSeekableRange | undefined;
1355
+ mediaInfo?: chrome.cast.media.MediaInfo | undefined;
1356
+ imageUrl: string | null;
1357
+ playerState: chrome.cast.media.PlayerState | null;
1358
+ savedPlayerState: SavedPlayerState | null;
1359
+ controller: RemotePlayerController | null;
1360
+ }
1361
+
1362
+ export class ApplicationMetadata {
1363
+ constructor(sessionObj: chrome.cast.Session);
1364
+ applicationId: string;
1365
+ images: chrome.cast.Image[];
1366
+ name: string;
1367
+ namespaces: string[];
1368
+ }
1369
+
1370
+ export abstract class EventData {
1371
+ constructor(type: string);
1372
+ type: string;
1373
+ }
1374
+
1375
+ export class ActiveInputStateEventData extends EventData {
1376
+ constructor(activeInputState: ActiveInputState);
1377
+ activeInputState: ActiveInputState;
1378
+ }
1379
+
1380
+ export class ApplicationMetadataEventData extends EventData {
1381
+ constructor(metadata: ApplicationMetadata);
1382
+ metadata: ApplicationMetadata;
1383
+ }
1384
+
1385
+ export class ApplicationStatusEventData extends EventData {
1386
+ constructor(status: string);
1387
+ status: string;
1388
+ }
1389
+
1390
+ export class CastStateEventData extends EventData {
1391
+ constructor(castState: CastState);
1392
+ castState: CastState;
1393
+ }
1394
+
1395
+ export class MediaSessionEventData extends EventData {
1396
+ constructor(mediaSession: chrome.cast.media.Media);
1397
+ mediaSession: chrome.cast.media.Media;
1398
+ }
1399
+
1400
+ export class RemotePlayerChangedEvent<T = any> extends EventData {
1401
+ constructor(type: RemotePlayerEventType, field: string, value: T);
1402
+ field: string;
1403
+ value: T;
1404
+ }
1405
+
1406
+ export class SessionStateEventData extends EventData {
1407
+ constructor(
1408
+ session: CastSession,
1409
+ sessionState: SessionState,
1410
+ opt_errorCode: chrome.cast.ErrorCode,
1411
+ );
1412
+ errorCode: chrome.cast.ErrorCode;
1413
+ session: CastSession;
1414
+ sessionState: SessionState;
1415
+ }
1416
+
1417
+ export class VolumeEventData extends EventData {
1418
+ constructor(volume: number, isMute: boolean);
1419
+ isMute: boolean;
1420
+ volume: number;
1421
+ }
1422
+ }