export function safeParseBigInt(val: unknown): bigint | undefined {
  if (val === undefined || val === null || val === "") return undefined;
  try {
    const str = String(val).trim();
    if (!/^-?\d+$/.test(str)) return undefined;
    return BigInt(str);
  } catch {
    return undefined;
  }
}

export function safeParseDate(val: unknown): Date | undefined {
  if (!val) return undefined;
  const d = new Date(String(val));
  if (isNaN(d.getTime())) return undefined;
  return d;
}
