UNPKG

arangojs

Version:

The official ArangoDB JavaScript driver.

207 lines 5.56 kB
/** * ```ts * import type { ArangoError, HttpError } from "arangojs/errors"; * ``` * * The "errors" module provides types and interfaces for TypeScript related * to arangojs error handling. * * @packageDocumentation */ /// <reference types="node" resolution-mode="require"/> import * as connection from "./connection.js"; /** * Indicates whether the given value represents an {@link ArangoError}. * * @param error - A value that might be an `ArangoError`. */ export declare function isArangoError(error: any): error is ArangoError; /** * Indicates whether the given value represents a {@link NetworkError}. * * @param error - A value that might be a `NetworkError`. */ export declare function isNetworkError(error: any): error is NetworkError; /** * @internal * * Indicates whether the given value represents a Node.js `SystemError`. */ export declare function isSystemError(err: any): err is SystemError; /** * @internal * * Indicates whether the given value represents a Node.js `UndiciError`. */ export declare function isUndiciError(err: any): err is UndiciError; /** * Interface representing a Node.js `UndiciError`. * * @internal */ export interface UndiciError extends Error { code: `UND_${string}`; } /** * Interface representing a Node.js `SystemError`. * * @internal */ export interface SystemError extends Error { code: string; errno: number | string; syscall: string; } /** * Represents an error from a deliberate timeout encountered while waiting * for propagation. */ export declare class PropagationTimeoutError extends Error { name: string; constructor(message?: string, options?: { cause?: Error; }); } /** * Represents a network error or an error encountered while performing a network request. */ export declare class NetworkError extends Error { name: string; /** * Indicates whether the request that caused this error can be safely retried. */ isSafeToRetry: boolean | null; /** * Fetch request object. */ request: globalThis.Request; constructor(message: string, request: globalThis.Request, options?: { cause?: Error; isSafeToRetry?: boolean | null; }); toJSON(): { error: boolean; errorMessage: string; code: number; }; } /** * Represents an error from a deliberate timeout encountered while waiting * for a server response. */ export declare class ResponseTimeoutError extends NetworkError { name: string; constructor(message: string | undefined, request: globalThis.Request, options?: { cause?: Error; isSafeToRetry?: boolean | null; }); } /** * Represents an error from a request that was aborted. */ export declare class RequestAbortedError extends NetworkError { name: string; constructor(message: string | undefined, request: globalThis.Request, options?: { cause?: Error; isSafeToRetry?: boolean | null; }); } /** * Represents an error from a failed fetch request. * * The root cause is often extremely difficult to determine. */ export declare class FetchFailedError extends NetworkError { name: string; constructor(message: string | undefined, request: globalThis.Request, options?: { cause?: Error; isSafeToRetry?: boolean | null; }); } /** * Represents a plain HTTP error response. */ export declare class HttpError extends NetworkError { name: string; /** * HTTP status code of the server response. */ code: number; /** * Server response object. */ response: connection.ProcessedResponse; /** * @internal */ constructor(response: connection.ProcessedResponse, options?: { cause?: Error; isSafeToRetry?: boolean | null; }); toJSON(): { error: boolean; errorMessage: string; code: number; }; toString(): string; } /** * Represents an error returned by ArangoDB. */ export declare class ArangoError extends Error { name: string; /** * Indicates whether the request that caused this error can be safely retried. * * @internal */ isSafeToRetry: boolean | null; /** * @internal */ get error(): true; /** * ArangoDB error code. * * See [ArangoDB error documentation](https://www.arangodb.com/docs/stable/appendix-error-codes.html). */ errorNum: number; /** * Error message accompanying the error code. */ get errorMessage(): string; /** * HTTP status code included in the server error response object. */ code?: number; /** * @internal * * Creates a new `ArangoError` from a response object. */ static from(response: connection.ProcessedResponse<connection.ArangoErrorResponse>): ArangoError; /** * Creates a new `ArangoError` from an ArangoDB error response. */ constructor(data: Omit<connection.ArangoErrorResponse, "error">, options?: { cause?: Error; isSafeToRetry?: boolean | null; }); /** * Server response object. */ get response(): connection.ProcessedResponse<connection.ArangoErrorResponse> | undefined; /** * Fetch request object. */ get request(): globalThis.Request | undefined; /** * @internal * * Indicates that this object represents an ArangoDB error. */ get isArangoError(): true; toJSON(): connection.ArangoErrorResponse; toString(): string; } //# sourceMappingURL=errors.d.ts.map