packages feed

stratosphere-connectcampaignsv2 (empty) → 1.0.0

raw patch · 61 files changed

+1966/−0 lines, 61 filesdep +aesondep +basedep +stratosphere

Dependencies added: aeson, base, stratosphere

Files

+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/ConnectCampaignsV2/Campaign.hs view
@@ -0,0 +1,121 @@+module Stratosphere.ConnectCampaignsV2.Campaign (+        module Exports, Campaign(..), mkCampaign+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.ChannelSubtypeConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.CommunicationTimeConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.ScheduleProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.SourceProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Campaign+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html>+    Campaign {haddock_workaround_ :: (),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-channelsubtypeconfig>+              channelSubtypeConfig :: ChannelSubtypeConfigProperty,+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-communicationlimitsoverride>+              communicationLimitsOverride :: (Prelude.Maybe CommunicationLimitsConfigProperty),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-communicationtimeconfig>+              communicationTimeConfig :: (Prelude.Maybe CommunicationTimeConfigProperty),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-connectcampaignflowarn>+              connectCampaignFlowArn :: (Prelude.Maybe (Value Prelude.Text)),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-connectinstanceid>+              connectInstanceId :: (Value Prelude.Text),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-name>+              name :: (Value Prelude.Text),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-schedule>+              schedule :: (Prelude.Maybe ScheduleProperty),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-source>+              source :: (Prelude.Maybe SourceProperty),+              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html#cfn-connectcampaignsv2-campaign-tags>+              tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCampaign ::+  ChannelSubtypeConfigProperty+  -> Value Prelude.Text -> Value Prelude.Text -> Campaign+mkCampaign channelSubtypeConfig connectInstanceId name+  = Campaign+      {haddock_workaround_ = (),+       channelSubtypeConfig = channelSubtypeConfig,+       connectInstanceId = connectInstanceId, name = name,+       communicationLimitsOverride = Prelude.Nothing,+       communicationTimeConfig = Prelude.Nothing,+       connectCampaignFlowArn = Prelude.Nothing,+       schedule = Prelude.Nothing, source = Prelude.Nothing,+       tags = Prelude.Nothing}+instance ToResourceProperties Campaign where+  toResourceProperties Campaign {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ChannelSubtypeConfig" JSON..= channelSubtypeConfig,+                            "ConnectInstanceId" JSON..= connectInstanceId, "Name" JSON..= name]+                           (Prelude.catMaybes+                              [(JSON..=) "CommunicationLimitsOverride"+                                 Prelude.<$> communicationLimitsOverride,+                               (JSON..=) "CommunicationTimeConfig"+                                 Prelude.<$> communicationTimeConfig,+                               (JSON..=) "ConnectCampaignFlowArn"+                                 Prelude.<$> connectCampaignFlowArn,+                               (JSON..=) "Schedule" Prelude.<$> schedule,+                               (JSON..=) "Source" Prelude.<$> source,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON Campaign where+  toJSON Campaign {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ChannelSubtypeConfig" JSON..= channelSubtypeConfig,+               "ConnectInstanceId" JSON..= connectInstanceId, "Name" JSON..= name]+              (Prelude.catMaybes+                 [(JSON..=) "CommunicationLimitsOverride"+                    Prelude.<$> communicationLimitsOverride,+                  (JSON..=) "CommunicationTimeConfig"+                    Prelude.<$> communicationTimeConfig,+                  (JSON..=) "ConnectCampaignFlowArn"+                    Prelude.<$> connectCampaignFlowArn,+                  (JSON..=) "Schedule" Prelude.<$> schedule,+                  (JSON..=) "Source" Prelude.<$> source,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "ChannelSubtypeConfig" Campaign where+  type PropertyType "ChannelSubtypeConfig" Campaign = ChannelSubtypeConfigProperty+  set newValue Campaign {..}+    = Campaign {channelSubtypeConfig = newValue, ..}+instance Property "CommunicationLimitsOverride" Campaign where+  type PropertyType "CommunicationLimitsOverride" Campaign = CommunicationLimitsConfigProperty+  set newValue Campaign {..}+    = Campaign+        {communicationLimitsOverride = Prelude.pure newValue, ..}+instance Property "CommunicationTimeConfig" Campaign where+  type PropertyType "CommunicationTimeConfig" Campaign = CommunicationTimeConfigProperty+  set newValue Campaign {..}+    = Campaign {communicationTimeConfig = Prelude.pure newValue, ..}+instance Property "ConnectCampaignFlowArn" Campaign where+  type PropertyType "ConnectCampaignFlowArn" Campaign = Value Prelude.Text+  set newValue Campaign {..}+    = Campaign {connectCampaignFlowArn = Prelude.pure newValue, ..}+instance Property "ConnectInstanceId" Campaign where+  type PropertyType "ConnectInstanceId" Campaign = Value Prelude.Text+  set newValue Campaign {..}+    = Campaign {connectInstanceId = newValue, ..}+instance Property "Name" Campaign where+  type PropertyType "Name" Campaign = Value Prelude.Text+  set newValue Campaign {..} = Campaign {name = newValue, ..}+instance Property "Schedule" Campaign where+  type PropertyType "Schedule" Campaign = ScheduleProperty+  set newValue Campaign {..}+    = Campaign {schedule = Prelude.pure newValue, ..}+instance Property "Source" Campaign where+  type PropertyType "Source" Campaign = SourceProperty+  set newValue Campaign {..}+    = Campaign {source = Prelude.pure newValue, ..}+instance Property "Tags" Campaign where+  type PropertyType "Tags" Campaign = [Tag]+  set newValue Campaign {..}+    = Campaign {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/AnswerMachineDetectionConfigProperty.hs view
@@ -0,0 +1,56 @@+module Stratosphere.ConnectCampaignsV2.Campaign.AnswerMachineDetectionConfigProperty (+        AnswerMachineDetectionConfigProperty(..),+        mkAnswerMachineDetectionConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AnswerMachineDetectionConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-answermachinedetectionconfig.html>+    AnswerMachineDetectionConfigProperty {haddock_workaround_ :: (),+                                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-answermachinedetectionconfig.html#cfn-connectcampaignsv2-campaign-answermachinedetectionconfig-awaitanswermachineprompt>+                                          awaitAnswerMachinePrompt :: (Prelude.Maybe (Value Prelude.Bool)),+                                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-answermachinedetectionconfig.html#cfn-connectcampaignsv2-campaign-answermachinedetectionconfig-enableanswermachinedetection>+                                          enableAnswerMachineDetection :: (Value Prelude.Bool)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAnswerMachineDetectionConfigProperty ::+  Value Prelude.Bool -> AnswerMachineDetectionConfigProperty+mkAnswerMachineDetectionConfigProperty enableAnswerMachineDetection+  = AnswerMachineDetectionConfigProperty+      {haddock_workaround_ = (),+       enableAnswerMachineDetection = enableAnswerMachineDetection,+       awaitAnswerMachinePrompt = Prelude.Nothing}+instance ToResourceProperties AnswerMachineDetectionConfigProperty where+  toResourceProperties AnswerMachineDetectionConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.AnswerMachineDetectionConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["EnableAnswerMachineDetection"+                              JSON..= enableAnswerMachineDetection]+                           (Prelude.catMaybes+                              [(JSON..=) "AwaitAnswerMachinePrompt"+                                 Prelude.<$> awaitAnswerMachinePrompt]))}+instance JSON.ToJSON AnswerMachineDetectionConfigProperty where+  toJSON AnswerMachineDetectionConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["EnableAnswerMachineDetection"+                 JSON..= enableAnswerMachineDetection]+              (Prelude.catMaybes+                 [(JSON..=) "AwaitAnswerMachinePrompt"+                    Prelude.<$> awaitAnswerMachinePrompt])))+instance Property "AwaitAnswerMachinePrompt" AnswerMachineDetectionConfigProperty where+  type PropertyType "AwaitAnswerMachinePrompt" AnswerMachineDetectionConfigProperty = Value Prelude.Bool+  set newValue AnswerMachineDetectionConfigProperty {..}+    = AnswerMachineDetectionConfigProperty+        {awaitAnswerMachinePrompt = Prelude.pure newValue, ..}+instance Property "EnableAnswerMachineDetection" AnswerMachineDetectionConfigProperty where+  type PropertyType "EnableAnswerMachineDetection" AnswerMachineDetectionConfigProperty = Value Prelude.Bool+  set newValue AnswerMachineDetectionConfigProperty {..}+    = AnswerMachineDetectionConfigProperty+        {enableAnswerMachineDetection = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/AnswerMachineDetectionConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.AnswerMachineDetectionConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AnswerMachineDetectionConfigProperty :: Prelude.Type+instance ToResourceProperties AnswerMachineDetectionConfigProperty+instance Prelude.Eq AnswerMachineDetectionConfigProperty+instance Prelude.Show AnswerMachineDetectionConfigProperty+instance JSON.ToJSON AnswerMachineDetectionConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/ChannelSubtypeConfigProperty.hs view
@@ -0,0 +1,57 @@+module Stratosphere.ConnectCampaignsV2.Campaign.ChannelSubtypeConfigProperty (+        module Exports, ChannelSubtypeConfigProperty(..),+        mkChannelSubtypeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.EmailChannelSubtypeConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.SmsChannelSubtypeConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.TelephonyChannelSubtypeConfigProperty as Exports+import Stratosphere.ResourceProperties+data ChannelSubtypeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-channelsubtypeconfig.html>+    ChannelSubtypeConfigProperty {haddock_workaround_ :: (),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-channelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-channelsubtypeconfig-email>+                                  email :: (Prelude.Maybe EmailChannelSubtypeConfigProperty),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-channelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-channelsubtypeconfig-sms>+                                  sms :: (Prelude.Maybe SmsChannelSubtypeConfigProperty),+                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-channelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-channelsubtypeconfig-telephony>+                                  telephony :: (Prelude.Maybe TelephonyChannelSubtypeConfigProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkChannelSubtypeConfigProperty :: ChannelSubtypeConfigProperty+mkChannelSubtypeConfigProperty+  = ChannelSubtypeConfigProperty+      {haddock_workaround_ = (), email = Prelude.Nothing,+       sms = Prelude.Nothing, telephony = Prelude.Nothing}+instance ToResourceProperties ChannelSubtypeConfigProperty where+  toResourceProperties ChannelSubtypeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.ChannelSubtypeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Email" Prelude.<$> email,+                            (JSON..=) "Sms" Prelude.<$> sms,+                            (JSON..=) "Telephony" Prelude.<$> telephony])}+instance JSON.ToJSON ChannelSubtypeConfigProperty where+  toJSON ChannelSubtypeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Email" Prelude.<$> email,+               (JSON..=) "Sms" Prelude.<$> sms,+               (JSON..=) "Telephony" Prelude.<$> telephony]))+instance Property "Email" ChannelSubtypeConfigProperty where+  type PropertyType "Email" ChannelSubtypeConfigProperty = EmailChannelSubtypeConfigProperty+  set newValue ChannelSubtypeConfigProperty {..}+    = ChannelSubtypeConfigProperty {email = Prelude.pure newValue, ..}+instance Property "Sms" ChannelSubtypeConfigProperty where+  type PropertyType "Sms" ChannelSubtypeConfigProperty = SmsChannelSubtypeConfigProperty+  set newValue ChannelSubtypeConfigProperty {..}+    = ChannelSubtypeConfigProperty {sms = Prelude.pure newValue, ..}+instance Property "Telephony" ChannelSubtypeConfigProperty where+  type PropertyType "Telephony" ChannelSubtypeConfigProperty = TelephonyChannelSubtypeConfigProperty+  set newValue ChannelSubtypeConfigProperty {..}+    = ChannelSubtypeConfigProperty+        {telephony = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/ChannelSubtypeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.ChannelSubtypeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ChannelSubtypeConfigProperty :: Prelude.Type+instance ToResourceProperties ChannelSubtypeConfigProperty+instance Prelude.Eq ChannelSubtypeConfigProperty+instance Prelude.Show ChannelSubtypeConfigProperty+instance JSON.ToJSON ChannelSubtypeConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationLimitProperty.hs view
@@ -0,0 +1,52 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitProperty (+        CommunicationLimitProperty(..), mkCommunicationLimitProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CommunicationLimitProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimit.html>+    CommunicationLimitProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimit.html#cfn-connectcampaignsv2-campaign-communicationlimit-frequency>+                                frequency :: (Value Prelude.Integer),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimit.html#cfn-connectcampaignsv2-campaign-communicationlimit-maxcountperrecipient>+                                maxCountPerRecipient :: (Value Prelude.Integer),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimit.html#cfn-connectcampaignsv2-campaign-communicationlimit-unit>+                                unit :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCommunicationLimitProperty ::+  Value Prelude.Integer+  -> Value Prelude.Integer+     -> Value Prelude.Text -> CommunicationLimitProperty+mkCommunicationLimitProperty frequency maxCountPerRecipient unit+  = CommunicationLimitProperty+      {haddock_workaround_ = (), frequency = frequency,+       maxCountPerRecipient = maxCountPerRecipient, unit = unit}+instance ToResourceProperties CommunicationLimitProperty where+  toResourceProperties CommunicationLimitProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.CommunicationLimit",+         supportsTags = Prelude.False,+         properties = ["Frequency" JSON..= frequency,+                       "MaxCountPerRecipient" JSON..= maxCountPerRecipient,+                       "Unit" JSON..= unit]}+instance JSON.ToJSON CommunicationLimitProperty where+  toJSON CommunicationLimitProperty {..}+    = JSON.object+        ["Frequency" JSON..= frequency,+         "MaxCountPerRecipient" JSON..= maxCountPerRecipient,+         "Unit" JSON..= unit]+instance Property "Frequency" CommunicationLimitProperty where+  type PropertyType "Frequency" CommunicationLimitProperty = Value Prelude.Integer+  set newValue CommunicationLimitProperty {..}+    = CommunicationLimitProperty {frequency = newValue, ..}+instance Property "MaxCountPerRecipient" CommunicationLimitProperty where+  type PropertyType "MaxCountPerRecipient" CommunicationLimitProperty = Value Prelude.Integer+  set newValue CommunicationLimitProperty {..}+    = CommunicationLimitProperty {maxCountPerRecipient = newValue, ..}+instance Property "Unit" CommunicationLimitProperty where+  type PropertyType "Unit" CommunicationLimitProperty = Value Prelude.Text+  set newValue CommunicationLimitProperty {..}+    = CommunicationLimitProperty {unit = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationLimitProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CommunicationLimitProperty :: Prelude.Type+instance ToResourceProperties CommunicationLimitProperty+instance Prelude.Eq CommunicationLimitProperty+instance Prelude.Show CommunicationLimitProperty+instance JSON.ToJSON CommunicationLimitProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationLimitsConfigProperty.hs view
@@ -0,0 +1,52 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsConfigProperty (+        module Exports, CommunicationLimitsConfigProperty(..),+        mkCommunicationLimitsConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CommunicationLimitsConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimitsconfig.html>+    CommunicationLimitsConfigProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimitsconfig.html#cfn-connectcampaignsv2-campaign-communicationlimitsconfig-allchannelssubtypes>+                                       allChannelsSubtypes :: (Prelude.Maybe CommunicationLimitsProperty),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimitsconfig.html#cfn-connectcampaignsv2-campaign-communicationlimitsconfig-instancelimitshandling>+                                       instanceLimitsHandling :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCommunicationLimitsConfigProperty ::+  CommunicationLimitsConfigProperty+mkCommunicationLimitsConfigProperty+  = CommunicationLimitsConfigProperty+      {haddock_workaround_ = (), allChannelsSubtypes = Prelude.Nothing,+       instanceLimitsHandling = Prelude.Nothing}+instance ToResourceProperties CommunicationLimitsConfigProperty where+  toResourceProperties CommunicationLimitsConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.CommunicationLimitsConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AllChannelsSubtypes" Prelude.<$> allChannelsSubtypes,+                            (JSON..=) "InstanceLimitsHandling"+                              Prelude.<$> instanceLimitsHandling])}+instance JSON.ToJSON CommunicationLimitsConfigProperty where+  toJSON CommunicationLimitsConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AllChannelsSubtypes" Prelude.<$> allChannelsSubtypes,+               (JSON..=) "InstanceLimitsHandling"+                 Prelude.<$> instanceLimitsHandling]))+instance Property "AllChannelsSubtypes" CommunicationLimitsConfigProperty where+  type PropertyType "AllChannelsSubtypes" CommunicationLimitsConfigProperty = CommunicationLimitsProperty+  set newValue CommunicationLimitsConfigProperty {..}+    = CommunicationLimitsConfigProperty+        {allChannelsSubtypes = Prelude.pure newValue, ..}+instance Property "InstanceLimitsHandling" CommunicationLimitsConfigProperty where+  type PropertyType "InstanceLimitsHandling" CommunicationLimitsConfigProperty = Value Prelude.Text+  set newValue CommunicationLimitsConfigProperty {..}+    = CommunicationLimitsConfigProperty+        {instanceLimitsHandling = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationLimitsConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CommunicationLimitsConfigProperty :: Prelude.Type+instance ToResourceProperties CommunicationLimitsConfigProperty+instance Prelude.Eq CommunicationLimitsConfigProperty+instance Prelude.Show CommunicationLimitsConfigProperty+instance JSON.ToJSON CommunicationLimitsConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationLimitsProperty.hs view
@@ -0,0 +1,41 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsProperty (+        module Exports, CommunicationLimitsProperty(..),+        mkCommunicationLimitsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitProperty as Exports+import Stratosphere.ResourceProperties+data CommunicationLimitsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimits.html>+    CommunicationLimitsProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationlimits.html#cfn-connectcampaignsv2-campaign-communicationlimits-communicationlimitlist>+                                 communicationLimitList :: (Prelude.Maybe [CommunicationLimitProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCommunicationLimitsProperty :: CommunicationLimitsProperty+mkCommunicationLimitsProperty+  = CommunicationLimitsProperty+      {haddock_workaround_ = (),+       communicationLimitList = Prelude.Nothing}+instance ToResourceProperties CommunicationLimitsProperty where+  toResourceProperties CommunicationLimitsProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.CommunicationLimits",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CommunicationLimitList"+                              Prelude.<$> communicationLimitList])}+instance JSON.ToJSON CommunicationLimitsProperty where+  toJSON CommunicationLimitsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CommunicationLimitList"+                 Prelude.<$> communicationLimitList]))+instance Property "CommunicationLimitList" CommunicationLimitsProperty where+  type PropertyType "CommunicationLimitList" CommunicationLimitsProperty = [CommunicationLimitProperty]+  set newValue CommunicationLimitsProperty {..}+    = CommunicationLimitsProperty+        {communicationLimitList = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationLimitsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CommunicationLimitsProperty :: Prelude.Type+instance ToResourceProperties CommunicationLimitsProperty+instance Prelude.Eq CommunicationLimitsProperty+instance Prelude.Show CommunicationLimitsProperty+instance JSON.ToJSON CommunicationLimitsProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationTimeConfigProperty.hs view
@@ -0,0 +1,70 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationTimeConfigProperty (+        module Exports, CommunicationTimeConfigProperty(..),+        mkCommunicationTimeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.LocalTimeZoneConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.TimeWindowProperty as Exports+import Stratosphere.ResourceProperties+data CommunicationTimeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationtimeconfig.html>+    CommunicationTimeConfigProperty {haddock_workaround_ :: (),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationtimeconfig.html#cfn-connectcampaignsv2-campaign-communicationtimeconfig-email>+                                     email :: (Prelude.Maybe TimeWindowProperty),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationtimeconfig.html#cfn-connectcampaignsv2-campaign-communicationtimeconfig-localtimezoneconfig>+                                     localTimeZoneConfig :: LocalTimeZoneConfigProperty,+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationtimeconfig.html#cfn-connectcampaignsv2-campaign-communicationtimeconfig-sms>+                                     sms :: (Prelude.Maybe TimeWindowProperty),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-communicationtimeconfig.html#cfn-connectcampaignsv2-campaign-communicationtimeconfig-telephony>+                                     telephony :: (Prelude.Maybe TimeWindowProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCommunicationTimeConfigProperty ::+  LocalTimeZoneConfigProperty -> CommunicationTimeConfigProperty+mkCommunicationTimeConfigProperty localTimeZoneConfig+  = CommunicationTimeConfigProperty+      {haddock_workaround_ = (),+       localTimeZoneConfig = localTimeZoneConfig, email = Prelude.Nothing,+       sms = Prelude.Nothing, telephony = Prelude.Nothing}+instance ToResourceProperties CommunicationTimeConfigProperty where+  toResourceProperties CommunicationTimeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.CommunicationTimeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["LocalTimeZoneConfig" JSON..= localTimeZoneConfig]+                           (Prelude.catMaybes+                              [(JSON..=) "Email" Prelude.<$> email,+                               (JSON..=) "Sms" Prelude.<$> sms,+                               (JSON..=) "Telephony" Prelude.<$> telephony]))}+instance JSON.ToJSON CommunicationTimeConfigProperty where+  toJSON CommunicationTimeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["LocalTimeZoneConfig" JSON..= localTimeZoneConfig]+              (Prelude.catMaybes+                 [(JSON..=) "Email" Prelude.<$> email,+                  (JSON..=) "Sms" Prelude.<$> sms,+                  (JSON..=) "Telephony" Prelude.<$> telephony])))+instance Property "Email" CommunicationTimeConfigProperty where+  type PropertyType "Email" CommunicationTimeConfigProperty = TimeWindowProperty+  set newValue CommunicationTimeConfigProperty {..}+    = CommunicationTimeConfigProperty+        {email = Prelude.pure newValue, ..}+instance Property "LocalTimeZoneConfig" CommunicationTimeConfigProperty where+  type PropertyType "LocalTimeZoneConfig" CommunicationTimeConfigProperty = LocalTimeZoneConfigProperty+  set newValue CommunicationTimeConfigProperty {..}+    = CommunicationTimeConfigProperty+        {localTimeZoneConfig = newValue, ..}+instance Property "Sms" CommunicationTimeConfigProperty where+  type PropertyType "Sms" CommunicationTimeConfigProperty = TimeWindowProperty+  set newValue CommunicationTimeConfigProperty {..}+    = CommunicationTimeConfigProperty {sms = Prelude.pure newValue, ..}+instance Property "Telephony" CommunicationTimeConfigProperty where+  type PropertyType "Telephony" CommunicationTimeConfigProperty = TimeWindowProperty+  set newValue CommunicationTimeConfigProperty {..}+    = CommunicationTimeConfigProperty+        {telephony = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/CommunicationTimeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.CommunicationTimeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CommunicationTimeConfigProperty :: Prelude.Type+instance ToResourceProperties CommunicationTimeConfigProperty+instance Prelude.Eq CommunicationTimeConfigProperty+instance Prelude.Show CommunicationTimeConfigProperty+instance JSON.ToJSON CommunicationTimeConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/DailyHourProperty.hs view
@@ -0,0 +1,46 @@+module Stratosphere.ConnectCampaignsV2.Campaign.DailyHourProperty (+        module Exports, DailyHourProperty(..), mkDailyHourProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.TimeRangeProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data DailyHourProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-dailyhour.html>+    DailyHourProperty {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-dailyhour.html#cfn-connectcampaignsv2-campaign-dailyhour-key>+                       key :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-dailyhour.html#cfn-connectcampaignsv2-campaign-dailyhour-value>+                       value :: (Prelude.Maybe [TimeRangeProperty])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkDailyHourProperty :: DailyHourProperty+mkDailyHourProperty+  = DailyHourProperty+      {haddock_workaround_ = (), key = Prelude.Nothing,+       value = Prelude.Nothing}+instance ToResourceProperties DailyHourProperty where+  toResourceProperties DailyHourProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.DailyHour",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Key" Prelude.<$> key,+                            (JSON..=) "Value" Prelude.<$> value])}+instance JSON.ToJSON DailyHourProperty where+  toJSON DailyHourProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Key" Prelude.<$> key,+               (JSON..=) "Value" Prelude.<$> value]))+instance Property "Key" DailyHourProperty where+  type PropertyType "Key" DailyHourProperty = Value Prelude.Text+  set newValue DailyHourProperty {..}+    = DailyHourProperty {key = Prelude.pure newValue, ..}+instance Property "Value" DailyHourProperty where+  type PropertyType "Value" DailyHourProperty = [TimeRangeProperty]+  set newValue DailyHourProperty {..}+    = DailyHourProperty {value = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/DailyHourProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.DailyHourProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data DailyHourProperty :: Prelude.Type+instance ToResourceProperties DailyHourProperty+instance Prelude.Eq DailyHourProperty+instance Prelude.Show DailyHourProperty+instance JSON.ToJSON DailyHourProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EmailChannelSubtypeConfigProperty.hs view
@@ -0,0 +1,63 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EmailChannelSubtypeConfigProperty (+        module Exports, EmailChannelSubtypeConfigProperty(..),+        mkEmailChannelSubtypeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundModeProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EmailChannelSubtypeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailchannelsubtypeconfig.html>+    EmailChannelSubtypeConfigProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailchannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-emailchannelsubtypeconfig-capacity>+                                       capacity :: (Prelude.Maybe (Value Prelude.Double)),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailchannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-emailchannelsubtypeconfig-defaultoutboundconfig>+                                       defaultOutboundConfig :: EmailOutboundConfigProperty,+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailchannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-emailchannelsubtypeconfig-outboundmode>+                                       outboundMode :: EmailOutboundModeProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEmailChannelSubtypeConfigProperty ::+  EmailOutboundConfigProperty+  -> EmailOutboundModeProperty -> EmailChannelSubtypeConfigProperty+mkEmailChannelSubtypeConfigProperty+  defaultOutboundConfig+  outboundMode+  = EmailChannelSubtypeConfigProperty+      {haddock_workaround_ = (),+       defaultOutboundConfig = defaultOutboundConfig,+       outboundMode = outboundMode, capacity = Prelude.Nothing}+instance ToResourceProperties EmailChannelSubtypeConfigProperty where+  toResourceProperties EmailChannelSubtypeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.EmailChannelSubtypeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["DefaultOutboundConfig" JSON..= defaultOutboundConfig,+                            "OutboundMode" JSON..= outboundMode]+                           (Prelude.catMaybes [(JSON..=) "Capacity" Prelude.<$> capacity]))}+instance JSON.ToJSON EmailChannelSubtypeConfigProperty where+  toJSON EmailChannelSubtypeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["DefaultOutboundConfig" JSON..= defaultOutboundConfig,+               "OutboundMode" JSON..= outboundMode]+              (Prelude.catMaybes [(JSON..=) "Capacity" Prelude.<$> capacity])))+instance Property "Capacity" EmailChannelSubtypeConfigProperty where+  type PropertyType "Capacity" EmailChannelSubtypeConfigProperty = Value Prelude.Double+  set newValue EmailChannelSubtypeConfigProperty {..}+    = EmailChannelSubtypeConfigProperty+        {capacity = Prelude.pure newValue, ..}+instance Property "DefaultOutboundConfig" EmailChannelSubtypeConfigProperty where+  type PropertyType "DefaultOutboundConfig" EmailChannelSubtypeConfigProperty = EmailOutboundConfigProperty+  set newValue EmailChannelSubtypeConfigProperty {..}+    = EmailChannelSubtypeConfigProperty+        {defaultOutboundConfig = newValue, ..}+instance Property "OutboundMode" EmailChannelSubtypeConfigProperty where+  type PropertyType "OutboundMode" EmailChannelSubtypeConfigProperty = EmailOutboundModeProperty+  set newValue EmailChannelSubtypeConfigProperty {..}+    = EmailChannelSubtypeConfigProperty {outboundMode = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EmailChannelSubtypeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EmailChannelSubtypeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EmailChannelSubtypeConfigProperty :: Prelude.Type+instance ToResourceProperties EmailChannelSubtypeConfigProperty+instance Prelude.Eq EmailChannelSubtypeConfigProperty+instance Prelude.Show EmailChannelSubtypeConfigProperty+instance JSON.ToJSON EmailChannelSubtypeConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EmailOutboundConfigProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundConfigProperty (+        EmailOutboundConfigProperty(..), mkEmailOutboundConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EmailOutboundConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailoutboundconfig.html>+    EmailOutboundConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailoutboundconfig.html#cfn-connectcampaignsv2-campaign-emailoutboundconfig-connectsourceemailaddress>+                                 connectSourceEmailAddress :: (Value Prelude.Text),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailoutboundconfig.html#cfn-connectcampaignsv2-campaign-emailoutboundconfig-sourceemailaddressdisplayname>+                                 sourceEmailAddressDisplayName :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailoutboundconfig.html#cfn-connectcampaignsv2-campaign-emailoutboundconfig-wisdomtemplatearn>+                                 wisdomTemplateArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEmailOutboundConfigProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> EmailOutboundConfigProperty+mkEmailOutboundConfigProperty+  connectSourceEmailAddress+  wisdomTemplateArn+  = EmailOutboundConfigProperty+      {haddock_workaround_ = (),+       connectSourceEmailAddress = connectSourceEmailAddress,+       wisdomTemplateArn = wisdomTemplateArn,+       sourceEmailAddressDisplayName = Prelude.Nothing}+instance ToResourceProperties EmailOutboundConfigProperty where+  toResourceProperties EmailOutboundConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.EmailOutboundConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ConnectSourceEmailAddress" JSON..= connectSourceEmailAddress,+                            "WisdomTemplateArn" JSON..= wisdomTemplateArn]+                           (Prelude.catMaybes+                              [(JSON..=) "SourceEmailAddressDisplayName"+                                 Prelude.<$> sourceEmailAddressDisplayName]))}+instance JSON.ToJSON EmailOutboundConfigProperty where+  toJSON EmailOutboundConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ConnectSourceEmailAddress" JSON..= connectSourceEmailAddress,+               "WisdomTemplateArn" JSON..= wisdomTemplateArn]+              (Prelude.catMaybes+                 [(JSON..=) "SourceEmailAddressDisplayName"+                    Prelude.<$> sourceEmailAddressDisplayName])))+instance Property "ConnectSourceEmailAddress" EmailOutboundConfigProperty where+  type PropertyType "ConnectSourceEmailAddress" EmailOutboundConfigProperty = Value Prelude.Text+  set newValue EmailOutboundConfigProperty {..}+    = EmailOutboundConfigProperty+        {connectSourceEmailAddress = newValue, ..}+instance Property "SourceEmailAddressDisplayName" EmailOutboundConfigProperty where+  type PropertyType "SourceEmailAddressDisplayName" EmailOutboundConfigProperty = Value Prelude.Text+  set newValue EmailOutboundConfigProperty {..}+    = EmailOutboundConfigProperty+        {sourceEmailAddressDisplayName = Prelude.pure newValue, ..}+instance Property "WisdomTemplateArn" EmailOutboundConfigProperty where+  type PropertyType "WisdomTemplateArn" EmailOutboundConfigProperty = Value Prelude.Text+  set newValue EmailOutboundConfigProperty {..}+    = EmailOutboundConfigProperty {wisdomTemplateArn = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EmailOutboundConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EmailOutboundConfigProperty :: Prelude.Type+instance ToResourceProperties EmailOutboundConfigProperty+instance Prelude.Eq EmailOutboundConfigProperty+instance Prelude.Show EmailOutboundConfigProperty+instance JSON.ToJSON EmailOutboundConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EmailOutboundModeProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundModeProperty (+        EmailOutboundModeProperty(..), mkEmailOutboundModeProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+data EmailOutboundModeProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailoutboundmode.html>+    EmailOutboundModeProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-emailoutboundmode.html#cfn-connectcampaignsv2-campaign-emailoutboundmode-agentlessconfig>+                               agentlessConfig :: (Prelude.Maybe JSON.Object)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEmailOutboundModeProperty :: EmailOutboundModeProperty+mkEmailOutboundModeProperty+  = EmailOutboundModeProperty+      {haddock_workaround_ = (), agentlessConfig = Prelude.Nothing}+instance ToResourceProperties EmailOutboundModeProperty where+  toResourceProperties EmailOutboundModeProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.EmailOutboundMode",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AgentlessConfig" Prelude.<$> agentlessConfig])}+instance JSON.ToJSON EmailOutboundModeProperty where+  toJSON EmailOutboundModeProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AgentlessConfig" Prelude.<$> agentlessConfig]))+instance Property "AgentlessConfig" EmailOutboundModeProperty where+  type PropertyType "AgentlessConfig" EmailOutboundModeProperty = JSON.Object+  set newValue EmailOutboundModeProperty {..}+    = EmailOutboundModeProperty+        {agentlessConfig = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EmailOutboundModeProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundModeProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EmailOutboundModeProperty :: Prelude.Type+instance ToResourceProperties EmailOutboundModeProperty+instance Prelude.Eq EmailOutboundModeProperty+instance Prelude.Show EmailOutboundModeProperty+instance JSON.ToJSON EmailOutboundModeProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EventTriggerProperty.hs view
@@ -0,0 +1,40 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EventTriggerProperty (+        EventTriggerProperty(..), mkEventTriggerProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EventTriggerProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-eventtrigger.html>+    EventTriggerProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-eventtrigger.html#cfn-connectcampaignsv2-campaign-eventtrigger-customerprofilesdomainarn>+                          customerProfilesDomainArn :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEventTriggerProperty :: EventTriggerProperty+mkEventTriggerProperty+  = EventTriggerProperty+      {haddock_workaround_ = (),+       customerProfilesDomainArn = Prelude.Nothing}+instance ToResourceProperties EventTriggerProperty where+  toResourceProperties EventTriggerProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.EventTrigger",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CustomerProfilesDomainArn"+                              Prelude.<$> customerProfilesDomainArn])}+instance JSON.ToJSON EventTriggerProperty where+  toJSON EventTriggerProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CustomerProfilesDomainArn"+                 Prelude.<$> customerProfilesDomainArn]))+instance Property "CustomerProfilesDomainArn" EventTriggerProperty where+  type PropertyType "CustomerProfilesDomainArn" EventTriggerProperty = Value Prelude.Text+  set newValue EventTriggerProperty {..}+    = EventTriggerProperty+        {customerProfilesDomainArn = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/EventTriggerProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.EventTriggerProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EventTriggerProperty :: Prelude.Type+instance ToResourceProperties EventTriggerProperty+instance Prelude.Eq EventTriggerProperty+instance Prelude.Show EventTriggerProperty+instance JSON.ToJSON EventTriggerProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/LocalTimeZoneConfigProperty.hs view
@@ -0,0 +1,49 @@+module Stratosphere.ConnectCampaignsV2.Campaign.LocalTimeZoneConfigProperty (+        LocalTimeZoneConfigProperty(..), mkLocalTimeZoneConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data LocalTimeZoneConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-localtimezoneconfig.html>+    LocalTimeZoneConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-localtimezoneconfig.html#cfn-connectcampaignsv2-campaign-localtimezoneconfig-defaulttimezone>+                                 defaultTimeZone :: (Prelude.Maybe (Value Prelude.Text)),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-localtimezoneconfig.html#cfn-connectcampaignsv2-campaign-localtimezoneconfig-localtimezonedetection>+                                 localTimeZoneDetection :: (Prelude.Maybe (ValueList Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocalTimeZoneConfigProperty :: LocalTimeZoneConfigProperty+mkLocalTimeZoneConfigProperty+  = LocalTimeZoneConfigProperty+      {haddock_workaround_ = (), defaultTimeZone = Prelude.Nothing,+       localTimeZoneDetection = Prelude.Nothing}+instance ToResourceProperties LocalTimeZoneConfigProperty where+  toResourceProperties LocalTimeZoneConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.LocalTimeZoneConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "DefaultTimeZone" Prelude.<$> defaultTimeZone,+                            (JSON..=) "LocalTimeZoneDetection"+                              Prelude.<$> localTimeZoneDetection])}+instance JSON.ToJSON LocalTimeZoneConfigProperty where+  toJSON LocalTimeZoneConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "DefaultTimeZone" Prelude.<$> defaultTimeZone,+               (JSON..=) "LocalTimeZoneDetection"+                 Prelude.<$> localTimeZoneDetection]))+instance Property "DefaultTimeZone" LocalTimeZoneConfigProperty where+  type PropertyType "DefaultTimeZone" LocalTimeZoneConfigProperty = Value Prelude.Text+  set newValue LocalTimeZoneConfigProperty {..}+    = LocalTimeZoneConfigProperty+        {defaultTimeZone = Prelude.pure newValue, ..}+instance Property "LocalTimeZoneDetection" LocalTimeZoneConfigProperty where+  type PropertyType "LocalTimeZoneDetection" LocalTimeZoneConfigProperty = ValueList Prelude.Text+  set newValue LocalTimeZoneConfigProperty {..}+    = LocalTimeZoneConfigProperty+        {localTimeZoneDetection = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/LocalTimeZoneConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.LocalTimeZoneConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data LocalTimeZoneConfigProperty :: Prelude.Type+instance ToResourceProperties LocalTimeZoneConfigProperty+instance Prelude.Eq LocalTimeZoneConfigProperty+instance Prelude.Show LocalTimeZoneConfigProperty+instance JSON.ToJSON LocalTimeZoneConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/OpenHoursProperty.hs view
@@ -0,0 +1,31 @@+module Stratosphere.ConnectCampaignsV2.Campaign.OpenHoursProperty (+        module Exports, OpenHoursProperty(..), mkOpenHoursProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.DailyHourProperty as Exports+import Stratosphere.ResourceProperties+data OpenHoursProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-openhours.html>+    OpenHoursProperty {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-openhours.html#cfn-connectcampaignsv2-campaign-openhours-dailyhours>+                       dailyHours :: [DailyHourProperty]}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOpenHoursProperty :: [DailyHourProperty] -> OpenHoursProperty+mkOpenHoursProperty dailyHours+  = OpenHoursProperty+      {haddock_workaround_ = (), dailyHours = dailyHours}+instance ToResourceProperties OpenHoursProperty where+  toResourceProperties OpenHoursProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.OpenHours",+         supportsTags = Prelude.False,+         properties = ["DailyHours" JSON..= dailyHours]}+instance JSON.ToJSON OpenHoursProperty where+  toJSON OpenHoursProperty {..}+    = JSON.object ["DailyHours" JSON..= dailyHours]+instance Property "DailyHours" OpenHoursProperty where+  type PropertyType "DailyHours" OpenHoursProperty = [DailyHourProperty]+  set newValue OpenHoursProperty {..}+    = OpenHoursProperty {dailyHours = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/OpenHoursProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.OpenHoursProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OpenHoursProperty :: Prelude.Type+instance ToResourceProperties OpenHoursProperty+instance Prelude.Eq OpenHoursProperty+instance Prelude.Show OpenHoursProperty+instance JSON.ToJSON OpenHoursProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/PredictiveConfigProperty.hs view
@@ -0,0 +1,33 @@+module Stratosphere.ConnectCampaignsV2.Campaign.PredictiveConfigProperty (+        PredictiveConfigProperty(..), mkPredictiveConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data PredictiveConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-predictiveconfig.html>+    PredictiveConfigProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-predictiveconfig.html#cfn-connectcampaignsv2-campaign-predictiveconfig-bandwidthallocation>+                              bandwidthAllocation :: (Value Prelude.Double)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkPredictiveConfigProperty ::+  Value Prelude.Double -> PredictiveConfigProperty+mkPredictiveConfigProperty bandwidthAllocation+  = PredictiveConfigProperty+      {haddock_workaround_ = (),+       bandwidthAllocation = bandwidthAllocation}+instance ToResourceProperties PredictiveConfigProperty where+  toResourceProperties PredictiveConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.PredictiveConfig",+         supportsTags = Prelude.False,+         properties = ["BandwidthAllocation" JSON..= bandwidthAllocation]}+instance JSON.ToJSON PredictiveConfigProperty where+  toJSON PredictiveConfigProperty {..}+    = JSON.object ["BandwidthAllocation" JSON..= bandwidthAllocation]+instance Property "BandwidthAllocation" PredictiveConfigProperty where+  type PropertyType "BandwidthAllocation" PredictiveConfigProperty = Value Prelude.Double+  set newValue PredictiveConfigProperty {..}+    = PredictiveConfigProperty {bandwidthAllocation = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/PredictiveConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.PredictiveConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data PredictiveConfigProperty :: Prelude.Type+instance ToResourceProperties PredictiveConfigProperty+instance Prelude.Eq PredictiveConfigProperty+instance Prelude.Show PredictiveConfigProperty+instance JSON.ToJSON PredictiveConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/PreviewConfigProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.ConnectCampaignsV2.Campaign.PreviewConfigProperty (+        module Exports, PreviewConfigProperty(..), mkPreviewConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.TimeoutConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data PreviewConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-previewconfig.html>+    PreviewConfigProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-previewconfig.html#cfn-connectcampaignsv2-campaign-previewconfig-agentactions>+                           agentActions :: (Prelude.Maybe (ValueList Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-previewconfig.html#cfn-connectcampaignsv2-campaign-previewconfig-bandwidthallocation>+                           bandwidthAllocation :: (Value Prelude.Double),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-previewconfig.html#cfn-connectcampaignsv2-campaign-previewconfig-timeoutconfig>+                           timeoutConfig :: TimeoutConfigProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkPreviewConfigProperty ::+  Value Prelude.Double+  -> TimeoutConfigProperty -> PreviewConfigProperty+mkPreviewConfigProperty bandwidthAllocation timeoutConfig+  = PreviewConfigProperty+      {haddock_workaround_ = (),+       bandwidthAllocation = bandwidthAllocation,+       timeoutConfig = timeoutConfig, agentActions = Prelude.Nothing}+instance ToResourceProperties PreviewConfigProperty where+  toResourceProperties PreviewConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.PreviewConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["BandwidthAllocation" JSON..= bandwidthAllocation,+                            "TimeoutConfig" JSON..= timeoutConfig]+                           (Prelude.catMaybes+                              [(JSON..=) "AgentActions" Prelude.<$> agentActions]))}+instance JSON.ToJSON PreviewConfigProperty where+  toJSON PreviewConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["BandwidthAllocation" JSON..= bandwidthAllocation,+               "TimeoutConfig" JSON..= timeoutConfig]+              (Prelude.catMaybes+                 [(JSON..=) "AgentActions" Prelude.<$> agentActions])))+instance Property "AgentActions" PreviewConfigProperty where+  type PropertyType "AgentActions" PreviewConfigProperty = ValueList Prelude.Text+  set newValue PreviewConfigProperty {..}+    = PreviewConfigProperty {agentActions = Prelude.pure newValue, ..}+instance Property "BandwidthAllocation" PreviewConfigProperty where+  type PropertyType "BandwidthAllocation" PreviewConfigProperty = Value Prelude.Double+  set newValue PreviewConfigProperty {..}+    = PreviewConfigProperty {bandwidthAllocation = newValue, ..}+instance Property "TimeoutConfig" PreviewConfigProperty where+  type PropertyType "TimeoutConfig" PreviewConfigProperty = TimeoutConfigProperty+  set newValue PreviewConfigProperty {..}+    = PreviewConfigProperty {timeoutConfig = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/PreviewConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.PreviewConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data PreviewConfigProperty :: Prelude.Type+instance ToResourceProperties PreviewConfigProperty+instance Prelude.Eq PreviewConfigProperty+instance Prelude.Show PreviewConfigProperty+instance JSON.ToJSON PreviewConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/ProgressiveConfigProperty.hs view
@@ -0,0 +1,33 @@+module Stratosphere.ConnectCampaignsV2.Campaign.ProgressiveConfigProperty (+        ProgressiveConfigProperty(..), mkProgressiveConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ProgressiveConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-progressiveconfig.html>+    ProgressiveConfigProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-progressiveconfig.html#cfn-connectcampaignsv2-campaign-progressiveconfig-bandwidthallocation>+                               bandwidthAllocation :: (Value Prelude.Double)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkProgressiveConfigProperty ::+  Value Prelude.Double -> ProgressiveConfigProperty+mkProgressiveConfigProperty bandwidthAllocation+  = ProgressiveConfigProperty+      {haddock_workaround_ = (),+       bandwidthAllocation = bandwidthAllocation}+instance ToResourceProperties ProgressiveConfigProperty where+  toResourceProperties ProgressiveConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.ProgressiveConfig",+         supportsTags = Prelude.False,+         properties = ["BandwidthAllocation" JSON..= bandwidthAllocation]}+instance JSON.ToJSON ProgressiveConfigProperty where+  toJSON ProgressiveConfigProperty {..}+    = JSON.object ["BandwidthAllocation" JSON..= bandwidthAllocation]+instance Property "BandwidthAllocation" ProgressiveConfigProperty where+  type PropertyType "BandwidthAllocation" ProgressiveConfigProperty = Value Prelude.Double+  set newValue ProgressiveConfigProperty {..}+    = ProgressiveConfigProperty {bandwidthAllocation = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/ProgressiveConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.ProgressiveConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ProgressiveConfigProperty :: Prelude.Type+instance ToResourceProperties ProgressiveConfigProperty+instance Prelude.Eq ProgressiveConfigProperty+instance Prelude.Show ProgressiveConfigProperty+instance JSON.ToJSON ProgressiveConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/RestrictedPeriodProperty.hs view
@@ -0,0 +1,53 @@+module Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodProperty (+        RestrictedPeriodProperty(..), mkRestrictedPeriodProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RestrictedPeriodProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-restrictedperiod.html>+    RestrictedPeriodProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-restrictedperiod.html#cfn-connectcampaignsv2-campaign-restrictedperiod-enddate>+                              endDate :: (Value Prelude.Text),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-restrictedperiod.html#cfn-connectcampaignsv2-campaign-restrictedperiod-name>+                              name :: (Prelude.Maybe (Value Prelude.Text)),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-restrictedperiod.html#cfn-connectcampaignsv2-campaign-restrictedperiod-startdate>+                              startDate :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRestrictedPeriodProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> RestrictedPeriodProperty+mkRestrictedPeriodProperty endDate startDate+  = RestrictedPeriodProperty+      {haddock_workaround_ = (), endDate = endDate,+       startDate = startDate, name = Prelude.Nothing}+instance ToResourceProperties RestrictedPeriodProperty where+  toResourceProperties RestrictedPeriodProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.RestrictedPeriod",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["EndDate" JSON..= endDate, "StartDate" JSON..= startDate]+                           (Prelude.catMaybes [(JSON..=) "Name" Prelude.<$> name]))}+instance JSON.ToJSON RestrictedPeriodProperty where+  toJSON RestrictedPeriodProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["EndDate" JSON..= endDate, "StartDate" JSON..= startDate]+              (Prelude.catMaybes [(JSON..=) "Name" Prelude.<$> name])))+instance Property "EndDate" RestrictedPeriodProperty where+  type PropertyType "EndDate" RestrictedPeriodProperty = Value Prelude.Text+  set newValue RestrictedPeriodProperty {..}+    = RestrictedPeriodProperty {endDate = newValue, ..}+instance Property "Name" RestrictedPeriodProperty where+  type PropertyType "Name" RestrictedPeriodProperty = Value Prelude.Text+  set newValue RestrictedPeriodProperty {..}+    = RestrictedPeriodProperty {name = Prelude.pure newValue, ..}+instance Property "StartDate" RestrictedPeriodProperty where+  type PropertyType "StartDate" RestrictedPeriodProperty = Value Prelude.Text+  set newValue RestrictedPeriodProperty {..}+    = RestrictedPeriodProperty {startDate = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/RestrictedPeriodProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RestrictedPeriodProperty :: Prelude.Type+instance ToResourceProperties RestrictedPeriodProperty+instance Prelude.Eq RestrictedPeriodProperty+instance Prelude.Show RestrictedPeriodProperty+instance JSON.ToJSON RestrictedPeriodProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/RestrictedPeriodsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodsProperty (+        module Exports, RestrictedPeriodsProperty(..),+        mkRestrictedPeriodsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodProperty as Exports+import Stratosphere.ResourceProperties+data RestrictedPeriodsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-restrictedperiods.html>+    RestrictedPeriodsProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-restrictedperiods.html#cfn-connectcampaignsv2-campaign-restrictedperiods-restrictedperiodlist>+                               restrictedPeriodList :: [RestrictedPeriodProperty]}+  deriving stock (Prelude.Eq, Prelude.Show)+mkRestrictedPeriodsProperty ::+  [RestrictedPeriodProperty] -> RestrictedPeriodsProperty+mkRestrictedPeriodsProperty restrictedPeriodList+  = RestrictedPeriodsProperty+      {haddock_workaround_ = (),+       restrictedPeriodList = restrictedPeriodList}+instance ToResourceProperties RestrictedPeriodsProperty where+  toResourceProperties RestrictedPeriodsProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.RestrictedPeriods",+         supportsTags = Prelude.False,+         properties = ["RestrictedPeriodList" JSON..= restrictedPeriodList]}+instance JSON.ToJSON RestrictedPeriodsProperty where+  toJSON RestrictedPeriodsProperty {..}+    = JSON.object ["RestrictedPeriodList" JSON..= restrictedPeriodList]+instance Property "RestrictedPeriodList" RestrictedPeriodsProperty where+  type PropertyType "RestrictedPeriodList" RestrictedPeriodsProperty = [RestrictedPeriodProperty]+  set newValue RestrictedPeriodsProperty {..}+    = RestrictedPeriodsProperty {restrictedPeriodList = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/RestrictedPeriodsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RestrictedPeriodsProperty :: Prelude.Type+instance ToResourceProperties RestrictedPeriodsProperty+instance Prelude.Eq RestrictedPeriodsProperty+instance Prelude.Show RestrictedPeriodsProperty+instance JSON.ToJSON RestrictedPeriodsProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/ScheduleProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.ConnectCampaignsV2.Campaign.ScheduleProperty (+        ScheduleProperty(..), mkScheduleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScheduleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-schedule.html>+    ScheduleProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-schedule.html#cfn-connectcampaignsv2-campaign-schedule-endtime>+                      endTime :: (Value Prelude.Text),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-schedule.html#cfn-connectcampaignsv2-campaign-schedule-refreshfrequency>+                      refreshFrequency :: (Prelude.Maybe (Value Prelude.Text)),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-schedule.html#cfn-connectcampaignsv2-campaign-schedule-starttime>+                      startTime :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkScheduleProperty ::+  Value Prelude.Text -> Value Prelude.Text -> ScheduleProperty+mkScheduleProperty endTime startTime+  = ScheduleProperty+      {haddock_workaround_ = (), endTime = endTime,+       startTime = startTime, refreshFrequency = Prelude.Nothing}+instance ToResourceProperties ScheduleProperty where+  toResourceProperties ScheduleProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.Schedule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["EndTime" JSON..= endTime, "StartTime" JSON..= startTime]+                           (Prelude.catMaybes+                              [(JSON..=) "RefreshFrequency" Prelude.<$> refreshFrequency]))}+instance JSON.ToJSON ScheduleProperty where+  toJSON ScheduleProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["EndTime" JSON..= endTime, "StartTime" JSON..= startTime]+              (Prelude.catMaybes+                 [(JSON..=) "RefreshFrequency" Prelude.<$> refreshFrequency])))+instance Property "EndTime" ScheduleProperty where+  type PropertyType "EndTime" ScheduleProperty = Value Prelude.Text+  set newValue ScheduleProperty {..}+    = ScheduleProperty {endTime = newValue, ..}+instance Property "RefreshFrequency" ScheduleProperty where+  type PropertyType "RefreshFrequency" ScheduleProperty = Value Prelude.Text+  set newValue ScheduleProperty {..}+    = ScheduleProperty {refreshFrequency = Prelude.pure newValue, ..}+instance Property "StartTime" ScheduleProperty where+  type PropertyType "StartTime" ScheduleProperty = Value Prelude.Text+  set newValue ScheduleProperty {..}+    = ScheduleProperty {startTime = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/ScheduleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.ScheduleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScheduleProperty :: Prelude.Type+instance ToResourceProperties ScheduleProperty+instance Prelude.Eq ScheduleProperty+instance Prelude.Show ScheduleProperty+instance JSON.ToJSON ScheduleProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SmsChannelSubtypeConfigProperty.hs view
@@ -0,0 +1,63 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SmsChannelSubtypeConfigProperty (+        module Exports, SmsChannelSubtypeConfigProperty(..),+        mkSmsChannelSubtypeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundModeProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SmsChannelSubtypeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smschannelsubtypeconfig.html>+    SmsChannelSubtypeConfigProperty {haddock_workaround_ :: (),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smschannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-smschannelsubtypeconfig-capacity>+                                     capacity :: (Prelude.Maybe (Value Prelude.Double)),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smschannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-smschannelsubtypeconfig-defaultoutboundconfig>+                                     defaultOutboundConfig :: SmsOutboundConfigProperty,+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smschannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-smschannelsubtypeconfig-outboundmode>+                                     outboundMode :: SmsOutboundModeProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSmsChannelSubtypeConfigProperty ::+  SmsOutboundConfigProperty+  -> SmsOutboundModeProperty -> SmsChannelSubtypeConfigProperty+mkSmsChannelSubtypeConfigProperty+  defaultOutboundConfig+  outboundMode+  = SmsChannelSubtypeConfigProperty+      {haddock_workaround_ = (),+       defaultOutboundConfig = defaultOutboundConfig,+       outboundMode = outboundMode, capacity = Prelude.Nothing}+instance ToResourceProperties SmsChannelSubtypeConfigProperty where+  toResourceProperties SmsChannelSubtypeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.SmsChannelSubtypeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["DefaultOutboundConfig" JSON..= defaultOutboundConfig,+                            "OutboundMode" JSON..= outboundMode]+                           (Prelude.catMaybes [(JSON..=) "Capacity" Prelude.<$> capacity]))}+instance JSON.ToJSON SmsChannelSubtypeConfigProperty where+  toJSON SmsChannelSubtypeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["DefaultOutboundConfig" JSON..= defaultOutboundConfig,+               "OutboundMode" JSON..= outboundMode]+              (Prelude.catMaybes [(JSON..=) "Capacity" Prelude.<$> capacity])))+instance Property "Capacity" SmsChannelSubtypeConfigProperty where+  type PropertyType "Capacity" SmsChannelSubtypeConfigProperty = Value Prelude.Double+  set newValue SmsChannelSubtypeConfigProperty {..}+    = SmsChannelSubtypeConfigProperty+        {capacity = Prelude.pure newValue, ..}+instance Property "DefaultOutboundConfig" SmsChannelSubtypeConfigProperty where+  type PropertyType "DefaultOutboundConfig" SmsChannelSubtypeConfigProperty = SmsOutboundConfigProperty+  set newValue SmsChannelSubtypeConfigProperty {..}+    = SmsChannelSubtypeConfigProperty+        {defaultOutboundConfig = newValue, ..}+instance Property "OutboundMode" SmsChannelSubtypeConfigProperty where+  type PropertyType "OutboundMode" SmsChannelSubtypeConfigProperty = SmsOutboundModeProperty+  set newValue SmsChannelSubtypeConfigProperty {..}+    = SmsChannelSubtypeConfigProperty {outboundMode = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SmsChannelSubtypeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SmsChannelSubtypeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SmsChannelSubtypeConfigProperty :: Prelude.Type+instance ToResourceProperties SmsChannelSubtypeConfigProperty+instance Prelude.Eq SmsChannelSubtypeConfigProperty+instance Prelude.Show SmsChannelSubtypeConfigProperty+instance JSON.ToJSON SmsChannelSubtypeConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SmsOutboundConfigProperty.hs view
@@ -0,0 +1,48 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundConfigProperty (+        SmsOutboundConfigProperty(..), mkSmsOutboundConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SmsOutboundConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smsoutboundconfig.html>+    SmsOutboundConfigProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smsoutboundconfig.html#cfn-connectcampaignsv2-campaign-smsoutboundconfig-connectsourcephonenumberarn>+                               connectSourcePhoneNumberArn :: (Value Prelude.Text),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smsoutboundconfig.html#cfn-connectcampaignsv2-campaign-smsoutboundconfig-wisdomtemplatearn>+                               wisdomTemplateArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSmsOutboundConfigProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> SmsOutboundConfigProperty+mkSmsOutboundConfigProperty+  connectSourcePhoneNumberArn+  wisdomTemplateArn+  = SmsOutboundConfigProperty+      {haddock_workaround_ = (),+       connectSourcePhoneNumberArn = connectSourcePhoneNumberArn,+       wisdomTemplateArn = wisdomTemplateArn}+instance ToResourceProperties SmsOutboundConfigProperty where+  toResourceProperties SmsOutboundConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.SmsOutboundConfig",+         supportsTags = Prelude.False,+         properties = ["ConnectSourcePhoneNumberArn"+                         JSON..= connectSourcePhoneNumberArn,+                       "WisdomTemplateArn" JSON..= wisdomTemplateArn]}+instance JSON.ToJSON SmsOutboundConfigProperty where+  toJSON SmsOutboundConfigProperty {..}+    = JSON.object+        ["ConnectSourcePhoneNumberArn" JSON..= connectSourcePhoneNumberArn,+         "WisdomTemplateArn" JSON..= wisdomTemplateArn]+instance Property "ConnectSourcePhoneNumberArn" SmsOutboundConfigProperty where+  type PropertyType "ConnectSourcePhoneNumberArn" SmsOutboundConfigProperty = Value Prelude.Text+  set newValue SmsOutboundConfigProperty {..}+    = SmsOutboundConfigProperty+        {connectSourcePhoneNumberArn = newValue, ..}+instance Property "WisdomTemplateArn" SmsOutboundConfigProperty where+  type PropertyType "WisdomTemplateArn" SmsOutboundConfigProperty = Value Prelude.Text+  set newValue SmsOutboundConfigProperty {..}+    = SmsOutboundConfigProperty {wisdomTemplateArn = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SmsOutboundConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SmsOutboundConfigProperty :: Prelude.Type+instance ToResourceProperties SmsOutboundConfigProperty+instance Prelude.Eq SmsOutboundConfigProperty+instance Prelude.Show SmsOutboundConfigProperty+instance JSON.ToJSON SmsOutboundConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SmsOutboundModeProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundModeProperty (+        SmsOutboundModeProperty(..), mkSmsOutboundModeProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+data SmsOutboundModeProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smsoutboundmode.html>+    SmsOutboundModeProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-smsoutboundmode.html#cfn-connectcampaignsv2-campaign-smsoutboundmode-agentlessconfig>+                             agentlessConfig :: (Prelude.Maybe JSON.Object)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSmsOutboundModeProperty :: SmsOutboundModeProperty+mkSmsOutboundModeProperty+  = SmsOutboundModeProperty+      {haddock_workaround_ = (), agentlessConfig = Prelude.Nothing}+instance ToResourceProperties SmsOutboundModeProperty where+  toResourceProperties SmsOutboundModeProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.SmsOutboundMode",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AgentlessConfig" Prelude.<$> agentlessConfig])}+instance JSON.ToJSON SmsOutboundModeProperty where+  toJSON SmsOutboundModeProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AgentlessConfig" Prelude.<$> agentlessConfig]))+instance Property "AgentlessConfig" SmsOutboundModeProperty where+  type PropertyType "AgentlessConfig" SmsOutboundModeProperty = JSON.Object+  set newValue SmsOutboundModeProperty {..}+    = SmsOutboundModeProperty+        {agentlessConfig = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SmsOutboundModeProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundModeProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SmsOutboundModeProperty :: Prelude.Type+instance ToResourceProperties SmsOutboundModeProperty+instance Prelude.Eq SmsOutboundModeProperty+instance Prelude.Show SmsOutboundModeProperty+instance JSON.ToJSON SmsOutboundModeProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SourceProperty.hs view
@@ -0,0 +1,50 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SourceProperty (+        module Exports, SourceProperty(..), mkSourceProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.EventTriggerProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SourceProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-source.html>+    SourceProperty {haddock_workaround_ :: (),+                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-source.html#cfn-connectcampaignsv2-campaign-source-customerprofilessegmentarn>+                    customerProfilesSegmentArn :: (Prelude.Maybe (Value Prelude.Text)),+                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-source.html#cfn-connectcampaignsv2-campaign-source-eventtrigger>+                    eventTrigger :: (Prelude.Maybe EventTriggerProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSourceProperty :: SourceProperty+mkSourceProperty+  = SourceProperty+      {haddock_workaround_ = (),+       customerProfilesSegmentArn = Prelude.Nothing,+       eventTrigger = Prelude.Nothing}+instance ToResourceProperties SourceProperty where+  toResourceProperties SourceProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.Source",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "CustomerProfilesSegmentArn"+                              Prelude.<$> customerProfilesSegmentArn,+                            (JSON..=) "EventTrigger" Prelude.<$> eventTrigger])}+instance JSON.ToJSON SourceProperty where+  toJSON SourceProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "CustomerProfilesSegmentArn"+                 Prelude.<$> customerProfilesSegmentArn,+               (JSON..=) "EventTrigger" Prelude.<$> eventTrigger]))+instance Property "CustomerProfilesSegmentArn" SourceProperty where+  type PropertyType "CustomerProfilesSegmentArn" SourceProperty = Value Prelude.Text+  set newValue SourceProperty {..}+    = SourceProperty+        {customerProfilesSegmentArn = Prelude.pure newValue, ..}+instance Property "EventTrigger" SourceProperty where+  type PropertyType "EventTrigger" SourceProperty = EventTriggerProperty+  set newValue SourceProperty {..}+    = SourceProperty {eventTrigger = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/SourceProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.SourceProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SourceProperty :: Prelude.Type+instance ToResourceProperties SourceProperty+instance Prelude.Eq SourceProperty+instance Prelude.Show SourceProperty+instance JSON.ToJSON SourceProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TelephonyChannelSubtypeConfigProperty.hs view
@@ -0,0 +1,77 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TelephonyChannelSubtypeConfigProperty (+        module Exports, TelephonyChannelSubtypeConfigProperty(..),+        mkTelephonyChannelSubtypeConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundModeProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TelephonyChannelSubtypeConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonychannelsubtypeconfig.html>+    TelephonyChannelSubtypeConfigProperty {haddock_workaround_ :: (),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonychannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-telephonychannelsubtypeconfig-capacity>+                                           capacity :: (Prelude.Maybe (Value Prelude.Double)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonychannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-telephonychannelsubtypeconfig-connectqueueid>+                                           connectQueueId :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonychannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-telephonychannelsubtypeconfig-defaultoutboundconfig>+                                           defaultOutboundConfig :: TelephonyOutboundConfigProperty,+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonychannelsubtypeconfig.html#cfn-connectcampaignsv2-campaign-telephonychannelsubtypeconfig-outboundmode>+                                           outboundMode :: TelephonyOutboundModeProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTelephonyChannelSubtypeConfigProperty ::+  TelephonyOutboundConfigProperty+  -> TelephonyOutboundModeProperty+     -> TelephonyChannelSubtypeConfigProperty+mkTelephonyChannelSubtypeConfigProperty+  defaultOutboundConfig+  outboundMode+  = TelephonyChannelSubtypeConfigProperty+      {haddock_workaround_ = (),+       defaultOutboundConfig = defaultOutboundConfig,+       outboundMode = outboundMode, capacity = Prelude.Nothing,+       connectQueueId = Prelude.Nothing}+instance ToResourceProperties TelephonyChannelSubtypeConfigProperty where+  toResourceProperties TelephonyChannelSubtypeConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.TelephonyChannelSubtypeConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["DefaultOutboundConfig" JSON..= defaultOutboundConfig,+                            "OutboundMode" JSON..= outboundMode]+                           (Prelude.catMaybes+                              [(JSON..=) "Capacity" Prelude.<$> capacity,+                               (JSON..=) "ConnectQueueId" Prelude.<$> connectQueueId]))}+instance JSON.ToJSON TelephonyChannelSubtypeConfigProperty where+  toJSON TelephonyChannelSubtypeConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["DefaultOutboundConfig" JSON..= defaultOutboundConfig,+               "OutboundMode" JSON..= outboundMode]+              (Prelude.catMaybes+                 [(JSON..=) "Capacity" Prelude.<$> capacity,+                  (JSON..=) "ConnectQueueId" Prelude.<$> connectQueueId])))+instance Property "Capacity" TelephonyChannelSubtypeConfigProperty where+  type PropertyType "Capacity" TelephonyChannelSubtypeConfigProperty = Value Prelude.Double+  set newValue TelephonyChannelSubtypeConfigProperty {..}+    = TelephonyChannelSubtypeConfigProperty+        {capacity = Prelude.pure newValue, ..}+instance Property "ConnectQueueId" TelephonyChannelSubtypeConfigProperty where+  type PropertyType "ConnectQueueId" TelephonyChannelSubtypeConfigProperty = Value Prelude.Text+  set newValue TelephonyChannelSubtypeConfigProperty {..}+    = TelephonyChannelSubtypeConfigProperty+        {connectQueueId = Prelude.pure newValue, ..}+instance Property "DefaultOutboundConfig" TelephonyChannelSubtypeConfigProperty where+  type PropertyType "DefaultOutboundConfig" TelephonyChannelSubtypeConfigProperty = TelephonyOutboundConfigProperty+  set newValue TelephonyChannelSubtypeConfigProperty {..}+    = TelephonyChannelSubtypeConfigProperty+        {defaultOutboundConfig = newValue, ..}+instance Property "OutboundMode" TelephonyChannelSubtypeConfigProperty where+  type PropertyType "OutboundMode" TelephonyChannelSubtypeConfigProperty = TelephonyOutboundModeProperty+  set newValue TelephonyChannelSubtypeConfigProperty {..}+    = TelephonyChannelSubtypeConfigProperty+        {outboundMode = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TelephonyChannelSubtypeConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TelephonyChannelSubtypeConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TelephonyChannelSubtypeConfigProperty :: Prelude.Type+instance ToResourceProperties TelephonyChannelSubtypeConfigProperty+instance Prelude.Eq TelephonyChannelSubtypeConfigProperty+instance Prelude.Show TelephonyChannelSubtypeConfigProperty+instance JSON.ToJSON TelephonyChannelSubtypeConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TelephonyOutboundConfigProperty.hs view
@@ -0,0 +1,67 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundConfigProperty (+        module Exports, TelephonyOutboundConfigProperty(..),+        mkTelephonyOutboundConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.AnswerMachineDetectionConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TelephonyOutboundConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundconfig.html>+    TelephonyOutboundConfigProperty {haddock_workaround_ :: (),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundconfig.html#cfn-connectcampaignsv2-campaign-telephonyoutboundconfig-answermachinedetectionconfig>+                                     answerMachineDetectionConfig :: (Prelude.Maybe AnswerMachineDetectionConfigProperty),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundconfig.html#cfn-connectcampaignsv2-campaign-telephonyoutboundconfig-connectcontactflowid>+                                     connectContactFlowId :: (Value Prelude.Text),+                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundconfig.html#cfn-connectcampaignsv2-campaign-telephonyoutboundconfig-connectsourcephonenumber>+                                     connectSourcePhoneNumber :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTelephonyOutboundConfigProperty ::+  Value Prelude.Text -> TelephonyOutboundConfigProperty+mkTelephonyOutboundConfigProperty connectContactFlowId+  = TelephonyOutboundConfigProperty+      {haddock_workaround_ = (),+       connectContactFlowId = connectContactFlowId,+       answerMachineDetectionConfig = Prelude.Nothing,+       connectSourcePhoneNumber = Prelude.Nothing}+instance ToResourceProperties TelephonyOutboundConfigProperty where+  toResourceProperties TelephonyOutboundConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.TelephonyOutboundConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["ConnectContactFlowId" JSON..= connectContactFlowId]+                           (Prelude.catMaybes+                              [(JSON..=) "AnswerMachineDetectionConfig"+                                 Prelude.<$> answerMachineDetectionConfig,+                               (JSON..=) "ConnectSourcePhoneNumber"+                                 Prelude.<$> connectSourcePhoneNumber]))}+instance JSON.ToJSON TelephonyOutboundConfigProperty where+  toJSON TelephonyOutboundConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["ConnectContactFlowId" JSON..= connectContactFlowId]+              (Prelude.catMaybes+                 [(JSON..=) "AnswerMachineDetectionConfig"+                    Prelude.<$> answerMachineDetectionConfig,+                  (JSON..=) "ConnectSourcePhoneNumber"+                    Prelude.<$> connectSourcePhoneNumber])))+instance Property "AnswerMachineDetectionConfig" TelephonyOutboundConfigProperty where+  type PropertyType "AnswerMachineDetectionConfig" TelephonyOutboundConfigProperty = AnswerMachineDetectionConfigProperty+  set newValue TelephonyOutboundConfigProperty {..}+    = TelephonyOutboundConfigProperty+        {answerMachineDetectionConfig = Prelude.pure newValue, ..}+instance Property "ConnectContactFlowId" TelephonyOutboundConfigProperty where+  type PropertyType "ConnectContactFlowId" TelephonyOutboundConfigProperty = Value Prelude.Text+  set newValue TelephonyOutboundConfigProperty {..}+    = TelephonyOutboundConfigProperty+        {connectContactFlowId = newValue, ..}+instance Property "ConnectSourcePhoneNumber" TelephonyOutboundConfigProperty where+  type PropertyType "ConnectSourcePhoneNumber" TelephonyOutboundConfigProperty = Value Prelude.Text+  set newValue TelephonyOutboundConfigProperty {..}+    = TelephonyOutboundConfigProperty+        {connectSourcePhoneNumber = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TelephonyOutboundConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TelephonyOutboundConfigProperty :: Prelude.Type+instance ToResourceProperties TelephonyOutboundConfigProperty+instance Prelude.Eq TelephonyOutboundConfigProperty+instance Prelude.Show TelephonyOutboundConfigProperty+instance JSON.ToJSON TelephonyOutboundConfigProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TelephonyOutboundModeProperty.hs view
@@ -0,0 +1,70 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundModeProperty (+        module Exports, TelephonyOutboundModeProperty(..),+        mkTelephonyOutboundModeProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.PredictiveConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.PreviewConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.ProgressiveConfigProperty as Exports+import Stratosphere.ResourceProperties+data TelephonyOutboundModeProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundmode.html>+    TelephonyOutboundModeProperty {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundmode.html#cfn-connectcampaignsv2-campaign-telephonyoutboundmode-agentlessconfig>+                                   agentlessConfig :: (Prelude.Maybe JSON.Object),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundmode.html#cfn-connectcampaignsv2-campaign-telephonyoutboundmode-predictiveconfig>+                                   predictiveConfig :: (Prelude.Maybe PredictiveConfigProperty),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundmode.html#cfn-connectcampaignsv2-campaign-telephonyoutboundmode-previewconfig>+                                   previewConfig :: (Prelude.Maybe PreviewConfigProperty),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-telephonyoutboundmode.html#cfn-connectcampaignsv2-campaign-telephonyoutboundmode-progressiveconfig>+                                   progressiveConfig :: (Prelude.Maybe ProgressiveConfigProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTelephonyOutboundModeProperty :: TelephonyOutboundModeProperty+mkTelephonyOutboundModeProperty+  = TelephonyOutboundModeProperty+      {haddock_workaround_ = (), agentlessConfig = Prelude.Nothing,+       predictiveConfig = Prelude.Nothing,+       previewConfig = Prelude.Nothing,+       progressiveConfig = Prelude.Nothing}+instance ToResourceProperties TelephonyOutboundModeProperty where+  toResourceProperties TelephonyOutboundModeProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.TelephonyOutboundMode",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AgentlessConfig" Prelude.<$> agentlessConfig,+                            (JSON..=) "PredictiveConfig" Prelude.<$> predictiveConfig,+                            (JSON..=) "PreviewConfig" Prelude.<$> previewConfig,+                            (JSON..=) "ProgressiveConfig" Prelude.<$> progressiveConfig])}+instance JSON.ToJSON TelephonyOutboundModeProperty where+  toJSON TelephonyOutboundModeProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AgentlessConfig" Prelude.<$> agentlessConfig,+               (JSON..=) "PredictiveConfig" Prelude.<$> predictiveConfig,+               (JSON..=) "PreviewConfig" Prelude.<$> previewConfig,+               (JSON..=) "ProgressiveConfig" Prelude.<$> progressiveConfig]))+instance Property "AgentlessConfig" TelephonyOutboundModeProperty where+  type PropertyType "AgentlessConfig" TelephonyOutboundModeProperty = JSON.Object+  set newValue TelephonyOutboundModeProperty {..}+    = TelephonyOutboundModeProperty+        {agentlessConfig = Prelude.pure newValue, ..}+instance Property "PredictiveConfig" TelephonyOutboundModeProperty where+  type PropertyType "PredictiveConfig" TelephonyOutboundModeProperty = PredictiveConfigProperty+  set newValue TelephonyOutboundModeProperty {..}+    = TelephonyOutboundModeProperty+        {predictiveConfig = Prelude.pure newValue, ..}+instance Property "PreviewConfig" TelephonyOutboundModeProperty where+  type PropertyType "PreviewConfig" TelephonyOutboundModeProperty = PreviewConfigProperty+  set newValue TelephonyOutboundModeProperty {..}+    = TelephonyOutboundModeProperty+        {previewConfig = Prelude.pure newValue, ..}+instance Property "ProgressiveConfig" TelephonyOutboundModeProperty where+  type PropertyType "ProgressiveConfig" TelephonyOutboundModeProperty = ProgressiveConfigProperty+  set newValue TelephonyOutboundModeProperty {..}+    = TelephonyOutboundModeProperty+        {progressiveConfig = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TelephonyOutboundModeProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundModeProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TelephonyOutboundModeProperty :: Prelude.Type+instance ToResourceProperties TelephonyOutboundModeProperty+instance Prelude.Eq TelephonyOutboundModeProperty+instance Prelude.Show TelephonyOutboundModeProperty+instance JSON.ToJSON TelephonyOutboundModeProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TimeRangeProperty.hs view
@@ -0,0 +1,41 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TimeRangeProperty (+        TimeRangeProperty(..), mkTimeRangeProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TimeRangeProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timerange.html>+    TimeRangeProperty {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timerange.html#cfn-connectcampaignsv2-campaign-timerange-endtime>+                       endTime :: (Value Prelude.Text),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timerange.html#cfn-connectcampaignsv2-campaign-timerange-starttime>+                       startTime :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTimeRangeProperty ::+  Value Prelude.Text -> Value Prelude.Text -> TimeRangeProperty+mkTimeRangeProperty endTime startTime+  = TimeRangeProperty+      {haddock_workaround_ = (), endTime = endTime,+       startTime = startTime}+instance ToResourceProperties TimeRangeProperty where+  toResourceProperties TimeRangeProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.TimeRange",+         supportsTags = Prelude.False,+         properties = ["EndTime" JSON..= endTime,+                       "StartTime" JSON..= startTime]}+instance JSON.ToJSON TimeRangeProperty where+  toJSON TimeRangeProperty {..}+    = JSON.object+        ["EndTime" JSON..= endTime, "StartTime" JSON..= startTime]+instance Property "EndTime" TimeRangeProperty where+  type PropertyType "EndTime" TimeRangeProperty = Value Prelude.Text+  set newValue TimeRangeProperty {..}+    = TimeRangeProperty {endTime = newValue, ..}+instance Property "StartTime" TimeRangeProperty where+  type PropertyType "StartTime" TimeRangeProperty = Value Prelude.Text+  set newValue TimeRangeProperty {..}+    = TimeRangeProperty {startTime = newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TimeRangeProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TimeRangeProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TimeRangeProperty :: Prelude.Type+instance ToResourceProperties TimeRangeProperty+instance Prelude.Eq TimeRangeProperty+instance Prelude.Show TimeRangeProperty+instance JSON.ToJSON TimeRangeProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TimeWindowProperty.hs view
@@ -0,0 +1,49 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TimeWindowProperty (+        module Exports, TimeWindowProperty(..), mkTimeWindowProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.OpenHoursProperty as Exports+import {-# SOURCE #-} Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodsProperty as Exports+import Stratosphere.ResourceProperties+data TimeWindowProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timewindow.html>+    TimeWindowProperty {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timewindow.html#cfn-connectcampaignsv2-campaign-timewindow-openhours>+                        openHours :: OpenHoursProperty,+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timewindow.html#cfn-connectcampaignsv2-campaign-timewindow-restrictedperiods>+                        restrictedPeriods :: (Prelude.Maybe RestrictedPeriodsProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTimeWindowProperty :: OpenHoursProperty -> TimeWindowProperty+mkTimeWindowProperty openHours+  = TimeWindowProperty+      {haddock_workaround_ = (), openHours = openHours,+       restrictedPeriods = Prelude.Nothing}+instance ToResourceProperties TimeWindowProperty where+  toResourceProperties TimeWindowProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.TimeWindow",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["OpenHours" JSON..= openHours]+                           (Prelude.catMaybes+                              [(JSON..=) "RestrictedPeriods" Prelude.<$> restrictedPeriods]))}+instance JSON.ToJSON TimeWindowProperty where+  toJSON TimeWindowProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["OpenHours" JSON..= openHours]+              (Prelude.catMaybes+                 [(JSON..=) "RestrictedPeriods" Prelude.<$> restrictedPeriods])))+instance Property "OpenHours" TimeWindowProperty where+  type PropertyType "OpenHours" TimeWindowProperty = OpenHoursProperty+  set newValue TimeWindowProperty {..}+    = TimeWindowProperty {openHours = newValue, ..}+instance Property "RestrictedPeriods" TimeWindowProperty where+  type PropertyType "RestrictedPeriods" TimeWindowProperty = RestrictedPeriodsProperty+  set newValue TimeWindowProperty {..}+    = TimeWindowProperty+        {restrictedPeriods = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TimeWindowProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TimeWindowProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TimeWindowProperty :: Prelude.Type+instance ToResourceProperties TimeWindowProperty+instance Prelude.Eq TimeWindowProperty+instance Prelude.Show TimeWindowProperty+instance JSON.ToJSON TimeWindowProperty
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TimeoutConfigProperty.hs view
@@ -0,0 +1,37 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TimeoutConfigProperty (+        TimeoutConfigProperty(..), mkTimeoutConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TimeoutConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timeoutconfig.html>+    TimeoutConfigProperty {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connectcampaignsv2-campaign-timeoutconfig.html#cfn-connectcampaignsv2-campaign-timeoutconfig-durationinseconds>+                           durationInSeconds :: (Prelude.Maybe (Value Prelude.Integer))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTimeoutConfigProperty :: TimeoutConfigProperty+mkTimeoutConfigProperty+  = TimeoutConfigProperty+      {haddock_workaround_ = (), durationInSeconds = Prelude.Nothing}+instance ToResourceProperties TimeoutConfigProperty where+  toResourceProperties TimeoutConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::ConnectCampaignsV2::Campaign.TimeoutConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "DurationInSeconds" Prelude.<$> durationInSeconds])}+instance JSON.ToJSON TimeoutConfigProperty where+  toJSON TimeoutConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "DurationInSeconds" Prelude.<$> durationInSeconds]))+instance Property "DurationInSeconds" TimeoutConfigProperty where+  type PropertyType "DurationInSeconds" TimeoutConfigProperty = Value Prelude.Integer+  set newValue TimeoutConfigProperty {..}+    = TimeoutConfigProperty+        {durationInSeconds = Prelude.pure newValue, ..}
+ gen/Stratosphere/ConnectCampaignsV2/Campaign/TimeoutConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.ConnectCampaignsV2.Campaign.TimeoutConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TimeoutConfigProperty :: Prelude.Type+instance ToResourceProperties TimeoutConfigProperty+instance Prelude.Eq TimeoutConfigProperty+instance Prelude.Show TimeoutConfigProperty+instance JSON.ToJSON TimeoutConfigProperty
+ stratosphere-connectcampaignsv2.cabal view
@@ -0,0 +1,102 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name:           stratosphere-connectcampaignsv2+version:        1.0.0+synopsis:       Stratosphere integration for AWS ConnectCampaignsV2.+description:    Integration into stratosphere to generate resources and properties for AWS ConnectCampaignsV2+category:       AWS, Cloud, ConnectCampaignsV2+stability:      experimental+homepage:       https://github.com/mbj/stratosphere#readme+bug-reports:    https://github.com/mbj/stratosphere/issues+maintainer:     Markus Schirp+license:        MIT+license-file:   LICENSE.md+build-type:     Simple++source-repository head+  type: git+  location: https://github.com/mbj/stratosphere++flag development+  description: Run GHC with development flags+  manual: True+  default: False++library+  exposed-modules:+      Stratosphere.ConnectCampaignsV2.Campaign+      Stratosphere.ConnectCampaignsV2.Campaign.AnswerMachineDetectionConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.ChannelSubtypeConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitProperty+      Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.CommunicationLimitsProperty+      Stratosphere.ConnectCampaignsV2.Campaign.CommunicationTimeConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.DailyHourProperty+      Stratosphere.ConnectCampaignsV2.Campaign.EmailChannelSubtypeConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.EmailOutboundModeProperty+      Stratosphere.ConnectCampaignsV2.Campaign.EventTriggerProperty+      Stratosphere.ConnectCampaignsV2.Campaign.LocalTimeZoneConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.OpenHoursProperty+      Stratosphere.ConnectCampaignsV2.Campaign.PredictiveConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.PreviewConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.ProgressiveConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodProperty+      Stratosphere.ConnectCampaignsV2.Campaign.RestrictedPeriodsProperty+      Stratosphere.ConnectCampaignsV2.Campaign.ScheduleProperty+      Stratosphere.ConnectCampaignsV2.Campaign.SmsChannelSubtypeConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.SmsOutboundModeProperty+      Stratosphere.ConnectCampaignsV2.Campaign.SourceProperty+      Stratosphere.ConnectCampaignsV2.Campaign.TelephonyChannelSubtypeConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.TelephonyOutboundModeProperty+      Stratosphere.ConnectCampaignsV2.Campaign.TimeoutConfigProperty+      Stratosphere.ConnectCampaignsV2.Campaign.TimeRangeProperty+      Stratosphere.ConnectCampaignsV2.Campaign.TimeWindowProperty+  other-modules:+      Paths_stratosphere_connectcampaignsv2+  hs-source-dirs:+      gen+  default-extensions:+      DataKinds+      DeriveGeneric+      DerivingStrategies+      DerivingVia+      DuplicateRecordFields+      FlexibleContexts+      FlexibleInstances+      GADTs+      GeneralizedNewtypeDeriving+      InstanceSigs+      LambdaCase+      MultiParamTypeClasses+      NoFieldSelectors+      NoImplicitPrelude+      NumericUnderscores+      OverloadedLists+      OverloadedRecordDot+      OverloadedStrings+      PolyKinds+      RecordWildCards+      ScopedTypeVariables+      StandaloneDeriving+      Strict+      TemplateHaskell+      TupleSections+      TypeApplications+      TypeFamilies+  ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+  build-depends:+      aeson ==2.*+    , base >=4.8 && <4.22+    , stratosphere ==1.0.0+  default-language: Haskell2010+  if flag(development)+    ghc-options: -Werror+  else+    ghc-options: -Wwarn