[hkt-toolbelt](../Home.md) / Kind # Namespace: Kind ## Classes - [Kind](../classes/Kind.Kind.md) ## Interfaces - [Apply](../interfaces/Kind.Apply.md) - [Composable](../interfaces/Kind.Composable.md) - [ComposablePair](../interfaces/Kind.ComposablePair.md) - [Compose](../interfaces/Kind.Compose.md) - [InputOf](../interfaces/Kind.InputOf.md) - [OutputOf](../interfaces/Kind.OutputOf.md) - [Pipe](../interfaces/Kind.Pipe.md) - [Reify](../interfaces/Kind.Reify.md) ## Type Aliases ### \_ Ƭ **\_**: typeof [`_`](Kind.md#_-1) #### Defined in [kind/kind.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/kind.ts#L3) [kind/kind.ts:5](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/kind.ts#L5) ___ ### \_$composable Ƭ **\_$composable**<`FX`\>: [`_$every`](List.md#_$every)<[`ComposablePair`](../interfaces/Kind.ComposablePair.md), [`_$pair`](List.md#_$pair)<`FX`\>\> #### Type parameters | Name | Type | | :------ | :------ | | `FX` | extends [`Kind`](../classes/Kind.Kind.md)[] | #### Defined in [kind/composable.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/composable.ts#L3) ___ ### \_$compose Ƭ **\_$compose**<`FX`, `X`\>: `FX` extends [...(infer Init), infer Last] ? [`_$compose`](Kind.md#_$compose)<[`_$cast`](Type.md#_$cast)<`Init`, [`Kind`](../classes/Kind.Kind.md)[]\>, [`$`](../Home.md#$)<[`_$cast`](Type.md#_$cast)<`Last`, [`Kind`](../classes/Kind.Kind.md)\>, [`_$cast`](Type.md#_$cast)<`X`, [`_$inputOf`](Kind.md#_$inputof)<[`_$cast`](Type.md#_$cast)<`Last`, [`Kind`](../classes/Kind.Kind.md)\>\>\>\>\> : `X` #### Type parameters | Name | Type | | :------ | :------ | | `FX` | extends [`Kind`](../classes/Kind.Kind.md)[] | | `X` | `X` | #### Defined in [kind/compose.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/compose.ts#L3) ___ ### \_$inputOf Ƭ **\_$inputOf**<`F`\>: `F` extends { `f`: (`x`: infer X) => `unknown` } ? `X` : `unknown` #### Type parameters | Name | Type | | :------ | :------ | | `F` | extends [`Kind`](../classes/Kind.Kind.md) | #### Defined in [kind/input-of.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/input-of.ts#L3) ___ ### \_$outputOf Ƭ **\_$outputOf**<`F`\>: `F` extends { `f`: (`x`: `never`) => infer X } ? `X` : `unknown` #### Type parameters | Name | Type | | :------ | :------ | | `F` | extends [`Kind`](../classes/Kind.Kind.md) | #### Defined in [kind/output-of.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/output-of.ts#L3) ___ ### \_$pipe Ƭ **\_$pipe**<`FX`, `X`\>: [`_$compose`](Kind.md#_$compose)<[`_$reverse`](List.md#_$reverse)<`FX`\>, `X`\> #### Type parameters | Name | Type | | :------ | :------ | | `FX` | extends [`Kind`](../classes/Kind.Kind.md)[] | | `X` | `X` | #### Defined in [kind/pipe.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/pipe.ts#L3) ___ ### \_$reify Ƭ **\_$reify**<`K`\>: `K` & (`x`: [`_$infer`](Type.md#_$infer)<`X`, [`_$cast`](Type.md#_$cast)<`X`, `_$inferred`\>\> \| [`_$infer`](Type.md#_$infer)<`X`, [...\_$cast[]]\>) => [`_$returnType`](Function.md#_$returntype)<`K` & { `[_]`: `X` }[``"f"``]\> extends [`Kind`](../classes/Kind.Kind.md)<[`Function`](Function.md#function)\> ? [`_$reify`](Kind.md#_$reify)<`_$returnType<(K & { readonly [Kind._]: X; })["f"]>`\> : [`_$returnType`](Function.md#_$returntype)<`K` & { `[_]`: `X` }[``"f"``]\> #### Type parameters | Name | Type | | :------ | :------ | | `K` | extends [`Kind`](../classes/Kind.Kind.md) | #### Defined in [kind/reify.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/reify.ts#L3) ## Variables ### \_ • `Const` **\_**: unique `symbol` #### Defined in [kind/kind.ts:3](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/kind.ts#L3) [kind/kind.ts:5](https://github.com/poteat/hkt-toolbelt/blob/61f5028/src/kind/kind.ts#L5)