/**
 * Compositor view represents a non-leaf node in the view hierarchy.
 *
 * @template {import("../spec/view.js").ContainerSpec} [TSpec=import("../spec/view.js").ContainerSpec]
 * @extends {View<TSpec>}
 */
export default class ContainerView<TSpec extends import("../spec/view.js").ContainerSpec = import("../spec/view.js").ContainerSpec> extends View<TSpec> {
    /**
     *
     * @param {TSpec} spec
     * @param {import("../types/viewContext.js").default} context
     * @param {ContainerView} layoutParent
     * @param {import("./view.js").default} dataParent
     * @param {string} name
     * @param {import("./view.js").ViewOptions} [options]
     */
    constructor(spec: TSpec, context: import("../types/viewContext.js").default, layoutParent: ContainerView, dataParent: import("./view.js").default, name: string, options?: import("./view.js").ViewOptions);
    initializeChildren(): Promise<void>;
    /**
     * Generates an auto name that is guaranteed to be unique within this container
     * for the given prefix. Intended for debugging-only default names.
     *
     * @param {string} prefix
     * @returns {string}
     */
    getNextAutoName(prefix: string): string;
    /**
     * @param {string[]} path An array of view names
     * @returns {View}
     */
    findDescendantByPath(path: string[]): View;
    /**
     *
     * @param {string} name
     */
    findDescendantByName(name: string): View<import("../spec/view.js").ViewSpec>;
    /**
     * @returns {IterableIterator<View>}
     */
    [Symbol.iterator](): IterableIterator<View>;
    #private;
}
import View from "./view.js";
//# sourceMappingURL=containerView.d.ts.map