You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.1 KiB
33 lines
1.1 KiB
import * as BabelCore from '@babel/core';
|
|
import { Options } from '@vue/babel-plugin-resolve-type';
|
|
|
|
type State = {
|
|
get: (name: string) => any;
|
|
set: (name: string, value: any) => any;
|
|
opts: VueJSXPluginOptions;
|
|
file: BabelCore.BabelFile;
|
|
};
|
|
interface VueJSXPluginOptions {
|
|
/** transform `on: { click: xx }` to `onClick: xxx` */
|
|
transformOn?: boolean;
|
|
/** enable optimization or not. */
|
|
optimize?: boolean;
|
|
/** merge static and dynamic class / style attributes / onXXX handlers */
|
|
mergeProps?: boolean;
|
|
/** configuring custom elements */
|
|
isCustomElement?: (tag: string) => boolean;
|
|
/** enable object slots syntax */
|
|
enableObjectSlots?: boolean;
|
|
/** Replace the function used when compiling JSX expressions */
|
|
pragma?: string;
|
|
/**
|
|
* (**Experimental**) Infer component metadata from types (e.g. `props`, `emits`, `name`)
|
|
* @default false
|
|
*/
|
|
resolveType?: Options | boolean;
|
|
}
|
|
|
|
declare const _default: (api: object, options: VueJSXPluginOptions | null | undefined, dirname: string) => BabelCore.PluginObj<State>;
|
|
|
|
export { type VueJSXPluginOptions, _default as default };
|