import { TrackBaseInfo, TrackMergeOptions } from "../types"; export declare class MergerSessionController { onAddTracks: (tracks: TrackBaseInfo[]) => any; onRemoveTracks: (tracks: TrackBaseInfo[]) => any; getCurrentTracks: () => TrackBaseInfo[]; addMergeTrack: (mergeOpt: TrackMergeOptions[], jobId?: string) => any; release: () => any; } export declare class Merger { private width; private height; private jobId?; private videoTrackInfo; private audioTrackInfo; private layoutLevel; private layout; constructor(width: number, height: number, controller: MergerSessionController, jobId?: string); private initLayout; private updateLayoutLevel; private setLevelLayoutStream; private sendMergeOpt; handleRemoveVideoTrack(track: TrackBaseInfo): void; handleAddVideoTrack(track: TrackBaseInfo): void; release(): void; }