import { SFC, Props, IComponentInstance } from "../core/types"; import { IVideoFits } from "../plugins/player"; import initI18n from "../locales/i18n"; import { IWatermarkConfig } from "../plugins/watermark"; type Container = HTMLElement | Element | Node | null; interface IPlaybackProps extends Props { fileID: string; fileName?: string; token: string; puOption?: { puId?: string; nruId?: string; }; apiPrefix?: string; playbackUrl?: string; bvrtcConfig?: { enableWebcodes?: number; realTimeLevel?: number; }; defaultMediaOption?: { audio: boolean; video: boolean; }; container?: Container; locale?: Parameters["0"]; type?: IPlaybackPlayType; zIndexMenu?: number; displayMode?: 'playback'; cryptkey?: string; watermark?: IWatermarkConfig; } type IPlaybackPlayType = "ws-bvrtc" | "web" | "auto"; interface IPlaybackInstance extends IComponentInstance { open(): Promise; close(): Promise; pause(): Promise; resume(): Promise; emitClick(): void; setVideoFit: (style: "contain" | "fill") => void; setProtocol: (protocol: IPlaybackPlayType) => void; videoFit: keyof IVideoFits; protocol: IPlaybackPlayType; inBusy: boolean; } type helperFunc = { getDefaultProps: () => Partial; setDefaultProps: (props: Partial) => void; }; declare const PlayBack: SFC & helperFunc; export default PlayBack;