@inkbox/sdk 0.2.0 → 0.2.2

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 (66) hide show
  1. package/README.md +34 -35
  2. package/dist/agent_identity.d.ts +96 -54
  3. package/dist/agent_identity.d.ts.map +1 -1
  4. package/dist/agent_identity.js +119 -86
  5. package/dist/agent_identity.js.map +1 -1
  6. package/dist/credentials.d.ts +11 -0
  7. package/dist/credentials.d.ts.map +1 -1
  8. package/dist/credentials.js +17 -0
  9. package/dist/credentials.js.map +1 -1
  10. package/dist/identities/resources/identities.d.ts +0 -15
  11. package/dist/identities/resources/identities.d.ts.map +1 -1
  12. package/dist/identities/resources/identities.js +0 -18
  13. package/dist/identities/resources/identities.js.map +1 -1
  14. package/dist/identities/types.d.ts +2 -21
  15. package/dist/identities/types.d.ts.map +1 -1
  16. package/dist/identities/types.js +1 -11
  17. package/dist/identities/types.js.map +1 -1
  18. package/dist/index.d.ts +4 -3
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +1 -0
  21. package/dist/index.js.map +1 -1
  22. package/dist/inkbox.d.ts +21 -6
  23. package/dist/inkbox.d.ts.map +1 -1
  24. package/dist/inkbox.js +30 -9
  25. package/dist/inkbox.js.map +1 -1
  26. package/dist/phone/resources/numbers.d.ts +2 -0
  27. package/dist/phone/resources/numbers.d.ts.map +1 -1
  28. package/dist/phone/resources/numbers.js +6 -0
  29. package/dist/phone/resources/numbers.js.map +1 -1
  30. package/dist/phone/resources/texts.d.ts +93 -0
  31. package/dist/phone/resources/texts.d.ts.map +1 -0
  32. package/dist/phone/resources/texts.js +109 -0
  33. package/dist/phone/resources/texts.js.map +1 -0
  34. package/dist/phone/types.d.ts +62 -0
  35. package/dist/phone/types.d.ts.map +1 -1
  36. package/dist/phone/types.js +34 -0
  37. package/dist/phone/types.js.map +1 -1
  38. package/dist/vault/crypto.d.ts +6 -4
  39. package/dist/vault/crypto.d.ts.map +1 -1
  40. package/dist/vault/crypto.js +22 -14
  41. package/dist/vault/crypto.js.map +1 -1
  42. package/dist/vault/resources/vault.d.ts +35 -1
  43. package/dist/vault/resources/vault.d.ts.map +1 -1
  44. package/dist/vault/resources/vault.js +113 -8
  45. package/dist/vault/resources/vault.js.map +1 -1
  46. package/dist/vault/totp.d.ts +73 -0
  47. package/dist/vault/totp.d.ts.map +1 -0
  48. package/dist/vault/totp.js +230 -0
  49. package/dist/vault/totp.js.map +1 -0
  50. package/dist/vault/types.d.ts +3 -0
  51. package/dist/vault/types.d.ts.map +1 -1
  52. package/dist/vault/types.js +4 -0
  53. package/dist/vault/types.js.map +1 -1
  54. package/package.json +2 -1
  55. package/dist/authenticator/resources/accounts.d.ts +0 -70
  56. package/dist/authenticator/resources/accounts.d.ts.map +0 -1
  57. package/dist/authenticator/resources/accounts.js +0 -91
  58. package/dist/authenticator/resources/accounts.js.map +0 -1
  59. package/dist/authenticator/resources/apps.d.ts +0 -38
  60. package/dist/authenticator/resources/apps.d.ts.map +0 -1
  61. package/dist/authenticator/resources/apps.js +0 -52
  62. package/dist/authenticator/resources/apps.js.map +0 -1
  63. package/dist/authenticator/types.d.ts +0 -83
  64. package/dist/authenticator/types.d.ts.map +0 -1
  65. package/dist/authenticator/types.js +0 -43
  66. package/dist/authenticator/types.js.map +0 -1
@@ -0,0 +1,93 @@
1
+ /**
2
+ * inkbox-phone/resources/texts.ts
3
+ *
4
+ * Text message (SMS/MMS) operations: list, get, update, search, conversations.
5
+ */
6
+ import { HttpTransport } from "../../_http.js";
7
+ import { TextMessage, TextConversationSummary } from "../types.js";
8
+ export declare class TextsResource {
9
+ private readonly http;
10
+ constructor(http: HttpTransport);
11
+ /**
12
+ * List text messages for a phone number, newest first.
13
+ *
14
+ * @param phoneNumberId - UUID of the phone number.
15
+ * @param options.limit - Max results (1–200). Defaults to 50.
16
+ * @param options.offset - Pagination offset. Defaults to 0.
17
+ * @param options.isRead - Filter by read state.
18
+ */
19
+ list(phoneNumberId: string, options?: {
20
+ limit?: number;
21
+ offset?: number;
22
+ isRead?: boolean;
23
+ }): Promise<TextMessage[]>;
24
+ /**
25
+ * Get a single text message by ID.
26
+ *
27
+ * @param phoneNumberId - UUID of the phone number.
28
+ * @param textId - UUID of the text message.
29
+ */
30
+ get(phoneNumberId: string, textId: string): Promise<TextMessage>;
31
+ /**
32
+ * Update a text message (mark as read, soft-delete).
33
+ *
34
+ * @param phoneNumberId - UUID of the phone number.
35
+ * @param textId - UUID of the text message.
36
+ * @param options.isRead - Mark as read or unread.
37
+ * @param options.status - Set to `"deleted"` to soft-delete.
38
+ */
39
+ update(phoneNumberId: string, textId: string, options: {
40
+ isRead?: boolean;
41
+ status?: string;
42
+ }): Promise<TextMessage>;
43
+ /**
44
+ * Full-text search across text messages for a phone number.
45
+ *
46
+ * @param phoneNumberId - UUID of the phone number.
47
+ * @param options.q - Search query string.
48
+ * @param options.limit - Max results (1–200). Defaults to 50.
49
+ */
50
+ search(phoneNumberId: string, options: {
51
+ q: string;
52
+ limit?: number;
53
+ }): Promise<TextMessage[]>;
54
+ /**
55
+ * List conversations (one row per remote number) with latest message preview.
56
+ *
57
+ * @param phoneNumberId - UUID of the phone number.
58
+ * @param options.limit - Max results (1–200). Defaults to 50.
59
+ * @param options.offset - Pagination offset. Defaults to 0.
60
+ */
61
+ listConversations(phoneNumberId: string, options?: {
62
+ limit?: number;
63
+ offset?: number;
64
+ }): Promise<TextConversationSummary[]>;
65
+ /**
66
+ * Get all messages with a specific remote number, newest first.
67
+ *
68
+ * @param phoneNumberId - UUID of the phone number.
69
+ * @param remoteNumber - E.164 remote phone number.
70
+ * @param options.limit - Max results (1–200). Defaults to 50.
71
+ * @param options.offset - Pagination offset. Defaults to 0.
72
+ */
73
+ getConversation(phoneNumberId: string, remoteNumber: string, options?: {
74
+ limit?: number;
75
+ offset?: number;
76
+ }): Promise<TextMessage[]>;
77
+ /**
78
+ * Update the read state for all messages in a conversation.
79
+ *
80
+ * @param phoneNumberId - UUID of the phone number.
81
+ * @param remoteNumber - E.164 remote phone number.
82
+ * @param options.isRead - Mark all messages as read or unread.
83
+ * @returns Object with `remotePhoneNumber`, `isRead`, and `updatedCount`.
84
+ */
85
+ updateConversation(phoneNumberId: string, remoteNumber: string, options: {
86
+ isRead: boolean;
87
+ }): Promise<{
88
+ remotePhoneNumber: string;
89
+ isRead: boolean;
90
+ updatedCount: number;
91
+ }>;
92
+ }
93
+ //# sourceMappingURL=texts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"texts.d.ts","sourceRoot":"","sources":["../../../src/phone/resources/texts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,WAAW,EACX,uBAAuB,EAKxB,MAAM,aAAa,CAAC;AAErB,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,aAAa;IAEhD;;;;;;;OAOG;IACG,IAAI,CACR,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9D,OAAO,CAAC,WAAW,EAAE,CAAC;IAezB;;;;;OAKG;IACG,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAOtE;;;;;;;OAOG;IACG,MAAM,CACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7C,OAAO,CAAC,WAAW,CAAC;IAWvB;;;;;;OAMG;IACG,MAAM,CACV,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACrC,OAAO,CAAC,WAAW,EAAE,CAAC;IAQzB;;;;;;OAMG;IACG,iBAAiB,CACrB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5C,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAQrC;;;;;;;OAOG;IACG,eAAe,CACnB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5C,OAAO,CAAC,WAAW,EAAE,CAAC;IAQzB;;;;;;;OAOG;IACG,kBAAkB,CACtB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,GAC3B,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CAejF"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * inkbox-phone/resources/texts.ts
3
+ *
4
+ * Text message (SMS/MMS) operations: list, get, update, search, conversations.
5
+ */
6
+ import { parseTextMessage, parseTextConversationSummary, } from "../types.js";
7
+ export class TextsResource {
8
+ http;
9
+ constructor(http) {
10
+ this.http = http;
11
+ }
12
+ /**
13
+ * List text messages for a phone number, newest first.
14
+ *
15
+ * @param phoneNumberId - UUID of the phone number.
16
+ * @param options.limit - Max results (1–200). Defaults to 50.
17
+ * @param options.offset - Pagination offset. Defaults to 0.
18
+ * @param options.isRead - Filter by read state.
19
+ */
20
+ async list(phoneNumberId, options) {
21
+ const params = {
22
+ limit: options?.limit ?? 50,
23
+ offset: options?.offset ?? 0,
24
+ };
25
+ if (options?.isRead !== undefined) {
26
+ params["is_read"] = options.isRead;
27
+ }
28
+ const data = await this.http.get(`/numbers/${phoneNumberId}/texts`, params);
29
+ return data.map(parseTextMessage);
30
+ }
31
+ /**
32
+ * Get a single text message by ID.
33
+ *
34
+ * @param phoneNumberId - UUID of the phone number.
35
+ * @param textId - UUID of the text message.
36
+ */
37
+ async get(phoneNumberId, textId) {
38
+ const data = await this.http.get(`/numbers/${phoneNumberId}/texts/${textId}`);
39
+ return parseTextMessage(data);
40
+ }
41
+ /**
42
+ * Update a text message (mark as read, soft-delete).
43
+ *
44
+ * @param phoneNumberId - UUID of the phone number.
45
+ * @param textId - UUID of the text message.
46
+ * @param options.isRead - Mark as read or unread.
47
+ * @param options.status - Set to `"deleted"` to soft-delete.
48
+ */
49
+ async update(phoneNumberId, textId, options) {
50
+ const body = {};
51
+ if (options.isRead !== undefined)
52
+ body["is_read"] = options.isRead;
53
+ if (options.status !== undefined)
54
+ body["status"] = options.status;
55
+ const data = await this.http.patch(`/numbers/${phoneNumberId}/texts/${textId}`, body);
56
+ return parseTextMessage(data);
57
+ }
58
+ /**
59
+ * Full-text search across text messages for a phone number.
60
+ *
61
+ * @param phoneNumberId - UUID of the phone number.
62
+ * @param options.q - Search query string.
63
+ * @param options.limit - Max results (1–200). Defaults to 50.
64
+ */
65
+ async search(phoneNumberId, options) {
66
+ const data = await this.http.get(`/numbers/${phoneNumberId}/texts/search`, { q: options.q, limit: options.limit ?? 50 });
67
+ return data.map(parseTextMessage);
68
+ }
69
+ /**
70
+ * List conversations (one row per remote number) with latest message preview.
71
+ *
72
+ * @param phoneNumberId - UUID of the phone number.
73
+ * @param options.limit - Max results (1–200). Defaults to 50.
74
+ * @param options.offset - Pagination offset. Defaults to 0.
75
+ */
76
+ async listConversations(phoneNumberId, options) {
77
+ const data = await this.http.get(`/numbers/${phoneNumberId}/texts/conversations`, { limit: options?.limit ?? 50, offset: options?.offset ?? 0 });
78
+ return data.map(parseTextConversationSummary);
79
+ }
80
+ /**
81
+ * Get all messages with a specific remote number, newest first.
82
+ *
83
+ * @param phoneNumberId - UUID of the phone number.
84
+ * @param remoteNumber - E.164 remote phone number.
85
+ * @param options.limit - Max results (1–200). Defaults to 50.
86
+ * @param options.offset - Pagination offset. Defaults to 0.
87
+ */
88
+ async getConversation(phoneNumberId, remoteNumber, options) {
89
+ const data = await this.http.get(`/numbers/${phoneNumberId}/texts/conversations/${remoteNumber}`, { limit: options?.limit ?? 50, offset: options?.offset ?? 0 });
90
+ return data.map(parseTextMessage);
91
+ }
92
+ /**
93
+ * Update the read state for all messages in a conversation.
94
+ *
95
+ * @param phoneNumberId - UUID of the phone number.
96
+ * @param remoteNumber - E.164 remote phone number.
97
+ * @param options.isRead - Mark all messages as read or unread.
98
+ * @returns Object with `remotePhoneNumber`, `isRead`, and `updatedCount`.
99
+ */
100
+ async updateConversation(phoneNumberId, remoteNumber, options) {
101
+ const data = await this.http.patch(`/numbers/${phoneNumberId}/texts/conversations/${remoteNumber}`, { is_read: options.isRead });
102
+ return {
103
+ remotePhoneNumber: data.remote_phone_number,
104
+ isRead: data.is_read,
105
+ updatedCount: data.updated_count,
106
+ };
107
+ }
108
+ }
109
+ //# sourceMappingURL=texts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"texts.js","sourceRoot":"","sources":["../../../src/phone/resources/texts.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface PhoneNumber {
12
12
  incomingCallAction: string;
13
13
  clientWebsocketUrl: string | null;
14
14
  incomingCallWebhookUrl: string | null;
15
+ incomingTextWebhookUrl: string | null;
15
16
  createdAt: Date;
16
17
  updatedAt: Date;
17
18
  }
@@ -54,6 +55,36 @@ export interface PhoneTranscript {
54
55
  text: string;
55
56
  createdAt: Date;
56
57
  }
58
+ export interface TextMediaItem {
59
+ contentType: string;
60
+ size: number;
61
+ url: string;
62
+ }
63
+ export interface TextMessage {
64
+ id: string;
65
+ /** "inbound" | "outbound" */
66
+ direction: string;
67
+ localPhoneNumber: string;
68
+ remotePhoneNumber: string;
69
+ text: string | null;
70
+ /** "sms" | "mms" */
71
+ type: string;
72
+ media: TextMediaItem[] | null;
73
+ /** "active" | "deleted" */
74
+ status: string;
75
+ isRead: boolean;
76
+ createdAt: Date;
77
+ updatedAt: Date;
78
+ }
79
+ export interface TextConversationSummary {
80
+ remotePhoneNumber: string;
81
+ latestText: string | null;
82
+ latestDirection: string;
83
+ latestType: string;
84
+ latestMessageAt: Date;
85
+ unreadCount: number;
86
+ totalCount: number;
87
+ }
57
88
  export interface RawPhoneNumber {
58
89
  id: string;
59
90
  number: string;
@@ -62,6 +93,7 @@ export interface RawPhoneNumber {
62
93
  incoming_call_action: string;
63
94
  client_websocket_url: string | null;
64
95
  incoming_call_webhook_url: string | null;
96
+ incoming_text_webhook_url: string | null;
65
97
  created_at: string;
66
98
  updated_at: string;
67
99
  }
@@ -91,6 +123,33 @@ export interface RawRateLimitInfo {
91
123
  export interface RawPhoneCallWithRateLimit extends RawPhoneCall {
92
124
  rate_limit: RawRateLimitInfo;
93
125
  }
126
+ export interface RawTextMediaItem {
127
+ content_type: string;
128
+ size: number;
129
+ url: string;
130
+ }
131
+ export interface RawTextMessage {
132
+ id: string;
133
+ direction: string;
134
+ local_phone_number: string;
135
+ remote_phone_number: string;
136
+ text: string | null;
137
+ type: string;
138
+ media: RawTextMediaItem[] | null;
139
+ status: string;
140
+ is_read: boolean;
141
+ created_at: string;
142
+ updated_at: string;
143
+ }
144
+ export interface RawTextConversationSummary {
145
+ remote_phone_number: string;
146
+ latest_text: string | null;
147
+ latest_direction: string;
148
+ latest_type: string;
149
+ latest_message_at: string;
150
+ unread_count: number;
151
+ total_count: number;
152
+ }
94
153
  export interface RawPhoneTranscript {
95
154
  id: string;
96
155
  call_id: string;
@@ -105,4 +164,7 @@ export declare function parsePhoneCall(r: RawPhoneCall): PhoneCall;
105
164
  export declare function parseRateLimitInfo(r: RawRateLimitInfo): RateLimitInfo;
106
165
  export declare function parsePhoneCallWithRateLimit(r: RawPhoneCallWithRateLimit): PhoneCallWithRateLimit;
107
166
  export declare function parsePhoneTranscript(r: RawPhoneTranscript): PhoneTranscript;
167
+ export declare function parseTextMediaItem(r: RawTextMediaItem): TextMediaItem;
168
+ export declare function parseTextMessage(r: RawTextMessage): TextMessage;
169
+ export declare function parseTextConversationSummary(r: RawTextConversationSummary): TextConversationSummary;
108
170
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/phone/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,qEAAqE;IACrE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,SAAS,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,IAAI,CAAC;CACjB;AAID,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,yBAA0B,SAAQ,YAAY;IAC7D,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,cAAc,GAAG,WAAW,CAY/D;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,CAgBzD;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,gBAAgB,GAAG,aAAa,CASrE;AAED,wBAAgB,2BAA2B,CACzC,CAAC,EAAE,yBAAyB,GAC3B,sBAAsB,CAKxB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,kBAAkB,GAAG,eAAe,CAU3E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/phone/types.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export function parsePhoneNumber(r) {
11
11
  incomingCallAction: r.incoming_call_action,
12
12
  clientWebsocketUrl: r.client_websocket_url,
13
13
  incomingCallWebhookUrl: r.incoming_call_webhook_url,
14
+ incomingTextWebhookUrl: r.incoming_text_webhook_url,
14
15
  createdAt: new Date(r.created_at),
15
16
  updatedAt: new Date(r.updated_at),
16
17
  };
@@ -59,4 +60,37 @@ export function parsePhoneTranscript(r) {
59
60
  createdAt: new Date(r.created_at),
60
61
  };
61
62
  }
63
+ export function parseTextMediaItem(r) {
64
+ return {
65
+ contentType: r.content_type,
66
+ size: r.size,
67
+ url: r.url,
68
+ };
69
+ }
70
+ export function parseTextMessage(r) {
71
+ return {
72
+ id: r.id,
73
+ direction: r.direction,
74
+ localPhoneNumber: r.local_phone_number,
75
+ remotePhoneNumber: r.remote_phone_number,
76
+ text: r.text,
77
+ type: r.type,
78
+ media: r.media ? r.media.map(parseTextMediaItem) : null,
79
+ status: r.status,
80
+ isRead: r.is_read,
81
+ createdAt: new Date(r.created_at),
82
+ updatedAt: new Date(r.updated_at),
83
+ };
84
+ }
85
+ export function parseTextConversationSummary(r) {
86
+ return {
87
+ remotePhoneNumber: r.remote_phone_number,
88
+ latestText: r.latest_text,
89
+ latestDirection: r.latest_direction,
90
+ latestType: r.latest_type,
91
+ latestMessageAt: new Date(r.latest_message_at),
92
+ unreadCount: r.unread_count,
93
+ totalCount: r.total_count,
94
+ };
95
+ }
62
96
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/phone/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAiHH,oBAAoB;AAEpB,MAAM,UAAU,gBAAgB,CAAC,CAAiB;IAChD,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,kBAAkB,EAAE,CAAC,CAAC,oBAAoB;QAC1C,kBAAkB,EAAE,CAAC,CAAC,oBAAoB;QAC1C,sBAAsB,EAAE,CAAC,CAAC,yBAAyB;QACnD,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACjC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,CAAe;IAC5C,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,gBAAgB,EAAE,CAAC,CAAC,kBAAkB;QACtC,iBAAiB,EAAE,CAAC,CAAC,mBAAmB;QACxC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,kBAAkB,EAAE,CAAC,CAAC,oBAAoB;QAC1C,YAAY,EAAE,CAAC,CAAC,cAAc;QAC9B,YAAY,EAAE,CAAC,CAAC,cAAc;QAC9B,YAAY,EAAE,CAAC,CAAC,aAAa;QAC7B,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;QACvD,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;QACjD,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACjC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,CAAmB;IACpD,OAAO;QACL,SAAS,EAAE,CAAC,CAAC,UAAU;QACvB,cAAc,EAAE,CAAC,CAAC,eAAe;QACjC,UAAU,EAAE,CAAC,CAAC,WAAW;QACzB,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,gBAAgB,EAAE,CAAC,CAAC,iBAAiB;QACrC,YAAY,EAAE,CAAC,CAAC,aAAa;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,CAA4B;IAE5B,OAAO;QACL,GAAG,cAAc,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,UAAU,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,CAAqB;IACxD,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,MAAM,EAAE,CAAC,CAAC,OAAO;QACjB,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,IAAI,EAAE,CAAC,CAAC,KAAK;QACb,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;KAClC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/phone/types.ts"],"names":[],"mappings":"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"}
@@ -54,15 +54,16 @@ export declare function computeAuthHash(masterKey: Uint8Array): string;
54
54
  * @param orgKey - 32-byte org encryption key to wrap.
55
55
  * @returns Base64-encoded ciphertext blob.
56
56
  */
57
- export declare function wrapOrgKey(masterKey: Uint8Array, orgKey: Uint8Array): string;
57
+ export declare function wrapOrgKey(masterKey: Uint8Array, orgKey: Uint8Array, vaultKeyId?: string): string;
58
58
  /**
59
59
  * Unwrap the org encryption key using a master key.
60
60
  *
61
61
  * @param masterKey - 32-byte master key.
62
62
  * @param wrappedB64 - Base64-encoded ciphertext blob from the server.
63
+ * @param vaultKeyId - Vault key UUID used as AAD during wrapping.
63
64
  * @returns 32-byte org encryption key.
64
65
  */
65
- export declare function unwrapOrgKey(masterKey: Uint8Array, wrappedB64: string): Uint8Array;
66
+ export declare function unwrapOrgKey(masterKey: Uint8Array, wrappedB64: string, vaultKeyId?: string): Uint8Array;
66
67
  /**
67
68
  * Serialize a payload to JSON and encrypt it with the org encryption key.
68
69
  *
@@ -70,15 +71,16 @@ export declare function unwrapOrgKey(masterKey: Uint8Array, wrappedB64: string):
70
71
  * @param payload - Plain object to encrypt.
71
72
  * @returns Base64-encoded ciphertext blob.
72
73
  */
73
- export declare function encryptPayload(orgKey: Uint8Array, payload: Record<string, unknown>): string;
74
+ export declare function encryptPayload(orgKey: Uint8Array, payload: Record<string, unknown>, secretId?: string): string;
74
75
  /**
75
76
  * Decrypt a base64 ciphertext blob and parse the JSON payload.
76
77
  *
77
78
  * @param orgKey - 32-byte org encryption key.
78
79
  * @param encryptedB64 - Base64-encoded ciphertext blob.
80
+ * @param secretId - Vault secret UUID used as AAD during encryption.
79
81
  * @returns The decrypted payload as a plain object.
80
82
  */
81
- export declare function decryptPayload(orgKey: Uint8Array, encryptedB64: string): Record<string, unknown>;
83
+ export declare function decryptPayload(orgKey: Uint8Array, encryptedB64: string, secretId?: string): Record<string, unknown>;
82
84
  /**
83
85
  * Generate a random 256-bit org encryption key.
84
86
  *
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/vault/crypto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAYH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAwB1C;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAWvD;AAMD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,UAAU,CAE7D;AAMD;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,CAWrB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAE7D;AAqCD;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,UAAU,GACjB,MAAM,CAGR;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,MAAM,GACjB,UAAU,CAGZ;AAMD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,MAAM,CAIR;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;AAMD;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,UAAU,CAErD;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,6EAA6E;IAC7E,uBAAuB,EAAE,MAAM,CAAC;IAChC,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOlF;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,UAAU,EAC5B,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,YAAY,CAAA;CAAO,GACvC,OAAO,CAAC,gBAAgB,CAAC,CAa3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,CACxC,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,UAAU,GAC3B,OAAO,CAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CA0BrC"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/vault/crypto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAYH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAwB1C;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAWvD;AAMD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,UAAU,CAE7D;AAMD;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,CAWrB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAE7D;AAuCD;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,UAAU,EAClB,UAAU,GAAE,MAAW,GACtB,MAAM,CAGR;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,MAAM,EAClB,UAAU,GAAE,MAAW,GACtB,UAAU,CAGZ;AAMD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,GAAE,MAAW,GACpB,MAAM,CAIR;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,MAAM,EACpB,QAAQ,GAAE,MAAW,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;AAMD;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,UAAU,CAErD;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,6EAA6E;IAC7E,uBAAuB,EAAE,MAAM,CAAC;IAChC,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOlF;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,UAAU,EAC5B,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,YAAY,CAAA;CAAO,GACvC,OAAO,CAAC,gBAAgB,CAAC,CAc3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,CACxC,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,UAAU,GAC3B,OAAO,CAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CA2BrC"}
@@ -102,9 +102,11 @@ export function computeAuthHash(masterKey) {
102
102
  // ---------------------------------------------------------------------------
103
103
  // AES-256-GCM
104
104
  // ---------------------------------------------------------------------------
105
- function aesGcmEncrypt(key, plaintext) {
105
+ function aesGcmEncrypt(key, plaintext, aad = "") {
106
106
  const iv = randomBytes(AES_IV_BYTES);
107
107
  const cipher = createCipheriv("aes-256-gcm", key, iv);
108
+ if (aad)
109
+ cipher.setAAD(Buffer.from(aad, "utf-8"));
108
110
  const encrypted = cipher.update(plaintext);
109
111
  const final = cipher.final();
110
112
  const tag = cipher.getAuthTag();
@@ -116,12 +118,14 @@ function aesGcmEncrypt(key, plaintext) {
116
118
  result.set(tag, encrypted.length + final.length + iv.length);
117
119
  return result;
118
120
  }
119
- function aesGcmDecrypt(key, blob) {
121
+ function aesGcmDecrypt(key, blob, aad = "") {
120
122
  const tag = blob.slice(-AES_TAG_BYTES);
121
123
  const nonce = blob.slice(-(AES_IV_BYTES + AES_TAG_BYTES), -AES_TAG_BYTES);
122
124
  const ct = blob.slice(0, -(AES_IV_BYTES + AES_TAG_BYTES));
123
125
  const decipher = createDecipheriv("aes-256-gcm", key, nonce);
124
126
  decipher.setAuthTag(tag);
127
+ if (aad)
128
+ decipher.setAAD(Buffer.from(aad, "utf-8"));
125
129
  const decrypted = decipher.update(ct);
126
130
  const final = decipher.final();
127
131
  const result = new Uint8Array(decrypted.length + final.length);
@@ -136,8 +140,8 @@ function aesGcmDecrypt(key, blob) {
136
140
  * @param orgKey - 32-byte org encryption key to wrap.
137
141
  * @returns Base64-encoded ciphertext blob.
138
142
  */
139
- export function wrapOrgKey(masterKey, orgKey) {
140
- const blob = aesGcmEncrypt(masterKey, orgKey);
143
+ export function wrapOrgKey(masterKey, orgKey, vaultKeyId = "") {
144
+ const blob = aesGcmEncrypt(masterKey, orgKey, vaultKeyId);
141
145
  return Buffer.from(blob).toString("base64");
142
146
  }
143
147
  /**
@@ -145,11 +149,12 @@ export function wrapOrgKey(masterKey, orgKey) {
145
149
  *
146
150
  * @param masterKey - 32-byte master key.
147
151
  * @param wrappedB64 - Base64-encoded ciphertext blob from the server.
152
+ * @param vaultKeyId - Vault key UUID used as AAD during wrapping.
148
153
  * @returns 32-byte org encryption key.
149
154
  */
150
- export function unwrapOrgKey(masterKey, wrappedB64) {
155
+ export function unwrapOrgKey(masterKey, wrappedB64, vaultKeyId = "") {
151
156
  const blob = new Uint8Array(Buffer.from(wrappedB64, "base64"));
152
- return aesGcmDecrypt(masterKey, blob);
157
+ return aesGcmDecrypt(masterKey, blob, vaultKeyId);
153
158
  }
154
159
  // ---------------------------------------------------------------------------
155
160
  // Secret payload encryption / decryption
@@ -161,9 +166,9 @@ export function unwrapOrgKey(masterKey, wrappedB64) {
161
166
  * @param payload - Plain object to encrypt.
162
167
  * @returns Base64-encoded ciphertext blob.
163
168
  */
164
- export function encryptPayload(orgKey, payload) {
169
+ export function encryptPayload(orgKey, payload, secretId = "") {
165
170
  const plaintext = new TextEncoder().encode(JSON.stringify(payload));
166
- const blob = aesGcmEncrypt(orgKey, plaintext);
171
+ const blob = aesGcmEncrypt(orgKey, plaintext, secretId);
167
172
  return Buffer.from(blob).toString("base64");
168
173
  }
169
174
  /**
@@ -171,11 +176,12 @@ export function encryptPayload(orgKey, payload) {
171
176
  *
172
177
  * @param orgKey - 32-byte org encryption key.
173
178
  * @param encryptedB64 - Base64-encoded ciphertext blob.
179
+ * @param secretId - Vault secret UUID used as AAD during encryption.
174
180
  * @returns The decrypted payload as a plain object.
175
181
  */
176
- export function decryptPayload(orgKey, encryptedB64) {
182
+ export function decryptPayload(orgKey, encryptedB64, secretId = "") {
177
183
  const blob = new Uint8Array(Buffer.from(encryptedB64, "base64"));
178
- const plaintext = aesGcmDecrypt(orgKey, blob);
184
+ const plaintext = aesGcmDecrypt(orgKey, blob, secretId);
179
185
  return JSON.parse(new TextDecoder().decode(plaintext));
180
186
  }
181
187
  // ---------------------------------------------------------------------------
@@ -218,9 +224,10 @@ export async function generateVaultKeyMaterial(vaultKey, organizationId, orgEncr
218
224
  const salt = deriveSalt(organizationId);
219
225
  const masterKey = await deriveMasterKey(vaultKey, salt);
220
226
  const authHash = computeAuthHash(masterKey);
221
- const wrapped = wrapOrgKey(masterKey, orgEncryptionKey);
227
+ const keyId = randomUUID();
228
+ const wrapped = wrapOrgKey(masterKey, orgEncryptionKey, keyId);
222
229
  return {
223
- id: randomUUID(),
230
+ id: keyId,
224
231
  wrappedOrgEncryptionKey: wrapped,
225
232
  authHash,
226
233
  keyType: options.keyType ?? VaultKeyType.PRIMARY,
@@ -253,9 +260,10 @@ export async function generateRecoveryCode(organizationId, orgEncryptionKey) {
253
260
  const salt = deriveSalt(organizationId);
254
261
  const masterKey = await deriveMasterKey(code, salt);
255
262
  const authHash = computeAuthHash(masterKey);
256
- const wrapped = wrapOrgKey(masterKey, orgEncryptionKey);
263
+ const keyId = randomUUID();
264
+ const wrapped = wrapOrgKey(masterKey, orgEncryptionKey, keyId);
257
265
  const material = {
258
- id: randomUUID(),
266
+ id: keyId,
259
267
  wrappedOrgEncryptionKey: wrapped,
260
268
  authHash,
261
269
  keyType: VaultKeyType.RECOVERY,
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/vault/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/vault/crypto.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  * UnlockedVault — crypto-enabled wrapper for secret CRUD after unlock.
6
6
  */
7
7
  import { HttpTransport } from "../../_http.js";
8
+ import type { TOTPCode, TOTPConfig } from "../totp.js";
8
9
  import type { AccessRule, DecryptedVaultSecret, SecretPayload, VaultInfo, VaultKey, VaultSecret } from "../types.js";
9
10
  /**
10
11
  * Org-level vault operations.
@@ -93,10 +94,16 @@ export declare class VaultResource {
93
94
  export declare class UnlockedVault {
94
95
  private readonly http;
95
96
  private readonly orgKey;
96
- private readonly secretsCache;
97
+ private secretsCache;
97
98
  constructor(http: HttpTransport, orgKey: Uint8Array, secretsCache: DecryptedVaultSecret[]);
98
99
  /** All vault secrets decrypted from the unlock response. */
99
100
  get secrets(): DecryptedVaultSecret[];
101
+ /**
102
+ * Re-fetch, decrypt, and update a single secret in the cache.
103
+ *
104
+ * Best-effort — if the re-fetch fails the cache is left unchanged.
105
+ */
106
+ private refreshCachedSecret;
100
107
  /**
101
108
  * Fetch and decrypt a single vault secret.
102
109
  *
@@ -145,5 +152,32 @@ export declare class UnlockedVault {
145
152
  * @param secretId - UUID of the secret to delete.
146
153
  */
147
154
  deleteSecret(secretId: string): Promise<void>;
155
+ /**
156
+ * Add or replace the TOTP configuration on a login secret.
157
+ *
158
+ * @param secretId - UUID of the login secret.
159
+ * @param totp - A {@link TOTPConfig} object or an `otpauth://totp/...` URI string.
160
+ * @returns Updated {@link VaultSecret} metadata.
161
+ * @throws TypeError if the secret is not a login type.
162
+ * @throws Error if a URI string is invalid or not TOTP.
163
+ */
164
+ setTotp(secretId: string, totp: TOTPConfig | string): Promise<VaultSecret>;
165
+ /**
166
+ * Remove TOTP configuration from a login secret.
167
+ *
168
+ * @param secretId - UUID of the login secret.
169
+ * @returns Updated {@link VaultSecret} metadata.
170
+ * @throws TypeError if the secret is not a login type.
171
+ */
172
+ removeTotp(secretId: string): Promise<VaultSecret>;
173
+ /**
174
+ * Generate the current TOTP code for a login secret.
175
+ *
176
+ * @param secretId - UUID of the login secret.
177
+ * @returns A {@link TOTPCode}.
178
+ * @throws TypeError if the secret is not a login type.
179
+ * @throws Error if the login has no TOTP configured.
180
+ */
181
+ getTotpCode(secretId: string): Promise<TOTPCode>;
148
182
  }
149
183
  //# sourceMappingURL=vault.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../../src/vault/resources/vault.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAS/C,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,aAAa,EACb,SAAS,EACT,QAAQ,EACR,WAAW,EAEZ,MAAM,aAAa,CAAC;AAoBrB;;;;;;GAMG;AACH,qBAAa,aAAa;IACxB,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAE7B,gBAAgB;IAChB,SAAS,EAAE,aAAa,GAAG,IAAI,CAAQ;IAEvC,gBAAgB;gBACJ,IAAI,EAAE,aAAa;IAQ/B,wDAAwD;IAClD,IAAI,IAAI,OAAO,CAAC,SAAS,CAAC;IAShC;;;;OAIG;IACG,QAAQ,CAAC,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAWvE;;;;;OAKG;IACG,WAAW,CAAC,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOhF;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD;;;;OAIG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAO9D;;;;;OAKG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAQ5E;;;;;OAKG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvE;;;;;;;;;;;;;OAaG;IACG,MAAM,CACV,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAO,GACpC,OAAO,CAAC,aAAa,CAAC;CAwE1B;AAED;;;;;;GAMG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyB;gBAGpD,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,oBAAoB,EAAE;IAOtC,4DAA4D;IAC5D,IAAI,OAAO,IAAI,oBAAoB,EAAE,CAEpC;IAMD;;;;OAIG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsBhE;;;;;;;;;OASG;IACG,YAAY,CAAC,OAAO,EAAE;QAC1B,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,aAAa,CAAC;KACxB,GAAG,OAAO,CAAC,WAAW,CAAC;IAcxB;;;;;;;;;;;;;;;OAeG;IACG,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,aAAa,CAAC;KACzB,GACA,OAAO,CAAC,WAAW,CAAC;IA0BvB;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../../src/vault/resources/vault.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAe,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAUvD,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,aAAa,EACb,SAAS,EACT,QAAQ,EACR,WAAW,EAEZ,MAAM,aAAa,CAAC;AAqBrB;;;;;;GAMG;AACH,qBAAa,aAAa;IACxB,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAE7B,gBAAgB;IAChB,SAAS,EAAE,aAAa,GAAG,IAAI,CAAQ;IAEvC,gBAAgB;gBACJ,IAAI,EAAE,aAAa;IAQ/B,wDAAwD;IAClD,IAAI,IAAI,OAAO,CAAC,SAAS,CAAC;IAShC;;;;OAIG;IACG,QAAQ,CAAC,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAWvE;;;;;OAKG;IACG,WAAW,CAAC,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOhF;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD;;;;OAIG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAO9D;;;;;OAKG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAQ5E;;;;;OAKG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvE;;;;;;;;;;;;;OAaG;IACG,MAAM,CACV,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAO,GACpC,OAAO,CAAC,aAAa,CAAC;CA4F1B;AAED;;;;;;GAMG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,YAAY,CAAyB;gBAG3C,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,oBAAoB,EAAE;IAOtC,4DAA4D;IAC5D,IAAI,OAAO,IAAI,oBAAoB,EAAE,CAEpC;IAED;;;;OAIG;YACW,mBAAmB;IAejC;;;;OAIG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsBhE;;;;;;;;;OASG;IACG,YAAY,CAAC,OAAO,EAAE;QAC1B,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,aAAa,CAAC;KACxB,GAAG,OAAO,CAAC,WAAW,CAAC;IA0BxB;;;;;;;;;;;;;;;OAeG;IACG,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,aAAa,CAAC;KACzB,GACA,OAAO,CAAC,WAAW,CAAC;IA4BvB;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASnD;;;;;;;;OAQG;IACG,OAAO,CACX,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,UAAU,GAAG,MAAM,GACxB,OAAO,CAAC,WAAW,CAAC;IAYvB;;;;;;OAMG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAYxD;;;;;;;OAOG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CAavD"}