import type { TemplateStringToken } from '../../tokenizer/token'; import type { ParserContext } from '../ParserContext'; import type { StringNode, TemplateStringNode } from '../types'; type LiteralSegment = { type: 'literal'; value: string; }; type ExpressionSegment = { type: 'expression'; value: string; offset: number; }; type DeferredSegment = { type: 'deferred'; value: string; dollarCount: number; offset: number; }; export type Segment = LiteralSegment | ExpressionSegment | DeferredSegment; /** * Split the raw content of a template string (between the surrounding backticks) * into alternating literal and expression segments. */ export declare function splitSegments(raw: string): Segment[]; export declare function parseTemplateString(ctx: ParserContext, token: TemplateStringToken): StringNode | TemplateStringNode; export {};