# IDurableDictionaryCommandCodec&lt;TKey, TValue&gt;

Package: [Microsoft.Orleans.Journaling](/orleans/docs/api/csharp/microsoft.orleans.journaling/) 10.0.0-alpha.1

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Journaling)

```csharp
public interface IDurableDictionaryCommandCodec<TKey, TValue>
    where TKey : notnull
```

Serializes one durable dictionary command and applies one decoded command.

## Methods

- [Apply(JournalBufferReader, IDurableDictionaryCommandHandler&lt;TKey, TValue&gt;)](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.idurabledictionarycommandcodec-2/methods/apply-orleans-journaling-journalbufferreader-orleans-journaling-idurabledictiona-03f6d04d/)
- [WriteClear(JournalStreamWriter)](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.idurabledictionarycommandcodec-2/methods/writeclear-orleans-journaling-journalstreamwriter-eefc15ad/)
- [WriteRemove(TKey, JournalStreamWriter)](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.idurabledictionarycommandcodec-2/methods/writeremove-tkey-orleans-journaling-journalstreamwriter-605a1b74/)
- [WriteSet(TKey, TValue, JournalStreamWriter)](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.idurabledictionarycommandcodec-2/methods/writeset-tkey-tvalue-orleans-journaling-journalstreamwriter-4b454828/)
- [WriteSnapshot(IReadOnlyCollection&lt;KeyValuePair&lt;TKey, TValue&gt;&gt;, JournalStreamWriter)](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.idurabledictionarycommandcodec-2/methods/writesnapshot-system-collections-generic-ireadonlycollection-system-collections-875d9f9d/)
