errors.ts 325 Bytes
export class BizError extends Error {
  code: number;
  data?: unknown;

  constructor(code: number, message: string, data?: unknown) {
    super(message);
    this.name = 'BizError';
    this.code = code;
    this.data = data;
  }
}

export function isBizError(e: unknown): e is BizError {
  return e instanceof BizError;
}