import type { App } from "@slack/bolt"; import type { OpenClawConfig } from "openclaw/plugin-sdk/config-runtime"; import { type ExecApprovalRequest, type ExecApprovalResolved } from "openclaw/plugin-sdk/infra-runtime"; type SlackExecApprovalConfig = NonNullable["slack"]>["execApprovals"]>; type SlackExecApprovalHandlerOpts = { app: App; accountId: string; config: SlackExecApprovalConfig; gatewayUrl?: string; cfg: OpenClawConfig; }; export declare class SlackExecApprovalHandler { private readonly runtime; private readonly opts; constructor(opts: SlackExecApprovalHandlerOpts); shouldHandle(request: ExecApprovalRequest): boolean; start(): Promise; stop(): Promise; handleApprovalRequested(request: ExecApprovalRequest): Promise; handleApprovalResolved(resolved: ExecApprovalResolved): Promise; handleApprovalTimeout(approvalId: string): Promise; private finalizeResolved; private finalizeExpired; private updateMessage; } export {};