import { Blue, BlueNode } from '@blue-labs/language'; import { ContractBundle } from './contract-bundle.js'; import { JsonPatch } from '../model/shared/json-patch.js'; import { DocumentProcessingRuntime } from '../runtime/document-processing-runtime.js'; import { GasMeter } from '../runtime/gas-meter.js'; export interface ExecutionAdapter { runtime(): DocumentProcessingRuntime; isScopeInactive(scopePath: string): boolean; handlePatch(scopePath: string, bundle: ContractBundle, patch: JsonPatch, allowReservedMutation: boolean): Promise; resolvePointer(scopePath: string, relativePointer: string): string; enterGracefulTermination(scopePath: string, bundle: ContractBundle, reason: string | null): Promise; enterFatalTermination(scopePath: string, bundle: ContractBundle, reason: string | null): Promise; } export declare class ProcessorExecutionContext { private readonly execution; private readonly bundle; private readonly scopePathValue; private readonly eventNode; private readonly allowTerminatedWork; private readonly allowReservedMutation; constructor(execution: ExecutionAdapter, bundle: ContractBundle, scopePathValue: string, eventNode: BlueNode, allowTerminatedWork: boolean, allowReservedMutation: boolean); get scopePath(): string; get blue(): Blue; gasMeter(): GasMeter; event(): BlueNode; applyPatch(patch: JsonPatch): Promise; emitEvent(emission: BlueNode): void; consumeGas(units: number): void; throwFatal(reason: string): never; resolvePointer(relativePointer: string): string; documentAt(absolutePointer: string): BlueNode | null; documentContains(absolutePointer: string): boolean; private documentNodeAt; terminateGracefully(reason: string | null): Promise; terminateFatally(reason: string | null): Promise; private shouldSkipTerminatedWork; } //# sourceMappingURL=processor-execution-context.d.ts.map