import { MaybeRef } from 'vue';
export declare function useMediaSession(media?: MaybeRef<HTMLMediaElement | undefined>, init?: MaybeRef<MediaMetadataInit | undefined>): {
    status: {
        value: "ended" | "error" | "playing" | "loading" | "paused";
        icon: import("itlab-icons").LIcon;
        label: string;
    };
    controls: {
        play: () => Promise<void>;
        pause: () => void;
        togglePlay: () => Promise<void>;
    };
    time: {
        duration: number;
        buffered: number;
        currentTime: number;
        seekTime: number;
        seek: (amount: number) => void;
        seekEnded: () => void;
        format: (seconds: MaybeRef<number>) => string;
        formatted: string;
    };
    playbackRate: number;
    volume: {
        muted: boolean;
        volume: number;
        format: (volume: MaybeRef<number>) => string;
        formatted: string;
    };
    metadata: void;
};
export type MediaSession = ReturnType<typeof useMediaSession>;
