jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
68 lines (67 loc) • 2.29 kB
TypeScript
import React from 'react';
import type { BigPlayButton, ControlBar, PlaybackRateMenuButton, Player, Shortcut } from 'video-react';
import type { FlvSourceProps, HlsSourceProps, VideoProps } from './types';
export declare class FlvSource extends React.Component<FlvSourceProps, any> {
mpegtsPlayer: any;
loaded: boolean;
timer: any;
unsubscribe: any;
componentDidMount(): void;
componentDidUpdate(prevProps: FlvSourceProps): void;
componentWillUnmount(): void;
initFlv({ video, manager, src, isLive, config, actions, setError, autoPlay }: any): void;
render(): JSX.Element;
}
export declare class HlsSource extends React.Component<HlsSourceProps, any> {
hls: any;
loaded: boolean;
unsubscribe: any;
componentDidMount(): void;
componentWillUnmount(): void;
componentDidUpdate(prevProps: HlsSourceProps): void;
initHls({ video, manager, src, autoPlay, actions }: any): void;
render(): JSX.Element;
}
export interface VideoState {
posterInfo?: any;
videoState?: any;
error?: string;
videoLibReady: boolean;
}
export default class Video extends React.Component<VideoProps, VideoState> {
static BigPlayButton: typeof BigPlayButton;
static ControlBar: typeof ControlBar;
static PlaybackRateMenuButton: typeof PlaybackRateMenuButton;
static Player: typeof Player;
static Shortcut: typeof Shortcut;
static defaultProps: {
columnsCount: number;
isLive: boolean;
jumpFrame: boolean;
aspectRatio: string;
};
frameDom: any;
cursorDom: any;
player: any;
times: Array<number>;
currentIndex: number;
manualJump: boolean;
unmounted: boolean;
constructor(props: VideoProps);
componentDidMount(): Promise<void>;
componentWillUnmount(): void;
onImageLoaded(e: Event): void;
frameRef(dom: any): void;
cursorRef(dom: any): void;
playerRef(player: any): void;
moveCursorToIndex(index: number): void;
jumpToIndex(index: number): void;
onClick(e: Event): void;
setError(error?: string): void;
renderFrames(): JSX.Element | null;
renderPlayer(): JSX.Element | null;
renderPosterAndPlayer(): JSX.Element;
render(): JSX.Element;
}
export declare class VideoRenderer extends Video {
}