Like `nptyping`, the {mod}`~numpydantic.dtype` module provides convenient access
and aliases to the common dtypes, but also provides "generic" dtypes like
{class}`~numpydantic.dtype.Float` that is a tuple of all subclasses of
{class}`numpy.floating`. Numpy interprets `float` as being equivalent to
{class}`numpy.float64`, and {class}`numpy.floating` is an abstract parent class,
so "generic" tuple dtypes fill that narrow gap.
```{todo}
Future versions will support interfaces providing type maps for declaring
equality between dtypes that may be specific to that library but should be
considered equivalent to numpy or other library's dtypes.
```
```{todo}
Future versions will also support declaring minimum or maximum precisions,
so one might say "at least a 16-bit float" and also accept a 32-bit float.
```
## Shape
Full documentation of nptyping's shape syntax is available in the [nptyping docs](https://github.com/ramonhagenaars/nptyping/blob/master/USERDOCS.md#Shape-expressions),
but for the sake of self-contained docs, the high points are: