public interface KGroupedStream <K,V> { KTable <K,Long> count (); KTable <K,V> reduce (Reducer <V> reducer); <VR> KTable <K,VR> aggregate ( Initializer <VR> initializer, Aggregator <? super K, ? super V, VR> aggregator); <W extends Window> TimeWindowedKStream <K,V> windowedBy (Windows<W> windows); ... }