import { RepositoryError } from "./";
export declare class WriteRepositoryError extends RepositoryError {
}
export declare class ReadRepositoryError extends RepositoryError {
}
export type TypeReadRepositoryError = ItemNotFound | InvalidInput;
export type AdapterRepositoryError = AdapterToPersistenceError | AdapterToDomainError;
export type RepositoryQueryError = ItemNotFound | InvalidInput | AdapterToDomainError;
export type RepositoryPersistenceError = DuplicateEntry | ForeignConstraintKey | NullConstraintViolation | LengthConstraintViolation | NumericConstraintViolation | UniqueConstraintViolation | UnknownConstraintViolation | PrismaError | AdapterToPersistenceError;
export declare class ItemNotFound extends ReadRepositoryError {
    constructor(model: string, id: string);
}
export declare class InvalidInput extends WriteRepositoryError {
    constructor(target: any, expected: any);
}
export declare class ForeignConstraintKey extends WriteRepositoryError {
    constructor(table: any, constraint: any);
}
export declare class DuplicateEntry extends WriteRepositoryError {
    constructor(target: any);
}
export declare class NullConstraintViolation extends WriteRepositoryError {
    constructor(target: any);
}
export declare class LengthConstraintViolation extends WriteRepositoryError {
    constructor(target: any, max: any);
}
export declare class NumericConstraintViolation extends WriteRepositoryError {
    constructor(target: any, min: any, max: any);
}
export declare class UniqueConstraintViolation extends WriteRepositoryError {
    constructor(target: any);
}
export declare class UnknownConstraintViolation extends WriteRepositoryError {
    constructor(err: any);
}
export declare class PrismaError extends WriteRepositoryError {
    constructor(err: any);
}
export declare class UnknownError extends WriteRepositoryError {
    constructor(err: any);
}
export declare class AdapterToPersistenceError extends WriteRepositoryError {
    constructor(err: Error);
}
export declare class AdapterToDomainError extends WriteRepositoryError {
    constructor(err: Error);
}
//# sourceMappingURL=repository-errors.d.ts.map