import { BaseAPI } from '../../../../../../common/BaseAPI';
import Configuration from '../../../../../../common/Configuration';
import BitmovinResponse from '../../../../../../models/BitmovinResponse';
import SubtitleAdaptationSet from '../../../../../../models/SubtitleAdaptationSet';
import PaginationResponse from '../../../../../../models/PaginationResponse';
import { SubtitleAdaptationSetListQueryParams, SubtitleAdaptationSetListQueryParamsBuilder } from './SubtitleAdaptationSetListQueryParams';
/**
 * SubtitleApi - object-oriented interface
 * @export
 * @class SubtitleApi
 * @extends {BaseAPI}
 */
export default class SubtitleApi extends BaseAPI {
    constructor(configuration: Configuration);
    /**
     * @summary Add Subtitle AdaptationSet
     * @param {string} manifestId Id of the manifest
     * @param {string} periodId Id of the period
     * @param {SubtitleAdaptationSet} subtitleAdaptationSet The subtitle adaptation set to be added to the period
     * @throws {BitmovinError}
     * @memberof SubtitleApi
     */
    create(manifestId: string, periodId: string, subtitleAdaptationSet?: SubtitleAdaptationSet): Promise<SubtitleAdaptationSet>;
    /**
     * @summary Delete Subtitle AdaptationSet
     * @param {string} manifestId Id of the manifest
     * @param {string} periodId Id of the period
     * @param {string} adaptationsetId Id of the subtitle adaptation set to be deleted
     * @throws {BitmovinError}
     * @memberof SubtitleApi
     */
    delete(manifestId: string, periodId: string, adaptationsetId: string): Promise<BitmovinResponse>;
    /**
     * @summary Subtitle AdaptationSet Details
     * @param {string} manifestId Id of the manifest
     * @param {string} periodId Id of the period
     * @param {string} adaptationsetId Id of the subtitle adaptation set
     * @throws {BitmovinError}
     * @memberof SubtitleApi
     */
    get(manifestId: string, periodId: string, adaptationsetId: string): Promise<SubtitleAdaptationSet>;
    /**
     * @summary List all Subtitle AdaptationSets
     * @param {string} manifestId Id of the manifest
     * @param {string} periodId Id of the period
     * @param {*} [queryParameters] query parameters for filtering, sorting and pagination
     * @throws {BitmovinError}
     * @memberof SubtitleApi
     */
    list(manifestId: string, periodId: string, queryParameters?: SubtitleAdaptationSetListQueryParams | ((q: SubtitleAdaptationSetListQueryParamsBuilder) => SubtitleAdaptationSetListQueryParamsBuilder)): Promise<PaginationResponse<SubtitleAdaptationSet>>;
}
