UNPKG

sound-visualizer

Version:
27 lines (24 loc) 941 B
import { DrawContinuousOptions } from '../continuous/draw/options.js'; import { DrawCurrentOptions } from '../current/draw/options.js'; import './draw/options.js'; /** * The type returned by both `currentVisualizer` and `continuousVisualizer`. */ type VisualizerFunctions = { start: () => void; stop: () => void; reset: () => void; }; /** * The type of the `currentVisualizer` function. */ type CurrentVisualizer = (audio: MediaStream, canvas: HTMLCanvasElement, drawOptions?: DrawCurrentOptions) => VisualizerFunctions; /** * The type of the `continuousVisualizer` function. */ type ContinuousVisualizer = (audio: MediaStream, canvas: HTMLCanvasElement, drawOptions?: DrawContinuousOptions) => VisualizerFunctions; /** * A union type matching both visualizer functions. */ type Visualizer = ContinuousVisualizer | CurrentVisualizer; export { ContinuousVisualizer, CurrentVisualizer, Visualizer, VisualizerFunctions };