@cargo-ai/types 1.0.2 → 1.0.4

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 (96) hide show
  1. package/README.md +4 -2
  2. package/build/src/ai/ai.d.ts +462 -0
  3. package/build/src/ai/ai.d.ts.map +1 -0
  4. package/build/src/ai/ai.js +1 -0
  5. package/build/src/ai/index.d.ts +3 -0
  6. package/build/src/ai/index.d.ts.map +1 -0
  7. package/build/src/ai/index.js +2 -0
  8. package/build/src/ai/utils.d.ts +6 -0
  9. package/build/src/ai/utils.d.ts.map +1 -0
  10. package/build/src/ai/utils.js +82 -0
  11. package/build/src/billing/billing.d.ts +100 -0
  12. package/build/src/billing/billing.d.ts.map +1 -0
  13. package/build/src/billing/billing.js +1 -0
  14. package/build/src/billing/index.d.ts +2 -0
  15. package/build/src/billing/index.d.ts.map +1 -0
  16. package/build/src/billing/index.js +1 -0
  17. package/build/src/connection/connection.d.ts +650 -0
  18. package/build/src/connection/connection.d.ts.map +1 -0
  19. package/build/src/connection/connection.js +2 -0
  20. package/build/src/connection/index.d.ts +2 -0
  21. package/build/src/connection/index.d.ts.map +1 -0
  22. package/build/src/connection/index.js +1 -0
  23. package/build/src/expression/expression.d.ts +66 -0
  24. package/build/src/expression/expression.d.ts.map +1 -0
  25. package/build/src/expression/expression.js +2 -0
  26. package/build/src/expression/index.d.ts +3 -0
  27. package/build/src/expression/index.d.ts.map +1 -0
  28. package/build/src/expression/index.js +2 -0
  29. package/build/src/expression/utils.d.ts +4 -0
  30. package/build/src/expression/utils.d.ts.map +1 -0
  31. package/build/src/expression/utils.js +63 -0
  32. package/build/src/global/index.d.ts +2 -0
  33. package/build/src/global/index.d.ts.map +1 -0
  34. package/build/src/global/index.js +1 -0
  35. package/build/src/global/utils.d.ts +5 -0
  36. package/build/src/global/utils.d.ts.map +1 -0
  37. package/build/src/global/utils.js +32 -0
  38. package/build/src/index.d.ts +13 -0
  39. package/build/src/index.d.ts.map +1 -0
  40. package/build/src/index.js +12 -0
  41. package/build/src/orchestration/index.d.ts +3 -0
  42. package/build/src/orchestration/index.d.ts.map +1 -0
  43. package/build/src/orchestration/index.js +2 -0
  44. package/build/src/orchestration/orchestration.d.ts +534 -0
  45. package/build/src/orchestration/orchestration.d.ts.map +1 -0
  46. package/build/src/orchestration/orchestration.js +1 -0
  47. package/build/src/orchestration/utils.d.ts +7 -0
  48. package/build/src/orchestration/utils.d.ts.map +1 -0
  49. package/build/src/orchestration/utils.js +90 -0
  50. package/build/src/revenueOrganization/index.d.ts +2 -0
  51. package/build/src/revenueOrganization/index.d.ts.map +1 -0
  52. package/build/src/revenueOrganization/index.js +1 -0
  53. package/build/src/revenueOrganization/revenueOrganization.d.ts +114 -0
  54. package/build/src/revenueOrganization/revenueOrganization.d.ts.map +1 -0
  55. package/build/src/revenueOrganization/revenueOrganization.js +2 -0
  56. package/build/src/segmentation/index.d.ts +2 -0
  57. package/build/src/segmentation/index.d.ts.map +1 -0
  58. package/build/src/segmentation/index.js +1 -0
  59. package/build/src/segmentation/segmentation.d.ts +74 -0
  60. package/build/src/segmentation/segmentation.d.ts.map +1 -0
  61. package/build/src/segmentation/segmentation.js +1 -0
  62. package/build/src/storage/index.d.ts +2 -0
  63. package/build/src/storage/index.d.ts.map +1 -0
  64. package/build/src/storage/index.js +1 -0
  65. package/build/src/storage/storage.d.ts +144 -0
  66. package/build/src/storage/storage.d.ts.map +1 -0
  67. package/build/src/storage/storage.js +2 -0
  68. package/build/src/systemOfRecordIntegration/clients/bigQuery.d.ts +26 -0
  69. package/build/src/systemOfRecordIntegration/clients/bigQuery.d.ts.map +1 -0
  70. package/build/src/systemOfRecordIntegration/clients/bigQuery.js +1 -0
  71. package/build/src/systemOfRecordIntegration/clients/snowflake.d.ts +26 -0
  72. package/build/src/systemOfRecordIntegration/clients/snowflake.d.ts.map +1 -0
  73. package/build/src/systemOfRecordIntegration/clients/snowflake.js +1 -0
  74. package/build/src/systemOfRecordIntegration/index.d.ts +2 -0
  75. package/build/src/systemOfRecordIntegration/index.d.ts.map +1 -0
  76. package/build/src/systemOfRecordIntegration/index.js +1 -0
  77. package/build/src/systemOfRecordIntegration/systemOfRecordIntegration.d.ts +777 -0
  78. package/build/src/systemOfRecordIntegration/systemOfRecordIntegration.d.ts.map +1 -0
  79. package/build/src/systemOfRecordIntegration/systemOfRecordIntegration.js +2 -0
  80. package/build/src/userManagement/index.d.ts +2 -0
  81. package/build/src/userManagement/index.d.ts.map +1 -0
  82. package/build/src/userManagement/index.js +1 -0
  83. package/build/src/userManagement/userManagement.d.ts +21 -0
  84. package/build/src/userManagement/userManagement.d.ts.map +1 -0
  85. package/build/src/userManagement/userManagement.js +1 -0
  86. package/build/src/utils.d.ts +9 -0
  87. package/build/src/utils.d.ts.map +1 -0
  88. package/build/src/utils.js +1 -0
  89. package/build/src/workspaceManagement/index.d.ts +2 -0
  90. package/build/src/workspaceManagement/index.d.ts.map +1 -0
  91. package/build/src/workspaceManagement/index.js +1 -0
  92. package/build/src/workspaceManagement/workspaceManagement.d.ts +79 -0
  93. package/build/src/workspaceManagement/workspaceManagement.d.ts.map +1 -0
  94. package/build/src/workspaceManagement/workspaceManagement.js +1 -0
  95. package/build/tsconfig.tsbuildinfo +1 -0
  96. package/package.json +5 -5
@@ -0,0 +1,650 @@
1
+ import type { Schema } from "@cargo-ai/utils";
2
+ import type { Schema as JsonSchema } from "jsonschema";
3
+ import type { z } from "zod/v4";
4
+ import type { BillingTypes } from "../billing/billing.js";
5
+ import type { OrchestrationTypes } from "../orchestration/index.js";
6
+ export declare namespace ConnectionTypes {
7
+ export type RateLimit = {
8
+ unit: "day" | "hour" | "minute" | "second";
9
+ max: number;
10
+ };
11
+ export type EnrichedRateLimit = RateLimit & {
12
+ resourceId: string;
13
+ intervalMs: number;
14
+ };
15
+ export type Connector = {
16
+ uuid: string;
17
+ workspaceUuid: string;
18
+ userUuid: string;
19
+ name: string;
20
+ slug: string;
21
+ rateLimit: RateLimit | null;
22
+ cacheTtlMilliseconds: number | null;
23
+ integrationSlug: string;
24
+ playsCount: number;
25
+ toolsCount: number;
26
+ modelsCount: number;
27
+ createdAt: Date;
28
+ updatedAt: Date;
29
+ deletedAt: Date | null;
30
+ } & ({
31
+ useCredits: true;
32
+ config: null;
33
+ } | {
34
+ useCredits: false;
35
+ config: Record<string, any>;
36
+ });
37
+ export type CustomIntegration = {
38
+ uuid: string;
39
+ workspaceUuid: string;
40
+ slug: string;
41
+ baseUrl: string;
42
+ createdAt: Date;
43
+ updatedAt: Date;
44
+ deletedAt: Date | null;
45
+ };
46
+ export type IntegrationFilterConjonction = "or" | "and";
47
+ export type IntegrationFilterOperator = "lowerThan" | "lowerThanOrEquals" | "greaterThan" | "greaterThanOrEquals" | "is" | "isNot" | "contains" | "notContains" | "between" | "isNull" | "isNotNull" | "isEmpty" | "isNotEmpty";
48
+ export type IntegrationFilterCondition = {
49
+ propertyName: string;
50
+ } & ({
51
+ operator: Exclude<IntegrationFilterOperator, "isNull" | "isNotNull" | "isEmpty" | "isNotEmpty" | "between" | "is" | "isNot" | "contains" | "notContains">;
52
+ value: any;
53
+ } | {
54
+ operator: "is" | "isNot" | "contains" | "notContains";
55
+ values: any | any[];
56
+ } | {
57
+ operator: "isNull" | "isNotNull" | "isEmpty" | "isNotEmpty";
58
+ } | {
59
+ operator: "between";
60
+ value: any;
61
+ otherValue: any;
62
+ });
63
+ export type IntegrationFilterGroup = {
64
+ conditions: IntegrationFilterCondition[];
65
+ conjonction: IntegrationFilterConjonction;
66
+ };
67
+ export type IntegrationFilter = {
68
+ groups: IntegrationFilterGroup[];
69
+ conjonction: IntegrationFilterConjonction;
70
+ };
71
+ export type IntegrationSort = {
72
+ propertyName: string;
73
+ kind: "desc" | "asc";
74
+ }[];
75
+ export type IntegrationCategory = "engagement" | "marketing" | "sales" | "finance" | "analytics" | "freeform" | "success" | "support" | "enrichment" | "storage" | "custom";
76
+ export type IntegrationSubCategory = "websiteVisit" | "listBuilding" | "newHire" | "jobOffer" | "socialSelling" | "ecommerce" | "webScraper" | "developer";
77
+ export type IntegrationRateLimit = RateLimit & {
78
+ config: {
79
+ schema: Schema;
80
+ };
81
+ };
82
+ export type IntegrationRetry = {
83
+ maximumAttempts?: number;
84
+ initialInterval?: number;
85
+ backoffCoefficient?: number;
86
+ };
87
+ export type IntegrationCaching = {
88
+ isCompatible: boolean;
89
+ };
90
+ export type IntegrationActionChild = {
91
+ text: string;
92
+ };
93
+ export type IntegrationManifestAction = {
94
+ name: string;
95
+ description: string;
96
+ config: {
97
+ jsonSchema: JsonSchema;
98
+ uiSchema?: Record<string, any>;
99
+ };
100
+ credits?: {
101
+ rateLimits?: IntegrationRateLimit[];
102
+ costs: BillingTypes.CreditsCost[];
103
+ };
104
+ rateLimits?: IntegrationRateLimit[];
105
+ isSerialized?: boolean;
106
+ retry?: IntegrationRetry;
107
+ executing?: {
108
+ retry: IntegrationRetry;
109
+ withRateLimit: boolean;
110
+ };
111
+ caching?: IntegrationCaching;
112
+ children?: IntegrationActionChild[];
113
+ };
114
+ export type IntegrationExtractorModeFetch = {
115
+ kind: "fetch";
116
+ isIncremental: boolean;
117
+ isWatchable?: boolean;
118
+ minIntervalInSeconds?: number;
119
+ autoFetch?: boolean;
120
+ writeStrategy?: "append" | "overwrite";
121
+ };
122
+ export type IntegrationExtractorModeIngest = {
123
+ kind: "ingest";
124
+ autoIngest?: boolean;
125
+ };
126
+ export type IntegrationExtractorMode = IntegrationExtractorModeFetch | IntegrationExtractorModeIngest;
127
+ export type IntegrationExtractorUnificationReshaper = "urlExtractDomain" | "urlExtractLinkedinIdOrHandle" | "urlExtractCrunchbaseId" | "urlExtractTwitterHandle" | "urlExtractSalesNavigatorId";
128
+ export type IntegrationExtractorUnificationReference = "linkedinIdOrHandle" | "domain" | "email" | "crunchbaseId" | "twitterHandle" | "salesNavigatorId";
129
+ export type IntegrationExtractorUnificationColumn = {
130
+ slug: string;
131
+ reference: IntegrationExtractorUnificationReference;
132
+ reshaper?: IntegrationExtractorUnificationReshaper;
133
+ };
134
+ export type IntegrationExtractorUnificationType = "account" | "contact" | "accountEvent" | "contactEvent";
135
+ export type IntegrationExtractorUnification = {
136
+ config: {
137
+ jsonSchema: JsonSchema;
138
+ };
139
+ type: IntegrationExtractorUnificationType;
140
+ uniqueColumns: IntegrationExtractorUnificationColumn[];
141
+ };
142
+ export type IntegrationUnificationReference = IntegrationExtractorUnificationReference;
143
+ export type IntegrationUnificationReshaper = IntegrationExtractorUnificationReshaper;
144
+ export type IntegrationUnificationColumn = IntegrationExtractorUnificationColumn;
145
+ export type IntegrationUnificationType = IntegrationExtractorUnificationType;
146
+ export type IntegrationManifestExtractor = {
147
+ name: string;
148
+ description: string;
149
+ config: {
150
+ jsonSchema: JsonSchema;
151
+ uiSchema?: Record<string, any>;
152
+ };
153
+ credits?: {
154
+ rateLimits?: IntegrationRateLimit[];
155
+ costs: BillingTypes.CreditsCost[];
156
+ };
157
+ rateLimits?: IntegrationRateLimit[];
158
+ retry?: IntegrationRetry;
159
+ fetching?: {
160
+ retry: IntegrationRetry;
161
+ withRateLimit: boolean;
162
+ };
163
+ unifications?: IntegrationExtractorUnification[];
164
+ mode: IntegrationExtractorMode;
165
+ preview: "none" | "records" | "count";
166
+ };
167
+ export type IntegrationAgentTrigger<ConfigSchema extends Schema = Schema> = {
168
+ description: string;
169
+ config: {
170
+ schema: ConfigSchema;
171
+ uiSchema?: Record<string, any>;
172
+ };
173
+ };
174
+ export type IntegrationLanguageModel = {
175
+ name: string;
176
+ slug: string;
177
+ description: string;
178
+ contextWindowTokensLimit: number;
179
+ outputTokensLimit: number;
180
+ isReasoning: boolean;
181
+ credits?: {
182
+ cost: BillingTypes.CreditsCost;
183
+ };
184
+ };
185
+ export type IntegrationManifest = {
186
+ autocompletes: {
187
+ slug: string;
188
+ params: {
189
+ jsonSchema: JsonSchema;
190
+ };
191
+ cacheExpirationInSeconds?: number;
192
+ }[];
193
+ extractors: Record<string, IntegrationManifestExtractor>;
194
+ actions?: Record<string, IntegrationManifestAction>;
195
+ };
196
+ export type IntegrationConnectorData<Config> = {
197
+ uuid: string;
198
+ workspaceUuid: string;
199
+ config: Config;
200
+ };
201
+ export type IntegrationAgentData<TriggerConfig> = {
202
+ uuid: string;
203
+ workspaceUuid: string;
204
+ triggers: {
205
+ config: TriggerConfig;
206
+ }[];
207
+ name: string;
208
+ icon: {
209
+ color: "grey" | "green" | "purple" | "yellow" | "blue" | "red";
210
+ };
211
+ };
212
+ export type IntegrationAgentAttachment = {
213
+ s3Filename: string;
214
+ name: string;
215
+ contentType: string;
216
+ };
217
+ export type IntegrationAgentMessage<MessageMeta> = {
218
+ text: string;
219
+ userUuid?: string;
220
+ attachments: IntegrationAgentAttachment[];
221
+ meta: MessageMeta;
222
+ };
223
+ export type IntegrationAuthenticatePayload<ConnectorConfig = unknown> = {
224
+ connector: IntegrationConnectorData<ConnectorConfig>;
225
+ };
226
+ export type IntegrationListUsersPayload<ConnectorConfig = unknown> = {
227
+ connector: IntegrationConnectorData<ConnectorConfig>;
228
+ };
229
+ export type IntegrationAuthenticateResult = {
230
+ outcome: "success";
231
+ config?: Record<string, unknown>;
232
+ } | {
233
+ outcome: "error";
234
+ reason: "unauthenticated";
235
+ errorMessage?: string;
236
+ };
237
+ export type IntegrationActionExecutePayload<ConnectorConfig = unknown, Config = unknown, Meta = unknown> = {
238
+ connector: IntegrationConnectorData<ConnectorConfig>;
239
+ config: Config;
240
+ isDryExecution?: boolean;
241
+ meta?: Meta;
242
+ };
243
+ export type IntegrationActionExecuteResult<Meta = unknown> = {
244
+ outcome: "executed";
245
+ data?: Record<string, any>;
246
+ unitsCount?: number;
247
+ title: string;
248
+ iconUrl?: string;
249
+ childIndex?: number;
250
+ } | {
251
+ outcome: "executing";
252
+ data?: Record<string, any>;
253
+ meta?: Meta;
254
+ };
255
+ export type IntegrationActionValidatePayload<Config = unknown> = {
256
+ config: Config;
257
+ };
258
+ export type IntegrationActionValidateResult = {
259
+ outcome: "valid";
260
+ } | {
261
+ outcome: "notValid";
262
+ errorMessage: string;
263
+ };
264
+ export type IntegrationAutocompletePayload<ConnectorConfig = unknown, Slug = string, Params = unknown> = {
265
+ connector: IntegrationConnectorData<ConnectorConfig>;
266
+ slug: Slug;
267
+ value?: any;
268
+ params: Params;
269
+ };
270
+ export type IntegrationAutocompleteResult = {
271
+ results: {
272
+ label: string;
273
+ value: string;
274
+ parent?: string;
275
+ description?: string;
276
+ configOverride?: Record<string, any>;
277
+ }[];
278
+ };
279
+ export type IntegrationGetLanguageModelsPayload<ConnectorConfig = unknown> = {
280
+ connector: IntegrationConnectorData<ConnectorConfig>;
281
+ };
282
+ export type IntegrationGetLanguageModelsResult = {
283
+ languageModels: IntegrationLanguageModel[];
284
+ };
285
+ export type IntegrationDynamicSchemaGetPayload<ConnectorConfig = unknown, Params = unknown> = {
286
+ connector: IntegrationConnectorData<ConnectorConfig>;
287
+ params: Params;
288
+ };
289
+ export type IntegrationDynamicSchemaGetResult = {
290
+ schema: Schema;
291
+ uiSchema?: Record<string, any>;
292
+ };
293
+ export type IntegrationCompleteOauthPayload<Params = unknown> = {
294
+ params: Params;
295
+ };
296
+ export type IntegrationCompleteOauthResult = {
297
+ value: string;
298
+ };
299
+ export type IntegrationColumnType = "string" | "number" | "object" | "array" | "date" | "boolean" | "vector" | "any";
300
+ export type IntegrationColumn = {
301
+ slug: string;
302
+ type: IntegrationColumnType;
303
+ label: string;
304
+ description?: string;
305
+ };
306
+ export type IntegrationExtractorCreatePayload<ConnectorConfig = unknown, Config = unknown> = {
307
+ connector: IntegrationConnectorData<ConnectorConfig>;
308
+ uuid: string;
309
+ config: Config;
310
+ };
311
+ export type IntegrationExtractorUpdatePayload<ConnectorConfig = unknown, Config = unknown> = {
312
+ connector: IntegrationConnectorData<ConnectorConfig>;
313
+ uuid: string;
314
+ config: Config;
315
+ };
316
+ export type IntegrationExtractorRemovePayload<ConnectorConfig = unknown, Config = unknown> = {
317
+ connector: IntegrationConnectorData<ConnectorConfig>;
318
+ uuid: string;
319
+ config: Config;
320
+ };
321
+ export type IntegrationExtractorPausePayload<ConnectorConfig = unknown, Config = unknown> = {
322
+ connector: IntegrationConnectorData<ConnectorConfig>;
323
+ uuid: string;
324
+ config: Config;
325
+ };
326
+ export type IntegrationExtractorResumePayload<ConnectorConfig = unknown, Config = unknown> = {
327
+ connector: IntegrationConnectorData<ConnectorConfig>;
328
+ uuid: string;
329
+ config: Config;
330
+ };
331
+ export type IntegrationExtractorFetchPayload<ConnectorConfig = unknown, Config = unknown, Meta = unknown> = {
332
+ connector: IntegrationConnectorData<ConnectorConfig>;
333
+ uuid: string;
334
+ config: Config;
335
+ meta?: Meta;
336
+ isDryFetch?: boolean;
337
+ };
338
+ export type IntegrationExtractorCountPayload<ConnectorConfig = unknown, Config = unknown> = {
339
+ connector: IntegrationConnectorData<ConnectorConfig>;
340
+ config: Config;
341
+ };
342
+ export type IntegrationExtractorCreateResult = {
343
+ outcome: "created";
344
+ extraConfig?: Record<string, unknown>;
345
+ } | {
346
+ outcome: "notCreated";
347
+ errorMessage: string;
348
+ };
349
+ export type IntegrationExtractorUpdateResult = {
350
+ outcome: "updated";
351
+ extraConfig?: Record<string, unknown>;
352
+ } | {
353
+ outcome: "notUpdated";
354
+ errorMessage: string;
355
+ };
356
+ export type IntegrationExtractorRecord = {
357
+ kind?: "removed" | "updated" | "added";
358
+ override: boolean;
359
+ record: Record<string, any>;
360
+ };
361
+ export type IntegrationExtractorFetchResult<Meta = unknown> = {
362
+ outcome: "fetched";
363
+ columns: IntegrationColumn[];
364
+ idColumnSlug: string;
365
+ titleColumnSlug: string;
366
+ timeColumnSlug?: string;
367
+ unitsCount?: number;
368
+ count?: number;
369
+ data: {
370
+ kind: "query";
371
+ query: string;
372
+ materialization: "table" | "view";
373
+ } | {
374
+ kind: "records";
375
+ records: IntegrationExtractorRecord[];
376
+ hasMore: boolean;
377
+ meta?: Meta;
378
+ };
379
+ } | {
380
+ outcome: "fetching";
381
+ columns: IntegrationColumn[];
382
+ idColumnSlug: string;
383
+ titleColumnSlug: string;
384
+ timeColumnSlug?: string;
385
+ data: {
386
+ kind: "query";
387
+ } | {
388
+ kind: "records";
389
+ meta?: Meta;
390
+ };
391
+ };
392
+ export type IntegrationExtractorCountResult = {
393
+ count: number;
394
+ };
395
+ export type IntegrationAgentFindChatPayload<ConnectorConfig = unknown, AgentTriggerConfig = unknown, Event = unknown> = {
396
+ connector: IntegrationConnectorData<ConnectorConfig>;
397
+ agent: IntegrationAgentData<AgentTriggerConfig>;
398
+ event: Event;
399
+ };
400
+ export type IntegrationAgentFindChatResult<Meta = unknown> = {
401
+ outcome: "found";
402
+ agentUuid: string;
403
+ slug: string;
404
+ meta: Meta;
405
+ } | {
406
+ outcome: "notFound";
407
+ };
408
+ export type IntegrationAgentRetrieveMessagesPayload<ConnectorConfig = unknown, AgentTriggerConfig = unknown, Event = unknown> = {
409
+ isNewChat: boolean;
410
+ connector: IntegrationConnectorData<ConnectorConfig>;
411
+ agent: IntegrationAgentData<AgentTriggerConfig>;
412
+ event: Event;
413
+ };
414
+ export type IntegrationAgentRetrieveMessagesResult<MessageMeta = unknown> = {
415
+ outcome: "retrieved";
416
+ messages: IntegrationAgentMessage<MessageMeta>[];
417
+ } | {
418
+ outcome: "notRetrieved";
419
+ };
420
+ export type IntegrationAgentHandleMessagePayload<ConnectorConfig = unknown, AgentTriggerConfig = unknown, Meta = unknown, ChatMeta = unknown> = {
421
+ connector: IntegrationConnectorData<ConnectorConfig>;
422
+ agent: IntegrationAgentData<AgentTriggerConfig>;
423
+ meta: Meta | null;
424
+ chat: {
425
+ meta: ChatMeta;
426
+ };
427
+ text: string;
428
+ attachments: IntegrationAgentAttachment[];
429
+ };
430
+ export type IntegrationAgentHandleMessageResult<Meta = unknown> = {
431
+ meta: Meta;
432
+ };
433
+ export type IntegrationLanguageExtractorPayload<ConnectorConfig = unknown> = {
434
+ connector: IntegrationConnectorData<ConnectorConfig>;
435
+ slug: string;
436
+ };
437
+ export type IntegrationUser = {
438
+ id: string;
439
+ email: string;
440
+ firstName?: string | undefined;
441
+ lastName?: string | undefined;
442
+ profileImage?: string | undefined;
443
+ };
444
+ export type IntegrationAction<ConfigSchema extends Schema = Schema> = {
445
+ name?: string;
446
+ description?: string;
447
+ config: {
448
+ schema: ConfigSchema;
449
+ uiSchema?: Record<string, any>;
450
+ };
451
+ credits?: {
452
+ rateLimits?: IntegrationRateLimit[];
453
+ costs: BillingTypes.CreditsCost[];
454
+ };
455
+ rateLimits?: IntegrationRateLimit[];
456
+ isSerialized?: boolean;
457
+ retry?: IntegrationRetry;
458
+ executing?: {
459
+ retry: IntegrationRetry;
460
+ withRateLimit: boolean;
461
+ };
462
+ caching?: IntegrationCaching;
463
+ children?: IntegrationActionChild[];
464
+ execute: (payload: IntegrationActionExecutePayload<any, any, any>) => Promise<IntegrationActionExecuteResult<any>>;
465
+ };
466
+ export type IntegrationExtractor<ConfigSchema extends Schema = Schema> = {
467
+ name?: string;
468
+ description?: string;
469
+ config: {
470
+ schema: ConfigSchema;
471
+ uiSchema?: Record<string, any>;
472
+ };
473
+ credits?: {
474
+ rateLimits?: IntegrationRateLimit[];
475
+ costs: BillingTypes.CreditsCost[];
476
+ };
477
+ rateLimits?: IntegrationRateLimit[];
478
+ retry?: IntegrationRetry;
479
+ fetching?: {
480
+ retry: IntegrationRetry;
481
+ withRateLimit: boolean;
482
+ };
483
+ unifications?: IntegrationExtractorUnification[];
484
+ mode?: IntegrationExtractorMode;
485
+ preview?: "none" | "records" | "count";
486
+ fetch: (payload: IntegrationExtractorFetchPayload<any, any, any>) => Promise<IntegrationExtractorFetchResult<any>>;
487
+ count?: (payload: IntegrationExtractorCountPayload<any, any>) => Promise<IntegrationExtractorCountResult>;
488
+ create?: (payload: IntegrationExtractorCreatePayload<any, any>) => Promise<IntegrationExtractorCreateResult>;
489
+ update?: (payload: IntegrationExtractorUpdatePayload<any, any>) => Promise<IntegrationExtractorUpdateResult>;
490
+ remove?: (payload: IntegrationExtractorRemovePayload<any, any>) => Promise<void>;
491
+ pause?: (payload: IntegrationExtractorPausePayload<any, any>) => Promise<void>;
492
+ resume?: (payload: IntegrationExtractorResumePayload<any, any>) => Promise<void>;
493
+ };
494
+ export type IntegrationDynamicSchema = {
495
+ params: {
496
+ schema: Schema;
497
+ };
498
+ get: (payload: IntegrationDynamicSchemaGetPayload<any, any>) => Promise<IntegrationDynamicSchemaGetResult>;
499
+ };
500
+ export type IntegrationAgent<TriggerConfigSchema extends Schema = Schema> = {
501
+ trigger: IntegrationAgentTrigger<TriggerConfigSchema>;
502
+ findChat: (payload: IntegrationAgentFindChatPayload<any, any, any>) => Promise<IntegrationAgentFindChatResult<any>>;
503
+ retrieveMessages: (payload: IntegrationAgentRetrieveMessagesPayload<any, any, any>) => Promise<IntegrationAgentRetrieveMessagesResult<any>>;
504
+ handleMessage: (payload: IntegrationAgentHandleMessagePayload<any, any, any, any>) => Promise<IntegrationAgentHandleMessageResult<any>>;
505
+ };
506
+ export type IntegrationConnector<ConfigSchema extends Schema = Schema> = {
507
+ rateLimit?: RateLimit;
508
+ config: {
509
+ schema: ConfigSchema;
510
+ uiSchema?: Record<string, any>;
511
+ };
512
+ credits?: {
513
+ rateLimit?: RateLimit;
514
+ isCompatible?: boolean;
515
+ isLegacyCompatible?: boolean;
516
+ };
517
+ caching?: IntegrationCaching;
518
+ };
519
+ export type Integration = {
520
+ name: string;
521
+ description: string;
522
+ slug: string;
523
+ icon: string;
524
+ color: string;
525
+ url: string;
526
+ category: IntegrationCategory;
527
+ subCategories?: IntegrationSubCategory[];
528
+ documentationPath: string;
529
+ manifest: IntegrationManifest;
530
+ connector: IntegrationConnector;
531
+ authenticate: (payload: IntegrationAuthenticatePayload<any>) => Promise<IntegrationAuthenticateResult>;
532
+ actions: Record<string, IntegrationAction>;
533
+ extractors: Record<string, IntegrationExtractor>;
534
+ dynamicSchemas: Record<string, IntegrationDynamicSchema>;
535
+ listUsers?: (payload: IntegrationListUsersPayload<any>) => Promise<IntegrationUser[]>;
536
+ agent?: IntegrationAgent;
537
+ autocomplete?: (payload: IntegrationAutocompletePayload<any, any, any>) => Promise<IntegrationAutocompleteResult>;
538
+ completeOauth?: (payload: IntegrationCompleteOauthPayload<any>) => Promise<IntegrationCompleteOauthResult>;
539
+ getLanguageModels?: (payload: IntegrationGetLanguageModelsPayload<any>) => Promise<IntegrationGetLanguageModelsResult>;
540
+ };
541
+ export type PostMigrationIntegrationAction<ConfigSchema extends Schema = Schema> = Omit<IntegrationAction<ConfigSchema>, "name" | "description" | "config"> & Required<Pick<IntegrationAction<ConfigSchema>, "name" | "description">> & {
542
+ config: {
543
+ schema: ConfigSchema;
544
+ jsonSchema?: JsonSchema;
545
+ uiSchema?: Record<string, any>;
546
+ };
547
+ };
548
+ export type PostMigrationIntegrationExtractor<ConfigSchema extends Schema = Schema> = Omit<IntegrationExtractor<ConfigSchema>, "config"> & Required<Pick<IntegrationExtractor<ConfigSchema>, "name" | "description" | "mode" | "preview">> & {
549
+ config: {
550
+ schema: ConfigSchema;
551
+ jsonSchema?: JsonSchema;
552
+ uiSchema?: Record<string, any>;
553
+ };
554
+ };
555
+ export type PostMigrationIntegration = {
556
+ name: string;
557
+ description: string;
558
+ slug: string;
559
+ icon: string;
560
+ color: string;
561
+ url: string;
562
+ category: IntegrationCategory;
563
+ subCategories?: IntegrationSubCategory[];
564
+ documentationPath: string;
565
+ connector: IntegrationConnector;
566
+ authenticate: (payload: IntegrationAuthenticatePayload<any>) => Promise<IntegrationAuthenticateResult>;
567
+ actions: Record<string, PostMigrationIntegrationAction>;
568
+ extractors: Record<string, PostMigrationIntegrationExtractor>;
569
+ dynamicSchemas: Record<string, IntegrationDynamicSchema>;
570
+ listUsers?: (payload: IntegrationListUsersPayload<any>) => Promise<IntegrationUser[]>;
571
+ agent?: IntegrationAgent;
572
+ autocomplete?: (payload: IntegrationAutocompletePayload<any, any, any>) => Promise<IntegrationAutocompleteResult>;
573
+ completeOauth?: (payload: IntegrationCompleteOauthPayload<any>) => Promise<IntegrationCompleteOauthResult>;
574
+ autocompletes: {
575
+ slug: string;
576
+ params: {
577
+ jsonSchema: JsonSchema;
578
+ };
579
+ cacheExpirationInSeconds?: number;
580
+ }[];
581
+ getLanguageModels?: (payload: IntegrationGetLanguageModelsPayload<any>) => Promise<IntegrationGetLanguageModelsResult>;
582
+ };
583
+ export type NativeIntegrationCategory = "invisible" | "logic" | "storage" | "ai" | "sales" | "code";
584
+ type NativeIntegrationActionPayload<Config> = {
585
+ workspaceUuid: string;
586
+ workflowUuid: string;
587
+ batchUuid?: string;
588
+ modelUuid?: string;
589
+ recordId?: string;
590
+ releaseUuid?: string;
591
+ runUuid?: string;
592
+ nodeUuid: string;
593
+ parentAgentUuid?: string;
594
+ parentChatUuid?: string;
595
+ parentMessageUuid?: string;
596
+ isDryExecution?: boolean;
597
+ config: Config;
598
+ context: unknown;
599
+ groupContext: unknown;
600
+ nodes?: OrchestrationTypes.Node[];
601
+ };
602
+ type NativeIntegrationActionResult = {
603
+ outcome: "executed";
604
+ data: Record<string, unknown> | unknown[] | null;
605
+ title: string;
606
+ unitsCount?: number;
607
+ childIndex?: number;
608
+ } | {
609
+ outcome: "executingBatch";
610
+ batchUuid: string;
611
+ childIndex: 0;
612
+ } | {
613
+ outcome: "executingRun";
614
+ runUuid: string;
615
+ childIndex: 0;
616
+ } | {
617
+ outcome: "executingMessage";
618
+ userMessageUuid: string;
619
+ assistantMessageUuid: string;
620
+ childIndex: 0;
621
+ } | {
622
+ outcome: "notExecuted";
623
+ errorMessage: string;
624
+ retry: boolean;
625
+ } | {
626
+ outcome: "waiting";
627
+ timeoutMilliseconds: number;
628
+ };
629
+ export type NativeIntegrationAction<ConfigSchema extends Schema = Schema> = {
630
+ name: string;
631
+ description: string;
632
+ category: NativeIntegrationCategory;
633
+ icon: string;
634
+ isSerialized?: boolean;
635
+ config: {
636
+ schema: ConfigSchema;
637
+ uiSchema?: Record<string, any>;
638
+ };
639
+ credits?: {
640
+ costs: BillingTypes.CreditsCost[];
641
+ };
642
+ childrenCount: number;
643
+ execute: (payload: NativeIntegrationActionPayload<z.infer<ConfigSchema>>) => Promise<NativeIntegrationActionResult>;
644
+ };
645
+ export type NativeIntegration = {
646
+ actions: Record<string, NativeIntegrationAction>;
647
+ };
648
+ export {};
649
+ }
650
+ //# sourceMappingURL=connection.d.ts.map