         :vec (s/cat :keyword keyword?)
         :vec-params (s/cat :keyword keyword? :any any?)))
 
+(s/def :window/window-key any?)
+
 (defmulti window-type :window/type)
 
 (defmethod window-type :fixed


(s/def :onyx/params
  (s/coll-of keyword? :kind vector?))

(s/def :onyx/pending-timeout pos-int?)

(s/def :onyx/plugin keyword?)


  (s/coll-of (s/multi-spec window-type :window/type)
             :kind vector?))

(s/def :trigger/doc string?)

(s/def :trigger/fire-all-extents? boolean?)

(s/def :trigger/on keyword?)

(s/def :trigger/pred keyword?)

(s/def :trigger/sync keyword?)

(s/def :trigger/emit keyword?)

(s/def :trigger/window-id :window/id)

(s/def :trigger/on keyword?)

(s/def :trigger/fire-all-extents? boolean?)

(s/def :trigger/watermark-percentage number?)

(s/def :trigger/refinement
  #{:onyx.refinements/accumulating
