import { Element_ } from '../../../../Class/Element';
import { Unit } from '../../../../Class/Unit';
import { System } from '../../../../system';
import { C } from '../../../../types/interface/C';
import { Component_ } from '../../../../types/interface/Component';
import { WP } from '../../../../types/interface/WP';
import { UnitBundle } from '../../../../types/UnitBundle';
export type I = {
    component: UnitBundle;
};
export type O = {
    parent: C;
};
export default class Wrap extends Element_<I, O> implements WP {
    private _Container;
    private _child_container;
    private _parent_container;
    private _parent_child_container;
    constructor(system: System);
    private _rewrap;
    appendChild(Class: UnitBundle<Component_>): number;
    removeChild(at: number): Component_;
    registerParentRoot(component: Component_, subComponentId: string, slotName: string): void;
    unregisterParentRoot(component: Unit & C, subComponentId: string, emit?: boolean): void;
    appendParentChild(component: Component_, slotName: string): void;
    removeParentChild(component: Component_): void;
    refParentRootContainer(at: number): Component_;
    refChildContainer(at: number): Component_;
    refParentChildContainer(at: number): Component_;
}
