import { TemplateResult } from "../node_modules/lit-html/development/lit-html.js"; import { FrameRenderable, FrameState } from "../preview/FrameController.js"; import { EFMedia } from "./EFMedia.js"; import { Ref } from "../node_modules/lit-html/development/directives/ref.js"; //#region src/elements/EFAudio.d.ts declare const EFAudio_base: typeof EFMedia; declare class EFAudio extends EFAudio_base implements FrameRenderable { #private; /** * EFAudio only requires audio tracks - skip video track validation * to avoid unnecessary network requests to transcoding service. */ get requiredTracks(): "audio" | "video" | "both"; /** * Audio volume level (0.0 to 1.0) * @domAttribute "volume" */ volume: number; audioElementRef: Ref; protected updated(changedProperties: Map): void; render(): TemplateResult<1>; /** * Query readiness state for a given time. * @implements FrameRenderable */ getFrameState(_timeMs: number): FrameState; /** * Async preparation - waits for media engine to load. * @implements FrameRenderable */ prepareFrame(_timeMs: number, signal: AbortSignal): Promise; /** * Synchronous render - audio plays via HTMLAudioElement, no explicit render needed. * @implements FrameRenderable */ renderFrame(_timeMs: number): void; } declare global { interface HTMLElementTagNameMap { "ef-audio": EFAudio; } } //#endregion export { EFAudio }; //# sourceMappingURL=EFAudio.d.ts.map