module Stratosphere.EKS.Cluster.RemoteNodeNetworkProperty (
        RemoteNodeNetworkProperty(..), mkRemoteNodeNetworkProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data RemoteNodeNetworkProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-remotenodenetwork.html>
    RemoteNodeNetworkProperty {RemoteNodeNetworkProperty -> ()
haddock_workaround_ :: (),
                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-remotenodenetwork.html#cfn-eks-cluster-remotenodenetwork-cidrs>
                               RemoteNodeNetworkProperty -> ValueList Text
cidrs :: (ValueList Prelude.Text)}
  deriving stock (RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool
(RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool)
-> (RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool)
-> Eq RemoteNodeNetworkProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool
== :: RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool
$c/= :: RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool
/= :: RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty -> Bool
Prelude.Eq, Int -> RemoteNodeNetworkProperty -> ShowS
[RemoteNodeNetworkProperty] -> ShowS
RemoteNodeNetworkProperty -> String
(Int -> RemoteNodeNetworkProperty -> ShowS)
-> (RemoteNodeNetworkProperty -> String)
-> ([RemoteNodeNetworkProperty] -> ShowS)
-> Show RemoteNodeNetworkProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> RemoteNodeNetworkProperty -> ShowS
showsPrec :: Int -> RemoteNodeNetworkProperty -> ShowS
$cshow :: RemoteNodeNetworkProperty -> String
show :: RemoteNodeNetworkProperty -> String
$cshowList :: [RemoteNodeNetworkProperty] -> ShowS
showList :: [RemoteNodeNetworkProperty] -> ShowS
Prelude.Show)
mkRemoteNodeNetworkProperty ::
  ValueList Prelude.Text -> RemoteNodeNetworkProperty
mkRemoteNodeNetworkProperty :: ValueList Text -> RemoteNodeNetworkProperty
mkRemoteNodeNetworkProperty ValueList Text
cidrs
  = RemoteNodeNetworkProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), cidrs :: ValueList Text
cidrs = ValueList Text
cidrs}
instance ToResourceProperties RemoteNodeNetworkProperty where
  toResourceProperties :: RemoteNodeNetworkProperty -> ResourceProperties
toResourceProperties RemoteNodeNetworkProperty {()
ValueList Text
haddock_workaround_ :: RemoteNodeNetworkProperty -> ()
cidrs :: RemoteNodeNetworkProperty -> ValueList Text
haddock_workaround_ :: ()
cidrs :: ValueList Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::EKS::Cluster.RemoteNodeNetwork",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False, properties :: Object
properties = [Key
"Cidrs" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
cidrs]}
instance JSON.ToJSON RemoteNodeNetworkProperty where
  toJSON :: RemoteNodeNetworkProperty -> Value
toJSON RemoteNodeNetworkProperty {()
ValueList Text
haddock_workaround_ :: RemoteNodeNetworkProperty -> ()
cidrs :: RemoteNodeNetworkProperty -> ValueList Text
haddock_workaround_ :: ()
cidrs :: ValueList Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"Cidrs" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
cidrs]
instance Property "Cidrs" RemoteNodeNetworkProperty where
  type PropertyType "Cidrs" RemoteNodeNetworkProperty = ValueList Prelude.Text
  set :: PropertyType "Cidrs" RemoteNodeNetworkProperty
-> RemoteNodeNetworkProperty -> RemoteNodeNetworkProperty
set PropertyType "Cidrs" RemoteNodeNetworkProperty
newValue RemoteNodeNetworkProperty {()
ValueList Text
haddock_workaround_ :: RemoteNodeNetworkProperty -> ()
cidrs :: RemoteNodeNetworkProperty -> ValueList Text
haddock_workaround_ :: ()
cidrs :: ValueList Text
..}
    = RemoteNodeNetworkProperty {cidrs :: ValueList Text
cidrs = PropertyType "Cidrs" RemoteNodeNetworkProperty
ValueList Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}