{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.AMP.CreateAlertManagerDefinition
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Create an alert manager definition.
module Amazonka.AMP.CreateAlertManagerDefinition
  ( -- * Creating a Request
    CreateAlertManagerDefinition (..),
    newCreateAlertManagerDefinition,

    -- * Request Lenses
    createAlertManagerDefinition_clientToken,
    createAlertManagerDefinition_data,
    createAlertManagerDefinition_workspaceId,

    -- * Destructuring the Response
    CreateAlertManagerDefinitionResponse (..),
    newCreateAlertManagerDefinitionResponse,

    -- * Response Lenses
    createAlertManagerDefinitionResponse_httpStatus,
    createAlertManagerDefinitionResponse_status,
  )
where

import Amazonka.AMP.Types
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | Represents the input of a CreateAlertManagerDefinition operation.
--
-- /See:/ 'newCreateAlertManagerDefinition' smart constructor.
data CreateAlertManagerDefinition = CreateAlertManagerDefinition'
  { -- | Optional, unique, case-sensitive, user-provided identifier to ensure the
    -- idempotency of the request.
    CreateAlertManagerDefinition -> Maybe Text
clientToken :: Prelude.Maybe Prelude.Text,
    -- | The alert manager definition data.
    CreateAlertManagerDefinition -> Base64
data' :: Data.Base64,
    -- | The ID of the workspace in which to create the alert manager definition.
    CreateAlertManagerDefinition -> Text
workspaceId :: Prelude.Text
  }
  deriving (CreateAlertManagerDefinition
-> CreateAlertManagerDefinition -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateAlertManagerDefinition
-> CreateAlertManagerDefinition -> Bool
$c/= :: CreateAlertManagerDefinition
-> CreateAlertManagerDefinition -> Bool
== :: CreateAlertManagerDefinition
-> CreateAlertManagerDefinition -> Bool
$c== :: CreateAlertManagerDefinition
-> CreateAlertManagerDefinition -> Bool
Prelude.Eq, ReadPrec [CreateAlertManagerDefinition]
ReadPrec CreateAlertManagerDefinition
Int -> ReadS CreateAlertManagerDefinition
ReadS [CreateAlertManagerDefinition]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateAlertManagerDefinition]
$creadListPrec :: ReadPrec [CreateAlertManagerDefinition]
readPrec :: ReadPrec CreateAlertManagerDefinition
$creadPrec :: ReadPrec CreateAlertManagerDefinition
readList :: ReadS [CreateAlertManagerDefinition]
$creadList :: ReadS [CreateAlertManagerDefinition]
readsPrec :: Int -> ReadS CreateAlertManagerDefinition
$creadsPrec :: Int -> ReadS CreateAlertManagerDefinition
Prelude.Read, Int -> CreateAlertManagerDefinition -> ShowS
[CreateAlertManagerDefinition] -> ShowS
CreateAlertManagerDefinition -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateAlertManagerDefinition] -> ShowS
$cshowList :: [CreateAlertManagerDefinition] -> ShowS
show :: CreateAlertManagerDefinition -> String
$cshow :: CreateAlertManagerDefinition -> String
showsPrec :: Int -> CreateAlertManagerDefinition -> ShowS
$cshowsPrec :: Int -> CreateAlertManagerDefinition -> ShowS
Prelude.Show, forall x.
Rep CreateAlertManagerDefinition x -> CreateAlertManagerDefinition
forall x.
CreateAlertManagerDefinition -> Rep CreateAlertManagerDefinition x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateAlertManagerDefinition x -> CreateAlertManagerDefinition
$cfrom :: forall x.
CreateAlertManagerDefinition -> Rep CreateAlertManagerDefinition x
Prelude.Generic)

-- |
-- Create a value of 'CreateAlertManagerDefinition' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'clientToken', 'createAlertManagerDefinition_clientToken' - Optional, unique, case-sensitive, user-provided identifier to ensure the
-- idempotency of the request.
--
-- 'data'', 'createAlertManagerDefinition_data' - The alert manager definition data.--
-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.
-- -- The underlying isomorphism will encode to Base64 representation during
-- -- serialisation, and decode from Base64 representation during deserialisation.
-- -- This 'Lens' accepts and returns only raw unencoded data.
--
-- 'workspaceId', 'createAlertManagerDefinition_workspaceId' - The ID of the workspace in which to create the alert manager definition.
newCreateAlertManagerDefinition ::
  -- | 'data''
  Prelude.ByteString ->
  -- | 'workspaceId'
  Prelude.Text ->
  CreateAlertManagerDefinition
newCreateAlertManagerDefinition :: ByteString -> Text -> CreateAlertManagerDefinition
newCreateAlertManagerDefinition ByteString
pData_ Text
pWorkspaceId_ =
  CreateAlertManagerDefinition'
    { $sel:clientToken:CreateAlertManagerDefinition' :: Maybe Text
clientToken =
        forall a. Maybe a
Prelude.Nothing,
      $sel:data':CreateAlertManagerDefinition' :: Base64
data' = Iso' Base64 ByteString
Data._Base64 forall t b. AReview t b -> b -> t
Lens.# ByteString
pData_,
      $sel:workspaceId:CreateAlertManagerDefinition' :: Text
workspaceId = Text
pWorkspaceId_
    }

-- | Optional, unique, case-sensitive, user-provided identifier to ensure the
-- idempotency of the request.
createAlertManagerDefinition_clientToken :: Lens.Lens' CreateAlertManagerDefinition (Prelude.Maybe Prelude.Text)
createAlertManagerDefinition_clientToken :: Lens' CreateAlertManagerDefinition (Maybe Text)
createAlertManagerDefinition_clientToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateAlertManagerDefinition' {Maybe Text
clientToken :: Maybe Text
$sel:clientToken:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Maybe Text
clientToken} -> Maybe Text
clientToken) (\s :: CreateAlertManagerDefinition
s@CreateAlertManagerDefinition' {} Maybe Text
a -> CreateAlertManagerDefinition
s {$sel:clientToken:CreateAlertManagerDefinition' :: Maybe Text
clientToken = Maybe Text
a} :: CreateAlertManagerDefinition)

-- | The alert manager definition data.--
-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.
-- -- The underlying isomorphism will encode to Base64 representation during
-- -- serialisation, and decode from Base64 representation during deserialisation.
-- -- This 'Lens' accepts and returns only raw unencoded data.
createAlertManagerDefinition_data :: Lens.Lens' CreateAlertManagerDefinition Prelude.ByteString
createAlertManagerDefinition_data :: Lens' CreateAlertManagerDefinition ByteString
createAlertManagerDefinition_data = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateAlertManagerDefinition' {Base64
data' :: Base64
$sel:data':CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Base64
data'} -> Base64
data') (\s :: CreateAlertManagerDefinition
s@CreateAlertManagerDefinition' {} Base64
a -> CreateAlertManagerDefinition
s {$sel:data':CreateAlertManagerDefinition' :: Base64
data' = Base64
a} :: CreateAlertManagerDefinition) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Iso' Base64 ByteString
Data._Base64

-- | The ID of the workspace in which to create the alert manager definition.
createAlertManagerDefinition_workspaceId :: Lens.Lens' CreateAlertManagerDefinition Prelude.Text
createAlertManagerDefinition_workspaceId :: Lens' CreateAlertManagerDefinition Text
createAlertManagerDefinition_workspaceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateAlertManagerDefinition' {Text
workspaceId :: Text
$sel:workspaceId:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Text
workspaceId} -> Text
workspaceId) (\s :: CreateAlertManagerDefinition
s@CreateAlertManagerDefinition' {} Text
a -> CreateAlertManagerDefinition
s {$sel:workspaceId:CreateAlertManagerDefinition' :: Text
workspaceId = Text
a} :: CreateAlertManagerDefinition)

instance Core.AWSRequest CreateAlertManagerDefinition where
  type
    AWSResponse CreateAlertManagerDefinition =
      CreateAlertManagerDefinitionResponse
  request :: (Service -> Service)
-> CreateAlertManagerDefinition
-> Request CreateAlertManagerDefinition
request Service -> Service
overrides =
    forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy CreateAlertManagerDefinition
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse CreateAlertManagerDefinition)))
response =
    forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Int
-> AlertManagerDefinitionStatus
-> CreateAlertManagerDefinitionResponse
CreateAlertManagerDefinitionResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"status")
      )

instance
  Prelude.Hashable
    CreateAlertManagerDefinition
  where
  hashWithSalt :: Int -> CreateAlertManagerDefinition -> Int
hashWithSalt Int
_salt CreateAlertManagerDefinition' {Maybe Text
Text
Base64
workspaceId :: Text
data' :: Base64
clientToken :: Maybe Text
$sel:workspaceId:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Text
$sel:data':CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Base64
$sel:clientToken:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Maybe Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientToken
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Base64
data'
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
workspaceId

instance Prelude.NFData CreateAlertManagerDefinition where
  rnf :: CreateAlertManagerDefinition -> ()
rnf CreateAlertManagerDefinition' {Maybe Text
Text
Base64
workspaceId :: Text
data' :: Base64
clientToken :: Maybe Text
$sel:workspaceId:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Text
$sel:data':CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Base64
$sel:clientToken:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
clientToken
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Base64
data'
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
workspaceId

instance Data.ToHeaders CreateAlertManagerDefinition where
  toHeaders :: CreateAlertManagerDefinition -> ResponseHeaders
toHeaders =
    forall a b. a -> b -> a
Prelude.const
      ( forall a. Monoid a => [a] -> a
Prelude.mconcat
          [ HeaderName
"Content-Type"
              forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
                          Prelude.ByteString
                      )
          ]
      )

instance Data.ToJSON CreateAlertManagerDefinition where
  toJSON :: CreateAlertManagerDefinition -> Value
toJSON CreateAlertManagerDefinition' {Maybe Text
Text
Base64
workspaceId :: Text
data' :: Base64
clientToken :: Maybe Text
$sel:workspaceId:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Text
$sel:data':CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Base64
$sel:clientToken:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Maybe Text
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"clientToken" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
clientToken,
            forall a. a -> Maybe a
Prelude.Just (Key
"data" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Base64
data')
          ]
      )

instance Data.ToPath CreateAlertManagerDefinition where
  toPath :: CreateAlertManagerDefinition -> ByteString
toPath CreateAlertManagerDefinition' {Maybe Text
Text
Base64
workspaceId :: Text
data' :: Base64
clientToken :: Maybe Text
$sel:workspaceId:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Text
$sel:data':CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Base64
$sel:clientToken:CreateAlertManagerDefinition' :: CreateAlertManagerDefinition -> Maybe Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"/workspaces/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
workspaceId,
        ByteString
"/alertmanager/definition"
      ]

instance Data.ToQuery CreateAlertManagerDefinition where
  toQuery :: CreateAlertManagerDefinition -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

-- | Represents the output of a CreateAlertManagerDefinition operation.
--
-- /See:/ 'newCreateAlertManagerDefinitionResponse' smart constructor.
data CreateAlertManagerDefinitionResponse = CreateAlertManagerDefinitionResponse'
  { -- | The response's http status code.
    CreateAlertManagerDefinitionResponse -> Int
httpStatus :: Prelude.Int,
    -- | The status of alert manager definition.
    CreateAlertManagerDefinitionResponse
-> AlertManagerDefinitionStatus
status :: AlertManagerDefinitionStatus
  }
  deriving (CreateAlertManagerDefinitionResponse
-> CreateAlertManagerDefinitionResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateAlertManagerDefinitionResponse
-> CreateAlertManagerDefinitionResponse -> Bool
$c/= :: CreateAlertManagerDefinitionResponse
-> CreateAlertManagerDefinitionResponse -> Bool
== :: CreateAlertManagerDefinitionResponse
-> CreateAlertManagerDefinitionResponse -> Bool
$c== :: CreateAlertManagerDefinitionResponse
-> CreateAlertManagerDefinitionResponse -> Bool
Prelude.Eq, ReadPrec [CreateAlertManagerDefinitionResponse]
ReadPrec CreateAlertManagerDefinitionResponse
Int -> ReadS CreateAlertManagerDefinitionResponse
ReadS [CreateAlertManagerDefinitionResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateAlertManagerDefinitionResponse]
$creadListPrec :: ReadPrec [CreateAlertManagerDefinitionResponse]
readPrec :: ReadPrec CreateAlertManagerDefinitionResponse
$creadPrec :: ReadPrec CreateAlertManagerDefinitionResponse
readList :: ReadS [CreateAlertManagerDefinitionResponse]
$creadList :: ReadS [CreateAlertManagerDefinitionResponse]
readsPrec :: Int -> ReadS CreateAlertManagerDefinitionResponse
$creadsPrec :: Int -> ReadS CreateAlertManagerDefinitionResponse
Prelude.Read, Int -> CreateAlertManagerDefinitionResponse -> ShowS
[CreateAlertManagerDefinitionResponse] -> ShowS
CreateAlertManagerDefinitionResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateAlertManagerDefinitionResponse] -> ShowS
$cshowList :: [CreateAlertManagerDefinitionResponse] -> ShowS
show :: CreateAlertManagerDefinitionResponse -> String
$cshow :: CreateAlertManagerDefinitionResponse -> String
showsPrec :: Int -> CreateAlertManagerDefinitionResponse -> ShowS
$cshowsPrec :: Int -> CreateAlertManagerDefinitionResponse -> ShowS
Prelude.Show, forall x.
Rep CreateAlertManagerDefinitionResponse x
-> CreateAlertManagerDefinitionResponse
forall x.
CreateAlertManagerDefinitionResponse
-> Rep CreateAlertManagerDefinitionResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateAlertManagerDefinitionResponse x
-> CreateAlertManagerDefinitionResponse
$cfrom :: forall x.
CreateAlertManagerDefinitionResponse
-> Rep CreateAlertManagerDefinitionResponse x
Prelude.Generic)

-- |
-- Create a value of 'CreateAlertManagerDefinitionResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'httpStatus', 'createAlertManagerDefinitionResponse_httpStatus' - The response's http status code.
--
-- 'status', 'createAlertManagerDefinitionResponse_status' - The status of alert manager definition.
newCreateAlertManagerDefinitionResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  -- | 'status'
  AlertManagerDefinitionStatus ->
  CreateAlertManagerDefinitionResponse
newCreateAlertManagerDefinitionResponse :: Int
-> AlertManagerDefinitionStatus
-> CreateAlertManagerDefinitionResponse
newCreateAlertManagerDefinitionResponse
  Int
pHttpStatus_
  AlertManagerDefinitionStatus
pStatus_ =
    CreateAlertManagerDefinitionResponse'
      { $sel:httpStatus:CreateAlertManagerDefinitionResponse' :: Int
httpStatus =
          Int
pHttpStatus_,
        $sel:status:CreateAlertManagerDefinitionResponse' :: AlertManagerDefinitionStatus
status = AlertManagerDefinitionStatus
pStatus_
      }

-- | The response's http status code.
createAlertManagerDefinitionResponse_httpStatus :: Lens.Lens' CreateAlertManagerDefinitionResponse Prelude.Int
createAlertManagerDefinitionResponse_httpStatus :: Lens' CreateAlertManagerDefinitionResponse Int
createAlertManagerDefinitionResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateAlertManagerDefinitionResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreateAlertManagerDefinitionResponse' :: CreateAlertManagerDefinitionResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreateAlertManagerDefinitionResponse
s@CreateAlertManagerDefinitionResponse' {} Int
a -> CreateAlertManagerDefinitionResponse
s {$sel:httpStatus:CreateAlertManagerDefinitionResponse' :: Int
httpStatus = Int
a} :: CreateAlertManagerDefinitionResponse)

-- | The status of alert manager definition.
createAlertManagerDefinitionResponse_status :: Lens.Lens' CreateAlertManagerDefinitionResponse AlertManagerDefinitionStatus
createAlertManagerDefinitionResponse_status :: Lens'
  CreateAlertManagerDefinitionResponse AlertManagerDefinitionStatus
createAlertManagerDefinitionResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateAlertManagerDefinitionResponse' {AlertManagerDefinitionStatus
status :: AlertManagerDefinitionStatus
$sel:status:CreateAlertManagerDefinitionResponse' :: CreateAlertManagerDefinitionResponse
-> AlertManagerDefinitionStatus
status} -> AlertManagerDefinitionStatus
status) (\s :: CreateAlertManagerDefinitionResponse
s@CreateAlertManagerDefinitionResponse' {} AlertManagerDefinitionStatus
a -> CreateAlertManagerDefinitionResponse
s {$sel:status:CreateAlertManagerDefinitionResponse' :: AlertManagerDefinitionStatus
status = AlertManagerDefinitionStatus
a} :: CreateAlertManagerDefinitionResponse)

instance
  Prelude.NFData
    CreateAlertManagerDefinitionResponse
  where
  rnf :: CreateAlertManagerDefinitionResponse -> ()
rnf CreateAlertManagerDefinitionResponse' {Int
AlertManagerDefinitionStatus
status :: AlertManagerDefinitionStatus
httpStatus :: Int
$sel:status:CreateAlertManagerDefinitionResponse' :: CreateAlertManagerDefinitionResponse
-> AlertManagerDefinitionStatus
$sel:httpStatus:CreateAlertManagerDefinitionResponse' :: CreateAlertManagerDefinitionResponse -> Int
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf AlertManagerDefinitionStatus
status