/** * @internal */ export interface ErrorLike extends Error { name: string; message: string; } /** * @internal */ export function isErrorLike(obj: unknown): obj is ErrorLike { return ( typeof obj === 'object' && obj !== null && 'name' in obj && 'message' in obj ); } /** * @internal */ export function isErrnoException(obj: unknown): obj is NodeJS.ErrnoException { return ( isErrorLike(obj) && ('errno' in obj || 'code' in obj || 'path' in obj || 'syscall' in obj) ); }