diff options
| author | crowlKats <13135287+crowlKats@users.noreply.github.com> | 2021-05-10 12:02:47 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-10 12:02:47 +0200 |
| commit | dfe528198d363ebc883da84dc816bce112ecd24b (patch) | |
| tree | dfa0e67521a5b0a968b57514aa02fc8f114d4132 /extensions/webstorage/lib.deno_webstorage.d.ts | |
| parent | 32ad8f77d68df04e26ecaed71bdd8d37f048218a (diff) | |
feat: add WebStorage API (#7819)
This commit introduces localStorage and sessionStorage.
Diffstat (limited to 'extensions/webstorage/lib.deno_webstorage.d.ts')
| -rw-r--r-- | extensions/webstorage/lib.deno_webstorage.d.ts | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/extensions/webstorage/lib.deno_webstorage.d.ts b/extensions/webstorage/lib.deno_webstorage.d.ts new file mode 100644 index 000000000..bf438e005 --- /dev/null +++ b/extensions/webstorage/lib.deno_webstorage.d.ts @@ -0,0 +1,42 @@ +// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license. + +// deno-lint-ignore-file no-explicit-any + +/// <reference no-default-lib="true" /> +/// <reference lib="esnext" /> + +/** This Web Storage API interface provides access to a particular domain's session or local storage. It allows, for example, the addition, modification, or deletion of stored data items. */ +interface Storage { + /** + * Returns the number of key/value pairs currently present in the list associated with the object. + */ + readonly length: number; + /** + * Empties the list associated with the object of all key/value pairs, if there are any. + */ + clear(): void; + /** + * Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object. + */ + getItem(key: string): string | null; + /** + * Returns the name of the nth key in the list, or null if n is greater than or equal to the number of key/value pairs in the object. + */ + key(index: number): string | null; + /** + * Removes the key/value pair with the given key from the list associated with the object, if a key/value pair with the given key exists. + */ + removeItem(key: string): void; + /** + * Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously. + * + * Throws a "QuotaExceededError" DOMException exception if the new value couldn't be set. (Setting could fail if, e.g., the user has disabled storage for the site, or if the quota has been exceeded.) + */ + setItem(key: string, value: string): void; + [name: string]: any; +} + +declare var Storage: { + prototype: Storage; + new (): Storage; +}; |
