(map-of kpred vpred & opts)
Returns a spec for a map whose keys satisfy kpred and vals satisfy vpred. Unlike 'every-kv', map-of will exhaustively conform every value. Same options as 'every', :kind defaults to map?, with the addition of: :conform-keys - conform keys as well as values (default false) See also - every-kv
;; specify nodes which implement a class
(s/def ::nodes (s/map-of keyword? keyword?))
(s/valid? ::nodes {::A1 ::A, ::B1 ::B})
;;=> true