33 lines
874 B
TypeScript
33 lines
874 B
TypeScript
|
import { RawSourceMap, VueTemplateCompiler, VueTemplateCompilerParseOptions } from './types';
|
||
|
export interface ParseOptions {
|
||
|
source: string;
|
||
|
filename?: string;
|
||
|
compiler: VueTemplateCompiler;
|
||
|
compilerParseOptions?: VueTemplateCompilerParseOptions;
|
||
|
sourceRoot?: string;
|
||
|
needMap?: boolean;
|
||
|
}
|
||
|
export interface SFCCustomBlock {
|
||
|
type: string;
|
||
|
content: string;
|
||
|
attrs: {
|
||
|
[key: string]: string | true;
|
||
|
};
|
||
|
start: number;
|
||
|
end: number;
|
||
|
map?: RawSourceMap;
|
||
|
}
|
||
|
export interface SFCBlock extends SFCCustomBlock {
|
||
|
lang?: string;
|
||
|
src?: string;
|
||
|
scoped?: boolean;
|
||
|
module?: string | boolean;
|
||
|
}
|
||
|
export interface SFCDescriptor {
|
||
|
template: SFCBlock | null;
|
||
|
script: SFCBlock | null;
|
||
|
styles: SFCBlock[];
|
||
|
customBlocks: SFCCustomBlock[];
|
||
|
}
|
||
|
export declare function parse(options: ParseOptions): SFCDescriptor;
|