/** * Error handling system for ai-patterns */ /** * Error codes for all patterns */ export declare enum ErrorCode { MAX_RETRIES_EXCEEDED = "MAX_RETRIES_EXCEEDED", INVALID_MAX_ATTEMPTS = "INVALID_MAX_ATTEMPTS", NON_RETRYABLE_ERROR = "NON_RETRYABLE_ERROR", TIMEOUT = "TIMEOUT", INVALID_TIMEOUT = "INVALID_TIMEOUT", ABORTED = "ABORTED", CIRCUIT_OPEN = "CIRCUIT_OPEN", CIRCUIT_INVALID_CONFIG = "CIRCUIT_INVALID_CONFIG", RATE_LIMIT_EXCEEDED = "RATE_LIMIT_EXCEEDED", INVALID_RATE_LIMIT_STRATEGY = "INVALID_RATE_LIMIT_STRATEGY", INVALID_RATE_LIMIT_CONFIG = "INVALID_RATE_LIMIT_CONFIG", FAN_OUT_PARTIAL_FAILURE = "FAN_OUT_PARTIAL_FAILURE", INVALID_CONCURRENCY = "INVALID_CONCURRENCY", SAGA_STEP_FAILED = "SAGA_STEP_FAILED", SAGA_STEP_TIMEOUT = "SAGA_STEP_TIMEOUT", SAGA_COMPENSATION_FAILED = "SAGA_COMPENSATION_FAILED", REVIEW_TIMEOUT = "REVIEW_TIMEOUT", NO_AI_OUTPUT = "NO_AI_OUTPUT", ESCALATION_FAILED = "ESCALATION_FAILED", CONCURRENT_REQUEST = "CONCURRENT_REQUEST", WAIT_TIMEOUT = "WAIT_TIMEOUT", REQUEST_FAILED = "REQUEST_FAILED", INVALID_IDEMPOTENCY_KEY = "INVALID_IDEMPOTENCY_KEY", NO_MATCHING_BRANCH = "NO_MATCHING_BRANCH", NO_VARIANTS = "NO_VARIANTS", INVALID_VARIANT_WEIGHTS = "INVALID_VARIANT_WEIGHTS", VARIANT_EXECUTION_FAILED = "VARIANT_EXECUTION_FAILED", BUDGET_EXCEEDED = "BUDGET_EXCEEDED", INVALID_COST_CONFIG = "INVALID_COST_CONFIG", INVALID_CONFIGURATION = "INVALID_CONFIGURATION", INVALID_ARGUMENT = "INVALID_ARGUMENT", EXECUTION_FAILED = "EXECUTION_FAILED", ALL_RETRIES_FAILED = "ALL_RETRIES_FAILED", OPERATION_FAILED = "OPERATION_FAILED", UNKNOWN_ERROR = "UNKNOWN_ERROR" } /** * Resolution strategies for common errors */ interface ErrorResolution { /** * What went wrong */ problem: string; /** * Why it happened */ cause: string; /** * How to fix it */ solution: string; /** * Additional context or tips */ tips?: string[]; } /** * Enhanced error class with resolution guidance */ export declare class PatternError extends Error { /** * Error code */ readonly code: ErrorCode; /** * Original cause (if any) */ readonly cause?: Error; /** * Resolution guidance */ readonly resolution: ErrorResolution; /** * Additional metadata */ readonly metadata?: Record; constructor(message: string, code: ErrorCode, cause?: Error, metadata?: Record); /** * Get a formatted error message with resolution */ toString(): string; /** * Get structured error info */ toJSON(): object; } export {}; //# sourceMappingURL=errors.d.ts.map