/** * Public type declarations for the audio module. Kept in a dedicated * file so the runtime entry point (`audio.ts`) stays focused on * implementation; consumers can import types from * `me.audio` exactly as before. */ /** * Sound asset descriptor passed to `audio.load`. * @category Audio */ export interface SoundAsset { /** Logical name used to play / stop / reference the sound later. */ name: string; /** * Base path / prefix for the audio resource. The loader builds the * full URL as `${src}${name}.${ext}` for each format configured by * `audio.init()`, so `src` is typically a directory ending in `/`. * Data URLs (`data:audio/...`) are used as-is and skip the prefix * + extension construction. */ src: string; /** Begin playback immediately on load. Defaults to `false`. */ autoplay?: boolean; /** Loop playback when the clip ends. Defaults to `false`. */ loop?: boolean; /** * Stream the resource instead of fully decoding upfront — preferred * for long music tracks. Defaults to `false`. */ stream?: boolean; /** * Force the HTML5 `