[hkt-toolbelt](../Home.md) / NaturalNumber # Namespace: NaturalNumber ## Interfaces - [Add](../interfaces/NaturalNumber.Add.md) - [Compare](../interfaces/NaturalNumber.Compare.md) - [Decrement](../interfaces/NaturalNumber.Decrement.md) - [Divide](../interfaces/NaturalNumber.Divide.md) - [DivideBy](../interfaces/NaturalNumber.DivideBy.md) - [Increment](../interfaces/NaturalNumber.Increment.md) - [IsEven](../interfaces/NaturalNumber.IsEven.md) - [IsOdd](../interfaces/NaturalNumber.IsOdd.md) - [Modulo](../interfaces/NaturalNumber.Modulo.md) - [Multiply](../interfaces/NaturalNumber.Multiply.md) - [Subtract](../interfaces/NaturalNumber.Subtract.md) - [ToList](../interfaces/NaturalNumber.ToList.md) ## Type Aliases ### \_$add Ƭ **\_$add**<`A`, `B`, `A_LIST`, `B_LIST`, `SUM_LIST`, `SUM`\>: `SUM` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `B` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `B_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`B`\> | | `SUM_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$add`](DigitList.md#_$add)<`A_LIST`, `B_LIST`\> | | `SUM` | [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`SUM_LIST`\>\> | #### Defined in [natural-number/add.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/add.ts#L3) ___ ### \_$compare Ƭ **\_$compare**<`A`, `B`, `A_LIST`, `B_LIST`, `RESULT`\>: `RESULT` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `B` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `B_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`B`\> | | `RESULT` | extends ``-1`` \| ``0`` \| ``1`` = [`_$compare`](DigitList.md#_$compare)<`A_LIST`, `B_LIST`\> | #### Defined in [natural-number/compare.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/compare.ts#L3) ___ ### \_$decrement Ƭ **\_$decrement**<`A`, `A_LIST`, `DECREMENT`, `RESULT`\>: `RESULT` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `DECREMENT` | extends [`DigitList`](DigitList.md#digitlist) = [`_$decrement`](DigitList.md#_$decrement)<`A_LIST`\> | | `RESULT` | extends [`Number`](Number.md#number) = [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`DECREMENT`\>\> | #### Defined in [natural-number/decrement.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/decrement.ts#L3) ___ ### \_$divide Ƭ **\_$divide**<`A`, `B`, `A_LIST`, `B_LIST`, `QUOTIENT_LIST`, `QUOTIENT`\>: `QUOTIENT` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `B` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `B_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`B`\> | | `QUOTIENT_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$divide`](DigitList.md#_$divide)<`A_LIST`, `B_LIST`\> | | `QUOTIENT` | [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`QUOTIENT_LIST`\>\> | #### Defined in [natural-number/divide.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/divide.ts#L3) ___ ### \_$increment Ƭ **\_$increment**<`A`, `A_LIST`, `INCREMENT`, `RESULT`\>: `RESULT` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `INCREMENT` | extends [`DigitList`](DigitList.md#digitlist) = [`_$increment`](DigitList.md#_$increment)<`A_LIST`\> | | `RESULT` | extends [`Number`](Number.md#number) = [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`INCREMENT`\>\> | #### Defined in [natural-number/increment.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/increment.ts#L3) ___ ### \_$isEven Ƭ **\_$isEven**<`T`, `LIST`, `RESULT`\>: `RESULT` #### Type parameters | Name | Type | | :------ | :------ | | `T` | extends [`Number`](Number.md#number) | | `LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`T`\> | | `RESULT` | [`_$isEven`](DigitList.md#_$iseven)<`LIST`\> | #### Defined in [natural-number/is-even.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/is-even.ts#L3) ___ ### \_$isOdd Ƭ **\_$isOdd**<`T`, `LIST`, `RESULT`\>: `RESULT` #### Type parameters | Name | Type | | :------ | :------ | | `T` | extends [`Number`](Number.md#number) | | `LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`T`\> | | `RESULT` | [`_$isOdd`](DigitList.md#_$isodd)<`LIST`\> | #### Defined in [natural-number/is-odd.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/is-odd.ts#L3) ___ ### \_$modulo Ƭ **\_$modulo**<`A`, `B`, `A_LIST`, `B_LIST`, `MODULUS_LIST`, `MODULUS`\>: `MODULUS` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `B` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `B_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`B`\> | | `MODULUS_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$modulo`](DigitList.md#_$modulo)<`A_LIST`, `B_LIST`\> | | `MODULUS` | [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`MODULUS_LIST`\>\> | #### Defined in [natural-number/modulo.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/modulo.ts#L3) ___ ### \_$multiply Ƭ **\_$multiply**<`A`, `B`, `A_LIST`, `B_LIST`, `PRODUCT_LIST`, `PRODUCT`\>: `PRODUCT` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `B` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `B_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`B`\> | | `PRODUCT_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$multiply`](DigitList.md#_$multiply)<`A_LIST`, `B_LIST`\> | | `PRODUCT` | [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`PRODUCT_LIST`\>\> | #### Defined in [natural-number/multiply.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/multiply.ts#L3) ___ ### \_$subtract Ƭ **\_$subtract**<`A`, `B`, `A_LIST`, `B_LIST`, `SUB_LIST`, `RESULT`\>: `RESULT` #### Type parameters | Name | Type | | :------ | :------ | | `A` | extends [`Number`](Number.md#number) | | `B` | extends [`Number`](Number.md#number) | | `A_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`A`\> | | `B_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$toList`](NaturalNumber.md#_$tolist)<`B`\> | | `SUB_LIST` | extends [`DigitList`](DigitList.md#digitlist) = [`_$subtract`](DigitList.md#_$subtract)<`A_LIST`, `B_LIST`\> | | `RESULT` | [`_$fromString`](Number.md#_$fromstring)<[`_$toString`](DigitList.md#_$tostring)<`SUB_LIST`\>\> | #### Defined in [natural-number/subtract.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/subtract.ts#L3) ___ ### \_$toList Ƭ **\_$toList**<`S`, `O`\>: [`_$toString`](Number.md#_$tostring)<`S`\> extends \`${infer Head}${infer Tail}\` ? [`_$toList`](NaturalNumber.md#_$tolist)<`Tail`, [...O, `Head`]\> : `O` extends [`DigitList`](DigitList.md#digitlist) ? `O` : [``"0"``] #### Type parameters | Name | Type | | :------ | :------ | | `S` | extends [`Number`](Number.md#number) | | `O` | extends `string`[] = [] | #### Defined in [natural-number/to-list.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/natural-number/to-list.ts#L3)