Bug 1708422: part 14) Extend documentation of `mozInlineSpellChecker::SpellCheckerTim...
[gecko.git] / dom / localstorage / PBackgroundLSSharedTypes.ipdlh
blobe460ebaae033a8495899b395b2afee39d671e53c
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
3  * You can obtain one at http://mozilla.org/MPL/2.0/. */
5 include PBackgroundSharedTypes;
6 include ProtocolTypes;
8 include "mozilla/dom/localstorage/SerializationHelpers.h";
10 using mozilla::dom::LSValue
11   from "mozilla/dom/LSValue.h";
13 namespace mozilla {
14 namespace dom {
16 struct LSRequestCommonParams
18   PrincipalInfo principalInfo;
19   PrincipalInfo storagePrincipalInfo;
20   nsCString originKey;
23 struct LSRequestPreloadDatastoreParams
25   LSRequestCommonParams commonParams;
28 struct LSRequestPrepareDatastoreParams
30   LSRequestCommonParams commonParams;
31   nsID? clientId;
34 struct LSRequestPrepareObserverParams
36   PrincipalInfo principalInfo;
37   PrincipalInfo storagePrincipalInfo;
38   nsID? clientId;
41 union LSRequestParams
43   LSRequestPreloadDatastoreParams;
44   LSRequestPrepareDatastoreParams;
45   LSRequestPrepareObserverParams;
48 struct LSSimpleRequestPreloadedParams
50   PrincipalInfo principalInfo;
51   PrincipalInfo storagePrincipalInfo;
54 union LSSimpleRequestParams
56   LSSimpleRequestPreloadedParams;
59 /**
60  * LocalStorage key/value pair wire representations.  `value` may be void in
61  * cases where there is a value but it is not being sent for memory/bandwidth
62  * conservation purposes.  (It's not possible to have a null/undefined `value`
63  * as Storage is defined explicitly as a String store.)
64  */
65 struct LSItemInfo
67   nsString key;
68   LSValue value;
71 } // namespace dom
72 } // namespace mozilla