greybel-languageserver-core
Version:
Core functionality of language server for GreyScript
29 lines (28 loc) • 1.19 kB
TypeScript
import { ASTBaseBlockWithScope } from 'miniscript-core';
import { Document as TypeDocument } from 'greybel-type-analyzer';
import { TextDocument } from 'vscode-languageserver-textdocument';
import { URI } from 'vscode-uri';
import { DependencyRawLocation, IActiveDocument, IContext, IDependencyLocation } from '../../types';
export interface ActiveDocumentOptions {
context: IContext;
version: number;
typeDocument: TypeDocument;
textDocument: TextDocument;
parsedPayload: ASTBaseBlockWithScope | null;
errors: Error[];
}
export declare class ActiveDocument implements IActiveDocument {
context: IContext;
version: number;
textDocument: TextDocument;
typeDocument: TypeDocument;
parsedPayload: ASTBaseBlockWithScope | null;
errors: Error[];
private dependencies?;
constructor(options: ActiveDocumentOptions);
getDirectory(): URI;
getNativeImportUris(workspaceFolderUri?: URI): Promise<DependencyRawLocation[]>;
getImportUris(workspaceFolderUri?: URI): Promise<DependencyRawLocation[]>;
getIncludeUris(workspaceFolderUri?: URI): Promise<DependencyRawLocation[]>;
getDependencies(): Promise<IDependencyLocation[]>;
}