@fractorysolutions/safe-units
Version:
Type-safe TypeScript units of measure
61 lines (60 loc) • 1.64 kB
TypeScript
import { Exponent } from "../exponent";
import { GenericMeasure } from "../measure/genericMeasure";
import { Length, PlaneAngle } from "./quantities";
/**
* `Math.acos` for `number` measures.
* @param x a dimensionless value
* @returns an angle
*/
export declare const acos: (angle: Dimensionless) => GenericMeasure<number, {
planeAngle: "1";
}>;
/**
* `Math.asin` for `number` measures.
* @param x a dimensionless value
* @returns an angle
*/
export declare const asin: (angle: Dimensionless) => GenericMeasure<number, {
planeAngle: "1";
}>;
/**
* `Math.atan` for `number` measures.
* @param x a dimensionless value
* @returns an angle
*/
export declare const atan: (angle: Dimensionless) => GenericMeasure<number, {
planeAngle: "1";
}>;
/**
* `Math.cos` for `number` measures.
* @param x an angle
* @returns a dimensionless value
*/
export declare const cos: (angle: GenericMeasure<number, {
planeAngle: "1";
}>) => Dimensionless;
/**
* `Math.sin` for `number` measures.
* @param x an angle
* @returns a dimensionless value
*/
export declare const sin: (angle: GenericMeasure<number, {
planeAngle: "1";
}>) => Dimensionless;
/**
* `Math.tan` for `number` measures.
* @param x an angle
* @returns a dimensionless value
*/
export declare const tan: (angle: GenericMeasure<number, {
planeAngle: "1";
}>) => Dimensionless;
/**
* `Math.atan2` for `number` measures.
* @param x a length
* @param y a length
* @returns an angle
*/
export declare function atan2(y: Length, x: Length): PlaneAngle;
type Dimensionless = GenericMeasure<number, Record<never, Exponent | undefined>>;
export {};