UNPKG

@maverick-js/compiler

Version:

Maverick toolchain including the analyzer and compiler.

49 lines (48 loc) 1.48 kB
import type { ComponentMeta, PropMeta } from '../meta/component'; import type { AnalyzePluginBuilder } from './AnalyzePlugin'; export interface VSCodePluginConfig extends Record<string, unknown> { cwd: string; outFile: string; transformTagData?: (component: ComponentMeta, data: ITagData) => ITagData; transformAttributeData?: (prop: PropMeta, data: IAttributeData) => IAttributeData; } /** * Transforms component metadata into [VSCode Custom Data](https://github.com/microsoft/vscode-custom-data). * This will run in the `transform` plugin lifecycle step. */ export declare const createVSCodePlugin: AnalyzePluginBuilder<Partial<VSCodePluginConfig>>; /** * https://github.com/microsoft/vscode-html-languageservice/blob/master/src/htmlLanguageTypes.ts#L164 */ export interface IReference { name: string; url: string; } export interface ITagData { name: string; description?: string; attributes: IAttributeData[]; references?: IReference[]; } export interface IAttributeData { name: string; description?: string; valueSet?: string; values?: IValueData[]; references?: IReference[]; } export interface IValueData { name: string; description?: string; references?: IReference[]; } export interface IValueSet { name: string; values: IValueData[]; } export interface HTMLDataV1 { version: 1 | 1.1; tags?: ITagData[]; globalAttributes?: IAttributeData[]; valueSets?: IValueSet[]; }