@dxos/protocols 0.7.5-main.ff8607b → 0.7.5-staging.2ff1350

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 (129) hide show
  1. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.d.ts +120 -13
  2. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  3. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.js +65 -50
  4. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  5. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +48 -11
  6. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.d.ts.map +1 -1
  7. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.js +10 -5
  8. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.js.map +1 -1
  9. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +6 -0
  10. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  11. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.js +1 -1
  12. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  13. package/dist/cjs/src/edge.d.ts +26 -2
  14. package/dist/cjs/src/edge.d.ts.map +1 -1
  15. package/dist/cjs/src/edge.js.map +1 -1
  16. package/dist/cjs/src/index.d.ts +1 -0
  17. package/dist/cjs/src/index.d.ts.map +1 -1
  18. package/dist/cjs/src/index.js +1 -0
  19. package/dist/cjs/src/index.js.map +1 -1
  20. package/dist/cjs/src/proto/gen/dxos/client/services.d.ts +62 -4
  21. package/dist/cjs/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  22. package/dist/cjs/src/proto/gen/dxos/client/services.js.map +1 -1
  23. package/dist/cjs/src/proto/gen/dxos/edge/calls.d.ts +27 -4
  24. package/dist/cjs/src/proto/gen/dxos/edge/calls.d.ts.map +1 -1
  25. package/dist/cjs/src/proto/gen/dxos/halo/credentials.d.ts +4 -0
  26. package/dist/cjs/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  27. package/dist/cjs/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  28. package/dist/cjs/src/proto/gen/index.d.ts +6 -2
  29. package/dist/cjs/src/proto/gen/index.d.ts.map +1 -1
  30. package/dist/cjs/src/proto/gen/index.js +1 -1
  31. package/dist/cjs/src/proto/gen/index.js.map +1 -1
  32. package/dist/cjs/src/queue.d.ts +18 -0
  33. package/dist/cjs/src/queue.d.ts.map +1 -0
  34. package/dist/cjs/src/queue.js +6 -0
  35. package/dist/cjs/src/queue.js.map +1 -0
  36. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  37. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.d.ts +120 -13
  38. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  39. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.js +63 -48
  40. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  41. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +48 -11
  42. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.d.ts.map +1 -1
  43. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.js +9 -4
  44. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.js.map +1 -1
  45. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +6 -0
  46. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  47. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.js +1 -1
  48. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  49. package/dist/esm/src/edge.d.ts +26 -2
  50. package/dist/esm/src/edge.d.ts.map +1 -1
  51. package/dist/esm/src/edge.js.map +1 -1
  52. package/dist/esm/src/feed-replication.js +0 -1
  53. package/dist/esm/src/index.d.ts +1 -0
  54. package/dist/esm/src/index.d.ts.map +1 -1
  55. package/dist/esm/src/index.js +1 -0
  56. package/dist/esm/src/index.js.map +1 -1
  57. package/dist/esm/src/proto/gen/dxos/agent/echoproxy.js +0 -1
  58. package/dist/esm/src/proto/gen/dxos/agent/epoch.js +0 -1
  59. package/dist/esm/src/proto/gen/dxos/agent/functions.js +0 -1
  60. package/dist/esm/src/proto/gen/dxos/client/services.d.ts +62 -4
  61. package/dist/esm/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  62. package/dist/esm/src/proto/gen/dxos/client/services.js.map +1 -1
  63. package/dist/esm/src/proto/gen/dxos/devtools/host.js +0 -1
  64. package/dist/esm/src/proto/gen/dxos/devtools/swarm.js +0 -1
  65. package/dist/esm/src/proto/gen/dxos/echo/feed.js +0 -1
  66. package/dist/esm/src/proto/gen/dxos/echo/model/messenger.js +0 -1
  67. package/dist/esm/src/proto/gen/dxos/echo/service.js +0 -1
  68. package/dist/esm/src/proto/gen/dxos/echo/snapshot.js +0 -1
  69. package/dist/esm/src/proto/gen/dxos/echo/timeframe.js +0 -1
  70. package/dist/esm/src/proto/gen/dxos/edge/calls.d.ts +27 -4
  71. package/dist/esm/src/proto/gen/dxos/edge/calls.d.ts.map +1 -1
  72. package/dist/esm/src/proto/gen/dxos/edge/calls.js +0 -1
  73. package/dist/esm/src/proto/gen/dxos/edge/signal.js +0 -1
  74. package/dist/esm/src/proto/gen/dxos/error.js +0 -1
  75. package/dist/esm/src/proto/gen/dxos/gravity.js +0 -1
  76. package/dist/esm/src/proto/gen/dxos/halo/credentials/auth.js +0 -1
  77. package/dist/esm/src/proto/gen/dxos/halo/credentials/identity.js +0 -1
  78. package/dist/esm/src/proto/gen/dxos/halo/credentials.d.ts +4 -0
  79. package/dist/esm/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  80. package/dist/esm/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  81. package/dist/esm/src/proto/gen/dxos/halo/keyring.js +0 -1
  82. package/dist/esm/src/proto/gen/dxos/halo/signed.js +0 -1
  83. package/dist/esm/src/proto/gen/dxos/keys.js +0 -1
  84. package/dist/esm/src/proto/gen/dxos/mesh/broadcast.js +0 -1
  85. package/dist/esm/src/proto/gen/dxos/mesh/messaging.js +0 -1
  86. package/dist/esm/src/proto/gen/dxos/mesh/muxer.js +0 -1
  87. package/dist/esm/src/proto/gen/dxos/mesh/presence.js +0 -1
  88. package/dist/esm/src/proto/gen/dxos/mesh/protocol.js +0 -1
  89. package/dist/esm/src/proto/gen/dxos/mesh/replicator.js +0 -1
  90. package/dist/esm/src/proto/gen/dxos/mesh/swarm.js +0 -1
  91. package/dist/esm/src/proto/gen/dxos/mesh/teleport/auth.js +0 -1
  92. package/dist/esm/src/proto/gen/dxos/mesh/teleport/automerge.js +0 -1
  93. package/dist/esm/src/proto/gen/dxos/mesh/teleport/blobsync.js +0 -1
  94. package/dist/esm/src/proto/gen/dxos/mesh/teleport/control.js +0 -1
  95. package/dist/esm/src/proto/gen/dxos/mesh/teleport/gossip.js +0 -1
  96. package/dist/esm/src/proto/gen/dxos/mesh/teleport/notarization.js +0 -1
  97. package/dist/esm/src/proto/gen/dxos/mesh/teleport/replicator.js +0 -1
  98. package/dist/esm/src/proto/gen/dxos/mesh/teleport.js +0 -1
  99. package/dist/esm/src/proto/gen/dxos/registry.js +0 -1
  100. package/dist/esm/src/proto/gen/dxos/service/publisher.js +0 -1
  101. package/dist/esm/src/proto/gen/dxos/service/tunnel.js +0 -1
  102. package/dist/esm/src/proto/gen/dxos/type.js +0 -1
  103. package/dist/esm/src/proto/gen/dxos/value.js +0 -1
  104. package/dist/esm/src/proto/gen/example/testing/data.js +0 -1
  105. package/dist/esm/src/proto/gen/example/testing/rpc.js +0 -1
  106. package/dist/esm/src/proto/gen/index.d.ts +6 -2
  107. package/dist/esm/src/proto/gen/index.d.ts.map +1 -1
  108. package/dist/esm/src/proto/gen/index.js +1 -1
  109. package/dist/esm/src/proto/gen/index.js.map +1 -1
  110. package/dist/esm/src/proto/types.js +0 -1
  111. package/dist/esm/src/queue.d.ts +18 -0
  112. package/dist/esm/src/queue.d.ts.map +1 -0
  113. package/dist/esm/src/queue.js +4 -0
  114. package/dist/esm/src/queue.js.map +1 -0
  115. package/dist/esm/src/types.js +0 -1
  116. package/package.json +7 -7
  117. package/src/buf/proto/gen/dxos/client/services_pb.ts +181 -59
  118. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +55 -12
  119. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +8 -1
  120. package/src/edge.ts +30 -2
  121. package/src/index.ts +1 -0
  122. package/src/proto/dxos/client/services.proto +33 -4
  123. package/src/proto/dxos/edge/calls.proto +24 -4
  124. package/src/proto/dxos/halo/credentials.proto +2 -0
  125. package/src/proto/gen/dxos/client/services.ts +62 -4
  126. package/src/proto/gen/dxos/edge/calls.ts +27 -4
  127. package/src/proto/gen/dxos/halo/credentials.ts +4 -0
  128. package/src/proto/gen/index.ts +7 -3
  129. package/src/queue.ts +31 -0
@@ -15,7 +15,7 @@ import type { Message } from "@bufbuild/protobuf";
15
15
  * Describes the file dxos/edge/calls.proto.
16
16
  */
17
17
  export const file_dxos_edge_calls: GenFile = /*@__PURE__*/
18
- fileDesc("ChVkeG9zL2VkZ2UvY2FsbHMucHJvdG8SD2R4b3MuZWRnZS5jYWxscyKGAgoGVHJhY2tzEhIKBWF1ZGlvGAEgASgJSACIAQESGgoNYXVkaW9fZW5hYmxlZBgCIAEoCEgBiAEBEhIKBXZpZGVvGAMgASgJSAKIAQESGgoNdmlkZW9fZW5hYmxlZBgEIAEoCEgDiAEBEhgKC3NjcmVlbnNoYXJlGAUgASgJSASIAQESIQoUc2NyZWVuX3NoYXJlX2VuYWJsZWQYBiABKAhIBYgBAUIICgZfYXVkaW9CEAoOX2F1ZGlvX2VuYWJsZWRCCAoGX3ZpZGVvQhAKDl92aWRlb19lbmFibGVkQg4KDF9zY3JlZW5zaGFyZUIXChVfc2NyZWVuX3NoYXJlX2VuYWJsZWQixQEKCVVzZXJTdGF0ZRIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEiMKFnRyYW5zY2VpdmVyX3Nlc3Npb25faWQYAyABKAlIAIgBARITCgtyYWlzZWRfaGFuZBgEIAEoCBIQCghzcGVha2luZxgFIAEoCBIOCgZqb2luZWQYBiABKAgSJwoGdHJhY2tzGAcgASgLMhcuZHhvcy5lZGdlLmNhbGxzLlRyYWNrc0IZChdfdHJhbnNjZWl2ZXJfc2Vzc2lvbl9pZCJJCglSb29tU3RhdGUSEQoJbWVldGluZ0lkGAEgASgJEikKBXVzZXJzGAIgAygLMhouZHhvcy5lZGdlLmNhbGxzLlVzZXJTdGF0ZWIGcHJvdG8z", [file_dxos_keys]);
18
+ fileDesc("ChVkeG9zL2VkZ2UvY2FsbHMucHJvdG8SD2R4b3MuZWRnZS5jYWxscyKEAgoGVHJhY2tzEhIKBWF1ZGlvGAEgASgJSACIAQESGgoNYXVkaW9fZW5hYmxlZBgCIAEoCEgBiAEBEhIKBXZpZGVvGAMgASgJSAKIAQESGgoNdmlkZW9fZW5hYmxlZBgEIAEoCEgDiAEBEhgKC3NjcmVlbnNoYXJlGAUgASgJSASIAQESIAoTc2NyZWVuc2hhcmVfZW5hYmxlZBgGIAEoCEgFiAEBQggKBl9hdWRpb0IQCg5fYXVkaW9fZW5hYmxlZEIICgZfdmlkZW9CEAoOX3ZpZGVvX2VuYWJsZWRCDgoMX3NjcmVlbnNoYXJlQhYKFF9zY3JlZW5zaGFyZV9lbmFibGVkIpMCCglVc2VyU3RhdGUSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIjChZ0cmFuc2NlaXZlcl9zZXNzaW9uX2lkGAMgASgJSACIAQESEwoLcmFpc2VkX2hhbmQYBCABKAgSEAoIc3BlYWtpbmcYBSABKAgSDgoGam9pbmVkGAYgASgIEicKBnRyYWNrcxgHIAEoCzIXLmR4b3MuZWRnZS5jYWxscy5UcmFja3MSOgoNdHJhbnNjcmlwdGlvbhgIIAEoCzIeLmR4b3MuZWRnZS5jYWxscy5UcmFuc2NyaXB0aW9uSAGIAQFCGQoXX3RyYW5zY2VpdmVyX3Nlc3Npb25faWRCEAoOX3RyYW5zY3JpcHRpb24icQoNVHJhbnNjcmlwdGlvbhIPCgdlbmFibGVkGAEgASgIEjwKEWxhbXBvcnRfdGltZXN0YW1wGAIgASgLMiEuZHhvcy5lZGdlLmNhbGxzLkxhbXBvcnRUaW1lc3RhbXASEQoJcXVldWVfZHhuGAMgASgJIi8KEExhbXBvcnRUaW1lc3RhbXASDwoHdmVyc2lvbhgBIAEoBRIKCgJpZBgCIAEoCWIGcHJvdG8z", [file_dxos_keys]);
19
19
 
20
20
  /**
21
21
  * @generated from message dxos.edge.calls.Tracks
@@ -47,9 +47,9 @@ export type Tracks = Message<"dxos.edge.calls.Tracks"> & {
47
47
  screenshare?: string;
48
48
 
49
49
  /**
50
- * @generated from field: optional bool screen_share_enabled = 6;
50
+ * @generated from field: optional bool screenshare_enabled = 6;
51
51
  */
52
- screenShareEnabled?: boolean;
52
+ screenshareEnabled?: boolean;
53
53
  };
54
54
 
55
55
  /**
@@ -97,6 +97,11 @@ export type UserState = Message<"dxos.edge.calls.UserState"> & {
97
97
  * @generated from field: dxos.edge.calls.Tracks tracks = 7;
98
98
  */
99
99
  tracks?: Tracks;
100
+
101
+ /**
102
+ * @generated from field: optional dxos.edge.calls.Transcription transcription = 8;
103
+ */
104
+ transcription?: Transcription;
100
105
  };
101
106
 
102
107
  /**
@@ -107,24 +112,62 @@ export const UserStateSchema: GenMessage<UserState> = /*@__PURE__*/
107
112
  messageDesc(file_dxos_edge_calls, 1);
108
113
 
109
114
  /**
110
- * @generated from message dxos.edge.calls.RoomState
115
+ * *
116
+ * Transcription settings.
117
+ * It will be merged across all users in the room based on the Lamport timestamp (last one wins).
118
+ *
119
+ * @generated from message dxos.edge.calls.Transcription
111
120
  */
112
- export type RoomState = Message<"dxos.edge.calls.RoomState"> & {
121
+ export type Transcription = Message<"dxos.edge.calls.Transcription"> & {
122
+ /**
123
+ * @generated from field: bool enabled = 1;
124
+ */
125
+ enabled: boolean;
126
+
113
127
  /**
114
- * @generated from field: string meetingId = 1;
128
+ * @generated from field: dxos.edge.calls.LamportTimestamp lamport_timestamp = 2;
115
129
  */
116
- meetingId: string;
130
+ lamportTimestamp?: LamportTimestamp;
117
131
 
118
132
  /**
119
- * @generated from field: repeated dxos.edge.calls.UserState users = 2;
133
+ * *
134
+ * Transcription queue DXN.
135
+ *
136
+ * @generated from field: string queue_dxn = 3;
120
137
  */
121
- users: UserState[];
138
+ queueDxn: string;
122
139
  };
123
140
 
124
141
  /**
125
- * Describes the message dxos.edge.calls.RoomState.
126
- * Use `create(RoomStateSchema)` to create a new message.
142
+ * Describes the message dxos.edge.calls.Transcription.
143
+ * Use `create(TranscriptionSchema)` to create a new message.
127
144
  */
128
- export const RoomStateSchema: GenMessage<RoomState> = /*@__PURE__*/
145
+ export const TranscriptionSchema: GenMessage<Transcription> = /*@__PURE__*/
129
146
  messageDesc(file_dxos_edge_calls, 2);
130
147
 
148
+ /**
149
+ * *
150
+ * Lamport Timestamp.
151
+ * @see https://en.wikipedia.org/wiki/Lamport_timestamp
152
+ *
153
+ * @generated from message dxos.edge.calls.LamportTimestamp
154
+ */
155
+ export type LamportTimestamp = Message<"dxos.edge.calls.LamportTimestamp"> & {
156
+ /**
157
+ * @generated from field: int32 version = 1;
158
+ */
159
+ version: number;
160
+
161
+ /**
162
+ * @generated from field: string id = 2;
163
+ */
164
+ id: string;
165
+ };
166
+
167
+ /**
168
+ * Describes the message dxos.edge.calls.LamportTimestamp.
169
+ * Use `create(LamportTimestampSchema)` to create a new message.
170
+ */
171
+ export const LamportTimestampSchema: GenMessage<LamportTimestamp> = /*@__PURE__*/
172
+ messageDesc(file_dxos_edge_calls, 3);
173
+
@@ -20,7 +20,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
20
20
  * Describes the file dxos/halo/credentials.proto.
21
21
  */
22
22
  export const file_dxos_halo_credentials: GenFile = /*@__PURE__*/
23
- fileDesc("ChtkeG9zL2hhbG8vY3JlZGVudGlhbHMucHJvdG8SFWR4b3MuaGFsby5jcmVkZW50aWFscyI3CgxTcGFjZUdlbmVzaXMSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleSKRAwoLU3BhY2VNZW1iZXISJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI1CgRyb2xlGAIgASgOMicuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlNwYWNlTWVtYmVyLlJvbGUSPAoHcHJvZmlsZRgDIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBARIuChBnZW5lc2lzX2ZlZWRfa2V5GAQgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI7ChhpbnZpdGF0aW9uX2NyZWRlbnRpYWxfaWQYBSABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SAGIAQEiTgoEUm9sZRILCgdJTlZBTElEEAASCQoFQURNSU4QARIKCgZFRElUT1IQAhIKCgZSRUFERVIQAxIJCgVPV05FUhAEEgsKB1JFTU9WRUQQBUIKCghfcHJvZmlsZUIbChlfaW52aXRhdGlvbl9jcmVkZW50aWFsX2lkIlkKDU1lbWJlclByb2ZpbGUSPAoHcHJvZmlsZRgDIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBAUIKCghfcHJvZmlsZSJoChBBdXRob3JpemVkRGV2aWNlEioKDGlkZW50aXR5X2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGV2aWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkihgIKDEFkbWl0dGVkRmVlZBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EioKDGlkZW50aXR5X2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGV2aWNlX2tleRgDIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSRAoLZGVzaWduYXRpb24YBCABKA4yLy5keG9zLmhhbG8uY3JlZGVudGlhbHMuQWRtaXR0ZWRGZWVkLkRlc2lnbmF0aW9uIjEKC0Rlc2lnbmF0aW9uEgsKB0dFTkVSQUwQABILCgdDT05UUk9MEAESCAoEREFUQRACIuwBCgVFcG9jaBIOCgZudW1iZXIYASABKA0SLgoLcHJldmlvdXNfaWQYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SACIAQESNwoJdGltZWZyYW1lGAogASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3ISGQoMc25hcHNob3RfY2lkGAsgASgJSAGIAQESGwoOYXV0b21lcmdlX3Jvb3QYDCABKAlIAogBAUIOCgxfcHJldmlvdXNfaWRCDwoNX3NuYXBzaG90X2NpZEIRCg9fYXV0b21lcmdlX3Jvb3QiXwoJSGFsb1NwYWNlEioKDGlkZW50aXR5X2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSJgoIaGFsb19rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5ImoKEElkZW50aXR5UmVjb3ZlcnkSKgoMaWRlbnRpdHlfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIqCgxyZWNvdmVyeV9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5IpoBCg9Qcm9maWxlRG9jdW1lbnQSGQoMZGlzcGxheV9uYW1lGAEgASgJSACIAQESFwoKYXZhdGFyX2NpZBgCIAEoCUgBiAEBEioKBGRhdGEYCiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQFCDwoNX2Rpc3BsYXlfbmFtZUINCgtfYXZhdGFyX2NpZEIHCgVfZGF0YSJKCg9JZGVudGl0eVByb2ZpbGUSNwoHcHJvZmlsZRgBIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnQiuAIKFURldmljZVByb2ZpbGVEb2N1bWVudBISCgVsYWJlbBgBIAEoCUgAiAEBEhUKCHBsYXRmb3JtGAIgASgJSAGIAQESHQoQcGxhdGZvcm1fdmVyc2lvbhgDIAEoCUgCiAEBEhkKDGFyY2hpdGVjdHVyZRgEIAEoCUgDiAEBEg8KAm9zGAUgASgJSASIAQESFwoKb3NfdmVyc2lvbhgGIAEoCUgFiAEBEjQKBHR5cGUYByABKA4yIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuRGV2aWNlVHlwZUgGiAEBQggKBl9sYWJlbEILCglfcGxhdGZvcm1CEwoRX3BsYXRmb3JtX3ZlcnNpb25CDwoNX2FyY2hpdGVjdHVyZUIFCgNfb3NCDQoLX29zX3ZlcnNpb25CBwoFX3R5cGUiTgoNRGV2aWNlUHJvZmlsZRI9Cgdwcm9maWxlGAEgASgLMiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudCIgCgxEZWZhdWx0U3BhY2USEAoIc3BhY2VfaWQYASABKAkidgoKS3ViZUFjY2VzcxImCghrdWJlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKgoMaWRlbnRpdHlfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIUCgxjYXBhYmlsaXRpZXMYAyADKAki2wEKDVNlcnZpY2VBY2Nlc3MSEwoLc2VydmVyX25hbWUYASABKAkSNQoPc2VydmVyX21ldGFkYXRhGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEigKCnNlcnZlcl9rZXkYAyABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EioKDGlkZW50aXR5X2tleRgEIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSFAoMY2FwYWJpbGl0aWVzGAUgAygJQhIKEF9zZXJ2ZXJfbWV0YWRhdGEiJQoHS2V5SW5mbxIRCgRuYW1lGAEgASgJSACIAQFCBwoFX25hbWUiBgoEQXV0aCJSCgVDbGFpbRIgCgJpZBgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSJwoJYXNzZXJ0aW9uGAIgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueSLXAQoFUHJvb2YSDAoEdHlwZRgBIAEoCRIxCg1jcmVhdGlvbl9kYXRlGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIkCgZzaWduZXIYAyABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhIKBW5vbmNlGAQgASgMSACIAQESDQoFdmFsdWUYBSABKAwSMAoFY2hhaW4YBiABKAsyHC5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ2hhaW5IAYgBAUIICgZfbm9uY2VCCAoGX2NoYWluIj4KBUNoYWluEjUKCmNyZWRlbnRpYWwYASABKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbCKxAwoKQ3JlZGVudGlhbBIlCgJpZBgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAIgBARIkCgZpc3N1ZXIYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EjEKDWlzc3VhbmNlX2RhdGUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjgKD2V4cGlyYXRpb25fZGF0ZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIbCg5leHBpcmF0aW9uX3JlZhgFIAEoDEgCiAEBEi0KB3N1YmplY3QYCiABKAsyHC5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ2xhaW0SMAoFcHJvb2YYCyABKAsyHC5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvb2ZIA4gBARIzChVwYXJlbnRfY3JlZGVudGlhbF9pZHMYDCADKAsyFC5keG9zLmtleXMuUHVibGljS2V5QgUKA19pZEISChBfZXhwaXJhdGlvbl9kYXRlQhEKD19leHBpcmF0aW9uX3JlZkIICgZfcHJvb2YidAoMUHJlc2VudGF0aW9uEjYKC2NyZWRlbnRpYWxzGAEgAygLMiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwSLAoGcHJvb2ZzGAIgAygLMhwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb29mKlwKCkRldmljZVR5cGUSCwoHVU5LTk9XThAAEgsKB0JST1dTRVIQARIKCgZOQVRJVkUQAhIJCgVBR0VOVBADEhEKDUFHRU5UX01BTkFHRUQQBBIKCgZNT0JJTEUQBUI2WjRnaXRodWIuY29tL2R4b3MvZHhvcy9wcm90by9kZWYvZHhvcy9oYWxvL2NyZWRlbnRpYWxzYgZwcm90bzM", [file_google_protobuf_any, file_google_protobuf_struct, file_google_protobuf_timestamp, file_dxos_echo_timeframe, file_dxos_keys]);
23
+ fileDesc("ChtkeG9zL2hhbG8vY3JlZGVudGlhbHMucHJvdG8SFWR4b3MuaGFsby5jcmVkZW50aWFscyI3CgxTcGFjZUdlbmVzaXMSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleSKRAwoLU3BhY2VNZW1iZXISJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI1CgRyb2xlGAIgASgOMicuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlNwYWNlTWVtYmVyLlJvbGUSPAoHcHJvZmlsZRgDIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBARIuChBnZW5lc2lzX2ZlZWRfa2V5GAQgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI7ChhpbnZpdGF0aW9uX2NyZWRlbnRpYWxfaWQYBSABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SAGIAQEiTgoEUm9sZRILCgdJTlZBTElEEAASCQoFQURNSU4QARIKCgZFRElUT1IQAhIKCgZSRUFERVIQAxIJCgVPV05FUhAEEgsKB1JFTU9WRUQQBUIKCghfcHJvZmlsZUIbChlfaW52aXRhdGlvbl9jcmVkZW50aWFsX2lkIlkKDU1lbWJlclByb2ZpbGUSPAoHcHJvZmlsZRgDIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBAUIKCghfcHJvZmlsZSJoChBBdXRob3JpemVkRGV2aWNlEioKDGlkZW50aXR5X2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGV2aWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkihgIKDEFkbWl0dGVkRmVlZBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EioKDGlkZW50aXR5X2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGV2aWNlX2tleRgDIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSRAoLZGVzaWduYXRpb24YBCABKA4yLy5keG9zLmhhbG8uY3JlZGVudGlhbHMuQWRtaXR0ZWRGZWVkLkRlc2lnbmF0aW9uIjEKC0Rlc2lnbmF0aW9uEgsKB0dFTkVSQUwQABILCgdDT05UUk9MEAESCAoEREFUQRACIuwBCgVFcG9jaBIOCgZudW1iZXIYASABKA0SLgoLcHJldmlvdXNfaWQYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SACIAQESNwoJdGltZWZyYW1lGAogASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3ISGQoMc25hcHNob3RfY2lkGAsgASgJSAGIAQESGwoOYXV0b21lcmdlX3Jvb3QYDCABKAlIAogBAUIOCgxfcHJldmlvdXNfaWRCDwoNX3NuYXBzaG90X2NpZEIRCg9fYXV0b21lcmdlX3Jvb3QiXwoJSGFsb1NwYWNlEioKDGlkZW50aXR5X2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSJgoIaGFsb19rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5In0KEElkZW50aXR5UmVjb3ZlcnkSKgoMaWRlbnRpdHlfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIqCgxyZWNvdmVyeV9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhEKCWFsZ29yaXRobRgDIAEoCSKaAQoPUHJvZmlsZURvY3VtZW50EhkKDGRpc3BsYXlfbmFtZRgBIAEoCUgAiAEBEhcKCmF2YXRhcl9jaWQYAiABKAlIAYgBARIqCgRkYXRhGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBQg8KDV9kaXNwbGF5X25hbWVCDQoLX2F2YXRhcl9jaWRCBwoFX2RhdGEiSgoPSWRlbnRpdHlQcm9maWxlEjcKB3Byb2ZpbGUYASABKAsyJi5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvZmlsZURvY3VtZW50IrgCChVEZXZpY2VQcm9maWxlRG9jdW1lbnQSEgoFbGFiZWwYASABKAlIAIgBARIVCghwbGF0Zm9ybRgCIAEoCUgBiAEBEh0KEHBsYXRmb3JtX3ZlcnNpb24YAyABKAlIAogBARIZCgxhcmNoaXRlY3R1cmUYBCABKAlIA4gBARIPCgJvcxgFIAEoCUgEiAEBEhcKCm9zX3ZlcnNpb24YBiABKAlIBYgBARI0CgR0eXBlGAcgASgOMiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVR5cGVIBogBAUIICgZfbGFiZWxCCwoJX3BsYXRmb3JtQhMKEV9wbGF0Zm9ybV92ZXJzaW9uQg8KDV9hcmNoaXRlY3R1cmVCBQoDX29zQg0KC19vc192ZXJzaW9uQgcKBV90eXBlIk4KDURldmljZVByb2ZpbGUSPQoHcHJvZmlsZRgBIAEoCzIsLmR4b3MuaGFsby5jcmVkZW50aWFscy5EZXZpY2VQcm9maWxlRG9jdW1lbnQiIAoMRGVmYXVsdFNwYWNlEhAKCHNwYWNlX2lkGAEgASgJInYKCkt1YmVBY2Nlc3MSJgoIa3ViZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EioKDGlkZW50aXR5X2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSFAoMY2FwYWJpbGl0aWVzGAMgAygJItsBCg1TZXJ2aWNlQWNjZXNzEhMKC3NlcnZlcl9uYW1lGAEgASgJEjUKD3NlcnZlcl9tZXRhZGF0YRgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBARIoCgpzZXJ2ZXJfa2V5GAMgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIqCgxpZGVudGl0eV9rZXkYBCABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhQKDGNhcGFiaWxpdGllcxgFIAMoCUISChBfc2VydmVyX21ldGFkYXRhIiUKB0tleUluZm8SEQoEbmFtZRgBIAEoCUgAiAEBQgcKBV9uYW1lIgYKBEF1dGgiUgoFQ2xhaW0SIAoCaWQYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EicKCWFzc2VydGlvbhgCIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5Bbnki1wEKBVByb29mEgwKBHR5cGUYASABKAkSMQoNY3JlYXRpb25fZGF0ZRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJAoGc2lnbmVyGAMgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRISCgVub25jZRgEIAEoDEgAiAEBEg0KBXZhbHVlGAUgASgMEjAKBWNoYWluGAYgASgLMhwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNoYWluSAGIAQFCCAoGX25vbmNlQggKBl9jaGFpbiI+CgVDaGFpbhI1CgpjcmVkZW50aWFsGAEgASgLMiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwisQMKCkNyZWRlbnRpYWwSJQoCaWQYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SACIAQESJAoGaXNzdWVyGAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIxCg1pc3N1YW5jZV9kYXRlGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI4Cg9leHBpcmF0aW9uX2RhdGUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESGwoOZXhwaXJhdGlvbl9yZWYYBSABKAxIAogBARItCgdzdWJqZWN0GAogASgLMhwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNsYWltEjAKBXByb29mGAsgASgLMhwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb29mSAOIAQESMwoVcGFyZW50X2NyZWRlbnRpYWxfaWRzGAwgAygLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUIFCgNfaWRCEgoQX2V4cGlyYXRpb25fZGF0ZUIRCg9fZXhwaXJhdGlvbl9yZWZCCAoGX3Byb29mInQKDFByZXNlbnRhdGlvbhI2CgtjcmVkZW50aWFscxgBIAMoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsEiwKBnByb29mcxgCIAMoCzIcLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9vZipcCgpEZXZpY2VUeXBlEgsKB1VOS05PV04QABILCgdCUk9XU0VSEAESCgoGTkFUSVZFEAISCQoFQUdFTlQQAxIRCg1BR0VOVF9NQU5BR0VEEAQSCgoGTU9CSUxFEAVCNlo0Z2l0aHViLmNvbS9keG9zL2R4b3MvcHJvdG8vZGVmL2R4b3MvaGFsby9jcmVkZW50aWFsc2IGcHJvdG8z", [file_google_protobuf_any, file_google_protobuf_struct, file_google_protobuf_timestamp, file_dxos_echo_timeframe, file_dxos_keys]);
24
24
 
25
25
  /**
26
26
  * [ASSERTION]
@@ -357,6 +357,13 @@ export type IdentityRecovery = Message<"dxos.halo.credentials.IdentityRecovery">
357
357
  * @generated from field: dxos.keys.PublicKey recovery_key = 2;
358
358
  */
359
359
  recoveryKey?: PublicKey;
360
+
361
+ /**
362
+ * / Algorithm used to derive the recovery key (e.g., ED25519, ES256, etc.).
363
+ *
364
+ * @generated from field: string algorithm = 3;
365
+ */
366
+ algorithm: string;
360
367
  };
361
368
 
362
369
  /**
package/src/edge.ts CHANGED
@@ -44,6 +44,12 @@ export type GetNotarizationResponseBody = {
44
44
  awaitingNotarization: { credentials: string[] };
45
45
  };
46
46
 
47
+ export type ExecuteWorkflowResponseBody = {
48
+ success: boolean;
49
+ reason?: string;
50
+ output?: any;
51
+ };
52
+
47
53
  export type PostNotarizationRequestBody = {
48
54
  credentials: string[];
49
55
  };
@@ -64,10 +70,24 @@ export type JoinSpaceResponseBody = {
64
70
  };
65
71
 
66
72
  export type RecoverIdentityRequest = {
67
- recoveryKey: string;
73
+ /**
74
+ * Required if recoveryKey is not provided.
75
+ */
76
+ identityDid?: string;
77
+ /**
78
+ * Required if identityDid is not provided.
79
+ */
80
+ recoveryKey?: string;
68
81
  deviceKey: string;
69
82
  controlFeedKey: string;
70
- signature?: string;
83
+ signature?:
84
+ | string
85
+ // This is the format of the signature from the WebAuthn authenticator.
86
+ | {
87
+ signature: string;
88
+ clientDataJson: string;
89
+ authenticatorData: string;
90
+ };
71
91
  };
72
92
 
73
93
  export type RecoverIdentityResponseBody = {
@@ -105,7 +125,15 @@ export type UploadFunctionResponseBody = {
105
125
  functionId: string;
106
126
  version: string;
107
127
  meta: {
128
+ description?: string;
129
+ /**
130
+ * JSON Schema for the input of the function.
131
+ */
108
132
  inputSchema?: object;
133
+ /**
134
+ * JSON Schema for the output of the function.
135
+ */
136
+ outputSchema?: object;
109
137
  };
110
138
  };
111
139
 
package/src/index.ts CHANGED
@@ -11,3 +11,4 @@ export * from './query.js';
11
11
  export * from './profile-archive.js';
12
12
  export * from './automerge.js';
13
13
  export * from './edge.js';
14
+ export * from './queue.js';
@@ -118,17 +118,45 @@ service SystemService {
118
118
  //
119
119
 
120
120
  message Identity {
121
+ string did = 4;
121
122
  dxos.keys.PublicKey identity_key = 1;
122
123
  optional dxos.keys.PublicKey space_key = 2;
123
124
  optional halo.credentials.ProfileDocument profile = 3;
124
125
  }
125
126
 
127
+ message RequestRecoveryChallengeResponse {
128
+ dxos.keys.PublicKey device_key = 1;
129
+ dxos.keys.PublicKey control_feed_key = 2;
130
+ string challenge = 3;
131
+ }
132
+
126
133
  message RecoverIdentityRequest {
127
- string seedphrase = 1;
134
+ message ExternalSignature {
135
+ string identity_did = 1;
136
+ dxos.keys.PublicKey device_key = 2;
137
+ dxos.keys.PublicKey control_feed_key = 3;
138
+ bytes signature = 4;
139
+ // These are required to verify the signature from the WebAuthn authenticator.
140
+ optional bytes client_data_json = 5;
141
+ optional bytes authenticator_data = 6;
142
+ }
143
+
144
+ oneof request {
145
+ string recovery_code = 1;
146
+ ExternalSignature external = 2;
147
+ }
148
+ }
149
+
150
+ message CreateRecoveryCredentialRequest {
151
+ /// Optional recovery key. If not provided, a new key will be generated.
152
+ optional dxos.keys.PublicKey recovery_key = 1;
153
+
154
+ /// Algorithm used to generate the recovery key.
155
+ optional string algorithm = 2;
128
156
  }
129
157
 
130
- message CreateRecoveryPhraseResponse {
131
- string seedphrase = 1;
158
+ message CreateRecoveryCredentialResponse {
159
+ optional string recovery_code = 1;
132
160
  }
133
161
 
134
162
  message QueryIdentityResponse {
@@ -150,8 +178,9 @@ message CreateIdentityRequest {
150
178
  // TODO(wittjosiah): Align pluralization with other services.
151
179
  service IdentityService {
152
180
  rpc CreateIdentity(CreateIdentityRequest) returns (Identity);
181
+ rpc RequestRecoveryChallenge(google.protobuf.Empty) returns (RequestRecoveryChallengeResponse);
153
182
  rpc RecoverIdentity(RecoverIdentityRequest) returns (Identity);
154
- rpc CreateRecoveryPhrase(google.protobuf.Empty) returns (CreateRecoveryPhraseResponse);
183
+ rpc CreateRecoveryCredential(CreateRecoveryCredentialRequest) returns (CreateRecoveryCredentialResponse);
155
184
  rpc QueryIdentity(google.protobuf.Empty) returns (stream QueryIdentityResponse);
156
185
  rpc UpdateProfile(halo.credentials.ProfileDocument) returns (Identity);
157
186
  rpc SignPresentation(SignPresentationRequest) returns (dxos.halo.credentials.Presentation);
@@ -14,7 +14,7 @@ message Tracks {
14
14
  optional string video = 3;
15
15
  optional bool video_enabled = 4;
16
16
  optional string screenshare = 5;
17
- optional bool screen_share_enabled = 6;
17
+ optional bool screenshare_enabled = 6;
18
18
  }
19
19
 
20
20
  message UserState {
@@ -25,9 +25,29 @@ message UserState {
25
25
  bool speaking = 5;
26
26
  bool joined = 6;
27
27
  Tracks tracks = 7;
28
+ optional Transcription transcription = 8;
28
29
  }
29
30
 
30
- message RoomState {
31
- string meetingId = 1;
32
- repeated UserState users = 2;
31
+ /**
32
+ * Transcription settings.
33
+ * It will be merged across all users in the room based on the Lamport timestamp (last one wins).
34
+ */
35
+ message Transcription {
36
+ bool enabled = 1;
37
+
38
+ LamportTimestamp lamport_timestamp = 2;
39
+
40
+ /**
41
+ * Transcription queue DXN.
42
+ */
43
+ string queue_dxn = 3;
44
+ }
45
+
46
+ /**
47
+ * Lamport Timestamp.
48
+ * @see https://en.wikipedia.org/wiki/Lamport_timestamp
49
+ */
50
+ message LamportTimestamp {
51
+ int32 version = 1;
52
+ string id = 2;
33
53
  }
@@ -139,6 +139,8 @@ message IdentityRecovery {
139
139
  dxos.keys.PublicKey identity_key = 1;
140
140
  /// Public key derived from the recovery seedphrase.
141
141
  dxos.keys.PublicKey recovery_key = 2;
142
+ /// Algorithm used to derive the recovery key (e.g., ED25519, ES256, etc.).
143
+ string algorithm = 3;
142
144
  }
143
145
 
144
146
  message ProfileDocument {
@@ -593,6 +593,7 @@ export interface SystemService {
593
593
  * {@link file://./../../../dxos/client/services.proto}
594
594
  */
595
595
  export interface Identity {
596
+ did: string;
596
597
  identityKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
597
598
  /**
598
599
  * Options:
@@ -605,19 +606,75 @@ export interface Identity {
605
606
  */
606
607
  profile?: dxos_halo_credentials.ProfileDocument;
607
608
  }
609
+ /**
610
+ * Defined in:
611
+ * {@link file://./../../../dxos/client/services.proto}
612
+ */
613
+ export interface RequestRecoveryChallengeResponse {
614
+ deviceKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
615
+ controlFeedKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
616
+ challenge: string;
617
+ }
608
618
  /**
609
619
  * Defined in:
610
620
  * {@link file://./../../../dxos/client/services.proto}
611
621
  */
612
622
  export interface RecoverIdentityRequest {
613
- seedphrase: string;
623
+ recoveryCode?: string;
624
+ external?: RecoverIdentityRequest.ExternalSignature;
625
+ }
626
+ export namespace RecoverIdentityRequest {
627
+ /**
628
+ * Defined in:
629
+ * {@link file://./../../../dxos/client/services.proto}
630
+ */
631
+ export interface ExternalSignature {
632
+ identityDid: string;
633
+ deviceKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
634
+ controlFeedKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
635
+ signature: Uint8Array;
636
+ /**
637
+ * Options:
638
+ * - proto3_optional = true
639
+ */
640
+ clientDataJson?: Uint8Array;
641
+ /**
642
+ * Options:
643
+ * - proto3_optional = true
644
+ */
645
+ authenticatorData?: Uint8Array;
646
+ }
614
647
  }
615
648
  /**
616
649
  * Defined in:
617
650
  * {@link file://./../../../dxos/client/services.proto}
618
651
  */
619
- export interface CreateRecoveryPhraseResponse {
620
- seedphrase: string;
652
+ export interface CreateRecoveryCredentialRequest {
653
+ /**
654
+ * Optional recovery key. If not provided, a new key will be generated.
655
+ *
656
+ * Options:
657
+ * - proto3_optional = true
658
+ */
659
+ recoveryKey?: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
660
+ /**
661
+ * Algorithm used to generate the recovery key.
662
+ *
663
+ * Options:
664
+ * - proto3_optional = true
665
+ */
666
+ algorithm?: string;
667
+ }
668
+ /**
669
+ * Defined in:
670
+ * {@link file://./../../../dxos/client/services.proto}
671
+ */
672
+ export interface CreateRecoveryCredentialResponse {
673
+ /**
674
+ * Options:
675
+ * - proto3_optional = true
676
+ */
677
+ recoveryCode?: string;
621
678
  }
622
679
  /**
623
680
  * Defined in:
@@ -664,8 +721,9 @@ export interface CreateIdentityRequest {
664
721
  */
665
722
  export interface IdentityService {
666
723
  createIdentity: (request: CreateIdentityRequest, options?: RequestOptions) => Promise<Identity>;
724
+ requestRecoveryChallenge: (request: void, options?: RequestOptions) => Promise<RequestRecoveryChallengeResponse>;
667
725
  recoverIdentity: (request: RecoverIdentityRequest, options?: RequestOptions) => Promise<Identity>;
668
- createRecoveryPhrase: (request: void, options?: RequestOptions) => Promise<CreateRecoveryPhraseResponse>;
726
+ createRecoveryCredential: (request: CreateRecoveryCredentialRequest, options?: RequestOptions) => Promise<CreateRecoveryCredentialResponse>;
669
727
  queryIdentity: (request: void, options?: RequestOptions) => Stream<QueryIdentityResponse>;
670
728
  updateProfile: (request: dxos_halo_credentials.ProfileDocument, options?: RequestOptions) => Promise<Identity>;
671
729
  signPresentation: (request: SignPresentationRequest, options?: RequestOptions) => Promise<dxos_halo_credentials.Presentation>;
@@ -99,7 +99,7 @@ export interface Tracks {
99
99
  * Options:
100
100
  * - proto3_optional = true
101
101
  */
102
- screenShareEnabled?: boolean;
102
+ screenshareEnabled?: boolean;
103
103
  }
104
104
  /**
105
105
  * Defined in:
@@ -117,12 +117,35 @@ export interface UserState {
117
117
  speaking: boolean;
118
118
  joined: boolean;
119
119
  tracks: Tracks;
120
+ /**
121
+ * Options:
122
+ * - proto3_optional = true
123
+ */
124
+ transcription?: Transcription;
125
+ }
126
+ /**
127
+ * Transcription settings.
128
+ * It will be merged across all users in the room based on the Lamport timestamp (last one wins).
129
+ *
130
+ * Defined in:
131
+ * {@link file://./../../../dxos/edge/calls.proto}
132
+ */
133
+ export interface Transcription {
134
+ enabled: boolean;
135
+ lamportTimestamp: LamportTimestamp;
136
+ /**
137
+ * Transcription queue DXN.
138
+ */
139
+ queueDxn: string;
120
140
  }
121
141
  /**
142
+ * Lamport Timestamp.
143
+ * @see https://en.wikipedia.org/wiki/Lamport_timestamp
144
+ *
122
145
  * Defined in:
123
146
  * {@link file://./../../../dxos/edge/calls.proto}
124
147
  */
125
- export interface RoomState {
126
- meetingId: string;
127
- users?: UserState[];
148
+ export interface LamportTimestamp {
149
+ version: number;
150
+ id: string;
128
151
  }
@@ -219,6 +219,10 @@ export interface IdentityRecovery {
219
219
  * Public key derived from the recovery seedphrase.
220
220
  */
221
221
  recoveryKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
222
+ /**
223
+ * Algorithm used to derive the recovery key (e.g., ED25519, ES256, etc.).
224
+ */
225
+ algorithm: string;
222
226
  }
223
227
  /**
224
228
  * Defined in: