import { AnyCell, Cell } from './reactive';
import { ComponentLike } from './types';

export { isTag, RENDERING_CONTEXT_PROPERTY, RENDERED_NODES_PROPERTY, COMPONENT_ID_PROPERTY, ADDED_TO_TREE_FLAG, type ComponentLike, type GenericReturnType, type RenderableElement, type ComponentRenderTarget, type Slots, type DOMApi, type Props, type TOC, } from './types';
export { TREE, CHILD, PARENT, cId, releaseId, addToTree, } from './tree';
export declare const $template: "template";
export declare const $args: "args";
export declare const $_debug_args: "_debug_args";
export declare const $fwProp: "$fw";
export declare const noop: () => void;
export declare const IN_SSR_ENV: boolean;
export declare const $DEBUG_REACTIVE_CONTEXTS: string[];
export declare function debugContext(debugName?: string): string;
export declare function isArray(value: unknown): value is Array<any>;
export declare function isFn(value: unknown): value is Function;
export declare function isEmpty(value: unknown): value is null | undefined;
export declare function isPrimitive(value: unknown): value is string | number;
export declare function isTagLike(child: unknown): child is AnyCell;
export declare const BOUNDS: WeakMap<ComponentLike, (HTMLElement | Comment)[]>;
export declare function getBounds(ctx: ComponentLike): Array<HTMLElement | Comment>;
export declare function setBounds(component: ComponentLike): void;
type BasicListComponentLike = {
    keyMap: Map<string, unknown>;
    indexMap: Map<string, number>;
};
type GenericReturnTypeLike = ComponentLike | Node | Array<ComponentLike | Node> | null | null[];
export declare const LISTS_FOR_HMR: Set<BasicListComponentLike>;
export declare const IFS_FOR_HMR: Set<() => {
    item: GenericReturnTypeLike;
    set: (item: GenericReturnTypeLike) => void;
}>;
export declare const COMPONENTS_HMR: WeakMap<ComponentLike | ObjectConstructor, Set<{
    parent: any;
    instance: ComponentLike;
    args: Record<string, unknown>;
    tags: Cell[];
}>>;
