@lifeready/core 1.0.4 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/README.md +62 -62
  2. package/bundles/lifeready-core.umd.js +15445 -15445
  3. package/bundles/lifeready-core.umd.js.map +1 -1
  4. package/bundles/lifeready-core.umd.min.js +1 -1
  5. package/bundles/lifeready-core.umd.min.js.map +1 -1
  6. package/esm2015/lib/_common/ast.js +40 -40
  7. package/esm2015/lib/_common/deferred-promise.js +24 -24
  8. package/esm2015/lib/_common/exceptions.js +157 -157
  9. package/esm2015/lib/_common/queries.gql.js +190 -190
  10. package/esm2015/lib/_common/run-outside-angular.js +79 -79
  11. package/esm2015/lib/_common/types.js +1 -1
  12. package/esm2015/lib/_common/utils.js +44 -44
  13. package/esm2015/lib/api/contact-card.gql.js +79 -79
  14. package/esm2015/lib/api/contact-card.service.js +154 -154
  15. package/esm2015/lib/api/contact-card2.gql.js +60 -60
  16. package/esm2015/lib/api/contact-card2.service.js +103 -103
  17. package/esm2015/lib/api/file.service.js +74 -74
  18. package/esm2015/lib/api/item2.gql.js +110 -110
  19. package/esm2015/lib/api/item2.service.js +311 -311
  20. package/esm2015/lib/api/key-exchange.gql.js +188 -188
  21. package/esm2015/lib/api/key-exchange.service.js +442 -442
  22. package/esm2015/lib/api/key-exchange.types.js +18 -18
  23. package/esm2015/lib/api/key-exchange2.gql.js +171 -171
  24. package/esm2015/lib/api/key-exchange2.service.js +479 -479
  25. package/esm2015/lib/api/lock.gql.js +40 -40
  26. package/esm2015/lib/api/lock.service.js +64 -64
  27. package/esm2015/lib/api/lr-apollo.service.js +46 -46
  28. package/esm2015/lib/api/lr-graphql/index.js +6 -6
  29. package/esm2015/lib/api/lr-graphql/lr-graphql.service.js +155 -155
  30. package/esm2015/lib/api/lr-graphql/lr-merged-mutation.js +213 -213
  31. package/esm2015/lib/api/lr-graphql/lr-mutation-base.js +51 -51
  32. package/esm2015/lib/api/lr-graphql/lr-mutation.js +48 -48
  33. package/esm2015/lib/api/lr-graphql/lr.service.js +18 -18
  34. package/esm2015/lib/api/message.service.js +138 -138
  35. package/esm2015/lib/api/persist.service.js +181 -181
  36. package/esm2015/lib/api/query-processor/common-processors.service.js +93 -93
  37. package/esm2015/lib/api/query-processor/index.js +3 -3
  38. package/esm2015/lib/api/query-processor/query-processor.service.js +192 -192
  39. package/esm2015/lib/api/query-processor/tp-password-reset-processor.service.js +109 -109
  40. package/esm2015/lib/api/shared-contact-card.service.js +119 -119
  41. package/esm2015/lib/api/shared-contact-card2.gql.js +41 -41
  42. package/esm2015/lib/api/shared-contact-card2.service.js +117 -117
  43. package/esm2015/lib/api/time.service.js +146 -146
  44. package/esm2015/lib/api/types/graphql.types.js +7 -7
  45. package/esm2015/lib/api/types/index.js +3 -3
  46. package/esm2015/lib/api/types/lr-graphql.types.js +71 -71
  47. package/esm2015/lib/auth/auth.config.js +57 -57
  48. package/esm2015/lib/auth/auth.gql.js +48 -48
  49. package/esm2015/lib/auth/auth.types.js +27 -27
  50. package/esm2015/lib/auth/idle.service.js +168 -168
  51. package/esm2015/lib/auth/idle.types.js +7 -7
  52. package/esm2015/lib/auth/lbop.service.js +355 -355
  53. package/esm2015/lib/auth/life-ready-auth.service.js +500 -500
  54. package/esm2015/lib/auth/password.service.js +320 -320
  55. package/esm2015/lib/auth/register.service.js +172 -172
  56. package/esm2015/lib/auth/two-factor.service.js +74 -74
  57. package/esm2015/lib/category/category-meta.service.js +99 -99
  58. package/esm2015/lib/category/category.gql.js +406 -406
  59. package/esm2015/lib/category/category.service.js +390 -390
  60. package/esm2015/lib/category/category.types.js +29 -29
  61. package/esm2015/lib/cryptography/cryptography.types.js +11 -11
  62. package/esm2015/lib/cryptography/encryption.service.js +189 -189
  63. package/esm2015/lib/cryptography/key-factory.service.js +237 -237
  64. package/esm2015/lib/cryptography/key-graph.service.js +280 -280
  65. package/esm2015/lib/cryptography/key-meta.service.js +200 -200
  66. package/esm2015/lib/cryptography/key.service.js +124 -124
  67. package/esm2015/lib/cryptography/slip39.service.js +169 -169
  68. package/esm2015/lib/cryptography/web-crypto.service.js +29 -29
  69. package/esm2015/lib/life-ready.config.js +84 -84
  70. package/esm2015/lib/life-ready.module.js +74 -74
  71. package/esm2015/lib/plan/plan.gql.js +123 -123
  72. package/esm2015/lib/plan/plan.service.js +149 -149
  73. package/esm2015/lib/plan/plan.types.js +11 -11
  74. package/esm2015/lib/record/record-attachment.service.js +101 -101
  75. package/esm2015/lib/record/record.gql.js +179 -179
  76. package/esm2015/lib/record/record.service.js +206 -206
  77. package/esm2015/lib/record/record.types.js +15 -15
  78. package/esm2015/lib/record-type/record-type.service.js +75 -75
  79. package/esm2015/lib/record-type/record-type.types.js +28 -28
  80. package/esm2015/lib/scenario/approvals/scenario-approval.gql.js +105 -105
  81. package/esm2015/lib/scenario/approvals/scenario-approval.types.js +1 -1
  82. package/esm2015/lib/scenario/approvals/scenario-approver.service.js +300 -300
  83. package/esm2015/lib/scenario/claimants/scenario-claimant.gql.js +52 -52
  84. package/esm2015/lib/scenario/claimants/scenario-claimant.service.js +97 -97
  85. package/esm2015/lib/scenario/claimants/scenario-claimant.types.js +1 -1
  86. package/esm2015/lib/scenario/receivers/scenario-receiver.gql.js +150 -150
  87. package/esm2015/lib/scenario/receivers/scenario-receiver.service.js +229 -229
  88. package/esm2015/lib/scenario/receivers/scenario-receiver.types.js +1 -1
  89. package/esm2015/lib/scenario/scenario-setup.service.js +269 -269
  90. package/esm2015/lib/scenario/scenario.gql.js +368 -368
  91. package/esm2015/lib/scenario/scenario.service.js +611 -611
  92. package/esm2015/lib/scenario/scenario.types.js +64 -64
  93. package/esm2015/lib/search/search.gql.js +62 -62
  94. package/esm2015/lib/search/search.service.js +156 -156
  95. package/esm2015/lib/search/search.types.js +6 -6
  96. package/esm2015/lib/trusted-parties/tp-password-reset-request.service.js +112 -112
  97. package/esm2015/lib/trusted-parties/tp-password-reset-user.service.js +129 -129
  98. package/esm2015/lib/trusted-parties/tp-password-reset.constants.js +4 -4
  99. package/esm2015/lib/trusted-parties/tp-password-reset.gql.js +232 -232
  100. package/esm2015/lib/trusted-parties/tp-password-reset.service.js +299 -299
  101. package/esm2015/lib/trusted-parties/trusted-party.gql.js +148 -148
  102. package/esm2015/lib/trusted-parties/trusted-party.service.js +326 -326
  103. package/esm2015/lib/trusted-parties/trusted-party.types.js +41 -41
  104. package/esm2015/lib/trusted-parties/trusted-party2.gql.js +87 -87
  105. package/esm2015/lib/trusted-parties/trusted-party2.service.js +215 -215
  106. package/esm2015/lib/users/profile-details.service.js +214 -214
  107. package/esm2015/lib/users/profile.gql.js +97 -97
  108. package/esm2015/lib/users/profile.service.js +169 -169
  109. package/esm2015/lib/users/profile.types.js +34 -34
  110. package/esm2015/lib/users/user.gql.js +60 -60
  111. package/esm2015/lib/users/user.service.js +79 -79
  112. package/esm2015/lib/users/user.types.js +5 -5
  113. package/esm2015/lifeready-core.js +10 -10
  114. package/esm2015/public-api.js +81 -81
  115. package/fesm2015/lifeready-core.js +13088 -13088
  116. package/fesm2015/lifeready-core.js.map +1 -1
  117. package/lib/_common/ast.d.ts +11 -11
  118. package/lib/_common/deferred-promise.d.ts +12 -12
  119. package/lib/_common/exceptions.d.ts +109 -109
  120. package/lib/_common/queries.gql.d.ts +10 -10
  121. package/lib/_common/run-outside-angular.d.ts +14 -14
  122. package/lib/_common/types.d.ts +10 -10
  123. package/lib/_common/utils.d.ts +3 -3
  124. package/lib/api/contact-card.gql.d.ts +7 -7
  125. package/lib/api/contact-card.service.d.ts +52 -52
  126. package/lib/api/contact-card2.gql.d.ts +34 -34
  127. package/lib/api/contact-card2.service.d.ts +49 -49
  128. package/lib/api/file.service.d.ts +18 -18
  129. package/lib/api/item2.gql.d.ts +96 -96
  130. package/lib/api/item2.service.d.ts +177 -177
  131. package/lib/api/key-exchange.gql.d.ts +9 -9
  132. package/lib/api/key-exchange.service.d.ts +39 -39
  133. package/lib/api/key-exchange.types.d.ts +196 -196
  134. package/lib/api/key-exchange2.gql.d.ts +125 -125
  135. package/lib/api/key-exchange2.service.d.ts +187 -187
  136. package/lib/api/lock.gql.d.ts +27 -27
  137. package/lib/api/lock.service.d.ts +25 -25
  138. package/lib/api/lr-apollo.service.d.ts +15 -15
  139. package/lib/api/lr-graphql/index.d.ts +5 -5
  140. package/lib/api/lr-graphql/lr-graphql.service.d.ts +60 -60
  141. package/lib/api/lr-graphql/lr-merged-mutation.d.ts +27 -27
  142. package/lib/api/lr-graphql/lr-mutation-base.d.ts +28 -28
  143. package/lib/api/lr-graphql/lr-mutation.d.ts +8 -8
  144. package/lib/api/lr-graphql/lr.service.d.ts +9 -9
  145. package/lib/api/message.service.d.ts +58 -58
  146. package/lib/api/persist.service.d.ts +31 -31
  147. package/lib/api/query-processor/common-processors.service.d.ts +36 -36
  148. package/lib/api/query-processor/index.d.ts +2 -2
  149. package/lib/api/query-processor/query-processor.service.d.ts +18 -18
  150. package/lib/api/query-processor/tp-password-reset-processor.service.d.ts +15 -15
  151. package/lib/api/shared-contact-card.service.d.ts +33 -33
  152. package/lib/api/shared-contact-card2.gql.d.ts +36 -36
  153. package/lib/api/shared-contact-card2.service.d.ts +45 -45
  154. package/lib/api/time.service.d.ts +16 -16
  155. package/lib/api/types/graphql.types.d.ts +29 -29
  156. package/lib/api/types/index.d.ts +2 -2
  157. package/lib/api/types/lr-graphql.types.d.ts +393 -385
  158. package/lib/auth/auth.config.d.ts +5 -5
  159. package/lib/auth/auth.gql.d.ts +15 -15
  160. package/lib/auth/auth.types.d.ts +66 -66
  161. package/lib/auth/idle.service.d.ts +40 -40
  162. package/lib/auth/idle.types.d.ts +10 -10
  163. package/lib/auth/lbop.service.d.ts +91 -91
  164. package/lib/auth/life-ready-auth.service.d.ts +59 -59
  165. package/lib/auth/password.service.d.ts +78 -78
  166. package/lib/auth/register.service.d.ts +25 -25
  167. package/lib/auth/two-factor.service.d.ts +15 -15
  168. package/lib/category/category-meta.service.d.ts +23 -23
  169. package/lib/category/category.gql.d.ts +45 -45
  170. package/lib/category/category.service.d.ts +67 -67
  171. package/lib/category/category.types.d.ts +79 -79
  172. package/lib/cryptography/cryptography.types.d.ts +83 -83
  173. package/lib/cryptography/encryption.service.d.ts +41 -41
  174. package/lib/cryptography/key-factory.service.d.ts +38 -38
  175. package/lib/cryptography/key-graph.service.d.ts +33 -33
  176. package/lib/cryptography/key-meta.service.d.ts +44 -44
  177. package/lib/cryptography/key.service.d.ts +36 -36
  178. package/lib/cryptography/slip39.service.d.ts +43 -43
  179. package/lib/cryptography/web-crypto.service.d.ts +5 -5
  180. package/lib/life-ready.config.d.ts +14 -14
  181. package/lib/life-ready.module.d.ts +5 -5
  182. package/lib/plan/plan.gql.d.ts +11 -11
  183. package/lib/plan/plan.service.d.ts +33 -33
  184. package/lib/plan/plan.types.d.ts +31 -31
  185. package/lib/record/record-attachment.service.d.ts +16 -16
  186. package/lib/record/record.gql.d.ts +14 -14
  187. package/lib/record/record.service.d.ts +25 -25
  188. package/lib/record/record.types.d.ts +57 -57
  189. package/lib/record-type/record-type.service.d.ts +11 -11
  190. package/lib/record-type/record-type.types.d.ts +50 -50
  191. package/lib/scenario/approvals/scenario-approval.gql.d.ts +7 -7
  192. package/lib/scenario/approvals/scenario-approval.types.d.ts +63 -63
  193. package/lib/scenario/approvals/scenario-approver.service.d.ts +32 -32
  194. package/lib/scenario/claimants/scenario-claimant.gql.d.ts +5 -5
  195. package/lib/scenario/claimants/scenario-claimant.service.d.ts +17 -17
  196. package/lib/scenario/claimants/scenario-claimant.types.d.ts +18 -18
  197. package/lib/scenario/receivers/scenario-receiver.gql.d.ts +8 -8
  198. package/lib/scenario/receivers/scenario-receiver.service.d.ts +30 -30
  199. package/lib/scenario/receivers/scenario-receiver.types.d.ts +54 -54
  200. package/lib/scenario/scenario-setup.service.d.ts +22 -22
  201. package/lib/scenario/scenario.gql.d.ts +34 -34
  202. package/lib/scenario/scenario.service.d.ts +58 -58
  203. package/lib/scenario/scenario.types.d.ts +217 -217
  204. package/lib/search/search.gql.d.ts +1 -1
  205. package/lib/search/search.service.d.ts +25 -25
  206. package/lib/search/search.types.d.ts +20 -20
  207. package/lib/trusted-parties/tp-password-reset-request.service.d.ts +20 -20
  208. package/lib/trusted-parties/tp-password-reset-user.service.d.ts +35 -35
  209. package/lib/trusted-parties/tp-password-reset.constants.d.ts +3 -3
  210. package/lib/trusted-parties/tp-password-reset.gql.d.ts +218 -218
  211. package/lib/trusted-parties/tp-password-reset.service.d.ts +130 -130
  212. package/lib/trusted-parties/trusted-party.gql.d.ts +9 -9
  213. package/lib/trusted-parties/trusted-party.service.d.ts +44 -44
  214. package/lib/trusted-parties/trusted-party.types.d.ts +102 -102
  215. package/lib/trusted-parties/trusted-party2.gql.d.ts +79 -79
  216. package/lib/trusted-parties/trusted-party2.service.d.ts +114 -114
  217. package/lib/users/profile-details.service.d.ts +21 -21
  218. package/lib/users/profile.gql.d.ts +11 -11
  219. package/lib/users/profile.service.d.ts +35 -35
  220. package/lib/users/profile.types.d.ts +96 -96
  221. package/lib/users/user.gql.d.ts +9 -9
  222. package/lib/users/user.service.d.ts +12 -12
  223. package/lib/users/user.types.d.ts +23 -23
  224. package/lifeready-core.d.ts +9 -9
  225. package/package.json +1 -1
  226. package/public-api.d.ts +77 -77
@@ -1,39 +1,39 @@
1
- import { LifeReadyAuthService } from '../auth/life-ready-auth.service';
2
- import { EncryptionService } from '../cryptography/encryption.service';
3
- import { KeyService } from '../cryptography/key.service';
4
- import { UserService } from './../users/user.service';
5
- import { CompleteOtk, DecryptedKeyExchange, GetKeyExchangeListOptions, GetKeyExchangeOptions, InitiateOtkInput, KeyExchange, RespondOtk, RespondOtkInput, UserSharedKey } from './key-exchange.types';
6
- import { LrApolloService } from './lr-apollo.service';
7
- import { KeyFactoryService as KFS } from '../cryptography/key-factory.service';
8
- export declare class KeyExchangeService {
9
- private keyFactory;
10
- private keyService;
11
- private lrApollo;
12
- private encryptionService;
13
- private authService;
14
- private userService;
15
- private readonly CLIENT_NONCE_LENGTH;
16
- constructor(keyFactory: KFS, keyService: KeyService, lrApollo: LrApolloService, encryptionService: EncryptionService, authService: LifeReadyAuthService, userService: UserService);
17
- getKeyExchangeList(input?: GetKeyExchangeListOptions): Promise<any>;
18
- /**
19
- * @param id If the current user can responder the key exchange if they are either the initiator or the receiver.
20
- * @param token If not signed in, or not the initiator or responder, 'token' must be given.
21
- * @param otKeyK Is the raw one-time key (string). If the responder is explicitly specified at time of initiation, then
22
- * it's possible to have the otKey wrapped by the public key of the responder. In which case, the otKeyK is not needed.
23
- */
24
- getKeyExchange(id: string, { otKeyK, token }?: GetKeyExchangeOptions): Promise<DecryptedKeyExchange>;
25
- private decryptResponseCipher;
26
- decryptKeyExchange(keyExchange: KeyExchange, otKeyK?: string): Promise<DecryptedKeyExchange>;
27
- private decryptOtk;
28
- private getOtKey;
29
- initiateOtk({ message, email, contactCard, upgrade, }: InitiateOtkInput): Promise<{
30
- keyExchange: KeyExchange;
31
- otKeyK: string;
32
- }>;
33
- respondOtk({ id, token, decryptedOtk, message, initiatorContactCard, responderContactCard: sentContactCard, }: RespondOtkInput): Promise<RespondOtk>;
34
- completeOtk(keyExchangeId: string, initiatorRootKeyCipher: string, initiatorOneTimePbkCipher: string, responderContactCard?: string): Promise<CompleteOtk>;
35
- currentUserSharedKey(input: {
36
- username?: string;
37
- userId?: string;
38
- }): Promise<UserSharedKey>;
39
- }
1
+ import { LifeReadyAuthService } from '../auth/life-ready-auth.service';
2
+ import { EncryptionService } from '../cryptography/encryption.service';
3
+ import { KeyService } from '../cryptography/key.service';
4
+ import { UserService } from './../users/user.service';
5
+ import { CompleteOtk, DecryptedKeyExchange, GetKeyExchangeListOptions, GetKeyExchangeOptions, InitiateOtkInput, KeyExchange, RespondOtk, RespondOtkInput, UserSharedKey } from './key-exchange.types';
6
+ import { LrApolloService } from './lr-apollo.service';
7
+ import { KeyFactoryService as KFS } from '../cryptography/key-factory.service';
8
+ export declare class KeyExchangeService {
9
+ private keyFactory;
10
+ private keyService;
11
+ private lrApollo;
12
+ private encryptionService;
13
+ private authService;
14
+ private userService;
15
+ private readonly CLIENT_NONCE_LENGTH;
16
+ constructor(keyFactory: KFS, keyService: KeyService, lrApollo: LrApolloService, encryptionService: EncryptionService, authService: LifeReadyAuthService, userService: UserService);
17
+ getKeyExchangeList(input?: GetKeyExchangeListOptions): Promise<any>;
18
+ /**
19
+ * @param id If the current user can responder the key exchange if they are either the initiator or the receiver.
20
+ * @param token If not signed in, or not the initiator or responder, 'token' must be given.
21
+ * @param otKeyK Is the raw one-time key (string). If the responder is explicitly specified at time of initiation, then
22
+ * it's possible to have the otKey wrapped by the public key of the responder. In which case, the otKeyK is not needed.
23
+ */
24
+ getKeyExchange(id: string, { otKeyK, token }?: GetKeyExchangeOptions): Promise<DecryptedKeyExchange>;
25
+ private decryptResponseCipher;
26
+ decryptKeyExchange(keyExchange: KeyExchange, otKeyK?: string): Promise<DecryptedKeyExchange>;
27
+ private decryptOtk;
28
+ private getOtKey;
29
+ initiateOtk({ message, email, contactCard, upgrade, }: InitiateOtkInput): Promise<{
30
+ keyExchange: KeyExchange;
31
+ otKeyK: string;
32
+ }>;
33
+ respondOtk({ id, token, decryptedOtk, message, initiatorContactCard, responderContactCard: sentContactCard, }: RespondOtkInput): Promise<RespondOtk>;
34
+ completeOtk(keyExchangeId: string, initiatorRootKeyCipher: string, initiatorOneTimePbkCipher: string, responderContactCard?: string): Promise<CompleteOtk>;
35
+ currentUserSharedKey(input: {
36
+ username?: string;
37
+ userId?: string;
38
+ }): Promise<UserSharedKey>;
39
+ }
@@ -1,196 +1,196 @@
1
- import { Key } from '../cryptography/cryptography.types';
2
- import { AccessLevel } from '../category/category.types';
3
- import { JWK } from 'node-jose';
4
- import { ContactCardName, TrustedPartyDetails } from '../users/profile.types';
5
- export interface PlainInitiatorRootKeyCipher {
6
- nonce: string;
7
- oneTimePrk: object;
8
- otKey: object;
9
- initiatorContactCard?: {
10
- plainOwnerCipherDataJson: any;
11
- plainSharedCipherDataJson: any;
12
- };
13
- initiator: {
14
- message?: KeyExchangeMessage;
15
- contactCard?: {
16
- plainSharedCipherDataJson: TrustedPartyDetails;
17
- };
18
- };
19
- }
20
- export interface SharedContactCardInput {
21
- plainCipherDataJson?: any;
22
- plainSharedCipherDataJson?: any;
23
- sharedCipherKey?: object;
24
- }
25
- export interface PreparedPermissions {
26
- categories?: {
27
- categoryId: string;
28
- accessLevel: AccessLevel;
29
- }[];
30
- records?: {
31
- recordId: string;
32
- accessLevel: AccessLevel;
33
- }[];
34
- }
35
- export interface KeyExchangeMessage {
36
- name?: string;
37
- email?: string;
38
- message?: string;
39
- permissions?: PreparedPermissions;
40
- }
41
- export interface PlainOtKeyCipher {
42
- nonce: string;
43
- initiator: {
44
- oneTimePbk: object;
45
- pbk: object;
46
- sigPbk: object;
47
- profile?: {
48
- username?: string;
49
- };
50
- message?: KeyExchangeMessage;
51
- contactCard?: {
52
- plainSharedCipherDataJson: TrustedPartyDetails;
53
- };
54
- };
55
- }
56
- export interface DecryptedOtk {
57
- plainOtKeyCipher: PlainOtKeyCipher;
58
- otKey: JWK.Key;
59
- }
60
- export interface PlainInitiatorOneTimePbkCipher {
61
- nonce: string;
62
- sharedKey: object;
63
- mkSharedKey: object;
64
- responder: {
65
- pbk: object;
66
- sigPbk: object;
67
- profile?: {
68
- username?: string;
69
- };
70
- message?: KeyExchangeMessage;
71
- contactCard?: {
72
- plainSharedCipherDataJson: TrustedPartyDetails;
73
- sharedCipherKey: object;
74
- };
75
- };
76
- }
77
- export declare enum OtkState {
78
- OTK_INITIATED = "OTK_INITIATED",
79
- OTK_ACCEPTED = "OTK_ACCEPTED",
80
- OTK_COMPLETED = "OTK_COMPLETED"
81
- }
82
- export interface KeyExchangeContactCardInput {
83
- ownerPlainData?: {
84
- name: ContactCardName;
85
- };
86
- plainOwnerCipherDataJson: any;
87
- plainSharedCipherDataJson: TrustedPartyDetails;
88
- }
89
- export interface InitiateOtkInput {
90
- email?: string;
91
- message?: KeyExchangeMessage;
92
- contactCard?: KeyExchangeContactCardInput;
93
- upgrade?: boolean;
94
- }
95
- export interface RespondOtkInput {
96
- id: string;
97
- token: string;
98
- decryptedOtk: DecryptedOtk;
99
- message?: KeyExchangeMessage;
100
- initiatorContactCard?: {
101
- plainReceiverCipherDataJson: any;
102
- };
103
- responderContactCard?: KeyExchangeContactCardInput;
104
- }
105
- export declare enum KeyExchangeState {
106
- IN_PROGRESS = "IN_PROGRESS",
107
- COMPLETED = "COMPLETED",
108
- DECLINED = "DECLINED",
109
- CANCELLED = "CANCELLED"
110
- }
111
- export declare enum KeyExchangeMode {
112
- OTK = "OTK"
113
- }
114
- export interface Otk {
115
- id: string;
116
- state: OtkState;
117
- otKeyParams: string;
118
- otKeyCipher: string;
119
- sharedKey: Key;
120
- mkSharedKey: Key;
121
- initiatorSigPxk: Key;
122
- responderSigPxk: Key;
123
- initiatorOneTimePbkCipher: string;
124
- responderPbkCipher?: string;
125
- }
126
- export interface KeyExchange {
127
- id: string;
128
- state: KeyExchangeState;
129
- mode: KeyExchangeMode;
130
- created: string;
131
- modified: string;
132
- isInitiator: boolean;
133
- initiator: {
134
- id: string;
135
- username: string;
136
- };
137
- responder: {
138
- id: string;
139
- username: string;
140
- };
141
- initiatorActionRequired?: boolean;
142
- responderActionRequired?: boolean;
143
- responderEmailAddress?: string;
144
- token?: string;
145
- tokenExpiryTime?: string;
146
- isExpired?: boolean;
147
- otk?: Otk;
148
- initiatorRootKeyCipher: string;
149
- }
150
- export interface DecryptedKeyExchange extends KeyExchange {
151
- decryptedOtk?: DecryptedOtk;
152
- message?: KeyExchangeMessage;
153
- contactCard?: TrustedPartyDetails;
154
- myMessage?: KeyExchangeMessage;
155
- myContactCard?: TrustedPartyDetails;
156
- }
157
- export interface GetKeyExchangeOptions {
158
- otKeyK?: string;
159
- token?: string;
160
- }
161
- export interface RespondOtk {
162
- keyExchange: KeyExchange;
163
- userSharedKey: UserSharedKey;
164
- tp: {
165
- id: string;
166
- };
167
- }
168
- export interface CompleteOtk {
169
- keyExchange: KeyExchange;
170
- userSharedKey: UserSharedKey;
171
- tp: {
172
- id: string;
173
- };
174
- }
175
- export interface UserSharedKey {
176
- userSigPrk: Key;
177
- sharedKey: Key;
178
- mkSharedKey?: Key;
179
- mkPxk?: Key;
180
- mkReshareRequestCipher?: string;
181
- mkReshareResponseCipher?: string;
182
- mkReshareRequestSent?: boolean;
183
- mkReshareResponseSent?: boolean;
184
- }
185
- export interface GetKeyExchangeListOptions {
186
- orderBy?: 'created' | '-created' | 'modified' | '-modified' | 'expiry_time' | '-expiry_time';
187
- isExpired?: boolean;
188
- initiatorActionRequired?: boolean;
189
- responderActionRequired?: boolean;
190
- initiator?: string;
191
- responder?: string;
192
- state?: 'IN_PROGRESS' | 'COMPLETED' | 'DECLINED' | 'CANCELLED';
193
- }
194
- export interface PlainResponderPbkCipher {
195
- otKey: object;
196
- }
1
+ import { Key } from '../cryptography/cryptography.types';
2
+ import { AccessLevel } from '../category/category.types';
3
+ import { JWK } from 'node-jose';
4
+ import { ContactCardName, TrustedPartyDetails } from '../users/profile.types';
5
+ export interface PlainInitiatorRootKeyCipher {
6
+ nonce: string;
7
+ oneTimePrk: object;
8
+ otKey: object;
9
+ initiatorContactCard?: {
10
+ plainOwnerCipherDataJson: any;
11
+ plainSharedCipherDataJson: any;
12
+ };
13
+ initiator: {
14
+ message?: KeyExchangeMessage;
15
+ contactCard?: {
16
+ plainSharedCipherDataJson: TrustedPartyDetails;
17
+ };
18
+ };
19
+ }
20
+ export interface SharedContactCardInput {
21
+ plainCipherDataJson?: any;
22
+ plainSharedCipherDataJson?: any;
23
+ sharedCipherKey?: object;
24
+ }
25
+ export interface PreparedPermissions {
26
+ categories?: {
27
+ categoryId: string;
28
+ accessLevel: AccessLevel;
29
+ }[];
30
+ records?: {
31
+ recordId: string;
32
+ accessLevel: AccessLevel;
33
+ }[];
34
+ }
35
+ export interface KeyExchangeMessage {
36
+ name?: string;
37
+ email?: string;
38
+ message?: string;
39
+ permissions?: PreparedPermissions;
40
+ }
41
+ export interface PlainOtKeyCipher {
42
+ nonce: string;
43
+ initiator: {
44
+ oneTimePbk: object;
45
+ pbk: object;
46
+ sigPbk: object;
47
+ profile?: {
48
+ username?: string;
49
+ };
50
+ message?: KeyExchangeMessage;
51
+ contactCard?: {
52
+ plainSharedCipherDataJson: TrustedPartyDetails;
53
+ };
54
+ };
55
+ }
56
+ export interface DecryptedOtk {
57
+ plainOtKeyCipher: PlainOtKeyCipher;
58
+ otKey: JWK.Key;
59
+ }
60
+ export interface PlainInitiatorOneTimePbkCipher {
61
+ nonce: string;
62
+ sharedKey: object;
63
+ mkSharedKey: object;
64
+ responder: {
65
+ pbk: object;
66
+ sigPbk: object;
67
+ profile?: {
68
+ username?: string;
69
+ };
70
+ message?: KeyExchangeMessage;
71
+ contactCard?: {
72
+ plainSharedCipherDataJson: TrustedPartyDetails;
73
+ sharedCipherKey: object;
74
+ };
75
+ };
76
+ }
77
+ export declare enum OtkState {
78
+ OTK_INITIATED = "OTK_INITIATED",
79
+ OTK_ACCEPTED = "OTK_ACCEPTED",
80
+ OTK_COMPLETED = "OTK_COMPLETED"
81
+ }
82
+ export interface KeyExchangeContactCardInput {
83
+ ownerPlainData?: {
84
+ name: ContactCardName;
85
+ };
86
+ plainOwnerCipherDataJson: any;
87
+ plainSharedCipherDataJson: TrustedPartyDetails;
88
+ }
89
+ export interface InitiateOtkInput {
90
+ email?: string;
91
+ message?: KeyExchangeMessage;
92
+ contactCard?: KeyExchangeContactCardInput;
93
+ upgrade?: boolean;
94
+ }
95
+ export interface RespondOtkInput {
96
+ id: string;
97
+ token: string;
98
+ decryptedOtk: DecryptedOtk;
99
+ message?: KeyExchangeMessage;
100
+ initiatorContactCard?: {
101
+ plainReceiverCipherDataJson: any;
102
+ };
103
+ responderContactCard?: KeyExchangeContactCardInput;
104
+ }
105
+ export declare enum KeyExchangeState {
106
+ IN_PROGRESS = "IN_PROGRESS",
107
+ COMPLETED = "COMPLETED",
108
+ DECLINED = "DECLINED",
109
+ CANCELLED = "CANCELLED"
110
+ }
111
+ export declare enum KeyExchangeMode {
112
+ OTK = "OTK"
113
+ }
114
+ export interface Otk {
115
+ id: string;
116
+ state: OtkState;
117
+ otKeyParams: string;
118
+ otKeyCipher: string;
119
+ sharedKey: Key;
120
+ mkSharedKey: Key;
121
+ initiatorSigPxk: Key;
122
+ responderSigPxk: Key;
123
+ initiatorOneTimePbkCipher: string;
124
+ responderPbkCipher?: string;
125
+ }
126
+ export interface KeyExchange {
127
+ id: string;
128
+ state: KeyExchangeState;
129
+ mode: KeyExchangeMode;
130
+ created: string;
131
+ modified: string;
132
+ isInitiator: boolean;
133
+ initiator: {
134
+ id: string;
135
+ username: string;
136
+ };
137
+ responder: {
138
+ id: string;
139
+ username: string;
140
+ };
141
+ initiatorActionRequired?: boolean;
142
+ responderActionRequired?: boolean;
143
+ responderEmailAddress?: string;
144
+ token?: string;
145
+ tokenExpiryTime?: string;
146
+ isExpired?: boolean;
147
+ otk?: Otk;
148
+ initiatorRootKeyCipher: string;
149
+ }
150
+ export interface DecryptedKeyExchange extends KeyExchange {
151
+ decryptedOtk?: DecryptedOtk;
152
+ message?: KeyExchangeMessage;
153
+ contactCard?: TrustedPartyDetails;
154
+ myMessage?: KeyExchangeMessage;
155
+ myContactCard?: TrustedPartyDetails;
156
+ }
157
+ export interface GetKeyExchangeOptions {
158
+ otKeyK?: string;
159
+ token?: string;
160
+ }
161
+ export interface RespondOtk {
162
+ keyExchange: KeyExchange;
163
+ userSharedKey: UserSharedKey;
164
+ tp: {
165
+ id: string;
166
+ };
167
+ }
168
+ export interface CompleteOtk {
169
+ keyExchange: KeyExchange;
170
+ userSharedKey: UserSharedKey;
171
+ tp: {
172
+ id: string;
173
+ };
174
+ }
175
+ export interface UserSharedKey {
176
+ userSigPrk: Key;
177
+ sharedKey: Key;
178
+ mkSharedKey?: Key;
179
+ mkPxk?: Key;
180
+ mkReshareRequestCipher?: string;
181
+ mkReshareResponseCipher?: string;
182
+ mkReshareRequestSent?: boolean;
183
+ mkReshareResponseSent?: boolean;
184
+ }
185
+ export interface GetKeyExchangeListOptions {
186
+ orderBy?: 'created' | '-created' | 'modified' | '-modified' | 'expiry_time' | '-expiry_time';
187
+ isExpired?: boolean;
188
+ initiatorActionRequired?: boolean;
189
+ responderActionRequired?: boolean;
190
+ initiator?: string;
191
+ responder?: string;
192
+ state?: 'IN_PROGRESS' | 'COMPLETED' | 'DECLINED' | 'CANCELLED';
193
+ }
194
+ export interface PlainResponderPbkCipher {
195
+ otKey: object;
196
+ }