import { BaseAPI } from '../../../common/BaseAPI';
import Configuration from '../../../common/Configuration';
import ResetLiveManifestTimeshiftApi from './resetLiveManifestTimeshift/ResetLiveManifestTimeshiftApi';
import HdApi from './hd/HdApi';
import InsertableContentApi from './insertableContent/InsertableContentApi';
import Scte35CueApi from './scte35Cue/Scte35CueApi';
import BitmovinResponse from '../../../models/BitmovinResponse';
import LiveEncoding from '../../../models/LiveEncoding';
import StartLiveEncodingRequest from '../../../models/StartLiveEncodingRequest';
/**
 * LiveApi - object-oriented interface
 * @export
 * @class LiveApi
 * @extends {BaseAPI}
 */
export default class LiveApi extends BaseAPI {
    resetLiveManifestTimeshift: ResetLiveManifestTimeshiftApi;
    hd: HdApi;
    insertableContent: InsertableContentApi;
    scte35Cue: Scte35CueApi;
    constructor(configuration: Configuration);
    /**
     * @summary Live Encoding Details
     * @param {string} encodingId Id of the encoding.
     * @throws {BitmovinError}
     * @memberof LiveApi
     */
    get(encodingId: string): Promise<LiveEncoding>;
    /**
     * @summary Live Encoding Start Details
     * @param {string} encodingId Id of the encoding
     * @throws {BitmovinError}
     * @memberof LiveApi
     */
    getStartRequest(encodingId: string): Promise<StartLiveEncodingRequest>;
    /**
     * @summary Re-Start Live Encoding
     * @param {string} encodingId Id of the encoding.  **Important:** Only live encodings with the status &#x60;RUNNING&#x60;, &#x60;FINISHED&#x60;, &#x60;CANCELED&#x60; or &#x60;ERROR&#x60; can be restarted.
     * @throws {BitmovinError}
     * @memberof LiveApi
     */
    restart(encodingId: string): Promise<BitmovinResponse>;
    /**
     * @summary Start Live Encoding
     * @param {string} encodingId Id of the encoding
     * @param {StartLiveEncodingRequest} startLiveEncodingRequest Live Encoding startup options
     * @throws {BitmovinError}
     * @memberof LiveApi
     */
    start(encodingId: string, startLiveEncodingRequest?: StartLiveEncodingRequest): Promise<BitmovinResponse>;
    /**
     * @summary Stop Live Encoding
     * @param {string} encodingId Id of the encoding
     * @throws {BitmovinError}
     * @memberof LiveApi
     */
    stop(encodingId: string): Promise<BitmovinResponse>;
}
