UNPKG

prettier-plugin-embed

Version:

A configurable Prettier plugin to format embedded languages in JS/TS files.

73 lines (72 loc) 3.11 kB
import { type AutocompleteStringList, type StringListToInterfaceKey } from "../utils.js"; declare const DEFAULT_COMMENTS: readonly ["ts", "tsx", "cts", "mts", "typescript"]; type Comments = AutocompleteStringList<(typeof DEFAULT_COMMENTS)[number]>; type DefaultCommentsHolder = StringListToInterfaceKey<typeof DEFAULT_COMMENTS>; declare const DEFAULT_TAGS: readonly ["ts", "tsx", "cts", "mts", "typescript"]; type Tags = AutocompleteStringList<(typeof DEFAULT_TAGS)[number]>; type DefaultTagsHolder = StringListToInterfaceKey<typeof DEFAULT_TAGS>; declare const TS_PARSERS: readonly ["typescript", "babel-ts"]; export type TsParser = (typeof TS_PARSERS)[number]; declare const EMBEDDED_LANGUAGE_IDENTIFIERS: "embeddedTsIdentifiers"; declare const EMBEDDED_LANGUAGE_COMMENTS: "embeddedTsComments"; declare const EMBEDDED_LANGUAGE_TAGS: "embeddedTsTags"; declare const EMBEDDED_LANGUAGE_PARSER: "embeddedTsParser"; export declare const options: { readonly embeddedTsIdentifiers: { readonly category: "Embed"; readonly type: "string"; readonly array: true; readonly default: [{ readonly value: ["ts", "tsx", "cts", "mts", "typescript"]; }]; readonly description: "Tag or comment identifiers that make their subsequent template literals be identified as embedded TypeScript language."; readonly deprecated: "Please use `embeddedTsComments` or `embeddedTsTags`."; }; readonly embeddedTsComments: { readonly category: "Embed"; readonly type: "string"; readonly array: true; readonly default: [{ readonly value: ["9ff2b366e8ca4c97b9aed1a29b5b94ed"]; }]; readonly description: "Block comments that make their subsequent template literals be identified as embedded TypeScript language."; }; readonly embeddedTsTags: { readonly category: "Embed"; readonly type: "string"; readonly array: true; readonly default: [{ readonly value: ["9ff2b366e8ca4c97b9aed1a29b5b94ed"]; }]; readonly description: "Tags that make their subsequent template literals be identified as embedded TypeScript language."; }; readonly embeddedTsParser: { category: string; type: "choice"; default: "typescript"; description: string; choices: { value: "typescript" | "babel-ts"; description: string; }[]; }; }; type Options = typeof options; declare module "../types.js" { interface EmbeddedOptions extends Options { } interface EmbeddedDefaultCommentsHolder extends DefaultCommentsHolder { } interface EmbeddedDefaultTagsHolder extends DefaultTagsHolder { } interface PluginEmbedOptions { /** * @deprecated Please use `embeddedTsComments` or `embeddedTsTags`. */ [EMBEDDED_LANGUAGE_IDENTIFIERS]?: (Comments[number] | Tags[number])[]; [EMBEDDED_LANGUAGE_COMMENTS]?: Comments; [EMBEDDED_LANGUAGE_TAGS]?: Tags; [EMBEDDED_LANGUAGE_PARSER]?: TsParser; } } export {};