import { MutableObservableOption, Option, Terminable } from "@opendaw/lib-std";
import { AudioUnitBox, CaptureAudioBox } from "@opendaw/studio-boxes";
import { Capture } from "./Capture";
import { CaptureDevices } from "./CaptureDevices";
import { MonitoringMode } from "./MonitoringMode";
export declare class CaptureAudio extends Capture<CaptureAudioBox> {
    #private;
    constructor(manager: CaptureDevices, audioUnitBox: AudioUnitBox, captureAudioBox: CaptureAudioBox);
    get isMonitoring(): boolean;
    get monitoringMode(): MonitoringMode;
    set monitoringMode(value: MonitoringMode);
    get gainDb(): number;
    get requestChannels(): Option<1 | 2>;
    set requestChannels(value: 1 | 2);
    get stream(): MutableObservableOption<MediaStream>;
    get streamDeviceId(): Option<string>;
    get label(): string;
    get deviceLabel(): Option<string>;
    get streamMediaTrack(): Option<MediaStreamTrack>;
    get outputNode(): Option<AudioNode>;
    get effectiveChannelCount(): number;
    prepareRecording(): Promise<void>;
    startRecording(): Terminable;
}
//# sourceMappingURL=CaptureAudio.d.ts.map