Skip to content

Legato Facade

Legato is exported as LegatoApi & LegatoEventApi and combines audioPlayer + mediaSession with a single addListener signature over LegatoEventName.

In plugin.ts, Legato is composed as:

export const Legato = {
...audioPlayer,
...mediaSession,
addListener: addLegatoListener,
removeAllListeners: sharedDelegate.removeAllListeners,
};
SurfaceIncluded
Playback setup, queue, transport, queries, capabilities✅ from audioPlayer
Media-session listener surface✅ from mediaSession
Unified listener (LegatoEventName)✅ via Legato.addListener

Legato.addListener delegates to LegatoModule.addListener, like the namespace-specific helpers.

const h = await Legato.addListener('playback-state-changed', ({ state }) => {
// sync your UI store
});
await h.remove();