| Interface | Description | 
|---|---|
| BatchingStateRestoreCallback | Interface for batching restoration of a  StateStoreIt is expected that implementations of this class will not call theStateRestoreCallback.restore(byte[],
 byte[])method. | 
| Cancellable | Cancellable interface returned in  ProcessorContext.schedule(Duration, PunctuationType, Punctuator). | 
| CommitCallback | Stores can register this callback to be notified upon successful commit. | 
| ConnectedStoreProvider | Provides a set of  StoreBuilders that will be automatically added to the topology and connected to the
 associated processor. | 
| Processor<K,V> | Deprecated Since 3.0. | 
| ProcessorContext | Processor context interface. | 
| ProcessorSupplier<K,V> | Deprecated Since 3.0. | 
| Punctuator | A functional interface used as an argument to  ProcessorContext.schedule(Duration, PunctuationType, Punctuator). | 
| RecordContext | The context associated with the current record being processed by
 a  Processor | 
| StateRestoreCallback | Restoration logic for log-backed state stores upon restart,
 it takes one record at a time from the logs to apply to the restoring state. | 
| StateRestoreListener | Class for listening to various states of the restoration process of a StateStore. | 
| StateStore | A storage engine for managing state maintained by a stream processor. | 
| StateStoreContext | State store context interface. | 
| StreamPartitioner<K,V> | Determine how records are distributed among the partitions in a Kafka topic. | 
| TimestampExtractor | An interface that allows the Kafka Streams framework to extract a timestamp from an instance of  ConsumerRecord. | 
| TopicNameExtractor<K,V> | An interface that allows to dynamically determine the name of the Kafka topic to send at the sink node of the topology. | 
| Class | Description | 
|---|---|
| AbstractProcessor<K,V> | Deprecated Since 3.0. | 
| FailOnInvalidTimestamp | Retrieves embedded metadata timestamps from Kafka messages. | 
| LogAndSkipOnInvalidTimestamp | Retrieves embedded metadata timestamps from Kafka messages. | 
| TaskId | The task ID representation composed as subtopology (aka topicGroupId) plus the assigned partition ID. | 
| TaskMetadata | Deprecated since 3.0, use  TaskMetadatainstead. | 
| ThreadMetadata | Deprecated since 3.0 use  ThreadMetadatainstead | 
| To | This class is used to provide the optional parameters when sending output records to downstream processor
 using  ProcessorContext.forward(Object, Object, To). | 
| UsePartitionTimeOnInvalidTimestamp | Retrieves embedded metadata timestamps from Kafka messages. | 
| WallclockTimestampExtractor | Retrieves current wall clock timestamps as  System.currentTimeMillis(). | 
| Enum | Description | 
|---|---|
| PunctuationType | Controls what notion of time is used for punctuation scheduled via  ProcessorContext.schedule(Duration, PunctuationType, Punctuator)schedule}:
 
   STREAM_TIME - uses "stream time", which is advanced by the processing of messages
   in accordance with the timestamp as extracted by theTimestampExtractorin use. |