import { BaseAPI } from '../../../common/BaseAPI';
import Configuration from '../../../common/Configuration';
import TypeApi from './type/TypeApi';
import Fmp4Api from './fmp4/Fmp4Api';
import ChunkedTextApi from './chunkedText/ChunkedTextApi';
import CmafApi from './cmaf/CmafApi';
import SegmentedRawApi from './segmentedRaw/SegmentedRawApi';
import PackedAudioApi from './packedAudio/PackedAudioApi';
import TextApi from './text/TextApi';
import TsApi from './ts/TsApi';
import WebmApi from './webm/WebmApi';
import Mp3Api from './mp3/Mp3Api';
import Mp4Api from './mp4/Mp4Api';
import MxfApi from './mxf/MxfApi';
import ProgressiveTsApi from './progressiveTs/ProgressiveTsApi';
import BroadcastTsApi from './broadcastTs/BroadcastTsApi';
import ProgressiveWavApi from './progressiveWav/ProgressiveWavApi';
import ProgressiveWebmApi from './progressiveWebm/ProgressiveWebmApi';
import ProgressiveMovApi from './progressiveMov/ProgressiveMovApi';
import Muxing from '../../../models/Muxing';
import PaginationResponse from '../../../models/PaginationResponse';
import { MuxingListQueryParams, MuxingListQueryParamsBuilder } from './MuxingListQueryParams';
/**
 * MuxingsApi - object-oriented interface
 * @export
 * @class MuxingsApi
 * @extends {BaseAPI}
 */
export default class MuxingsApi extends BaseAPI {
    type: TypeApi;
    fmp4: Fmp4Api;
    chunkedText: ChunkedTextApi;
    cmaf: CmafApi;
    segmentedRaw: SegmentedRawApi;
    packedAudio: PackedAudioApi;
    text: TextApi;
    ts: TsApi;
    webm: WebmApi;
    mp3: Mp3Api;
    mp4: Mp4Api;
    mxf: MxfApi;
    progressiveTs: ProgressiveTsApi;
    broadcastTs: BroadcastTsApi;
    progressiveWav: ProgressiveWavApi;
    progressiveWebm: ProgressiveWebmApi;
    progressiveMov: ProgressiveMovApi;
    constructor(configuration: Configuration);
    /**
     * @summary Muxing Details
     * @param {string} encodingId Id of the encoding.
     * @param {string} muxingId Id of the muxing.
     * @throws {BitmovinError}
     * @memberof MuxingsApi
     */
    get(encodingId: string, muxingId: string): Promise<Muxing>;
    /**
     * @summary List All Muxings
     * @param {string} encodingId Id of the encoding.
     * @param {*} [queryParameters] query parameters for filtering, sorting and pagination
     * @throws {BitmovinError}
     * @memberof MuxingsApi
     */
    list(encodingId: string, queryParameters?: MuxingListQueryParams | ((q: MuxingListQueryParamsBuilder) => MuxingListQueryParamsBuilder)): Promise<PaginationResponse<Muxing>>;
}
