import { Position as LspPosition, Range } from 'vscode-languageserver'; import type { Position as ManifestPosition } from '@angriff36/manifest/types'; import type { Token } from '@angriff36/manifest/types'; /** * Convert a Manifest Position (1-based line, 1-based column) to an LSP Position (0-based). */ export declare function toLspPosition(pos: ManifestPosition): LspPosition; /** * Convert an LSP Position (0-based) to a Manifest Position (1-based line, 1-based column). */ export declare function toManifestPosition(pos: LspPosition): ManifestPosition; /** * Create an LSP Range from a Manifest Position. * If no end is provided, the range spans a single word-length token at that position. */ export declare function toLspRange(start: ManifestPosition, end?: ManifestPosition, length?: number): Range; /** * Create an LSP Range from a Token. * * The Manifest lexer records token.position as the **end** of the token * (one column past the last character). This function computes the correct * start position and returns a range spanning the token value. */ export declare function tokenToLspRange(token: Token): Range; //# sourceMappingURL=position-utils.d.ts.map