import { N as Negative, A as Add } from './chunks/CM89_aaq.js'; import { q as IsNumber, t as IsInteger } from './chunks/DZEfmVOc.js'; import './BooleanNor.js'; import './BooleanNot.js'; import './BooleanOr.js'; import './Tuple.js'; import './BooleanAnd.js'; import './MaybeReadonly.js'; import './TupleLength.js'; /** * Floors a number to the nearest integer. * * @template N The number to floor. * @returns The floored number. * @example MathFloor<1.1> // 1 */ type MathFloor = IsNumber extends true ? number : IsInteger extends true ? N : `${N}` extends `-${infer S extends number}.${number}` ? Negative> : `${N}` extends `${infer S extends number}.${number}` ? S : never; export type { MathFloor };