import { HTTPError } from "ky"; export declare function hasExceptionName(data: unknown): boolean; /** * Pull the most actionable text out of a failed Bitbucket Server response * body. Bitbucket Server responds with * { "errors": [{ "message": "...", "exceptionName": "..." }] } * on most failures, so prefer that shape. Fall back to a generic `.message` * field, then to the raw body (truncated). */ export declare function extractBitbucketMessage(data: unknown): string; /** * What every failed Bitbucket call throws. `message` already carries the * server's own reason (`exceptionName: message`, reviewer errors, and so on), * so a caller never has to know which HTTP library made the request. */ export declare class BitbucketApiError extends Error { readonly status: number; readonly url: string; readonly body: unknown; constructor(params: { message: string; status: number; url: string; body: unknown; }); static from(error: HTTPError): BitbucketApiError; }