Data types
==========

SQLAlchemy-Utils provides various new data types for SQLAlchemy. In order to gain full
advantage of these datatypes you should use automatic data coercion. See :func:`force_auto_coercion` for how to set up this feature.

.. module:: sqlalchemy_utils.types


ArrowType
---------

.. module:: sqlalchemy_utils.types.arrow

.. autoclass:: ArrowType


ChoiceType
----------

.. module:: sqlalchemy_utils.types.choice

.. autoclass:: ChoiceType


ColorType
---------

.. module:: sqlalchemy_utils.types.color

.. autoclass:: ColorType


CompositeType
-------------

.. automodule:: sqlalchemy_utils.types.pg_composite

.. autoclass:: CompositeType


CountryType
-----------

.. module:: sqlalchemy_utils.types.country

.. autoclass:: CountryType

.. module:: sqlalchemy_utils.primitives.country

.. autoclass:: Country


CurrencyType
------------

.. module:: sqlalchemy_utils.types.currency

.. autoclass:: CurrencyType

.. module:: sqlalchemy_utils.primitives.currency

.. autoclass:: Currency


EmailType
---------

.. automodule:: sqlalchemy_utils.types.email

.. autoclass:: EmailType


EncryptedType
-------------

.. module:: sqlalchemy_utils.types.encrypted.encrypted_type

.. deprecated:: 0.36.6
    Use StringEncryptedType instead

.. autoclass:: EncryptedType

JSONType
--------

.. module:: sqlalchemy_utils.types.json

.. autoclass:: JSONType


LocaleType
----------


.. module:: sqlalchemy_utils.types.locale

.. autoclass:: LocaleType


LtreeType
---------


.. module:: sqlalchemy_utils.types.ltree

.. autoclass:: LtreeType

.. module:: sqlalchemy_utils.primitives.ltree

.. autoclass:: Ltree


IPAddressType
-------------

.. module:: sqlalchemy_utils.types.ip_address

.. autoclass:: IPAddressType


PasswordType
------------

.. module:: sqlalchemy_utils.types.password

.. autoclass:: PasswordType


PhoneNumberType
---------------

.. automodule:: sqlalchemy_utils.types.phone_number

.. autoclass:: PhoneNumber

.. autoclass:: PhoneNumberType


ScalarListType
--------------

.. module:: sqlalchemy_utils.types.scalar_list

.. autoclass:: ScalarListType


StringEncryptedType
-------------------

.. module:: sqlalchemy_utils.types.encrypted.encrypted_type

.. autoclass:: StringEncryptedType


TimezoneType
------------


.. module:: sqlalchemy_utils.types.timezone

.. autoclass:: TimezoneType


TSVectorType
------------

.. module:: sqlalchemy_utils.types.ts_vector

.. autoclass:: TSVectorType


URLType
-------

.. module:: sqlalchemy_utils.types.url

.. autoclass:: URLType


UUIDType
--------


.. module:: sqlalchemy_utils.types.uuid

.. autoclass:: UUIDType



WeekDaysType
------------

.. module:: sqlalchemy_utils.types.weekdays

.. autoclass:: WeekDaysType
