import { Destroyable, SubtitlesCreateEvent, SubtitlesEvent, SubtitlesLoadedEvent, SubtitlesVttTrack, SubtitlesVttTrackCreateType } from '../types'; import { BehaviorSubject, Observable, Subject } from 'rxjs'; import { SubtitlesApi } from '../api'; import { VideoControllerApi } from '../video'; export declare class SubtitlesController implements SubtitlesApi, Destroyable { readonly onSubtitlesLoaded$: BehaviorSubject; readonly onCreate$: Observable; readonly onRemove$: Observable; readonly onShow$: Observable; readonly onHide$: Observable; protected _videoController: VideoControllerApi; protected _destroyed$: Subject; constructor(videoController: VideoControllerApi); createVttTrack(track: SubtitlesVttTrackCreateType): Observable; getTracks(): SubtitlesVttTrack[]; removeAllTracks(): Observable; removeTrack(id: string): Observable; getActiveTrack(): SubtitlesVttTrack | undefined; showTrack(id: string): Observable; showActiveTrack(): Observable; hideTrack(id: string): Observable; hideActiveTrack(): Observable; toggleShowHideActiveTrack(): Observable; destroy(): void; }