```
/** The temperature in degrees Fahrenheit. */
export function celsiusToFahrenheit(celsius: number): number {
  internalNumberCheck(celsius);
  return celsius * 1.8 + 32;
}

/** The temperature in kelvin. */
export function celsiusToKelvin(celsius: number): number {
  internalNumberCheck(celsius);
  return celsius + 273.15;
}

/**
 * Validates that the input is a finite number and not below -273.15 if expected.
 * Throws an Error with "celsius must be a finite number" or similar if invalid.
 */
function internalNumberCheck(value: any): void {
  if (typeof value !== "number" || !Number.isFinite(value) || value < -273.15) {
    throw new Error("celsius must be a finite number at or above absolute zero");
  }
}
```