declare type WaveEnvelope = {
    audioBufferSourceNode?: AudioBufferSourceNode | null;
    target: AudioNode;
    when: number;
    duration: number;
    cancel: () => void;
    pitch: number;
    preset: WavePreset;
};
declare type WaveZone = {
    keyRangeLow: number;
    keyRangeHigh: number;
    originalPitch: number;
    coarseTune: number;
    fineTune: number;
    loopStart: number;
    loopEnd: number;
    buffer?: AudioBuffer;
    sampleRate: number;
    delay?: number;
    ahdsr?: boolean | WaveAHDSR[];
    sample?: string;
    file?: string;
    sustain?: number;
};
declare type WavePreset = {
    zones: WaveZone[];
};
declare type WaveSlide = {
    when: number;
    delta: number;
};
declare type WaveAHDSR = {
    duration: number;
    volume: number;
};
declare type CachedPreset = {
    variableName: string;
    filePath: string;
};
declare type NumPair = number[];
declare type PresetInfo = {
    variable: string;
    url: string;
    title: string;
    pitch: number;
};
declare type ChordQueue = {
    when: number;
    destination: AudioNode;
    preset: WavePreset;
    pitch: number;
    duration: number;
    volume?: number;
    slides?: WaveSlide[];
};
//# sourceMappingURL=otypes.d.ts.map