import { BaseAPI } from '../../../../common/BaseAPI';
import Configuration from '../../../../common/Configuration';
import CustomdataApi from './customdata/CustomdataApi';
import BitmovinResponse from '../../../../models/BitmovinResponse';
import DolbyDigitalPlusAudioConfiguration from '../../../../models/DolbyDigitalPlusAudioConfiguration';
import PaginationResponse from '../../../../models/PaginationResponse';
import { DolbyDigitalPlusAudioConfigurationListQueryParams, DolbyDigitalPlusAudioConfigurationListQueryParamsBuilder } from './DolbyDigitalPlusAudioConfigurationListQueryParams';
/**
 * DolbyDigitalPlusApi - object-oriented interface
 * @export
 * @class DolbyDigitalPlusApi
 * @extends {BaseAPI}
 */
export default class DolbyDigitalPlusApi extends BaseAPI {
    customdata: CustomdataApi;
    constructor(configuration: Configuration);
    /**
     * @summary Create Dolby Digital Plus Codec Configuration
     * @param {DolbyDigitalPlusAudioConfiguration} dolbyDigitalPlusAudioConfiguration The Dolby Digital Plus Codec Configuration to be created (Dolby Encoder v3.17).  Dolby Digital Plus enables high-resolution multichannel audio at lower bit rates than with Dolby Digital.
     * @throws {BitmovinError}
     * @memberof DolbyDigitalPlusApi
     */
    create(dolbyDigitalPlusAudioConfiguration?: DolbyDigitalPlusAudioConfiguration): Promise<DolbyDigitalPlusAudioConfiguration>;
    /**
     * @summary Delete Dolby Digital Plus Codec Configuration
     * @param {string} configurationId Id of the codec configuration
     * @throws {BitmovinError}
     * @memberof DolbyDigitalPlusApi
     */
    delete(configurationId: string): Promise<BitmovinResponse>;
    /**
     * @summary Dolby Digital Plus Codec Configuration Details
     * @param {string} configurationId Id of the codec configuration
     * @throws {BitmovinError}
     * @memberof DolbyDigitalPlusApi
     */
    get(configurationId: string): Promise<DolbyDigitalPlusAudioConfiguration>;
    /**
     * @summary List Dolby Digital Plus Codec Configurations
     * @param {*} [queryParameters] query parameters for filtering, sorting and pagination
     * @throws {BitmovinError}
     * @memberof DolbyDigitalPlusApi
     */
    list(queryParameters?: DolbyDigitalPlusAudioConfigurationListQueryParams | ((q: DolbyDigitalPlusAudioConfigurationListQueryParamsBuilder) => DolbyDigitalPlusAudioConfigurationListQueryParamsBuilder)): Promise<PaginationResponse<DolbyDigitalPlusAudioConfiguration>>;
}
