import { Exception } from "../core/errors";
import { type InvalidSchemaError, HttpStatus } from "bknd/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: InvalidSchemaError);
}
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);
}
