import { Event } from "@js-soft/ts-utils"; import { AcceptResponseItem, RejectResponseItem, Request, RequestItem, ResponseItem } from "@nmshd/content"; import { CoreAddress } from "@nmshd/core-types"; import { ValidationResult } from "../../common/ValidationResult"; import { AcceptRequestItemParametersJSON } from "../incoming/decide/AcceptRequestItemParameters"; import { RejectRequestItemParametersJSON } from "../incoming/decide/RejectRequestItemParameters"; import { AbstractRequestItemProcessor } from "./AbstractRequestItemProcessor"; import { LocalRequestInfo } from "./IRequestItemProcessor"; export declare class GenericRequestItemProcessor extends AbstractRequestItemProcessor { checkPrerequisitesOfIncomingRequestItem(requestItem: TRequestItem, requestInfo: LocalRequestInfo): Promise | boolean; canAccept(requestItem: TRequestItem, params: TAcceptParams, requestInfo: LocalRequestInfo): Promise | ValidationResult; canReject(requestItem: TRequestItem, params: TRejectParams, requestInfo: LocalRequestInfo): Promise | ValidationResult; accept(requestItem: TRequestItem, params: TAcceptParams, requestInfo: LocalRequestInfo): AcceptResponseItem | Promise; reject(requestItem: TRequestItem, params: TRejectParams, requestInfo: LocalRequestInfo): RejectResponseItem | Promise; canCreateOutgoingRequestItem(requestItem: TRequestItem, request: Request, recipient?: CoreAddress): Promise | ValidationResult; canApplyIncomingResponseItem(responseItem: AcceptResponseItem, requestItem: TRequestItem, requestInfo: LocalRequestInfo): Promise | ValidationResult; applyIncomingResponseItem(responseItem: ResponseItem, requestItem: TRequestItem, requestInfo: LocalRequestInfo): Event | void | Promise; } //# sourceMappingURL=GenericRequestItemProcessor.d.ts.map