export interface UVBinding {
  errname(err: number): string;
  getErrorMap(): Record<string, number>;
  getErrorMessage(err: number): string;

  UV_E2BIG: -7;
  UV_EACCES: -13;
  UV_EADDRINUSE: -48;
  UV_EADDRNOTAVAIL: -49;
  UV_EAFNOSUPPORT: -47;
  UV_EAGAIN: -35;
  UV_EAI_ADDRFAMILY: -3000;
  UV_EAI_AGAIN: -3001;
  UV_EAI_BADFLAGS: -3002;
  UV_EAI_BADHINTS: -3013;
  UV_EAI_CANCELED: -3003;
  UV_EAI_FAIL: -3004;
  UV_EAI_FAMILY: -3005;
  UV_EAI_MEMORY: -3006;
  UV_EAI_NODATA: -3007;
  UV_EAI_NONAME: -3008;
  UV_EAI_OVERFLOW: -3009;
  UV_EAI_PROTOCOL: -3014;
  UV_EAI_SERVICE: -3010;
  UV_EAI_SOCKTYPE: -3011;
  UV_EALREADY: -37;
  UV_EBADF: -9;
  UV_EBUSY: -16;
  UV_ECANCELED: -89;
  UV_ECHARSET: -4080;
  UV_ECONNABORTED: -53;
  UV_ECONNREFUSED: -61;
  UV_ECONNRESET: -54;
  UV_EDESTADDRREQ: -39;
  UV_EEXIST: -17;
  UV_EFAULT: -14;
  UV_EFBIG: -27;
  UV_EFTYPE: -79;
  UV_EHOSTDOWN: -64;
  UV_EHOSTUNREACH: -65;
  UV_EILSEQ: -92;
  UV_EINTR: -4;
  UV_EINVAL: -22;
  UV_EIO: -5;
  UV_EISCONN: -56;
  UV_EISDIR: -21;
  UV_ELOOP: -62;
  UV_EMFILE: -24;
  UV_EMLINK: -31;
  UV_EMSGSIZE: -40;
  UV_ENAMETOOLONG: -63;
  UV_ENETDOWN: -50;
  UV_ENETUNREACH: -51;
  UV_ENFILE: -23;
  UV_ENOBUFS: -55;
  UV_ENODATA: -96;
  UV_ENODEV: -19;
  UV_ENOENT: -2;
  UV_ENOMEM: -12;
  UV_ENONET: -4056;
  UV_ENOPROTOOPT: -42;
  UV_ENOSPC: -28;
  UV_ENOSYS: -78;
  UV_ENOTCONN: -57;
  UV_ENOTDIR: -20;
  UV_ENOTEMPTY: -66;
  UV_ENOTSOCK: -38;
  UV_ENOTSUP: -45;
  UV_ENOTTY: -25;
  UV_ENXIO: -6;
  UV_EOF: -4095;
  UV_EOVERFLOW: -84;
  UV_EPERM: -1;
  UV_EPIPE: -32;
  UV_EPROTO: -100;
  UV_EPROTONOSUPPORT: -43;
  UV_EPROTOTYPE: -41;
  UV_ERANGE: -34;
  UV_EREMOTEIO: -4030;
  UV_EROFS: -30;
  UV_ESHUTDOWN: -58;
  UV_ESOCKTNOSUPPORT: -44;
  UV_ESPIPE: -29;
  UV_ESRCH: -3;
  UV_ETIMEDOUT: -60;
  UV_ETXTBSY: -26;
  UV_EUNATCH: -4023;
  UV_EXDEV: -18;
  UV_UNKNOWN: -4094;
}
