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[]>;
}
