| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454 | 
							- import { LazyResult } from 'postcss';
 
- import { ParserPlugin } from '@babel/parser';
 
- declare interface AssetURLOptions {
 
-     [name: string]: string | string[];
 
- }
 
- declare type ASTAttr = {
 
-     name: string;
 
-     value: any;
 
-     dynamic?: boolean;
 
-     start?: number;
 
-     end?: number;
 
- };
 
- declare type ASTDirective = {
 
-     name: string;
 
-     rawName: string;
 
-     value: string;
 
-     arg: string | null;
 
-     isDynamicArg: boolean;
 
-     modifiers: ASTModifiers | null;
 
-     start?: number;
 
-     end?: number;
 
- };
 
- declare type ASTElement = {
 
-     type: 1;
 
-     tag: string;
 
-     attrsList: Array<ASTAttr>;
 
-     attrsMap: {
 
-         [key: string]: any;
 
-     };
 
-     rawAttrsMap: {
 
-         [key: string]: ASTAttr;
 
-     };
 
-     parent: ASTElement | void;
 
-     children: Array<ASTNode>;
 
-     start?: number;
 
-     end?: number;
 
-     processed?: true;
 
-     static?: boolean;
 
-     staticRoot?: boolean;
 
-     staticInFor?: boolean;
 
-     staticProcessed?: boolean;
 
-     hasBindings?: boolean;
 
-     text?: string;
 
-     attrs?: Array<ASTAttr>;
 
-     dynamicAttrs?: Array<ASTAttr>;
 
-     props?: Array<ASTAttr>;
 
-     plain?: boolean;
 
-     pre?: true;
 
-     ns?: string;
 
-     component?: string;
 
-     inlineTemplate?: true;
 
-     transitionMode?: string | null;
 
-     slotName?: string | null;
 
-     slotTarget?: string | null;
 
-     slotTargetDynamic?: boolean;
 
-     slotScope?: string | null;
 
-     scopedSlots?: {
 
-         [name: string]: ASTElement;
 
-     };
 
-     ref?: string;
 
-     refInFor?: boolean;
 
-     if?: string;
 
-     ifProcessed?: boolean;
 
-     elseif?: string;
 
-     else?: true;
 
-     ifConditions?: ASTIfConditions;
 
-     for?: string;
 
-     forProcessed?: boolean;
 
-     key?: string;
 
-     alias?: string;
 
-     iterator1?: string;
 
-     iterator2?: string;
 
-     staticClass?: string;
 
-     classBinding?: string;
 
-     staticStyle?: string;
 
-     styleBinding?: string;
 
-     events?: ASTElementHandlers;
 
-     nativeEvents?: ASTElementHandlers;
 
-     transition?: string | true;
 
-     transitionOnAppear?: boolean;
 
-     model?: {
 
-         value: string;
 
-         callback: string;
 
-         expression: string;
 
-     };
 
-     directives?: Array<ASTDirective>;
 
-     forbidden?: true;
 
-     once?: true;
 
-     onceProcessed?: boolean;
 
-     wrapData?: (code: string) => string;
 
-     wrapListeners?: (code: string) => string;
 
-     ssrOptimizability?: number;
 
- };
 
- declare type ASTElementHandler = {
 
-     value: string;
 
-     params?: Array<any>;
 
-     modifiers: ASTModifiers | null;
 
-     dynamic?: boolean;
 
-     start?: number;
 
-     end?: number;
 
- };
 
- declare type ASTElementHandlers = {
 
-     [key: string]: ASTElementHandler | Array<ASTElementHandler>;
 
- };
 
- declare type ASTExpression = {
 
-     type: 2;
 
-     expression: string;
 
-     text: string;
 
-     tokens: Array<string | Object>;
 
-     static?: boolean;
 
-     ssrOptimizability?: number;
 
-     start?: number;
 
-     end?: number;
 
- };
 
- declare type ASTIfCondition = {
 
-     exp: string | null;
 
-     block: ASTElement;
 
- };
 
- declare type ASTIfConditions = Array<ASTIfCondition>;
 
- declare type ASTModifiers = {
 
-     [key: string]: boolean;
 
- };
 
- declare type ASTNode = ASTElement | ASTText | ASTExpression;
 
- declare type ASTText = {
 
-     type: 3;
 
-     text: string;
 
-     static?: boolean;
 
-     isComment?: boolean;
 
-     ssrOptimizability?: number;
 
-     start?: number;
 
-     end?: number;
 
- };
 
- declare type BindingMetadata = {
 
-     [key: string]: BindingTypes | undefined;
 
- } & {
 
-     __isScriptSetup?: boolean;
 
- };
 
- declare const enum BindingTypes {
 
-     /**
 
-      * returned from data()
 
-      */
 
-     DATA = "data",
 
-     /**
 
-      * declared as a prop
 
-      */
 
-     PROPS = "props",
 
-     /**
 
-      * a local alias of a `<script setup>` destructured prop.
 
-      * the original is stored in __propsAliases of the bindingMetadata object.
 
-      */
 
-     PROPS_ALIASED = "props-aliased",
 
-     /**
 
-      * a let binding (may or may not be a ref)
 
-      */
 
-     SETUP_LET = "setup-let",
 
-     /**
 
-      * a const binding that can never be a ref.
 
-      * these bindings don't need `unref()` calls when processed in inlined
 
-      * template expressions.
 
-      */
 
-     SETUP_CONST = "setup-const",
 
-     /**
 
-      * a const binding that does not need `unref()`, but may be mutated.
 
-      */
 
-     SETUP_REACTIVE_CONST = "setup-reactive-const",
 
-     /**
 
-      * a const binding that may be a ref.
 
-      */
 
-     SETUP_MAYBE_REF = "setup-maybe-ref",
 
-     /**
 
-      * bindings that are guaranteed to be refs
 
-      */
 
-     SETUP_REF = "setup-ref",
 
-     /**
 
-      * declared by other options, e.g. computed, inject
 
-      */
 
-     OPTIONS = "options"
 
- }
 
- declare type CompiledResult = {
 
-     ast: ASTElement | null;
 
-     render: string;
 
-     staticRenderFns: Array<string>;
 
-     stringRenderFns?: Array<string>;
 
-     errors?: Array<string | WarningMessage>;
 
-     tips?: Array<string | WarningMessage>;
 
- };
 
- export declare type CompilerOptions = {
 
-     warn?: Function;
 
-     modules?: Array<ModuleOptions>;
 
-     directives?: {
 
-         [key: string]: Function;
 
-     };
 
-     staticKeys?: string;
 
-     isUnaryTag?: (tag: string) => boolean | undefined;
 
-     canBeLeftOpenTag?: (tag: string) => boolean | undefined;
 
-     isReservedTag?: (tag: string) => boolean | undefined;
 
-     preserveWhitespace?: boolean;
 
-     whitespace?: 'preserve' | 'condense';
 
-     optimize?: boolean;
 
-     mustUseProp?: (tag: string, type: string | null, name: string) => boolean;
 
-     isPreTag?: (attr: string) => boolean | null;
 
-     getTagNamespace?: (tag: string) => string | undefined;
 
-     expectHTML?: boolean;
 
-     isFromDOM?: boolean;
 
-     shouldDecodeTags?: boolean;
 
-     shouldDecodeNewlines?: boolean;
 
-     shouldDecodeNewlinesForHref?: boolean;
 
-     outputSourceRange?: boolean;
 
-     shouldKeepComment?: boolean;
 
-     delimiters?: [string, string];
 
-     comments?: boolean;
 
-     scopeId?: string;
 
-     bindings?: BindingMetadata;
 
- };
 
- /**
 
-  * Compile `<script setup>`
 
-  * It requires the whole SFC descriptor because we need to handle and merge
 
-  * normal `<script>` + `<script setup>` if both are present.
 
-  */
 
- export declare function compileScript(sfc: SFCDescriptor, options?: SFCScriptCompileOptions): SFCScriptBlock;
 
- export declare function compileStyle(options: SFCStyleCompileOptions): SFCStyleCompileResults;
 
- export declare function compileStyleAsync(options: SFCStyleCompileOptions): Promise<SFCStyleCompileResults>;
 
- export declare function compileTemplate(options: SFCTemplateCompileOptions): SFCTemplateCompileResults;
 
- export declare function generateCodeFrame(source: string, start?: number, end?: number): string;
 
- declare interface ImportBinding {
 
-     isType: boolean;
 
-     imported: string;
 
-     source: string;
 
-     isFromSetup: boolean;
 
-     isUsedInTemplate: boolean;
 
- }
 
- declare type ModuleOptions = {
 
-     preTransformNode?: (el: ASTElement) => ASTElement | null | void;
 
-     transformNode?: (el: ASTElement) => ASTElement | null | void;
 
-     postTransformNode?: (el: ASTElement) => void;
 
-     genData?: (el: ASTElement) => string;
 
-     transformCode?: (el: ASTElement, code: string) => string;
 
-     staticKeys?: Array<string>;
 
- };
 
- export declare function parse(options: SFCParseOptions): SFCDescriptor;
 
- /**
 
-  * Parse a single-file component (*.vue) file into an SFC Descriptor Object.
 
-  */
 
- export declare function parseComponent(source: string, options?: VueTemplateCompilerParseOptions): SFCDescriptor;
 
- declare interface RawSourceMap extends StartOfSourceMap {
 
-     version: string;
 
-     sources: string[];
 
-     names: string[];
 
-     sourcesContent?: string[];
 
-     mappings: string;
 
- }
 
- /**
 
-  * Utility for rewriting `export default` in a script block into a variable
 
-  * declaration so that we can inject things into it
 
-  */
 
- export declare function rewriteDefault(input: string, as: string, parserPlugins?: ParserPlugin[]): string;
 
- export declare interface SFCBlock extends SFCCustomBlock {
 
-     lang?: string;
 
-     scoped?: boolean;
 
-     module?: string | boolean;
 
- }
 
- export declare interface SFCCustomBlock {
 
-     type: string;
 
-     content: string;
 
-     attrs: {
 
-         [key: string]: string | true;
 
-     };
 
-     start: number;
 
-     end: number;
 
-     src?: string;
 
-     map?: RawSourceMap;
 
- }
 
- export declare interface SFCDescriptor {
 
-     source: string;
 
-     filename: string;
 
-     template: SFCBlock | null;
 
-     script: SFCScriptBlock | null;
 
-     scriptSetup: SFCScriptBlock | null;
 
-     styles: SFCBlock[];
 
-     customBlocks: SFCCustomBlock[];
 
-     cssVars: string[];
 
-     errors: (string | WarningMessage)[];
 
-     /**
 
-      * compare with an existing descriptor to determine whether HMR should perform
 
-      * a reload vs. re-render.
 
-      *
 
-      * Note: this comparison assumes the prev/next script are already identical,
 
-      * and only checks the special case where `<script setup lang="ts">` unused
 
-      * import pruning result changes due to template changes.
 
-      */
 
-     shouldForceReload: (prevImports: Record<string, ImportBinding>) => boolean;
 
- }
 
- export declare interface SFCParseOptions {
 
-     source: string;
 
-     filename?: string;
 
-     compiler?: TemplateCompiler;
 
-     compilerParseOptions?: VueTemplateCompilerParseOptions;
 
-     sourceRoot?: string;
 
-     sourceMap?: boolean;
 
-     /**
 
-      * @deprecated use `sourceMap` instead.
 
-      */
 
-     needMap?: boolean;
 
- }
 
- export declare interface SFCScriptBlock extends SFCBlock {
 
-     type: 'script';
 
-     setup?: string | boolean;
 
-     bindings?: BindingMetadata;
 
-     imports?: Record<string, ImportBinding>;
 
-     /**
 
-      * import('\@babel/types').Statement
 
-      */
 
-     scriptAst?: any[];
 
-     /**
 
-      * import('\@babel/types').Statement
 
-      */
 
-     scriptSetupAst?: any[];
 
- }
 
- export declare interface SFCScriptCompileOptions {
 
-     /**
 
-      * Scope ID for prefixing injected CSS variables.
 
-      * This must be consistent with the `id` passed to `compileStyle`.
 
-      */
 
-     id: string;
 
-     /**
 
-      * Production mode. Used to determine whether to generate hashed CSS variables
 
-      */
 
-     isProd?: boolean;
 
-     /**
 
-      * Enable/disable source map. Defaults to true.
 
-      */
 
-     sourceMap?: boolean;
 
-     /**
 
-      * https://babeljs.io/docs/en/babel-parser#plugins
 
-      */
 
-     babelParserPlugins?: ParserPlugin[];
 
- }
 
- export declare interface SFCStyleCompileOptions {
 
-     source: string;
 
-     filename: string;
 
-     id: string;
 
-     map?: any;
 
-     scoped?: boolean;
 
-     trim?: boolean;
 
-     preprocessLang?: string;
 
-     preprocessOptions?: any;
 
-     postcssOptions?: any;
 
-     postcssPlugins?: any[];
 
-     isProd?: boolean;
 
- }
 
- export declare interface SFCStyleCompileResults {
 
-     code: string;
 
-     map: any | void;
 
-     rawResult: LazyResult | void;
 
-     errors: string[];
 
- }
 
- export declare interface SFCTemplateCompileOptions {
 
-     source: string;
 
-     filename: string;
 
-     compiler?: TemplateCompiler;
 
-     compilerOptions?: CompilerOptions;
 
-     transformAssetUrls?: AssetURLOptions | boolean;
 
-     transformAssetUrlsOptions?: TransformAssetUrlsOptions;
 
-     preprocessLang?: string;
 
-     preprocessOptions?: any;
 
-     transpileOptions?: any;
 
-     isProduction?: boolean;
 
-     isFunctional?: boolean;
 
-     optimizeSSR?: boolean;
 
-     prettify?: boolean;
 
-     isTS?: boolean;
 
-     bindings?: BindingMetadata;
 
- }
 
- export declare interface SFCTemplateCompileResults {
 
-     ast: Object | undefined;
 
-     code: string;
 
-     source: string;
 
-     tips: (string | WarningMessage)[];
 
-     errors: (string | WarningMessage)[];
 
- }
 
- declare interface StartOfSourceMap {
 
-     file?: string;
 
-     sourceRoot?: string;
 
- }
 
- export declare interface TemplateCompiler {
 
-     parseComponent(source: string, options?: any): SFCDescriptor;
 
-     compile(template: string, options: CompilerOptions): CompiledResult;
 
-     ssrCompile(template: string, options: CompilerOptions): CompiledResult;
 
- }
 
- declare interface TransformAssetUrlsOptions {
 
-     /**
 
-      * If base is provided, instead of transforming relative asset urls into
 
-      * imports, they will be directly rewritten to absolute urls.
 
-      */
 
-     base?: string;
 
-     /**
 
-      * If true, also processes absolute urls.
 
-      */
 
-     includeAbsolute?: boolean;
 
- }
 
- declare interface VueTemplateCompilerParseOptions {
 
-     pad?: 'line' | 'space' | boolean;
 
-     deindent?: boolean;
 
-     outputSourceRange?: boolean;
 
- }
 
- export declare type WarningMessage = {
 
-     msg: string;
 
-     start?: number;
 
-     end?: number;
 
- };
 
- export { }
 
 
  |