import { Callback } from '../types/Callback';
import { $Component } from '../types/interface/async/$Component';
import { AnimationSpec, C, ComponentSetup } from '../types/interface/C';
import { Component_ } from '../types/interface/Component';
import { UnitBundle } from '../types/UnitBundle';
import { Child } from './Child';
import { Children } from './Children';
export declare function $appendChild(component: Component_, Class: UnitBundle<Component_>, callback: Callback<number>): void;
export declare function $removeChild(component: Component_, { at }: {
    at: number;
}, callback: Callback<{
    specId: string;
}>): void;
export declare function $hasChild(component: Component_, { at }: {
    at: number;
}, callback: Callback<boolean>): void;
export declare function $child(component: Component_, { at }: {
    at: number;
}, callback: Callback<Child>): void;
export declare function $children(component: Component_, {}: {}, callback: Callback<Children>): void;
export declare function $refRoot(component: Component_, { at, _ }: {
    at: number;
    _: string[];
}): $Component;
export declare function $refChild(component: Component_, { at, _ }: {
    at: number;
    _: string[];
}): $Component;
export declare function $getAnimations(component: C, data: {}, callback: Callback<AnimationSpec[]>): void;
export declare function $getSetup(component: C, data: {}, callback: Callback<ComponentSetup>): void;
