prettier-plugin-embed
Version:
A configurable Prettier plugin to format embedded languages in JS/TS files.
22 lines (21 loc) • 2.67 kB
TypeScript
import type { Expression, Node, TemplateLiteral } from "estree";
import { type AstPath, type Options, type Printer } from "prettier";
import { type EmbeddedComment, type EmbeddedLanguage, type EmbeddedTag } from "./embedded/index.js";
import type { EmbeddedOverride } from "./types.js";
export declare function resolveEmbeddedOverrideOptions(embeddedOverridesString: string | undefined, { commentOrTag, kind, filepath, }: {
commentOrTag: EmbeddedComment | EmbeddedTag;
kind: "comment" | "tag";
filepath?: string;
}): Promise<EmbeddedOverride["options"] | undefined>;
export declare const compareTagExpressionToTagString: (tagExpression: Expression, tagString: string, parse: (text: string) => Node | Promise<Node>) => boolean;
export declare function parseCommentFromTemplateLiteralAstPath({ node, parent, }: AstPath<Node> & {
node: TemplateLiteral;
}): string | undefined;
export declare function parseTagFromTemplateLiteralAstPath({ parent, }: AstPath<Node> & {
node: TemplateLiteral;
}): string | TemplateLiteral | import("estree").ArrayExpression | import("estree").ArrowFunctionExpression | import("estree").AssignmentExpression | import("estree").AwaitExpression | import("estree").BinaryExpression | import("estree").CallExpression | import("estree").ChainExpression | import("estree").ClassExpression | import("estree").ConditionalExpression | import("estree").FunctionExpression | import("estree").ImportExpression | import("estree").Literal | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").MetaProperty | import("estree").ObjectExpression | import("estree").SequenceExpression | import("estree").TaggedTemplateExpression | import("estree").ThisExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").YieldExpression | undefined;
export declare function createCommentsInOptionsGenerator(options: Options, comment: string): (_: EmbeddedLanguage) => Generator<string, void, undefined>;
export declare function createTagsInOptionsGenerator(options: Options, tag?: string): (_: EmbeddedLanguage) => Generator<string, void, undefined>;
export declare function createEmbeddedDoc(node: TemplateLiteral, embeddedLanguage: EmbeddedLanguage, commentOrTag: EmbeddedComment | EmbeddedTag, kind: "comment" | "tag", options: Options): ReturnType<Exclude<Printer["embed"], undefined>>;
export declare function assumeAs<T>(_: unknown): asserts _ is T;
export declare function compareObjects<T1 extends Record<string | number | symbol, unknown>, T2 extends Record<string | number | symbol, unknown>>(value1: T1, value2: T2, ignoreSet?: Set<keyof T1 | keyof T2>): boolean;