import { Functional } from '../../../../Class/Functional';
import { Done } from '../../../../Class/Functional/Done';
import { Unit } from '../../../../Class/Unit';
import { System } from '../../../../system';
import { UnitBundle } from '../../../../types/UnitBundle';
export interface I<T> {
    unit: Unit;
    deep: boolean;
}
export interface O<T> {
    class: UnitBundle<any>;
}
export default class Class<T> extends Functional<I<T>, O<T>> {
    constructor(system: System);
    f({ unit, deep }: I<T>, done: Done<O<T>>): void;
}
