import { Exception } from "../core";
import { HttpStatus, type TypeInvalidError } from "../core/utils";
import type { Entity } from "./entities";
import type { Field } from "./fields";
export declare class UnableToConnectException extends Exception {
    name: string;
    code: HttpStatus;
}
export declare class InvalidSearchParamsException extends Exception {
    name: string;
    code: HttpStatus;
}
export declare class TransformRetrieveFailedException extends Exception {
    name: string;
    code: HttpStatus;
}
export declare class TransformPersistFailedException extends Exception {
    name: string;
    code: HttpStatus;
    static invalidType(property: string, expected: string, given: any): TransformPersistFailedException;
    static required(property: string): TransformPersistFailedException;
}
export declare class InvalidFieldConfigException extends Exception {
    given: any;
    name: string;
    code: HttpStatus;
    constructor(field: Field<any, any, any>, given: any, error: TypeInvalidError);
}
export declare class EntityNotDefinedException extends Exception {
    name: string;
    code: HttpStatus;
    constructor(entity?: Entity | string);
}
export declare class EntityNotFoundException extends Exception {
    name: string;
    code: HttpStatus;
    constructor(entity: Entity | string, id: any);
}
