import { Response } from 'express';

export const sendResponse = (
  res: Response,
  statusCode: number,
  message: string,
  data: unknown = null,
  pagination: Record<string, unknown> | null = null,
) => {
  res.status(statusCode).json({
    success: statusCode < 400,
    status_code: statusCode,
    message,
    data,
    errors: statusCode >= 400 ? message : null,
    pagination,
  });
};

export const handleError = (res: Response, error: unknown) => {
  const e = error as Error & { statusCode?: number };
  sendResponse(res, e.statusCode || 500, e.message);
};
