UNPKG

@pixelation/engine

Version:
39 lines (38 loc) 1.07 kB
export type Track = "main" | "sfx" | "speech" | "music"; export type Strategy = "once" | "once-restart" | "loop" | "loop-restart"; export interface AudioAssetOptions { track?: Track; strategy?: Strategy; } export declare class AudioAsset { audio: Audio; raw: ArrayBuffer; options: AudioAssetOptions; ready: boolean; queued: boolean; playing: boolean; duration: number; position: number; started: number; source: AudioBufferSourceNode; constructor(audio: Audio, raw: ArrayBuffer, options?: AudioAssetOptions); destroy(): void; update(): void; clone(): AudioAsset; play(): void; stop(): void; } export declare class Audio { context: AudioContext; main: GainNode; sfx: GainNode; speech: GainNode; music: GainNode; assets: AudioAsset[]; constructor(); asset(buffer: ArrayBuffer, options?: AudioAssetOptions): AudioAsset; volume(track: Track, value: number): void; once(asset: AudioAsset): void; play(asset: AudioAsset): AudioAsset; update(): void; }