rivo
Version:
🤖 The ultimate library you need for composable type-level programming in TypeScript, powered by HKT.
22 lines (19 loc) • 604 B
TypeScript
import type { Compare } from "./Compare";
import type { Arg0, Arg1, Fn } from "../HKT";
import type { AssertBool } from "../helpers";
import type { LT } from "../typeclass/Ord";
/**
* Check if `N` is less than `M`.
*
* Sig: `(n: number, m: number) => boolean`
*/
type LT_<N extends number, M extends number> = AssertBool<Compare<N, M> extends LT ? true : false>;
export type { LT_ as LT };
/**
* [Fn] Check if `n` is less than `m`.
*
* Sig: `(n: number, m: number) => boolean`
*/
export default interface LTFn extends Fn<[number, number], boolean> {
def: () => LT_<Arg0<this>, Arg1<this>>;
}