type SfcBlockKind = "template" | "script" | "style";
type Vue2SfcBlock = {
    kind: SfcBlockKind;
    content: string;
    attrs: Record<string, string | true>;
    lang: string;
    isScoped: boolean;
    isSetupScript: boolean;
    openTagStartOffset: number;
    openTagEndOffset: number;
    contentStartOffset: number;
    contentEndOffset: number;
    closeTagStartOffset: number;
    closeTagEndOffset: number;
    lineNo: string;
};
type Vue2SfcSplitResult = {
    template: Vue2SfcBlock | null;
    scripts: Vue2SfcBlock[];
    styles: Vue2SfcBlock[];
};
import type { BabelParserProjectOptions } from "./babelParserProjectOptions";
type ParseVue2FileOptions = {
    __testThrowBeforeTemplateExtract?: boolean;
    babelParser?: BabelParserProjectOptions;
};
export type { SfcBlockKind, Vue2SfcBlock, Vue2SfcSplitResult, ParseVue2FileOptions };
