UNPKG

vue-hook-optimizer

Version:

a tool that helps refactor and optimize hook abstractions in Vue components

111 lines (110 loc) 3.09 kB
import "@babel/traverse"; import { SFCStyleBlock, parse } from "@vue/compiler-sfc"; import "@babel/types"; import { Edge, Node } from "vis-network"; //#region src/analyze/utils.d.ts interface TypedNode { label: string; type: NodeType; info?: Partial<{ line: number; column: number; comment: string; used: Set<string>; }>; } declare enum NodeType { var = "var", fun = "fun", } type RelationType = 'get' | 'set' | 'call'; //#endregion //#region src/analyze/options.d.ts declare function analyze(content: string, lineOffset?: number, jsx?: boolean): { graph: { nodes: Set<TypedNode>; edges: Map<TypedNode, Set<{ node: TypedNode; type: RelationType; }>>; }; nodesUsedInTemplate: Set<string>; }; //#endregion //#region src/analyze/setupScript.d.ts declare function analyze$1(content: string, lineOffset?: number, jsx?: boolean): { nodes: Set<TypedNode>; edges: Map<TypedNode, Set<{ node: TypedNode; type: RelationType; }>>; }; //#endregion //#region src/analyze/style.d.ts declare function analyze$2(styles: SFCStyleBlock[]): Set<string>; //#endregion //#region src/analyze/template.d.ts declare function analyze$3(content: string): Set<string>; //#endregion //#region src/analyze/tsx.d.ts declare function analyze$4(content: string, type?: "vue" | "react", lineOffset?: number, addInfo?: boolean): { graph: { nodes: Set<TypedNode>; edges: Map<TypedNode, Set<{ node: TypedNode; type: RelationType; }>>; }; nodesUsedInTemplate: Set<string>; }; //#endregion //#region src/mermaid.d.ts interface MermaidOptions { direction?: 'TB' | 'BT' | 'LR' | 'RL'; } declare function getMermaidText(graph: { nodes: Set<TypedNode>; edges: Map<TypedNode, Set<{ node: TypedNode; type: RelationType; }>>; }, nodesUsedInTemplate: Set<string>, nodesUsedInStyle?: Set<string>, options?: MermaidOptions): string; //#endregion //#region src/suggest/index.d.ts declare enum SuggestionType { info = "info", warning = "warning", error = "error", } interface Suggestion { type: SuggestionType; message: string; nodeInfo?: TypedNode | Array<TypedNode>; } declare function gen(graph: { nodes: Set<TypedNode>; edges: Map<TypedNode, Set<{ node: TypedNode; type: RelationType; }>>; }, nodesUsedInTemplate: Set<string>, nodesUsedInStyle?: Set<string>, options?: Partial<{ ellipsis: boolean; }>): Suggestion[]; //#endregion //#region src/vis.d.ts type CustomNode = Node & { info: TypedNode['info']; }; declare function getVisData(graph: { nodes: Set<TypedNode>; edges: Map<TypedNode, Set<{ node: TypedNode; type: RelationType; }>>; }, nodesUsedInTemplate: Set<string>, nodesUsedInStyle?: Set<string>): { nodes: CustomNode[]; edges: Edge[]; }; //#endregion export { type NodeType, type RelationType, Suggestion, SuggestionType, type TypedNode, analyze as analyzeOptions, analyze$1 as analyzeSetupScript, analyze$2 as analyzeStyle, analyze$3 as analyzeTemplate, analyze$4 as analyzeTsx, gen, getMermaidText, getVisData, parse }; //# sourceMappingURL=index.d.ts.map