UNPKG

sussy-util

Version:
260 lines (259 loc) 10.6 kB
import { LengthType, TemperatureType, SpeedType } from '../Types'; export default class UnitConverter { private static readonly KILOMETERS_PER_MILE; private static readonly FAHRENHEIT_TO_CELSIUS_OFFSET; private static readonly KELVIN_TO_CELSIUS_OFFSET; private static readonly FAHRENHEIT_TO_CELSIUS_FACTOR; private static readonly POUNDS_TO_KILOGRAMS; private static readonly TEMPERATURE_MAP; private static readonly LENGTH_MAP; private static readonly SPEED_MAP; /** * This function takes a number and adds 273.15 to it. * @param {number} val - number - The value to convert * @returns The value of the variable val plus the value of the constant KELVIN_TO_CELSIUS_OFFSET. */ static kelvinToCelsius(val: number): number; /** * Convert a temperature in Celsius to Kelvin. * @param {number} val - number - The value to convert. * @returns The value of the argument minus 273.15 */ static celsiusToKelvin(val: number): number; /** * Convert a temperature in Fahrenheit to Kelvin by first converting it to Celsius and then to * Kelvin. * @param {number} val - number - The value to convert * @returns The value of the function call. */ static fahrenheitToKelvin(val: number): number; /** * Convert a temperature in Kelvin to Fahrenheit by first converting it to Celsius and then to * Fahrenheit. * @param {number} val - number - The value to convert * @returns The value of the function call. */ static kelvinToFahrenheit(val: number): number; /** * Convert a temperature in Celsius to Rankine. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 9/5. */ static celsiusToRankine(val: number): number; /** * Convert a temperature in Celsius to Delisle. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by -3/2 and added to 100. */ static celsiusToDelisle(val: number): number; /** * Convert a temperature in Fahrenheit to Rankine. * @param {number} val - The value to convert. * @returns The value of the argument plus 459.67. */ static fahrenheitToRankine(val: number): number; /** * Convert a temperature in Fahrenheit to Delisle. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by -3/2 and added to 212. */ static fahrenheitToDelisle(val: number): number; /** * Convert a temperature in Kelvin to Rankine. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 9/5. */ static kelvinToRankine(val: number): number; /** * Convert a temperature in Kelvin to Delisle. * @param {number} val - The value to convert. * @returns The value of the argument minus 273.15, multiplied by -3/2, and added to 373.15. */ static kelvinToDelisle(val: number): number; /** * Convert a temperature in Rankine to Celsius. * @param {number} val - The value to convert. * @returns The value of the argument minus 459.67. */ static rankineToCelsius(val: number): number; /** * Convert a temperature in Rankine to Fahrenheit. * @param {number} val - The value to convert. * @returns The value of the argument minus 459.67. */ static rankineToFahrenheit(val: number): number; /** * Convert a temperature in Rankine to Kelvin. * @param {number} val - The value to convert. * @returns The value of the argument divided by 1.8. */ static rankineToKelvin(val: number): number; /** * Convert a temperature in Rankine to Delisle. * @param {number} val - The value to convert. * @returns The value of the argument minus 491.67, multiplied by -3/2, and added to 100. */ static rankineToDelisle(val: number): number; /** * Convert a temperature in Delisle to Celsius. * @param {number} val - The value to convert. * @returns The value of the argument minus 100, multiplied by -2/3. */ static delisleToCelsius(val: number): number; /** * Convert a temperature in Delisle to Fahrenheit. * @param {number} val - The value to convert. * @returns The value of the argument minus 100, multiplied by -2/3, and added to 212. */ static delisleToFahrenheit(val: number): number; /** * Convert a temperature in Delisle to Kelvin. * @param {number} val - The value to convert. * @returns The value of the argument minus 100, multiplied by -2/3, and added to 373.15. */ static delisleToKelvin(val: number): number; /** * Convert a temperature in Delisle to Rankine. * @param {number} val - The value to convert. * @returns The value of the argument minus 100, multiplied by -2/3, and added to 491.67. */ static delisleToRankine(val: number): number; /** * Convert kilometers to miles. * @param {number} kilometers - number * @returns The number of miles in the given number of kilometers. */ static kilometersToMiles(kilometers: number): number; /** * Converts miles to kilometers. * @param {number} miles - number - The number of miles to convert to kilometers. * @returns The number of kilometers per mile. */ static milesToKilometers(miles: number): number; /** * Convert a temperature in Celsius to Fahrenheit. * @param {number} celsius - number - The temperature in celsius * @returns The temperature in Fahrenheit. */ static celsiusToFahrenheit(celsius: number): number; /** * Convert a temperature in Fahrenheit to Celsius. * @param {number} fahrenheit - number - The temperature in Fahrenheit * @returns The return value is the result of the calculation. */ static fahrenheitToCelsius(fahrenheit: number): number; /** * Convert a length in Yards to Miles. * @param {number} val - The value to convert. * @returns The value of the argument divided by 1760. */ static yardsToMiles(val: number): number; /** * Convert a length in Yards to Kilometers. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 0.0009144. */ static yardsToKilometers(val: number): number; /** * Convert a length in Yards to Feet. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 3. */ static yardsToFeet(val: number): number; /** * Convert a length in Feet to Miles. * @param {number} val - The value to convert. * @returns The value of the argument divided by 5280. */ static feetToMiles(val: number): number; /** * Convert a length in Feet to Kilometers. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 0.0003048. */ static feetToKilometers(val: number): number; /** * Convert a length in Feet to Yards. * @param {number} val - The value to convert. * @returns The value of the argument divided by 3. */ static feetToYards(val: number): number; /** * If the conversion is not possible, throws an error, otherwise, returns the result of the * conversion. * * @param {number} value - number - The value to convert * @param {UnitType} from - UnitType * @param {UnitType} to - UnitType - The unit type to convert to * @returns The return value is the result of the conversion */ static convertLenght(value: number, from: LengthType, to: LengthType): number; /** * Convert a length in Kilometers to Yards. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 1094. */ static kilometersToYards(val: number): number; /** * Convert a length in Kilometers to Feet. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 3281. */ static kilometersToFeet(val: number): number; /** * Convert a length in Miles to Yards. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 1760. */ static milesToYards(val: number): number; /** * Convert a length in Miles to Feet. * @param {number} val - The value to convert. * @returns The value of the argument multiplied by 5280. */ static milesToFeet(val: number): number; /** * If the conversion is not possible, throws an error, otherwise, returns the result of the * conversion. * * @param {number} value - number - The value to convert * @param {UnitType} from - UnitType * @param {UnitType} to - UnitType - The unit type to convert to * @returns The return value is the result of the conversion */ static convertTemperature(value: number, from: TemperatureType, to: TemperatureType): number; /** * If the conversion is not possible, throws an error, otherwise, returns the result of the * conversion. * * @param {number} value - number - The value to convert * @param {UnitType} from - UnitType * @param {UnitType} to - UnitType - The unit type to convert to * @returns The return value is the result of the conversion */ static convertSpeed(value: number, from: SpeedType, to: SpeedType): number; /** * Converts a speed from kilometers per hour to miles per hour. * @param {number} kmPerHour - The speed in kilometers per hour. * @returns {number} The speed in miles per hour. */ static kilometersPerHourToMilesPerHour(kmPerHour: number): number; /** * Converts a speed from miles per hour to kilometers per hour. * @param {number} mph - The speed in miles per hour. * @returns {number} The speed in kilometers per hour. */ static milesPerHourToKilometersPerHour(mph: number): number; /** * Converts a weight from kilograms to pounds. * @param {number} kilograms - The weight in kilograms. * @returns {number} The weight in pounds. */ static kilogramsToPounds(kilograms: number): number; /** * Converts a weight from pounds to kilograms. * @param {number} pounds - The weight in pounds. * @returns {number} The weight in kilograms. */ static poundsToKilograms(pounds: number): number; }