import { AECompStreamInstance } from '../../core/resource/type-helper/AECompStream/instance.js'; import { AECompWrapperInstance } from '../../core/resource/type-helper/AECompWrapper/instance.js'; import { AEPlayerInstance } from '../../core/resource/type-helper/AEPlayer/instance.js'; import { ModuleType } from '../../core/resource/web_engine.d.js'; import { LogManager } from '../Logger/index.js'; import { NameSpaceEngine } from './helper.js'; interface PlayerType { namespace: string; Player: AEPlayerInstance; Module: ModuleType; RootComp: AECompWrapperInstance; Stream: AECompStreamInstance; logger: LogManager; /** * 播放器状态数据 */ playerData: { duration: number; currTime: number; status: 'stop' | 'ready' | 'play' | 'pause' | 'disabled'; }; streamActivated: boolean; streamActivatPending: boolean; onStreamActivated: (() => void) | null; onStreamDeactivated: (() => void) | null; onPlaySuccess: (() => void) | null; onPauseSuccess: (() => void) | null; onSeekSuccess: (() => void) | null; onSetDisplayContent: (() => void) | null; onReopenPlayer: (() => void) | null; onPlayerClosed: (() => void) | null; /** * 获取全局引擎数据 */ getNameSpaceEngine: (name: string) => NameSpaceEngine; play: () => void; pause: () => void; seekTo: (timestamp: number) => void; destroy: (callback: () => void) => void; } declare class Player implements PlayerType { namespace: string; Player: AEPlayerInstance; Module: ModuleType; RootComp: AECompWrapperInstance; Stream: AECompStreamInstance; logger: LogManager; streamActivated: boolean; streamActivatPending: boolean; updateCallback: (() => void) | null; playerData: { duration: number; currTime: number; status: 'stop' | 'ready' | 'play' | 'pause' | 'disabled'; }; size: { width: number; height: number; }; getNameSpaceEngine: (name: string) => NameSpaceEngine; onStreamActivated: (() => void) | null; onStreamDeactivated: (() => void) | null; onPlaySuccess: (() => void) | null; onPauseSuccess: (() => void) | null; onSeekSuccess: (() => void) | null; onSetDisplayContent: (() => void) | null; onReopenPlayer: (() => void) | null; onPlayerClosed: (() => void) | null; /** * 更新Task释放器 */ updateResolver: (value: any) => void; constructor(Module: ModuleType, Player: AEPlayerInstance, RootComp: AECompWrapperInstance, logger: LogManager, size: { width: number; height: number; }, namespace: string); initPlayerCallback(callback: (playerData?: { duration: number; currTime: number; status: 'stop' | 'ready' | 'play' | 'pause' | 'disabled'; }) => void): void; play(): void; pause(): void; seekTo(timestamp: number): void; activeStream: () => void; /** * 刷新播放器 */ refreshPlayer(callback?: () => void): void; destroy(callback: () => void): void; destoryStream(): Promise; updatePlayerSize(size: { width: number; height: number; }, options?: { onStremActivated?: () => void; onStremDeactivated?: () => void; onSuccess?: () => void; }): void; } export { Player };