import type { NobjcObject } from "objc-js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _BELayerHierarchyHandle } from "./BELayerHierarchyHandle.js";
import type { _CALayer } from "../QuartzCore/CALayer.js";
export declare class _BELayerHierarchy extends _NSObject {
    static alloc(): _BELayerHierarchy;
    static new(): _BELayerHierarchy;
    init(): _BELayerHierarchy;
    /** may fail if a connection to the render server cannot be established */
    static layerHierarchyWithError$(error: NobjcObject | null): _BELayerHierarchy | null;
    /** invalidate must be called before this layer hierarchy is disposed of */
    invalidate(): void;
    /**
     * a reference to this `BELayerHierarchy` for use with `BELayerHierarchyHostingView`
     */
    handle(): _BELayerHierarchyHandle;
    /** the root layer of this hierarchy */
    layer(): _CALayer;
    setLayer$(value: _CALayer): void;
}
