module Yesod.Session.Storage ( -- * Options Options (..) , defaultOptions , hoistOptions -- * Timing , TimingOptions (..) , defaultTimingOptions -- * Timeout , Timeout (..) , defaultTimeout -- * Transport security , TransportSecurity (..) -- * Session data model , Session (..) , SessionKey (..) , Time (..) , sessionKeyToCookieValue -- * Randomization , Randomization (..) , defaultRandomization , deterministicallyRandom , DeterministicRandomization (..) -- * Storage , StorageException (..) -- * Key rotation , rotateSessionKey , assignSessionKeyRotation , KeyRotation (..) -- * Freezing , disableSessionManagement , assignSessionFreeze , SessionFreeze (..) -- * Session map embedding , SessionEmbeddings (..) , HasSessionEmbeddings (..) , Embedding (..) , SessionMapEmbedding , MapOperations (..) , bsKeyEmbedding , dimapEmbedding , showReadKeyEmbedding -- * Comparison , Comparison (..) , differsOn ) where import Comparison import Embedding import Randomization import Session.Freeze import Session.Key import Session.KeyRotation import Session.Timing.Options import Session.Timing.Time import Session.Timing.Timeout import Session.TransportSecurity import Yesod.Session.Embedding.Map import Yesod.Session.Embedding.Options import Yesod.Session.Freeze import Yesod.Session.KeyRotation import Yesod.Session.Options import Yesod.Session.SessionType import Yesod.Session.Storage.Exceptions