@jini-ai/integrations 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +51 -0
  3. package/dist/composio/bounded-data.d.ts +36 -0
  4. package/dist/composio/bounded-data.d.ts.map +1 -0
  5. package/dist/composio/bounded-data.js +181 -0
  6. package/dist/composio/bounded-data.js.map +1 -0
  7. package/dist/composio/catalog.d.ts +147 -0
  8. package/dist/composio/catalog.d.ts.map +1 -0
  9. package/dist/composio/catalog.js +126 -0
  10. package/dist/composio/catalog.js.map +1 -0
  11. package/dist/composio/composio-config.d.ts +42 -0
  12. package/dist/composio/composio-config.d.ts.map +1 -0
  13. package/dist/composio/composio-config.js +145 -0
  14. package/dist/composio/composio-config.js.map +1 -0
  15. package/dist/composio/composio-descriptions.d.ts +16 -0
  16. package/dist/composio/composio-descriptions.d.ts.map +1 -0
  17. package/dist/composio/composio-descriptions.js +766 -0
  18. package/dist/composio/composio-descriptions.js.map +1 -0
  19. package/dist/composio/composio.d.ts +364 -0
  20. package/dist/composio/composio.d.ts.map +1 -0
  21. package/dist/composio/composio.js +1902 -0
  22. package/dist/composio/composio.js.map +1 -0
  23. package/dist/composio/errors.d.ts +15 -0
  24. package/dist/composio/errors.d.ts.map +1 -0
  25. package/dist/composio/errors.js +16 -0
  26. package/dist/composio/errors.js.map +1 -0
  27. package/dist/composio/file-lock.d.ts +13 -0
  28. package/dist/composio/file-lock.d.ts.map +1 -0
  29. package/dist/composio/file-lock.js +92 -0
  30. package/dist/composio/file-lock.js.map +1 -0
  31. package/dist/composio/index.d.ts +18 -0
  32. package/dist/composio/index.d.ts.map +1 -0
  33. package/dist/composio/index.js +7 -0
  34. package/dist/composio/index.js.map +1 -0
  35. package/dist/composio/json-schema.d.ts +93 -0
  36. package/dist/composio/json-schema.d.ts.map +1 -0
  37. package/dist/composio/json-schema.js +498 -0
  38. package/dist/composio/json-schema.js.map +1 -0
  39. package/dist/composio/output-protection.d.ts +32 -0
  40. package/dist/composio/output-protection.d.ts.map +1 -0
  41. package/dist/composio/output-protection.js +105 -0
  42. package/dist/composio/output-protection.js.map +1 -0
  43. package/dist/composio/service.d.ts +181 -0
  44. package/dist/composio/service.d.ts.map +1 -0
  45. package/dist/composio/service.js +758 -0
  46. package/dist/composio/service.js.map +1 -0
  47. package/dist/media-providers/capability-registry.d.ts +28 -0
  48. package/dist/media-providers/capability-registry.d.ts.map +1 -0
  49. package/dist/media-providers/capability-registry.js +27 -0
  50. package/dist/media-providers/capability-registry.js.map +1 -0
  51. package/dist/media-providers/catalog.d.ts +20 -0
  52. package/dist/media-providers/catalog.d.ts.map +1 -0
  53. package/dist/media-providers/catalog.js +20 -0
  54. package/dist/media-providers/catalog.js.map +1 -0
  55. package/dist/media-providers/dispatch/context.d.ts +21 -0
  56. package/dist/media-providers/dispatch/context.d.ts.map +1 -0
  57. package/dist/media-providers/dispatch/context.js +36 -0
  58. package/dist/media-providers/dispatch/context.js.map +1 -0
  59. package/dist/media-providers/dispatch/credentials.d.ts +4 -0
  60. package/dist/media-providers/dispatch/credentials.d.ts.map +1 -0
  61. package/dist/media-providers/dispatch/credentials.js +25 -0
  62. package/dist/media-providers/dispatch/credentials.js.map +1 -0
  63. package/dist/media-providers/dispatch/engine.d.ts +30 -0
  64. package/dist/media-providers/dispatch/engine.d.ts.map +1 -0
  65. package/dist/media-providers/dispatch/engine.js +208 -0
  66. package/dist/media-providers/dispatch/engine.js.map +1 -0
  67. package/dist/media-providers/dispatch/index.d.ts +25 -0
  68. package/dist/media-providers/dispatch/index.d.ts.map +1 -0
  69. package/dist/media-providers/dispatch/index.js +24 -0
  70. package/dist/media-providers/dispatch/index.js.map +1 -0
  71. package/dist/media-providers/dispatch/openai-compatible.d.ts +44 -0
  72. package/dist/media-providers/dispatch/openai-compatible.d.ts.map +1 -0
  73. package/dist/media-providers/dispatch/openai-compatible.js +214 -0
  74. package/dist/media-providers/dispatch/openai-compatible.js.map +1 -0
  75. package/dist/media-providers/dispatch/providers/aihubmix-shared.d.ts +72 -0
  76. package/dist/media-providers/dispatch/providers/aihubmix-shared.d.ts.map +1 -0
  77. package/dist/media-providers/dispatch/providers/aihubmix-shared.js +131 -0
  78. package/dist/media-providers/dispatch/providers/aihubmix-shared.js.map +1 -0
  79. package/dist/media-providers/dispatch/providers/aihubmix.d.ts +4 -0
  80. package/dist/media-providers/dispatch/providers/aihubmix.d.ts.map +1 -0
  81. package/dist/media-providers/dispatch/providers/aihubmix.js +205 -0
  82. package/dist/media-providers/dispatch/providers/aihubmix.js.map +1 -0
  83. package/dist/media-providers/dispatch/providers/custom-image.d.ts +6 -0
  84. package/dist/media-providers/dispatch/providers/custom-image.d.ts.map +1 -0
  85. package/dist/media-providers/dispatch/providers/custom-image.js +94 -0
  86. package/dist/media-providers/dispatch/providers/custom-image.js.map +1 -0
  87. package/dist/media-providers/dispatch/providers/elevenlabs.d.ts +4 -0
  88. package/dist/media-providers/dispatch/providers/elevenlabs.d.ts.map +1 -0
  89. package/dist/media-providers/dispatch/providers/elevenlabs.js +163 -0
  90. package/dist/media-providers/dispatch/providers/elevenlabs.js.map +1 -0
  91. package/dist/media-providers/dispatch/providers/fishaudio.d.ts +3 -0
  92. package/dist/media-providers/dispatch/providers/fishaudio.d.ts.map +1 -0
  93. package/dist/media-providers/dispatch/providers/fishaudio.js +83 -0
  94. package/dist/media-providers/dispatch/providers/fishaudio.js.map +1 -0
  95. package/dist/media-providers/dispatch/providers/grok.d.ts +15 -0
  96. package/dist/media-providers/dispatch/providers/grok.d.ts.map +1 -0
  97. package/dist/media-providers/dispatch/providers/grok.js +150 -0
  98. package/dist/media-providers/dispatch/providers/grok.js.map +1 -0
  99. package/dist/media-providers/dispatch/providers/imagerouter.d.ts +6 -0
  100. package/dist/media-providers/dispatch/providers/imagerouter.d.ts.map +1 -0
  101. package/dist/media-providers/dispatch/providers/imagerouter.js +131 -0
  102. package/dist/media-providers/dispatch/providers/imagerouter.js.map +1 -0
  103. package/dist/media-providers/dispatch/providers/minimax.d.ts +3 -0
  104. package/dist/media-providers/dispatch/providers/minimax.d.ts.map +1 -0
  105. package/dist/media-providers/dispatch/providers/minimax.js +96 -0
  106. package/dist/media-providers/dispatch/providers/minimax.js.map +1 -0
  107. package/dist/media-providers/dispatch/providers/nanobanana.d.ts +3 -0
  108. package/dist/media-providers/dispatch/providers/nanobanana.d.ts.map +1 -0
  109. package/dist/media-providers/dispatch/providers/nanobanana.js +142 -0
  110. package/dist/media-providers/dispatch/providers/nanobanana.js.map +1 -0
  111. package/dist/media-providers/dispatch/providers/openai.d.ts +4 -0
  112. package/dist/media-providers/dispatch/providers/openai.d.ts.map +1 -0
  113. package/dist/media-providers/dispatch/providers/openai.js +231 -0
  114. package/dist/media-providers/dispatch/providers/openai.js.map +1 -0
  115. package/dist/media-providers/dispatch/providers/openrouter.d.ts +13 -0
  116. package/dist/media-providers/dispatch/providers/openrouter.d.ts.map +1 -0
  117. package/dist/media-providers/dispatch/providers/openrouter.js +152 -0
  118. package/dist/media-providers/dispatch/providers/openrouter.js.map +1 -0
  119. package/dist/media-providers/dispatch/providers/senseaudio.d.ts +4 -0
  120. package/dist/media-providers/dispatch/providers/senseaudio.d.ts.map +1 -0
  121. package/dist/media-providers/dispatch/providers/senseaudio.js +190 -0
  122. package/dist/media-providers/dispatch/providers/senseaudio.js.map +1 -0
  123. package/dist/media-providers/dispatch/providers/volcengine.d.ts +3 -0
  124. package/dist/media-providers/dispatch/providers/volcengine.d.ts.map +1 -0
  125. package/dist/media-providers/dispatch/providers/volcengine.js +95 -0
  126. package/dist/media-providers/dispatch/providers/volcengine.js.map +1 -0
  127. package/dist/media-providers/dispatch/response-parsers.d.ts +44 -0
  128. package/dist/media-providers/dispatch/response-parsers.d.ts.map +1 -0
  129. package/dist/media-providers/dispatch/response-parsers.js +103 -0
  130. package/dist/media-providers/dispatch/response-parsers.js.map +1 -0
  131. package/dist/media-providers/dispatch/ssrf-guard.d.ts +51 -0
  132. package/dist/media-providers/dispatch/ssrf-guard.d.ts.map +1 -0
  133. package/dist/media-providers/dispatch/ssrf-guard.js +215 -0
  134. package/dist/media-providers/dispatch/ssrf-guard.js.map +1 -0
  135. package/dist/media-providers/dispatch/stub.d.ts +5 -0
  136. package/dist/media-providers/dispatch/stub.d.ts.map +1 -0
  137. package/dist/media-providers/dispatch/stub.js +98 -0
  138. package/dist/media-providers/dispatch/stub.js.map +1 -0
  139. package/dist/media-providers/dispatch/types.d.ts +133 -0
  140. package/dist/media-providers/dispatch/types.d.ts.map +1 -0
  141. package/dist/media-providers/dispatch/types.js +2 -0
  142. package/dist/media-providers/dispatch/types.js.map +1 -0
  143. package/dist/media-providers/dispatch/vendor-adapter.d.ts +54 -0
  144. package/dist/media-providers/dispatch/vendor-adapter.d.ts.map +1 -0
  145. package/dist/media-providers/dispatch/vendor-adapter.js +68 -0
  146. package/dist/media-providers/dispatch/vendor-adapter.js.map +1 -0
  147. package/dist/media-providers/dispatch/vendor-registry.d.ts +36 -0
  148. package/dist/media-providers/dispatch/vendor-registry.d.ts.map +1 -0
  149. package/dist/media-providers/dispatch/vendor-registry.js +46 -0
  150. package/dist/media-providers/dispatch/vendor-registry.js.map +1 -0
  151. package/dist/media-providers/index.d.ts +22 -0
  152. package/dist/media-providers/index.d.ts.map +1 -0
  153. package/dist/media-providers/index.js +22 -0
  154. package/dist/media-providers/index.js.map +1 -0
  155. package/dist/media-providers/policy.d.ts +49 -0
  156. package/dist/media-providers/policy.d.ts.map +1 -0
  157. package/dist/media-providers/policy.js +39 -0
  158. package/dist/media-providers/policy.js.map +1 -0
  159. package/dist/media-providers/providers.d.ts +33 -0
  160. package/dist/media-providers/providers.d.ts.map +1 -0
  161. package/dist/media-providers/providers.js +200 -0
  162. package/dist/media-providers/providers.js.map +1 -0
  163. package/dist/media-providers/seed.d.ts +14 -0
  164. package/dist/media-providers/seed.d.ts.map +1 -0
  165. package/dist/media-providers/seed.js +109 -0
  166. package/dist/media-providers/seed.js.map +1 -0
  167. package/dist/media-providers/sqlite-task-store.d.ts +29 -0
  168. package/dist/media-providers/sqlite-task-store.d.ts.map +1 -0
  169. package/dist/media-providers/sqlite-task-store.js +234 -0
  170. package/dist/media-providers/sqlite-task-store.js.map +1 -0
  171. package/dist/media-providers/staging.d.ts +29 -0
  172. package/dist/media-providers/staging.d.ts.map +1 -0
  173. package/dist/media-providers/staging.js +141 -0
  174. package/dist/media-providers/staging.js.map +1 -0
  175. package/dist/media-providers/task-store.d.ts +94 -0
  176. package/dist/media-providers/task-store.d.ts.map +1 -0
  177. package/dist/media-providers/task-store.js +160 -0
  178. package/dist/media-providers/task-store.js.map +1 -0
  179. package/dist/media-providers/tokens.d.ts +7 -0
  180. package/dist/media-providers/tokens.d.ts.map +1 -0
  181. package/dist/media-providers/tokens.js +13 -0
  182. package/dist/media-providers/tokens.js.map +1 -0
  183. package/dist/media-providers/types.d.ts +123 -0
  184. package/dist/media-providers/types.d.ts.map +1 -0
  185. package/dist/media-providers/types.js +12 -0
  186. package/dist/media-providers/types.js.map +1 -0
  187. package/dist/media-providers/video-request.d.ts +62 -0
  188. package/dist/media-providers/video-request.d.ts.map +1 -0
  189. package/dist/media-providers/video-request.js +219 -0
  190. package/dist/media-providers/video-request.js.map +1 -0
  191. package/package.json +93 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composio.js","sourceRoot":"","sources":["../../src/composio/composio.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Stable error codes returned by the Composio provider and service.
3
+ */
4
+ import type { JsonObject } from './catalog.js';
5
+ export type ConnectorServiceErrorCode = 'CONNECTOR_NOT_FOUND' | 'CONNECTOR_AUTH_CONFIG_REQUIRED' | 'CONNECTOR_NOT_CONNECTED' | 'CONNECTOR_DISABLED' | 'CONNECTOR_TOOL_NOT_FOUND' | 'CONNECTOR_SAFETY_DENIED' | 'CONNECTOR_INPUT_SCHEMA_MISMATCH' | 'CONNECTOR_RATE_LIMITED' | 'CONNECTOR_OUTPUT_TOO_LARGE' | 'CONNECTOR_EXECUTION_FAILED';
6
+ /**
7
+ * Typed boundary error with an HTTP-compatible status for future adapters.
8
+ */
9
+ export declare class ConnectorServiceError extends Error {
10
+ readonly code: ConnectorServiceErrorCode;
11
+ readonly status: number;
12
+ readonly details?: JsonObject | undefined;
13
+ constructor(code: ConnectorServiceErrorCode, message: string, status: number, details?: JsonObject | undefined, options?: ErrorOptions);
14
+ }
15
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/composio/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,yBAAyB,GACjC,qBAAqB,GACrB,gCAAgC,GAChC,yBAAyB,GACzB,oBAAoB,GACpB,0BAA0B,GAC1B,yBAAyB,GACzB,iCAAiC,GACjC,wBAAwB,GACxB,4BAA4B,GAC5B,4BAA4B,CAAC;AAEjC;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAE5C,QAAQ,CAAC,IAAI,EAAE,yBAAyB;IAExC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU;gBAHpB,IAAI,EAAE,yBAAyB,EACxC,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,UAAU,YAAA,EAC7B,OAAO,CAAC,EAAE,YAAY;CAKzB"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Typed boundary error with an HTTP-compatible status for future adapters.
3
+ */
4
+ export class ConnectorServiceError extends Error {
5
+ code;
6
+ status;
7
+ details;
8
+ constructor(code, message, status, details, options) {
9
+ super(message, options);
10
+ this.code = code;
11
+ this.status = status;
12
+ this.details = details;
13
+ this.name = 'ConnectorServiceError';
14
+ }
15
+ }
16
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/composio/errors.ts"],"names":[],"mappings":"AAiBA;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAEnC;IAEA;IACA;IAJX,YACW,IAA+B,EACxC,OAAe,EACN,MAAc,EACd,OAAoB,EAC7B,OAAsB;QAEtB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QANf,SAAI,GAAJ,IAAI,CAA2B;QAE/B,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAa;QAI7B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Serializes a synchronous read-modify-write operation across store instances
3
+ * and Node processes that share the same target path.
4
+ *
5
+ * Lock ownership is a unique token bound to the created inode. Contenders
6
+ * never evict a lock based on age, and cleanup unlinks only that same owner.
7
+ *
8
+ * @complexity Time: O(w), bounded by the contention timeout. Space: O(1).
9
+ * @overallScore 96/100 — synchronous polling is deliberate for synchronous
10
+ * file-store APIs; ownership and timeout behavior remain explicit and bounded.
11
+ */
12
+ export declare function withExclusiveFileLock<T>(filePath: string, operation: () => T): T;
13
+ //# sourceMappingURL=file-lock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-lock.d.ts","sourceRoot":"","sources":["../../src/composio/file-lock.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAwChF"}
@@ -0,0 +1,92 @@
1
+ import crypto from 'node:crypto';
2
+ import fs from 'node:fs';
3
+ import path from 'node:path';
4
+ const FILE_LOCK_WAIT_MS = 10;
5
+ const FILE_LOCK_TIMEOUT_MS = 2_000;
6
+ const lockWaitBuffer = new Int32Array(new SharedArrayBuffer(4));
7
+ /**
8
+ * Serializes a synchronous read-modify-write operation across store instances
9
+ * and Node processes that share the same target path.
10
+ *
11
+ * Lock ownership is a unique token bound to the created inode. Contenders
12
+ * never evict a lock based on age, and cleanup unlinks only that same owner.
13
+ *
14
+ * @complexity Time: O(w), bounded by the contention timeout. Space: O(1).
15
+ * @overallScore 96/100 — synchronous polling is deliberate for synchronous
16
+ * file-store APIs; ownership and timeout behavior remain explicit and bounded.
17
+ */
18
+ export function withExclusiveFileLock(filePath, operation) {
19
+ const lockPath = `${filePath}.lock`;
20
+ fs.mkdirSync(path.dirname(filePath), { recursive: true, mode: 0o700 });
21
+ const deadline = Date.now() + FILE_LOCK_TIMEOUT_MS;
22
+ const ownership = `${process.pid}:${crypto.randomUUID()}\n`;
23
+ let descriptor;
24
+ while (descriptor === undefined) {
25
+ try {
26
+ descriptor = fs.openSync(lockPath, fs.constants.O_CREAT | fs.constants.O_EXCL | fs.constants.O_RDWR, 0o600);
27
+ fs.writeFileSync(descriptor, ownership, 'utf8');
28
+ }
29
+ catch (error) {
30
+ if (!isErrno(error, 'EEXIST'))
31
+ throw error;
32
+ // Contentious locks are never evicted by age: an old mtime is not proof
33
+ // that the owning process or operation is dead. There is deliberately no
34
+ // `statSync` here — an earlier version stat'd the lock and discarded the
35
+ // result, left over from the age-based eviction this comment describes
36
+ // removing. That stat threw ENOENT out of this function whenever the
37
+ // owner released between the failed `openSync` and the stat, turning the
38
+ // NORMAL release race into a hard failure instead of the retry below.
39
+ if (Date.now() >= deadline) {
40
+ throw new Error(`Timed out waiting for exclusive access to ${path.basename(filePath)}.`);
41
+ }
42
+ Atomics.wait(lockWaitBuffer, 0, 0, FILE_LOCK_WAIT_MS);
43
+ }
44
+ }
45
+ try {
46
+ return operation();
47
+ }
48
+ finally {
49
+ try {
50
+ releaseOwnedLock(lockPath, descriptor, ownership);
51
+ }
52
+ finally {
53
+ fs.closeSync(descriptor);
54
+ }
55
+ }
56
+ }
57
+ function releaseOwnedLock(lockPath, descriptor, ownership) {
58
+ const ownerStat = fs.fstatSync(descriptor);
59
+ try {
60
+ const pathStat = fs.statSync(lockPath);
61
+ if (ownerStat.dev !== pathStat.dev || ownerStat.ino !== pathStat.ino)
62
+ return;
63
+ const buffer = Buffer.alloc(Buffer.byteLength(ownership, 'utf8'));
64
+ const bytesRead = fs.readSync(descriptor, buffer, 0, buffer.length, 0);
65
+ if (buffer.subarray(0, bytesRead).toString('utf8') !== ownership)
66
+ return;
67
+ fs.unlinkSync(lockPath);
68
+ removeOwnedLockLeftAfterSuccessfulUnlink(lockPath, ownerStat);
69
+ }
70
+ catch (error) {
71
+ if (!isErrno(error, 'ENOENT'))
72
+ throw error;
73
+ removeOwnedLockLeftAfterSuccessfulUnlink(lockPath, ownerStat);
74
+ }
75
+ }
76
+ function removeOwnedLockLeftAfterSuccessfulUnlink(lockPath, ownerStat) {
77
+ try {
78
+ const remainingStat = fs.statSync(lockPath);
79
+ if (remainingStat.dev === ownerStat.dev && remainingStat.ino === ownerStat.ino) {
80
+ fs.rmSync(lockPath);
81
+ }
82
+ }
83
+ catch (error) {
84
+ if (isErrno(error, 'ENOENT'))
85
+ return;
86
+ throw error;
87
+ }
88
+ }
89
+ function isErrno(error, code) {
90
+ return Boolean(error && typeof error === 'object' && 'code' in error && error.code === code);
91
+ }
92
+ //# sourceMappingURL=file-lock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-lock.js","sourceRoot":"","sources":["../../src/composio/file-lock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @module @jini-ai/integrations/composio
3
+ *
4
+ * Public surface for the headless Composio integration package.
5
+ */
6
+ export type { ConnectorAuthDetail, ConnectorCatalogDefinition, ConnectorCatalogToolDefinition, ConnectorDetail, ConnectorStatus, ConnectorToolApproval, ConnectorToolCuration, ConnectorToolDetail, ConnectorToolSafety, ConnectorToolSafetyClassificationInput, ConnectorToolSideEffect, ConnectorToolUseCase, JsonObject, } from './catalog.js';
7
+ export { classifyConnectorToolSafety, connectorDefinitionToDetail, defineConnectorTool, isRefreshEligibleConnectorToolSafety, } from './catalog.js';
8
+ export type { ComposioConfig, ComposioConfigStore, FileComposioConfigStoreOptions, PublicComposioConfig, } from './composio-config.js';
9
+ export { createFileComposioConfigStore } from './composio-config.js';
10
+ export type { ComposioToolkitMetadata } from './composio-descriptions.js';
11
+ export { COMPOSIO_TOOLKIT_METADATA, getComposioToolkitMetadata, } from './composio-descriptions.js';
12
+ export type { ComposioAuthConfigPrepareResult, ComposioConnectionCompletion, ComposioConnectionStart, ComposioCredentialMaterial, ComposioConnectorProviderOptions, ComposioCurationOverlay, ComposioPendingConnection, ComposioProviderEvent, ComposioToolkitCatalogEntry, StaticComposioCatalogDefinitionsOptions, } from './composio.js';
13
+ export { ComposioConnectorProvider, DOCUMENTED_COMPOSIO_TOOLKITS, FEATURED_COMPOSIO_CATALOG, getStaticComposioCatalogDefinitions, isComposioCredentialMaterial, } from './composio.js';
14
+ export type { ComposioConnectorServiceOptions, ConnectorAuthConfigPrepareResponse, ConnectorConnectResult, ConnectorConnectionRecord, ConnectorConnectionStatus, ConnectorCredentialMaterial, ConnectorCredentialRecord, ConnectorCredentialStore, ConnectorDiscoveryResult, ConnectorExecuteRequest, ConnectorExecuteResponse, ConnectorExecutionContext, ConnectorOutputProtectionResult, ConnectorStatusServiceOptions, } from './service.js';
15
+ export { COMPOSIO_AUTH_CONFIG_PREPARE_LIMIT, ComposioConnectorService, CONNECTOR_MAX_OUTPUT_BYTES, CONNECTOR_RUN_LIMIT_TTL_MS, CONNECTOR_RUN_RATE_LIMIT_CALLS, CONNECTOR_RUN_RATE_LIMIT_WINDOW_MS, CONNECTOR_RUN_TOTAL_CALL_LIMIT, ConnectorStatusService, FileConnectorCredentialStore, InMemoryConnectorCredentialStore, protectConnectorOutput, } from './service.js';
16
+ export type { ConnectorServiceErrorCode } from './errors.js';
17
+ export { ConnectorServiceError } from './errors.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composio/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,YAAY,EACV,mBAAmB,EACnB,0BAA0B,EAC1B,8BAA8B,EAC9B,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,sCAAsC,EACtC,uBAAuB,EACvB,oBAAoB,EACpB,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,EACnB,oCAAoC,GACrC,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAErE,YAAY,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EACL,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,+BAA+B,EAC/B,4BAA4B,EAC5B,uBAAuB,EACvB,0BAA0B,EAC1B,gCAAgC,EAChC,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC3B,uCAAuC,GACxC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,EACzB,mCAAmC,EACnC,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,+BAA+B,EAC/B,kCAAkC,EAClC,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,kCAAkC,EAClC,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,8BAA8B,EAC9B,kCAAkC,EAClC,8BAA8B,EAC9B,sBAAsB,EACtB,4BAA4B,EAC5B,gCAAgC,EAChC,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { classifyConnectorToolSafety, connectorDefinitionToDetail, defineConnectorTool, isRefreshEligibleConnectorToolSafety, } from './catalog.js';
2
+ export { createFileComposioConfigStore } from './composio-config.js';
3
+ export { COMPOSIO_TOOLKIT_METADATA, getComposioToolkitMetadata, } from './composio-descriptions.js';
4
+ export { ComposioConnectorProvider, DOCUMENTED_COMPOSIO_TOOLKITS, FEATURED_COMPOSIO_CATALOG, getStaticComposioCatalogDefinitions, isComposioCredentialMaterial, } from './composio.js';
5
+ export { COMPOSIO_AUTH_CONFIG_PREPARE_LIMIT, ComposioConnectorService, CONNECTOR_MAX_OUTPUT_BYTES, CONNECTOR_RUN_LIMIT_TTL_MS, CONNECTOR_RUN_RATE_LIMIT_CALLS, CONNECTOR_RUN_RATE_LIMIT_WINDOW_MS, CONNECTOR_RUN_TOTAL_CALL_LIMIT, ConnectorStatusService, FileConnectorCredentialStore, InMemoryConnectorCredentialStore, protectConnectorOutput, } from './service.js';
6
+ export { ConnectorServiceError } from './errors.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/composio/index.ts"],"names":[],"mappings":"AAoBA,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,EACnB,oCAAoC,GACrC,MAAM,cAAc,CAAC;AAQtB,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EACL,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAcpC,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,EACzB,mCAAmC,EACnC,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAkBvB,OAAO,EACL,kCAAkC,EAClC,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,8BAA8B,EAC9B,kCAAkC,EAClC,8BAA8B,EAC9B,sBAAsB,EACtB,4BAA4B,EAC5B,gCAAgC,EAChC,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * @module json-schema
3
+ *
4
+ * Fail-closed validation for the bounded JSON Schema subset accepted by the
5
+ * Composio execution boundary.
6
+ */
7
+ import type { JsonValue } from '@jini-ai/protocol';
8
+ export type ConnectorJsonSchema = {
9
+ [key: string]: JsonValue;
10
+ };
11
+ interface ValidationState {
12
+ nodes: number;
13
+ }
14
+ /** Element-wise deep equality for two same-length JSON arrays. */
15
+ export declare function arraysDeepEqual(left: JsonValue[], right: JsonValue[]): boolean;
16
+ /** Key-set and value-wise deep equality for two JSON objects (order-independent). */
17
+ export declare function objectsDeepEqual(left: ConnectorJsonSchema, right: ConnectorJsonSchema): boolean;
18
+ /** The `type` keyword's declared type(s), normalized to a list (empty when `type` is absent). Shared by structural validation and evaluation. */
19
+ export declare function declaredSchemaTypes(schema: ConnectorJsonSchema): string[];
20
+ /** True when the `type` keyword is absent, a string, or a non-empty array of strings. */
21
+ export declare function isSupportedTypeKeywordShape(type: JsonValue | undefined): boolean;
22
+ /** Rejects any schema keyword outside the bounded, supported subset. */
23
+ export declare function assertSupportedKeywords(schema: ConnectorJsonSchema, path: string): void;
24
+ /** Rejects an unsupported `type` keyword shape or a declared type outside `VALID_TYPES`. */
25
+ export declare function assertTypeKeywordSupported(schema: ConnectorJsonSchema, path: string): void;
26
+ /** Rejects a malformed `enum` keyword (must be a non-empty array when present). */
27
+ export declare function assertEnumShapeSupported(schema: ConnectorJsonSchema, path: string): void;
28
+ /** Rejects malformed numeric-range keywords (`minimum`/`maximum`/`exclusiveMinimum`/`exclusiveMaximum`/`multipleOf`). */
29
+ export declare function assertNumericConstraintsSupported(schema: ConnectorJsonSchema, path: string): void;
30
+ /** Rejects malformed size keywords (`min/maxLength`, `min/maxItems`, `min/maxProperties`) and a malformed `uniqueItems`. */
31
+ export declare function assertSizeConstraintsSupported(schema: ConnectorJsonSchema, path: string): void;
32
+ /** Rejects a malformed `required` keyword (must be an array of strings when present). */
33
+ export declare function assertRequiredShapeSupported(schema: ConnectorJsonSchema, path: string): void;
34
+ /** Rejects a malformed `properties` or `additionalProperties` keyword shape (recursion into their children happens separately). */
35
+ export declare function assertPropertiesShapeSupported(schema: ConnectorJsonSchema, path: string): void;
36
+ /** Rejects a malformed `allOf`/`anyOf`/`oneOf` branch list and recurses structural validation into each branch. */
37
+ export declare function assertCombinatorBranchesSupported(schema: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
38
+ /** Recurses structural validation into `not`, `items`, each declared `properties` child, and a schema-valued `additionalProperties`. */
39
+ export declare function recurseIntoRemainingChildSchemas(schema: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
40
+ /** Runs `value` against every branch of an `allOf`/`anyOf`/`oneOf` list, returning the match count and the last mismatch seen (for `allOf`'s error). */
41
+ export declare function countMatchingBranches(value: JsonValue, branches: JsonValue[], path: string, depth: number, state: ValidationState): {
42
+ matches: number;
43
+ lastError: unknown;
44
+ };
45
+ /** Enforces the combinator's match-count rule (`allOf`: all branches, `anyOf`: at least one, `oneOf`: exactly one) given a branch-match tally. */
46
+ export declare function assertBranchListSatisfied(keyword: 'allOf' | 'anyOf' | 'oneOf', matches: number, lastError: unknown, totalBranches: number, path: string): void;
47
+ /** Rejects a value whose type doesn't match the schema's declared `type` keyword. */
48
+ export declare function assertDeclaredTypeMatches(value: JsonValue, schema: ConnectorJsonSchema, path: string): void;
49
+ /** Rejects a value that fails the schema's `enum` or `const` keyword. */
50
+ export declare function assertEnumAndConstMatch(value: JsonValue, schema: ConnectorJsonSchema, path: string): void;
51
+ /** Rejects a value that satisfies the schema's `not` sub-schema (a mismatch there is what `not` requires). */
52
+ export declare function assertNotSchemaSatisfied(value: JsonValue, schema: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
53
+ /** Rejects a number outside `minimum`/`maximum`/`exclusiveMinimum`/`exclusiveMaximum`. */
54
+ export declare function assertNumberRangeConstraints(value: number, schema: ConnectorJsonSchema, path: string): void;
55
+ /** Rejects a number that isn't a multiple of the schema's `multipleOf`. */
56
+ export declare function assertNumberMultipleOfConstraint(value: number, schema: ConnectorJsonSchema, path: string): void;
57
+ /** Validates a number value against the schema's finiteness, range, and `multipleOf` keywords. */
58
+ export declare function validateNumberValue(value: number, schema: ConnectorJsonSchema, path: string): void;
59
+ /** Validates a string value's Unicode-codepoint length against `minLength`/`maxLength`. */
60
+ export declare function validateStringValue(value: string, schema: ConnectorJsonSchema, path: string): void;
61
+ /** Rejects an array whose length falls outside `minItems`/`maxItems`. */
62
+ export declare function assertArraySizeConstraints(value: JsonValue[], schema: ConnectorJsonSchema, path: string): void;
63
+ /** When `uniqueItems` is `true`, rejects an array containing two deep-equal elements. */
64
+ export declare function assertArrayItemsUnique(value: JsonValue[], schema: ConnectorJsonSchema, path: string): void;
65
+ /** Recurses evaluation into every array element against the schema's `items` sub-schema. */
66
+ export declare function recurseIntoArrayItems(value: JsonValue[], schema: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
67
+ /** Validates an array value's size, uniqueness, and (recursively) its items. */
68
+ export declare function validateArrayValue(value: JsonValue[], schema: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
69
+ /** Rejects an object whose property count falls outside `minProperties`/`maxProperties`. */
70
+ export declare function assertObjectSizeConstraints(value: ConnectorJsonSchema, schema: ConnectorJsonSchema, path: string): void;
71
+ /** Rejects an object missing any of the schema's `required` property names. */
72
+ export declare function assertRequiredPropertiesPresent(value: ConnectorJsonSchema, schema: ConnectorJsonSchema, path: string): void;
73
+ /** Recurses evaluation into every value present in `value` whose key is declared in `properties`. */
74
+ export declare function recurseIntoDeclaredProperties(value: ConnectorJsonSchema, propertySchemas: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
75
+ /** Rejects a disallowed extra property (`additionalProperties: false`) or recurses evaluation into a schema-valued `additionalProperties`. */
76
+ export declare function assertAdditionalPropertiesAllowed(value: ConnectorJsonSchema, schema: ConnectorJsonSchema, path: string, extraKeys: string[], depth: number, state: ValidationState): void;
77
+ /** Validates an object value's size, `required` properties, declared `properties`, and `additionalProperties`. */
78
+ export declare function validateObjectValue(value: ConnectorJsonSchema, schema: ConnectorJsonSchema, path: string, depth: number, state: ValidationState): void;
79
+ /**
80
+ * Validates input or throws before any provider effect can run.
81
+ *
82
+ * Structure and evaluation use independent shared node budgets. Exhaustion is
83
+ * an indeterminate hard denial and cannot be consumed as an ordinary
84
+ * combinator mismatch.
85
+ *
86
+ * @complexity Time: O(n). Space: O(d), for bounded schema/input traversal.
87
+ * @overallScore 100/100
88
+ */
89
+ export declare function assertConnectorInputMatchesSchema(value: JsonValue, schema: ConnectorJsonSchema | undefined, path?: string): void;
90
+ /** Returns the fail-closed reason used to keep unsupported live tools uncallable. */
91
+ export declare function getConnectorSchemaSupportError(schema: JsonValue): string | undefined;
92
+ export {};
93
+ //# sourceMappingURL=json-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../src/composio/json-schema.ts"],"names":[],"mappings":"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"}