@@ -108,10 +108,11 @@ interface IDBObjectStore {
108108 [NewObject] IDBRequest clear();
109109 [NewObject] IDBRequest get(any query);
110110 [NewObject] IDBRequest getKey(any query);
111- [NewObject] IDBRequest getAll(optional any query ,
111+ [NewObject] IDBRequest getAll(optional any queryOrOptions ,
112112 optional [EnforceRange] unsigned long count);
113- [NewObject] IDBRequest getAllKeys(optional any query ,
113+ [NewObject] IDBRequest getAllKeys(optional any queryOrOptions ,
114114 optional [EnforceRange] unsigned long count);
115+ [NewObject] IDBRequest getAllRecords(optional IDBGetAllOptions options = {});
115116 [NewObject] IDBRequest count(optional any query);
116117
117118 [NewObject] IDBRequest openCursor(optional any query,
@@ -132,6 +133,12 @@ dictionary IDBIndexParameters {
132133 boolean multiEntry = false;
133134};
134135
136+ dictionary IDBGetAllOptions {
137+ any query = null;
138+ [EnforceRange] unsigned long count;
139+ IDBCursorDirection direction = "next";
140+ };
141+
135142[Exposed=(Window,Worker)]
136143interface IDBIndex {
137144 attribute DOMString name;
@@ -142,10 +149,11 @@ interface IDBIndex {
142149
143150 [NewObject] IDBRequest get(any query);
144151 [NewObject] IDBRequest getKey(any query);
145- [NewObject] IDBRequest getAll(optional any query ,
152+ [NewObject] IDBRequest getAll(optional any queryOrOptions ,
146153 optional [EnforceRange] unsigned long count);
147- [NewObject] IDBRequest getAllKeys(optional any query ,
154+ [NewObject] IDBRequest getAllKeys(optional any queryOrOptions ,
148155 optional [EnforceRange] unsigned long count);
156+ [NewObject] IDBRequest getAllRecords(optional IDBGetAllOptions options = {});
149157 [NewObject] IDBRequest count(optional any query);
150158
151159 [NewObject] IDBRequest openCursor(optional any query,
@@ -173,6 +181,13 @@ interface IDBKeyRange {
173181 boolean includes(any key);
174182};
175183
184+ [Exposed=(Window,Worker)]
185+ interface IDBRecord {
186+ readonly attribute any key;
187+ readonly attribute any primaryKey;
188+ readonly attribute any value;
189+ };
190+
176191[Exposed=(Window,Worker)]
177192interface IDBCursor {
178193 readonly attribute (IDBObjectStore or IDBIndex) source;
0 commit comments