module Stratosphere.Events.Connection.ApiKeyAuthParametersProperty (
        ApiKeyAuthParametersProperty(..), mkApiKeyAuthParametersProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ApiKeyAuthParametersProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-apikeyauthparameters.html>
    ApiKeyAuthParametersProperty {ApiKeyAuthParametersProperty -> ()
haddock_workaround_ :: (),
                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-apikeyauthparameters.html#cfn-events-connection-apikeyauthparameters-apikeyname>
                                  ApiKeyAuthParametersProperty -> Value Text
apiKeyName :: (Value Prelude.Text),
                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-connection-apikeyauthparameters.html#cfn-events-connection-apikeyauthparameters-apikeyvalue>
                                  ApiKeyAuthParametersProperty -> Value Text
apiKeyValue :: (Value Prelude.Text)}
  deriving stock (ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> Bool
(ApiKeyAuthParametersProperty
 -> ApiKeyAuthParametersProperty -> Bool)
-> (ApiKeyAuthParametersProperty
    -> ApiKeyAuthParametersProperty -> Bool)
-> Eq ApiKeyAuthParametersProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> Bool
== :: ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> Bool
$c/= :: ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> Bool
/= :: ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> Bool
Prelude.Eq, Int -> ApiKeyAuthParametersProperty -> ShowS
[ApiKeyAuthParametersProperty] -> ShowS
ApiKeyAuthParametersProperty -> String
(Int -> ApiKeyAuthParametersProperty -> ShowS)
-> (ApiKeyAuthParametersProperty -> String)
-> ([ApiKeyAuthParametersProperty] -> ShowS)
-> Show ApiKeyAuthParametersProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ApiKeyAuthParametersProperty -> ShowS
showsPrec :: Int -> ApiKeyAuthParametersProperty -> ShowS
$cshow :: ApiKeyAuthParametersProperty -> String
show :: ApiKeyAuthParametersProperty -> String
$cshowList :: [ApiKeyAuthParametersProperty] -> ShowS
showList :: [ApiKeyAuthParametersProperty] -> ShowS
Prelude.Show)
mkApiKeyAuthParametersProperty ::
  Value Prelude.Text
  -> Value Prelude.Text -> ApiKeyAuthParametersProperty
mkApiKeyAuthParametersProperty :: Value Text -> Value Text -> ApiKeyAuthParametersProperty
mkApiKeyAuthParametersProperty Value Text
apiKeyName Value Text
apiKeyValue
  = ApiKeyAuthParametersProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), apiKeyName :: Value Text
apiKeyName = Value Text
apiKeyName,
       apiKeyValue :: Value Text
apiKeyValue = Value Text
apiKeyValue}
instance ToResourceProperties ApiKeyAuthParametersProperty where
  toResourceProperties :: ApiKeyAuthParametersProperty -> ResourceProperties
toResourceProperties ApiKeyAuthParametersProperty {()
Value Text
haddock_workaround_ :: ApiKeyAuthParametersProperty -> ()
apiKeyName :: ApiKeyAuthParametersProperty -> Value Text
apiKeyValue :: ApiKeyAuthParametersProperty -> Value Text
haddock_workaround_ :: ()
apiKeyName :: Value Text
apiKeyValue :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Events::Connection.ApiKeyAuthParameters",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"ApiKeyName" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
apiKeyName,
                       Key
"ApiKeyValue" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
apiKeyValue]}
instance JSON.ToJSON ApiKeyAuthParametersProperty where
  toJSON :: ApiKeyAuthParametersProperty -> Value
toJSON ApiKeyAuthParametersProperty {()
Value Text
haddock_workaround_ :: ApiKeyAuthParametersProperty -> ()
apiKeyName :: ApiKeyAuthParametersProperty -> Value Text
apiKeyValue :: ApiKeyAuthParametersProperty -> Value Text
haddock_workaround_ :: ()
apiKeyName :: Value Text
apiKeyValue :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"ApiKeyName" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
apiKeyName,
         Key
"ApiKeyValue" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
apiKeyValue]
instance Property "ApiKeyName" ApiKeyAuthParametersProperty where
  type PropertyType "ApiKeyName" ApiKeyAuthParametersProperty = Value Prelude.Text
  set :: PropertyType "ApiKeyName" ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> ApiKeyAuthParametersProperty
set PropertyType "ApiKeyName" ApiKeyAuthParametersProperty
newValue ApiKeyAuthParametersProperty {()
Value Text
haddock_workaround_ :: ApiKeyAuthParametersProperty -> ()
apiKeyName :: ApiKeyAuthParametersProperty -> Value Text
apiKeyValue :: ApiKeyAuthParametersProperty -> Value Text
haddock_workaround_ :: ()
apiKeyName :: Value Text
apiKeyValue :: Value Text
..}
    = ApiKeyAuthParametersProperty {apiKeyName :: Value Text
apiKeyName = PropertyType "ApiKeyName" ApiKeyAuthParametersProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
apiKeyValue :: Value Text
haddock_workaround_ :: ()
apiKeyValue :: Value Text
..}
instance Property "ApiKeyValue" ApiKeyAuthParametersProperty where
  type PropertyType "ApiKeyValue" ApiKeyAuthParametersProperty = Value Prelude.Text
  set :: PropertyType "ApiKeyValue" ApiKeyAuthParametersProperty
-> ApiKeyAuthParametersProperty -> ApiKeyAuthParametersProperty
set PropertyType "ApiKeyValue" ApiKeyAuthParametersProperty
newValue ApiKeyAuthParametersProperty {()
Value Text
haddock_workaround_ :: ApiKeyAuthParametersProperty -> ()
apiKeyName :: ApiKeyAuthParametersProperty -> Value Text
apiKeyValue :: ApiKeyAuthParametersProperty -> Value Text
haddock_workaround_ :: ()
apiKeyName :: Value Text
apiKeyValue :: Value Text
..}
    = ApiKeyAuthParametersProperty {apiKeyValue :: Value Text
apiKeyValue = PropertyType "ApiKeyValue" ApiKeyAuthParametersProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
apiKeyName :: Value Text
haddock_workaround_ :: ()
apiKeyName :: Value Text
..}