interface Position { pos: number; row: number; col: number; } /** * Position utilities for working with source positions. */ declare const Position: { /** * Represents an unknown or uninitialized position. * Use this instead of inline { pos: 0, row: 0, col: 0 } for clarity. * pos: -1 distinguishes "unknown" from "start of file" (pos: 0). */ unknown: Position; /** * Checks if a position is unknown/uninitialized. * @param pos - The position to check * @returns true if the position is unknown (pos === -1) */ isUnknown(pos: Position): boolean; /** * Creates a new Position object. * @param pos - Absolute character position (0-based) * @param row - Line number (1-based) * @param col - Column number (1-based) */ create(pos: number, row: number, col: number): Position; }; interface PositionRange { getStartPos(): Position; getEndPos(): Position; } export { Position, type PositionRange as default };