@microsoft/omnichannel-chat-sdk
Version:
Microsoft Omnichannel Chat SDK
26 lines (25 loc) • 1.09 kB
TypeScript
/**
* Classifies network/HTTP errors into standardized cancellation reason categories.
* Pure function with no side effects - suitable for unit testing.
*
* ADO 6373382: Diagnostic telemetry for ChatConfigRetrievalFailure
*/
/**
* Standardized cancellation reason categories for network errors
*/
export type CancellationReason = 'timeout' | 'request_cancelled' | 'browser_offline' | 'dns_lookup_failed' | 'connection_timeout' | 'connection_refused' | 'network_error_no_response' | 'server_error' | 'client_error' | 'unknown';
/**
* Classifies an error object into a standardized cancellation reason category.
*
* @param error The error object to classify (typically from axios or fetch)
* @param online Browser's online status (navigator.onLine) - optional
* @returns A standardized cancellation reason string
*
* @example
* ```typescript
* const error = { code: 'ECONNABORTED' };
* const reason = classifyNetworkError(error, true);
* // Returns: 'timeout'
* ```
*/
export declare function classifyNetworkError(error: unknown, online?: boolean): CancellationReason;