/** * Error types for MCP errors */ export type McpErrorType = 'AUTHENTICATION_REQUIRED' | 'NOT_FOUND' | 'VALIDATION_ERROR' | 'RATE_LIMIT_EXCEEDED' | 'API_ERROR' | 'UNEXPECTED_ERROR'; /** * Error types for classification */ export declare enum ErrorType { AUTH_MISSING = "AUTH_MISSING", AUTH_INVALID = "AUTH_INVALID", API_ERROR = "API_ERROR", UNEXPECTED_ERROR = "UNEXPECTED_ERROR" } /** * Custom error class with type classification */ export declare class McpError extends Error { type: ErrorType; errorType?: McpErrorType; statusCode?: number; originalError?: unknown; constructor(message: string, type: ErrorType, statusCode?: number, originalError?: unknown); } /** * Helper to unwrap nested McpErrors and return the deepest original error. * This is useful when an McpError contains another McpError as `originalError` * which in turn may wrap the vendor (Bitbucket) error text or object. */ export declare function getDeepOriginalError(error: unknown): unknown; /** * Create an authentication missing error */ export declare function createAuthMissingError(message?: string, originalError?: unknown): McpError; /** * Create an authentication invalid error */ export declare function createAuthInvalidError(message?: string, originalError?: unknown): McpError; /** * Create an API error */ export declare function createApiError(message: string, statusCode?: number, originalError?: unknown): McpError; /** * Create an unexpected error */ export declare function createUnexpectedError(message?: string, originalError?: unknown): McpError; /** * Ensure an error is an McpError */ export declare function ensureMcpError(error: unknown): McpError; /** * Format error for MCP tool response * Includes raw error details in the text content so AI can see the full context */ export declare function formatErrorForMcpTool(error: unknown): { content: Array<{ type: 'text'; text: string; }>; isError: boolean; }; /** * Format error for MCP resource response */ export declare function formatErrorForMcpResource(error: unknown, uri: string): { contents: Array<{ uri: string; text: string; mimeType: string; description?: string; }>; }; /** * Handle error in CLI context with improved user feedback */ export declare function handleCliError(error: unknown): never;