@outlit/tools 0.2.0 → 0.3.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.
package/dist/index.d.cts CHANGED
@@ -1,19 +1,25 @@
1
1
  type JsonSchema = {
2
2
  readonly [key: string]: unknown;
3
3
  };
4
- declare const customerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
5
- declare const customerSourceTypes: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY"];
4
+ declare const customerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
5
+ declare const customerSourceTypes: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK"];
6
6
  declare const customerSourceTypeAliases: readonly ["CRM", "CRM_OPPORTUNITY"];
7
- declare const customerSourceTypeInputs: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
8
- declare const notificationProviderValues: readonly ["slack"];
7
+ declare const customerSourceTypeInputs: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "CRM", "CRM_OPPORTUNITY"];
9
8
  declare const customerToolContracts: {
10
9
  readonly outlit_list_customers: {
11
10
  readonly toolName: "outlit_list_customers";
11
+ readonly title: "List Customers";
12
12
  readonly description: "Browse and filter customers. Use this to find customers by billing status, activity recency, revenue, or name. Returns a paginated list with summary info (MRR, last activity, status).";
13
13
  readonly inputSchema: {
14
14
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
15
15
  readonly type: "object";
16
16
  readonly properties: {
17
+ readonly activatedSince: {
18
+ readonly description: "Filter customers activated at or after this ISO-8601 datetime";
19
+ readonly type: "string";
20
+ readonly format: "date-time";
21
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$";
22
+ };
17
23
  readonly billingStatus: {
18
24
  readonly description: "Filter by billing status";
19
25
  readonly type: "string";
@@ -62,6 +68,20 @@ declare const customerToolContracts: {
62
68
  readonly type: "string";
63
69
  readonly maxLength: 500;
64
70
  };
71
+ readonly ownerId: {
72
+ readonly description: "Filter customers by internal owner user ID";
73
+ readonly type: "string";
74
+ readonly maxLength: 500;
75
+ };
76
+ readonly ownerEmail: {
77
+ readonly description: "Filter customers by internal owner email address";
78
+ readonly type: "string";
79
+ readonly maxLength: 500;
80
+ };
81
+ readonly hasOwner: {
82
+ readonly description: "Filter customers by whether they have an owner";
83
+ readonly type: "boolean";
84
+ };
65
85
  readonly limit: {
66
86
  readonly description: "Results per page (max 1000)";
67
87
  readonly default: 50;
@@ -91,6 +111,7 @@ declare const customerToolContracts: {
91
111
  };
92
112
  readonly outlit_list_users: {
93
113
  readonly toolName: "outlit_list_users";
114
+ readonly title: "List Users";
94
115
  readonly description: "Browse and filter users. Use this to find users by journey stage, activity recency, customer, or email/name. Returns a paginated list with activity info.";
95
116
  readonly inputSchema: {
96
117
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -166,8 +187,63 @@ declare const customerToolContracts: {
166
187
  readonly additionalProperties: false;
167
188
  };
168
189
  };
190
+ readonly outlit_list_workspace_users: {
191
+ readonly toolName: "outlit_list_workspace_users";
192
+ readonly title: "List Workspace Users";
193
+ readonly description: "Browse internal workspace users such as CSMs, managers, account owners, and admins. Use this to discover who owns customers before composing dynamic reports across account books.";
194
+ readonly inputSchema: {
195
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
196
+ readonly type: "object";
197
+ readonly properties: {
198
+ readonly search: {
199
+ readonly description: "Search internal workspace users by name, email, title, role, or territory";
200
+ readonly type: "string";
201
+ readonly maxLength: 500;
202
+ };
203
+ readonly role: {
204
+ readonly description: "Filter internal workspace users by role metadata when available";
205
+ readonly type: "string";
206
+ readonly maxLength: 100;
207
+ };
208
+ readonly managerEmail: {
209
+ readonly description: "Filter internal workspace users by manager email metadata when available";
210
+ readonly type: "string";
211
+ readonly maxLength: 500;
212
+ };
213
+ readonly hasOwnedCustomers: {
214
+ readonly description: "When true, return only workspace users who own at least one customer";
215
+ readonly type: "boolean";
216
+ };
217
+ readonly limit: {
218
+ readonly description: "Results per page (max 1000)";
219
+ readonly default: 50;
220
+ readonly type: "number";
221
+ readonly minimum: 1;
222
+ readonly maximum: 1000;
223
+ };
224
+ readonly cursor: {
225
+ readonly description: "Pagination cursor from previous response";
226
+ readonly type: "string";
227
+ };
228
+ readonly orderBy: {
229
+ readonly description: "Field to order workspace users by";
230
+ readonly default: "owned_customer_count";
231
+ readonly type: "string";
232
+ readonly enum: readonly ["name", "email", "owned_customer_count"];
233
+ };
234
+ readonly orderDirection: {
235
+ readonly description: "Sort direction";
236
+ readonly default: "desc";
237
+ readonly type: "string";
238
+ readonly enum: readonly ["asc", "desc"];
239
+ };
240
+ };
241
+ readonly additionalProperties: false;
242
+ };
243
+ };
169
244
  readonly outlit_get_customer: {
170
245
  readonly toolName: "outlit_get_customer";
246
+ readonly title: "Get Customer";
171
247
  readonly description: "Get full details for a single customer. Use this when you already know which customer you want to inspect. Optionally include related data (users, revenue, recent activity, engagement metrics).";
172
248
  readonly inputSchema: {
173
249
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -198,6 +274,7 @@ declare const customerToolContracts: {
198
274
  };
199
275
  readonly outlit_get_timeline: {
200
276
  readonly toolName: "outlit_get_timeline";
277
+ readonly title: "Get Customer Timeline";
201
278
  readonly description: "Get the chronological activity timeline for a customer. Use this to see what happened and when — emails, calls, Slack messages, billing events, etc. Supports channel and date filtering.";
202
279
  readonly inputSchema: {
203
280
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -208,11 +285,11 @@ declare const customerToolContracts: {
208
285
  readonly description: "Customer ID or domain";
209
286
  };
210
287
  readonly channels: {
211
- readonly description: "Filter by event channel (e.g., EMAIL, SLACK, CALL, CALENDAR)";
288
+ readonly description: "Filter by event channel. Use values such as PRODUCT, COMMUNICATION, MEETING, CRM, BILLING, SUPPORT, IDENTITY, DOCUMENT, or SYSTEM.";
212
289
  readonly type: "array";
213
290
  readonly items: {
214
291
  readonly type: "string";
215
- readonly enum: readonly ["SDK", "EMAIL", "SLACK", "CALL", "CALENDAR", "CRM", "BILLING", "SUPPORT", "INTERNAL"];
292
+ readonly enum: readonly ["PRODUCT", "COMMUNICATION", "MEETING", "CRM", "BILLING", "SUPPORT", "IDENTITY", "DOCUMENT", "SYSTEM"];
216
293
  };
217
294
  };
218
295
  readonly eventTypes: {
@@ -257,6 +334,7 @@ declare const customerToolContracts: {
257
334
  };
258
335
  readonly outlit_list_facts: {
259
336
  readonly toolName: "outlit_list_facts";
337
+ readonly title: "List Customer Facts";
260
338
  readonly description: "List structured facts known about a customer. Use filters like status, sourceTypes, factTypes, factCategories, and date bounds to narrow the result set. For topic-specific retrieval, use outlit_search_customer_context instead.";
261
339
  readonly inputSchema: {
262
340
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -279,7 +357,7 @@ declare const customerToolContracts: {
279
357
  readonly type: "array";
280
358
  readonly items: {
281
359
  readonly type: "string";
282
- readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
360
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "CRM", "CRM_OPPORTUNITY"];
283
361
  };
284
362
  };
285
363
  readonly factTypes: {
@@ -328,6 +406,7 @@ declare const customerToolContracts: {
328
406
  };
329
407
  readonly outlit_get_fact: {
330
408
  readonly toolName: "outlit_get_fact";
409
+ readonly title: "Get Customer Fact";
331
410
  readonly description: "Get one exact fact by ID. Returns the canonical fact shape and optionally expands requested related data such as evidence.";
332
411
  readonly inputSchema: {
333
412
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -355,6 +434,7 @@ declare const customerToolContracts: {
355
434
  };
356
435
  readonly outlit_get_source: {
357
436
  readonly toolName: "outlit_get_source";
437
+ readonly title: "Get Source";
358
438
  readonly description: "Get one exact source record by generic sourceType and sourceId. Use this when you already know the concrete underlying source you want to inspect.";
359
439
  readonly inputSchema: {
360
440
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -362,7 +442,7 @@ declare const customerToolContracts: {
362
442
  readonly properties: {
363
443
  readonly sourceType: {
364
444
  readonly type: "string";
365
- readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
445
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "CRM", "CRM_OPPORTUNITY"];
366
446
  };
367
447
  readonly sourceId: {
368
448
  readonly type: "string";
@@ -374,9 +454,74 @@ declare const customerToolContracts: {
374
454
  readonly additionalProperties: false;
375
455
  };
376
456
  };
457
+ readonly outlit_list_sources: {
458
+ readonly toolName: "outlit_list_sources";
459
+ readonly title: "List Sources";
460
+ readonly description: "List concrete source records deterministically. Use this instead of semantic search when you need enumerated calls, emails, calendar events, support tickets, or opportunities.";
461
+ readonly inputSchema: {
462
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
463
+ readonly type: "object";
464
+ readonly properties: {
465
+ readonly sourceType: {
466
+ readonly description: "Generic source type to list.";
467
+ readonly type: "string";
468
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "CRM", "CRM_OPPORTUNITY"];
469
+ };
470
+ readonly customer: {
471
+ readonly description: "Customer ID, domain, or name to scope source listing.";
472
+ readonly type: "string";
473
+ readonly minLength: 1;
474
+ readonly maxLength: 200;
475
+ };
476
+ readonly after: {
477
+ readonly description: "ISO 8601 datetime lower bound.";
478
+ readonly type: "string";
479
+ readonly format: "date-time";
480
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
481
+ };
482
+ readonly before: {
483
+ readonly description: "ISO 8601 datetime upper bound.";
484
+ readonly type: "string";
485
+ readonly format: "date-time";
486
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
487
+ };
488
+ readonly participant: {
489
+ readonly description: "Participant email or name to filter source records.";
490
+ readonly type: "string";
491
+ readonly minLength: 1;
492
+ readonly maxLength: 500;
493
+ };
494
+ readonly provider: {
495
+ readonly description: "Provider identifier such as gmail, gong, or google-calendar.";
496
+ readonly type: "string";
497
+ readonly minLength: 1;
498
+ readonly maxLength: 200;
499
+ };
500
+ readonly hasTranscript: {
501
+ readonly description: "Filter call sources by transcript presence.";
502
+ readonly type: "boolean";
503
+ };
504
+ readonly limit: {
505
+ readonly description: "Results per page.";
506
+ readonly default: 50;
507
+ readonly type: "integer";
508
+ readonly minimum: 1;
509
+ readonly maximum: 100;
510
+ };
511
+ readonly cursor: {
512
+ readonly description: "Pagination cursor.";
513
+ readonly type: "string";
514
+ readonly minLength: 1;
515
+ readonly maxLength: 2000;
516
+ };
517
+ };
518
+ readonly additionalProperties: false;
519
+ };
520
+ };
377
521
  readonly outlit_search_customer_context: {
378
522
  readonly toolName: "outlit_search_customer_context";
379
- readonly description: "Search across all known customer context using a natural-language query. Returns grouped artifact-level results for matching sources and facts. Omit customer to search across all customers in the organization.";
523
+ readonly title: "Search Customer Context";
524
+ readonly description: "Search across all known customer context using a natural-language query. Returns ranked artifact-level discovery previews with at most two matching excerpts per source or fact. Use outlit_get_source with a returned sourceType and sourceId when you need the canonical source contents. Omit customer to search across all customers in the organization.";
380
525
  readonly inputSchema: {
381
526
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
382
527
  readonly type: "object";
@@ -420,7 +565,7 @@ declare const customerToolContracts: {
420
565
  readonly type: "array";
421
566
  readonly items: {
422
567
  readonly type: "string";
423
- readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
568
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "SLACK", "CRM", "CRM_OPPORTUNITY"];
424
569
  };
425
570
  };
426
571
  };
@@ -430,6 +575,7 @@ declare const customerToolContracts: {
430
575
  };
431
576
  readonly outlit_query: {
432
577
  readonly toolName: "outlit_query";
578
+ readonly title: "Run SQL Query";
433
579
  readonly description: "Execute read-only SQL queries against your analytics views.\n\nAvailable views:\n- activity: Customer activity events (event_name, event_type, event_channel, customer_id, occurred_at, properties, ...)\n- customers: Customer attributes (customer_id, domain, name, billing_status, plan, mrr_cents, traits, ...)\n- users: User attributes (user_id, email, name, customer_id, traits, ...)\n- revenue: Revenue snapshots over time (customer_id, snapshot_date, mrr_cents, ...)\n\nAll queries are automatically filtered to your organization's data.\nOnly SELECT queries are allowed.\nProperties and traits are JSON strings; inspect schemas and examples before filtering nested values.\n\nExample queries:\n- SELECT event_name, count(*) FROM activity GROUP BY 1 ORDER BY 2 DESC LIMIT 10\n- SELECT billing_status, sum(mrr_cents)/100 as mrr FROM customers GROUP BY 1\n- SELECT * FROM activity WHERE customer_id = 'cust_123' ORDER BY occurred_at DESC LIMIT 50";
434
580
  readonly inputSchema: {
435
581
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -453,6 +599,7 @@ declare const customerToolContracts: {
453
599
  };
454
600
  readonly outlit_schema: {
455
601
  readonly toolName: "outlit_schema";
602
+ readonly title: "Get SQL Schema";
456
603
  readonly description: "Get schemas for available analytics views.\n\nUse this to discover column names, types, and descriptions before writing SQL queries.\nReturns column definitions and example queries for each view.";
457
604
  readonly inputSchema: {
458
605
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -469,6 +616,7 @@ declare const customerToolContracts: {
469
616
  };
470
617
  readonly outlit_send_notification: {
471
618
  readonly toolName: "outlit_send_notification";
619
+ readonly title: "Send Notification";
472
620
  readonly description: "Send or post a notification. Use only when the user explicitly asks you to send, post, or notify. Slack is the default notifier when destinations are omitted.";
473
621
  readonly inputSchema: {
474
622
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
@@ -513,34 +661,15 @@ declare const customerToolContracts: {
513
661
  readonly minLength: 1;
514
662
  readonly maxLength: 240;
515
663
  };
516
- readonly destinations: {
517
- readonly description: "Optional explicit notification destinations. Omit to use the default notifier.";
664
+ readonly destinationIds: {
665
+ readonly description: "Optional NotificationDestination ids. Omit to use the default notifier.";
518
666
  readonly minItems: 1;
519
667
  readonly maxItems: 10;
520
668
  readonly type: "array";
521
669
  readonly items: {
522
- readonly type: "object";
523
- readonly properties: {
524
- readonly provider: {
525
- readonly description: "Notification provider";
526
- readonly type: "string";
527
- readonly enum: readonly ["slack"];
528
- };
529
- readonly channelId: {
530
- readonly description: "Provider-specific destination channel ID";
531
- readonly type: "string";
532
- readonly minLength: 1;
533
- readonly maxLength: 240;
534
- };
535
- readonly label: {
536
- readonly description: "Optional destination label";
537
- readonly type: "string";
538
- readonly minLength: 1;
539
- readonly maxLength: 120;
540
- };
541
- };
542
- readonly required: readonly ["provider"];
543
- readonly additionalProperties: false;
670
+ readonly type: "string";
671
+ readonly format: "uuid";
672
+ readonly pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
544
673
  };
545
674
  };
546
675
  };
@@ -585,18 +714,21 @@ declare const customerFactCategories: readonly ["MEMORY", "CUSTOM"];
585
714
  declare const customerListOrderFields: readonly ["last_activity_at", "first_seen_at", "name", "mrr_cents"];
586
715
  declare const customerIncludeSections: readonly ["users", "revenue", "recentTimeline", "behaviorMetrics"];
587
716
  declare const customerTimeframes: readonly ["7d", "14d", "30d", "90d"];
717
+ declare const notificationProviderValues: readonly ["slack"];
588
718
  declare const notificationSeverityValues: readonly ["low", "medium", "high"];
589
- declare const timelineChannels: readonly ["SDK", "EMAIL", "SLACK", "CALL", "CALENDAR", "CRM", "BILLING", "SUPPORT", "INTERNAL"];
719
+ declare const timelineChannels: readonly ["PRODUCT", "COMMUNICATION", "MEETING", "CRM", "BILLING", "SUPPORT", "IDENTITY", "DOCUMENT", "SYSTEM"];
590
720
  declare const timelineTimeframes: readonly ["7d", "14d", "30d", "90d", "all"];
591
721
  declare const userJourneyStages: readonly ["DISCOVERED", "SIGNED_UP", "ACTIVATED", "ENGAGED", "INACTIVE"];
592
722
  declare const userListOrderFields: readonly ["last_activity_at", "first_seen_at", "email"];
723
+ declare const workspaceUserListOrderFields: readonly ["name", "email", "owned_customer_count"];
593
724
  declare const schemaTables: readonly ["activity", "customers", "users", "revenue"];
594
- declare const customerToolContractHash: "006ce091382509c3224815c4f6ead4c5e78e34f54df281fe8f143811890b04af";
725
+ declare const customerToolContractHash: "f1f06ac1d3fb5131095ac7047f5871f47942b0f5efcb1229151b52475bf93816";
595
726
  type CustomerToolName = (typeof customerToolNames)[number];
596
727
  type CustomerSourceType = (typeof customerSourceTypes)[number];
597
728
  type CustomerSourceTypeInput = (typeof customerSourceTypeInputs)[number];
598
729
  type CustomerToolContract = {
599
730
  toolName: CustomerToolName;
731
+ title: string;
600
732
  description: string;
601
733
  inputSchema: JsonSchema;
602
734
  };
@@ -627,6 +759,37 @@ declare function resolveCustomerContextSearchInput(value: SearchArgsLike): {
627
759
  message: string;
628
760
  };
629
761
 
762
+ interface CustomerListItem {
763
+ id: string;
764
+ name: string | null;
765
+ domain: string | null;
766
+ activatedAt: string | null;
767
+ [key: string]: unknown;
768
+ }
769
+ interface CustomerDetail {
770
+ id: string;
771
+ name: string | null;
772
+ domain: string | null;
773
+ activatedAt: string | null;
774
+ [key: string]: unknown;
775
+ }
776
+ interface CustomerDetailResult {
777
+ customer: CustomerDetail;
778
+ [key: string]: unknown;
779
+ }
780
+ interface CustomerListResult {
781
+ items: CustomerListItem[];
782
+ pagination: {
783
+ hasMore: boolean;
784
+ nextCursor: string | null;
785
+ total?: number;
786
+ };
787
+ }
788
+ interface CustomerAnalyticsRow {
789
+ activated_at: string | null;
790
+ [column: string]: unknown;
791
+ }
792
+
630
793
  declare const DEFAULT_OUTLIT_API_URL = "https://app.outlit.ai";
631
794
  type OutlitToolsFetch = (input: string | URL | Request, init?: RequestInit) => Promise<Response>;
632
795
  type OutlitToolsClientOptions = {
@@ -634,17 +797,18 @@ type OutlitToolsClientOptions = {
634
797
  baseUrl?: string;
635
798
  fetch?: OutlitToolsFetch;
636
799
  };
800
+ type CustomerToolResult<TToolName extends CustomerToolName> = TToolName extends "outlit_list_customers" ? CustomerListResult : TToolName extends "outlit_get_customer" ? CustomerDetailResult : unknown;
637
801
  type OutlitToolsClient = {
638
802
  key: string;
639
803
  baseUrl: string;
640
- callTool(toolName: CustomerToolName, input?: Record<string, unknown>): Promise<unknown>;
804
+ callTool<TToolName extends CustomerToolName>(toolName: TToolName, input?: Record<string, unknown>): Promise<CustomerToolResult<TToolName>>;
641
805
  };
642
806
  declare function createOutlitClient(options: OutlitToolsClientOptions): OutlitToolsClient;
643
807
 
644
808
  declare const actionToolNames: readonly ["outlit_send_notification"];
645
- declare const defaultAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification"];
809
+ declare const defaultAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification"];
646
810
  declare const sqlToolNames: readonly ["outlit_schema", "outlit_query"];
647
- declare const analyticalAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification", "outlit_schema", "outlit_query"];
648
- declare const allCustomerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
811
+ declare const analyticalAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification", "outlit_schema", "outlit_query"];
812
+ declare const allCustomerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_list_workspace_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
649
813
 
650
- export { type CustomerContextSearchInput, type CustomerSourceType, type CustomerSourceTypeInput, type CustomerToolContract, type CustomerToolName, DEFAULT_OUTLIT_API_URL, type JsonSchema, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type SearchArgsLike, actionToolNames, allCustomerToolNames, analyticalAgentToolNames, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, customerToolContractHash, customerToolContracts, customerToolNames, defaultAgentToolNames, getCustomerToolContract, isCustomerToolName, normalizeCustomerSourceType, notificationProviderValues, notificationSeverityValues, resolveCustomerContextSearchInput, schemaTables, sqlToolNames, timelineChannels, timelineTimeframes, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields };
814
+ export { type CustomerAnalyticsRow, type CustomerContextSearchInput, type CustomerDetail, type CustomerDetailResult, type CustomerListItem, type CustomerListResult, type CustomerSourceType, type CustomerSourceTypeInput, type CustomerToolContract, type CustomerToolName, type CustomerToolResult, DEFAULT_OUTLIT_API_URL, type JsonSchema, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type SearchArgsLike, actionToolNames, allCustomerToolNames, analyticalAgentToolNames, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, customerToolContractHash, customerToolContracts, customerToolNames, defaultAgentToolNames, getCustomerToolContract, isCustomerToolName, normalizeCustomerSourceType, notificationProviderValues, notificationSeverityValues, resolveCustomerContextSearchInput, schemaTables, sqlToolNames, timelineChannels, timelineTimeframes, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields, workspaceUserListOrderFields };