// This file was auto-generated by Fern from our API Definition. import type * as core from "../core"; import { toJson } from "../core/json"; export class CohereError extends Error { public readonly statusCode?: number; public readonly body?: unknown; public readonly rawResponse?: core.RawResponse; constructor({ message, statusCode, body, rawResponse, }: { message?: string; statusCode?: number; body?: unknown; rawResponse?: core.RawResponse; }) { super(buildMessage({ message, statusCode, body })); Object.setPrototypeOf(this, CohereError.prototype); this.statusCode = statusCode; this.body = body; this.rawResponse = rawResponse; } } function buildMessage({ message, statusCode, body, }: { message: string | undefined; statusCode: number | undefined; body: unknown | undefined; }): string { const lines: string[] = []; if (message != null) { lines.push(message); } if (statusCode != null) { lines.push(`Status code: ${statusCode.toString()}`); } if (body != null) { lines.push(`Body: ${toJson(body, undefined, 2)}`); } return lines.join("\n"); }