33 lines
686 B
TypeScript
33 lines
686 B
TypeScript
export class AppError extends Error {
|
|
public readonly statusCode: number;
|
|
|
|
constructor(message: string, statusCode: number) {
|
|
super(message);
|
|
this.name = this.constructor.name;
|
|
this.statusCode = statusCode;
|
|
}
|
|
}
|
|
|
|
export class ValidationError extends AppError {
|
|
constructor(message: string) {
|
|
super(message, 400);
|
|
}
|
|
}
|
|
|
|
export class NotFoundError extends AppError {
|
|
constructor(message: string) {
|
|
super(message, 404);
|
|
}
|
|
}
|
|
|
|
export class ConflictError extends AppError {
|
|
constructor(message: string) {
|
|
super(message, 409);
|
|
}
|
|
}
|
|
|
|
export class UnprocessableEntityError extends AppError {
|
|
constructor(message: string) {
|
|
super(message, 422);
|
|
}
|
|
}
|