import * as types from '@babel/types'; import { NodePath, Node } from '@babel/traverse'; import { ComponentInfo } from './type'; /** * Given a file path, parse the file code into an AST * @param path * @returns */ export declare const parseFile: (path: string) => { code: string; ast: Node; }; export declare const isTemplate: (ast: Node) => boolean; export declare const getSerializableName: (ast: Node) => string | null; /** * Given a file path, parse the file code and return the component informations * @param path * @returns */ export declare const parseComponent: (path: string) => ComponentInfo; /** * Given an import sepcifier node path, resolve and parse the import source, and return the module component informations * @param path * @returns */ export declare const resolveComponent: (path: NodePath, baseDirectory: string) => ComponentInfo; export declare const buildProps: (attributes: Array, children: types.Expression[]) => types.ObjectExpression;