{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE TypeFamilies #-}
module Aws.Iam.Commands.DeleteUser
( DeleteUser(..)
, DeleteUserResponse(..)
) where
import Aws.Core
import Aws.Iam.Core
import Aws.Iam.Internal
import Data.Text (Text)
import Data.Typeable
data DeleteUser = DeleteUser Text
deriving (Eq, Ord, Show, Typeable)
instance SignQuery DeleteUser where
type ServiceConfiguration DeleteUser = IamConfiguration
signQuery (DeleteUser userName)
= iamAction "DeleteUser" [("UserName", userName)]
data DeleteUserResponse = DeleteUserResponse
deriving (Eq, Ord, Show, Typeable)
instance ResponseConsumer DeleteUser DeleteUserResponse where
type ResponseMetadata DeleteUserResponse = IamMetadata
responseConsumer _ _
= iamResponseConsumer (const $ return DeleteUserResponse)
instance Transaction DeleteUser DeleteUserResponse
instance AsMemoryResponse DeleteUserResponse where
type MemoryResponse DeleteUserResponse = DeleteUserResponse
loadToMemory = return