/// <summary>
 /// Requests permission to use persistent storage, and returns  true if permission is granted and box mode is persistent, and false otherwise.
 /// </summary>
 /// <param name="timeout">In some browser the user will be prompted for validation, this method will return false if the user did not provide an answer before</param>
 /// <returns></returns>
 public async ValueTask <bool> Persist(TimeSpan?timeout = null)
 {
     return(timeout.HasValue
         ? await jsRuntime.InvokeOrDefault <bool>("navigator.storage.persist", timeout.Value, null).ConfigureAwait(false)
         : await jsRuntime.InvokeAsync <bool>("navigator.storage.persist", null).ConfigureAwait(false));
 }
 /// <summary>
 /// Requests permission to use persistent storage, and returns  true if permission is granted and box mode is persistent, and false otherwise.
 /// </summary>
 /// <param name="timeout">In some browser the user will be prompted for validation, this method will return false if the user did not provide an answer before</param>
 /// <returns></returns>
 public async ValueTask <bool> Persist(TimeSpan?timeout = null)
 {
     return(await(timeout.HasValue
         ? jsRuntime.InvokeOrDefault <bool>("navigator.storage.persist", timeout.Value, null)
         : jsRuntime.InvokeAsync <bool>("navigator.storage.persist", null)));
 }