import '../../../globals.js';
import SoundGenerator, { SoundGeneratorOptions } from './SoundGenerator.js';
type SelfOptions = {
    initialFrequency?: number;
    initialWaveformType?: OscillatorType;
};
export type OscillatorSoundGeneratorOptions = SelfOptions & SoundGeneratorOptions;
declare class OscillatorSoundGenerator extends SoundGenerator {
    private oscillatorNode;
    private readonly frequency;
    private waveformType;
    constructor(providedOptions?: OscillatorSoundGeneratorOptions);
    /**
     * Starts the oscillator. The name 'play' is used because this is commonly used in the tambo library for sound
     * generators. If the oscillator is already playing, this has no effect.
     */
    play(): void;
    /**
     * Stops the oscillator. If the oscillator isn't playing, this has no effect.
     */
    stop(): void;
    /**
     * Sets the waveform type.
     */
    setWaveformType(waveformType: OscillatorType): void;
}
export default OscillatorSoundGenerator;
//# sourceMappingURL=OscillatorSoundGenerator.d.ts.map