import { $ } from '../../../../../../Class/$';
import { Functional } from '../../../../../../Class/Functional';
import { Done } from '../../../../../../Class/Functional/Done';
import { Fail } from '../../../../../../Class/Functional/Fail';
import { System } from '../../../../../../system';
import { AC } from '../../../../../../types/interface/AC';
import { AN } from '../../../../../../types/interface/AN';
import { MS } from '../../../../../../types/interface/MS';
import { ON } from '../../../../../../types/interface/ON';
export type I = {
    node: (AN | AC) & $;
    stream: MS;
    opt: OscillatorOptions;
};
export type O = {
    node: ON & AN;
};
export default class MediaStreamAudioSourceNode_ extends Functional<I, O> {
    private _node;
    constructor(system: System);
    private _destroy;
    f({ node: sourceNode, stream, opt }: I, done: Done<O>, fail: Fail): Promise<void>;
    d(): void;
}
