import type { NotificationCopy, NotificationPayload, NotificationService } from "../types/notification.js"; /** * Build the notify() payload for a failed LLM decision. The runtime holds the * strategy context for these failures (action decisions, event log), so they * open an agent chat by category alone — no order exists yet to key on. The * generic seed lives inside `context` (the notification service persists * `context` verbatim and reads `context.contextText` from it; a sibling on the * payload root is dropped before the wire). * * `strategyWalletAddress` is set from the same address but is NOT tied to * openability — the notification service resolves the strategy/skill name from * it, so it ships whenever the address is known. * * Fail-safe: a missing/blank strategy address is an unusable chat key (a dead * tap), so we WARN and ship the message non-openable rather than an empty seed. */ export declare function buildDecisionErrorNotification(copy: NotificationCopy, subtype: string, address: string): NotificationPayload; /** The runtime bits {@link emitDecisionErrorNotification} needs — a minimal slice of * RuntimeContext so both actions can pass `this.context` directly. */ export interface DecisionErrorNotifyContext { notifications: NotificationService; strategyState: { address: string; }; } /** * The classify → log → bucket → build → notify ritual shared by every * action's decision-failure catch block. Extracted here so it lives in ONE place: * the classified `code` + `retryable` are logged (previously only the raw string * was), the two-bucket copy/subtype is derived, and the openable notification is * emitted (fire-and-forget — a delivery failure never disturbs the caller). * * @param ctx - the action's runtime context (notifications + strategy address). * @param message - the raw decision-error string (already unwrapped from the thrown value). */ export declare function emitDecisionErrorNotification(ctx: DecisionErrorNotifyContext, message: string): Promise; //# sourceMappingURL=decision-error-notification.d.ts.map