import { ComponentConstructor } from "../../../typing/component";
import { Container } from "./container";
/**
 * Create a component container.
 */
export declare class ComponentContainer<T extends ComponentConstructor = ComponentConstructor> {
    private component;
    protected _container: Container;
    get container(): Container;
    constructor(component: T, parentContainer?: Container);
    bindInput(input: any): void;
    bindConfig(config: any): void;
    protected bindComponent(componentType: ComponentConstructor): void;
    /**
     * Gets instance of component from this container.
     * @returns
     */
    get(): InstanceType<T>;
}
