import { PLVLiveMediaPlayerRepo } from "../model/PLVLiveMediaPlayerRepo"; import { PLVLiveMediaPlayerDataMediator } from "../model/mediator/PLVLiveMediaPlayerDataMediator"; import { IPLVMediaPlayerPromiseScope } from "../../common/promise/IPLVMediaPlayerPromiseScope"; import { PLVLiveMediaResource } from "../../common/model/vo/PLVMediaResource"; import { LifecycleAwareDependComponent, MutableEvent } from '@polyvharmony/media-player-foundation'; import { PLVLiveMediaPlayerViewModelUseCases } from "./usecase/PLVLiveMediaPlayerViewModelUseCases"; import { PLVMediaPlayTargetContent } from "../../common/model/vo/PLVMediaPlayTargetContent"; import { PLVMediaBitRate } from "../../common/model/vo/PLVMediaBitRate"; import { PLVMediaOutputMode } from "../../common/model/vo/PLVMediaOutputMode"; import { PLVMediaRoute } from "../../common/model/vo/PLVMediaRoute"; export declare class PLVLiveMediaPlayerViewModel implements LifecycleAwareDependComponent { private readonly repo; readonly mediator: PLVLiveMediaPlayerDataMediator; private readonly useCases; private readonly promiseScope; private startPlayerOnLiveStart; private canStartPlayer; private pauseAtLiveStartState; private updateLiveInfoIntervalId; readonly outMediaPlayTargetContent: MutableEvent; constructor(repo: PLVLiveMediaPlayerRepo, mediator: PLVLiveMediaPlayerDataMediator, useCases: PLVLiveMediaPlayerViewModelUseCases, promiseScope: IPLVMediaPlayerPromiseScope); setMediaResource(mediaResource: PLVLiveMediaResource): void; start(): void; pause(): void; changeBitRate(bitRate: PLVMediaBitRate): void; changeMediaOutputMode(outputMode: PLVMediaOutputMode): void; changeRoute(route: PLVMediaRoute): void; onDestroy(): void; private intervalUpdateLiveInfo; private tryStartLivePlayer; private startLivePlayer; }