/** * One logical line printed: the tokens it splits into, the spaces between * them, and the markup an element token renders back to. * * D115 §三 / D114 R1f: these nine are one module because they are mutually * recursive — a line holds a string, an interpolated part of that string is a * line, a line holds an element, and an element's attribute holds a line. That * recursion is the code's, not the split's, so keeping it inside one module is * what leaves the directory's import graph acyclic. */ import type { CompilerExtension } from "../extension.ts"; import { type StringLiteralScan } from "../interpolated-string.ts"; import { type MarkupAttribute, type MarkupElement, type MarkupLayout } from "./markup.ts"; import { type InlineToken } from "./tokens.ts"; export declare function formatInline(source: string, embedding: NonNullable["angleBracketEmbedding"] | null, layout?: MarkupLayout): string; /** * D59 rule 143, fourth item: the formatter reads one physical line at a time, * so a line that opens with `+` or `-` used to have no token in front of it at * all and was read as a negation — `basePrice` on one line and `+ shipping` on * the next came back as `+shipping`, against the charter's own example. Inside * brackets a newline is not a statement boundary (charter §2), so the token in * front is simply on the previous line: the caller carries it across, and the * unary question is answered from the same position every other one is. It also * answers the case with the opposite result, where a list literal's `-1` on its * own line follows the `[` that opened it and stays a negation. */ export declare function formatInlineLine(source: string, embedding: NonNullable["angleBracketEmbedding"] | null, layout?: MarkupLayout, preceding?: InlineToken | undefined, insideCallArguments?: boolean): { readonly text: string; readonly trailing: InlineToken | undefined; readonly tokens: readonly InlineToken[]; }; export declare function tokenizeInline(source: string, embedding: NonNullable["angleBracketEmbedding"] | null, layout?: MarkupLayout): InlineToken[]; export declare function formatInterpolatedString(source: string, start: number, scanned: StringLiteralScan, embedding: NonNullable["angleBracketEmbedding"] | null): string; export declare function renderMarkupElement(element: MarkupElement, layout: MarkupLayout, column: number): string; export declare function renderMarkupOpenTag(element: MarkupElement, layout: MarkupLayout, column: number): string; export declare function renderInlineMarkup(element: MarkupElement, layout: MarkupLayout): string; export declare function renderMarkupAttribute(attribute: MarkupAttribute, layout: MarkupLayout): string; /** Formats the code inside `{...}`; a hole never breaks across lines. */ export declare function renderMarkupExpression(text: string, layout: MarkupLayout): string; //# sourceMappingURL=inline.d.ts.map