import Muxing from './Muxing';
import MuxingType from './MuxingType';
import TsMuxingConfiguration from './TsMuxingConfiguration';
/**
 * @export
 * @class TsMuxing
 */
export declare class TsMuxing extends Muxing {
    /**
     * Discriminator property for Muxing
     * @type {string}
     * @memberof TsMuxing
     */
    readonly type: MuxingType;
    /**
     * Length of the fragments in seconds
     * @type {number}
     * @memberof TsMuxing
     */
    segmentLength?: number;
    /**
     * Prevents creation of very short segments (in seconds). If the last segment is shorter than minimumSegmentLength or there is a custom keyframe too close to a segment boundary, short segments will be omitted by removing segment boundaries, resulting in a segment of a size up to segmentLength + minimumSegmentLength.
     * @type {number}
     * @memberof TsMuxing
     */
    minimumSegmentLength?: number;
    /**
     * Segment naming policy
     * @type {string}
     * @memberof TsMuxing
     */
    segmentNaming?: string;
    /**
     * Segment naming policy containing one or both of the following placeholders: - '{rand_chars:x}', which will be replaced by a random alphanumeric string of length x (default 32)   on each (re)start of the encoding. The resulting string will be copied to the segmentNaming property.   Intended to avoid re-use of segment names after restarting a live encoding. - '{segment_rand_chars:x}', which will be replaced by a random alphanumeric string of length x (default 32)   for each different segment. This is intended to avoid guessing segment URLs by replacing segment numbers.  If segmentNamingTemplate is set, segmentNaming must not be set.
     * @type {string}
     * @memberof TsMuxing
     */
    segmentNamingTemplate?: string;
    /**
     * Offset of MPEG-TS timestamps in seconds. E.g., first packet will start with PTS 900,000 for a 10 seconds offset (90,000 MPEG-TS timescale).
     * @type {number}
     * @memberof TsMuxing
     */
    startOffset?: number;
    /**
     * Number of segments which have been encoded
     * @type {number}
     * @memberof TsMuxing
     */
    segmentsMuxed?: number;
    /**
     * Advanced Configuration of the MPEG Transport Stream Parameters
     * @type {TsMuxingConfiguration}
     * @memberof TsMuxing
     */
    configuration?: TsMuxingConfiguration;
    constructor(obj?: Partial<TsMuxing>);
}
export default TsMuxing;
