import { Seconds } from "../core/type/Units"; import { Effect, EffectOptions } from "./Effect"; interface ReverbOptions extends EffectOptions { decay: Seconds; preDelay: Seconds; } /** * Simple convolution created with decaying noise. * Generates an Impulse Response Buffer * with Tone.Offline then feeds the IR into ConvolverNode. * Note: the Reverb will not make any sound until [[generate]] * has been invoked and resolved. * * Inspiration from [ReverbGen](https://github.com/adelespinasse/reverbGen). * Copyright (c) 2014 Alan deLespinasse Apache 2.0 License. * * @category Effect */ export declare class Reverb extends Effect { readonly name: string; /** * Convolver node */ private _convolver; /** * The duration of the reverb. * [[generate]] must be called in order to update the values. */ decay: Seconds; /** * The amount of time before the reverb is fully ramped in. * [[generate]] must be called in order to update the values. */ preDelay: Seconds; /** * @param decay The amount of time it will reverberate for. */ constructor(decay?: Seconds); constructor(options?: Partial); static getDefaults(): ReverbOptions; /** * Generate the Impulse Response. Returns a promise while the IR is being generated. * @return Promise which returns this object. */ generate(): Promise; dispose(): this; } export {};