import { Document as TypeDocument } from "greybel-type-analyzer";
import { IActiveDocument, IContext, IDocumentMerger } from "../../types";
import { DocumentMergerCache } from "./document-merger-cache";
import { DocumentWorkspaceContext } from "../document-manager/document-workspace-builder";
export declare class DocumentWorkspaceMergerJob {
    private cache;
    constructor(cache: DocumentMergerCache);
    private getTypeDocument;
    private getExternalTypeDocumentsRelatedToDocument;
    process(document: IActiveDocument, context: DocumentWorkspaceContext): Promise<TypeDocument>;
}
export declare class DocumentWorkspaceMerger implements IDocumentMerger {
    readonly cache: DocumentMergerCache;
    private pendingJobs;
    constructor(cache: DocumentMergerCache);
    private process;
    build(document: IActiveDocument, context: IContext): Promise<TypeDocument>;
}
