        (.setReturnValues (utils/enum return))))))
 
 (defn update-item
-  "Updates an item in a table by its hash key, {attr match-value}.
+  "Updates an item in a table by its hash key, {:attr match-value}.
   See `put-item` for option docs."
   [creds table hash-key update-map & [{:keys [return expected]
                                        :or   {return :none}}]]

          pr))))
   indexes))

(defn- expected-values "{attr cond} -> {attr ExpectedAttributeValue}"
  [expected]
  (when (seq expected)
    (utils/name-map

    :return   - e/o #{:none :all-old :updated-old :all-new :updated-new}
    :expected - a map of attribute/condition pairs, all of which must be met for
                the operation to succeed. e.g.:
                  {:attr \"expected-value\"}
                  {:attr true}  ; Attribute must exist
                  {:attr false} ; Attribute must not exist"
  [creds table item & [{:keys [return expected]
                        :or   {return :none}}]]
  (as-map
