import {EntityComponentDataset} from "./EntityComponentDataset";

interface Type<T> extends Function {
    new(...args: any[]): T;
}

export class EntityObserver {
    constructor(componentTypes: Type<any>[], completedCallback: (...args: any) => any, brokenCallback: (...args: any) => any, thisArg?: any)

    connect(dataset: EntityComponentDataset): void

    disconnect(): void
}
