@nurama/sdk 0.0.0-stage → 1.4.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 (220) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +5 -0
  3. package/README.md +1080 -2
  4. package/dist/BotClient.d.ts +66 -0
  5. package/dist/BotClient.d.ts.map +1 -0
  6. package/dist/BotClient.js +68 -0
  7. package/dist/BotClient.js.map +1 -0
  8. package/dist/NuramaClient.d.ts +448 -0
  9. package/dist/NuramaClient.d.ts.map +1 -0
  10. package/dist/NuramaClient.js +864 -0
  11. package/dist/NuramaClient.js.map +1 -0
  12. package/dist/browser/nurama-bot-sdk.js +11780 -0
  13. package/dist/browser/nurama-bot-sdk.min.js +1 -0
  14. package/dist/browser/nurama-sdk.js +11732 -0
  15. package/dist/browser/nurama-sdk.min.js +1 -0
  16. package/dist/routes/ai.d.ts +280 -0
  17. package/dist/routes/ai.d.ts.map +1 -0
  18. package/dist/routes/ai.js +173 -0
  19. package/dist/routes/ai.js.map +1 -0
  20. package/dist/routes/asset.d.ts +493 -0
  21. package/dist/routes/asset.d.ts.map +1 -0
  22. package/dist/routes/asset.js +848 -0
  23. package/dist/routes/asset.js.map +1 -0
  24. package/dist/routes/auth.d.ts +218 -0
  25. package/dist/routes/auth.d.ts.map +1 -0
  26. package/dist/routes/auth.js +454 -0
  27. package/dist/routes/auth.js.map +1 -0
  28. package/dist/routes/blogPosts.d.ts +17 -0
  29. package/dist/routes/blogPosts.d.ts.map +1 -0
  30. package/dist/routes/blogPosts.js +29 -0
  31. package/dist/routes/blogPosts.js.map +1 -0
  32. package/dist/routes/board.d.ts +187 -0
  33. package/dist/routes/board.d.ts.map +1 -0
  34. package/dist/routes/board.js +270 -0
  35. package/dist/routes/board.js.map +1 -0
  36. package/dist/routes/bot.d.ts +147 -0
  37. package/dist/routes/bot.d.ts.map +1 -0
  38. package/dist/routes/bot.js +157 -0
  39. package/dist/routes/bot.js.map +1 -0
  40. package/dist/routes/chat.d.ts +842 -0
  41. package/dist/routes/chat.d.ts.map +1 -0
  42. package/dist/routes/chat.js +863 -0
  43. package/dist/routes/chat.js.map +1 -0
  44. package/dist/routes/chatAi.d.ts +51 -0
  45. package/dist/routes/chatAi.d.ts.map +1 -0
  46. package/dist/routes/chatAi.js +109 -0
  47. package/dist/routes/chatAi.js.map +1 -0
  48. package/dist/routes/config.d.ts +11 -0
  49. package/dist/routes/config.d.ts.map +1 -0
  50. package/dist/routes/config.js +24 -0
  51. package/dist/routes/config.js.map +1 -0
  52. package/dist/routes/convo.d.ts +169 -0
  53. package/dist/routes/convo.d.ts.map +1 -0
  54. package/dist/routes/convo.js +284 -0
  55. package/dist/routes/convo.js.map +1 -0
  56. package/dist/routes/credits.d.ts +82 -0
  57. package/dist/routes/credits.d.ts.map +1 -0
  58. package/dist/routes/credits.js +49 -0
  59. package/dist/routes/credits.js.map +1 -0
  60. package/dist/routes/device.d.ts +74 -0
  61. package/dist/routes/device.d.ts.map +1 -0
  62. package/dist/routes/device.js +122 -0
  63. package/dist/routes/device.js.map +1 -0
  64. package/dist/routes/folder.d.ts +75 -0
  65. package/dist/routes/folder.d.ts.map +1 -0
  66. package/dist/routes/folder.js +99 -0
  67. package/dist/routes/folder.js.map +1 -0
  68. package/dist/routes/invite.d.ts +61 -0
  69. package/dist/routes/invite.d.ts.map +1 -0
  70. package/dist/routes/invite.js +86 -0
  71. package/dist/routes/invite.js.map +1 -0
  72. package/dist/routes/joinLink.d.ts +38 -0
  73. package/dist/routes/joinLink.d.ts.map +1 -0
  74. package/dist/routes/joinLink.js +81 -0
  75. package/dist/routes/joinLink.js.map +1 -0
  76. package/dist/routes/membership.d.ts +116 -0
  77. package/dist/routes/membership.d.ts.map +1 -0
  78. package/dist/routes/membership.js +183 -0
  79. package/dist/routes/membership.js.map +1 -0
  80. package/dist/routes/notification.d.ts +103 -0
  81. package/dist/routes/notification.d.ts.map +1 -0
  82. package/dist/routes/notification.js +89 -0
  83. package/dist/routes/notification.js.map +1 -0
  84. package/dist/routes/payment.d.ts +56 -0
  85. package/dist/routes/payment.d.ts.map +1 -0
  86. package/dist/routes/payment.js +78 -0
  87. package/dist/routes/payment.js.map +1 -0
  88. package/dist/routes/product.d.ts +43 -0
  89. package/dist/routes/product.d.ts.map +1 -0
  90. package/dist/routes/product.js +53 -0
  91. package/dist/routes/product.js.map +1 -0
  92. package/dist/routes/project.d.ts +821 -0
  93. package/dist/routes/project.d.ts.map +1 -0
  94. package/dist/routes/project.js +1153 -0
  95. package/dist/routes/project.js.map +1 -0
  96. package/dist/routes/public.d.ts +269 -0
  97. package/dist/routes/public.d.ts.map +1 -0
  98. package/dist/routes/public.js +412 -0
  99. package/dist/routes/public.js.map +1 -0
  100. package/dist/routes/scratch.d.ts +70 -0
  101. package/dist/routes/scratch.d.ts.map +1 -0
  102. package/dist/routes/scratch.js +67 -0
  103. package/dist/routes/scratch.js.map +1 -0
  104. package/dist/routes/settings.d.ts +102 -0
  105. package/dist/routes/settings.d.ts.map +1 -0
  106. package/dist/routes/settings.js +94 -0
  107. package/dist/routes/settings.js.map +1 -0
  108. package/dist/routes/shortlink.d.ts +79 -0
  109. package/dist/routes/shortlink.d.ts.map +1 -0
  110. package/dist/routes/shortlink.js +25 -0
  111. package/dist/routes/shortlink.js.map +1 -0
  112. package/dist/routes/socket.d.ts +108 -0
  113. package/dist/routes/socket.d.ts.map +1 -0
  114. package/dist/routes/socket.js +555 -0
  115. package/dist/routes/socket.js.map +1 -0
  116. package/dist/routes/storage.d.ts +44 -0
  117. package/dist/routes/storage.d.ts.map +1 -0
  118. package/dist/routes/storage.js +49 -0
  119. package/dist/routes/storage.js.map +1 -0
  120. package/dist/routes/subscription.d.ts +184 -0
  121. package/dist/routes/subscription.d.ts.map +1 -0
  122. package/dist/routes/subscription.js +219 -0
  123. package/dist/routes/subscription.js.map +1 -0
  124. package/dist/routes/supportChat.d.ts +40 -0
  125. package/dist/routes/supportChat.d.ts.map +1 -0
  126. package/dist/routes/supportChat.js +53 -0
  127. package/dist/routes/supportChat.js.map +1 -0
  128. package/dist/routes/supportTicket.d.ts +89 -0
  129. package/dist/routes/supportTicket.d.ts.map +1 -0
  130. package/dist/routes/supportTicket.js +54 -0
  131. package/dist/routes/supportTicket.js.map +1 -0
  132. package/dist/routes/tag.d.ts +72 -0
  133. package/dist/routes/tag.d.ts.map +1 -0
  134. package/dist/routes/tag.js +81 -0
  135. package/dist/routes/tag.js.map +1 -0
  136. package/dist/routes/task.d.ts +252 -0
  137. package/dist/routes/task.d.ts.map +1 -0
  138. package/dist/routes/task.js +284 -0
  139. package/dist/routes/task.js.map +1 -0
  140. package/dist/routes/taskRelation.d.ts +80 -0
  141. package/dist/routes/taskRelation.d.ts.map +1 -0
  142. package/dist/routes/taskRelation.js +71 -0
  143. package/dist/routes/taskRelation.js.map +1 -0
  144. package/dist/routes/token.d.ts +75 -0
  145. package/dist/routes/token.d.ts.map +1 -0
  146. package/dist/routes/token.js +51 -0
  147. package/dist/routes/token.js.map +1 -0
  148. package/dist/routes/user.d.ts +112 -0
  149. package/dist/routes/user.d.ts.map +1 -0
  150. package/dist/routes/user.js +151 -0
  151. package/dist/routes/user.js.map +1 -0
  152. package/dist/routes/version.d.ts +42 -0
  153. package/dist/routes/version.d.ts.map +1 -0
  154. package/dist/routes/version.js +38 -0
  155. package/dist/routes/version.js.map +1 -0
  156. package/dist/routes/webhook.d.ts +170 -0
  157. package/dist/routes/webhook.d.ts.map +1 -0
  158. package/dist/routes/webhook.js +173 -0
  159. package/dist/routes/webhook.js.map +1 -0
  160. package/dist/routes/workspace.d.ts +120 -0
  161. package/dist/routes/workspace.d.ts.map +1 -0
  162. package/dist/routes/workspace.js +199 -0
  163. package/dist/routes/workspace.js.map +1 -0
  164. package/dist/utils/uploadSessionManager.d.ts +133 -0
  165. package/dist/utils/uploadSessionManager.d.ts.map +1 -0
  166. package/dist/utils/uploadSessionManager.js +321 -0
  167. package/dist/utils/uploadSessionManager.js.map +1 -0
  168. package/dist/utils/urlParams.d.ts +35 -0
  169. package/dist/utils/urlParams.d.ts.map +1 -0
  170. package/dist/utils/urlParams.js +146 -0
  171. package/dist/utils/urlParams.js.map +1 -0
  172. package/dist/version.d.ts +15 -0
  173. package/dist/version.d.ts.map +1 -0
  174. package/dist/version.js +12 -0
  175. package/dist/version.js.map +1 -0
  176. package/package.json +87 -3
  177. package/src/BotClient.ts +113 -0
  178. package/src/NuramaClient.ts +1193 -0
  179. package/src/bot-browser-entry.js +15 -0
  180. package/src/browser-entry.js +20 -0
  181. package/src/routes/ai.ts +378 -0
  182. package/src/routes/asset.ts +1104 -0
  183. package/src/routes/auth.ts +587 -0
  184. package/src/routes/blogPosts.ts +29 -0
  185. package/src/routes/board.ts +403 -0
  186. package/src/routes/bot.ts +257 -0
  187. package/src/routes/chat.ts +1292 -0
  188. package/src/routes/chatAi.ts +125 -0
  189. package/src/routes/config.ts +31 -0
  190. package/src/routes/convo.ts +321 -0
  191. package/src/routes/credits.ts +112 -0
  192. package/src/routes/device.ts +133 -0
  193. package/src/routes/folder.ts +154 -0
  194. package/src/routes/invite.ts +133 -0
  195. package/src/routes/joinLink.ts +100 -0
  196. package/src/routes/membership.ts +237 -0
  197. package/src/routes/notification.ts +166 -0
  198. package/src/routes/payment.ts +104 -0
  199. package/src/routes/product.ts +67 -0
  200. package/src/routes/project.ts +1528 -0
  201. package/src/routes/public.ts +496 -0
  202. package/src/routes/scratch.ts +94 -0
  203. package/src/routes/settings.ts +152 -0
  204. package/src/routes/shortlink.ts +90 -0
  205. package/src/routes/socket.ts +739 -0
  206. package/src/routes/storage.ts +83 -0
  207. package/src/routes/subscription.ts +307 -0
  208. package/src/routes/supportChat.ts +62 -0
  209. package/src/routes/supportTicket.ts +114 -0
  210. package/src/routes/tag.ts +131 -0
  211. package/src/routes/task.ts +431 -0
  212. package/src/routes/taskRelation.ts +125 -0
  213. package/src/routes/token.ts +113 -0
  214. package/src/routes/user.ts +214 -0
  215. package/src/routes/version.ts +62 -0
  216. package/src/routes/webhook.ts +295 -0
  217. package/src/routes/workspace.ts +223 -0
  218. package/src/utils/uploadSessionManager.ts +407 -0
  219. package/src/utils/urlParams.ts +181 -0
  220. package/src/version.ts +22 -0
@@ -0,0 +1,66 @@
1
+ import NuramaClient from './NuramaClient.js';
2
+ interface BotClientOptions {
3
+ /** Override the default bot API URL (https://bot.nurama.com). */
4
+ baseURL?: string;
5
+ /** Override the default bot WebSocket URL (https://bot-ws.nurama.com). */
6
+ websocketURL?: string;
7
+ /** Custom fetch implementation. Defaults to global fetch. */
8
+ fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
9
+ /** Enable debug logging. Default: false */
10
+ debug?: boolean;
11
+ /** Enable response caching. Default: true */
12
+ enableCache?: boolean;
13
+ /** Cache duration in seconds. Default: 5 */
14
+ cacheDurationSeconds?: number;
15
+ }
16
+ /**
17
+ * Client for interacting with the Nurama API as a bot user.
18
+ *
19
+ * Authenticates with a long-lived API key (`nrm_bot_...`) instead of a JWT.
20
+ * Requests must arrive at the bot subdomain (`bot.nurama.com` by default) so
21
+ * the server can apply bot-specific firewall and rate-limit rules.
22
+ *
23
+ * Exposes only the namespaces a bot is permitted to use — auth, user profile,
24
+ * payment, subscription, device, and bot-administration namespaces are omitted.
25
+ *
26
+ * @example
27
+ * ```ts
28
+ * import BotClient from '@nurama/sdk/bot';
29
+ *
30
+ * const bot = new BotClient(process.env.NURAMA_BOT_API_KEY!);
31
+ * const workspaces = await bot.workspace.listWorkspaces();
32
+ * ```
33
+ */
34
+ declare class BotClient {
35
+ private readonly _client;
36
+ readonly workspace: NuramaClient['workspace'];
37
+ readonly project: NuramaClient['project'];
38
+ readonly asset: NuramaClient['asset'];
39
+ readonly chat: NuramaClient['chat'];
40
+ readonly aiChat: NuramaClient['aiChat'];
41
+ readonly folder: NuramaClient['folder'];
42
+ readonly invite: NuramaClient['invite'];
43
+ readonly membership: NuramaClient['membership'];
44
+ readonly notification: NuramaClient['notification'];
45
+ readonly storage: NuramaClient['storage'];
46
+ readonly task: NuramaClient['task'];
47
+ readonly taskRelation: NuramaClient['taskRelation'];
48
+ readonly tag: NuramaClient['tag'];
49
+ readonly settings: NuramaClient['settings'];
50
+ readonly shortlink: NuramaClient['shortlink'];
51
+ readonly convo: NuramaClient['convo'];
52
+ readonly board: NuramaClient['board'];
53
+ readonly version: NuramaClient['version'];
54
+ readonly config: NuramaClient['config'];
55
+ readonly product: NuramaClient['product'];
56
+ readonly public: NuramaClient['public'];
57
+ readonly socket: NuramaClient['socket'];
58
+ /**
59
+ * @param apiKey - Bot API key in the format `nrm_bot_{prefix}_{secret}`.
60
+ * @param options - Configuration overrides.
61
+ */
62
+ constructor(apiKey: string, options?: BotClientOptions);
63
+ }
64
+ export default BotClient;
65
+ export type { BotClientOptions };
66
+ //# sourceMappingURL=BotClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BotClient.d.ts","sourceRoot":"","sources":["../src/BotClient.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,UAAU,gBAAgB;IACxB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5E,2CAA2C;IAC3C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,cAAM,SAAS;IACb,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IAEvC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAC9C,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IAChD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAExC;;;OAGG;gBACS,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB;CAwC3D;AAED,eAAe,SAAS,CAAC;AACzB,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,68 @@
1
+ import NuramaClient from './NuramaClient.js';
2
+ const DEFAULT_BOT_BASE_URL = 'https://bot.nurama.com';
3
+ const DEFAULT_BOT_WS_URL = 'https://bot-ws.nurama.com';
4
+ const KEY_PREFIX = 'nrm_bot_';
5
+ /**
6
+ * Client for interacting with the Nurama API as a bot user.
7
+ *
8
+ * Authenticates with a long-lived API key (`nrm_bot_...`) instead of a JWT.
9
+ * Requests must arrive at the bot subdomain (`bot.nurama.com` by default) so
10
+ * the server can apply bot-specific firewall and rate-limit rules.
11
+ *
12
+ * Exposes only the namespaces a bot is permitted to use — auth, user profile,
13
+ * payment, subscription, device, and bot-administration namespaces are omitted.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * import BotClient from '@nurama/sdk/bot';
18
+ *
19
+ * const bot = new BotClient(process.env.NURAMA_BOT_API_KEY!);
20
+ * const workspaces = await bot.workspace.listWorkspaces();
21
+ * ```
22
+ */
23
+ class BotClient {
24
+ /**
25
+ * @param apiKey - Bot API key in the format `nrm_bot_{prefix}_{secret}`.
26
+ * @param options - Configuration overrides.
27
+ */
28
+ constructor(apiKey, options = {}) {
29
+ if (!apiKey) {
30
+ throw new Error('apiKey is required.');
31
+ }
32
+ if (!apiKey.startsWith(KEY_PREFIX)) {
33
+ throw new Error(`Invalid bot API key. Expected format: ${KEY_PREFIX}{prefix}_{secret}.`);
34
+ }
35
+ this._client = new NuramaClient(options.baseURL || DEFAULT_BOT_BASE_URL, {
36
+ apiKey,
37
+ fetch: options.fetch,
38
+ debug: options.debug,
39
+ enableCache: options.enableCache,
40
+ cacheDurationSeconds: options.cacheDurationSeconds,
41
+ websocketURL: options.websocketURL || DEFAULT_BOT_WS_URL,
42
+ });
43
+ this.workspace = this._client.workspace;
44
+ this.project = this._client.project;
45
+ this.asset = this._client.asset;
46
+ this.chat = this._client.chat;
47
+ this.aiChat = this._client.aiChat;
48
+ this.folder = this._client.folder;
49
+ this.invite = this._client.invite;
50
+ this.membership = this._client.membership;
51
+ this.notification = this._client.notification;
52
+ this.storage = this._client.storage;
53
+ this.task = this._client.task;
54
+ this.taskRelation = this._client.taskRelation;
55
+ this.tag = this._client.tag;
56
+ this.settings = this._client.settings;
57
+ this.shortlink = this._client.shortlink;
58
+ this.convo = this._client.convo;
59
+ this.board = this._client.board;
60
+ this.version = this._client.version;
61
+ this.config = this._client.config;
62
+ this.product = this._client.product;
63
+ this.public = this._client.public;
64
+ this.socket = this._client.socket;
65
+ }
66
+ }
67
+ export default BotClient;
68
+ //# sourceMappingURL=BotClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BotClient.js","sourceRoot":"","sources":["../src/BotClient.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAiB7C,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AACtD,MAAM,kBAAkB,GAAG,2BAA2B,CAAC;AACvD,MAAM,UAAU,GAAG,UAAU,CAAC;AAE9B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,SAAS;IA0Bb;;;OAGG;IACH,YAAY,MAAc,EAAE,UAA4B,EAAE;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,yCAAyC,UAAU,oBAAoB,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,OAAO,IAAI,oBAAoB,EAAE;YACvE,MAAM;YACN,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,kBAAkB;SACzD,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QAC9C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QAC9C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IACpC,CAAC;CACF;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,448 @@
1
+ import createAuthMethods from './routes/auth.js';
2
+ import createSubscriptionMethods from './routes/subscription.js';
3
+ import createUserMethods from './routes/user.js';
4
+ import createWorkspaceMethods from './routes/workspace.js';
5
+ import createProjectMethods from './routes/project.js';
6
+ import createAssetMethods from './routes/asset.js';
7
+ import createChatMethods from './routes/chat.js';
8
+ import createFolderMethods from './routes/folder.js';
9
+ import createInviteMethods from './routes/invite.js';
10
+ import createJoinLinkMethods from './routes/joinLink.js';
11
+ import createMembershipMethods from './routes/membership.js';
12
+ import createNotificationMethods from './routes/notification.js';
13
+ import createPaymentMethods from './routes/payment.js';
14
+ import createProductMethods from './routes/product.js';
15
+ import createSocketMethods from './routes/socket.js';
16
+ import createStorageMethods from './routes/storage.js';
17
+ import createTaskMethods from './routes/task.js';
18
+ import createVersionMethods from './routes/version.js';
19
+ import createConfigMethods from './routes/config.js';
20
+ import createTagMethods from './routes/tag.js';
21
+ import createPublicMethods from './routes/public.js';
22
+ import createSettingsMethods from './routes/settings.js';
23
+ import createDeviceMethods from './routes/device.js';
24
+ import createShortLinkMethods from './routes/shortlink.js';
25
+ import createConvoMethods from './routes/convo.js';
26
+ import createBoardMethods from './routes/board.js';
27
+ import createTaskRelationMethods from './routes/taskRelation.js';
28
+ import createBotMethods from './routes/bot.js';
29
+ import createAiMethods from './routes/ai.js';
30
+ import createAiChatMethods from './routes/chatAi.js';
31
+ import createSupportChatMethods from './routes/supportChat.js';
32
+ import createBlogPostsMethods from './routes/blogPosts.js';
33
+ import createCreditsMethods from './routes/credits.js';
34
+ import createScratchMethods from './routes/scratch.js';
35
+ import createTokenMethods from './routes/token.js';
36
+ import createWebhookMethods from './routes/webhook.js';
37
+ import createSupportTicketMethods from './routes/supportTicket.js';
38
+ import { type SDKVersionInfo } from './version.js';
39
+ export interface NuramaClientOptions {
40
+ /** Custom fetch implementation. If not provided, will use global fetch */
41
+ fetch?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
42
+ /** Key used to store the access token in storage. Default: 'nurama_token' */
43
+ tokenStorageKey?: string;
44
+ /** Key used to store the refresh token in storage. Default: 'nurama_refresh_token' */
45
+ refreshTokenStorageKey?: string;
46
+ /** Whether to run in browser mode (uses localStorage for token storage). Default: false */
47
+ browserMode?: boolean;
48
+ /** Number of seconds before token expiry to trigger refresh. Default: 300 (5 minutes) */
49
+ tokenExpiryBufferSeconds?: number;
50
+ /** Delay in ms between token refresh retries. Default: 1000 */
51
+ tokenRefreshRetryDelayMs?: number;
52
+ /** Maximum time in ms to wait for token refresh. Default: 10000 */
53
+ tokenRefreshMaxWaitMs?: number;
54
+ /** Timeout in ms for the refresh lock to prevent multiple simultaneous refreshes. Default: 5000 */
55
+ refreshLockTimeoutMs?: number;
56
+ /** Enable debug logging. Default: false */
57
+ debug?: boolean;
58
+ /** WebSocket server URL. If not provided, will use the baseURL */
59
+ websocketURL?: string;
60
+ /** Enable response caching. Default: true */
61
+ enableCache?: boolean;
62
+ /** Cache duration in seconds. Default: 5 */
63
+ cacheDurationSeconds?: number;
64
+ /** After a successful write (POST/PUT/PATCH/DELETE) to a resource, evict
65
+ * cached GET responses for that resource so the next read returns fresh
66
+ * data (read-after-write consistency). Default: true. */
67
+ invalidateCacheOnMutation?: boolean;
68
+ /** Callback invoked when authentication fails and re-login is required
69
+ * (e.g., refresh token expired/missing). `reason.type` carries the
70
+ * backend error type when available — notably `emailVerificationRequired`
71
+ * when the refresh was rejected because the user's email-verification
72
+ * grace period has expired, so callers can prompt verification instead of
73
+ * a plain logout. */
74
+ onUnauthorized?: (reason?: {
75
+ type?: string;
76
+ }) => void;
77
+ /** Invoked when the API returns a `{ error: 'maintenance' }` body on a 418 or
78
+ * 503 — i.e. the site is in a maintenance window (the edge rule returns this
79
+ * to non-allowlisted clients; a Cloudflare WAF block can only be a 4xx, so
80
+ * 418 — a guaranteed-unused sentinel — is used there, while a Worker/origin
81
+ * can return 503). Lets an already-loaded (cached) SPA surface a maintenance
82
+ * message instead of failing silently. */
83
+ onMaintenance?: () => void;
84
+ /**
85
+ * Long-lived API key to use for every request (e.g., a bot API key starting with `nrm_bot_`).
86
+ * When set, the client skips JWT refresh logic and uses the key as the bearer token.
87
+ */
88
+ apiKey?: string;
89
+ }
90
+ interface RequestParams {
91
+ [key: string]: any;
92
+ }
93
+ interface RequestBody {
94
+ [key: string]: any;
95
+ }
96
+ interface InternalRequestOptions {
97
+ endpoint: string;
98
+ method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD';
99
+ params?: RequestParams;
100
+ body?: RequestBody | null;
101
+ /**
102
+ * Authentication mode for the request:
103
+ * - true (default): JWT required — refresh a stale token and throw if unavailable.
104
+ * - false: no auth — never attach a token.
105
+ * - 'optional': attach a valid token if the client has one (best-effort
106
+ * refresh), otherwise proceed anonymously without throwing. Used by public
107
+ * routes that accept both authenticated and anonymous callers.
108
+ */
109
+ sendJWT?: boolean | 'optional';
110
+ customHeaders?: Record<string, string>;
111
+ _isInternalRefresh?: boolean;
112
+ bypassCache?: boolean;
113
+ }
114
+ /**
115
+ * Error thrown by `_request` when the API responds with a non-2xx status.
116
+ * `status` is the HTTP status and `data` the parsed error body
117
+ * (`{ type, code, message, errorData? }`). Use `isApiError` to narrow.
118
+ */
119
+ export interface ApiError extends Error {
120
+ status?: number;
121
+ data?: any;
122
+ }
123
+ /** Narrow an unknown thrown value to an API error carrying an HTTP status. */
124
+ export declare const isApiError: (error: unknown) => error is ApiError;
125
+ export interface AuthMethods extends ReturnType<typeof createAuthMethods> {
126
+ }
127
+ export interface SubscriptionMethods extends ReturnType<typeof createSubscriptionMethods> {
128
+ }
129
+ export interface UserMethods extends ReturnType<typeof createUserMethods> {
130
+ }
131
+ export interface WorkspaceMethods extends ReturnType<typeof createWorkspaceMethods> {
132
+ }
133
+ export interface ProjectMethods extends ReturnType<typeof createProjectMethods> {
134
+ }
135
+ export interface AssetMethods extends ReturnType<typeof createAssetMethods> {
136
+ }
137
+ type ChatMethods = ReturnType<typeof createChatMethods>;
138
+ type FolderMethods = ReturnType<typeof createFolderMethods>;
139
+ type InviteMethods = ReturnType<typeof createInviteMethods>;
140
+ type JoinLinkMethods = ReturnType<typeof createJoinLinkMethods>;
141
+ type MembershipMethods = ReturnType<typeof createMembershipMethods>;
142
+ type NotificationMethods = ReturnType<typeof createNotificationMethods>;
143
+ type PaymentMethods = ReturnType<typeof createPaymentMethods>;
144
+ type ProductMethods = ReturnType<typeof createProductMethods>;
145
+ type SocketMethods = ReturnType<typeof createSocketMethods>;
146
+ type StorageMethods = ReturnType<typeof createStorageMethods>;
147
+ type TaskMethods = ReturnType<typeof createTaskMethods>;
148
+ type VersionMethods = ReturnType<typeof createVersionMethods>;
149
+ type ConfigMethods = ReturnType<typeof createConfigMethods>;
150
+ type TagMethods = ReturnType<typeof createTagMethods>;
151
+ type PublicMethods = ReturnType<typeof createPublicMethods>;
152
+ type SettingsMethods = ReturnType<typeof createSettingsMethods>;
153
+ type DeviceMethods = ReturnType<typeof createDeviceMethods>;
154
+ type ShortLinkMethods = ReturnType<typeof createShortLinkMethods>;
155
+ type ConvoMethods = ReturnType<typeof createConvoMethods>;
156
+ type BoardMethods = ReturnType<typeof createBoardMethods>;
157
+ type TaskRelationMethods = ReturnType<typeof createTaskRelationMethods>;
158
+ type BotMethods = ReturnType<typeof createBotMethods>;
159
+ type AiMethods = ReturnType<typeof createAiMethods>;
160
+ type AiChatMethods = ReturnType<typeof createAiChatMethods>;
161
+ type SupportChatMethods = ReturnType<typeof createSupportChatMethods>;
162
+ type BlogPostsMethods = ReturnType<typeof createBlogPostsMethods>;
163
+ type CreditsMethods = ReturnType<typeof createCreditsMethods>;
164
+ type ScratchMethods = ReturnType<typeof createScratchMethods>;
165
+ type TokenMethods = ReturnType<typeof createTokenMethods>;
166
+ type WebhookMethods = ReturnType<typeof createWebhookMethods>;
167
+ type SupportTicketMethods = ReturnType<typeof createSupportTicketMethods>;
168
+ /**
169
+ * Client interface for interacting with the Nurama REST API.
170
+ */
171
+ declare class NuramaClient {
172
+ readonly baseURL: string;
173
+ readonly fetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
174
+ readonly tokenStorageKey: string;
175
+ readonly refreshTokenStorageKey: string;
176
+ readonly browserMode: boolean;
177
+ readonly tokenExpiryBufferSeconds: number;
178
+ readonly refreshLockTimeoutMs: number;
179
+ readonly tokenRefreshRetryDelayMs: number;
180
+ readonly tokenRefreshMaxWaitMs: number;
181
+ readonly debug: boolean;
182
+ readonly websocketURL?: string;
183
+ readonly enableCache: boolean;
184
+ readonly cacheDurationSeconds: number;
185
+ readonly invalidateCacheOnMutation: boolean;
186
+ private readonly _onUnauthorized?;
187
+ private readonly _onMaintenance?;
188
+ private _accessToken;
189
+ private _refreshTokenValue;
190
+ private _accessTokenExpiry;
191
+ private _refreshTokenExpiry;
192
+ private _verifyMfaToken;
193
+ private _isRefreshing;
194
+ private _lastRefreshAttempt;
195
+ private _cache;
196
+ private _cacheGeneration;
197
+ private readonly _apiKey;
198
+ readonly auth: AuthMethods;
199
+ readonly subscription: SubscriptionMethods;
200
+ readonly user: UserMethods;
201
+ readonly workspace: WorkspaceMethods;
202
+ readonly project: ProjectMethods;
203
+ readonly asset: AssetMethods;
204
+ chat: ChatMethods;
205
+ folder: FolderMethods;
206
+ invite: InviteMethods;
207
+ joinLink: JoinLinkMethods;
208
+ membership: MembershipMethods;
209
+ notification: NotificationMethods;
210
+ payment: PaymentMethods;
211
+ product: ProductMethods;
212
+ socket: SocketMethods;
213
+ storage: StorageMethods;
214
+ task: TaskMethods;
215
+ version: VersionMethods;
216
+ readonly config: ConfigMethods;
217
+ tag: TagMethods;
218
+ public: PublicMethods;
219
+ settings: SettingsMethods;
220
+ device: DeviceMethods;
221
+ shortlink: ShortLinkMethods;
222
+ convo: ConvoMethods;
223
+ board: BoardMethods;
224
+ taskRelation: TaskRelationMethods;
225
+ bot: BotMethods;
226
+ ai: AiMethods;
227
+ aiChat: AiChatMethods;
228
+ supportChat: SupportChatMethods;
229
+ blogPosts: BlogPostsMethods;
230
+ credits: CreditsMethods;
231
+ scratch: ScratchMethods;
232
+ token: TokenMethods;
233
+ webhook: WebhookMethods;
234
+ supportTicket: SupportTicketMethods;
235
+ /**
236
+ * Creates an instance of NuramaClient.
237
+ * @param baseURL - The base URL for the Nurama API.
238
+ * @param options - Configuration options.
239
+ */
240
+ constructor(baseURL: string, options?: NuramaClientOptions);
241
+ /**
242
+ * Internal helper for conditional logging. Underscore-prefixed to flag
243
+ * "internal contract" — accessible from sibling route modules but not
244
+ * part of the documented public API.
245
+ *
246
+ * @param args - Arguments to pass to console.log.
247
+ */
248
+ _log(...args: any[]): void;
249
+ /**
250
+ * Checks if a POST endpoint is safe to cache (read-only query operations).
251
+ * @param endpoint - The API endpoint to check.
252
+ * @returns True if the POST endpoint is cacheable, false otherwise.
253
+ * @private
254
+ */
255
+ private _isCacheablePostEndpoint;
256
+ /**
257
+ * Generates a cache key for a request.
258
+ * @param options - Request configuration.
259
+ * @returns A unique cache key string.
260
+ * @private
261
+ */
262
+ private _generateCacheKey;
263
+ /**
264
+ * Checks if a cache entry is still valid.
265
+ * @param entry - The cache entry to check.
266
+ * @returns True if the entry is still valid, false otherwise.
267
+ * @private
268
+ */
269
+ private _isCacheEntryValid;
270
+ /**
271
+ * Gets a cached response if available and valid.
272
+ * @param cacheKey - The cache key to look up.
273
+ * @returns The cached data or null if not found/expired.
274
+ * @private
275
+ */
276
+ private _getCachedResponse;
277
+ /**
278
+ * Stores a response in the cache.
279
+ * @param cacheKey - The cache key.
280
+ * @param data - The data to cache.
281
+ * @private
282
+ */
283
+ private _setCachedResponse;
284
+ /**
285
+ * Gets or sets a pending promise for concurrent requests.
286
+ * @param cacheKey - The cache key.
287
+ * @param promise - The promise to store (optional).
288
+ * @returns The existing or new promise.
289
+ * @private
290
+ */
291
+ private _getPendingPromise;
292
+ /**
293
+ * Clears the pending promise from a cache entry.
294
+ * @param cacheKey - The cache key.
295
+ * @private
296
+ */
297
+ private _clearPendingPromise;
298
+ /**
299
+ * True if a request is a write that should invalidate cached reads for its
300
+ * resource. Cacheable "read" POSTs (query endpoints) are excluded.
301
+ * @private
302
+ */
303
+ private _isMutation;
304
+ /**
305
+ * True if a path segment looks like a resource id (UUID or numeric) rather
306
+ * than a collection name.
307
+ * @private
308
+ */
309
+ private _looksLikeSegmentId;
310
+ /**
311
+ * The resource "collection" a mutation acts on — the deepest non-id,
312
+ * non-version path segment (e.g. `/v1/workspaces/:id/projects` -> `projects`,
313
+ * `DELETE /v1/projects/:id` -> `projects`).
314
+ * @private
315
+ */
316
+ private _resourceToken;
317
+ /**
318
+ * Evict cached GET responses that belong to the same resource collection as a
319
+ * just-completed write, so the next read is fresh. Matches the parent-nested
320
+ * list form too — a `POST /v1/projects` also evicts a cached
321
+ * `/v1/workspaces/:id/projects` because both paths contain the `projects`
322
+ * segment. Cross-resource relationships that don't share a path segment
323
+ * (e.g. a payment write vs the subscription read) are NOT covered here and
324
+ * are handled at their call sites.
325
+ * @private
326
+ */
327
+ private _invalidateForMutation;
328
+ /**
329
+ * Sets the access and refresh tokens with optional expiration timestamps.
330
+ * @param accessToken - The JWT access token or null to clear.
331
+ * @param refreshToken - The refresh token or null to clear.
332
+ * @param accessTokenExpiry - ISO timestamp when access token expires (optional).
333
+ * @param refreshTokenExpiry - ISO timestamp when refresh token expires (optional).
334
+ * @private
335
+ */
336
+ private _setTokens;
337
+ /**
338
+ * Retrieves the current access token.
339
+ * @returns The access token or null.
340
+ * @private
341
+ */
342
+ private _getAccessToken;
343
+ /**
344
+ * Retrieves the current refresh token.
345
+ * @returns The refresh token or null.
346
+ * @private
347
+ */
348
+ private _getRefreshToken;
349
+ /**
350
+ * Sets the MFA verification token.
351
+ * @param verifyMfaToken - The verify MFA token or null to clear.
352
+ * @internal
353
+ */
354
+ _setVerifyMfaToken(verifyMfaToken: string | null): void;
355
+ /**
356
+ * Retrieves the current verify MFA token.
357
+ * @returns The verify MFA token or null.
358
+ * @internal
359
+ */
360
+ _getVerifyMfaToken(): string | null;
361
+ /**
362
+ * Loads tokens and their expiration timestamps from storage (browser mode only).
363
+ * @private
364
+ */
365
+ private _loadTokens;
366
+ /**
367
+ * Checks if the current access token is expired or close to expiring.
368
+ * @returns True if the token is missing, expired, or needs refresh based on buffer.
369
+ * @private
370
+ */
371
+ private _isTokenExpired;
372
+ /**
373
+ * Checks if the current JWT token exists and is valid.
374
+ * @returns {boolean} True if the token exists and is valid, false otherwise.
375
+ */
376
+ tokenValid(): boolean;
377
+ /**
378
+ * Gets the token expiration timestamps.
379
+ * @returns Object containing access and refresh token expiry ISO timestamps.
380
+ * @public
381
+ */
382
+ getTokenExpiry(): {
383
+ access: string | null;
384
+ refresh: string | null;
385
+ };
386
+ /**
387
+ * Refreshes the access token using the stored refresh token.
388
+ * Includes a time lock to prevent rapid concurrent refresh attempts.
389
+ * @returns Promise resolving when refresh attempt is complete (or bypassed).
390
+ * @private
391
+ */
392
+ private _refreshToken;
393
+ /**
394
+ * Makes an HTTP request to the API.
395
+ * Handles token attachment and potential refresh.
396
+ * @param options - Request configuration.
397
+ * @returns The response data.
398
+ * @private
399
+ */
400
+ _request<T = any>(options: InternalRequestOptions): Promise<T>;
401
+ /**
402
+ * Executes the actual HTTP request.
403
+ * @param url - The complete URL to request.
404
+ * @param config - The fetch configuration.
405
+ * @returns The response data.
406
+ * @private
407
+ */
408
+ private _executeRequest;
409
+ /**
410
+ * Gets the current user's ID from the JWT token.
411
+ * @returns {string | null} The user ID if available, null otherwise.
412
+ */
413
+ getUserId(): string | null;
414
+ /**
415
+ * Gets the SDK version information including build timestamp and hash.
416
+ * Useful for debugging and verifying which SDK version is in use.
417
+ * @returns {SDKVersionInfo} SDK version, build timestamp, build hash, and git commit
418
+ */
419
+ getVersion(): SDKVersionInfo;
420
+ /**
421
+ * Clears the response cache.
422
+ * @public
423
+ */
424
+ clearCache(): void;
425
+ /**
426
+ * Gets cache statistics for debugging.
427
+ * @returns Object containing cache statistics.
428
+ * @public
429
+ */
430
+ getCacheStats(): {
431
+ size: number;
432
+ entries: Array<{
433
+ key: string;
434
+ timestamp: number;
435
+ hasData: boolean;
436
+ hasPendingPromise: boolean;
437
+ }>;
438
+ };
439
+ }
440
+ export default NuramaClient;
441
+ export type { SDKVersionInfo };
442
+ export type { HealthStatus } from './routes/version.js';
443
+ export type { UserTodo } from './routes/user.js';
444
+ export type { SupportTicketScope, SupportTicketStatus, CreateSupportTicketRequest, SupportTicket, SupportTicketListParams, SupportTicketListResponse, SupportTicketScopeOptions, } from './routes/supportTicket.js';
445
+ export type { BotApiKeySummary, Bot, CreateBotData, CreateBotResponse, UpdateBotData, RotateBotKeyResponse, UpdateBotAvatarFileData, UpdateBotAvatarResponse, BotProjectRole, BotProjectMembership, } from './routes/bot.js';
446
+ export type { WebhookEvent, WebhookSubscriptionStatus, WebhookSubscription, CreateWebhookData, UpdateWebhookData, CreateWebhookResponse, RotateWebhookSecretResponse, WebhookAttemptStatus, WebhookAttempt, ListDeliveriesParams, ListDeliveriesResponse, TestWebhookResponse, } from './routes/webhook.js';
447
+ export type { TokenKind, TokenScope, TokenSummary, CreateTokenData, CreateTokenResponse, } from './routes/token.js';
448
+ //# sourceMappingURL=NuramaClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NuramaClient.d.ts","sourceRoot":"","sources":["../src/NuramaClient.ts"],"names":[],"mappings":"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"}