/** * Parser Extension: Literal Parsing * Strings, numbers, booleans, tuples, dicts, and closures */ import type { AtomLiteralNode, ClosureNode, ClosureParamNode, DictEntryNode, DictLiteralNode, DictNode, ExpressionNode, InterpolationNode, ListLiteralNode, LiteralNode, ListSpreadNode, BodyNode, OrderedLiteralNode, RecoveryErrorNode, SourceLocation, StringLiteralNode, TupleLiteralNode } from '../types.js'; declare module './parser.js' { interface Parser { parseLiteral(): LiteralNode; parseAtomLiteral(): AtomLiteralNode | RecoveryErrorNode; parseString(): StringLiteralNode; parseStringParts(raw: string, baseLocation: SourceLocation, isTripleQuote: boolean, openingNewlineWidth: number, escapeBreakpoints?: readonly number[]): (string | InterpolationNode)[]; parseInterpolationExpr(source: string, baseLocation: SourceLocation): InterpolationNode; unescapeBraces(s: string): string; parseTuple(start: SourceLocation): ListLiteralNode; parseTupleOrDict(): ListLiteralNode | DictNode; parseTupleElement(): ExpressionNode | ListSpreadNode; parseDict(start: SourceLocation): DictNode; parseDictEntry(): DictEntryNode; parseClosure(): ClosureNode; parseBody(allowEmptyBlock?: boolean): BodyNode; parseClosureParam(): ClosureParamNode; parseCollectionLiteral(collectionType: 'list' | 'dict' | 'tuple' | 'ordered'): ListLiteralNode | DictLiteralNode | TupleLiteralNode | OrderedLiteralNode; } }