import type { Rivatuner } from 'ray-streaming'; import { Widget } from 'ray-streaming'; import { BitrateType, DisplayModeType, TouchMoveType } from '../interface'; import { ExtendPluginsType } from './plugin-manager'; interface ControlPanelParams { logoUrl: string; showLogo: boolean; lock: boolean; displayMode: DisplayModeType; bitrateType: BitrateType; extendPlugins: ExtendPluginsType[]; } interface ReportVideoProps { videoWidth: number; videoHeight: number; muted: boolean; } interface ReportPlayerProps { offsetHeight: number; } export declare class ControlPanel extends Widget { static reportGap: number; static defaultParams: ControlPanelParams; private timer; private syncTimer; private runningTime; constructor(params?: Partial); connect({ report, reportVideoProps, reportPlayerProps, onFullscreen, onDisplayModeChange, onBitrateChange, onVoiceChange, onTouchRateChange, onKeyboardChange, onVirtualKeyboardChange, onVirtualControlsChange, onExit, }: { report: Rivatuner['report']; reportVideoProps: () => ReportVideoProps; reportPlayerProps: () => ReportPlayerProps; onFullscreen: () => void; onDisplayModeChange: (v: DisplayModeType) => void; onBitrateChange: (v: BitrateType) => void; onVoiceChange: (v: boolean) => void; onTouchRateChange: (v: TouchMoveType) => void; onKeyboardChange: (v: boolean) => void; onVirtualKeyboardChange: (v: boolean) => void; onVirtualControlsChange: (v: boolean) => void; onExit: () => void; }): void; updateMessagePrompt(payload: string): void; hide(): void; show(): void; updateExtendPlugins(plugins: ExtendPluginsType[]): void; destroy(): void; } export {};