1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
// The Shared Storage API.
// https://github.com/pythagoraskitty/shared-storage/blob/main/README.md
[
RuntimeEnabled=SharedStorageAPI,
Exposed=(Window, SharedStorageWorklet)
] interface SharedStorage {
[Exposed=SharedStorageWorklet] async iterable<DOMString, DOMString>;
[
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_Set_Method
] Promise<any> set(DOMString key, DOMString value, optional SharedStorageSetMethodOptions options);
[
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_Append_Method
] Promise<any> append(DOMString key, DOMString value, optional SharedStorageModifierMethodOptions options);
[
CallWith=ScriptState,
ImplementedAs=Delete,
RaisesException,
MeasureAs=SharedStorageAPI_Delete_Method
] Promise<any> delete(DOMString key, optional SharedStorageModifierMethodOptions options);
[
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_Clear_Method
] Promise<any> clear(optional SharedStorageModifierMethodOptions options);
[
RuntimeEnabled=SharedStorageWebLocks,
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_BatchUpdate_Method
] Promise<any> batchUpdate(sequence<SharedStorageModifierMethod> methods, optional SharedStorageModifierMethodOptions options);
[
CallWith=ScriptState,
RaisesException
] Promise<DOMString> get(DOMString key);
[
Exposed=SharedStorageWorklet,
CallWith=ScriptState,
RaisesException
] Promise<unsigned long> length();
[
Exposed=SharedStorageWorklet,
CallWith=ScriptState,
RaisesException
] Promise<double> remainingBudget();
[
Exposed=SharedStorageWorklet,
CallWith=ScriptState,
RaisesException
] readonly attribute any context;
[
Exposed=Window,
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_SelectURL_Method
] Promise<SharedStorageResponse> selectURL(DOMString name,
sequence<SharedStorageUrlWithMetadata> urls,
optional SharedStorageRunOperationMethodOptions options);
[
Exposed=Window,
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_Run_Method
] Promise<any> run(DOMString name, optional SharedStorageRunOperationMethodOptions options);
[
Exposed=Window,
CallWith=ScriptState,
RaisesException,
MeasureAs=SharedStorageAPI_CreateWorklet_Method
] Promise<SharedStorageWorklet> createWorklet(USVString moduleURL,
optional SharedStorageWorkletOptions options = {});
[
Exposed=Window,
CallWith=ScriptState,
RaisesException
] readonly attribute SharedStorageWorklet worklet;
};
|