modern-canvas
Version:
A JavaScript WebGL rendering engine. only the ESM.
53 lines (52 loc) • 1.66 kB
TypeScript
import type { IPlayOptions } from '../interfaces';
import type { AudioProcessor } from '../pipeline';
import type { WebAudio } from './WebAudio';
import { Observable } from 'modern-idoc';
export declare class WebSound extends Observable {
protected _audio: WebAudio | null;
protected _sourceNode: AudioBufferSourceNode | null;
protected _gain: GainNode | null;
/** Progress */
protected _progress: number;
get progress(): number;
/** Paused */
protected _pausedReal: boolean;
protected _paused: boolean;
get paused(): boolean;
set paused(val: boolean);
/** Volume */
protected _volume: number;
get volume(): number;
set volume(val: number);
/** PlaybackRate */
protected _playbackRate: number;
get playbackRate(): number;
set playbackRate(val: number);
/** Loop */
protected _loop: boolean;
get loop(): boolean;
set loop(val: boolean);
/** Muted */
protected _muted: boolean;
get muted(): boolean;
set muted(val: boolean);
protected _duration: number;
protected _end: number;
protected _elapsed: number;
protected _lastUpdate: number;
/** Processors */
protected _processors: AudioProcessor[];
init(audio: WebAudio): this;
protected _now(): number;
play(options?: IPlayOptions): void;
protected _stop(): void;
stop(): void;
protected _update(force?: boolean): void;
refresh(): void;
applyProcessors(): void;
refreshPaused(): void;
protected _onComplete: () => void;
protected _updateListener: () => void;
protected _enableTicker(enabled: boolean): void;
destroy(): void;
}