import type { CustomEvent, EventInfo } from '../player'; declare class VideoEventInstance { video: HTMLVideoElement; events: { [key: string]: EventInfo; }; playerEvents: { [key: string]: (() => void)[]; }; constructor(video: HTMLVideoElement); on(eventName: string, handle: () => void): void; addEventListener(eventName: string, handle: () => void): void; removeEventListener(eventName: string, handle: () => void): void; emit(eventName: string, ...data: any): void; off(eventName: string, handle: () => void): void; destroy(): void; } declare type PlayEvent = VideoEventInstance; export declare function usePlayerEvent(video: HTMLVideoElement): PlayEvent; export declare function useVideoEvents(event: VideoEventInstance, events: CustomEvent[]): void; export declare function useRegisterPlayerEvents(event: VideoEventInstance, events: CustomEvent[]): void; export default VideoEventInstance;