import { Blue, BlueNode } from '@blue-labs/language'; import { ContractLoader } from '../engine/contract-loader.js'; import { MarkerContract } from '../model/index.js'; import { ContractProcessorRegistry } from '../registry/contract-processor-registry.js'; import { AnyContractProcessor } from '../registry/types.js'; import { DocumentProcessingResult } from '../types/document-processing-result.js'; export interface DocumentProcessorOptions { readonly blue?: Blue; readonly registry?: ContractProcessorRegistry; } export declare class DocumentProcessor { private readonly blue; private readonly registryRef; private readonly contractLoaderRef; private readonly engine; constructor(options?: DocumentProcessorOptions); registerContractProcessor(processor: AnyContractProcessor): this; initializeDocument(document: BlueNode): Promise; processDocument(document: BlueNode, event: BlueNode): Promise; markersFor(scopeNode: BlueNode, scopePath: string): Map; isInitialized(document: BlueNode): boolean; getContractRegistry(): ContractProcessorRegistry; /** @internal */ registry(): ContractProcessorRegistry; /** @internal */ contractLoader(): ContractLoader; static builder(): DocumentProcessorBuilder; } export declare class DocumentProcessorBuilder { private contractRegistry; private blueInstance; constructor(); withRegistry(registry: ContractProcessorRegistry): DocumentProcessorBuilder; registerDefaults(): DocumentProcessorBuilder; withBlue(blue: Blue): DocumentProcessorBuilder; build(): DocumentProcessor; } //# sourceMappingURL=document-processor.d.ts.map