export class ScraperError extends Error { constructor( message: string, public readonly code?: string, public readonly statusCode?: number ) { super(message); this.name = 'ScraperError'; } } export class DatabaseError extends Error { constructor(message: string, public readonly originalError?: Error) { super(message); this.name = 'DatabaseError'; } } export class APIError extends Error { constructor( message: string, public readonly statusCode: number, public readonly response?: any ) { super(message); this.name = 'APIError'; } }