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;
 |