@moltzap/protocol 2026.503.3 → 2026.504.0

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 (253) hide show
  1. package/dist/brands.d.ts +11 -0
  2. package/dist/brands.d.ts.map +1 -0
  3. package/dist/brands.js +14 -0
  4. package/dist/brands.js.map +1 -0
  5. package/dist/helpers.d.ts +29 -26
  6. package/dist/helpers.d.ts.map +1 -1
  7. package/dist/helpers.js +34 -16
  8. package/dist/helpers.js.map +1 -1
  9. package/dist/index.d.ts +6 -3
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +6 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/internal/ajv.d.ts +5 -0
  14. package/dist/internal/ajv.d.ts.map +1 -0
  15. package/dist/internal/ajv.js +22 -0
  16. package/dist/internal/ajv.js.map +1 -0
  17. package/dist/notification.d.ts +14 -0
  18. package/dist/notification.d.ts.map +1 -0
  19. package/dist/notification.js +11 -0
  20. package/dist/notification.js.map +1 -0
  21. package/dist/rpc-errors.d.ts +30 -0
  22. package/dist/rpc-errors.d.ts.map +1 -0
  23. package/dist/rpc-errors.js +23 -0
  24. package/dist/rpc-errors.js.map +1 -0
  25. package/dist/rpc-groups.d.ts +120 -0
  26. package/dist/rpc-groups.d.ts.map +1 -0
  27. package/dist/rpc-groups.js +131 -0
  28. package/dist/rpc-groups.js.map +1 -0
  29. package/dist/rpc-registry.d.ts +1238 -278
  30. package/dist/rpc-registry.d.ts.map +1 -1
  31. package/dist/rpc-registry.js +11 -22
  32. package/dist/rpc-registry.js.map +1 -1
  33. package/dist/rpc.d.ts +26 -5
  34. package/dist/rpc.d.ts.map +1 -1
  35. package/dist/rpc.js +21 -11
  36. package/dist/rpc.js.map +1 -1
  37. package/dist/schema/apps.d.ts +13 -23
  38. package/dist/schema/apps.d.ts.map +1 -1
  39. package/dist/schema/apps.js +2 -12
  40. package/dist/schema/apps.js.map +1 -1
  41. package/dist/schema/contacts.d.ts +6 -2
  42. package/dist/schema/contacts.d.ts.map +1 -1
  43. package/dist/schema/conversations.d.ts +15 -5
  44. package/dist/schema/conversations.d.ts.map +1 -1
  45. package/dist/schema/delivery.d.ts +9 -3
  46. package/dist/schema/delivery.d.ts.map +1 -1
  47. package/dist/schema/errors.d.ts +0 -4
  48. package/dist/schema/errors.d.ts.map +1 -1
  49. package/dist/schema/errors.js +0 -4
  50. package/dist/schema/errors.js.map +1 -1
  51. package/dist/schema/frames.d.ts +48 -51
  52. package/dist/schema/frames.d.ts.map +1 -1
  53. package/dist/schema/frames.js +28 -50
  54. package/dist/schema/frames.js.map +1 -1
  55. package/dist/schema/identity.d.ts +17 -9
  56. package/dist/schema/identity.d.ts.map +1 -1
  57. package/dist/schema/index.d.ts +3 -4
  58. package/dist/schema/index.d.ts.map +1 -1
  59. package/dist/schema/index.js +3 -4
  60. package/dist/schema/index.js.map +1 -1
  61. package/dist/schema/internal-frames.d.ts +10 -0
  62. package/dist/schema/internal-frames.d.ts.map +1 -0
  63. package/dist/schema/internal-frames.js +5 -0
  64. package/dist/schema/internal-frames.js.map +1 -0
  65. package/dist/schema/invites.d.ts +6 -2
  66. package/dist/schema/invites.d.ts.map +1 -1
  67. package/dist/schema/json-rpc.d.ts +27 -0
  68. package/dist/schema/json-rpc.d.ts.map +1 -0
  69. package/dist/schema/json-rpc.js +32 -0
  70. package/dist/schema/json-rpc.js.map +1 -0
  71. package/dist/schema/messages.d.ts +15 -5
  72. package/dist/schema/messages.d.ts.map +1 -1
  73. package/dist/schema/methods/apps.d.ts +138 -85
  74. package/dist/schema/methods/apps.d.ts.map +1 -1
  75. package/dist/schema/methods/apps.js +4 -45
  76. package/dist/schema/methods/apps.js.map +1 -1
  77. package/dist/schema/methods/auth.d.ts +62 -34
  78. package/dist/schema/methods/auth.d.ts.map +1 -1
  79. package/dist/schema/methods/contacts.d.ts +27 -9
  80. package/dist/schema/methods/contacts.d.ts.map +1 -1
  81. package/dist/schema/methods/conversations.d.ts +91 -18
  82. package/dist/schema/methods/conversations.d.ts.map +1 -1
  83. package/dist/schema/methods/conversations.js +2 -2
  84. package/dist/schema/methods/conversations.js.map +1 -1
  85. package/dist/schema/methods/messages.d.ts +39 -13
  86. package/dist/schema/methods/messages.d.ts.map +1 -1
  87. package/dist/schema/methods/presence.d.ts +6 -2
  88. package/dist/schema/methods/presence.d.ts.map +1 -1
  89. package/dist/schema/notifications.d.ts +791 -0
  90. package/dist/schema/notifications.d.ts.map +1 -0
  91. package/dist/schema/notifications.js +173 -0
  92. package/dist/schema/notifications.js.map +1 -0
  93. package/dist/schema/presence.d.ts +3 -1
  94. package/dist/schema/presence.d.ts.map +1 -1
  95. package/dist/schema/primitives.d.ts +21 -5
  96. package/dist/schema/primitives.d.ts.map +1 -1
  97. package/dist/schema/primitives.js +6 -0
  98. package/dist/schema/primitives.js.map +1 -1
  99. package/dist/test-fixtures/seed-data.d.ts +0 -1388
  100. package/dist/test-fixtures/seed-data.d.ts.map +1 -1
  101. package/dist/test-fixtures/seed-data.js +34 -990
  102. package/dist/test-fixtures/seed-data.js.map +1 -1
  103. package/dist/testing/agent-registration.d.ts +3 -1
  104. package/dist/testing/agent-registration.d.ts.map +1 -1
  105. package/dist/testing/agent-registration.js +6 -15
  106. package/dist/testing/agent-registration.js.map +1 -1
  107. package/dist/testing/arbitraries/frames.d.ts +2 -2
  108. package/dist/testing/arbitraries/frames.d.ts.map +1 -1
  109. package/dist/testing/arbitraries/frames.js +9 -7
  110. package/dist/testing/arbitraries/frames.js.map +1 -1
  111. package/dist/testing/arbitraries/from-typebox.d.ts.map +1 -1
  112. package/dist/testing/arbitraries/from-typebox.js +19 -10
  113. package/dist/testing/arbitraries/from-typebox.js.map +1 -1
  114. package/dist/testing/arbitraries/index.d.ts +1 -1
  115. package/dist/testing/arbitraries/index.d.ts.map +1 -1
  116. package/dist/testing/arbitraries/index.js +1 -1
  117. package/dist/testing/arbitraries/index.js.map +1 -1
  118. package/dist/testing/arbitraries/rpc.d.ts +3 -2
  119. package/dist/testing/arbitraries/rpc.d.ts.map +1 -1
  120. package/dist/testing/arbitraries/rpc.js +13 -3
  121. package/dist/testing/arbitraries/rpc.js.map +1 -1
  122. package/dist/testing/captures.d.ts.map +1 -1
  123. package/dist/testing/captures.js +4 -3
  124. package/dist/testing/captures.js.map +1 -1
  125. package/dist/testing/codec.d.ts +13 -11
  126. package/dist/testing/codec.d.ts.map +1 -1
  127. package/dist/testing/codec.js +43 -50
  128. package/dist/testing/codec.js.map +1 -1
  129. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.d.ts.map +1 -1
  130. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js +15 -5
  131. package/dist/testing/conformance/__divergence_proofs__/executable-proof-helpers.js.map +1 -1
  132. package/dist/testing/conformance/_helpers.d.ts +12 -7
  133. package/dist/testing/conformance/_helpers.d.ts.map +1 -1
  134. package/dist/testing/conformance/_helpers.js +30 -7
  135. package/dist/testing/conformance/_helpers.js.map +1 -1
  136. package/dist/testing/conformance/adversity.d.ts.map +1 -1
  137. package/dist/testing/conformance/adversity.js +83 -90
  138. package/dist/testing/conformance/adversity.js.map +1 -1
  139. package/dist/testing/conformance/boundary.d.ts +1 -1
  140. package/dist/testing/conformance/boundary.d.ts.map +1 -1
  141. package/dist/testing/conformance/boundary.js +55 -50
  142. package/dist/testing/conformance/boundary.js.map +1 -1
  143. package/dist/testing/conformance/client/_fixtures.d.ts +7 -5
  144. package/dist/testing/conformance/client/_fixtures.d.ts.map +1 -1
  145. package/dist/testing/conformance/client/_fixtures.js +17 -8
  146. package/dist/testing/conformance/client/_fixtures.js.map +1 -1
  147. package/dist/testing/conformance/client/adversity.d.ts.map +1 -1
  148. package/dist/testing/conformance/client/adversity.js +28 -22
  149. package/dist/testing/conformance/client/adversity.js.map +1 -1
  150. package/dist/testing/conformance/client/boundary.d.ts +2 -2
  151. package/dist/testing/conformance/client/boundary.d.ts.map +1 -1
  152. package/dist/testing/conformance/client/boundary.js +19 -16
  153. package/dist/testing/conformance/client/boundary.js.map +1 -1
  154. package/dist/testing/conformance/client/delivery.d.ts +5 -5
  155. package/dist/testing/conformance/client/delivery.d.ts.map +1 -1
  156. package/dist/testing/conformance/client/delivery.js +77 -73
  157. package/dist/testing/conformance/client/delivery.js.map +1 -1
  158. package/dist/testing/conformance/client/index.d.ts +2 -2
  159. package/dist/testing/conformance/client/index.d.ts.map +1 -1
  160. package/dist/testing/conformance/client/index.js +1 -1
  161. package/dist/testing/conformance/client/index.js.map +1 -1
  162. package/dist/testing/conformance/client/rpc-semantics.d.ts.map +1 -1
  163. package/dist/testing/conformance/client/rpc-semantics.js +31 -37
  164. package/dist/testing/conformance/client/rpc-semantics.js.map +1 -1
  165. package/dist/testing/conformance/client/runner.d.ts +38 -32
  166. package/dist/testing/conformance/client/runner.d.ts.map +1 -1
  167. package/dist/testing/conformance/client/runner.js +36 -45
  168. package/dist/testing/conformance/client/runner.js.map +1 -1
  169. package/dist/testing/conformance/client/schema-conformance.d.ts +8 -8
  170. package/dist/testing/conformance/client/schema-conformance.d.ts.map +1 -1
  171. package/dist/testing/conformance/client/schema-conformance.js +37 -35
  172. package/dist/testing/conformance/client/schema-conformance.js.map +1 -1
  173. package/dist/testing/conformance/client/suite.d.ts.map +1 -1
  174. package/dist/testing/conformance/client/suite.js +4 -3
  175. package/dist/testing/conformance/client/suite.js.map +1 -1
  176. package/dist/testing/conformance/delivery.d.ts.map +1 -1
  177. package/dist/testing/conformance/delivery.js +127 -140
  178. package/dist/testing/conformance/delivery.js.map +1 -1
  179. package/dist/testing/conformance/dispatcher-concurrency.js +12 -12
  180. package/dist/testing/conformance/dispatcher-concurrency.js.map +1 -1
  181. package/dist/testing/conformance/env.d.ts +9 -0
  182. package/dist/testing/conformance/env.d.ts.map +1 -1
  183. package/dist/testing/conformance/env.js +16 -3
  184. package/dist/testing/conformance/env.js.map +1 -1
  185. package/dist/testing/conformance/presence.d.ts.map +1 -1
  186. package/dist/testing/conformance/presence.js +35 -24
  187. package/dist/testing/conformance/presence.js.map +1 -1
  188. package/dist/testing/conformance/registry.d.ts +1 -1
  189. package/dist/testing/conformance/registry.d.ts.map +1 -1
  190. package/dist/testing/conformance/registry.js +1 -1
  191. package/dist/testing/conformance/registry.js.map +1 -1
  192. package/dist/testing/conformance/rpc-semantics.d.ts +12 -12
  193. package/dist/testing/conformance/rpc-semantics.d.ts.map +1 -1
  194. package/dist/testing/conformance/rpc-semantics.js +131 -90
  195. package/dist/testing/conformance/rpc-semantics.js.map +1 -1
  196. package/dist/testing/conformance/runner.d.ts +2 -2
  197. package/dist/testing/conformance/runner.d.ts.map +1 -1
  198. package/dist/testing/conformance/runner.js +5 -10
  199. package/dist/testing/conformance/runner.js.map +1 -1
  200. package/dist/testing/conformance/schema-conformance.d.ts +3 -40
  201. package/dist/testing/conformance/schema-conformance.d.ts.map +1 -1
  202. package/dist/testing/conformance/schema-conformance.js +75 -235
  203. package/dist/testing/conformance/schema-conformance.js.map +1 -1
  204. package/dist/testing/conformance/suite.d.ts +1 -1
  205. package/dist/testing/conformance/suite.d.ts.map +1 -1
  206. package/dist/testing/conformance/suite.js +17 -18
  207. package/dist/testing/conformance/suite.js.map +1 -1
  208. package/dist/testing/index.d.ts +1 -1
  209. package/dist/testing/index.d.ts.map +1 -1
  210. package/dist/testing/models/dispatch.d.ts +5 -5
  211. package/dist/testing/models/dispatch.d.ts.map +1 -1
  212. package/dist/testing/models/dispatch.js +50 -59
  213. package/dist/testing/models/dispatch.js.map +1 -1
  214. package/dist/testing/models/state.d.ts +5 -5
  215. package/dist/testing/models/state.d.ts.map +1 -1
  216. package/dist/testing/models/state.js +14 -1
  217. package/dist/testing/models/state.js.map +1 -1
  218. package/dist/testing/test-client.d.ts +51 -40
  219. package/dist/testing/test-client.d.ts.map +1 -1
  220. package/dist/testing/test-client.js +154 -122
  221. package/dist/testing/test-client.js.map +1 -1
  222. package/dist/testing/test-server.d.ts +5 -5
  223. package/dist/testing/test-server.d.ts.map +1 -1
  224. package/dist/testing/test-server.js +11 -15
  225. package/dist/testing/test-server.js.map +1 -1
  226. package/dist/testing/toxics/client.d.ts.map +1 -1
  227. package/dist/testing/toxics/client.js +9 -3
  228. package/dist/testing/toxics/client.js.map +1 -1
  229. package/dist/testing/toxics/profile.d.ts.map +1 -1
  230. package/dist/testing/toxics/profile.js +4 -1
  231. package/dist/testing/toxics/profile.js.map +1 -1
  232. package/dist/types.d.ts +3 -5
  233. package/dist/types.d.ts.map +1 -1
  234. package/dist/types.js.map +1 -1
  235. package/dist/validators.d.ts +366 -101
  236. package/dist/validators.d.ts.map +1 -1
  237. package/dist/validators.js +23 -30
  238. package/dist/validators.js.map +1 -1
  239. package/dist/version.d.ts +1 -1
  240. package/dist/version.js +1 -1
  241. package/package.json +2 -2
  242. package/dist/schema/events.d.ts +0 -213
  243. package/dist/schema/events.d.ts.map +0 -1
  244. package/dist/schema/events.js +0 -122
  245. package/dist/schema/events.js.map +0 -1
  246. package/dist/schema/methods/push.d.ts +0 -21
  247. package/dist/schema/methods/push.d.ts.map +0 -1
  248. package/dist/schema/methods/push.js +0 -28
  249. package/dist/schema/methods/push.js.map +0 -1
  250. package/dist/schema/surfaces.d.ts +0 -55
  251. package/dist/schema/surfaces.d.ts.map +0 -1
  252. package/dist/schema/surfaces.js +0 -55
  253. package/dist/schema/surfaces.js.map +0 -1
@@ -1,4 +1,6 @@
1
- import type { RpcDefinition } from "./rpc.js";
1
+ import type { RpcDefinition, ParamsOf, ResultOf } from "./rpc.js";
2
+ import type { JsonRpcMethod } from "./schema/json-rpc.js";
3
+ type RpcDefinitionForName<Methods extends ReadonlyArray<RpcDefinition<string, any, any>>, Name extends JsonRpcMethod> = Extract<Methods[number], RpcDefinition<Name extends JsonRpcMethod<infer RawName> ? RawName : never, any, any>>;
2
4
  /**
3
5
  * Every RPC manifest the protocol defines, as a literal tuple. Order doesn't
4
6
  * matter — the wire name is the dispatch key. The `as const` is load-bearing:
@@ -15,9 +17,13 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
15
17
  maxProtocol: import("@sinclair/typebox").TString;
16
18
  }>]>, import("@sinclair/typebox").TObject<{
17
19
  protocolVersion: import("@sinclair/typebox").TString;
18
- agentId: import("@sinclair/typebox").TString;
20
+ agentId: import("@sinclair/typebox").TString & {
21
+ static: import("./brands.js").BrandedString<"AgentId">;
22
+ };
19
23
  conversations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
20
- id: import("@sinclair/typebox").TString;
24
+ id: import("@sinclair/typebox").TString & {
25
+ static: import("./brands.js").BrandedString<"ConversationId">;
26
+ };
21
27
  type: import("@sinclair/typebox").TString & {
22
28
  static: "dm" | "group";
23
29
  };
@@ -52,31 +58,39 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
52
58
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
53
59
  inviteCode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
54
60
  }>, import("@sinclair/typebox").TObject<{
55
- agentId: import("@sinclair/typebox").TString;
61
+ agentId: import("@sinclair/typebox").TString & {
62
+ static: import("./brands.js").BrandedString<"AgentId">;
63
+ };
56
64
  apiKey: import("@sinclair/typebox").TString;
57
65
  claimUrl: import("@sinclair/typebox").TString;
58
66
  claimToken: import("@sinclair/typebox").TString;
59
67
  }>>, RpcDefinition<"auth/invite-agent", import("@sinclair/typebox").TObject<{
60
68
  phone: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
61
69
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"auth/selectAgent", import("@sinclair/typebox").TObject<{
62
- agentId: import("@sinclair/typebox").TString;
70
+ agentId: import("@sinclair/typebox").TString & {
71
+ static: import("./brands.js").BrandedString<"AgentId">;
72
+ };
63
73
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"agents/lookup", import("@sinclair/typebox").TObject<{
64
74
  agentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
65
75
  }>, import("@sinclair/typebox").TObject<{
66
76
  agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
77
+ id: import("@sinclair/typebox").TString & {
78
+ static: import("./brands.js").BrandedString<"AgentId">;
79
+ };
67
80
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
68
- id: import("@sinclair/typebox").TString;
69
- ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
70
- name: import("@sinclair/typebox").TString;
71
- displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
72
- agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
73
- static: "OpenClaw" | "NanoClaw";
74
- }>;
75
81
  metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
76
82
  purpose: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
77
83
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
78
84
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
79
85
  }>>;
86
+ name: import("@sinclair/typebox").TString;
87
+ ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
88
+ static: import("./brands.js").BrandedString<"UserId">;
89
+ }>;
90
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
91
+ agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
92
+ static: "OpenClaw" | "NanoClaw";
93
+ }>;
80
94
  status: import("@sinclair/typebox").TString & {
81
95
  static: "pending_claim" | "active" | "suspended";
82
96
  };
@@ -85,38 +99,46 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
85
99
  names: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
86
100
  }>, import("@sinclair/typebox").TObject<{
87
101
  agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
102
+ id: import("@sinclair/typebox").TString & {
103
+ static: import("./brands.js").BrandedString<"AgentId">;
104
+ };
88
105
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
89
- id: import("@sinclair/typebox").TString;
90
- ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
91
- name: import("@sinclair/typebox").TString;
92
- displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
93
- agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
94
- static: "OpenClaw" | "NanoClaw";
95
- }>;
96
106
  metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
97
107
  purpose: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
98
108
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
99
109
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
100
110
  }>>;
111
+ name: import("@sinclair/typebox").TString;
112
+ ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
113
+ static: import("./brands.js").BrandedString<"UserId">;
114
+ }>;
115
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
116
+ agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
117
+ static: "OpenClaw" | "NanoClaw";
118
+ }>;
101
119
  status: import("@sinclair/typebox").TString & {
102
120
  static: "pending_claim" | "active" | "suspended";
103
121
  };
104
122
  }>>;
105
123
  }>>, RpcDefinition<"agents/list", import("@sinclair/typebox").TObject<{}>, import("@sinclair/typebox").TObject<{
106
124
  agents: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
125
+ id: import("@sinclair/typebox").TString & {
126
+ static: import("./brands.js").BrandedString<"AgentId">;
127
+ };
107
128
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
108
- id: import("@sinclair/typebox").TString;
109
- ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
110
- name: import("@sinclair/typebox").TString;
111
- displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
112
- agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
113
- static: "OpenClaw" | "NanoClaw";
114
- }>;
115
129
  metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
116
130
  purpose: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
117
131
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
118
132
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
119
133
  }>>;
134
+ name: import("@sinclair/typebox").TString;
135
+ ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
136
+ static: import("./brands.js").BrandedString<"UserId">;
137
+ }>;
138
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
139
+ agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
140
+ static: "OpenClaw" | "NanoClaw";
141
+ }>;
120
142
  status: import("@sinclair/typebox").TString & {
121
143
  static: "pending_claim" | "active" | "suspended";
122
144
  };
@@ -134,12 +156,16 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
134
156
  }>>;
135
157
  }>, import("@sinclair/typebox").TObject<{
136
158
  conversation: import("@sinclair/typebox").TObject<{
137
- id: import("@sinclair/typebox").TString;
159
+ id: import("@sinclair/typebox").TString & {
160
+ static: import("./brands.js").BrandedString<"ConversationId">;
161
+ };
138
162
  type: import("@sinclair/typebox").TString & {
139
163
  static: "dm" | "group";
140
164
  };
141
165
  name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
142
- createdBy: import("@sinclair/typebox").TString;
166
+ createdBy: import("@sinclair/typebox").TString & {
167
+ static: import("./brands.js").BrandedString<"AgentId">;
168
+ };
143
169
  metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
144
170
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
145
171
  }>>;
@@ -155,7 +181,9 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
155
181
  }>;
156
182
  }>, import("@sinclair/typebox").TObject<{
157
183
  conversations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
158
- id: import("@sinclair/typebox").TString;
184
+ id: import("@sinclair/typebox").TString & {
185
+ static: import("./brands.js").BrandedString<"ConversationId">;
186
+ };
159
187
  type: import("@sinclair/typebox").TString & {
160
188
  static: "dm" | "group";
161
189
  };
@@ -175,15 +203,21 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
175
203
  }>>;
176
204
  cursor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
177
205
  }>>, RpcDefinition<"conversations/get", import("@sinclair/typebox").TObject<{
178
- conversationId: import("@sinclair/typebox").TString;
206
+ conversationId: import("@sinclair/typebox").TString & {
207
+ static: import("./brands.js").BrandedString<"ConversationId">;
208
+ };
179
209
  }>, import("@sinclair/typebox").TObject<{
180
210
  conversation: import("@sinclair/typebox").TObject<{
181
- id: import("@sinclair/typebox").TString;
211
+ id: import("@sinclair/typebox").TString & {
212
+ static: import("./brands.js").BrandedString<"ConversationId">;
213
+ };
182
214
  type: import("@sinclair/typebox").TString & {
183
215
  static: "dm" | "group";
184
216
  };
185
217
  name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
186
- createdBy: import("@sinclair/typebox").TString;
218
+ createdBy: import("@sinclair/typebox").TString & {
219
+ static: import("./brands.js").BrandedString<"AgentId">;
220
+ };
187
221
  metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
188
222
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
189
223
  }>>;
@@ -192,7 +226,9 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
192
226
  updatedAt: import("@sinclair/typebox").TString;
193
227
  }>;
194
228
  participants: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
195
- conversationId: import("@sinclair/typebox").TString;
229
+ conversationId: import("@sinclair/typebox").TString & {
230
+ static: import("./brands.js").BrandedString<"ConversationId">;
231
+ };
196
232
  participant: import("@sinclair/typebox").TObject<{
197
233
  type: import("@sinclair/typebox").TString & {
198
234
  static: "agent";
@@ -203,29 +239,82 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
203
239
  static: "owner" | "admin" | "member";
204
240
  };
205
241
  joinedAt: import("@sinclair/typebox").TString;
206
- lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
242
+ lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
243
+ static: import("./brands.js").BrandedString<"MessageId">;
244
+ }>;
207
245
  mutedUntil: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
208
246
  agentName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
209
247
  agentDisplayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
210
248
  }>>;
211
249
  }>>, RpcDefinition<"conversations/update", import("@sinclair/typebox").TObject<{
212
- conversationId: import("@sinclair/typebox").TString;
250
+ conversationId: import("@sinclair/typebox").TString & {
251
+ static: import("./brands.js").BrandedString<"ConversationId">;
252
+ };
213
253
  name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
214
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/mute", import("@sinclair/typebox").TObject<{
215
- conversationId: import("@sinclair/typebox").TString;
254
+ }>, import("@sinclair/typebox").TObject<{
255
+ conversation: import("@sinclair/typebox").TObject<{
256
+ id: import("@sinclair/typebox").TString & {
257
+ static: import("./brands.js").BrandedString<"ConversationId">;
258
+ };
259
+ type: import("@sinclair/typebox").TString & {
260
+ static: "dm" | "group";
261
+ };
262
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
263
+ createdBy: import("@sinclair/typebox").TString & {
264
+ static: import("./brands.js").BrandedString<"AgentId">;
265
+ };
266
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
267
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
268
+ }>>;
269
+ lastMessageTimestamp: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
270
+ createdAt: import("@sinclair/typebox").TString;
271
+ updatedAt: import("@sinclair/typebox").TString;
272
+ }>;
273
+ }>>, RpcDefinition<"conversations/mute", import("@sinclair/typebox").TObject<{
274
+ conversationId: import("@sinclair/typebox").TString & {
275
+ static: import("./brands.js").BrandedString<"ConversationId">;
276
+ };
216
277
  until: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
217
278
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/unmute", import("@sinclair/typebox").TObject<{
218
- conversationId: import("@sinclair/typebox").TString;
279
+ conversationId: import("@sinclair/typebox").TString & {
280
+ static: import("./brands.js").BrandedString<"ConversationId">;
281
+ };
219
282
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/addParticipant", import("@sinclair/typebox").TObject<{
220
- conversationId: import("@sinclair/typebox").TString;
283
+ conversationId: import("@sinclair/typebox").TString & {
284
+ static: import("./brands.js").BrandedString<"ConversationId">;
285
+ };
221
286
  participant: import("@sinclair/typebox").TObject<{
222
287
  type: import("@sinclair/typebox").TString & {
223
288
  static: "agent";
224
289
  };
225
290
  id: import("@sinclair/typebox").TString;
226
291
  }>;
227
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/removeParticipant", import("@sinclair/typebox").TObject<{
228
- conversationId: import("@sinclair/typebox").TString;
292
+ }>, import("@sinclair/typebox").TObject<{
293
+ participant: import("@sinclair/typebox").TObject<{
294
+ conversationId: import("@sinclair/typebox").TString & {
295
+ static: import("./brands.js").BrandedString<"ConversationId">;
296
+ };
297
+ participant: import("@sinclair/typebox").TObject<{
298
+ type: import("@sinclair/typebox").TString & {
299
+ static: "agent";
300
+ };
301
+ id: import("@sinclair/typebox").TString;
302
+ }>;
303
+ role: import("@sinclair/typebox").TString & {
304
+ static: "owner" | "admin" | "member";
305
+ };
306
+ joinedAt: import("@sinclair/typebox").TString;
307
+ lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
308
+ static: import("./brands.js").BrandedString<"MessageId">;
309
+ }>;
310
+ mutedUntil: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
311
+ agentName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
312
+ agentDisplayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
313
+ }>;
314
+ }>>, RpcDefinition<"conversations/removeParticipant", import("@sinclair/typebox").TObject<{
315
+ conversationId: import("@sinclair/typebox").TString & {
316
+ static: import("./brands.js").BrandedString<"ConversationId">;
317
+ };
229
318
  participant: import("@sinclair/typebox").TObject<{
230
319
  type: import("@sinclair/typebox").TString & {
231
320
  static: "agent";
@@ -233,13 +322,21 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
233
322
  id: import("@sinclair/typebox").TString;
234
323
  }>;
235
324
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/leave", import("@sinclair/typebox").TObject<{
236
- conversationId: import("@sinclair/typebox").TString;
325
+ conversationId: import("@sinclair/typebox").TString & {
326
+ static: import("./brands.js").BrandedString<"ConversationId">;
327
+ };
237
328
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/archive", import("@sinclair/typebox").TObject<{
238
- conversationId: import("@sinclair/typebox").TString;
329
+ conversationId: import("@sinclair/typebox").TString & {
330
+ static: import("./brands.js").BrandedString<"ConversationId">;
331
+ };
239
332
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/unarchive", import("@sinclair/typebox").TObject<{
240
- conversationId: import("@sinclair/typebox").TString;
333
+ conversationId: import("@sinclair/typebox").TString & {
334
+ static: import("./brands.js").BrandedString<"ConversationId">;
335
+ };
241
336
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"messages/send", import("@sinclair/typebox").TObject<{
242
- conversationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
337
+ conversationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
338
+ static: import("./brands.js").BrandedString<"ConversationId">;
339
+ }>;
243
340
  to: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
244
341
  parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
245
342
  type: import("@sinclair/typebox").TLiteral<"text">;
@@ -255,14 +352,24 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
255
352
  mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
256
353
  size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
257
354
  }>]>>;
258
- replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
355
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
356
+ static: import("./brands.js").BrandedString<"MessageId">;
357
+ }>;
259
358
  dispatchLeaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
260
359
  }>, import("@sinclair/typebox").TObject<{
261
360
  message: import("@sinclair/typebox").TObject<{
262
- id: import("@sinclair/typebox").TString;
263
- conversationId: import("@sinclair/typebox").TString;
264
- senderId: import("@sinclair/typebox").TString;
265
- replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
361
+ id: import("@sinclair/typebox").TString & {
362
+ static: import("./brands.js").BrandedString<"MessageId">;
363
+ };
364
+ conversationId: import("@sinclair/typebox").TString & {
365
+ static: import("./brands.js").BrandedString<"ConversationId">;
366
+ };
367
+ senderId: import("@sinclair/typebox").TString & {
368
+ static: import("./brands.js").BrandedString<"AgentId">;
369
+ };
370
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
371
+ static: import("./brands.js").BrandedString<"MessageId">;
372
+ }>;
266
373
  parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
267
374
  type: import("@sinclair/typebox").TLiteral<"text">;
268
375
  text: import("@sinclair/typebox").TString;
@@ -277,19 +384,31 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
277
384
  mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
278
385
  size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
279
386
  }>]>>;
280
- taggedEntities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
387
+ taggedEntities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
388
+ static: import("./brands.js").BrandedString<"AgentId">;
389
+ }>>;
281
390
  patchedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
282
391
  createdAt: import("@sinclair/typebox").TString;
283
392
  }>;
284
393
  }>>, RpcDefinition<"messages/list", import("@sinclair/typebox").TObject<{
285
- conversationId: import("@sinclair/typebox").TString;
394
+ conversationId: import("@sinclair/typebox").TString & {
395
+ static: import("./brands.js").BrandedString<"ConversationId">;
396
+ };
286
397
  limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
287
398
  }>, import("@sinclair/typebox").TObject<{
288
399
  messages: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
289
- id: import("@sinclair/typebox").TString;
290
- conversationId: import("@sinclair/typebox").TString;
291
- senderId: import("@sinclair/typebox").TString;
292
- replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
400
+ id: import("@sinclair/typebox").TString & {
401
+ static: import("./brands.js").BrandedString<"MessageId">;
402
+ };
403
+ conversationId: import("@sinclair/typebox").TString & {
404
+ static: import("./brands.js").BrandedString<"ConversationId">;
405
+ };
406
+ senderId: import("@sinclair/typebox").TString & {
407
+ static: import("./brands.js").BrandedString<"AgentId">;
408
+ };
409
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
410
+ static: import("./brands.js").BrandedString<"MessageId">;
411
+ }>;
293
412
  parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
294
413
  type: import("@sinclair/typebox").TLiteral<"text">;
295
414
  text: import("@sinclair/typebox").TString;
@@ -304,15 +423,21 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
304
423
  mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
305
424
  size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
306
425
  }>]>>;
307
- taggedEntities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
426
+ taggedEntities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
427
+ static: import("./brands.js").BrandedString<"AgentId">;
428
+ }>>;
308
429
  patchedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
309
430
  createdAt: import("@sinclair/typebox").TString;
310
431
  }>>;
311
432
  hasMore: import("@sinclair/typebox").TBoolean;
312
433
  }>>, RpcDefinition<"contacts/list", import("@sinclair/typebox").TObject<{}>, import("@sinclair/typebox").TObject<{
313
434
  contacts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
314
- id: import("@sinclair/typebox").TString;
315
- contactUserId: import("@sinclair/typebox").TString;
435
+ id: import("@sinclair/typebox").TString & {
436
+ static: import("./brands.js").BrandedString<"ContactId">;
437
+ };
438
+ contactUserId: import("@sinclair/typebox").TString & {
439
+ static: import("./brands.js").BrandedString<"UserId">;
440
+ };
316
441
  source: import("@sinclair/typebox").TString & {
317
442
  static: "email" | "phone" | "manual";
318
443
  };
@@ -322,15 +447,21 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
322
447
  }>>;
323
448
  }>>;
324
449
  }>>, RpcDefinition<"contacts/add", import("@sinclair/typebox").TObject<{
325
- contactUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
450
+ contactUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
451
+ static: import("./brands.js").BrandedString<"UserId">;
452
+ }>;
326
453
  source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
327
454
  static: "email" | "phone" | "manual";
328
455
  }>;
329
456
  relationship: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
330
457
  }>, import("@sinclair/typebox").TObject<{
331
458
  contact: import("@sinclair/typebox").TObject<{
332
- id: import("@sinclair/typebox").TString;
333
- contactUserId: import("@sinclair/typebox").TString;
459
+ id: import("@sinclair/typebox").TString & {
460
+ static: import("./brands.js").BrandedString<"ContactId">;
461
+ };
462
+ contactUserId: import("@sinclair/typebox").TString & {
463
+ static: import("./brands.js").BrandedString<"UserId">;
464
+ };
334
465
  source: import("@sinclair/typebox").TString & {
335
466
  static: "email" | "phone" | "manual";
336
467
  };
@@ -340,11 +471,17 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
340
471
  }>>;
341
472
  }>;
342
473
  }>>, RpcDefinition<"contacts/accept", import("@sinclair/typebox").TObject<{
343
- contactId: import("@sinclair/typebox").TString;
474
+ contactId: import("@sinclair/typebox").TString & {
475
+ static: import("./brands.js").BrandedString<"ContactId">;
476
+ };
344
477
  }>, import("@sinclair/typebox").TObject<{
345
478
  contact: import("@sinclair/typebox").TObject<{
346
- id: import("@sinclair/typebox").TString;
347
- contactUserId: import("@sinclair/typebox").TString;
479
+ id: import("@sinclair/typebox").TString & {
480
+ static: import("./brands.js").BrandedString<"ContactId">;
481
+ };
482
+ contactUserId: import("@sinclair/typebox").TString & {
483
+ static: import("./brands.js").BrandedString<"UserId">;
484
+ };
348
485
  source: import("@sinclair/typebox").TString & {
349
486
  static: "email" | "phone" | "manual";
350
487
  };
@@ -358,58 +495,42 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
358
495
  static: "online" | "offline" | "away";
359
496
  };
360
497
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"presence/subscribe", import("@sinclair/typebox").TObject<{
361
- agentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
498
+ agentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
499
+ static: import("./brands.js").BrandedString<"AgentId">;
500
+ }>;
362
501
  }>, import("@sinclair/typebox").TObject<{
363
502
  statuses: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
364
- agentId: import("@sinclair/typebox").TString;
503
+ agentId: import("@sinclair/typebox").TString & {
504
+ static: import("./brands.js").BrandedString<"AgentId">;
505
+ };
365
506
  status: import("@sinclair/typebox").TString & {
366
507
  static: "online" | "offline" | "away";
367
508
  };
368
509
  }>>;
369
- }>>, RpcDefinition<"push/register", import("@sinclair/typebox").TObject<{
370
- deviceToken: import("@sinclair/typebox").TString;
371
- platform: import("@sinclair/typebox").TString & {
372
- static: "web" | "ios" | "android";
373
- };
374
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"push/unregister", import("@sinclair/typebox").TObject<{
375
- deviceToken: import("@sinclair/typebox").TString;
376
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"apps/create", import("@sinclair/typebox").TObject<{
510
+ }>>, RpcDefinition<"apps/create", import("@sinclair/typebox").TObject<{
377
511
  appId: import("@sinclair/typebox").TString;
378
- invitedAgentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
512
+ invitedAgentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
513
+ static: import("./brands.js").BrandedString<"AgentId">;
514
+ }>;
379
515
  }>, import("@sinclair/typebox").TObject<{
380
516
  session: import("@sinclair/typebox").TObject<{
381
- id: import("@sinclair/typebox").TString;
517
+ id: import("@sinclair/typebox").TString & {
518
+ static: import("./brands.js").BrandedString<"AppSessionId">;
519
+ };
382
520
  appId: import("@sinclair/typebox").TString;
383
- initiatorAgentId: import("@sinclair/typebox").TString;
521
+ initiatorAgentId: import("@sinclair/typebox").TString & {
522
+ static: import("./brands.js").BrandedString<"AgentId">;
523
+ };
384
524
  status: import("@sinclair/typebox").TString & {
385
525
  static: "active" | "waiting" | "failed" | "closed";
386
526
  };
387
- conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
527
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
528
+ static: import("./brands.js").BrandedString<"ConversationId">;
529
+ }>;
388
530
  createdAt: import("@sinclair/typebox").TString;
389
531
  closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
390
532
  }>;
391
- }>>, RpcDefinition<"apps/attestSkill", import("@sinclair/typebox").TObject<{
392
- challengeId: import("@sinclair/typebox").TString;
393
- skillUrl: import("@sinclair/typebox").TString;
394
- version: import("@sinclair/typebox").TString;
395
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"permissions/grant", import("@sinclair/typebox").TObject<{
396
- sessionId: import("@sinclair/typebox").TString;
397
- agentId: import("@sinclair/typebox").TString;
398
- resource: import("@sinclair/typebox").TString;
399
- access: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
400
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"permissions/list", import("@sinclair/typebox").TObject<{
401
- appId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
402
- }>, import("@sinclair/typebox").TObject<{
403
- grants: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
404
- appId: import("@sinclair/typebox").TString;
405
- resource: import("@sinclair/typebox").TString;
406
- access: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
407
- grantedAt: import("@sinclair/typebox").TString;
408
- }>>;
409
- }>>, RpcDefinition<"permissions/revoke", import("@sinclair/typebox").TObject<{
410
- appId: import("@sinclair/typebox").TString;
411
- resource: import("@sinclair/typebox").TString;
412
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"apps/closeSession", import("@sinclair/typebox").TObject<{
533
+ }>>, RpcDefinition<"apps/closeSession", import("@sinclair/typebox").TObject<{
413
534
  sessionId: import("@sinclair/typebox").TString;
414
535
  }>, import("@sinclair/typebox").TObject<{
415
536
  closed: import("@sinclair/typebox").TBoolean;
@@ -417,13 +538,19 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
417
538
  sessionId: import("@sinclair/typebox").TString;
418
539
  }>, import("@sinclair/typebox").TObject<{
419
540
  session: import("@sinclair/typebox").TObject<{
420
- id: import("@sinclair/typebox").TString;
541
+ id: import("@sinclair/typebox").TString & {
542
+ static: import("./brands.js").BrandedString<"AppSessionId">;
543
+ };
421
544
  appId: import("@sinclair/typebox").TString;
422
- initiatorAgentId: import("@sinclair/typebox").TString;
545
+ initiatorAgentId: import("@sinclair/typebox").TString & {
546
+ static: import("./brands.js").BrandedString<"AgentId">;
547
+ };
423
548
  status: import("@sinclair/typebox").TString & {
424
549
  static: "active" | "waiting" | "failed" | "closed";
425
550
  };
426
- conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
551
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
552
+ static: import("./brands.js").BrandedString<"ConversationId">;
553
+ }>;
427
554
  createdAt: import("@sinclair/typebox").TString;
428
555
  closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
429
556
  }>;
@@ -435,20 +562,32 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
435
562
  limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
436
563
  }>, import("@sinclair/typebox").TObject<{
437
564
  sessions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
438
- id: import("@sinclair/typebox").TString;
565
+ id: import("@sinclair/typebox").TString & {
566
+ static: import("./brands.js").BrandedString<"AppSessionId">;
567
+ };
439
568
  appId: import("@sinclair/typebox").TString;
440
- initiatorAgentId: import("@sinclair/typebox").TString;
569
+ initiatorAgentId: import("@sinclair/typebox").TString & {
570
+ static: import("./brands.js").BrandedString<"AgentId">;
571
+ };
441
572
  status: import("@sinclair/typebox").TString & {
442
573
  static: "active" | "waiting" | "failed" | "closed";
443
574
  };
444
- conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
575
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
576
+ static: import("./brands.js").BrandedString<"ConversationId">;
577
+ }>;
445
578
  createdAt: import("@sinclair/typebox").TString;
446
579
  closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
447
580
  }>>;
448
581
  }>>, RpcDefinition<"apps/authorizeDispatch", import("@sinclair/typebox").TObject<{
449
- conversationId: import("@sinclair/typebox").TString;
450
- messageId: import("@sinclair/typebox").TString;
451
- senderAgentId: import("@sinclair/typebox").TString;
582
+ conversationId: import("@sinclair/typebox").TString & {
583
+ static: import("./brands.js").BrandedString<"ConversationId">;
584
+ };
585
+ messageId: import("@sinclair/typebox").TString & {
586
+ static: import("./brands.js").BrandedString<"MessageId">;
587
+ };
588
+ senderAgentId: import("@sinclair/typebox").TString & {
589
+ static: import("./brands.js").BrandedString<"AgentId">;
590
+ };
452
591
  parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
453
592
  type: import("@sinclair/typebox").TLiteral<"text">;
454
593
  text: import("@sinclair/typebox").TString;
@@ -465,9 +604,15 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
465
604
  }>]>>>;
466
605
  receivedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
467
606
  pending: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
468
- messageId: import("@sinclair/typebox").TString;
469
- conversationId: import("@sinclair/typebox").TString;
470
- senderAgentId: import("@sinclair/typebox").TString;
607
+ messageId: import("@sinclair/typebox").TString & {
608
+ static: import("./brands.js").BrandedString<"MessageId">;
609
+ };
610
+ conversationId: import("@sinclair/typebox").TString & {
611
+ static: import("./brands.js").BrandedString<"ConversationId">;
612
+ };
613
+ senderAgentId: import("@sinclair/typebox").TString & {
614
+ static: import("./brands.js").BrandedString<"AgentId">;
615
+ };
471
616
  createdAt: import("@sinclair/typebox").TString;
472
617
  receivedAt: import("@sinclair/typebox").TString;
473
618
  clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
@@ -501,7 +646,9 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
501
646
  decision: import("@sinclair/typebox").TLiteral<"grant">;
502
647
  leaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
503
648
  leaseTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
504
- dispatchMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
649
+ dispatchMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
650
+ static: import("./brands.js").BrandedString<"MessageId">;
651
+ }>;
505
652
  }>, import("@sinclair/typebox").TObject<{
506
653
  decision: import("@sinclair/typebox").TLiteral<"deny">;
507
654
  reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
@@ -511,154 +658,788 @@ export declare const rpcMethods: readonly [RpcDefinition<"auth/connect", import(
511
658
  }>]>;
512
659
  }>>, RpcDefinition<"apps/attachConversation", import("@sinclair/typebox").TObject<{
513
660
  sessionId: import("@sinclair/typebox").TString;
514
- conversationId: import("@sinclair/typebox").TString;
515
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"surface/update", import("@sinclair/typebox").TObject<{
516
- conversationId: import("@sinclair/typebox").TString;
517
- title: import("@sinclair/typebox").TString;
518
- spec: import("@sinclair/typebox").TObject<{
519
- root: import("@sinclair/typebox").TString;
520
- elements: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>;
521
- state: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>>;
522
- }>;
523
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"surface/get", import("@sinclair/typebox").TObject<{
524
- conversationId: import("@sinclair/typebox").TString;
525
- }>, import("@sinclair/typebox").TObject<{
526
- surface: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
527
- conversationId: import("@sinclair/typebox").TString;
528
- title: import("@sinclair/typebox").TString;
529
- spec: import("@sinclair/typebox").TObject<{
530
- root: import("@sinclair/typebox").TString;
531
- elements: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>;
532
- state: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>>;
533
- }>;
534
- updatedBy: import("@sinclair/typebox").TString;
535
- updatedAt: import("@sinclair/typebox").TString;
536
- version: import("@sinclair/typebox").TInteger;
537
- }>, import("@sinclair/typebox").TNull]>;
538
- }>>, RpcDefinition<"surface/action", import("@sinclair/typebox").TObject<{
539
- conversationId: import("@sinclair/typebox").TString;
540
- action: import("@sinclair/typebox").TObject<{
541
- name: import("@sinclair/typebox").TString;
542
- payload: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>>;
543
- }>;
544
- }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"surface/clear", import("@sinclair/typebox").TObject<{
545
- conversationId: import("@sinclair/typebox").TString;
661
+ conversationId: import("@sinclair/typebox").TString & {
662
+ static: import("./brands.js").BrandedString<"ConversationId">;
663
+ };
546
664
  }>, import("@sinclair/typebox").TObject<{}>>];
547
- /**
548
- * Projection of `rpcMethods` by wire name. For any method `M = RpcMap[Name]`:
549
- * - `M.params` is the params type
550
- * - `M.result` is the result type
551
- * - `M.definition` is the full `RpcDefinition` (useful for introspection)
552
- */
553
- export type RpcMap = {
554
- [M in (typeof rpcMethods)[number] as M["name"]]: {
555
- params: M["Params"];
556
- result: M["Result"];
557
- definition: M;
665
+ export declare const taskRpcGroup: import("./rpc-groups.js").RpcDescriptorGroup<"task", readonly [RpcDefinition<"auth/connect", import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
666
+ agentKey: import("@sinclair/typebox").TString;
667
+ minProtocol: import("@sinclair/typebox").TString;
668
+ maxProtocol: import("@sinclair/typebox").TString;
669
+ }>, import("@sinclair/typebox").TObject<{
670
+ sessionToken: import("@sinclair/typebox").TString;
671
+ minProtocol: import("@sinclair/typebox").TString;
672
+ maxProtocol: import("@sinclair/typebox").TString;
673
+ }>]>, import("@sinclair/typebox").TObject<{
674
+ protocolVersion: import("@sinclair/typebox").TString;
675
+ agentId: import("@sinclair/typebox").TString & {
676
+ static: import("./brands.js").BrandedString<"AgentId">;
558
677
  };
559
- };
560
- /**
561
- * A method name is any key of `RpcMap`. Contract-drift check: if you add a
562
- * method to `rpcMethods`, this union expands automatically. If you rename
563
- * the wire `name` field, every call site typed against `RpcMethodName`
564
- * fails at compile time.
565
- */
566
- export type RpcMethodName = keyof RpcMap;
567
- /** Helper for callers that want the manifest type for a given name. */
568
- export type RpcDefinitionFor<Name extends RpcMethodName> = RpcMap[Name]["definition"];
569
- /**
570
- * The `rpcMethods` tuple typed as a general array of RpcDefinitions — useful
571
- * for iteration helpers that don't care about preserving literal names.
572
- */
573
- export type AnyRpcDefinition = (typeof rpcMethods)[number] & RpcDefinition<string, any, any>;
574
- /**
575
- * Server-initiated RPC manifests (server → client). Direction-namespaced so
576
- * c2s dispatch (server router) cannot collide with s2c dispatch (client
577
- * handler registry); the two pools may share `id` values without confusion.
578
- *
579
- * Shape parity with `rpcMethods` is load-bearing: callers type against
580
- * `S2cRpcMethodName` / `S2cRpcMap[M]`, and the `as const` preserves literal
581
- * names for the projection. All entries are AWAITABLE; void-result verbs
582
- * still reply (with `{}`) so the caller's `Deferred.await` can fire.
583
- */
584
- export declare const s2cRpcMethods: readonly [RpcDefinition<"apps/onBeforeDispatch", import("@sinclair/typebox").TObject<{
585
- sessionId: import("@sinclair/typebox").TString;
586
- appId: import("@sinclair/typebox").TString;
587
- conversationId: import("@sinclair/typebox").TString;
588
- recipient: import("@sinclair/typebox").TObject<{
589
- agentId: import("@sinclair/typebox").TString;
590
- ownerId: import("@sinclair/typebox").TString;
591
- }>;
592
- message: import("@sinclair/typebox").TObject<{
593
- id: import("@sinclair/typebox").TString;
594
- senderAgentId: import("@sinclair/typebox").TString;
595
- parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
596
- type: import("@sinclair/typebox").TLiteral<"text">;
597
- text: import("@sinclair/typebox").TString;
598
- }>, import("@sinclair/typebox").TObject<{
599
- type: import("@sinclair/typebox").TLiteral<"image">;
600
- url: import("@sinclair/typebox").TString;
601
- altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
602
- }>, import("@sinclair/typebox").TObject<{
603
- type: import("@sinclair/typebox").TLiteral<"file">;
604
- url: import("@sinclair/typebox").TString;
605
- name: import("@sinclair/typebox").TString;
606
- mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
607
- size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
608
- }>]>>>;
609
- }>;
610
- attempt: import("@sinclair/typebox").TInteger;
611
- receivedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
612
- clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
613
- domainId: import("@sinclair/typebox").TString;
614
- epoch: import("@sinclair/typebox").TInteger;
615
- vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
616
- }>>;
617
- pending: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
618
- messageId: import("@sinclair/typebox").TString;
619
- conversationId: import("@sinclair/typebox").TString;
620
- senderAgentId: import("@sinclair/typebox").TString;
621
- createdAt: import("@sinclair/typebox").TString;
622
- receivedAt: import("@sinclair/typebox").TString;
623
- clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
624
- domainId: import("@sinclair/typebox").TString;
625
- epoch: import("@sinclair/typebox").TInteger;
626
- vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
678
+ conversations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
679
+ id: import("@sinclair/typebox").TString & {
680
+ static: import("./brands.js").BrandedString<"ConversationId">;
681
+ };
682
+ type: import("@sinclair/typebox").TString & {
683
+ static: "dm" | "group";
684
+ };
685
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
686
+ lastMessagePreview: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
687
+ lastMessageTimestamp: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
688
+ unreadCount: import("@sinclair/typebox").TInteger;
689
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
690
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
627
691
  }>>;
628
- parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
629
- type: import("@sinclair/typebox").TLiteral<"text">;
630
- text: import("@sinclair/typebox").TString;
631
- }>, import("@sinclair/typebox").TObject<{
632
- type: import("@sinclair/typebox").TLiteral<"image">;
633
- url: import("@sinclair/typebox").TString;
634
- altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
635
- }>, import("@sinclair/typebox").TObject<{
636
- type: import("@sinclair/typebox").TLiteral<"file">;
637
- url: import("@sinclair/typebox").TString;
638
- name: import("@sinclair/typebox").TString;
639
- mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
640
- size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
641
- }>]>>>;
642
- }>>>;
643
- }>, import("@sinclair/typebox").TObject<{
644
- admission: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
645
- decision: import("@sinclair/typebox").TLiteral<"grant">;
646
- leaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
647
- leaseTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
648
- dispatchMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
649
- }>, import("@sinclair/typebox").TObject<{
650
- decision: import("@sinclair/typebox").TLiteral<"deny">;
651
- reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
652
- }>, import("@sinclair/typebox").TObject<{
653
- decision: import("@sinclair/typebox").TLiteral<"hold">;
654
- reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
655
- }>]>;
656
- }>>, RpcDefinition<"apps/onBeforeMessageDelivery", import("@sinclair/typebox").TObject<{
657
- sessionId: import("@sinclair/typebox").TString;
658
- appId: import("@sinclair/typebox").TString;
659
- conversationId: import("@sinclair/typebox").TString;
660
- sender: import("@sinclair/typebox").TObject<{
661
- agentId: import("@sinclair/typebox").TString;
692
+ participants: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
693
+ type: import("@sinclair/typebox").TString & {
694
+ static: "agent";
695
+ };
696
+ id: import("@sinclair/typebox").TString;
697
+ }>>>;
698
+ }>>;
699
+ unreadCounts: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
700
+ policy: import("@sinclair/typebox").TObject<{
701
+ maxMessageBytes: import("@sinclair/typebox").TInteger;
702
+ maxPartsPerMessage: import("@sinclair/typebox").TInteger;
703
+ maxTextLength: import("@sinclair/typebox").TInteger;
704
+ maxGroupParticipants: import("@sinclair/typebox").TInteger;
705
+ heartbeatIntervalMs: import("@sinclair/typebox").TInteger;
706
+ rateLimits: import("@sinclair/typebox").TObject<{
707
+ messagesPerMinute: import("@sinclair/typebox").TInteger;
708
+ requestsPerMinute: import("@sinclair/typebox").TInteger;
709
+ }>;
710
+ }>;
711
+ }>>, RpcDefinition<"auth/register", import("@sinclair/typebox").TObject<{
712
+ name: import("@sinclair/typebox").TString;
713
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
714
+ inviteCode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
715
+ }>, import("@sinclair/typebox").TObject<{
716
+ agentId: import("@sinclair/typebox").TString & {
717
+ static: import("./brands.js").BrandedString<"AgentId">;
718
+ };
719
+ apiKey: import("@sinclair/typebox").TString;
720
+ claimUrl: import("@sinclair/typebox").TString;
721
+ claimToken: import("@sinclair/typebox").TString;
722
+ }>>, RpcDefinition<"auth/invite-agent", import("@sinclair/typebox").TObject<{
723
+ phone: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
724
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"auth/selectAgent", import("@sinclair/typebox").TObject<{
725
+ agentId: import("@sinclair/typebox").TString & {
726
+ static: import("./brands.js").BrandedString<"AgentId">;
727
+ };
728
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"agents/lookup", import("@sinclair/typebox").TObject<{
729
+ agentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
730
+ }>, import("@sinclair/typebox").TObject<{
731
+ agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
732
+ id: import("@sinclair/typebox").TString & {
733
+ static: import("./brands.js").BrandedString<"AgentId">;
734
+ };
735
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
736
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
737
+ purpose: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
738
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
739
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
740
+ }>>;
741
+ name: import("@sinclair/typebox").TString;
742
+ ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
743
+ static: import("./brands.js").BrandedString<"UserId">;
744
+ }>;
745
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
746
+ agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
747
+ static: "OpenClaw" | "NanoClaw";
748
+ }>;
749
+ status: import("@sinclair/typebox").TString & {
750
+ static: "pending_claim" | "active" | "suspended";
751
+ };
752
+ }>>;
753
+ }>>, RpcDefinition<"agents/lookupByName", import("@sinclair/typebox").TObject<{
754
+ names: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
755
+ }>, import("@sinclair/typebox").TObject<{
756
+ agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
757
+ id: import("@sinclair/typebox").TString & {
758
+ static: import("./brands.js").BrandedString<"AgentId">;
759
+ };
760
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
761
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
762
+ purpose: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
763
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
764
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
765
+ }>>;
766
+ name: import("@sinclair/typebox").TString;
767
+ ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
768
+ static: import("./brands.js").BrandedString<"UserId">;
769
+ }>;
770
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
771
+ agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
772
+ static: "OpenClaw" | "NanoClaw";
773
+ }>;
774
+ status: import("@sinclair/typebox").TString & {
775
+ static: "pending_claim" | "active" | "suspended";
776
+ };
777
+ }>>;
778
+ }>>, RpcDefinition<"agents/list", import("@sinclair/typebox").TObject<{}>, import("@sinclair/typebox").TObject<{
779
+ agents: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
780
+ id: import("@sinclair/typebox").TString & {
781
+ static: import("./brands.js").BrandedString<"AgentId">;
782
+ };
783
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
784
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
785
+ purpose: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
786
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
787
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
788
+ }>>;
789
+ name: import("@sinclair/typebox").TString;
790
+ ownerUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
791
+ static: import("./brands.js").BrandedString<"UserId">;
792
+ }>;
793
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
794
+ agentType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
795
+ static: "OpenClaw" | "NanoClaw";
796
+ }>;
797
+ status: import("@sinclair/typebox").TString & {
798
+ static: "pending_claim" | "active" | "suspended";
799
+ };
800
+ }>>;
801
+ }>>, RpcDefinition<"conversations/create", import("@sinclair/typebox").TObject<{
802
+ type: import("@sinclair/typebox").TString & {
803
+ static: "dm" | "group";
804
+ };
805
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
806
+ participants: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
807
+ type: import("@sinclair/typebox").TString & {
808
+ static: "agent";
809
+ };
810
+ id: import("@sinclair/typebox").TString;
811
+ }>>;
812
+ }>, import("@sinclair/typebox").TObject<{
813
+ conversation: import("@sinclair/typebox").TObject<{
814
+ id: import("@sinclair/typebox").TString & {
815
+ static: import("./brands.js").BrandedString<"ConversationId">;
816
+ };
817
+ type: import("@sinclair/typebox").TString & {
818
+ static: "dm" | "group";
819
+ };
820
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
821
+ createdBy: import("@sinclair/typebox").TString & {
822
+ static: import("./brands.js").BrandedString<"AgentId">;
823
+ };
824
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
825
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
826
+ }>>;
827
+ lastMessageTimestamp: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
828
+ createdAt: import("@sinclair/typebox").TString;
829
+ updatedAt: import("@sinclair/typebox").TString;
830
+ }>;
831
+ }>>, RpcDefinition<"conversations/list", import("@sinclair/typebox").TObject<{
832
+ limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
833
+ cursor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
834
+ archived: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
835
+ static: "exclude" | "include" | "only";
836
+ }>;
837
+ }>, import("@sinclair/typebox").TObject<{
838
+ conversations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
839
+ id: import("@sinclair/typebox").TString & {
840
+ static: import("./brands.js").BrandedString<"ConversationId">;
841
+ };
842
+ type: import("@sinclair/typebox").TString & {
843
+ static: "dm" | "group";
844
+ };
845
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
846
+ lastMessagePreview: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
847
+ lastMessageTimestamp: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
848
+ unreadCount: import("@sinclair/typebox").TInteger;
849
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
850
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
851
+ }>>;
852
+ participants: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
853
+ type: import("@sinclair/typebox").TString & {
854
+ static: "agent";
855
+ };
856
+ id: import("@sinclair/typebox").TString;
857
+ }>>>;
858
+ }>>;
859
+ cursor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
860
+ }>>, RpcDefinition<"conversations/get", import("@sinclair/typebox").TObject<{
861
+ conversationId: import("@sinclair/typebox").TString & {
862
+ static: import("./brands.js").BrandedString<"ConversationId">;
863
+ };
864
+ }>, import("@sinclair/typebox").TObject<{
865
+ conversation: import("@sinclair/typebox").TObject<{
866
+ id: import("@sinclair/typebox").TString & {
867
+ static: import("./brands.js").BrandedString<"ConversationId">;
868
+ };
869
+ type: import("@sinclair/typebox").TString & {
870
+ static: "dm" | "group";
871
+ };
872
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
873
+ createdBy: import("@sinclair/typebox").TString & {
874
+ static: import("./brands.js").BrandedString<"AgentId">;
875
+ };
876
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
877
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
878
+ }>>;
879
+ lastMessageTimestamp: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
880
+ createdAt: import("@sinclair/typebox").TString;
881
+ updatedAt: import("@sinclair/typebox").TString;
882
+ }>;
883
+ participants: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
884
+ conversationId: import("@sinclair/typebox").TString & {
885
+ static: import("./brands.js").BrandedString<"ConversationId">;
886
+ };
887
+ participant: import("@sinclair/typebox").TObject<{
888
+ type: import("@sinclair/typebox").TString & {
889
+ static: "agent";
890
+ };
891
+ id: import("@sinclair/typebox").TString;
892
+ }>;
893
+ role: import("@sinclair/typebox").TString & {
894
+ static: "owner" | "admin" | "member";
895
+ };
896
+ joinedAt: import("@sinclair/typebox").TString;
897
+ lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
898
+ static: import("./brands.js").BrandedString<"MessageId">;
899
+ }>;
900
+ mutedUntil: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
901
+ agentName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
902
+ agentDisplayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
903
+ }>>;
904
+ }>>, RpcDefinition<"conversations/update", import("@sinclair/typebox").TObject<{
905
+ conversationId: import("@sinclair/typebox").TString & {
906
+ static: import("./brands.js").BrandedString<"ConversationId">;
907
+ };
908
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
909
+ }>, import("@sinclair/typebox").TObject<{
910
+ conversation: import("@sinclair/typebox").TObject<{
911
+ id: import("@sinclair/typebox").TString & {
912
+ static: import("./brands.js").BrandedString<"ConversationId">;
913
+ };
914
+ type: import("@sinclair/typebox").TString & {
915
+ static: "dm" | "group";
916
+ };
917
+ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
918
+ createdBy: import("@sinclair/typebox").TString & {
919
+ static: import("./brands.js").BrandedString<"AgentId">;
920
+ };
921
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
922
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
923
+ }>>;
924
+ lastMessageTimestamp: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
925
+ createdAt: import("@sinclair/typebox").TString;
926
+ updatedAt: import("@sinclair/typebox").TString;
927
+ }>;
928
+ }>>, RpcDefinition<"conversations/mute", import("@sinclair/typebox").TObject<{
929
+ conversationId: import("@sinclair/typebox").TString & {
930
+ static: import("./brands.js").BrandedString<"ConversationId">;
931
+ };
932
+ until: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
933
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/unmute", import("@sinclair/typebox").TObject<{
934
+ conversationId: import("@sinclair/typebox").TString & {
935
+ static: import("./brands.js").BrandedString<"ConversationId">;
936
+ };
937
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/addParticipant", import("@sinclair/typebox").TObject<{
938
+ conversationId: import("@sinclair/typebox").TString & {
939
+ static: import("./brands.js").BrandedString<"ConversationId">;
940
+ };
941
+ participant: import("@sinclair/typebox").TObject<{
942
+ type: import("@sinclair/typebox").TString & {
943
+ static: "agent";
944
+ };
945
+ id: import("@sinclair/typebox").TString;
946
+ }>;
947
+ }>, import("@sinclair/typebox").TObject<{
948
+ participant: import("@sinclair/typebox").TObject<{
949
+ conversationId: import("@sinclair/typebox").TString & {
950
+ static: import("./brands.js").BrandedString<"ConversationId">;
951
+ };
952
+ participant: import("@sinclair/typebox").TObject<{
953
+ type: import("@sinclair/typebox").TString & {
954
+ static: "agent";
955
+ };
956
+ id: import("@sinclair/typebox").TString;
957
+ }>;
958
+ role: import("@sinclair/typebox").TString & {
959
+ static: "owner" | "admin" | "member";
960
+ };
961
+ joinedAt: import("@sinclair/typebox").TString;
962
+ lastReadMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
963
+ static: import("./brands.js").BrandedString<"MessageId">;
964
+ }>;
965
+ mutedUntil: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
966
+ agentName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
967
+ agentDisplayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
968
+ }>;
969
+ }>>, RpcDefinition<"conversations/removeParticipant", import("@sinclair/typebox").TObject<{
970
+ conversationId: import("@sinclair/typebox").TString & {
971
+ static: import("./brands.js").BrandedString<"ConversationId">;
972
+ };
973
+ participant: import("@sinclair/typebox").TObject<{
974
+ type: import("@sinclair/typebox").TString & {
975
+ static: "agent";
976
+ };
977
+ id: import("@sinclair/typebox").TString;
978
+ }>;
979
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/leave", import("@sinclair/typebox").TObject<{
980
+ conversationId: import("@sinclair/typebox").TString & {
981
+ static: import("./brands.js").BrandedString<"ConversationId">;
982
+ };
983
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/archive", import("@sinclair/typebox").TObject<{
984
+ conversationId: import("@sinclair/typebox").TString & {
985
+ static: import("./brands.js").BrandedString<"ConversationId">;
986
+ };
987
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"conversations/unarchive", import("@sinclair/typebox").TObject<{
988
+ conversationId: import("@sinclair/typebox").TString & {
989
+ static: import("./brands.js").BrandedString<"ConversationId">;
990
+ };
991
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"messages/send", import("@sinclair/typebox").TObject<{
992
+ conversationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
993
+ static: import("./brands.js").BrandedString<"ConversationId">;
994
+ }>;
995
+ to: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
996
+ parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
997
+ type: import("@sinclair/typebox").TLiteral<"text">;
998
+ text: import("@sinclair/typebox").TString;
999
+ }>, import("@sinclair/typebox").TObject<{
1000
+ type: import("@sinclair/typebox").TLiteral<"image">;
1001
+ url: import("@sinclair/typebox").TString;
1002
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1003
+ }>, import("@sinclair/typebox").TObject<{
1004
+ type: import("@sinclair/typebox").TLiteral<"file">;
1005
+ url: import("@sinclair/typebox").TString;
1006
+ name: import("@sinclair/typebox").TString;
1007
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1008
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1009
+ }>]>>;
1010
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1011
+ static: import("./brands.js").BrandedString<"MessageId">;
1012
+ }>;
1013
+ dispatchLeaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1014
+ }>, import("@sinclair/typebox").TObject<{
1015
+ message: import("@sinclair/typebox").TObject<{
1016
+ id: import("@sinclair/typebox").TString & {
1017
+ static: import("./brands.js").BrandedString<"MessageId">;
1018
+ };
1019
+ conversationId: import("@sinclair/typebox").TString & {
1020
+ static: import("./brands.js").BrandedString<"ConversationId">;
1021
+ };
1022
+ senderId: import("@sinclair/typebox").TString & {
1023
+ static: import("./brands.js").BrandedString<"AgentId">;
1024
+ };
1025
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1026
+ static: import("./brands.js").BrandedString<"MessageId">;
1027
+ }>;
1028
+ parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1029
+ type: import("@sinclair/typebox").TLiteral<"text">;
1030
+ text: import("@sinclair/typebox").TString;
1031
+ }>, import("@sinclair/typebox").TObject<{
1032
+ type: import("@sinclair/typebox").TLiteral<"image">;
1033
+ url: import("@sinclair/typebox").TString;
1034
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1035
+ }>, import("@sinclair/typebox").TObject<{
1036
+ type: import("@sinclair/typebox").TLiteral<"file">;
1037
+ url: import("@sinclair/typebox").TString;
1038
+ name: import("@sinclair/typebox").TString;
1039
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1040
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1041
+ }>]>>;
1042
+ taggedEntities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
1043
+ static: import("./brands.js").BrandedString<"AgentId">;
1044
+ }>>;
1045
+ patchedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1046
+ createdAt: import("@sinclair/typebox").TString;
1047
+ }>;
1048
+ }>>, RpcDefinition<"messages/list", import("@sinclair/typebox").TObject<{
1049
+ conversationId: import("@sinclair/typebox").TString & {
1050
+ static: import("./brands.js").BrandedString<"ConversationId">;
1051
+ };
1052
+ limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1053
+ }>, import("@sinclair/typebox").TObject<{
1054
+ messages: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1055
+ id: import("@sinclair/typebox").TString & {
1056
+ static: import("./brands.js").BrandedString<"MessageId">;
1057
+ };
1058
+ conversationId: import("@sinclair/typebox").TString & {
1059
+ static: import("./brands.js").BrandedString<"ConversationId">;
1060
+ };
1061
+ senderId: import("@sinclair/typebox").TString & {
1062
+ static: import("./brands.js").BrandedString<"AgentId">;
1063
+ };
1064
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1065
+ static: import("./brands.js").BrandedString<"MessageId">;
1066
+ }>;
1067
+ parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1068
+ type: import("@sinclair/typebox").TLiteral<"text">;
1069
+ text: import("@sinclair/typebox").TString;
1070
+ }>, import("@sinclair/typebox").TObject<{
1071
+ type: import("@sinclair/typebox").TLiteral<"image">;
1072
+ url: import("@sinclair/typebox").TString;
1073
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1074
+ }>, import("@sinclair/typebox").TObject<{
1075
+ type: import("@sinclair/typebox").TLiteral<"file">;
1076
+ url: import("@sinclair/typebox").TString;
1077
+ name: import("@sinclair/typebox").TString;
1078
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1079
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1080
+ }>]>>;
1081
+ taggedEntities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
1082
+ static: import("./brands.js").BrandedString<"AgentId">;
1083
+ }>>;
1084
+ patchedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1085
+ createdAt: import("@sinclair/typebox").TString;
1086
+ }>>;
1087
+ hasMore: import("@sinclair/typebox").TBoolean;
1088
+ }>>, RpcDefinition<"contacts/list", import("@sinclair/typebox").TObject<{}>, import("@sinclair/typebox").TObject<{
1089
+ contacts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1090
+ id: import("@sinclair/typebox").TString & {
1091
+ static: import("./brands.js").BrandedString<"ContactId">;
1092
+ };
1093
+ contactUserId: import("@sinclair/typebox").TString & {
1094
+ static: import("./brands.js").BrandedString<"UserId">;
1095
+ };
1096
+ source: import("@sinclair/typebox").TString & {
1097
+ static: "email" | "phone" | "manual";
1098
+ };
1099
+ relationship: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1100
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1101
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
1102
+ }>>;
1103
+ }>>;
1104
+ }>>, RpcDefinition<"contacts/add", import("@sinclair/typebox").TObject<{
1105
+ contactUserId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1106
+ static: import("./brands.js").BrandedString<"UserId">;
1107
+ }>;
1108
+ source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1109
+ static: "email" | "phone" | "manual";
1110
+ }>;
1111
+ relationship: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1112
+ }>, import("@sinclair/typebox").TObject<{
1113
+ contact: import("@sinclair/typebox").TObject<{
1114
+ id: import("@sinclair/typebox").TString & {
1115
+ static: import("./brands.js").BrandedString<"ContactId">;
1116
+ };
1117
+ contactUserId: import("@sinclair/typebox").TString & {
1118
+ static: import("./brands.js").BrandedString<"UserId">;
1119
+ };
1120
+ source: import("@sinclair/typebox").TString & {
1121
+ static: "email" | "phone" | "manual";
1122
+ };
1123
+ relationship: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1124
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1125
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
1126
+ }>>;
1127
+ }>;
1128
+ }>>, RpcDefinition<"contacts/accept", import("@sinclair/typebox").TObject<{
1129
+ contactId: import("@sinclair/typebox").TString & {
1130
+ static: import("./brands.js").BrandedString<"ContactId">;
1131
+ };
1132
+ }>, import("@sinclair/typebox").TObject<{
1133
+ contact: import("@sinclair/typebox").TObject<{
1134
+ id: import("@sinclair/typebox").TString & {
1135
+ static: import("./brands.js").BrandedString<"ContactId">;
1136
+ };
1137
+ contactUserId: import("@sinclair/typebox").TString & {
1138
+ static: import("./brands.js").BrandedString<"UserId">;
1139
+ };
1140
+ source: import("@sinclair/typebox").TString & {
1141
+ static: "email" | "phone" | "manual";
1142
+ };
1143
+ relationship: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1144
+ metadata: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1145
+ tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>>;
1146
+ }>>;
1147
+ }>;
1148
+ }>>, RpcDefinition<"invites/createAgent", import("@sinclair/typebox").TObject<{}>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"presence/update", import("@sinclair/typebox").TObject<{
1149
+ status: import("@sinclair/typebox").TString & {
1150
+ static: "online" | "offline" | "away";
1151
+ };
1152
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"presence/subscribe", import("@sinclair/typebox").TObject<{
1153
+ agentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
1154
+ static: import("./brands.js").BrandedString<"AgentId">;
1155
+ }>;
1156
+ }>, import("@sinclair/typebox").TObject<{
1157
+ statuses: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1158
+ agentId: import("@sinclair/typebox").TString & {
1159
+ static: import("./brands.js").BrandedString<"AgentId">;
1160
+ };
1161
+ status: import("@sinclair/typebox").TString & {
1162
+ static: "online" | "offline" | "away";
1163
+ };
1164
+ }>>;
1165
+ }>>, RpcDefinition<"apps/create", import("@sinclair/typebox").TObject<{
1166
+ appId: import("@sinclair/typebox").TString;
1167
+ invitedAgentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
1168
+ static: import("./brands.js").BrandedString<"AgentId">;
1169
+ }>;
1170
+ }>, import("@sinclair/typebox").TObject<{
1171
+ session: import("@sinclair/typebox").TObject<{
1172
+ id: import("@sinclair/typebox").TString & {
1173
+ static: import("./brands.js").BrandedString<"AppSessionId">;
1174
+ };
1175
+ appId: import("@sinclair/typebox").TString;
1176
+ initiatorAgentId: import("@sinclair/typebox").TString & {
1177
+ static: import("./brands.js").BrandedString<"AgentId">;
1178
+ };
1179
+ status: import("@sinclair/typebox").TString & {
1180
+ static: "active" | "waiting" | "failed" | "closed";
1181
+ };
1182
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
1183
+ static: import("./brands.js").BrandedString<"ConversationId">;
1184
+ }>;
1185
+ createdAt: import("@sinclair/typebox").TString;
1186
+ closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1187
+ }>;
1188
+ }>>, RpcDefinition<"apps/closeSession", import("@sinclair/typebox").TObject<{
1189
+ sessionId: import("@sinclair/typebox").TString;
1190
+ }>, import("@sinclair/typebox").TObject<{
1191
+ closed: import("@sinclair/typebox").TBoolean;
1192
+ }>>, RpcDefinition<"apps/getSession", import("@sinclair/typebox").TObject<{
1193
+ sessionId: import("@sinclair/typebox").TString;
1194
+ }>, import("@sinclair/typebox").TObject<{
1195
+ session: import("@sinclair/typebox").TObject<{
1196
+ id: import("@sinclair/typebox").TString & {
1197
+ static: import("./brands.js").BrandedString<"AppSessionId">;
1198
+ };
1199
+ appId: import("@sinclair/typebox").TString;
1200
+ initiatorAgentId: import("@sinclair/typebox").TString & {
1201
+ static: import("./brands.js").BrandedString<"AgentId">;
1202
+ };
1203
+ status: import("@sinclair/typebox").TString & {
1204
+ static: "active" | "waiting" | "failed" | "closed";
1205
+ };
1206
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
1207
+ static: import("./brands.js").BrandedString<"ConversationId">;
1208
+ }>;
1209
+ createdAt: import("@sinclair/typebox").TString;
1210
+ closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1211
+ }>;
1212
+ }>>, RpcDefinition<"apps/listSessions", import("@sinclair/typebox").TObject<{
1213
+ appId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1214
+ status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1215
+ static: "active" | "waiting" | "closed";
1216
+ }>;
1217
+ limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1218
+ }>, import("@sinclair/typebox").TObject<{
1219
+ sessions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1220
+ id: import("@sinclair/typebox").TString & {
1221
+ static: import("./brands.js").BrandedString<"AppSessionId">;
1222
+ };
1223
+ appId: import("@sinclair/typebox").TString;
1224
+ initiatorAgentId: import("@sinclair/typebox").TString & {
1225
+ static: import("./brands.js").BrandedString<"AgentId">;
1226
+ };
1227
+ status: import("@sinclair/typebox").TString & {
1228
+ static: "active" | "waiting" | "failed" | "closed";
1229
+ };
1230
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString & {
1231
+ static: import("./brands.js").BrandedString<"ConversationId">;
1232
+ }>;
1233
+ createdAt: import("@sinclair/typebox").TString;
1234
+ closedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1235
+ }>>;
1236
+ }>>, RpcDefinition<"apps/authorizeDispatch", import("@sinclair/typebox").TObject<{
1237
+ conversationId: import("@sinclair/typebox").TString & {
1238
+ static: import("./brands.js").BrandedString<"ConversationId">;
1239
+ };
1240
+ messageId: import("@sinclair/typebox").TString & {
1241
+ static: import("./brands.js").BrandedString<"MessageId">;
1242
+ };
1243
+ senderAgentId: import("@sinclair/typebox").TString & {
1244
+ static: import("./brands.js").BrandedString<"AgentId">;
1245
+ };
1246
+ parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1247
+ type: import("@sinclair/typebox").TLiteral<"text">;
1248
+ text: import("@sinclair/typebox").TString;
1249
+ }>, import("@sinclair/typebox").TObject<{
1250
+ type: import("@sinclair/typebox").TLiteral<"image">;
1251
+ url: import("@sinclair/typebox").TString;
1252
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1253
+ }>, import("@sinclair/typebox").TObject<{
1254
+ type: import("@sinclair/typebox").TLiteral<"file">;
1255
+ url: import("@sinclair/typebox").TString;
1256
+ name: import("@sinclair/typebox").TString;
1257
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1258
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1259
+ }>]>>>;
1260
+ receivedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1261
+ pending: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1262
+ messageId: import("@sinclair/typebox").TString & {
1263
+ static: import("./brands.js").BrandedString<"MessageId">;
1264
+ };
1265
+ conversationId: import("@sinclair/typebox").TString & {
1266
+ static: import("./brands.js").BrandedString<"ConversationId">;
1267
+ };
1268
+ senderAgentId: import("@sinclair/typebox").TString & {
1269
+ static: import("./brands.js").BrandedString<"AgentId">;
1270
+ };
1271
+ createdAt: import("@sinclair/typebox").TString;
1272
+ receivedAt: import("@sinclair/typebox").TString;
1273
+ clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1274
+ domainId: import("@sinclair/typebox").TString;
1275
+ epoch: import("@sinclair/typebox").TInteger;
1276
+ vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
1277
+ }>>;
1278
+ parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1279
+ type: import("@sinclair/typebox").TLiteral<"text">;
1280
+ text: import("@sinclair/typebox").TString;
1281
+ }>, import("@sinclair/typebox").TObject<{
1282
+ type: import("@sinclair/typebox").TLiteral<"image">;
1283
+ url: import("@sinclair/typebox").TString;
1284
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1285
+ }>, import("@sinclair/typebox").TObject<{
1286
+ type: import("@sinclair/typebox").TLiteral<"file">;
1287
+ url: import("@sinclair/typebox").TString;
1288
+ name: import("@sinclair/typebox").TString;
1289
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1290
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1291
+ }>]>>>;
1292
+ }>>>;
1293
+ clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1294
+ domainId: import("@sinclair/typebox").TString;
1295
+ epoch: import("@sinclair/typebox").TInteger;
1296
+ vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
1297
+ }>>;
1298
+ attempt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1299
+ }>, import("@sinclair/typebox").TObject<{
1300
+ admission: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1301
+ decision: import("@sinclair/typebox").TLiteral<"grant">;
1302
+ leaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1303
+ leaseTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1304
+ dispatchMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1305
+ static: import("./brands.js").BrandedString<"MessageId">;
1306
+ }>;
1307
+ }>, import("@sinclair/typebox").TObject<{
1308
+ decision: import("@sinclair/typebox").TLiteral<"deny">;
1309
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1310
+ }>, import("@sinclair/typebox").TObject<{
1311
+ decision: import("@sinclair/typebox").TLiteral<"hold">;
1312
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1313
+ }>]>;
1314
+ }>>, RpcDefinition<"apps/attachConversation", import("@sinclair/typebox").TObject<{
1315
+ sessionId: import("@sinclair/typebox").TString;
1316
+ conversationId: import("@sinclair/typebox").TString & {
1317
+ static: import("./brands.js").BrandedString<"ConversationId">;
1318
+ };
1319
+ }>, import("@sinclair/typebox").TObject<{}>>]>;
1320
+ /**
1321
+ * Branded union of every client → server method name. The only public method
1322
+ * values should come from descriptors (`MessagesSend.name`), not raw strings.
1323
+ */
1324
+ export type RpcMethodName = (typeof rpcMethods)[number]["name"];
1325
+ /** Helper for callers that want the manifest type for a given name. */
1326
+ export type RpcDefinitionFor<Name extends RpcMethodName> = RpcDefinitionForName<typeof rpcMethods, Name>;
1327
+ /** Extract params/result types from a branded RPC method name. */
1328
+ export type RpcParams<Name extends RpcMethodName> = ParamsOf<RpcDefinitionFor<Name>>;
1329
+ export type RpcResult<Name extends RpcMethodName> = ResultOf<RpcDefinitionFor<Name>>;
1330
+ /**
1331
+ * The `rpcMethods` tuple typed as a general array of RpcDefinitions — useful
1332
+ * for iteration helpers that don't care about preserving literal names.
1333
+ */
1334
+ export type AnyRpcDefinition = (typeof rpcMethods)[number] & RpcDefinition<string, any, any>;
1335
+ /**
1336
+ * App-callback RPC manifests. These are normal JSON-RPC requests whose
1337
+ * handlers live in the connected app client; the wire frame carries no
1338
+ * direction marker.
1339
+ *
1340
+ * Shape parity with `rpcMethods` is load-bearing: callers type against
1341
+ * `AppCallbackRpcMethodName`, and the `as const` preserves literal names for
1342
+ * the projection. All entries are AWAITABLE; void-result verbs still reply
1343
+ * (with `{}`) so the caller's `Deferred.await` can fire.
1344
+ */
1345
+ export declare const appCallbackRpcMethods: readonly [RpcDefinition<"apps/onBeforeDispatch", import("@sinclair/typebox").TObject<{
1346
+ sessionId: import("@sinclair/typebox").TString;
1347
+ appId: import("@sinclair/typebox").TString;
1348
+ conversationId: import("@sinclair/typebox").TString & {
1349
+ static: import("./brands.js").BrandedString<"ConversationId">;
1350
+ };
1351
+ recipient: import("@sinclair/typebox").TObject<{
1352
+ agentId: import("@sinclair/typebox").TString & {
1353
+ static: import("./brands.js").BrandedString<"AgentId">;
1354
+ };
1355
+ ownerId: import("@sinclair/typebox").TString;
1356
+ }>;
1357
+ message: import("@sinclair/typebox").TObject<{
1358
+ id: import("@sinclair/typebox").TString & {
1359
+ static: import("./brands.js").BrandedString<"MessageId">;
1360
+ };
1361
+ senderAgentId: import("@sinclair/typebox").TString & {
1362
+ static: import("./brands.js").BrandedString<"AgentId">;
1363
+ };
1364
+ parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1365
+ type: import("@sinclair/typebox").TLiteral<"text">;
1366
+ text: import("@sinclair/typebox").TString;
1367
+ }>, import("@sinclair/typebox").TObject<{
1368
+ type: import("@sinclair/typebox").TLiteral<"image">;
1369
+ url: import("@sinclair/typebox").TString;
1370
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1371
+ }>, import("@sinclair/typebox").TObject<{
1372
+ type: import("@sinclair/typebox").TLiteral<"file">;
1373
+ url: import("@sinclair/typebox").TString;
1374
+ name: import("@sinclair/typebox").TString;
1375
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1376
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1377
+ }>]>>>;
1378
+ }>;
1379
+ attempt: import("@sinclair/typebox").TInteger;
1380
+ receivedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1381
+ clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1382
+ domainId: import("@sinclair/typebox").TString;
1383
+ epoch: import("@sinclair/typebox").TInteger;
1384
+ vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
1385
+ }>>;
1386
+ pending: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1387
+ messageId: import("@sinclair/typebox").TString & {
1388
+ static: import("./brands.js").BrandedString<"MessageId">;
1389
+ };
1390
+ conversationId: import("@sinclair/typebox").TString & {
1391
+ static: import("./brands.js").BrandedString<"ConversationId">;
1392
+ };
1393
+ senderAgentId: import("@sinclair/typebox").TString & {
1394
+ static: import("./brands.js").BrandedString<"AgentId">;
1395
+ };
1396
+ createdAt: import("@sinclair/typebox").TString;
1397
+ receivedAt: import("@sinclair/typebox").TString;
1398
+ clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1399
+ domainId: import("@sinclair/typebox").TString;
1400
+ epoch: import("@sinclair/typebox").TInteger;
1401
+ vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
1402
+ }>>;
1403
+ parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1404
+ type: import("@sinclair/typebox").TLiteral<"text">;
1405
+ text: import("@sinclair/typebox").TString;
1406
+ }>, import("@sinclair/typebox").TObject<{
1407
+ type: import("@sinclair/typebox").TLiteral<"image">;
1408
+ url: import("@sinclair/typebox").TString;
1409
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1410
+ }>, import("@sinclair/typebox").TObject<{
1411
+ type: import("@sinclair/typebox").TLiteral<"file">;
1412
+ url: import("@sinclair/typebox").TString;
1413
+ name: import("@sinclair/typebox").TString;
1414
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1415
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1416
+ }>]>>>;
1417
+ }>>>;
1418
+ }>, import("@sinclair/typebox").TObject<{
1419
+ admission: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1420
+ decision: import("@sinclair/typebox").TLiteral<"grant">;
1421
+ leaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1422
+ leaseTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1423
+ dispatchMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1424
+ static: import("./brands.js").BrandedString<"MessageId">;
1425
+ }>;
1426
+ }>, import("@sinclair/typebox").TObject<{
1427
+ decision: import("@sinclair/typebox").TLiteral<"deny">;
1428
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1429
+ }>, import("@sinclair/typebox").TObject<{
1430
+ decision: import("@sinclair/typebox").TLiteral<"hold">;
1431
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1432
+ }>]>;
1433
+ }>>, RpcDefinition<"apps/onBeforeMessageDelivery", import("@sinclair/typebox").TObject<{
1434
+ sessionId: import("@sinclair/typebox").TString;
1435
+ appId: import("@sinclair/typebox").TString;
1436
+ conversationId: import("@sinclair/typebox").TString & {
1437
+ static: import("./brands.js").BrandedString<"ConversationId">;
1438
+ };
1439
+ sender: import("@sinclair/typebox").TObject<{
1440
+ agentId: import("@sinclair/typebox").TString & {
1441
+ static: import("./brands.js").BrandedString<"AgentId">;
1442
+ };
662
1443
  ownerId: import("@sinclair/typebox").TString;
663
1444
  }>;
664
1445
  message: import("@sinclair/typebox").TObject<{
@@ -676,7 +1457,9 @@ export declare const s2cRpcMethods: readonly [RpcDefinition<"apps/onBeforeDispat
676
1457
  mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
677
1458
  size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
678
1459
  }>]>>;
679
- replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1460
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1461
+ static: import("./brands.js").BrandedString<"MessageId">;
1462
+ }>;
680
1463
  dispatchLeaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
681
1464
  }>;
682
1465
  }>, import("@sinclair/typebox").TObject<{
@@ -709,13 +1492,17 @@ export declare const s2cRpcMethods: readonly [RpcDefinition<"apps/onBeforeDispat
709
1492
  sessionId: import("@sinclair/typebox").TString;
710
1493
  appId: import("@sinclair/typebox").TString;
711
1494
  conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
712
- admittedAgentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
1495
+ admittedAgentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
1496
+ static: import("./brands.js").BrandedString<"AgentId">;
1497
+ }>;
713
1498
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"apps/onJoin", import("@sinclair/typebox").TObject<{
714
1499
  sessionId: import("@sinclair/typebox").TString;
715
1500
  appId: import("@sinclair/typebox").TString;
716
1501
  conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
717
1502
  agent: import("@sinclair/typebox").TObject<{
718
- agentId: import("@sinclair/typebox").TString;
1503
+ agentId: import("@sinclair/typebox").TString & {
1504
+ static: import("./brands.js").BrandedString<"AgentId">;
1505
+ };
719
1506
  ownerId: import("@sinclair/typebox").TString;
720
1507
  }>;
721
1508
  }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"apps/onClose", import("@sinclair/typebox").TObject<{
@@ -723,27 +1510,200 @@ export declare const s2cRpcMethods: readonly [RpcDefinition<"apps/onBeforeDispat
723
1510
  appId: import("@sinclair/typebox").TString;
724
1511
  conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
725
1512
  closedBy: import("@sinclair/typebox").TObject<{
726
- agentId: import("@sinclair/typebox").TString;
1513
+ agentId: import("@sinclair/typebox").TString & {
1514
+ static: import("./brands.js").BrandedString<"AgentId">;
1515
+ };
727
1516
  ownerId: import("@sinclair/typebox").TString;
728
1517
  }>;
729
1518
  }>, import("@sinclair/typebox").TObject<{}>>];
1519
+ export declare const appCallbackRpcGroup: import("./rpc-groups.js").RpcDescriptorGroup<"appCallback", readonly [RpcDefinition<"apps/onBeforeDispatch", import("@sinclair/typebox").TObject<{
1520
+ sessionId: import("@sinclair/typebox").TString;
1521
+ appId: import("@sinclair/typebox").TString;
1522
+ conversationId: import("@sinclair/typebox").TString & {
1523
+ static: import("./brands.js").BrandedString<"ConversationId">;
1524
+ };
1525
+ recipient: import("@sinclair/typebox").TObject<{
1526
+ agentId: import("@sinclair/typebox").TString & {
1527
+ static: import("./brands.js").BrandedString<"AgentId">;
1528
+ };
1529
+ ownerId: import("@sinclair/typebox").TString;
1530
+ }>;
1531
+ message: import("@sinclair/typebox").TObject<{
1532
+ id: import("@sinclair/typebox").TString & {
1533
+ static: import("./brands.js").BrandedString<"MessageId">;
1534
+ };
1535
+ senderAgentId: import("@sinclair/typebox").TString & {
1536
+ static: import("./brands.js").BrandedString<"AgentId">;
1537
+ };
1538
+ parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1539
+ type: import("@sinclair/typebox").TLiteral<"text">;
1540
+ text: import("@sinclair/typebox").TString;
1541
+ }>, import("@sinclair/typebox").TObject<{
1542
+ type: import("@sinclair/typebox").TLiteral<"image">;
1543
+ url: import("@sinclair/typebox").TString;
1544
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1545
+ }>, import("@sinclair/typebox").TObject<{
1546
+ type: import("@sinclair/typebox").TLiteral<"file">;
1547
+ url: import("@sinclair/typebox").TString;
1548
+ name: import("@sinclair/typebox").TString;
1549
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1550
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1551
+ }>]>>>;
1552
+ }>;
1553
+ attempt: import("@sinclair/typebox").TInteger;
1554
+ receivedAt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1555
+ clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1556
+ domainId: import("@sinclair/typebox").TString;
1557
+ epoch: import("@sinclair/typebox").TInteger;
1558
+ vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
1559
+ }>>;
1560
+ pending: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
1561
+ messageId: import("@sinclair/typebox").TString & {
1562
+ static: import("./brands.js").BrandedString<"MessageId">;
1563
+ };
1564
+ conversationId: import("@sinclair/typebox").TString & {
1565
+ static: import("./brands.js").BrandedString<"ConversationId">;
1566
+ };
1567
+ senderAgentId: import("@sinclair/typebox").TString & {
1568
+ static: import("./brands.js").BrandedString<"AgentId">;
1569
+ };
1570
+ createdAt: import("@sinclair/typebox").TString;
1571
+ receivedAt: import("@sinclair/typebox").TString;
1572
+ clock: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1573
+ domainId: import("@sinclair/typebox").TString;
1574
+ epoch: import("@sinclair/typebox").TInteger;
1575
+ vector: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TInteger>;
1576
+ }>>;
1577
+ parts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1578
+ type: import("@sinclair/typebox").TLiteral<"text">;
1579
+ text: import("@sinclair/typebox").TString;
1580
+ }>, import("@sinclair/typebox").TObject<{
1581
+ type: import("@sinclair/typebox").TLiteral<"image">;
1582
+ url: import("@sinclair/typebox").TString;
1583
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1584
+ }>, import("@sinclair/typebox").TObject<{
1585
+ type: import("@sinclair/typebox").TLiteral<"file">;
1586
+ url: import("@sinclair/typebox").TString;
1587
+ name: import("@sinclair/typebox").TString;
1588
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1589
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1590
+ }>]>>>;
1591
+ }>>>;
1592
+ }>, import("@sinclair/typebox").TObject<{
1593
+ admission: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1594
+ decision: import("@sinclair/typebox").TLiteral<"grant">;
1595
+ leaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1596
+ leaseTimeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1597
+ dispatchMessageId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1598
+ static: import("./brands.js").BrandedString<"MessageId">;
1599
+ }>;
1600
+ }>, import("@sinclair/typebox").TObject<{
1601
+ decision: import("@sinclair/typebox").TLiteral<"deny">;
1602
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1603
+ }>, import("@sinclair/typebox").TObject<{
1604
+ decision: import("@sinclair/typebox").TLiteral<"hold">;
1605
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1606
+ }>]>;
1607
+ }>>, RpcDefinition<"apps/onBeforeMessageDelivery", import("@sinclair/typebox").TObject<{
1608
+ sessionId: import("@sinclair/typebox").TString;
1609
+ appId: import("@sinclair/typebox").TString;
1610
+ conversationId: import("@sinclair/typebox").TString & {
1611
+ static: import("./brands.js").BrandedString<"ConversationId">;
1612
+ };
1613
+ sender: import("@sinclair/typebox").TObject<{
1614
+ agentId: import("@sinclair/typebox").TString & {
1615
+ static: import("./brands.js").BrandedString<"AgentId">;
1616
+ };
1617
+ ownerId: import("@sinclair/typebox").TString;
1618
+ }>;
1619
+ message: import("@sinclair/typebox").TObject<{
1620
+ parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1621
+ type: import("@sinclair/typebox").TLiteral<"text">;
1622
+ text: import("@sinclair/typebox").TString;
1623
+ }>, import("@sinclair/typebox").TObject<{
1624
+ type: import("@sinclair/typebox").TLiteral<"image">;
1625
+ url: import("@sinclair/typebox").TString;
1626
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1627
+ }>, import("@sinclair/typebox").TObject<{
1628
+ type: import("@sinclair/typebox").TLiteral<"file">;
1629
+ url: import("@sinclair/typebox").TString;
1630
+ name: import("@sinclair/typebox").TString;
1631
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1632
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1633
+ }>]>>;
1634
+ replyToId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString & {
1635
+ static: import("./brands.js").BrandedString<"MessageId">;
1636
+ }>;
1637
+ dispatchLeaseId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1638
+ }>;
1639
+ }>, import("@sinclair/typebox").TObject<{
1640
+ block: import("@sinclair/typebox").TBoolean;
1641
+ reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1642
+ patch: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1643
+ parts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
1644
+ type: import("@sinclair/typebox").TLiteral<"text">;
1645
+ text: import("@sinclair/typebox").TString;
1646
+ }>, import("@sinclair/typebox").TObject<{
1647
+ type: import("@sinclair/typebox").TLiteral<"image">;
1648
+ url: import("@sinclair/typebox").TString;
1649
+ altText: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1650
+ }>, import("@sinclair/typebox").TObject<{
1651
+ type: import("@sinclair/typebox").TLiteral<"file">;
1652
+ url: import("@sinclair/typebox").TString;
1653
+ name: import("@sinclair/typebox").TString;
1654
+ mimeType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
1655
+ size: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
1656
+ }>]>>;
1657
+ }>>;
1658
+ feedback: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
1659
+ type: import("@sinclair/typebox").TString & {
1660
+ static: "error" | "warning" | "info";
1661
+ };
1662
+ content: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>;
1663
+ retry: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
1664
+ }>>;
1665
+ }>>, RpcDefinition<"apps/onSessionActive", import("@sinclair/typebox").TObject<{
1666
+ sessionId: import("@sinclair/typebox").TString;
1667
+ appId: import("@sinclair/typebox").TString;
1668
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
1669
+ admittedAgentIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString & {
1670
+ static: import("./brands.js").BrandedString<"AgentId">;
1671
+ }>;
1672
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"apps/onJoin", import("@sinclair/typebox").TObject<{
1673
+ sessionId: import("@sinclair/typebox").TString;
1674
+ appId: import("@sinclair/typebox").TString;
1675
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
1676
+ agent: import("@sinclair/typebox").TObject<{
1677
+ agentId: import("@sinclair/typebox").TString & {
1678
+ static: import("./brands.js").BrandedString<"AgentId">;
1679
+ };
1680
+ ownerId: import("@sinclair/typebox").TString;
1681
+ }>;
1682
+ }>, import("@sinclair/typebox").TObject<{}>>, RpcDefinition<"apps/onClose", import("@sinclair/typebox").TObject<{
1683
+ sessionId: import("@sinclair/typebox").TString;
1684
+ appId: import("@sinclair/typebox").TString;
1685
+ conversations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
1686
+ closedBy: import("@sinclair/typebox").TObject<{
1687
+ agentId: import("@sinclair/typebox").TString & {
1688
+ static: import("./brands.js").BrandedString<"AgentId">;
1689
+ };
1690
+ ownerId: import("@sinclair/typebox").TString;
1691
+ }>;
1692
+ }>, import("@sinclair/typebox").TObject<{}>>]>;
730
1693
  /**
731
- * Projection of `s2cRpcMethods` by wire name. Shape mirrors `RpcMap`.
1694
+ * Branded union of every app-callback method name.
732
1695
  */
733
- export type S2cRpcMap = {
734
- [M in (typeof s2cRpcMethods)[number] as M["name"]]: {
735
- params: M["Params"];
736
- result: M["Result"];
737
- definition: M;
738
- };
739
- };
1696
+ export type AppCallbackRpcMethodName = (typeof appCallbackRpcMethods)[number]["name"];
740
1697
  /**
741
- * Union of every s2c method's wire name. `sendRpcToClient` / `handleServerRpc`
742
- * narrow against this adding a verb to `s2cRpcMethods` widens the union
743
- * automatically; renaming the wire `name` of a manifest fails every typed
744
- * call site at compile time.
1698
+ * The app-callback tuple typed as general RpcDefinitions for descriptor-backed
1699
+ * APIs that dispatch by descriptor object and only extract `.name` at the wire
1700
+ * encoder/decoder edge.
745
1701
  */
746
- export type S2cRpcMethodName = keyof S2cRpcMap;
747
- /** Helper for callers that want the manifest type for a given s2c method. */
748
- export type S2cRpcDefinitionFor<Name extends S2cRpcMethodName> = S2cRpcMap[Name]["definition"];
1702
+ export type AnyAppCallbackRpcDefinition = (typeof appCallbackRpcMethods)[number];
1703
+ /** Helper for callers that want the manifest type for an app-callback method. */
1704
+ export type AppCallbackRpcDefinitionFor<Name extends AppCallbackRpcMethodName> = RpcDefinitionForName<typeof appCallbackRpcMethods, Name>;
1705
+ /** Extract params/result types from a branded app-callback RPC name. */
1706
+ export type AppCallbackRpcParams<Name extends AppCallbackRpcMethodName> = ParamsOf<AppCallbackRpcDefinitionFor<Name>>;
1707
+ export type AppCallbackRpcResult<Name extends AppCallbackRpcMethodName> = ResultOf<AppCallbackRpcDefinitionFor<Name>>;
1708
+ export {};
749
1709
  //# sourceMappingURL=rpc-registry.d.ts.map