@moltzap/protocol 0.1.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 (160) hide show
  1. package/dist/helpers.d.ts +15 -0
  2. package/dist/helpers.d.ts.map +1 -0
  3. package/dist/helpers.js +20 -0
  4. package/dist/helpers.js.map +1 -0
  5. package/dist/index.d.ts +8 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +8 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/schema/contacts.d.ts +11 -0
  10. package/dist/schema/contacts.d.ts.map +1 -0
  11. package/dist/schema/contacts.js +12 -0
  12. package/dist/schema/contacts.js.map +1 -0
  13. package/dist/schema/conversations.d.ts +37 -0
  14. package/dist/schema/conversations.d.ts.map +1 -0
  15. package/dist/schema/conversations.js +31 -0
  16. package/dist/schema/conversations.js.map +1 -0
  17. package/dist/schema/delivery.d.ts +15 -0
  18. package/dist/schema/delivery.d.ts.map +1 -0
  19. package/dist/schema/delivery.js +14 -0
  20. package/dist/schema/delivery.js.map +1 -0
  21. package/dist/schema/errors.d.ts +24 -0
  22. package/dist/schema/errors.d.ts.map +1 -0
  23. package/dist/schema/errors.js +22 -0
  24. package/dist/schema/errors.js.map +1 -0
  25. package/dist/schema/events.d.ts +120 -0
  26. package/dist/schema/events.d.ts.map +1 -0
  27. package/dist/schema/events.js +52 -0
  28. package/dist/schema/events.js.map +1 -0
  29. package/dist/schema/frames.d.ts +29 -0
  30. package/dist/schema/frames.d.ts.map +1 -0
  31. package/dist/schema/frames.js +23 -0
  32. package/dist/schema/frames.js.map +1 -0
  33. package/dist/schema/identity.d.ts +28 -0
  34. package/dist/schema/identity.d.ts.map +1 -0
  35. package/dist/schema/identity.js +31 -0
  36. package/dist/schema/identity.js.map +1 -0
  37. package/dist/schema/index.d.ts +18 -0
  38. package/dist/schema/index.d.ts.map +1 -0
  39. package/dist/schema/index.js +18 -0
  40. package/dist/schema/index.js.map +1 -0
  41. package/dist/schema/invites.d.ts +17 -0
  42. package/dist/schema/invites.d.ts.map +1 -0
  43. package/dist/schema/invites.js +18 -0
  44. package/dist/schema/invites.js.map +1 -0
  45. package/dist/schema/messages.d.ts +25 -0
  46. package/dist/schema/messages.d.ts.map +1 -0
  47. package/dist/schema/messages.js +20 -0
  48. package/dist/schema/messages.js.map +1 -0
  49. package/dist/schema/methods/auth.d.ts +64 -0
  50. package/dist/schema/methods/auth.d.ts.map +1 -0
  51. package/dist/schema/methods/auth.js +46 -0
  52. package/dist/schema/methods/auth.js.map +1 -0
  53. package/dist/schema/methods/contacts.d.ts +38 -0
  54. package/dist/schema/methods/contacts.d.ts.map +1 -0
  55. package/dist/schema/methods/contacts.js +23 -0
  56. package/dist/schema/methods/contacts.js.map +1 -0
  57. package/dist/schema/methods/conversations.d.ts +92 -0
  58. package/dist/schema/methods/conversations.d.ts.map +1 -0
  59. package/dist/schema/methods/conversations.js +43 -0
  60. package/dist/schema/methods/conversations.js.map +1 -0
  61. package/dist/schema/methods/invites.d.ts +33 -0
  62. package/dist/schema/methods/invites.d.ts.map +1 -0
  63. package/dist/schema/methods/invites.js +19 -0
  64. package/dist/schema/methods/invites.js.map +1 -0
  65. package/dist/schema/methods/messages.d.ts +67 -0
  66. package/dist/schema/methods/messages.d.ts.map +1 -0
  67. package/dist/schema/methods/messages.js +32 -0
  68. package/dist/schema/methods/messages.js.map +1 -0
  69. package/dist/schema/methods/presence.d.ts +19 -0
  70. package/dist/schema/methods/presence.d.ts.map +1 -0
  71. package/dist/schema/methods/presence.js +7 -0
  72. package/dist/schema/methods/presence.js.map +1 -0
  73. package/dist/schema/presence.d.ts +19 -0
  74. package/dist/schema/presence.d.ts.map +1 -0
  75. package/dist/schema/presence.js +14 -0
  76. package/dist/schema/presence.js.map +1 -0
  77. package/dist/schema/primitives.d.ts +7 -0
  78. package/dist/schema/primitives.d.ts.map +1 -0
  79. package/dist/schema/primitives.js +13 -0
  80. package/dist/schema/primitives.js.map +1 -0
  81. package/dist/schemas/Agent.json +46 -0
  82. package/dist/schemas/Contact.json +40 -0
  83. package/dist/schemas/ContactAcceptedEvent.json +49 -0
  84. package/dist/schemas/ContactIdParams.json +14 -0
  85. package/dist/schemas/ContactRequestEvent.json +49 -0
  86. package/dist/schemas/ContactsAcceptParams.json +14 -0
  87. package/dist/schemas/ContactsAcceptResult.json +49 -0
  88. package/dist/schemas/ContactsAddParams.json +18 -0
  89. package/dist/schemas/ContactsAddResult.json +19 -0
  90. package/dist/schemas/ContactsListParams.json +14 -0
  91. package/dist/schemas/ContactsListResult.json +52 -0
  92. package/dist/schemas/Conversation.json +57 -0
  93. package/dist/schemas/ConversationCreatedEvent.json +66 -0
  94. package/dist/schemas/ConversationParticipant.json +59 -0
  95. package/dist/schemas/ConversationSummary.json +37 -0
  96. package/dist/schemas/ConversationUpdatedEvent.json +66 -0
  97. package/dist/schemas/ConversationsAddParticipantParams.json +36 -0
  98. package/dist/schemas/ConversationsCreateParams.json +47 -0
  99. package/dist/schemas/ConversationsCreateResult.json +66 -0
  100. package/dist/schemas/ConversationsGetParams.json +14 -0
  101. package/dist/schemas/ConversationsGetResult.json +129 -0
  102. package/dist/schemas/ConversationsLeaveParams.json +14 -0
  103. package/dist/schemas/ConversationsListParams.json +14 -0
  104. package/dist/schemas/ConversationsListResult.json +52 -0
  105. package/dist/schemas/ConversationsMuteParams.json +18 -0
  106. package/dist/schemas/ConversationsRemoveParticipantParams.json +36 -0
  107. package/dist/schemas/ConversationsUnmuteParams.json +14 -0
  108. package/dist/schemas/ConversationsUpdateParams.json +19 -0
  109. package/dist/schemas/DeliveryEntry.json +59 -0
  110. package/dist/schemas/EmptyResult.json +5 -0
  111. package/dist/schemas/EventFrame.json +23 -0
  112. package/dist/schemas/HelloOk.json +118 -0
  113. package/dist/schemas/Invite.json +63 -0
  114. package/dist/schemas/InvitesAcceptParams.json +13 -0
  115. package/dist/schemas/InvitesAcceptResult.json +103 -0
  116. package/dist/schemas/InvitesCreateParams.json +18 -0
  117. package/dist/schemas/InvitesCreateResult.json +17 -0
  118. package/dist/schemas/Message.json +96 -0
  119. package/dist/schemas/MessageDeletedEvent.json +20 -0
  120. package/dist/schemas/MessageDeliveredEvent.json +42 -0
  121. package/dist/schemas/MessageReactedEvent.json +48 -0
  122. package/dist/schemas/MessageReadEvent.json +41 -0
  123. package/dist/schemas/MessageReceivedEvent.json +105 -0
  124. package/dist/schemas/MessagesDeleteParams.json +14 -0
  125. package/dist/schemas/MessagesListParams.json +27 -0
  126. package/dist/schemas/MessagesListResult.json +112 -0
  127. package/dist/schemas/MessagesReactParams.json +28 -0
  128. package/dist/schemas/MessagesReadParams.json +19 -0
  129. package/dist/schemas/MessagesSendParams.json +46 -0
  130. package/dist/schemas/MessagesSendResult.json +105 -0
  131. package/dist/schemas/ParticipantRef.json +21 -0
  132. package/dist/schemas/Policy.json +45 -0
  133. package/dist/schemas/PresenceChangedEvent.json +39 -0
  134. package/dist/schemas/PresenceEntry.json +39 -0
  135. package/dist/schemas/PresenceSubscribeParams.json +33 -0
  136. package/dist/schemas/PresenceSubscribeResult.json +51 -0
  137. package/dist/schemas/PresenceUpdateParams.json +17 -0
  138. package/dist/schemas/RateLimits.json +16 -0
  139. package/dist/schemas/RegisterParams.json +17 -0
  140. package/dist/schemas/RegisterResult.json +27 -0
  141. package/dist/schemas/RequestFrame.json +27 -0
  142. package/dist/schemas/ResponseFrame.json +40 -0
  143. package/dist/schemas/RpcError.json +17 -0
  144. package/dist/schemas/TextPart.json +19 -0
  145. package/dist/schemas/TypingIndicator.json +36 -0
  146. package/dist/schemas/TypingIndicatorEvent.json +36 -0
  147. package/dist/schemas/User.json +43 -0
  148. package/dist/types.d.ts +11 -0
  149. package/dist/types.d.ts.map +1 -0
  150. package/dist/types.js +2 -0
  151. package/dist/types.js.map +1 -0
  152. package/dist/validators.d.ts +154 -0
  153. package/dist/validators.d.ts.map +1 -0
  154. package/dist/validators.js +40 -0
  155. package/dist/validators.js.map +1 -0
  156. package/dist/version.d.ts +2 -0
  157. package/dist/version.d.ts.map +1 -0
  158. package/dist/version.js +2 -0
  159. package/dist/version.js.map +1 -0
  160. package/package.json +42 -0
@@ -0,0 +1,17 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "status"
6
+ ],
7
+ "properties": {
8
+ "status": {
9
+ "type": "string",
10
+ "enum": [
11
+ "online",
12
+ "offline",
13
+ "away"
14
+ ]
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "messagesPerMinute",
6
+ "requestsPerMinute"
7
+ ],
8
+ "properties": {
9
+ "messagesPerMinute": {
10
+ "type": "integer"
11
+ },
12
+ "requestsPerMinute": {
13
+ "type": "integer"
14
+ }
15
+ }
16
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "name"
6
+ ],
7
+ "properties": {
8
+ "name": {
9
+ "pattern": "^[a-z0-9][a-z0-9_-]{1,30}[a-z0-9]$",
10
+ "type": "string"
11
+ },
12
+ "description": {
13
+ "maxLength": 500,
14
+ "type": "string"
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "agentId",
6
+ "apiKey",
7
+ "claimUrl",
8
+ "claimToken"
9
+ ],
10
+ "properties": {
11
+ "agentId": {
12
+ "format": "uuid",
13
+ "description": "Branded AgentId",
14
+ "type": "string"
15
+ },
16
+ "apiKey": {
17
+ "type": "string"
18
+ },
19
+ "claimUrl": {
20
+ "format": "uri",
21
+ "type": "string"
22
+ },
23
+ "claimToken": {
24
+ "type": "string"
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "jsonrpc",
6
+ "type",
7
+ "id",
8
+ "method"
9
+ ],
10
+ "properties": {
11
+ "jsonrpc": {
12
+ "const": "2.0",
13
+ "type": "string"
14
+ },
15
+ "type": {
16
+ "const": "request",
17
+ "type": "string"
18
+ },
19
+ "id": {
20
+ "type": "string"
21
+ },
22
+ "method": {
23
+ "type": "string"
24
+ },
25
+ "params": {}
26
+ }
27
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "jsonrpc",
6
+ "type",
7
+ "id"
8
+ ],
9
+ "properties": {
10
+ "jsonrpc": {
11
+ "const": "2.0",
12
+ "type": "string"
13
+ },
14
+ "type": {
15
+ "const": "response",
16
+ "type": "string"
17
+ },
18
+ "id": {
19
+ "type": "string"
20
+ },
21
+ "result": {},
22
+ "error": {
23
+ "additionalProperties": false,
24
+ "type": "object",
25
+ "required": [
26
+ "code",
27
+ "message"
28
+ ],
29
+ "properties": {
30
+ "code": {
31
+ "type": "integer"
32
+ },
33
+ "message": {
34
+ "type": "string"
35
+ },
36
+ "data": {}
37
+ }
38
+ }
39
+ }
40
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "code",
6
+ "message"
7
+ ],
8
+ "properties": {
9
+ "code": {
10
+ "type": "integer"
11
+ },
12
+ "message": {
13
+ "type": "string"
14
+ },
15
+ "data": {}
16
+ }
17
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "type",
6
+ "text"
7
+ ],
8
+ "properties": {
9
+ "type": {
10
+ "const": "text",
11
+ "type": "string"
12
+ },
13
+ "text": {
14
+ "minLength": 1,
15
+ "maxLength": 32768,
16
+ "type": "string"
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "conversationId",
6
+ "participant"
7
+ ],
8
+ "properties": {
9
+ "conversationId": {
10
+ "format": "uuid",
11
+ "description": "Branded ConversationId",
12
+ "type": "string"
13
+ },
14
+ "participant": {
15
+ "additionalProperties": false,
16
+ "type": "object",
17
+ "required": [
18
+ "type",
19
+ "id"
20
+ ],
21
+ "properties": {
22
+ "type": {
23
+ "type": "string",
24
+ "enum": [
25
+ "user",
26
+ "agent"
27
+ ]
28
+ },
29
+ "id": {
30
+ "format": "uuid",
31
+ "type": "string"
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "conversationId",
6
+ "participant"
7
+ ],
8
+ "properties": {
9
+ "conversationId": {
10
+ "format": "uuid",
11
+ "description": "Branded ConversationId",
12
+ "type": "string"
13
+ },
14
+ "participant": {
15
+ "additionalProperties": false,
16
+ "type": "object",
17
+ "required": [
18
+ "type",
19
+ "id"
20
+ ],
21
+ "properties": {
22
+ "type": {
23
+ "type": "string",
24
+ "enum": [
25
+ "user",
26
+ "agent"
27
+ ]
28
+ },
29
+ "id": {
30
+ "format": "uuid",
31
+ "type": "string"
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "type": "object",
4
+ "required": [
5
+ "id",
6
+ "displayName",
7
+ "status",
8
+ "createdAt"
9
+ ],
10
+ "properties": {
11
+ "id": {
12
+ "format": "uuid",
13
+ "description": "Branded UserId",
14
+ "type": "string"
15
+ },
16
+ "email": {
17
+ "format": "email",
18
+ "type": "string"
19
+ },
20
+ "phone": {
21
+ "type": "string"
22
+ },
23
+ "displayName": {
24
+ "minLength": 1,
25
+ "type": "string"
26
+ },
27
+ "avatarUrl": {
28
+ "format": "uri",
29
+ "type": "string"
30
+ },
31
+ "status": {
32
+ "type": "string",
33
+ "enum": [
34
+ "active",
35
+ "deactivated"
36
+ ]
37
+ },
38
+ "createdAt": {
39
+ "format": "date-time",
40
+ "type": "string"
41
+ }
42
+ }
43
+ }
@@ -0,0 +1,11 @@
1
+ export type { ParticipantRef, User, Agent } from "./schema/identity.js";
2
+ export type { Contact } from "./schema/contacts.js";
3
+ export type { Conversation, ConversationParticipant, ConversationSummary, } from "./schema/conversations.js";
4
+ export type { TextPart, Message } from "./schema/messages.js";
5
+ export type { Invite } from "./schema/invites.js";
6
+ export type { PresenceEntry, TypingIndicator } from "./schema/presence.js";
7
+ export type { DeliveryEntry } from "./schema/delivery.js";
8
+ export type { RequestFrame, ResponseFrame, EventFrame, } from "./schema/frames.js";
9
+ export type { RpcError, ErrorCode } from "./schema/errors.js";
10
+ export type { RegisterParams, RegisterResult, HelloOk, } from "./schema/methods/auth.js";
11
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AACxE,YAAY,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,YAAY,EACV,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC9D,YAAY,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,YAAY,EACZ,aAAa,EACb,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC9D,YAAY,EACV,cAAc,EACd,cAAc,EACd,OAAO,GACR,MAAM,0BAA0B,CAAC"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,154 @@
1
+ export declare const validators: {
2
+ readonly requestFrame: import("ajv").ValidateFunction<{
3
+ type: any;
4
+ id: any;
5
+ jsonrpc: any;
6
+ method: any;
7
+ } & {
8
+ type: any;
9
+ } & {
10
+ id: any;
11
+ } & {
12
+ jsonrpc: any;
13
+ } & {
14
+ method: any;
15
+ }>;
16
+ readonly responseFrame: import("ajv").ValidateFunction<{
17
+ type: any;
18
+ id: any;
19
+ jsonrpc: any;
20
+ } & {
21
+ type: any;
22
+ } & {
23
+ id: any;
24
+ } & {
25
+ jsonrpc: any;
26
+ }>;
27
+ readonly eventFrame: import("ajv").ValidateFunction<{
28
+ type: any;
29
+ jsonrpc: any;
30
+ event: any;
31
+ } & {
32
+ type: any;
33
+ } & {
34
+ jsonrpc: any;
35
+ } & {
36
+ event: any;
37
+ }>;
38
+ readonly registerParams: import("ajv").ValidateFunction<{
39
+ name: any;
40
+ }>;
41
+ readonly connectParams: import("ajv").ValidateFunction<{
42
+ jwt: any;
43
+ minProtocol: any;
44
+ maxProtocol: any;
45
+ } & {
46
+ jwt: any;
47
+ } & {
48
+ minProtocol: any;
49
+ } & {
50
+ maxProtocol: any;
51
+ } & {
52
+ minProtocol: any;
53
+ maxProtocol: any;
54
+ agentKey: any;
55
+ } & {
56
+ agentKey: any;
57
+ }>;
58
+ readonly messagesSendParams: import("ajv").ValidateFunction<{
59
+ parts: any;
60
+ }>;
61
+ readonly messagesListParams: import("ajv").ValidateFunction<{
62
+ conversationId: any;
63
+ }>;
64
+ readonly messagesReadParams: import("ajv").ValidateFunction<{
65
+ conversationId: any;
66
+ seq: any;
67
+ } & {
68
+ conversationId: any;
69
+ } & {
70
+ seq: any;
71
+ }>;
72
+ readonly messagesReactParams: import("ajv").ValidateFunction<{
73
+ messageId: any;
74
+ emoji: any;
75
+ action: any;
76
+ } & {
77
+ messageId: any;
78
+ } & {
79
+ emoji: any;
80
+ } & {
81
+ action: any;
82
+ }>;
83
+ readonly messagesDeleteParams: import("ajv").ValidateFunction<{
84
+ messageId: any;
85
+ }>;
86
+ readonly contactsListParams: import("ajv").ValidateFunction<{
87
+ [x: string]: {};
88
+ }>;
89
+ readonly contactsAddParams: import("ajv").ValidateFunction<{
90
+ [x: string]: {};
91
+ }>;
92
+ readonly contactsAcceptParams: import("ajv").ValidateFunction<{
93
+ contactId: any;
94
+ }>;
95
+ readonly contactIdParams: import("ajv").ValidateFunction<{
96
+ contactId: any;
97
+ }>;
98
+ readonly conversationsCreateParams: import("ajv").ValidateFunction<{
99
+ type: any;
100
+ participants: any;
101
+ } & {
102
+ type: any;
103
+ } & {
104
+ participants: any;
105
+ }>;
106
+ readonly conversationsListParams: import("ajv").ValidateFunction<{
107
+ [x: string]: {};
108
+ }>;
109
+ readonly conversationsGetParams: import("ajv").ValidateFunction<{
110
+ conversationId: any;
111
+ }>;
112
+ readonly conversationsUpdateParams: import("ajv").ValidateFunction<{
113
+ conversationId: any;
114
+ }>;
115
+ readonly conversationsMuteParams: import("ajv").ValidateFunction<{
116
+ conversationId: any;
117
+ }>;
118
+ readonly conversationsAddParticipantParams: import("ajv").ValidateFunction<{
119
+ conversationId: any;
120
+ participant: any;
121
+ } & {
122
+ conversationId: any;
123
+ } & {
124
+ participant: any;
125
+ }>;
126
+ readonly conversationsRemoveParticipantParams: import("ajv").ValidateFunction<{
127
+ conversationId: any;
128
+ participant: any;
129
+ } & {
130
+ conversationId: any;
131
+ } & {
132
+ participant: any;
133
+ }>;
134
+ readonly conversationsLeaveParams: import("ajv").ValidateFunction<{
135
+ conversationId: any;
136
+ }>;
137
+ readonly conversationsUnmuteParams: import("ajv").ValidateFunction<{
138
+ conversationId: any;
139
+ }>;
140
+ readonly invitesCreateParams: import("ajv").ValidateFunction<{
141
+ [x: string]: {};
142
+ }>;
143
+ readonly invitesAcceptParams: import("ajv").ValidateFunction<{
144
+ token: any;
145
+ }>;
146
+ readonly presenceUpdateParams: import("ajv").ValidateFunction<{
147
+ status: any;
148
+ }>;
149
+ readonly presenceSubscribeParams: import("ajv").ValidateFunction<{
150
+ participants: any;
151
+ }>;
152
+ };
153
+ export type ValidatorName = keyof typeof validators;
154
+ //# sourceMappingURL=validators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Cb,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,UAAU,CAAC"}
@@ -0,0 +1,40 @@
1
+ import Ajv from "ajv";
2
+ import addFormats from "ajv-formats";
3
+ import { RequestFrameSchema, ResponseFrameSchema, EventFrameSchema, RegisterParamsSchema, ConnectParamsSchema, MessagesSendParamsSchema, MessagesListParamsSchema, MessagesReadParamsSchema, MessagesReactParamsSchema, MessagesDeleteParamsSchema, ContactsListParamsSchema, ContactsAddParamsSchema, ContactsAcceptParamsSchema, ContactIdParamsSchema, ConversationsCreateParamsSchema, ConversationsListParamsSchema, ConversationsGetParamsSchema, ConversationsUpdateParamsSchema, ConversationsMuteParamsSchema, ConversationsAddParticipantParamsSchema, ConversationsRemoveParticipantParamsSchema, ConversationsLeaveParamsSchema, ConversationsUnmuteParamsSchema, InvitesCreateParamsSchema, InvitesAcceptParamsSchema, PresenceUpdateParamsSchema, PresenceSubscribeParamsSchema, } from "./schema/index.js";
4
+ const ajv = addFormats(new Ajv({ strict: true, allErrors: true }));
5
+ export const validators = {
6
+ requestFrame: ajv.compile(RequestFrameSchema),
7
+ responseFrame: ajv.compile(ResponseFrameSchema),
8
+ eventFrame: ajv.compile(EventFrameSchema),
9
+ // Auth
10
+ registerParams: ajv.compile(RegisterParamsSchema),
11
+ connectParams: ajv.compile(ConnectParamsSchema),
12
+ // Messages
13
+ messagesSendParams: ajv.compile(MessagesSendParamsSchema),
14
+ messagesListParams: ajv.compile(MessagesListParamsSchema),
15
+ messagesReadParams: ajv.compile(MessagesReadParamsSchema),
16
+ messagesReactParams: ajv.compile(MessagesReactParamsSchema),
17
+ messagesDeleteParams: ajv.compile(MessagesDeleteParamsSchema),
18
+ // Contacts
19
+ contactsListParams: ajv.compile(ContactsListParamsSchema),
20
+ contactsAddParams: ajv.compile(ContactsAddParamsSchema),
21
+ contactsAcceptParams: ajv.compile(ContactsAcceptParamsSchema),
22
+ contactIdParams: ajv.compile(ContactIdParamsSchema),
23
+ // Conversations
24
+ conversationsCreateParams: ajv.compile(ConversationsCreateParamsSchema),
25
+ conversationsListParams: ajv.compile(ConversationsListParamsSchema),
26
+ conversationsGetParams: ajv.compile(ConversationsGetParamsSchema),
27
+ conversationsUpdateParams: ajv.compile(ConversationsUpdateParamsSchema),
28
+ conversationsMuteParams: ajv.compile(ConversationsMuteParamsSchema),
29
+ conversationsAddParticipantParams: ajv.compile(ConversationsAddParticipantParamsSchema),
30
+ conversationsRemoveParticipantParams: ajv.compile(ConversationsRemoveParticipantParamsSchema),
31
+ conversationsLeaveParams: ajv.compile(ConversationsLeaveParamsSchema),
32
+ conversationsUnmuteParams: ajv.compile(ConversationsUnmuteParamsSchema),
33
+ // Invites
34
+ invitesCreateParams: ajv.compile(InvitesCreateParamsSchema),
35
+ invitesAcceptParams: ajv.compile(InvitesAcceptParamsSchema),
36
+ // Presence
37
+ presenceUpdateParams: ajv.compile(PresenceUpdateParamsSchema),
38
+ presenceSubscribeParams: ajv.compile(PresenceSubscribeParamsSchema),
39
+ };
40
+ //# sourceMappingURL=validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,6BAA6B,EAC7B,uCAAuC,EACvC,0CAA0C,EAC1C,8BAA8B,EAC9B,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAEnE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC;IAC7C,aAAa,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAC/C,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;IAEzC,OAAO;IACP,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC;IACjD,aAAa,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAE/C,WAAW;IACX,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC;IACzD,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC;IACzD,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC;IACzD,mBAAmB,EAAE,GAAG,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAC3D,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC;IAE7D,WAAW;IACX,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC;IACzD,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC;IACvD,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC;IAC7D,eAAe,EAAE,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC;IAEnD,gBAAgB;IAChB,yBAAyB,EAAE,GAAG,CAAC,OAAO,CAAC,+BAA+B,CAAC;IACvE,uBAAuB,EAAE,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC;IACnE,sBAAsB,EAAE,GAAG,CAAC,OAAO,CAAC,4BAA4B,CAAC;IACjE,yBAAyB,EAAE,GAAG,CAAC,OAAO,CAAC,+BAA+B,CAAC;IACvE,uBAAuB,EAAE,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC;IACnE,iCAAiC,EAAE,GAAG,CAAC,OAAO,CAC5C,uCAAuC,CACxC;IACD,oCAAoC,EAAE,GAAG,CAAC,OAAO,CAC/C,0CAA0C,CAC3C;IACD,wBAAwB,EAAE,GAAG,CAAC,OAAO,CAAC,8BAA8B,CAAC;IACrE,yBAAyB,EAAE,GAAG,CAAC,OAAO,CAAC,+BAA+B,CAAC;IAEvE,UAAU;IACV,mBAAmB,EAAE,GAAG,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAC3D,mBAAmB,EAAE,GAAG,CAAC,OAAO,CAAC,yBAAyB,CAAC;IAE3D,WAAW;IACX,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC;IAC7D,uBAAuB,EAAE,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC;CAC3D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const PROTOCOL_VERSION = "0.1.0";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const PROTOCOL_VERSION = "0.1.0";
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC"}
package/package.json ADDED
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "@moltzap/protocol",
3
+ "version": "0.1.0",
4
+ "description": "Protocol types and validators for MoltZap messaging",
5
+ "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/chughtapan/moltzap"
9
+ },
10
+ "type": "module",
11
+ "files": [
12
+ "dist"
13
+ ],
14
+ "main": "./dist/index.js",
15
+ "types": "./dist/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "import": "./dist/index.js"
20
+ },
21
+ "./schemas": {
22
+ "types": "./dist/schema/index.d.ts",
23
+ "import": "./dist/schema/index.js"
24
+ }
25
+ },
26
+ "dependencies": {
27
+ "@sinclair/typebox": "^0.34.0",
28
+ "ajv": "^8.17.0",
29
+ "ajv-formats": "^3.0.0"
30
+ },
31
+ "devDependencies": {
32
+ "tsx": "^4.19.0",
33
+ "typescript": "^5.7.0",
34
+ "vitest": "^3.0.0"
35
+ },
36
+ "scripts": {
37
+ "build": "tsc",
38
+ "test": "vitest run",
39
+ "test:watch": "vitest",
40
+ "generate-schema": "tsx scripts/generate-json-schema.ts"
41
+ }
42
+ }