import { IErrorDetail } from 'ts-interface-checker';
import { Request, Response } from './aegapi-ua.js';
interface Options {
    cause?: unknown;
}
export declare class AEGAPIError extends Error {
    readonly request: Request;
    readonly response: Response | undefined;
    readonly errCause: unknown;
    constructor(request: Request, response: Response | undefined, message: string, options?: Options);
}
export declare class AEGAPIAuthorisationError extends AEGAPIError {
    constructor(request: Request, response: Response | undefined, message: string, options?: Options);
}
export declare class AEGAPIStatusCodeError extends AEGAPIError {
    readonly text: string;
    constructor(request: Request, response: Response, text: string, options?: Options);
    static getMessage(response: Response, text: string): string;
    static getBodyDescription(text: string): string | null;
}
export declare class AEGAPIValidationError extends AEGAPIError {
    readonly validation: IErrorDetail[];
    constructor(request: Request, response: Response, validation: IErrorDetail[], options?: Options);
    static getMessage(errors: IErrorDetail[]): string;
}
export {};
//# sourceMappingURL=aegapi-error.d.ts.map