export interface MediaMetadata { title: string; artist?: string; album?: string; albumArtist?: string; duration?: number; artworkUrl?: string; artworkData?: string; } export declare enum PlaybackStatus { Playing = "playing", Paused = "paused", Stopped = "stopped" } export declare enum RepeatMode { None = "none", Track = "track", List = "list" } export interface PlaybackInfo { status: PlaybackStatus; position: number; shuffle: boolean; repeatMode: RepeatMode; playbackRate: number; } export declare enum MediaControlEventType { Play = "play", Pause = "pause", PlayPause = "playPause", Stop = "stop", Next = "next", Previous = "previous", FastForward = "fastForward", Rewind = "rewind", SeekTo = "seekTo", SetPosition = "setPosition", SetPlaybackRate = "setPlaybackRate" } export interface MediaControlEvent { eventType: MediaControlEventType; timestamp: number; data?: any; } export declare function initializeSession(appId: string, appName: string): Promise; export declare function setMetadata(metadata: MediaMetadata): Promise; export declare function setPlaybackInfo(info: PlaybackInfo): Promise; export declare function setPlaybackStatus(status: PlaybackStatus): Promise; export declare function setPosition(position: number): Promise; export declare function clearMetadata(): Promise; export declare function getMetadata(): Promise; export declare function getPlaybackInfo(): Promise; export declare function getPlaybackStatus(): Promise; export declare function getPosition(): Promise; export declare function isEnabled(): Promise; export declare class MediaControls { private initialized; initialize(appId: string, appName: string): Promise; updateNowPlaying(metadata: MediaMetadata, info?: Partial): Promise; play(): Promise; pause(): Promise; stop(): Promise; togglePlayPause(): Promise; next(): Promise; previous(): Promise; setPosition(position: number): Promise; updatePosition(position: number): Promise; updatePlaybackStatus(status: PlaybackStatus): Promise; clearNowPlaying(): Promise; getMetadata(): Promise; getPlaybackInfo(): Promise; getPlaybackStatus(): Promise; getPosition(): Promise; isEnabled(): Promise; setEventHandler(handler: ((event: MediaControlEvent) => void) | null): void; clear(): Promise; } export declare const mediaControls: MediaControls;