UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

29 lines (28 loc) 1.54 kB
import { EnvelopeOptions } from 'tone'; import { ToneAudioNodeOptions, ToneAudioNode } from 'tone/build/esm/core/context/ToneAudioNode'; import { Instrument } from 'tone/build/esm/instrument/Instrument'; import { OmniOscillatorSynthOptions } from 'tone/build/esm/source/oscillator/OscillatorInterface'; import { Source } from 'tone/build/esm/source/Source'; import { UserMedia } from 'tone/build/esm/source/UserMedia'; export type SourceType = Source<any> | UserMedia; export type InstrumentType = Instrument<any>; export type EnvelopeParamsType = Partial<Omit<EnvelopeOptions, keyof ToneAudioNodeOptions>>; export type OscillatorParamsType = Partial<OmniOscillatorSynthOptions>; export declare class AudioBuilder { private _source; private _instrument; private _audioNode; private _oscillatorParams; private _envelopeParams; setAudioNode(inputNode: ToneAudioNode | undefined): void; audioNode(): ToneAudioNode<import("tone/build/esm/core/context/ToneWithContext").ToneWithContextOptions> | undefined; setSource(source: SourceType | undefined): void; source(): SourceType | undefined; setInstrument(instrument: InstrumentType | undefined): void; instrument(): InstrumentType | undefined; setOscillatorParams(params: OscillatorParamsType | undefined): void; oscillatorParams(): OscillatorParamsType | undefined; setEnvelopeParams(params: EnvelopeParamsType | undefined): void; envelopeParams(): Partial<Omit<EnvelopeOptions, "context">> | undefined; clone(): AudioBuilder; }