import flvjs from 'flv.zv.js'; import Hls, { HlsConfig } from 'hls.js'; import type { FlvPlayerConfig } from '../player'; declare class Api { container: HTMLElement; constructor(container: HTMLElement); get video(): HTMLVideoElement; /** * 全屏 */ requestFullScreen: () => void; /** * 退出全屏 */ cancelFullScreen: () => void; play: () => void; pause: () => void; /** * 设置currentTime实现seek * @param {*} seconds * @param {*} noEmit */ seekTo: (seconds: number) => void; setVolume: (fraction: number) => void; mute: () => void; unmute: () => void; /** * 开启画中画功能 */ requestPictureInPicture: () => void; /** * 关闭画中画功能 */ exitPictureInPicture: () => void; /** * 设置播放速率 * @param {*} rate */ setPlaybackRate: (rate: number) => void; /** * 获取视频总时长 */ getDuration: () => number; /** * 获取当前播放时间 */ getCurrentTime: () => number; /** * 获取缓存时间 */ getSecondsLoaded: () => any; /** * 获取当前视频缓存的起止时间 */ getBufferedTime: () => number | number[]; /** * 视频截屏方法 */ snapshot: () => string; unload: () => void; reload: () => void; destroy: () => void; } export declare type TypeAndPlay = { type?: string; flv?: flvjs.Player; hls?: Hls; }; export declare function useTypeAndPlay(url?: string, type?: string, isLive?: boolean, container?: HTMLElement, segments?: flvjs.MediaSegment[], flvConfig?: FlvPlayerConfig, hlsConfig?: HlsConfig): [string, flvjs.Player, Hls]; export declare function usePlayerApi(url?: string, type?: string, isLive?: boolean, container?: HTMLElement, segments?: flvjs.MediaSegment[], flvConfig?: FlvPlayerConfig, hlsConfig?: HlsConfig): [Api, [string, flvjs.Player, Hls]]; export default Api;