UNPKG

@layui/layui-vue

Version:

a component library for Vue 3 base on layui-vue

35 lines (34 loc) 1.47 kB
import type { 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 kebabCase(key: string): string; export declare const flattedVNode: (children: VNode[]) => VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any; }>[]; /** * 将props对象的key从kebab-case转换为camelCase * @param props props集合 */ export declare const normalizeProps: <T extends Record<string, any>>(props: T) => T;