unplugin-ast
Version:
Manipulate the AST to transform your code.
34 lines (30 loc) • 1.17 kB
TypeScript
import { Arrayable, Transformer } from "./types-DGZH3jc3.js";
import { FilterPattern, UnpluginInstance } from "unplugin";
import { SourceMap } from "magic-string-ast";
import { ParserOptions } from "@babel/parser";
//#region src/core/options.d.ts
interface Options {
include?: FilterPattern;
exclude?: FilterPattern;
enforce?: "post" | "pre" | undefined;
parserOptions?: ParserOptions;
transformer?: Arrayable<Transformer<any>>;
}
type Overwrite<T, U> = Pick<T, Exclude<keyof T, keyof U>> & U;
type OptionsResolved = Overwrite<Required<Options>, {
exclude: Options["exclude"];
enforce: Options["enforce"];
transformer: Transformer<any>[];
}>;
declare function resolveOptions(options: Options): OptionsResolved;
//#endregion
//#region src/core/transform.d.ts
declare function transform(code: string, id: string, options: Pick<OptionsResolved, "parserOptions" | "transformer">): Promise<{
code: string;
map: SourceMap;
} | undefined>;
//#endregion
//#region src/index.d.ts
declare const AST: UnpluginInstance<Options, false>;
//#endregion
export { AST as AST$1, Options, OptionsResolved, resolveOptions as resolveOptions$1, transform as transform$1 };