import { Component, CSSProperties, RefObject } from 'react';
export declare enum VmShape {
    VM_STEPPED = 0,
    VM_FLAT = 1
}
declare type Props = {
    audioContext: AudioContext;
    src?: MediaStreamAudioSourceNode;
    width: number;
    height: number;
    enabled?: boolean;
    shape: VmShape;
    blocks?: number;
    style?: CSSProperties;
};
export declare class VolumeMeter extends Component<Props> {
    static defaultProps: {
        enabled: boolean;
        blocks: number;
    };
    canvas: RefObject<HTMLCanvasElement>;
    private getCanvasContext;
    componentDidMount(): void;
    componentDidUpdate(prevProps: Props): void;
    componentWillUnmount(): void;
    private changedSource;
    private start;
    private stop;
    private setupAnalyzer;
    private getVolume;
    private drawer;
    private rafId;
    private array;
    private analyser;
    render(): JSX.Element;
}
export {};
