import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { CMTimeRange } from "../structs/CMTimeRange.js";
export declare class _AVCaptionGroup extends _NSObject {
    static alloc(): _AVCaptionGroup;
    static new(): _AVCaptionGroup;
    init(): _AVCaptionGroup;
    /**
     * @method initWithCaptions:timeRange: @abstract Initializes a caption group with the given set of captions and the time range. @discussion Every caption in the array must be equal or sub range of the time range, otherwise an exception is raised. @param captions The captions that will be included in the group. The array is coped. @result A newly-initialized caption group.
     */
    initWithCaptions$timeRange$(captions: _NSArray, timeRange: CMTimeRange): _AVCaptionGroup;
    /**
     * @method initWithTimeRange: @abstract Initializes an empty caption group with the given time range. @discussion This is a convenient initializer to create an empty caption group time range. @param timeRange The time range for which there are no captions. @result A newly-initialized empty caption group.
     */
    initWithTimeRange$(timeRange: CMTimeRange): _AVCaptionGroup;
    /**
     * @property timeRange @abstract The time range represented by the caption group. @discussion If there are no captions in the group (i.e. the value of the captions property is an empty array), then the value of this property represents the time range of a sequence where no captions are present.
     */
    timeRange(): CMTimeRange;
    /**
     * @property captions @abstract An array of AVCaption objects. @discussion If the value is an empty array, the caption group represents a region of the timeline in which there are no captions.
     */
    captions(): _NSArray;
}
