import type { VueCompilerOptions, VueFile } from '@vue/language-core'; import type ts from 'typescript/lib/tsserverlibrary'; export declare function isMetaFileName(fileName: string): boolean; export declare function getMetaFileName(fileName: string): string; export declare function getMetaScriptContent(fileName: string, target: number): string; export declare function getExports(ts: typeof import('typescript/lib/tsserverlibrary'), program: ts.Program, typeChecker: ts.TypeChecker, componentPath: string, exportedType?: boolean): { symbolNode: ts.Expression; exports: ts.Symbol[]; exportedTypes: ts.Type[]; }; export declare function resolveDefaultOptionExpression(_default: ts.Expression, ts: typeof import('typescript/lib/tsserverlibrary')): ts.Expression; export declare function resolvePropsOption(ast: ts.SourceFile, props: ts.ObjectLiteralExpression, printer: ts.Printer | undefined, ts: typeof import('typescript/lib/tsserverlibrary')): Record; export declare function readTsComponentDefaultProps(lang: string, tsFileText: string, exportName: string, printer: ts.Printer | undefined, ts: typeof import('typescript/lib/tsserverlibrary')): Record; export declare function readVueComponentDefaultProps(vueSourceFile: VueFile, printer: ts.Printer | undefined, ts: typeof import('typescript/lib/tsserverlibrary'), vueCompilerOptions: VueCompilerOptions): Record; export declare function getTypeArguments(typeChecker: ts.TypeChecker, type: ts.Type | ts.TypeReference): readonly ts.Type[]; /** * Get function signatures */ export declare function getFunctionSignatures(typeChecker: ts.TypeChecker, symbol: ts.Symbol): readonly ts.Signature[]; /** * Whether it is a functional Vue component * @description * This can only be determined by the introduced type names, * because these types may be introduced from vue, from vue-demi, or even from other third-party packages. */ export declare function isFunctionalVueComponent(typeChecker: ts.TypeChecker, symbol: ts.Symbol): boolean;