/** * MemoryStack React Native SDK Error Classes * Provides typed error handling for all SDK operations */ /** * Base error class for MemoryStack SDK */ export declare class MemoryStackError extends Error { readonly statusCode?: number; readonly details?: unknown; readonly requestId?: string; constructor(message: string, statusCode?: number, details?: unknown, requestId?: string); /** * Convert error to a plain object for logging/serialization */ toJSON(): Record; } /** * Authentication error (401) * Thrown when API key is invalid or missing */ export declare class AuthenticationError extends MemoryStackError { constructor(message?: string, details?: unknown); } /** * Rate limit exceeded error (429) * Includes rate limit headers for retry logic */ export declare class RateLimitError extends MemoryStackError { readonly limit?: number; readonly remaining?: number; readonly reset?: number; readonly retryAfter?: number; constructor(message?: string, limit?: number, remaining?: number, reset?: number, retryAfter?: number); /** * Get the recommended wait time in milliseconds before retrying */ getRetryDelayMs(): number; } /** * Validation error (400) * Thrown when request parameters are invalid */ export declare class ValidationError extends MemoryStackError { readonly field?: string; constructor(message: string, details?: unknown, field?: string); } /** * Not found error (404) * Thrown when a resource doesn't exist */ export declare class NotFoundError extends MemoryStackError { readonly resourceId?: string; readonly resourceType?: string; constructor(message?: string, resourceId?: string, resourceType?: string); } /** * Network error * Thrown when network request fails (no response received) */ export declare class NetworkError extends MemoryStackError { readonly originalError?: Error; readonly isTimeout: boolean; readonly isOffline: boolean; constructor(message?: string, originalError?: Error, isTimeout?: boolean, isOffline?: boolean); } /** * Offline error (React Native specific) * Thrown when operation requires network but device is offline */ export declare class OfflineError extends MemoryStackError { readonly operationType: string; readonly queuedForSync: boolean; constructor(message?: string, operationType?: string, queuedForSync?: boolean); } /** * Server error (5xx) * Thrown when server encounters an error */ export declare class ServerError extends MemoryStackError { constructor(message?: string, statusCode?: number, details?: unknown); } /** * Conflict error (409) * Thrown when there's a conflict with the current state of the resource */ export declare class ConflictError extends MemoryStackError { constructor(message?: string, details?: unknown); } /** * Helper function to check if an error is a MemoryStack error */ export declare function isMemoryStackError(error: unknown): error is MemoryStackError; /** * Helper function to check if error is retryable */ export declare function isRetryableError(error: unknown): boolean; //# sourceMappingURL=errors.d.ts.map