module Network.Google.AppsReseller.Types.Sum where
import Network.Google.Prelude
data SubscriptionsDeleteDeletionType
= Cancel
| Downgrade
| Suspend
| TransferToDirect
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable SubscriptionsDeleteDeletionType
instance FromHttpApiData SubscriptionsDeleteDeletionType where
parseQueryParam = \case
"cancel" -> Right Cancel
"downgrade" -> Right Downgrade
"suspend" -> Right Suspend
"transfer_to_direct" -> Right TransferToDirect
x -> Left ("Unable to parse SubscriptionsDeleteDeletionType from: " <> x)
instance ToHttpApiData SubscriptionsDeleteDeletionType where
toQueryParam = \case
Cancel -> "cancel"
Downgrade -> "downgrade"
Suspend -> "suspend"
TransferToDirect -> "transfer_to_direct"
instance FromJSON SubscriptionsDeleteDeletionType where
parseJSON = parseJSONText "SubscriptionsDeleteDeletionType"
instance ToJSON SubscriptionsDeleteDeletionType where
toJSON = toJSONText