-- | 'GetItem' constructor.
--
-- The fields accessible through corresponding lenses are:
--
-- * 'giAttributesToGet' @::@ 'NonEmpty' 'Text'
--
-- * 'giConsistentRead' @::@ 'Maybe' 'Bool'
--
-- * 'giExpressionAttributeNames' @::@ 'HashMap' 'Text' 'Text'
--
-- * 'giKey' @::@ 'HashMap' 'Text' 'AttributeValue'
--
-- * 'giProjectionExpression' @::@ 'Maybe' 'Text'
--
-- * 'giReturnConsumedCapacity' @::@ 'Maybe' 'ReturnConsumedCapacity'
--
-- * 'giTableName' @::@ 'Text'
--
getItem :: Text -- ^ 'giTableName'
        -> NonEmpty Text -- ^ 'giAttributesToGet'
        -> GetItem
getItem p1 p2 = GetItem
    { _giTableName                = p1
    , _giAttributesToGet          = withIso _List1 (const id) p2
    , _giKey                      = mempty
    , _giConsistentRead           = Nothing
    , _giReturnConsumedCapacity   = Nothing
    , _giProjectionExpression     = Nothing
    , _giExpressionAttributeNames = mempty
    }
getItem :: Text -- ^ 'giTableName'
        -> NonEmpty Text -- ^ 'giAttributesToGet'
        -> GetItem
getItem p1 p2 = GetItem
    { _giTableName                = p1
    , _giAttributesToGet          = withIso _List1 (const id) p2
    , _giKey                      = mempty
    , _giConsistentRead           = Nothing
    , _giReturnConsumedCapacity   = Nothing
    , _giProjectionExpression     = Nothing
    , _giExpressionAttributeNames = mempty
    }
getItem p1 p2 = GetItem
    { _giTableName                = p1
    , _giAttributesToGet          = withIso _List1 (const id) p2
    , _giKey                      = mempty
    , _giConsistentRead           = Nothing
    , _giReturnConsumedCapacity   = Nothing
    , _giProjectionExpression     = Nothing
    , _giExpressionAttributeNames = mempty
    }