@eka-care/medassist-core 1.0.32 → 1.0.34

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.
package/dist/Synapse.d.ts CHANGED
@@ -5,7 +5,6 @@
5
5
  import { SYNAPSE_REALTIME_EVENTS } from "./messages/types";
6
6
  import { type SessionResponse } from "./resources/session/types";
7
7
  import { type AudioMetaData } from "./media/audio/types";
8
- import type { ToolCallResponse } from "./resources/toolCall/types";
9
8
  import type { AgentConfigResponse, ExistingSessionOptions, SendMessageOptions, SynapseSDKConfig, USER_FEEDBACK } from "./types";
10
9
  export declare class SynapseSDK {
11
10
  private connection;
@@ -47,7 +46,7 @@ export declare class SynapseSDK {
47
46
  /**
48
47
  * Call tool
49
48
  */
50
- callTool<R extends ToolCallResponse = ToolCallResponse>(name: string, params?: Record<string, unknown>): Promise<R>;
49
+ callTool(tool_id: string, message_id: string, params?: Record<string, unknown>): Promise<void>;
51
50
  /**
52
51
  * Send audio
53
52
  * */
@@ -1 +1 @@
1
- {"version":3,"file":"Synapse.d.ts","sourceRoot":"","sources":["../src/Synapse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH,OAAO,EACL,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AAqB1B,OAAO,EACL,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,kBAAkB,EAAiB,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI/I,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,eAAe,CAAkB;IAEzC,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,mBAAmB,CAAkB;gBAEjC,MAAM,EAAE,gBAAgB;IAcpC;;;;;;OAMG;IACU,YAAY,CACvB,eAAe,CAAC,EAAE,sBAAsB,GACvC,OAAO,CAAC,eAAe,CAAC;IA6B3B;;OAEG;IACU,WAAW,CAAC,EACvB,OAAO,EACP,KAAK,EACL,KAAK,EACL,aAAa,EACb,OAAO,EACP,eAAe,EAChB,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCrC;;OAEG;IACU,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBrG;;OAEG;IACI,EAAE,CACP,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACrC,IAAI;IAIP;;OAEG;IACI,GAAG,CACR,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACrC,IAAI;IAIP;;OAEG;IACI,gBAAgB,IAAI,eAAe;IAU1C;;OAEG;IACU,QAAQ,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EACjE,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IA+Cb;;SAEK;IACQ,cAAc,CAAC,EAC1B,QAAQ,EACR,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;QAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgCjB;;OAEG;IACI,YAAY,IAAI,IAAI;IA+Bd,cAAc,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIpD,WAAW,IAAI,OAAO;IAG7B;;OAEG;IACI,UAAU,IAAI,IAAI;IAQzB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAYtB;;;OAGG;YACW,oBAAoB;IAwClC;;;OAGG;YACW,aAAa;IAwC3B;;OAEG;YACW,cAAc;IAuB5B;;OAEG;YACW,gBAAgB;IAO9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAe9B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAgD/B;;OAEG;YACW,mBAAmB;IA6CjC,OAAO,CAAC,iBAAiB;CAW1B"}
1
+ {"version":3,"file":"Synapse.d.ts","sourceRoot":"","sources":["../src/Synapse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH,OAAO,EACL,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AAqB1B,OAAO,EACL,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,kBAAkB,EAA2C,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAIzK,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,eAAe,CAAkB;IAEzC,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,mBAAmB,CAAkB;gBAEjC,MAAM,EAAE,gBAAgB;IAcpC;;;;;;OAMG;IACU,YAAY,CACvB,eAAe,CAAC,EAAE,sBAAsB,GACvC,OAAO,CAAC,eAAe,CAAC;IA6B3B;;OAEG;IACU,WAAW,CAAC,EACvB,OAAO,EACP,KAAK,EACL,KAAK,EACL,aAAa,EACb,OAAO,EACP,eAAe,EAChB,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCrC;;OAEG;IACU,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBrG;;OAEG;IACI,EAAE,CACP,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACrC,IAAI;IAIP;;OAEG;IACI,GAAG,CACR,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACrC,IAAI;IAIP;;OAEG;IACI,gBAAgB,IAAI,eAAe;IAU1C;;OAEG;IACU,QAAQ,CACnB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC;IAyDhB;;SAEK;IACQ,cAAc,CAAC,EAC1B,QAAQ,EACR,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;QAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgCjB;;OAEG;IACI,YAAY,IAAI,IAAI;IA+Bd,cAAc,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIpD,WAAW,IAAI,OAAO;IAG7B;;OAEG;IACI,UAAU,IAAI,IAAI;IAQzB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAYtB;;;OAGG;YACW,oBAAoB;IAwClC;;;OAGG;YACW,aAAa;IAwC3B;;OAEG;YACW,cAAc;IAuB5B;;OAEG;YACW,gBAAgB;IAO9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAe9B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAgD/B;;OAEG;YACW,mBAAmB;IA6CjC,OAAO,CAAC,iBAAiB;CAW1B"}
package/dist/Synapse.js CHANGED
@@ -154,7 +154,7 @@ class SynapseSDK {
154
154
  /**
155
155
  * Call tool
156
156
  */
157
- async callTool(name, params) {
157
+ async callTool(tool_id, message_id, params) {
158
158
  if (!this.connection) {
159
159
  const error = new Error_2.ConnectionError("Connection not established. Session may not be initialized.", {
160
160
  context: { stage: "callTool" },
@@ -163,7 +163,7 @@ class SynapseSDK {
163
163
  this.emitError(error);
164
164
  throw error;
165
165
  }
166
- if (!this.sessionConfig?.session_id) {
166
+ if (!this.sessionConfig?.session_id || !this.sessionConfig?.session_token) {
167
167
  const error = new Error_2.SessionError("Session ID not found", {
168
168
  context: { stage: "callTool" },
169
169
  hint: "Call startSession() before attempting to call tool.",
@@ -174,19 +174,25 @@ class SynapseSDK {
174
174
  switch (this.connectionType) {
175
175
  case ConnectionFactory_1.ConnectionType.SOCKET:
176
176
  try {
177
- const response = await this.resourceManager.callTool(this.sessionConfig.session_id, name, params);
177
+ const response = await this.resourceManager.callTool(this.sessionConfig.session_id, tool_id, message_id, this.sessionConfig.session_token, params);
178
178
  if (response.err) {
179
179
  throw new Error_2.APIError(response.err.msg, 500, response.err);
180
180
  }
181
- return response;
181
+ let cleanedResponse = {
182
+ data: { ...response.data },
183
+ messageId: response._id,
184
+ timestamp: response.ts,
185
+ };
186
+ this.connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.TOOL_CALL, cleanedResponse);
182
187
  }
183
188
  catch (error) {
184
189
  if (error instanceof Error_2.APIError && error?.status === 401) {
185
190
  await this.handleSessionExpiry();
186
- return await this.callTool(name, params);
191
+ return await this.callTool(tool_id, message_id, params);
187
192
  }
188
193
  throw error;
189
194
  }
195
+ break;
190
196
  default:
191
197
  const error = new Error_2.ConnectionError("Unsupported connection type", {
192
198
  context: { stage: "callTool", connectionType: this.connectionType },
@@ -107,40 +107,41 @@ export type TDoctorDetails = {
107
107
  languages?: string;
108
108
  };
109
109
  export type TCardInput = {
110
+ card_id: string;
110
111
  title?: string;
111
- tags?: string[];
112
+ tags?: string;
112
113
  icon?: string;
113
114
  description?: string;
114
- banner?: TCardBanner;
115
+ banner?: {
116
+ text: string;
117
+ theme: string;
118
+ };
119
+ banner_text?: string;
115
120
  items?: TCardItem[];
116
- ctas?: TCardCta[];
117
- };
118
- export type TCardBanner = {
119
- text?: string;
120
- theme?: TCardTheme;
121
+ primary_cta?: TCardCta;
122
+ secondary_cta?: TCardCta;
121
123
  };
122
124
  export type TCardItem = {
123
125
  icon?: string;
124
126
  text: string;
125
127
  };
126
128
  export type TCardCta = {
129
+ cta_id: string;
127
130
  title: string;
128
- theme?: TCardTheme;
129
131
  link?: string;
130
132
  action?: string;
131
133
  icon?: string;
132
134
  text?: string;
133
135
  };
134
136
  export type TCardTheme = "success" | "warning" | "danger" | "primary";
135
- export type TCallbacks = {
136
- tool_name: string;
137
- input_schema: {
138
- doctor_id?: string;
139
- hospital_id?: string;
140
- region_id?: string;
141
- date?: string;
142
- slot?: string;
143
- } & Record<string, unknown>;
137
+ export type TMediaCard = {
138
+ title?: string;
139
+ description?: string;
140
+ tags?: string;
141
+ tags_text?: string;
142
+ banner_text?: string;
143
+ action?: "download" | "screenshot";
144
+ link?: string;
144
145
  };
145
146
  export type SynapseContentTypes = SOCKET_CONTENT_TYPES;
146
147
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/messages/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/messages/types.ts"],"names":[],"mappings":"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"}
@@ -36,69 +36,3 @@ exports.SYNAPSE_REALTIME_ERROR_CODES = {
36
36
  exports.SYNAPSE_REALTIME_RESERVED_EVENTS = {
37
37
  SESSION_EXPIRED: "session_expired", //to be used for session expiry
38
38
  };
39
- // export type ToolEscalationData = {
40
- // type?: ContentType;
41
- // choices?: string[];
42
- // callbacks?: Record<string, boolean>;
43
- // doctor_details?: TDoctorDetails;
44
- // additional_option?: typeof MULTI_SELECT_ADDITIONAL_OPTION;
45
- // text?: string;
46
- // tips?: string[];
47
- // [key: string]: unknown;
48
- // };
49
- //TODO: tips will never come in tool escalation
50
- // {component: "doctor_card",
51
- // input: {
52
- // doctors: [{
53
- // hospital_id?:
54
- // doctor_id:
55
- // selected_date?: "20-02-2024" or today,
56
- // // Either below availability is present or we have a callback available to fetch availabilities
57
- // availability?: [{
58
- // date: "20-02-2024",
59
- // slots: ["13:00", "14:00"],
60
- // selected_slot?: "13:00"
61
- // },
62
- // {
63
- // date: "21-02-2024",
64
- // slots: ["09:00", "14:00"],
65
- // selected_slot?: "09:00"
66
- // }]
67
- // date_preference
68
- // slot_preference
69
- // }],
70
- // // Let's say we have doctor details in our cache, we provide it directly here instead of waiting for callbacks
71
- // doctor_details?: {
72
- // [doctor_id]: {
73
- // name: string;
74
- // specialty: string;
75
- // hospitals: {
76
- // name, city, state, hospital_id, region_id
77
- // }
78
- // timings?: string;
79
- // experience?: string; // optional
80
- // profile_link?: string; // optional
81
- // profile_pic?: string; //optional
82
- // languages?: string; //optional
83
- // }
84
- // }
85
- // },
86
- // callbacks: [
87
- // {
88
- // tool_name: "doctor_details",
89
- // input_schema: {
90
- // doctor_id: "string",
91
- // }
92
- // },
93
- // {
94
- // // Doctor availability where we call multiple APIs for each doctor and date is handled by Matrix and UI only has 1 tool to call
95
- // // The entire logic for getting the slots and translating it to above mentioned availability response is handled by matrix using business specific logics defined.
96
- // tool_name: "doctor_availability",
97
- // input_schema: {
98
- // doctor_id: "string",
99
- // hospital_id: "string"
100
- // date?
101
- // slot?
102
- // }
103
- // }
104
- // ]}
@@ -9,7 +9,6 @@ export declare class ResourceManager {
9
9
  private resourceConfig;
10
10
  private httpClient;
11
11
  private session;
12
- private toolCall;
13
12
  private config;
14
13
  constructor(config: ResourceConfig);
15
14
  /**
@@ -39,6 +38,6 @@ export declare class ResourceManager {
39
38
  * Call a tool
40
39
  * POST /med-assist/api-call-tool
41
40
  */
42
- callTool<R extends ToolCallResponse = ToolCallResponse>(sessionId: string, toolName: string, toolParams?: Record<string, unknown>): Promise<R>;
41
+ callTool(sessionId: string, toolId: string, message_id: string, session_token: string, toolParams?: Record<string, unknown>): Promise<ToolCallResponse>;
43
42
  }
44
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAwB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpF,qBAAa,eAAe;IAC1B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,cAAc;IAmBlC;;OAEG;IACU,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;IAsC5E,cAAc,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAU3D;;;OAGG;IACU,eAAe,CAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IA+CjD;;;OAGG;IACU,cAAc,CACzB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC;IAI3B;;;OAGG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAShB;;;OAGG;IACU,QAAQ,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EACjE,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,CAAC,CAAC;CAMd"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAwB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpF,qBAAa,eAAe;IAC1B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,cAAc;IAmBlC;;OAEG;IACU,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;IAsC5E,cAAc,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAU3D;;;OAGG;IACU,eAAe,CAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IA+CjD;;;OAGG;IACU,cAAc,CACzB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC;IAI3B;;;OAGG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAShB;;;OAGG;IACU,QAAQ,CACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,gBAAgB,CAAC;CAG7B"}
@@ -7,13 +7,11 @@ exports.ResourceManager = void 0;
7
7
  const HttpClient_1 = require("../internal/Api/HttpClient");
8
8
  const Session_1 = require("./session/Session");
9
9
  const Error_1 = require("../internal/Error/Error");
10
- const ToolCall_1 = require("./toolCall/ToolCall");
11
10
  const Config_1 = require("./config/Config");
12
11
  class ResourceManager {
13
12
  resourceConfig;
14
13
  httpClient;
15
14
  session;
16
- toolCall = null;
17
15
  config;
18
16
  constructor(config) {
19
17
  this.resourceConfig = config;
@@ -143,11 +141,8 @@ class ResourceManager {
143
141
  * Call a tool
144
142
  * POST /med-assist/api-call-tool
145
143
  */
146
- async callTool(sessionId, toolName, toolParams) {
147
- if (!this.toolCall) {
148
- this.toolCall = new ToolCall_1.ToolCall(this.httpClient);
149
- }
150
- return await this.toolCall.callTool(sessionId, toolName, toolParams);
144
+ async callTool(sessionId, toolId, message_id, session_token, toolParams) {
145
+ return await this.session.callTool(sessionId, toolId, message_id, session_token, toolParams);
151
146
  }
152
147
  }
153
148
  exports.ResourceManager = ResourceManager;
@@ -1,4 +1,5 @@
1
1
  import { BaseResource } from "../../internal/Api/BaseResource";
2
+ import { type ToolCallResponse } from "../toolCall/types";
2
3
  import { type SessionCreateRequest, type SessionResponse, USER_FEEDBACK } from "./types";
3
4
  /**
4
5
  * SessionsResource class for managing sessions-related api calls
@@ -17,5 +18,6 @@ export declare class Session extends BaseResource {
17
18
  */
18
19
  refresh(sessionId: string, sessionToken: string): Promise<SessionResponse>;
19
20
  feedback(sessionId: string, messageId: string, feedback: USER_FEEDBACK, feedback_reason?: string): Promise<void>;
21
+ callTool(sessionId: string, toolId: string, messageId: string, sessionToken: string, toolParams?: Record<string, unknown>): Promise<ToolCallResponse>;
20
22
  }
21
23
  //# sourceMappingURL=Session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/resources/session/Session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAC,KAAK,oBAAoB,EAAE,KAAK,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExF;;GAEG;AACH,qBAAa,OAAQ,SAAQ,YAAY;IAEvC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAyB;IAC5B,MAAM,CAAC,cAAc,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAItE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIlE;;;OAGG;IACU,OAAO,CAClB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC;IAYd,QAAQ,CACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC;CAMjB"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/resources/session/Session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEzF;;GAEG;AACH,qBAAa,OAAQ,SAAQ,YAAY;IAEvC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAyB;IAC5B,MAAM,CAAC,cAAc,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAItE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIlE;;;OAGG;IACU,OAAO,CAClB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC;IAYd,QAAQ,CACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC;IAOH,QAAQ,CACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,gBAAgB,CAAC;CAU7B"}
@@ -30,10 +30,17 @@ class Session extends BaseResource_1.BaseResource {
30
30
  });
31
31
  }
32
32
  async feedback(sessionId, messageId, feedback, feedback_reason) {
33
- return this.put(`${this.basePath}/${sessionId}/message/${messageId}/feedback`, {
33
+ return this.put(`${this.basePath}/${sessionId}/messages/${messageId}/feedback`, {
34
34
  feedback,
35
35
  feedback_reason,
36
36
  });
37
37
  }
38
+ async callTool(sessionId, toolId, messageId, sessionToken, toolParams) {
39
+ return this.post(`${this.basePath}/${sessionId}/messages/${messageId}/tools/${toolId}`, { tool_params: toolParams }, {
40
+ headers: {
41
+ "x-sess-token": sessionToken,
42
+ },
43
+ });
44
+ }
38
45
  }
39
46
  exports.Session = Session;
@@ -2,7 +2,6 @@ import { BaseResource } from "../../internal/Api/BaseResource";
2
2
  import { type ToolCallResponse } from "./types";
3
3
  export declare class ToolCall extends BaseResource {
4
4
  private basePath;
5
- callTool<R extends ToolCallResponse>(sessionId: string, toolName: string, toolParams?: Record<string, unknown>): Promise<R>;
6
- private requestLocation;
5
+ callTool(sessionId: string, toolName: string, toolParams?: Record<string, unknown>): Promise<ToolCallResponse>;
7
6
  }
8
7
  //# sourceMappingURL=ToolCall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../../../src/resources/toolCall/ToolCall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAS,SAAQ,YAAY;IACxC,OAAO,CAAC,QAAQ,CAA+B;IAElC,QAAQ,CAAC,CAAC,SAAS,gBAAgB,EAC9C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,CAAC,CAAC;YAYC,eAAe;CA0C9B"}
1
+ {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../../../src/resources/toolCall/ToolCall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EACL,KAAK,gBAAgB,EACtB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAS,SAAQ,YAAY;IACxC,OAAO,CAAC,QAAQ,CAA+B;IAElC,QAAQ,CACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,gBAAgB,CAAC;CAsD7B"}
@@ -2,52 +2,15 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ToolCall = void 0;
4
4
  const BaseResource_1 = require("../../internal/Api/BaseResource");
5
- const types_1 = require("./types");
6
5
  class ToolCall extends BaseResource_1.BaseResource {
7
6
  basePath = "/med-assist/api-call-tool";
8
7
  async callTool(sessionId, toolName, toolParams) {
9
- if (toolName === types_1.SYNAPSE_TOOL_NAME.GET_LOCATION) {
10
- return this.requestLocation();
11
- }
8
+ // if (toolName === SYNAPSE_TOOL_NAME.GET_LOCATION) {
9
+ // return this.requestLocation() as Promise<R>;
10
+ // }
12
11
  return this.post(`${this.basePath}?session_id=${sessionId}&tool_name=${toolName}`, {
13
12
  tool_params: toolParams,
14
13
  });
15
14
  }
16
- async requestLocation() {
17
- return new Promise((resolve, reject) => {
18
- if (typeof navigator === "undefined" || !navigator.geolocation) {
19
- reject({
20
- code: 500,
21
- message: "Geolocation is not supported by this browser",
22
- status: 500,
23
- type: "GEOLOCATION_ERROR",
24
- originalError: new Error("Geolocation is not supported by this browser"),
25
- });
26
- return;
27
- }
28
- navigator.geolocation.getCurrentPosition((pos) => {
29
- resolve({
30
- latitude: pos.coords.latitude,
31
- longitude: pos.coords.longitude,
32
- accuracy: pos.coords?.accuracy ?? undefined,
33
- });
34
- }, (error) => {
35
- //err.code: 1 permission denied, 2 position unavailable, 3 timeout
36
- // reject(new Error(`Geolocation error: ${error.code}`));
37
- reject({
38
- code: error.code,
39
- message: error.message,
40
- status: 500,
41
- type: "GEOLOCATION_ERROR",
42
- originalError: error,
43
- });
44
- return;
45
- }, {
46
- timeout: 10000,
47
- maximumAge: 0,
48
- enableHighAccuracy: true,
49
- });
50
- });
51
- }
52
15
  }
53
16
  exports.ToolCall = ToolCall;
@@ -1,5 +1,5 @@
1
- import { MULTI_SELECT_ADDITIONAL_OPTION } from "../../events/Events";
2
- import type { TCardInput, TDoctorAvailability, TDoctorDetails } from "../../messages/types";
1
+ import { type StreamMatrixToSynapseMessage } from "../../events/types";
2
+ import type { TCardInput, TDoctorAvailability, TDoctorDetails, TMediaCard } from "../../messages/types";
3
3
  import type { ResourceResponse } from "../types";
4
4
  export type TDoctorToolResponse = ResourceResponse & TDoctorDetails;
5
5
  export type TAvailabilitySlotsToolResponse = ResourceResponse & {
@@ -16,36 +16,16 @@ export declare enum SYNAPSE_TOOL_NAME {
16
16
  DOCTOR_DETAILS = "doctor_details",
17
17
  GET_LOCATION = "get_location"
18
18
  }
19
- export declare const SYNAPSE_COMPONENTS: {
20
- readonly MOBILE_VERIFICATION: "mobile_verification";
21
- readonly PILL: "pills";
22
- readonly MULTI: "multi";
23
- readonly DOCTOR_CARD: "doctor_card";
24
- readonly CARD: "card";
25
- };
26
- export type SYNAPSE_COMPONENT_TYPES = (typeof SYNAPSE_COMPONENTS)[keyof typeof SYNAPSE_COMPONENTS];
19
+ export declare enum SYNAPSE_COMPONENTS {
20
+ PILL = "pills",
21
+ MULTI = "multi",
22
+ DOCTOR_CARD = "doctor_card",
23
+ CARD = "card",
24
+ MEDIA_CARD = "media_card"
25
+ }
27
26
  export type SYNAPSE_TOOL_TYPES = {
28
27
  ELICITATION: "elicitation";
29
28
  };
30
- export type ToolDetails = {
31
- input: {
32
- options?: {
33
- id: string;
34
- label: string;
35
- value: string;
36
- }[];
37
- mobile_number?: string;
38
- doctors?: TDoctorAvailability[];
39
- doctor_details?: TDoctorDetailsMap;
40
- cards?: TCardInput[];
41
- additional_option?: typeof MULTI_SELECT_ADDITIONAL_OPTION;
42
- text?: string;
43
- };
44
- component?: SYNAPSE_COMPONENT_TYPES;
45
- _meta?: Record<string, unknown> & {
46
- callbacks?: ToolCallbacks;
47
- };
48
- };
49
29
  export type TDoctorDetailsMap = {
50
30
  [doctor_id: string]: TDoctorDetails;
51
31
  };
@@ -67,5 +47,70 @@ export type TGetLocationToolResponse = ResourceResponse & {
67
47
  longitude: number;
68
48
  accuracy?: number;
69
49
  };
70
- export type ToolCallResponse = TDoctorToolResponse | TAvailabilitySlotsToolResponse | TAvailabilityDatesToolResponse | TGetLocationToolResponse;
50
+ export type TDoctorCardInput = {
51
+ doctors: TDoctorAvailability[];
52
+ doctor_details?: TDoctorDetailsMap;
53
+ };
54
+ export type TOption = {
55
+ id: string;
56
+ label: string;
57
+ value: string;
58
+ };
59
+ export type SynapseInputCompMap = {
60
+ [SYNAPSE_COMPONENTS.CARD]: {
61
+ cards: TCardInput[];
62
+ };
63
+ [SYNAPSE_COMPONENTS.DOCTOR_CARD]: TDoctorCardInput;
64
+ [SYNAPSE_COMPONENTS.MEDIA_CARD]: {
65
+ media_card: TMediaCard;
66
+ };
67
+ [SYNAPSE_COMPONENTS.MULTI]: {
68
+ options: TOption[];
69
+ };
70
+ [SYNAPSE_COMPONENTS.PILL]: {
71
+ options: TOption[];
72
+ };
73
+ };
74
+ export type SynapseSelectedCompMap = {
75
+ [SYNAPSE_COMPONENTS.CARD]: TCardInput;
76
+ [SYNAPSE_COMPONENTS.DOCTOR_CARD]: TDoctorCardInput;
77
+ [SYNAPSE_COMPONENTS.MEDIA_CARD]: TMediaCard;
78
+ [SYNAPSE_COMPONENTS.MULTI]: TOption;
79
+ [SYNAPSE_COMPONENTS.PILL]: TOption;
80
+ };
81
+ export type ToolInputTypes = SynapseSelectedCompMap[keyof SynapseSelectedCompMap];
82
+ type BaseToolDetails = {
83
+ status?: SYNAPSE_EICITATION_STATUS;
84
+ _meta?: {
85
+ schema?: {
86
+ type: "object";
87
+ properties?: {
88
+ [key: string]: {
89
+ type?: string | number | object;
90
+ description?: string;
91
+ };
92
+ };
93
+ required?: string[];
94
+ };
95
+ message?: string;
96
+ hidden_message?: string;
97
+ toast_message?: string;
98
+ };
99
+ };
100
+ type ComponentToolDetails<C extends SYNAPSE_COMPONENTS> = BaseToolDetails & {
101
+ component: C;
102
+ input: SynapseInputCompMap[C] & {
103
+ text?: string;
104
+ };
105
+ };
106
+ export type ToolDetails = {
107
+ [C in SYNAPSE_COMPONENTS]: ComponentToolDetails<C>;
108
+ }[SYNAPSE_COMPONENTS];
109
+ export declare enum SYNAPSE_EICITATION_STATUS {
110
+ PROGRESS = "progress",
111
+ SUCCESS = "success",
112
+ FAILURE = "failure"
113
+ }
114
+ export type ToolCallResponse = StreamMatrixToSynapseMessage & ResourceResponse;
115
+ export {};
71
116
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/resources/toolCall/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGjD,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,cAAc,CAAC;AAEpE,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,GAAG;IAC9D,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,GAAG;IAC9D,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE/D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,aAAa,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE;QACL,OAAO,CAAC,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACzD,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC;QAChC,cAAc,CAAC,EAAE,iBAAiB,CAAC;QACnC,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;QACrB,iBAAiB,CAAC,EAAE,OAAO,8BAA8B,CAAC;QAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAChC,SAAS,CAAC,EAAE,aAAa,CAAC;KAG3B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAAE,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAA;CAAE,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG;KACzB,GAAG,IAAI,0BAA0B,GAAG;QACnC,SAAS,EAAE,iBAAiB,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACvC;CACF,CAAC;AAEF,oBAAY,0BAA0B;IACpC,mBAAmB,4BAA4B;IAC/C,kBAAkB,wBAAwB;IAC1C,kBAAkB,wBAAwB;IAC1C,mBAAmB,yBAAyB;IAC5C,cAAc,uBAAuB;CACtC;AAED,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,8BAA8B,GAAG,8BAA8B,GAAG,wBAAwB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/resources/toolCall/types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SYNAPSE_TOOL_CALLBACK_NAME = exports.SYNAPSE_COMPONENTS = exports.SYNAPSE_TOOL_NAME = void 0;
3
+ exports.SYNAPSE_EICITATION_STATUS = exports.SYNAPSE_TOOL_CALLBACK_NAME = exports.SYNAPSE_COMPONENTS = exports.SYNAPSE_TOOL_NAME = void 0;
4
4
  var SYNAPSE_TOOL_NAME;
5
5
  (function (SYNAPSE_TOOL_NAME) {
6
6
  SYNAPSE_TOOL_NAME["MOBILE_VERIFICATION"] = "mobile_verification";
@@ -10,13 +10,15 @@ var SYNAPSE_TOOL_NAME;
10
10
  SYNAPSE_TOOL_NAME["DOCTOR_DETAILS"] = "doctor_details";
11
11
  SYNAPSE_TOOL_NAME["GET_LOCATION"] = "get_location";
12
12
  })(SYNAPSE_TOOL_NAME || (exports.SYNAPSE_TOOL_NAME = SYNAPSE_TOOL_NAME = {}));
13
- exports.SYNAPSE_COMPONENTS = {
14
- MOBILE_VERIFICATION: "mobile_verification",
15
- PILL: "pills",
16
- MULTI: "multi",
17
- DOCTOR_CARD: "doctor_card",
18
- CARD: "card",
19
- };
13
+ var SYNAPSE_COMPONENTS;
14
+ (function (SYNAPSE_COMPONENTS) {
15
+ // MOBILE_VERIFICATION = "mobile_verification",
16
+ SYNAPSE_COMPONENTS["PILL"] = "pills";
17
+ SYNAPSE_COMPONENTS["MULTI"] = "multi";
18
+ SYNAPSE_COMPONENTS["DOCTOR_CARD"] = "doctor_card";
19
+ SYNAPSE_COMPONENTS["CARD"] = "card";
20
+ SYNAPSE_COMPONENTS["MEDIA_CARD"] = "media_card";
21
+ })(SYNAPSE_COMPONENTS || (exports.SYNAPSE_COMPONENTS = SYNAPSE_COMPONENTS = {}));
20
22
  var SYNAPSE_TOOL_CALLBACK_NAME;
21
23
  (function (SYNAPSE_TOOL_CALLBACK_NAME) {
22
24
  SYNAPSE_TOOL_CALLBACK_NAME["DOCTOR_AVAILABILITY"] = "get_doctor_availability";
@@ -25,3 +27,9 @@ var SYNAPSE_TOOL_CALLBACK_NAME;
25
27
  SYNAPSE_TOOL_CALLBACK_NAME["MOBILE_VERIFICATION"] = "verify_mobile_number";
26
28
  SYNAPSE_TOOL_CALLBACK_NAME["DOCTOR_DETAILS"] = "get_doctor_details";
27
29
  })(SYNAPSE_TOOL_CALLBACK_NAME || (exports.SYNAPSE_TOOL_CALLBACK_NAME = SYNAPSE_TOOL_CALLBACK_NAME = {}));
30
+ var SYNAPSE_EICITATION_STATUS;
31
+ (function (SYNAPSE_EICITATION_STATUS) {
32
+ SYNAPSE_EICITATION_STATUS["PROGRESS"] = "progress";
33
+ SYNAPSE_EICITATION_STATUS["SUCCESS"] = "success";
34
+ SYNAPSE_EICITATION_STATUS["FAILURE"] = "failure";
35
+ })(SYNAPSE_EICITATION_STATUS || (exports.SYNAPSE_EICITATION_STATUS = SYNAPSE_EICITATION_STATUS = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eka-care/medassist-core",
3
- "version": "1.0.32",
3
+ "version": "1.0.34",
4
4
  "description": "TypeScript SDK for real-time medical chatbot experiences with session management, WebSocket connectivity, and media handling",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -31,9 +31,6 @@
31
31
  "type": "git",
32
32
  "url": "https://github.com/eka-care/synapse-sdk.git"
33
33
  },
34
- "dependencies": {
35
- "jszip": "^3.10.1"
36
- },
37
34
  "devDependencies": {
38
35
  "typescript": "^5.0.0"
39
36
  },