import IObservableChange from '../interfaces/IObservableChange'; export interface IOutputClass { new (data?: T): T & { emit(): void; }; emit(data: T): void; Type: T & { emit(): void; }; } interface IInternalOutputOptions { outputs: TOutput[]; onNewOutput(index: number): any; onOutputEmitted(index: number, output: TOutput): any; onOutputChanges(index: number, output: TOutput, changes: IObservableChange[]): void; } export default function createOutputGenerator(internal: IInternalOutputOptions): IOutputClass; export {};