Asynchronously deletes the given key. The type is provided here as well because the "real" saved key should
contain type information as well, so the data store will be able to store the same key for different types.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eIDataStore\u003c/code\u003e interface manages data objects, using a string as the key and an object as the value, with serialization handled by \u003ccode\u003eInstance\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eIt provides asynchronous methods for clearing all data (\u003ccode\u003eClearAsync\u003c/code\u003e), deleting a specific key (\u003ccode\u003eDeleteAsync<T>\u003c/code\u003e), retrieving a value by key (\u003ccode\u003eGetAsync<T>\u003c/code\u003e), and storing a value for a key (\u003ccode\u003eStoreAsync<T>\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDeleteAsync<T>\u003c/code\u003e, \u003ccode\u003eGetAsync<T>\u003c/code\u003e, and \u003ccode\u003eStoreAsync<T>\u003c/code\u003e methods are generic and require specifying the type of the data being manipulated.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003enull\u003c/code\u003e keys are explicitly not permitted within the \u003ccode\u003eIDataStore\u003c/code\u003e interface.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eIDataStore\u003c/code\u003e methods all return a \u003ccode\u003eTask\u003c/code\u003e, indicating that they are asynchronous operations.\u003c/p\u003e\n"]]],[],null,["# Interface IDataStore (1.69.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.69.0 (latest)](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Util.Store.IDataStore)\n- [1.68.0](/dotnet/docs/reference/Google.Apis/1.68.0/Google.Apis.Util.Store.IDataStore)\n- [1.60.0](/dotnet/docs/reference/Google.Apis/1.60.0/Google.Apis.Util.Store.IDataStore)\n- [1.59.0](/dotnet/docs/reference/Google.Apis/1.59.0/Google.Apis.Util.Store.IDataStore)\n- [1.55.0](/dotnet/docs/reference/Google.Apis/1.55.0/Google.Apis.Util.Store.IDataStore)\n- [1.50.0](/dotnet/docs/reference/Google.Apis/1.50.0/Google.Apis.Util.Store.IDataStore) \n\n public interface IDataStore\n\nStores and manages data objects, where the key is a string and the value is an object.\nThe store will use [Instance](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Json.NewtonsoftJsonSerializer#Google_Apis_Json_NewtonsoftJsonSerializer_Instance) for serialization.\n\n`null` keys are not allowed.\n\n\u003cbr /\u003e\n\nNamespace\n---------\n\n[Google.Apis.Util.Store](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Util.Store)\n\nAssembly\n--------\n\nGoogle.Apis.Core.dll\n\nMethods\n-------\n\n### ClearAsync()\n\n Task ClearAsync()\n\nAsynchronously clears all values in the data store.\n\n### DeleteAsync\\\u003cT\\\u003e(string)\n\n Task DeleteAsync\u003cT\u003e(string key)\n\nAsynchronously deletes the given key. The type is provided here as well because the \"real\" saved key should\ncontain type information as well, so the data store will be able to store the same key for different types.\n\n### GetAsync\\\u003cT\\\u003e(string)\n\n Task\u003cT\u003e GetAsync\u003cT\u003e(string key)\n\nAsynchronously returns the stored value for the given key or `null` if not found.\n\n### StoreAsync\\\u003cT\\\u003e(string, T)\n\n Task StoreAsync\u003cT\u003e(string key, T value)\n\nAsynchronously stores the given value for the given key (replacing any existing value).\n\nExtension Method\n----------------\n\n[Utilities.ThrowIfNull\\\u003cT\\\u003e(T, string)](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Util.Utilities#Google_Apis_Util_Utilities_ThrowIfNull__1___0_System_String_)"]]