import { BlueNode, Blue } from '@blue-labs/language'; import { OperationRequest } from '@blue-repository/types/packages/conversation/schemas/OperationRequest'; import { Operation } from '@blue-repository/types/packages/conversation/schemas/Operation'; import { ContractProcessorContext } from '../../types.js'; import { SequentialWorkflowOperation } from '../../../model/index.js'; export type LoadedOperation = { operationNode: BlueNode; operation: Operation; channelKey: string | null; }; export declare function extractOperationRequestNode(eventNode: BlueNode, blue: Blue): BlueNode | null; export declare function isOperationRequestForContract(contract: SequentialWorkflowOperation, eventNode: BlueNode, request: OperationRequest, context: ContractProcessorContext): boolean; export declare function loadOperation(contract: SequentialWorkflowOperation, context: ContractProcessorContext): LoadedOperation | null; export declare function channelsCompatible(operationChannelKey: string | null, handlerChannel: string | null): boolean; export declare function isRequestTypeCompatible(requestNode: BlueNode, operationNode: BlueNode, blue: Blue): boolean; export declare function isPinnedDocumentAllowed(request: { allowNewerVersion?: boolean; } | null | undefined, requestNode: BlueNode, context: ContractProcessorContext): boolean; //# sourceMappingURL=operation-matcher.d.ts.map