/**
 * Error handling system for Amazon SageMaker Provider
 *
 * This module provides comprehensive error handling, categorization,
 * and user-friendly error messages for SageMaker operations.
 */
import type { SageMakerErrorCode, SageMakerErrorInfo } from "../../types/index.js";
/**
 * Custom error class for SageMaker-specific errors
 */
export declare class SageMakerError extends Error {
    readonly code: SageMakerErrorCode;
    readonly statusCode?: number;
    readonly cause?: Error;
    readonly endpoint?: string;
    readonly requestId?: string;
    readonly retryable: boolean;
    constructor(message: string, options?: {
        code?: SageMakerErrorCode;
        statusCode?: number;
        cause?: Error;
        endpoint?: string;
        requestId?: string;
        retryable?: boolean;
    });
    /**
     * Convert error to JSON for logging/serialization
     */
    toJSON(): SageMakerErrorInfo & {
        stack?: string;
    };
    /**
     * Get user-friendly error message with troubleshooting guidance
     */
    getUserFriendlyMessage(): string;
    /**
     * Check if this error type is retryable
     */
    isRetryable(): boolean;
    /**
     * Get recommended retry delay in milliseconds
     */
    getRetryDelay(): number;
}
/**
 * Main error handler for SageMaker operations
 *
 * @param error - Original error from AWS SDK or other operations
 * @param endpoint - Endpoint name where error occurred (optional)
 * @returns Categorized SageMakerError with user guidance
 */
export declare function handleSageMakerError(error: unknown, endpoint?: string): SageMakerError;
/**
 * Create a validation error for configuration issues
 *
 * @param message - Validation error message
 * @param field - Configuration field that failed validation
 * @returns SageMakerError with validation details
 */
export declare function createValidationError(message: string, field?: string): SageMakerError;
/**
 * Create a credentials error with setup guidance
 *
 * @param message - Credentials error message
 * @returns SageMakerError with credentials guidance
 */
export declare function createCredentialsError(message: string): SageMakerError;
/**
 * Create a network error with connectivity guidance
 *
 * @param message - Network error message
 * @param endpoint - Endpoint that failed to connect
 * @returns SageMakerError with network guidance
 */
export declare function createNetworkError(message: string, endpoint?: string): SageMakerError;
/**
 * Check if an error is retryable based on its characteristics
 *
 * @param error - Error to check
 * @returns True if the error suggests a retry might succeed
 */
export declare function isRetryableError(error: unknown): boolean;
/**
 * Get recommended retry delay for an error
 *
 * @param error - Error to get retry delay for
 * @param attempt - Current retry attempt number (for exponential backoff)
 * @returns Recommended delay in milliseconds
 */
export declare function getRetryDelay(error: unknown, attempt?: number): number;
