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

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

-- |
-- Module      : Amazonka.CloudDirectory.Types.BatchReadOperation
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.CloudDirectory.Types.BatchReadOperation where

import Amazonka.CloudDirectory.Types.BatchGetLinkAttributes
import Amazonka.CloudDirectory.Types.BatchGetObjectAttributes
import Amazonka.CloudDirectory.Types.BatchGetObjectInformation
import Amazonka.CloudDirectory.Types.BatchListAttachedIndices
import Amazonka.CloudDirectory.Types.BatchListIncomingTypedLinks
import Amazonka.CloudDirectory.Types.BatchListIndex
import Amazonka.CloudDirectory.Types.BatchListObjectAttributes
import Amazonka.CloudDirectory.Types.BatchListObjectChildren
import Amazonka.CloudDirectory.Types.BatchListObjectParentPaths
import Amazonka.CloudDirectory.Types.BatchListObjectParents
import Amazonka.CloudDirectory.Types.BatchListObjectPolicies
import Amazonka.CloudDirectory.Types.BatchListOutgoingTypedLinks
import Amazonka.CloudDirectory.Types.BatchListPolicyAttachments
import Amazonka.CloudDirectory.Types.BatchLookupPolicy
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

-- | Represents the output of a @BatchRead@ operation.
--
-- /See:/ 'newBatchReadOperation' smart constructor.
data BatchReadOperation = BatchReadOperation'
  { -- | Retrieves attributes that are associated with a typed link.
    BatchReadOperation -> Maybe BatchGetLinkAttributes
getLinkAttributes :: Prelude.Maybe BatchGetLinkAttributes,
    -- | Retrieves attributes within a facet that are associated with an object.
    BatchReadOperation -> Maybe BatchGetObjectAttributes
getObjectAttributes :: Prelude.Maybe BatchGetObjectAttributes,
    -- | Retrieves metadata about an object.
    BatchReadOperation -> Maybe BatchGetObjectInformation
getObjectInformation :: Prelude.Maybe BatchGetObjectInformation,
    -- | Lists indices attached to an object.
    BatchReadOperation -> Maybe BatchListAttachedIndices
listAttachedIndices :: Prelude.Maybe BatchListAttachedIndices,
    -- | Returns a paginated list of all the incoming TypedLinkSpecifier
    -- information for an object. It also supports filtering by typed link
    -- facet and identity attributes. For more information, see
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
    BatchReadOperation -> Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks :: Prelude.Maybe BatchListIncomingTypedLinks,
    -- | Lists objects attached to the specified index.
    BatchReadOperation -> Maybe BatchListIndex
listIndex :: Prelude.Maybe BatchListIndex,
    -- | Lists all attributes that are associated with an object.
    BatchReadOperation -> Maybe BatchListObjectAttributes
listObjectAttributes :: Prelude.Maybe BatchListObjectAttributes,
    -- | Returns a paginated list of child objects that are associated with a
    -- given object.
    BatchReadOperation -> Maybe BatchListObjectChildren
listObjectChildren :: Prelude.Maybe BatchListObjectChildren,
    -- | Retrieves all available parent paths for any object type such as node,
    -- leaf node, policy node, and index node objects. For more information
    -- about objects, see
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directorystructure.html Directory Structure>.
    BatchReadOperation -> Maybe BatchListObjectParentPaths
listObjectParentPaths :: Prelude.Maybe BatchListObjectParentPaths,
    -- | Lists parent objects that are associated with a given object in
    -- pagination fashion.
    BatchReadOperation -> Maybe BatchListObjectParents
listObjectParents :: Prelude.Maybe BatchListObjectParents,
    -- | Returns policies attached to an object in pagination fashion.
    BatchReadOperation -> Maybe BatchListObjectPolicies
listObjectPolicies :: Prelude.Maybe BatchListObjectPolicies,
    -- | Returns a paginated list of all the outgoing TypedLinkSpecifier
    -- information for an object. It also supports filtering by typed link
    -- facet and identity attributes. For more information, see
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
    BatchReadOperation -> Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks :: Prelude.Maybe BatchListOutgoingTypedLinks,
    -- | Returns all of the @ObjectIdentifiers@ to which a given policy is
    -- attached.
    BatchReadOperation -> Maybe BatchListPolicyAttachments
listPolicyAttachments :: Prelude.Maybe BatchListPolicyAttachments,
    -- | Lists all policies from the root of the Directory to the object
    -- specified. If there are no policies present, an empty list is returned.
    -- If policies are present, and if some objects don\'t have the policies
    -- attached, it returns the @ObjectIdentifier@ for such objects. If
    -- policies are present, it returns @ObjectIdentifier@, @policyId@, and
    -- @policyType@. Paths that don\'t lead to the root from the target object
    -- are ignored. For more information, see
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies Policies>.
    BatchReadOperation -> Maybe BatchLookupPolicy
lookupPolicy :: Prelude.Maybe BatchLookupPolicy
  }
  deriving (BatchReadOperation -> BatchReadOperation -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: BatchReadOperation -> BatchReadOperation -> Bool
$c/= :: BatchReadOperation -> BatchReadOperation -> Bool
== :: BatchReadOperation -> BatchReadOperation -> Bool
$c== :: BatchReadOperation -> BatchReadOperation -> Bool
Prelude.Eq, ReadPrec [BatchReadOperation]
ReadPrec BatchReadOperation
Int -> ReadS BatchReadOperation
ReadS [BatchReadOperation]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [BatchReadOperation]
$creadListPrec :: ReadPrec [BatchReadOperation]
readPrec :: ReadPrec BatchReadOperation
$creadPrec :: ReadPrec BatchReadOperation
readList :: ReadS [BatchReadOperation]
$creadList :: ReadS [BatchReadOperation]
readsPrec :: Int -> ReadS BatchReadOperation
$creadsPrec :: Int -> ReadS BatchReadOperation
Prelude.Read, Int -> BatchReadOperation -> ShowS
[BatchReadOperation] -> ShowS
BatchReadOperation -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [BatchReadOperation] -> ShowS
$cshowList :: [BatchReadOperation] -> ShowS
show :: BatchReadOperation -> String
$cshow :: BatchReadOperation -> String
showsPrec :: Int -> BatchReadOperation -> ShowS
$cshowsPrec :: Int -> BatchReadOperation -> ShowS
Prelude.Show, forall x. Rep BatchReadOperation x -> BatchReadOperation
forall x. BatchReadOperation -> Rep BatchReadOperation x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep BatchReadOperation x -> BatchReadOperation
$cfrom :: forall x. BatchReadOperation -> Rep BatchReadOperation x
Prelude.Generic)

-- |
-- Create a value of 'BatchReadOperation' 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:
--
-- 'getLinkAttributes', 'batchReadOperation_getLinkAttributes' - Retrieves attributes that are associated with a typed link.
--
-- 'getObjectAttributes', 'batchReadOperation_getObjectAttributes' - Retrieves attributes within a facet that are associated with an object.
--
-- 'getObjectInformation', 'batchReadOperation_getObjectInformation' - Retrieves metadata about an object.
--
-- 'listAttachedIndices', 'batchReadOperation_listAttachedIndices' - Lists indices attached to an object.
--
-- 'listIncomingTypedLinks', 'batchReadOperation_listIncomingTypedLinks' - Returns a paginated list of all the incoming TypedLinkSpecifier
-- information for an object. It also supports filtering by typed link
-- facet and identity attributes. For more information, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
--
-- 'listIndex', 'batchReadOperation_listIndex' - Lists objects attached to the specified index.
--
-- 'listObjectAttributes', 'batchReadOperation_listObjectAttributes' - Lists all attributes that are associated with an object.
--
-- 'listObjectChildren', 'batchReadOperation_listObjectChildren' - Returns a paginated list of child objects that are associated with a
-- given object.
--
-- 'listObjectParentPaths', 'batchReadOperation_listObjectParentPaths' - Retrieves all available parent paths for any object type such as node,
-- leaf node, policy node, and index node objects. For more information
-- about objects, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directorystructure.html Directory Structure>.
--
-- 'listObjectParents', 'batchReadOperation_listObjectParents' - Lists parent objects that are associated with a given object in
-- pagination fashion.
--
-- 'listObjectPolicies', 'batchReadOperation_listObjectPolicies' - Returns policies attached to an object in pagination fashion.
--
-- 'listOutgoingTypedLinks', 'batchReadOperation_listOutgoingTypedLinks' - Returns a paginated list of all the outgoing TypedLinkSpecifier
-- information for an object. It also supports filtering by typed link
-- facet and identity attributes. For more information, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
--
-- 'listPolicyAttachments', 'batchReadOperation_listPolicyAttachments' - Returns all of the @ObjectIdentifiers@ to which a given policy is
-- attached.
--
-- 'lookupPolicy', 'batchReadOperation_lookupPolicy' - Lists all policies from the root of the Directory to the object
-- specified. If there are no policies present, an empty list is returned.
-- If policies are present, and if some objects don\'t have the policies
-- attached, it returns the @ObjectIdentifier@ for such objects. If
-- policies are present, it returns @ObjectIdentifier@, @policyId@, and
-- @policyType@. Paths that don\'t lead to the root from the target object
-- are ignored. For more information, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies Policies>.
newBatchReadOperation ::
  BatchReadOperation
newBatchReadOperation :: BatchReadOperation
newBatchReadOperation =
  BatchReadOperation'
    { $sel:getLinkAttributes:BatchReadOperation' :: Maybe BatchGetLinkAttributes
getLinkAttributes =
        forall a. Maybe a
Prelude.Nothing,
      $sel:getObjectAttributes:BatchReadOperation' :: Maybe BatchGetObjectAttributes
getObjectAttributes = forall a. Maybe a
Prelude.Nothing,
      $sel:getObjectInformation:BatchReadOperation' :: Maybe BatchGetObjectInformation
getObjectInformation = forall a. Maybe a
Prelude.Nothing,
      $sel:listAttachedIndices:BatchReadOperation' :: Maybe BatchListAttachedIndices
listAttachedIndices = forall a. Maybe a
Prelude.Nothing,
      $sel:listIncomingTypedLinks:BatchReadOperation' :: Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks = forall a. Maybe a
Prelude.Nothing,
      $sel:listIndex:BatchReadOperation' :: Maybe BatchListIndex
listIndex = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectAttributes:BatchReadOperation' :: Maybe BatchListObjectAttributes
listObjectAttributes = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectChildren:BatchReadOperation' :: Maybe BatchListObjectChildren
listObjectChildren = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectParentPaths:BatchReadOperation' :: Maybe BatchListObjectParentPaths
listObjectParentPaths = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectParents:BatchReadOperation' :: Maybe BatchListObjectParents
listObjectParents = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectPolicies:BatchReadOperation' :: Maybe BatchListObjectPolicies
listObjectPolicies = forall a. Maybe a
Prelude.Nothing,
      $sel:listOutgoingTypedLinks:BatchReadOperation' :: Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks = forall a. Maybe a
Prelude.Nothing,
      $sel:listPolicyAttachments:BatchReadOperation' :: Maybe BatchListPolicyAttachments
listPolicyAttachments = forall a. Maybe a
Prelude.Nothing,
      $sel:lookupPolicy:BatchReadOperation' :: Maybe BatchLookupPolicy
lookupPolicy = forall a. Maybe a
Prelude.Nothing
    }

-- | Retrieves attributes that are associated with a typed link.
batchReadOperation_getLinkAttributes :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchGetLinkAttributes)
batchReadOperation_getLinkAttributes :: Lens' BatchReadOperation (Maybe BatchGetLinkAttributes)
batchReadOperation_getLinkAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchGetLinkAttributes
getLinkAttributes :: Maybe BatchGetLinkAttributes
$sel:getLinkAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetLinkAttributes
getLinkAttributes} -> Maybe BatchGetLinkAttributes
getLinkAttributes) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchGetLinkAttributes
a -> BatchReadOperation
s {$sel:getLinkAttributes:BatchReadOperation' :: Maybe BatchGetLinkAttributes
getLinkAttributes = Maybe BatchGetLinkAttributes
a} :: BatchReadOperation)

-- | Retrieves attributes within a facet that are associated with an object.
batchReadOperation_getObjectAttributes :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchGetObjectAttributes)
batchReadOperation_getObjectAttributes :: Lens' BatchReadOperation (Maybe BatchGetObjectAttributes)
batchReadOperation_getObjectAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchGetObjectAttributes
getObjectAttributes :: Maybe BatchGetObjectAttributes
$sel:getObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectAttributes
getObjectAttributes} -> Maybe BatchGetObjectAttributes
getObjectAttributes) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchGetObjectAttributes
a -> BatchReadOperation
s {$sel:getObjectAttributes:BatchReadOperation' :: Maybe BatchGetObjectAttributes
getObjectAttributes = Maybe BatchGetObjectAttributes
a} :: BatchReadOperation)

-- | Retrieves metadata about an object.
batchReadOperation_getObjectInformation :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchGetObjectInformation)
batchReadOperation_getObjectInformation :: Lens' BatchReadOperation (Maybe BatchGetObjectInformation)
batchReadOperation_getObjectInformation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchGetObjectInformation
getObjectInformation :: Maybe BatchGetObjectInformation
$sel:getObjectInformation:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectInformation
getObjectInformation} -> Maybe BatchGetObjectInformation
getObjectInformation) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchGetObjectInformation
a -> BatchReadOperation
s {$sel:getObjectInformation:BatchReadOperation' :: Maybe BatchGetObjectInformation
getObjectInformation = Maybe BatchGetObjectInformation
a} :: BatchReadOperation)

-- | Lists indices attached to an object.
batchReadOperation_listAttachedIndices :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListAttachedIndices)
batchReadOperation_listAttachedIndices :: Lens' BatchReadOperation (Maybe BatchListAttachedIndices)
batchReadOperation_listAttachedIndices = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListAttachedIndices
listAttachedIndices :: Maybe BatchListAttachedIndices
$sel:listAttachedIndices:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListAttachedIndices
listAttachedIndices} -> Maybe BatchListAttachedIndices
listAttachedIndices) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListAttachedIndices
a -> BatchReadOperation
s {$sel:listAttachedIndices:BatchReadOperation' :: Maybe BatchListAttachedIndices
listAttachedIndices = Maybe BatchListAttachedIndices
a} :: BatchReadOperation)

-- | Returns a paginated list of all the incoming TypedLinkSpecifier
-- information for an object. It also supports filtering by typed link
-- facet and identity attributes. For more information, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
batchReadOperation_listIncomingTypedLinks :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListIncomingTypedLinks)
batchReadOperation_listIncomingTypedLinks :: Lens' BatchReadOperation (Maybe BatchListIncomingTypedLinks)
batchReadOperation_listIncomingTypedLinks = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinks
$sel:listIncomingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks} -> Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListIncomingTypedLinks
a -> BatchReadOperation
s {$sel:listIncomingTypedLinks:BatchReadOperation' :: Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks = Maybe BatchListIncomingTypedLinks
a} :: BatchReadOperation)

-- | Lists objects attached to the specified index.
batchReadOperation_listIndex :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListIndex)
batchReadOperation_listIndex :: Lens' BatchReadOperation (Maybe BatchListIndex)
batchReadOperation_listIndex = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListIndex
listIndex :: Maybe BatchListIndex
$sel:listIndex:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIndex
listIndex} -> Maybe BatchListIndex
listIndex) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListIndex
a -> BatchReadOperation
s {$sel:listIndex:BatchReadOperation' :: Maybe BatchListIndex
listIndex = Maybe BatchListIndex
a} :: BatchReadOperation)

-- | Lists all attributes that are associated with an object.
batchReadOperation_listObjectAttributes :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListObjectAttributes)
batchReadOperation_listObjectAttributes :: Lens' BatchReadOperation (Maybe BatchListObjectAttributes)
batchReadOperation_listObjectAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListObjectAttributes
listObjectAttributes :: Maybe BatchListObjectAttributes
$sel:listObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectAttributes
listObjectAttributes} -> Maybe BatchListObjectAttributes
listObjectAttributes) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListObjectAttributes
a -> BatchReadOperation
s {$sel:listObjectAttributes:BatchReadOperation' :: Maybe BatchListObjectAttributes
listObjectAttributes = Maybe BatchListObjectAttributes
a} :: BatchReadOperation)

-- | Returns a paginated list of child objects that are associated with a
-- given object.
batchReadOperation_listObjectChildren :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListObjectChildren)
batchReadOperation_listObjectChildren :: Lens' BatchReadOperation (Maybe BatchListObjectChildren)
batchReadOperation_listObjectChildren = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListObjectChildren
listObjectChildren :: Maybe BatchListObjectChildren
$sel:listObjectChildren:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectChildren
listObjectChildren} -> Maybe BatchListObjectChildren
listObjectChildren) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListObjectChildren
a -> BatchReadOperation
s {$sel:listObjectChildren:BatchReadOperation' :: Maybe BatchListObjectChildren
listObjectChildren = Maybe BatchListObjectChildren
a} :: BatchReadOperation)

-- | Retrieves all available parent paths for any object type such as node,
-- leaf node, policy node, and index node objects. For more information
-- about objects, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directorystructure.html Directory Structure>.
batchReadOperation_listObjectParentPaths :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListObjectParentPaths)
batchReadOperation_listObjectParentPaths :: Lens' BatchReadOperation (Maybe BatchListObjectParentPaths)
batchReadOperation_listObjectParentPaths = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListObjectParentPaths
listObjectParentPaths :: Maybe BatchListObjectParentPaths
$sel:listObjectParentPaths:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParentPaths
listObjectParentPaths} -> Maybe BatchListObjectParentPaths
listObjectParentPaths) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListObjectParentPaths
a -> BatchReadOperation
s {$sel:listObjectParentPaths:BatchReadOperation' :: Maybe BatchListObjectParentPaths
listObjectParentPaths = Maybe BatchListObjectParentPaths
a} :: BatchReadOperation)

-- | Lists parent objects that are associated with a given object in
-- pagination fashion.
batchReadOperation_listObjectParents :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListObjectParents)
batchReadOperation_listObjectParents :: Lens' BatchReadOperation (Maybe BatchListObjectParents)
batchReadOperation_listObjectParents = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListObjectParents
listObjectParents :: Maybe BatchListObjectParents
$sel:listObjectParents:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParents
listObjectParents} -> Maybe BatchListObjectParents
listObjectParents) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListObjectParents
a -> BatchReadOperation
s {$sel:listObjectParents:BatchReadOperation' :: Maybe BatchListObjectParents
listObjectParents = Maybe BatchListObjectParents
a} :: BatchReadOperation)

-- | Returns policies attached to an object in pagination fashion.
batchReadOperation_listObjectPolicies :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListObjectPolicies)
batchReadOperation_listObjectPolicies :: Lens' BatchReadOperation (Maybe BatchListObjectPolicies)
batchReadOperation_listObjectPolicies = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListObjectPolicies
listObjectPolicies :: Maybe BatchListObjectPolicies
$sel:listObjectPolicies:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectPolicies
listObjectPolicies} -> Maybe BatchListObjectPolicies
listObjectPolicies) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListObjectPolicies
a -> BatchReadOperation
s {$sel:listObjectPolicies:BatchReadOperation' :: Maybe BatchListObjectPolicies
listObjectPolicies = Maybe BatchListObjectPolicies
a} :: BatchReadOperation)

-- | Returns a paginated list of all the outgoing TypedLinkSpecifier
-- information for an object. It also supports filtering by typed link
-- facet and identity attributes. For more information, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
batchReadOperation_listOutgoingTypedLinks :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListOutgoingTypedLinks)
batchReadOperation_listOutgoingTypedLinks :: Lens' BatchReadOperation (Maybe BatchListOutgoingTypedLinks)
batchReadOperation_listOutgoingTypedLinks = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinks
$sel:listOutgoingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks} -> Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListOutgoingTypedLinks
a -> BatchReadOperation
s {$sel:listOutgoingTypedLinks:BatchReadOperation' :: Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks = Maybe BatchListOutgoingTypedLinks
a} :: BatchReadOperation)

-- | Returns all of the @ObjectIdentifiers@ to which a given policy is
-- attached.
batchReadOperation_listPolicyAttachments :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchListPolicyAttachments)
batchReadOperation_listPolicyAttachments :: Lens' BatchReadOperation (Maybe BatchListPolicyAttachments)
batchReadOperation_listPolicyAttachments = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchListPolicyAttachments
listPolicyAttachments :: Maybe BatchListPolicyAttachments
$sel:listPolicyAttachments:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListPolicyAttachments
listPolicyAttachments} -> Maybe BatchListPolicyAttachments
listPolicyAttachments) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchListPolicyAttachments
a -> BatchReadOperation
s {$sel:listPolicyAttachments:BatchReadOperation' :: Maybe BatchListPolicyAttachments
listPolicyAttachments = Maybe BatchListPolicyAttachments
a} :: BatchReadOperation)

-- | Lists all policies from the root of the Directory to the object
-- specified. If there are no policies present, an empty list is returned.
-- If policies are present, and if some objects don\'t have the policies
-- attached, it returns the @ObjectIdentifier@ for such objects. If
-- policies are present, it returns @ObjectIdentifier@, @policyId@, and
-- @policyType@. Paths that don\'t lead to the root from the target object
-- are ignored. For more information, see
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies Policies>.
batchReadOperation_lookupPolicy :: Lens.Lens' BatchReadOperation (Prelude.Maybe BatchLookupPolicy)
batchReadOperation_lookupPolicy :: Lens' BatchReadOperation (Maybe BatchLookupPolicy)
batchReadOperation_lookupPolicy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadOperation' {Maybe BatchLookupPolicy
lookupPolicy :: Maybe BatchLookupPolicy
$sel:lookupPolicy:BatchReadOperation' :: BatchReadOperation -> Maybe BatchLookupPolicy
lookupPolicy} -> Maybe BatchLookupPolicy
lookupPolicy) (\s :: BatchReadOperation
s@BatchReadOperation' {} Maybe BatchLookupPolicy
a -> BatchReadOperation
s {$sel:lookupPolicy:BatchReadOperation' :: Maybe BatchLookupPolicy
lookupPolicy = Maybe BatchLookupPolicy
a} :: BatchReadOperation)

instance Prelude.Hashable BatchReadOperation where
  hashWithSalt :: Int -> BatchReadOperation -> Int
hashWithSalt Int
_salt BatchReadOperation' {Maybe BatchLookupPolicy
Maybe BatchListPolicyAttachments
Maybe BatchListObjectPolicies
Maybe BatchListObjectParents
Maybe BatchListObjectParentPaths
Maybe BatchListObjectChildren
Maybe BatchListAttachedIndices
Maybe BatchGetObjectInformation
Maybe BatchListObjectAttributes
Maybe BatchGetObjectAttributes
Maybe BatchListIndex
Maybe BatchListOutgoingTypedLinks
Maybe BatchListIncomingTypedLinks
Maybe BatchGetLinkAttributes
lookupPolicy :: Maybe BatchLookupPolicy
listPolicyAttachments :: Maybe BatchListPolicyAttachments
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinks
listObjectPolicies :: Maybe BatchListObjectPolicies
listObjectParents :: Maybe BatchListObjectParents
listObjectParentPaths :: Maybe BatchListObjectParentPaths
listObjectChildren :: Maybe BatchListObjectChildren
listObjectAttributes :: Maybe BatchListObjectAttributes
listIndex :: Maybe BatchListIndex
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinks
listAttachedIndices :: Maybe BatchListAttachedIndices
getObjectInformation :: Maybe BatchGetObjectInformation
getObjectAttributes :: Maybe BatchGetObjectAttributes
getLinkAttributes :: Maybe BatchGetLinkAttributes
$sel:lookupPolicy:BatchReadOperation' :: BatchReadOperation -> Maybe BatchLookupPolicy
$sel:listPolicyAttachments:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListPolicyAttachments
$sel:listOutgoingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListOutgoingTypedLinks
$sel:listObjectPolicies:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectPolicies
$sel:listObjectParents:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParents
$sel:listObjectParentPaths:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParentPaths
$sel:listObjectChildren:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectChildren
$sel:listObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectAttributes
$sel:listIndex:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIndex
$sel:listIncomingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIncomingTypedLinks
$sel:listAttachedIndices:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListAttachedIndices
$sel:getObjectInformation:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectInformation
$sel:getObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectAttributes
$sel:getLinkAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetLinkAttributes
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchGetLinkAttributes
getLinkAttributes
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchGetObjectAttributes
getObjectAttributes
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchGetObjectInformation
getObjectInformation
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListAttachedIndices
listAttachedIndices
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListIndex
listIndex
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectAttributes
listObjectAttributes
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectChildren
listObjectChildren
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectParentPaths
listObjectParentPaths
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectParents
listObjectParents
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectPolicies
listObjectPolicies
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListPolicyAttachments
listPolicyAttachments
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchLookupPolicy
lookupPolicy

instance Prelude.NFData BatchReadOperation where
  rnf :: BatchReadOperation -> ()
rnf BatchReadOperation' {Maybe BatchLookupPolicy
Maybe BatchListPolicyAttachments
Maybe BatchListObjectPolicies
Maybe BatchListObjectParents
Maybe BatchListObjectParentPaths
Maybe BatchListObjectChildren
Maybe BatchListAttachedIndices
Maybe BatchGetObjectInformation
Maybe BatchListObjectAttributes
Maybe BatchGetObjectAttributes
Maybe BatchListIndex
Maybe BatchListOutgoingTypedLinks
Maybe BatchListIncomingTypedLinks
Maybe BatchGetLinkAttributes
lookupPolicy :: Maybe BatchLookupPolicy
listPolicyAttachments :: Maybe BatchListPolicyAttachments
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinks
listObjectPolicies :: Maybe BatchListObjectPolicies
listObjectParents :: Maybe BatchListObjectParents
listObjectParentPaths :: Maybe BatchListObjectParentPaths
listObjectChildren :: Maybe BatchListObjectChildren
listObjectAttributes :: Maybe BatchListObjectAttributes
listIndex :: Maybe BatchListIndex
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinks
listAttachedIndices :: Maybe BatchListAttachedIndices
getObjectInformation :: Maybe BatchGetObjectInformation
getObjectAttributes :: Maybe BatchGetObjectAttributes
getLinkAttributes :: Maybe BatchGetLinkAttributes
$sel:lookupPolicy:BatchReadOperation' :: BatchReadOperation -> Maybe BatchLookupPolicy
$sel:listPolicyAttachments:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListPolicyAttachments
$sel:listOutgoingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListOutgoingTypedLinks
$sel:listObjectPolicies:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectPolicies
$sel:listObjectParents:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParents
$sel:listObjectParentPaths:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParentPaths
$sel:listObjectChildren:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectChildren
$sel:listObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectAttributes
$sel:listIndex:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIndex
$sel:listIncomingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIncomingTypedLinks
$sel:listAttachedIndices:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListAttachedIndices
$sel:getObjectInformation:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectInformation
$sel:getObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectAttributes
$sel:getLinkAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetLinkAttributes
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchGetLinkAttributes
getLinkAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchGetObjectAttributes
getObjectAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchGetObjectInformation
getObjectInformation
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListAttachedIndices
listAttachedIndices
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListIncomingTypedLinks
listIncomingTypedLinks
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListIndex
listIndex
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectAttributes
listObjectAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectChildren
listObjectChildren
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectParentPaths
listObjectParentPaths
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectParents
listObjectParents
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectPolicies
listObjectPolicies
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListOutgoingTypedLinks
listOutgoingTypedLinks
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListPolicyAttachments
listPolicyAttachments
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchLookupPolicy
lookupPolicy

instance Data.ToJSON BatchReadOperation where
  toJSON :: BatchReadOperation -> Value
toJSON BatchReadOperation' {Maybe BatchLookupPolicy
Maybe BatchListPolicyAttachments
Maybe BatchListObjectPolicies
Maybe BatchListObjectParents
Maybe BatchListObjectParentPaths
Maybe BatchListObjectChildren
Maybe BatchListAttachedIndices
Maybe BatchGetObjectInformation
Maybe BatchListObjectAttributes
Maybe BatchGetObjectAttributes
Maybe BatchListIndex
Maybe BatchListOutgoingTypedLinks
Maybe BatchListIncomingTypedLinks
Maybe BatchGetLinkAttributes
lookupPolicy :: Maybe BatchLookupPolicy
listPolicyAttachments :: Maybe BatchListPolicyAttachments
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinks
listObjectPolicies :: Maybe BatchListObjectPolicies
listObjectParents :: Maybe BatchListObjectParents
listObjectParentPaths :: Maybe BatchListObjectParentPaths
listObjectChildren :: Maybe BatchListObjectChildren
listObjectAttributes :: Maybe BatchListObjectAttributes
listIndex :: Maybe BatchListIndex
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinks
listAttachedIndices :: Maybe BatchListAttachedIndices
getObjectInformation :: Maybe BatchGetObjectInformation
getObjectAttributes :: Maybe BatchGetObjectAttributes
getLinkAttributes :: Maybe BatchGetLinkAttributes
$sel:lookupPolicy:BatchReadOperation' :: BatchReadOperation -> Maybe BatchLookupPolicy
$sel:listPolicyAttachments:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListPolicyAttachments
$sel:listOutgoingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListOutgoingTypedLinks
$sel:listObjectPolicies:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectPolicies
$sel:listObjectParents:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParents
$sel:listObjectParentPaths:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectParentPaths
$sel:listObjectChildren:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectChildren
$sel:listObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListObjectAttributes
$sel:listIndex:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIndex
$sel:listIncomingTypedLinks:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListIncomingTypedLinks
$sel:listAttachedIndices:BatchReadOperation' :: BatchReadOperation -> Maybe BatchListAttachedIndices
$sel:getObjectInformation:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectInformation
$sel:getObjectAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetObjectAttributes
$sel:getLinkAttributes:BatchReadOperation' :: BatchReadOperation -> Maybe BatchGetLinkAttributes
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"GetLinkAttributes" 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 BatchGetLinkAttributes
getLinkAttributes,
            (Key
"GetObjectAttributes" 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 BatchGetObjectAttributes
getObjectAttributes,
            (Key
"GetObjectInformation" 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 BatchGetObjectInformation
getObjectInformation,
            (Key
"ListAttachedIndices" 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 BatchListAttachedIndices
listAttachedIndices,
            (Key
"ListIncomingTypedLinks" 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 BatchListIncomingTypedLinks
listIncomingTypedLinks,
            (Key
"ListIndex" 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 BatchListIndex
listIndex,
            (Key
"ListObjectAttributes" 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 BatchListObjectAttributes
listObjectAttributes,
            (Key
"ListObjectChildren" 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 BatchListObjectChildren
listObjectChildren,
            (Key
"ListObjectParentPaths" 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 BatchListObjectParentPaths
listObjectParentPaths,
            (Key
"ListObjectParents" 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 BatchListObjectParents
listObjectParents,
            (Key
"ListObjectPolicies" 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 BatchListObjectPolicies
listObjectPolicies,
            (Key
"ListOutgoingTypedLinks" 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 BatchListOutgoingTypedLinks
listOutgoingTypedLinks,
            (Key
"ListPolicyAttachments" 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 BatchListPolicyAttachments
listPolicyAttachments,
            (Key
"LookupPolicy" 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 BatchLookupPolicy
lookupPolicy
          ]
      )