import { WebPlugin } from '@capacitor/core';
import type { AudioInputPlugin, AudioInputOptions } from './definitions';
/**
 * Web implementation of AudioInput plugin
 * Uses Web Audio API for browser-based audio capture
 */
export declare class AudioInputWeb extends WebPlugin implements AudioInputPlugin {
    private audioContext;
    private mediaStream;
    private scriptProcessor;
    private micGainNode;
    private capturing;
    private hasMicrophonePermission;
    private options;
    initialize(options: AudioInputOptions): Promise<void>;
    checkMicrophonePermission(): Promise<{
        granted: boolean;
    }>;
    getMicrophonePermission(): Promise<{
        granted: boolean;
    }>;
    start(options?: AudioInputOptions): Promise<void>;
    stop(): Promise<{
        fileUrl?: string;
    }>;
    isCapturing(): Promise<{
        capturing: boolean;
    }>;
    getCfg(): Promise<AudioInputOptions>;
    /**
     * Process audio samples according to options
     */
    private processSamples;
    private emitStateChange;
    private emitError;
    private warnUnsupportedOptions;
}
//# sourceMappingURL=web.d.ts.map