import type { _NSObject } from "../Foundation/NSObject.js";
import type { _AVRoutingPlaybackParticipant } from "./AVRoutingPlaybackParticipant.js";
export declare class _AVRoutingPlaybackArbiter extends _NSObject {
    static alloc(): _AVRoutingPlaybackArbiter;
    static new(): _AVRoutingPlaybackArbiter;
    init(): _AVRoutingPlaybackArbiter;
    /** Returns the singleton playback arbiter instance. */
    static sharedRoutingPlaybackArbiter(): _AVRoutingPlaybackArbiter;
    /**
     * The participant that has priority to play audio when it's not possible to play multiple audio sources concurrently. This participant takes precedence over all other participants to play audio in non-mixable audio routes when concurrent audio playback isn't possible, and only a single participant can play audio. The system unmutes this participant's audio, and mutes the audio of all other participants. By default, this value is `nil`. When the current preferred participant finishes, the system sets this value to `nil`. If this value is `nil`, the arbiter doesn't impose any priority on the participants, and the participant that's unmuted is based on the existing selection mechanism.
     */
    preferredParticipantForNonMixableAudioRoutes(): _AVRoutingPlaybackParticipant;
    setPreferredParticipantForNonMixableAudioRoutes$(value: _AVRoutingPlaybackParticipant): void;
    /**
     * The participant that has priority to play on external playback interfaces. This participant takes precedence over all others to play on external playback interfaces (specifically for AirPlay video and Apple Lightning Digital AV Adapters). By default, this value is `nil`. When the value is `nil`, the arbiter doesn't impose any priority on the participants, and the participant that is selected to playback externally falls back to the existing selection mechanism.
     */
    preferredParticipantForExternalPlayback(): _AVRoutingPlaybackParticipant | null;
    setPreferredParticipantForExternalPlayback$(value: _AVRoutingPlaybackParticipant | null): void;
}
