File: storage.d.ts

package info (click to toggle)
nodejs 22.21.1%2Bdfsg%2B~cs22.19.0-6
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 251,928 kB
  • sloc: cpp: 1,542,927; javascript: 597,777; ansic: 114,330; python: 60,784; sh: 4,155; makefile: 2,918; asm: 1,750; pascal: 1,565; perl: 248; lisp: 222; xml: 42
file content (24 lines) | stat: -rw-r--r-- 724 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
export {};

// These interfaces are absent from lib.webworker, so the conditionals use `onabort` rather than `onmessage`
type _Storage = typeof globalThis extends { onabort: any } ? {} : Storage;
interface Storage {
    readonly length: number;
    clear(): void;
    getItem(key: string): string | null;
    key(index: number): string | null;
    removeItem(key: string): void;
    setItem(key: string, value: string): void;
    [key: string]: any;
}

declare global {
    interface Storage extends _Storage {}
    var Storage: typeof globalThis extends { onabort: any; Storage: infer T } ? T : {
        prototype: Storage;
        new(): Storage;
    };

    var localStorage: Storage;
    var sessionStorage: Storage;
}