svelte-language-server
Version:
A language server for Svelte
19 lines (18 loc) • 865 B
TypeScript
import { Position, SelectionRange } from 'vscode-languageserver';
import { Document } from '../../../lib/documents';
import { SelectionRangeProvider } from '../../interfaces';
import { LSAndTSDocResolver } from '../LSAndTSDocResolver';
export declare class SelectionRangeProviderImpl implements SelectionRangeProvider {
private readonly lsAndTsDocResolver;
constructor(lsAndTsDocResolver: LSAndTSDocResolver);
getSelectionRange(document: Document, position: Position): Promise<SelectionRange | null>;
private toSelectionRange;
private mapSelectionRangeToParent;
private filterOutUnmappedRange;
/**
* flatten the selection range and its parent to an array in reverse order
* so it's easier to filter out unmapped selection and create a new tree of
* selection range
*/
private flattenAndReverseSelectionRange;
}