import { PLVVodMediaPlayerRepo } from "../model/PLVVodMediaPlayerRepo"; import { PLVVodMediaPlayerViewModelUseCases } from "./usecase/PLVVodMediaPlayerViewModelUseCases"; import { PLVVodMediaPlayerDataMediator } from "../model/mediator/PLVVodMediaPlayerDataMediator"; import { PLVVodMediaResource } from "../../common/model/vo/PLVMediaResource"; import { PLVVodMediaPlayerPromiseScope } from "./promise/PLVVodMediaPlayerPromiseScope"; import { MutableEvent } from '@polyvharmony/media-player-foundation'; import { PLVMediaPlayTargetContent } from "../../common/model/vo/PLVMediaPlayTargetContent"; import { PLVMediaPlayStage } from "../../common/model/vo/PLVMediaPlayStage"; import { PLVMediaBitRate } from "../../common/model/vo/PLVMediaBitRate"; import { PLVMediaRoute } from "../../common/model/vo/PLVMediaRoute"; import { PLVMediaOutputMode } from "../../common/model/vo/PLVMediaOutputMode"; import { PLVMediaSubtitle } from "../../common/model/vo/PLVMediaSubtitle"; export declare class PLVVodMediaPlayerViewModel { private readonly promiseScope; private readonly repo; private readonly useCases; readonly mediator: PLVVodMediaPlayerDataMediator; readonly mediaPlayTargetContent: MutableEvent; constructor(promiseScope: PLVVodMediaPlayerPromiseScope, repo: PLVVodMediaPlayerRepo, useCases: PLVVodMediaPlayerViewModelUseCases, mediator: PLVVodMediaPlayerDataMediator); startWithMediaResource(mediaResource: PLVVodMediaResource, resetProgress?: boolean, startStage?: PLVMediaPlayStage): void; changeBitRate(bitRate: PLVMediaBitRate): void; changeRoute(route: PLVMediaRoute): void; changeMediaOutputMode(outputMode: PLVMediaOutputMode): void; setShowSubtitles(subtitles: PLVMediaSubtitle[]): void; destroy(): void; private prepareMediaStart; }