export declare enum ErrorCode { USER_INPUT_INVALID = "USER_INPUT_INVALID", PROVIDER_CONFIG_MISSING = "PROVIDER_CONFIG_MISSING", PROVIDER_UPSTREAM_ERROR = "PROVIDER_UPSTREAM_ERROR", PROVIDER_CONTEXT_OVERFLOW = "PROVIDER_CONTEXT_OVERFLOW", PROVIDER_AUTH_FAILED = "PROVIDER_AUTH_FAILED", PROVIDER_RATE_LIMITED = "PROVIDER_RATE_LIMITED", TOOL_EXECUTION_FAILED = "TOOL_EXECUTION_FAILED", TOOL_EXECUTION_TIMEOUT = "TOOL_EXECUTION_TIMEOUT", TOOL_NOT_FOUND = "TOOL_NOT_FOUND", TOOL_NOT_ALLOWED = "TOOL_NOT_ALLOWED", SESSION_NOT_FOUND = "SESSION_NOT_FOUND", SESSION_PERSIST_FAILED = "SESSION_PERSIST_FAILED", SKILL_LOAD_FAILED = "SKILL_LOAD_FAILED", MESH_PEER_UNREACHABLE = "MESH_PEER_UNREACHABLE", MESH_QUERY_REJECTED = "MESH_QUERY_REJECTED", MCP_CONNECTION_FAILED = "MCP_CONNECTION_FAILED", DEVICE_SSH_FAILED = "DEVICE_SSH_FAILED", USER_ABORTED = "USER_ABORTED", AGENT_DISPOSED = "AGENT_DISPOSED", CONFIG_IO_FAILED = "CONFIG_IO_FAILED", INTERNAL_INVARIANT_VIOLATED = "INTERNAL_INVARIANT_VIOLATED", UNKNOWN = "UNKNOWN" } export interface MossErrorDetails { code: ErrorCode; message: string; hint?: string; recoverable?: boolean; cause?: unknown; context?: Record; } export declare class MossError extends Error { readonly code: ErrorCode; readonly hint?: string; readonly recoverable: boolean; readonly context?: Record; readonly cause?: unknown; constructor(details: MossErrorDetails); toJSON(): Record; } export declare function isMossError(err: unknown): err is MossError; export declare function throwMoss(details: MossErrorDetails): never; export declare function wrapAsMoss(err: unknown, code: ErrorCode, opts?: Partial> & { message?: string; }): MossError; export declare function formatMossError(err: unknown): string; export declare function isMossErrorRecoverable(err: unknown): boolean; export declare function errorMessage(err: unknown): string; //# sourceMappingURL=errors.d.ts.map