import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSError } from "../Foundation/NSError.js";
import type { _NSObject } from "../Foundation/NSObject.js";
export declare class _SHMediaLibrary extends _NSObject {
    static alloc(): _SHMediaLibrary;
    static new(): _SHMediaLibrary;
    init(): _SHMediaLibrary;
    /** An instance of the user's default Shazam library. */
    static defaultLibrary(): _SHMediaLibrary;
    /**
     * Adds an array of songs to the user's Shazam library. > Important: > You can call this method from synchronous code using a completion handler, as shown on this page, or you can call it as an asynchronous method that has the following declaration: > > ```swift > func add(_ mediaItems: [SHMediaItem]) async throws > ``` > > For information about concurrency and asynchronous code in Swift, see <doc ://com.apple.documentation/documentation/swift/calling-objective-c-apis-asynchronously>. Saving a song to the user's Shazam library also saves the following media item properties and their associated values: - ``SHMediaItemProperty/shazamID`` - ``SHMediaItemProperty/title`` - ``SHMediaItemProperty/subtitle``, or ``SHMediaItemProperty/artist`` if the subtitle is unavailable > Note: > Saving to the user's Shazam library works only for songs with a valid ``SHMediaItemProperty/shazamID``. - Parameters: - mediaItems: An array of media items that represents the songs to add to the library. - completionHandler: The system calls this completion block after adding the media items to the library. This block takes the following parameters: - term `error`: An error object if a problem occurs when adding any item; otherwise, `nil`.
     */
    addMediaItems$completionHandler$(mediaItems: _NSArray, completionHandler: ((error: _NSError) => void) | null): void;
}
