import type { _NSDictionary } from "../Foundation/NSDictionary.js";
import type { _NSError } from "../Foundation/NSError.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _NSURL } from "../Foundation/NSURL.js";
import type { _RPBroadcastControllerDelegate } from "./RPBroadcastControllerDelegate.js";
export declare class _RPBroadcastController extends _NSObject {
    static alloc(): _RPBroadcastController;
    static new(): _RPBroadcastController;
    init(): _RPBroadcastController;
    /**
     * @abstract Start the broadcast. @param error Optional error in the RPRecordingErrorCode domain. A nil error signifies that broadcasting has started successfully.
     */
    startBroadcastWithHandler$(handler: ((error: _NSError) => void) | null): void;
    /** @abstract Pause the broadcast. The broadcast will pause immediately. */
    pauseBroadcast(): void;
    /** @abstract Resumes the broadcast. The broadcast will resume immediately. */
    resumeBroadcast(): void;
    /**
     * @abstract Finish the broadcast. @param error Optional error in the RPRecordingErrorCode domain. A nil error signifies that broadcasting has finished successfully.
     */
    finishBroadcastWithHandler$(handler: ((error: _NSError) => void) | null): void;
    /** @abstract Indicates whether the controller is currently broadcasting. */
    broadcasting(): boolean;
    /** @abstract Indicates whether the controller is currently paused. */
    paused(): boolean;
    /**
     * @abstract URL that can be used to redirect the user to the on-going or completed broadcast.
     */
    broadcastURL(): _NSURL;
    /**
     * @abstract Dictionary updated by the service during a broadcast. The keys and values of this dictionary are defined by the broadcast service. KVO observable.
     * @deprecated No longer supported
     */
    serviceInfo(): _NSDictionary | null;
    /**
     * @abstract Delegate which will be notified when an error occurs during broadcast.
     * @deprecated No longer supported
     */
    delegate(): _RPBroadcastControllerDelegate | null;
    setDelegate$(value: _RPBroadcastControllerDelegate | null): void;
    /**
     * @abstract bundleID of the broadcast extension which was selected by the user.
     * @deprecated No longer supported
     */
    broadcastExtensionBundleID(): _NSString;
}
