import { Done } from '../../../../../Class/Functional/Done';
import { Semifunctional } from '../../../../../Class/Semifunctional';
import { System } from '../../../../../system';
import { Callback } from '../../../../../types/Callback';
import { CSOpt } from '../../../../../types/interface/async/$CS';
import { CS } from '../../../../../types/interface/CS';
import { MS } from '../../../../../types/interface/MS';
import { Unlisten } from '../../../../../types/Unlisten';
export interface I {
    source: CS;
    opt: CSOpt;
    stop: any;
}
export interface O {
    stream: MS;
}
export default class CaptureStream extends Semifunctional<I, O> {
    __: string[];
    private _stream;
    constructor(system: System);
    f({ source, opt }: I, done: Done<O>): Promise<void>;
    onIterDataInputData(name: string, data: any): void;
    mediaStream(callback: Callback<MediaStream>): Unlisten;
}
