import { i as OpenClawConfig } from "./types.openclaw-Dkap9jPv.js"; import { x as ExecApprovalForwardingConfig } from "./types.slack-DAS-St0z.js"; import { i as ChannelApprovalCapability } from "./types.adapters-CwaMsd-D.js"; import { s as ExecApprovalRequest } from "./exec-approvals-CPpcfY0H.js"; import { s as PluginApprovalRequest } from "./plugin-approvals-BT7-U8LU.js"; import { s as ChannelOutboundPayloadHint } from "./outbound.types-ylohpEJA.js"; import { r as ReplyPayload } from "./reply-payload-B8t--qSq.js"; import { i as ExecApprovalReplyMetadata } from "./exec-approval-reply-DTYbPadH.js"; import { n as ExecApprovalSessionTarget } from "./exec-approval-session-target-_zieu_H4.js"; //#region src/plugin-sdk/approval-native-helpers.d.ts type ApprovalRequest = ExecApprovalRequest | PluginApprovalRequest; type ApprovalKind = "exec" | "plugin"; type DeliverySuppressionInput = Parameters["shouldSuppressForwardingFallback"]>>[0]; type NativeApprovalForwardTarget = DeliverySuppressionInput["target"]; type LocalNativeExecApprovalConfig = { enabled?: boolean | "auto"; mode?: string | null; agentFilter?: string[]; sessionFilter?: string[]; }; type ChannelApprovalForwardTarget = DeliverySuppressionInput["target"]; type ApprovalResolverParams = { cfg: OpenClawConfig; accountId?: string | null; approvalKind?: ApprovalKind; request: ApprovalRequest; }; type ChannelApprovalForwardingEvaluatorParams = { channel: string; isTransportEnabled: (params: { cfg: OpenClawConfig; accountId?: string | null; }) => boolean; hasMatchingTarget: (params: { cfg: OpenClawConfig; config: ExecApprovalForwardingConfig; accountId?: string | null; target?: ChannelApprovalForwardTarget; }) => boolean; hasOriginOrSessionTarget: (params: { cfg: OpenClawConfig; accountId?: string | null; request: ApprovalRequest; }) => boolean; }; type ChannelApprovalForwardingEligibilityParams = { cfg: OpenClawConfig; accountId?: string | null; approvalKind: ApprovalKind; request: ApprovalRequest; }; type ChannelApprovalPotentialRouteParams = { cfg: OpenClawConfig; accountId?: string | null; approvalKind: ApprovalKind; nativeSessionOnly?: boolean; }; type ChannelApprovalExplicitTargetEligibilityParams = ChannelApprovalForwardingEligibilityParams & { target: ChannelApprovalForwardTarget; }; type NativeApprovalTargetNormalizer = (target: TTarget, request: ApprovalRequest) => TTarget | null | undefined; type NativeApprovalForwardingFallbackSuppressorParams = { channel: string; normalizeForwardTarget: (target: NativeApprovalForwardTarget) => TTarget | null; resolveAccountId?: (params: { forwardingTarget: TTarget; target: NativeApprovalForwardTarget; request: ApprovalRequest; }) => string | null | undefined; resolveApprovalKind?: (params: { approvalKind?: ApprovalKind; request: ApprovalRequest; }) => ApprovalKind; isSessionRouteEligible: (params: { cfg: OpenClawConfig; accountId?: string | null; approvalKind: ApprovalKind; request: ApprovalRequest; }) => boolean; isExplicitTargetEligible?: (params: { cfg: OpenClawConfig; accountId?: string | null; approvalKind: ApprovalKind; request: ApprovalRequest; target: NativeApprovalForwardTarget; }) => boolean; resolveForwardingTargetForMatch?: (params: { forwardingTarget: TTarget; accountId?: string | null; target: NativeApprovalForwardTarget; approvalKind: ApprovalKind; request: ApprovalRequest; }) => TTarget | null; resolveOriginTarget: (params: { cfg: OpenClawConfig; accountId?: string | null; approvalKind: ApprovalKind; request: ApprovalRequest; }) => TTarget | null; resolveApproverDmTargets: (params: { cfg: OpenClawConfig; accountId?: string | null; approvalKind: ApprovalKind; request: ApprovalRequest; }) => readonly TTarget[]; targetsMatch?: (left: TTarget, right: TTarget) => boolean; }; type NativeOriginResolverParams = { channel: string; shouldHandleRequest?: (params: ApprovalResolverParams) => boolean; resolveTurnSourceTarget: (request: ApprovalRequest) => TTarget | null; resolveSessionTarget: (sessionTarget: ExecApprovalSessionTarget, request: ApprovalRequest) => TTarget | null; normalizeTarget?: NativeApprovalTargetNormalizer; normalizeTargetForMatch?: NativeApprovalTargetNormalizer; targetsMatch?: (a: TTarget, b: TTarget) => boolean; resolveFallbackTarget?: (request: ApprovalRequest) => TTarget | null; }; type CustomOriginResolverParams = { channel: string; shouldHandleRequest?: (params: ApprovalResolverParams) => boolean; resolveTurnSourceTarget: (request: ApprovalRequest) => TTarget | null; resolveSessionTarget: (sessionTarget: ExecApprovalSessionTarget, request: ApprovalRequest) => TTarget | null; normalizeTarget?: NativeApprovalTargetNormalizer; normalizeTargetForMatch?: NativeApprovalTargetNormalizer; targetsMatch: (a: TTarget, b: TTarget) => boolean; resolveFallbackTarget?: (request: ApprovalRequest) => TTarget | null; }; type NativeApprovalTarget = { to: string; accountId?: string | null; threadId?: string | number | null; }; declare function nativeApprovalTargetsMatch(params: { channel?: string | null; left: NativeApprovalTarget; right: NativeApprovalTarget; }): boolean; declare function shouldSuppressLocalNativeExecApprovalPrompt(params: { cfg: OpenClawConfig; accountId?: string | null; payload: ReplyPayload; hint?: ChannelOutboundPayloadHint; isTransportEnabled?: (params: { cfg: OpenClawConfig; accountId?: string | null; }) => boolean; isNativeDeliveryEnabled?: (params: { cfg: OpenClawConfig; accountId?: string | null; }) => boolean; resolveApprovalConfig?: (params: { cfg: OpenClawConfig; accountId?: string | null; metadata: ExecApprovalReplyMetadata; }) => LocalNativeExecApprovalConfig | undefined; requireApprovalConfigEnabled?: boolean; enforceForwardingMode?: boolean; isSessionRouteEligible?: (params: { cfg: OpenClawConfig; accountId?: string | null; metadata: ExecApprovalReplyMetadata; }) => boolean; hasExactTargetProof?: boolean; fallbackAgentIdFromSessionKey?: boolean; }): boolean; declare function resolveApprovalKind(request: ApprovalRequest, approvalKind?: ApprovalKind): ApprovalKind; declare function createChannelApprovalForwardingEvaluator(params: ChannelApprovalForwardingEvaluatorParams): { canAnyPotentiallyRoute: (input: { cfg: OpenClawConfig; accountId?: string | null; nativeSessionOnly?: boolean; }) => boolean; isExplicitTargetEligible: (input: ChannelApprovalExplicitTargetEligibilityParams) => boolean; isPotentialRoute: (input: ChannelApprovalPotentialRouteParams) => boolean; isSessionEligible: (input: ChannelApprovalForwardingEligibilityParams) => boolean; shouldHandleRequest: (input: { cfg: OpenClawConfig; accountId?: string | null; approvalKind?: ApprovalKind; request: ApprovalRequest; }) => boolean; }; declare function createNativeApprovalForwardingFallbackSuppressor(params: NativeApprovalForwardingFallbackSuppressorParams): NonNullable["shouldSuppressForwardingFallback"]>; declare function createChannelNativeOriginTargetResolver(params: NativeOriginResolverParams): (input: ApprovalResolverParams) => TTarget | null; declare function createChannelNativeOriginTargetResolver(params: CustomOriginResolverParams): (input: ApprovalResolverParams) => TTarget | null; declare function createChannelApproverDmTargetResolver(params: { shouldHandleRequest?: (params: ApprovalResolverParams) => boolean; resolveApprovers: (params: { cfg: OpenClawConfig; accountId?: string | null; }) => readonly TApprover[]; mapApprover: (approver: TApprover, params: ApprovalResolverParams) => TTarget | null | undefined; }): (input: ApprovalResolverParams) => TTarget[]; //#endregion export { createChannelApproverDmTargetResolver as a, nativeApprovalTargetsMatch as c, createChannelApprovalForwardingEvaluator as i, resolveApprovalKind as l, ChannelApprovalForwardingEligibilityParams as n, createChannelNativeOriginTargetResolver as o, ChannelApprovalPotentialRouteParams as r, createNativeApprovalForwardingFallbackSuppressor as s, ChannelApprovalExplicitTargetEligibilityParams as t, shouldSuppressLocalNativeExecApprovalPrompt as u };