import { Done } from '../../../../../Class/Functional/Done';
import { Fail } from '../../../../../Class/Functional/Fail';
import { Holder } from '../../../../../Class/Holder';
import { System } from '../../../../../system';
import { Component_ } from '../../../../../types/interface/Component';
import { OB } from '../../../../../types/interface/OB';
export type I<T> = {
    observer: OB;
    component: Component_;
};
export type O<T> = {
    entry: T[];
};
export default class Observe<T> extends Holder<I<T>, O<T>> {
    private _unlisten;
    constructor(system: System);
    f({ observer, component }: I<T>, done: Done<O<T>>, fail: Fail): Promise<void>;
    d(): void;
}
