/**
 * Minimal ambient declaration for libass-wasm (SubtitlesOctopus). The
 * package ships JS only, no .d.ts, so we declare the surface we actually
 * use.
 */
declare module 'libass-wasm' {
  export interface SubtitlesOctopusOptions {
    video: HTMLVideoElement
    canvas: HTMLCanvasElement
    subUrl?: string
    subContent?: string
    workerUrl: string
    legacyWorkerUrl?: string
    fonts?: string[]
    availableFonts?: Record<string, string>
    fallbackFont?: string
    targetFps?: number
    timeOffset?: number
    onReady?: () => void
    onError?: (err: unknown) => void
  }
  export default class SubtitlesOctopus {
    constructor(opts: SubtitlesOctopusOptions)
    setTrackByUrl(url: string): void
    freeTrack(): void
    setCurrentTime(time: number): void
    resize(width: number, height: number): void
    dispose(): void
  }
  export { SubtitlesOctopus }
}
