JavaScript library for defining types and their attributes with support for wrapping/unwrapping and serialization/deserialization.