import { type VueVirtualCode } from '@vue/language-core';
import type * as ts from 'typescript';
export declare function getComponentType(ts: typeof import('typescript'), checker: ts.TypeChecker, sourceFile: ts.SourceFile, { fileName, ir }: VueVirtualCode, tag: string): {
    node: ts.Node;
    type: ts.Type;
} | undefined;
export declare function getSelfComponentName(fileName: string): Capitalize<string>;
export declare function getVariableType(ts: typeof import('typescript'), checker: ts.TypeChecker, sourceFile: ts.SourceFile, name: string): {
    node: ts.VariableDeclaration;
    type: ts.Type;
} | undefined;
export declare const booleanExceptionProps: Set<string>;
export declare function hasBooleanType(ts: typeof import('typescript'), type: ts.Type): boolean;
export declare function forEachTouchingNode(ts: typeof import('typescript'), sourceFile: ts.SourceFile, position: number): Generator<ts.Node, void, any>;
