{-# LANGUAGE TemplateHaskell #-}
module PayPal.Adaptive (
-- * Client
Client (..)
, Env (..)
-- * Errors
, AdaptiveErr (..)
-- * Payment Responses
, PayResp (..)
, CompletePayResp (..)
, checkComplete
, PayExecStatus (..)
, PayKey (..)
, PayInfo (..)
, Receiver (..)
, TransactionId (..)
, TransactionStatus(..)
-- * Money
, Money (..)
, m2Currency
, m2PayPal
, module PayPal.Adaptive
) where
import Control.Lens
import PayPal.Adaptive.Core
-- * Lenses
$(makeLenses ''Client)
$(makeLenses ''CompletePayResp)
$(makePrisms ''AdaptiveErr)
$(makePrisms ''Env)
$(makePrisms ''PayExecStatus)
$(makeLenses ''PayInfo)
$(makeLenses ''PayResp)
$(makeLenses ''Receiver)
$(makePrisms ''TransactionId)
$(makePrisms ''TransactionStatus)