import type { HTMLAttributes } from 'react'; export type LiveWaveformProps = HTMLAttributes & { /** When true, the waveform reads from the analyser and animates. */ active?: boolean; /** When true, hold the waveform and show a processing shimmer. */ loading?: boolean; /** Externally-owned analyser node (mic stream lives in useVoiceInput). */ analyser?: AnalyserNode | null; barWidth?: number; barGap?: number; barRadius?: number; /** Minimum bar height in px. */ barHeight?: number; /** CSS color string for bars. Falls back to computed text color. */ barColor?: string; fadeEdges?: boolean; fadeWidth?: number; height?: string | number; sensitivity?: number; /** How many ms between sampling new bars (controls scroll speed). */ updateRate?: number; }; /** * Canvas-based microphone waveform visualizer (scrolling mode). * * New amplitude samples enter at the right edge and scroll leftward as a * continuous stream, fading in on the right and out on the left. The mic * stream and AudioContext are owned externally (see useVoiceInput) and * passed in via the `analyser` prop to avoid duplicate getUserMedia calls. */ export declare function LiveWaveform({ active, loading, analyser, barWidth, barGap, barRadius, barHeight: baseBarHeight, barColor, fadeEdges, fadeWidth, height, sensitivity, updateRate, className, ...props }: LiveWaveformProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=LiveWaveform.d.ts.map