import type { SFCDescriptor } from '@vue/compiler-sfc';
export type VueChangeType = 'style-only' | 'template-only' | 'script' | 'full';
export declare const vueHmrMetadata: Map<string, {
    hmrId: string;
    changeType: VueChangeType;
}>;
export declare const clearVueHmrCaches: () => void;
export declare const detectVueChangeType: (filePath: string, descriptor: SFCDescriptor) => "script" | "template-only" | "full" | "style-only";
export declare const generateVueHmrId: (sourceFilePath: string, vueRootDir: string) => string;
export declare const compileVue: (entryPoints: string[], vueRootDir: string, isDev?: boolean) => Promise<{
    hmrMetadata: Map<string, {
        hmrId: string;
        changeType: VueChangeType;
    }>;
    vueClientPaths: string[];
    vueCssPaths: string[];
    vueIndexPaths: string[];
    vueServerPaths: string[];
}>;
