import { InstrumentGeneratorParams, NonRangeGeneratorKey, ValueGeneratorKey } from "./Generator.js"; import { ModulatorList, SampleHeader } from "./Structs.js"; import { AudioData } from "./AudioData.js"; export declare function timecentToSecond(value: number): number; export declare class Voice { key: number; generators: InstrumentGeneratorParams; modulators: ModulatorList[]; sample: AudioData; sampleHeader: SampleHeader; controllerToDestinations: Map>; destinationToModulators: Map; constructor(key: number, generators: InstrumentGeneratorParams, modulators: ModulatorList[], sample: AudioData, sampleHeader: SampleHeader); setControllerToDestinations(): void; setDestinationToModulators(): void; getModHold(holdModEnv: number, keynumToModEnvHold: number): number; getModDecay(decayModEnv: number, keynumToModEnvDecay: number): number; getVolHold(holdVolEnv: number, keynumToVolEnvHold: number): number; getVolDecay(decayVolEnv: number, keynumToVolEnvDecay: number): number; getPlaybackRate(generators: InstrumentGeneratorParams): number; getDetune(generators: InstrumentGeneratorParams): number; transformParams(controllerType: number, controllerState: Float32Array): Partial>; transformAllParams(controllerState: Float32Array): InstrumentGeneratorParams; clamp(key: NonRangeGeneratorKey, generators: InstrumentGeneratorParams): number; voiceHandlers: { [K in ValueGeneratorKey]: (params: Partial, generators: InstrumentGeneratorParams) => void; }; getParams(controllerType: number, controllerState: Float32Array): Partial; getAllParams(controllerValues: Float32Array): VoiceParams; } export interface VoiceParams { start: number; end: number; loopStart: number; loopEnd: number; modLfoToPitch: number; vibLfoToPitch: number; modEnvToPitch: number; initialFilterFc: number; initialFilterQ: number; modLfoToFilterFc: number; modEnvToFilterFc: number; modLfoToVolume: number; chorusEffectsSend: number; reverbEffectsSend: number; pan: number; delayModLFO: number; freqModLFO: number; delayVibLFO: number; freqVibLFO: number; modDelay: number; modAttack: number; modHold: number; modDecay: number; modSustain: number; modRelease: number; volDelay: number; volAttack: number; volHold: number; volDecay: number; volSustain: number; volRelease: number; instrument: number; initialAttenuation: number; playbackRate: number; detune: number; sampleID: number; sample: AudioData; sampleRate: number; sampleName: string; sampleModes: number; exclusiveClass: number; } //# sourceMappingURL=Voice.d.ts.map