svelte-language-server
Version:
A language server for Svelte
29 lines (28 loc) • 1.31 kB
TypeScript
import { TextDocumentContentChangeEvent, TextDocumentItem, VersionedTextDocumentIdentifier } from 'vscode-languageserver';
import { Document } from './Document';
export type DocumentEvent = 'documentOpen' | 'documentChange' | 'documentClose';
/**
* Manages svelte documents
*/
export declare class DocumentManager {
private createDocument;
private emitter;
private documents;
private locked;
private deleteCandidates;
constructor(createDocument: (textDocument: Pick<TextDocumentItem, 'text' | 'uri'>) => Document, options?: {
useCaseSensitiveFileNames: boolean;
});
openClientDocument(textDocument: Pick<TextDocumentItem, 'text' | 'uri'>): Document;
openDocument(textDocument: Pick<TextDocumentItem, 'text' | 'uri'>, openedByClient: boolean): Document;
lockDocument(uri: string): void;
markAsOpenedInClient(uri: string): void;
getAllOpenedByClient(): [string, Document][];
isOpenedInClient(uri: string): boolean;
releaseDocument(uri: string): void;
closeDocument(uri: string): void;
updateDocument(textDocument: VersionedTextDocumentIdentifier, changes: TextDocumentContentChangeEvent[]): void;
on(name: DocumentEvent, listener: (document: Document) => void): void;
get(uri: string): Document | undefined;
private notify;
}