import type { NobjcObject } from "objc-js";
import type { _AVAssetTrack } from "./AVAssetTrack.js";
import type { _AVAudioMixInputParameters } from "./AVAudioMixInputParameters.js";
import type { CMTime } from "../structs/CMTime.js";
import type { CMTimeRange } from "../structs/CMTimeRange.js";
import type { AVAudioTimePitchAlgorithm } from "./AVAudioTimePitchAlgorithm.js";
export declare class _AVMutableAudioMixInputParameters extends _AVAudioMixInputParameters {
    static alloc(): _AVMutableAudioMixInputParameters;
    static new(): _AVMutableAudioMixInputParameters;
    init(): _AVMutableAudioMixInputParameters;
    /**
     * Returns a new instance of AVMutableAudioMixInputParameters with no volume ramps and a trackID set to the specified track's trackID. A reference to an AVAssetTrack.
     */
    static audioMixInputParametersWithTrack$(track: _AVAssetTrack | null): _AVMutableAudioMixInputParameters;
    /**
     * Returns a new instance of AVMutableAudioMixInputParameters with no volume ramps and a trackID initialized to kCMPersistentTrackID_Invalid.
     */
    static audioMixInputParameters(): _AVMutableAudioMixInputParameters;
    /**
     * Sets a volume ramp to apply during the specified timeRange. This method throws an exception if the time range's start or duration is not numeric.
     */
    setVolumeRampFromStartVolume$toEndVolume$timeRange$(startVolume: number, endVolume: number, timeRange: CMTimeRange): void;
    /**
     * Sets the value of the audio volume at a specific time. This method throws an exception if the time is not numeric.
     */
    setVolume$atTime$(volume: number, time: CMTime): void;
    /**
     * Indicates the trackID of the audio track to which the parameters should be applied.
     */
    trackID(): number;
    setTrackID$(value: number): void;
    /**
     * Indicates the processing algorithm used to manage audio pitch at varying rates and for scaled audio edits. Constants for various time pitch algorithms, e.g. AVAudioTimePitchSpectral, are defined in AVAudioProcessingSettings.h. Can be nil, in which case the audioTimePitchAlgorithm set on the AVPlayerItem, AVAssetExportSession, or AVAssetReaderAudioMixOutput on which the AVAudioMix is set will be used for the associated track.
     */
    audioTimePitchAlgorithm(): AVAudioTimePitchAlgorithm | null;
    setAudioTimePitchAlgorithm$(value: AVAudioTimePitchAlgorithm | null): void;
    /** Indicates the audio processing tap that will be used for the audio track. */
    audioTapProcessor(): NobjcObject;
    setAudioTapProcessor$(value: NobjcObject): void;
}
