import { type Binding } from "./references";
export type BindingPropTree = {
    binding: Binding;
    props: {
        [prop: string]: BindingPropTree;
    } | undefined;
    rest: BindingPropTree | undefined;
};
export declare const kDirectContent: unique symbol;
declare module "@marko/compiler/dist/types" {
    interface NodeExtra {
        [kDirectContent]?: true;
    }
}
export declare function getBindingPropTree(binding: Binding): BindingPropTree | undefined;
export declare function getKnownFromPropTree(propTree: BindingPropTree | true, name: string): BindingPropTree | true | undefined;
export declare function getAllKnownPropNames(propTree: BindingPropTree): string[];
export declare function hasAllKnownProps(propTree: BindingPropTree): boolean | undefined;
