28 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { Component, ComponentInternalInstance, VNode, VNodeTypes } from "vue";
 | ||
| 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<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
 | ||
| export declare const isArrayChildren: (vn: VNode, children: VNode["children"]) => children is VNode<import("vue").RendererNode, import("vue").RendererElement, {
 | ||
|     [key: string]: any;
 | ||
| }>[];
 | ||
| /**
 | ||
|  * 同时支持驼峰命名和破折号命名的插槽,示例:back-icon 和 backIcon
 | ||
|  * @param vm 组件实例
 | ||
|  * @param name 插槽名
 | ||
|  */
 | ||
| export declare function convertSlotName(vm: ComponentInternalInstance, name: string): string;
 | ||
| export declare function camelCase(str: string): string;
 | ||
| export declare function kebabCase(key: string): string;
 |