module Stratosphere.Wisdom.KnowledgeBase.FixedSizeChunkingConfigurationProperty (
        FixedSizeChunkingConfigurationProperty(..),
        mkFixedSizeChunkingConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data FixedSizeChunkingConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-knowledgebase-fixedsizechunkingconfiguration.html>
    FixedSizeChunkingConfigurationProperty {FixedSizeChunkingConfigurationProperty -> ()
haddock_workaround_ :: (),
                                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-knowledgebase-fixedsizechunkingconfiguration.html#cfn-wisdom-knowledgebase-fixedsizechunkingconfiguration-maxtokens>
                                            FixedSizeChunkingConfigurationProperty -> Value Double
maxTokens :: (Value Prelude.Double),
                                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-knowledgebase-fixedsizechunkingconfiguration.html#cfn-wisdom-knowledgebase-fixedsizechunkingconfiguration-overlappercentage>
                                            FixedSizeChunkingConfigurationProperty -> Value Double
overlapPercentage :: (Value Prelude.Double)}
  deriving stock (FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty -> Bool
(FixedSizeChunkingConfigurationProperty
 -> FixedSizeChunkingConfigurationProperty -> Bool)
-> (FixedSizeChunkingConfigurationProperty
    -> FixedSizeChunkingConfigurationProperty -> Bool)
-> Eq FixedSizeChunkingConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty -> Bool
== :: FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty -> Bool
$c/= :: FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty -> Bool
/= :: FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty -> Bool
Prelude.Eq, Int -> FixedSizeChunkingConfigurationProperty -> ShowS
[FixedSizeChunkingConfigurationProperty] -> ShowS
FixedSizeChunkingConfigurationProperty -> String
(Int -> FixedSizeChunkingConfigurationProperty -> ShowS)
-> (FixedSizeChunkingConfigurationProperty -> String)
-> ([FixedSizeChunkingConfigurationProperty] -> ShowS)
-> Show FixedSizeChunkingConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FixedSizeChunkingConfigurationProperty -> ShowS
showsPrec :: Int -> FixedSizeChunkingConfigurationProperty -> ShowS
$cshow :: FixedSizeChunkingConfigurationProperty -> String
show :: FixedSizeChunkingConfigurationProperty -> String
$cshowList :: [FixedSizeChunkingConfigurationProperty] -> ShowS
showList :: [FixedSizeChunkingConfigurationProperty] -> ShowS
Prelude.Show)
mkFixedSizeChunkingConfigurationProperty ::
  Value Prelude.Double
  -> Value Prelude.Double -> FixedSizeChunkingConfigurationProperty
mkFixedSizeChunkingConfigurationProperty :: Value Double
-> Value Double -> FixedSizeChunkingConfigurationProperty
mkFixedSizeChunkingConfigurationProperty
  Value Double
maxTokens
  Value Double
overlapPercentage
  = FixedSizeChunkingConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), maxTokens :: Value Double
maxTokens = Value Double
maxTokens,
       overlapPercentage :: Value Double
overlapPercentage = Value Double
overlapPercentage}
instance ToResourceProperties FixedSizeChunkingConfigurationProperty where
  toResourceProperties :: FixedSizeChunkingConfigurationProperty -> ResourceProperties
toResourceProperties FixedSizeChunkingConfigurationProperty {()
Value Double
haddock_workaround_ :: FixedSizeChunkingConfigurationProperty -> ()
maxTokens :: FixedSizeChunkingConfigurationProperty -> Value Double
overlapPercentage :: FixedSizeChunkingConfigurationProperty -> Value Double
haddock_workaround_ :: ()
maxTokens :: Value Double
overlapPercentage :: Value Double
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Wisdom::KnowledgeBase.FixedSizeChunkingConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"MaxTokens" Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Double
maxTokens,
                       Key
"OverlapPercentage" Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Double
overlapPercentage]}
instance JSON.ToJSON FixedSizeChunkingConfigurationProperty where
  toJSON :: FixedSizeChunkingConfigurationProperty -> Value
toJSON FixedSizeChunkingConfigurationProperty {()
Value Double
haddock_workaround_ :: FixedSizeChunkingConfigurationProperty -> ()
maxTokens :: FixedSizeChunkingConfigurationProperty -> Value Double
overlapPercentage :: FixedSizeChunkingConfigurationProperty -> Value Double
haddock_workaround_ :: ()
maxTokens :: Value Double
overlapPercentage :: Value Double
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"MaxTokens" Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Double
maxTokens,
         Key
"OverlapPercentage" Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Double
overlapPercentage]
instance Property "MaxTokens" FixedSizeChunkingConfigurationProperty where
  type PropertyType "MaxTokens" FixedSizeChunkingConfigurationProperty = Value Prelude.Double
  set :: PropertyType "MaxTokens" FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty
set PropertyType "MaxTokens" FixedSizeChunkingConfigurationProperty
newValue FixedSizeChunkingConfigurationProperty {()
Value Double
haddock_workaround_ :: FixedSizeChunkingConfigurationProperty -> ()
maxTokens :: FixedSizeChunkingConfigurationProperty -> Value Double
overlapPercentage :: FixedSizeChunkingConfigurationProperty -> Value Double
haddock_workaround_ :: ()
maxTokens :: Value Double
overlapPercentage :: Value Double
..}
    = FixedSizeChunkingConfigurationProperty {maxTokens :: Value Double
maxTokens = PropertyType "MaxTokens" FixedSizeChunkingConfigurationProperty
Value Double
newValue, ()
Value Double
haddock_workaround_ :: ()
overlapPercentage :: Value Double
haddock_workaround_ :: ()
overlapPercentage :: Value Double
..}
instance Property "OverlapPercentage" FixedSizeChunkingConfigurationProperty where
  type PropertyType "OverlapPercentage" FixedSizeChunkingConfigurationProperty = Value Prelude.Double
  set :: PropertyType
  "OverlapPercentage" FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty
-> FixedSizeChunkingConfigurationProperty
set PropertyType
  "OverlapPercentage" FixedSizeChunkingConfigurationProperty
newValue FixedSizeChunkingConfigurationProperty {()
Value Double
haddock_workaround_ :: FixedSizeChunkingConfigurationProperty -> ()
maxTokens :: FixedSizeChunkingConfigurationProperty -> Value Double
overlapPercentage :: FixedSizeChunkingConfigurationProperty -> Value Double
haddock_workaround_ :: ()
maxTokens :: Value Double
overlapPercentage :: Value Double
..}
    = FixedSizeChunkingConfigurationProperty
        {overlapPercentage :: Value Double
overlapPercentage = PropertyType
  "OverlapPercentage" FixedSizeChunkingConfigurationProperty
Value Double
newValue, ()
Value Double
haddock_workaround_ :: ()
maxTokens :: Value Double
haddock_workaround_ :: ()
maxTokens :: Value Double
..}