import { IAudioNode, IAudioNodeRenderer, IMinimalOfflineAudioContext, IOfflineAudioContext } from '../interfaces';
import { TContext } from './context';
import { TNativeAudioNode } from './native-audio-node';

export type TAddAudioNodeConnectionsFunction = <T extends TContext>(
    audioNode: IAudioNode<T>,
    audioNodeRenderer: T extends IMinimalOfflineAudioContext | IOfflineAudioContext ? IAudioNodeRenderer<T, IAudioNode<T>> : null,
    nativeAudioNode: TNativeAudioNode
) => void;
