/** * Thin typed wrapper around `fetch` that: * • forwards an `AbortSignal` into the underlying request * • serializes plain objects as JSON * • distinguishes `AbortError` from network errors * • normalizes non-2xx responses into an `HttpError` carrying the raw detail * * Application-level concerns (auth header injection, base URL, 401 handling) * live in the callers (`lib/api.ts`, `features/face-scan/api/face-client.ts`). */ export interface AbortableRequestInit extends Omit { signal?: AbortSignal; body?: unknown; } export declare class HttpError extends Error { readonly status: number; readonly detail: unknown; constructor(status: number, message: string, detail?: unknown); } export declare function isAbortError(err: unknown): err is DOMException; export declare function abortableRequest(url: string, init?: AbortableRequestInit): Promise; //# sourceMappingURL=abortable-request.d.ts.map