UNPKG

1.26 kBTypeScriptView Raw
1import { Component, ConcreteComponent, transformVNodeArgs } from 'vue';
2type VNodeArgsTransformerFn = NonNullable<Parameters<typeof transformVNodeArgs>[0]>;
3type TransformVNodeArgs = Parameters<VNodeArgsTransformerFn>;
4type VNodeTransformerArgsType = TransformVNodeArgs[0];
5type InstanceArgsType = TransformVNodeArgs[1];
6type VNodeTransformerInputType = VNodeTransformerArgsType[0];
7type ExtractComponentTypes<T> = T extends ConcreteComponent ? T : never;
8type VNodeTransformerInputComponentType = ExtractComponentTypes<VNodeTransformerInputType>;
9export type VTUVNodeTypeTransformer = (inputType: VNodeTransformerInputComponentType, instance: InstanceArgsType) => VNodeTransformerInputComponentType;
10export declare const isTeleport: (type: any) => boolean;
11export declare const isKeepAlive: (type: any) => boolean;
12export interface RootComponents {
13 component?: Component;
14 functional?: Component;
15}
16export declare const isRootComponent: (rootComponents: RootComponents, type: VNodeTransformerInputComponentType, instance: InstanceArgsType) => boolean;
17export declare const createVNodeTransformer: ({ rootComponents, transformers }: {
18 rootComponents: RootComponents;
19 transformers: VTUVNodeTypeTransformer[];
20}) => VNodeArgsTransformerFn;
21export {};