import type { _AVPlayerItemLegibleOutput } from "./AVPlayerItemLegibleOutput.js";
import type { _AVPlayerItemOutputPushDelegate } from "./AVPlayerItemOutputPushDelegate.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { CMTime } from "../structs/CMTime.js";
export interface _AVPlayerItemLegibleOutputPushDelegate extends _AVPlayerItemOutputPushDelegate {
    /**
     * @method legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime: @abstract A delegate callback that delivers new textual samples. @param output The AVPlayerItemLegibleOutput source. @param strings An NSArray of NSAttributedString, each containing both the run of text and descriptive markup. @param nativeSamples An NSArray of CMSampleBuffer objects, for media subtypes included in the array passed in to -initWithMediaSubtypesForNativeRepresentation: @param itemTime The item time at which the strings should be presented. @discussion For each media subtype in the array passed in to -initWithMediaSubtypesForNativeRepresentation:, the delegate will receive sample buffers carrying data in its native format via the nativeSamples parameter, if there is media data of that subtype in the media resource. For all other media subtypes present in the media resource, the delegate will receive attributed strings in a common format via the strings parameter. See <CoreMedia/CMTextMarkup.h> for the string attributes that are used in the attributed strings.
     */
    legibleOutput$didOutputAttributedStrings$nativeSampleBuffers$forItemTime$?(output: _AVPlayerItemLegibleOutput, strings: _NSArray, nativeSamples: _NSArray, itemTime: CMTime): void;
}
