import type { VNodeTypes, VNode, PropType, Component } from 'vue'; import type { SFCWithInstall, Data, SFCInstallWithContext } from './types'; export declare enum ShapeFlags { ELEMENT = 1, FUNCTIONAL_COMPONENT = 2, STATEFUL_COMPONENT = 4, COMPONENT = 6, TEXT_CHILDREN = 8, ARRAY_CHILDREN = 16, SLOTS_CHILDREN = 32, TELEPORT = 64, SUSPENSE = 128, COMPONENT_SHOULD_KEEP_ALIVE = 256, COMPONENT_KEPT_ALIVE = 512 } export declare const isElement: (vn: VNode) => boolean; export declare const isComponent: (vn: VNode, type?: VNodeTypes) => type is Component; export declare const isNamedComponent: (child: VNode, name: string) => boolean; export declare const isTextChildren: (child: VNode, children: VNode['children']) => children is string; export declare const isArrayChildren: (vn: VNode, children: VNode['children']) => children is VNode[]; export declare const isSlotsChildren: (vn: VNode, children: VNode['children']) => children is Readonly<{ [name: string]: import("vue").Slot | undefined; }>; export declare const getFirstComponent: (children: VNode[] | undefined) => VNode | undefined; export declare const getAllElements: (children: VNode[] | undefined, includeText?: boolean) => VNode[]; export declare const getChildrenArray: (vn: VNode) => VNode[] | undefined; export declare const getFirstElementFromVNode: (vn: VNode) => HTMLElement | undefined; export declare const getFirstElementFromChildren: (children: VNode[] | undefined) => HTMLElement | undefined; export declare const mergeFirstChild: (children: VNode[] | undefined, extraProps: Data | ((vn: VNode) => Data)) => boolean; export declare const getFirstElement: (vn: VNode | VNode[]) => HTMLElement | null; export declare const withInstall: >(main: T, extra?: E | undefined) => SFCWithInstall & E; export declare const withInstallFunction: (fn: T, name: string) => SFCInstallWithContext; export declare const withNoopInstall: (component: T) => SFCWithInstall; export declare const definePropType: (val: any) => PropType; export declare const getComponentsFromVNode: (vn: VNode, name: string) => number[]; export declare const getComponentsFromChildren: (children: VNode[] | undefined, name: string) => number[];