@bubblelab/bubble-core 0.1.22 → 0.1.24

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 (51) hide show
  1. package/dist/bubble-bundle.d.ts +131 -28
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +10 -2
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +8 -8
  6. package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +2784 -0
  7. package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts.map +1 -0
  8. package/dist/bubbles/service-bubble/crustdata/crustdata.js +339 -0
  9. package/dist/bubbles/service-bubble/crustdata/crustdata.js.map +1 -0
  10. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +3995 -0
  11. package/dist/bubbles/service-bubble/{slack/slack.schema.d.ts.map → crustdata/crustdata.schema.d.ts.map} +1 -1
  12. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.js +425 -0
  13. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.js.map +1 -0
  14. package/dist/bubbles/service-bubble/crustdata/index.d.ts +3 -0
  15. package/dist/bubbles/service-bubble/crustdata/index.d.ts.map +1 -0
  16. package/dist/bubbles/service-bubble/crustdata/index.js +5 -0
  17. package/dist/bubbles/service-bubble/crustdata/index.js.map +1 -0
  18. package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
  19. package/dist/bubbles/service-bubble/google-drive.js +22 -1
  20. package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
  21. package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +10 -10
  22. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +6 -6
  23. package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +740 -0
  24. package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts.map +1 -0
  25. package/dist/bubbles/tool-bubble/company-enrichment-tool.js +351 -0
  26. package/dist/bubbles/tool-bubble/company-enrichment-tool.js.map +1 -0
  27. package/dist/bubbles/tool-bubble/people-search-tool.d.ts +934 -0
  28. package/dist/bubbles/tool-bubble/people-search-tool.d.ts.map +1 -0
  29. package/dist/bubbles/tool-bubble/people-search-tool.js +675 -0
  30. package/dist/bubbles/tool-bubble/people-search-tool.js.map +1 -0
  31. package/dist/bubbles.json +40 -2
  32. package/dist/index.d.ts +5 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +3 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/utils/schema-comparison.d.ts +16 -0
  37. package/dist/utils/schema-comparison.d.ts.map +1 -1
  38. package/dist/utils/schema-comparison.js +98 -6
  39. package/dist/utils/schema-comparison.js.map +1 -1
  40. package/package.json +2 -2
  41. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts +0 -31
  42. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts.map +0 -1
  43. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js +0 -184
  44. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js.map +0 -1
  45. package/dist/bubbles/service-bubble/slack/slack.schema.d.ts +0 -3980
  46. package/dist/bubbles/service-bubble/slack/slack.schema.js +0 -1061
  47. package/dist/bubbles/service-bubble/slack/slack.schema.js.map +0 -1
  48. package/dist/bubbles/service-bubble/slack.d.ts +0 -2
  49. package/dist/bubbles/service-bubble/slack.d.ts.map +0 -1
  50. package/dist/bubbles/service-bubble/slack.js +0 -3
  51. package/dist/bubbles/service-bubble/slack.js.map +0 -1
@@ -0,0 +1,934 @@
1
+ import { z } from 'zod';
2
+ import { ToolBubble } from '../../types/tool-bubble-class.js';
3
+ import type { BubbleContext } from '../../types/bubble.js';
4
+ import { CredentialType, type BubbleName } from '@bubblelab/shared-schemas';
5
+ declare const PersonResultSchema: z.ZodObject<{
6
+ name: z.ZodNullable<z.ZodString>;
7
+ title: z.ZodNullable<z.ZodString>;
8
+ headline: z.ZodNullable<z.ZodString>;
9
+ linkedinUrl: z.ZodNullable<z.ZodString>;
10
+ profilePictureUrl: z.ZodNullable<z.ZodString>;
11
+ emails: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
12
+ twitterHandle: z.ZodNullable<z.ZodString>;
13
+ websites: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
14
+ seniorityLevel: z.ZodNullable<z.ZodString>;
15
+ yearsOfExperience: z.ZodNullable<z.ZodNumber>;
16
+ recentlyChangedJobs: z.ZodNullable<z.ZodBoolean>;
17
+ location: z.ZodNullable<z.ZodString>;
18
+ locationCity: z.ZodNullable<z.ZodString>;
19
+ locationCountry: z.ZodNullable<z.ZodString>;
20
+ skills: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
21
+ languages: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
22
+ summary: z.ZodNullable<z.ZodString>;
23
+ numConnections: z.ZodNullable<z.ZodNumber>;
24
+ currentEmployers: z.ZodNullable<z.ZodArray<z.ZodObject<{
25
+ title: z.ZodNullable<z.ZodString>;
26
+ companyName: z.ZodNullable<z.ZodString>;
27
+ companyLinkedinUrl: z.ZodNullable<z.ZodString>;
28
+ seniorityLevel: z.ZodNullable<z.ZodString>;
29
+ functionCategory: z.ZodNullable<z.ZodString>;
30
+ startDate: z.ZodNullable<z.ZodString>;
31
+ yearsAtCompany: z.ZodNullable<z.ZodNumber>;
32
+ companyHeadcount: z.ZodNullable<z.ZodNumber>;
33
+ companyIndustries: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ title: string | null;
36
+ companyName: string | null;
37
+ companyLinkedinUrl: string | null;
38
+ seniorityLevel: string | null;
39
+ functionCategory: string | null;
40
+ startDate: string | null;
41
+ yearsAtCompany: number | null;
42
+ companyHeadcount: number | null;
43
+ companyIndustries: string[] | null;
44
+ }, {
45
+ title: string | null;
46
+ companyName: string | null;
47
+ companyLinkedinUrl: string | null;
48
+ seniorityLevel: string | null;
49
+ functionCategory: string | null;
50
+ startDate: string | null;
51
+ yearsAtCompany: number | null;
52
+ companyHeadcount: number | null;
53
+ companyIndustries: string[] | null;
54
+ }>, "many">>;
55
+ pastEmployers: z.ZodNullable<z.ZodArray<z.ZodObject<{
56
+ title: z.ZodNullable<z.ZodString>;
57
+ companyName: z.ZodNullable<z.ZodString>;
58
+ startDate: z.ZodNullable<z.ZodString>;
59
+ endDate: z.ZodNullable<z.ZodString>;
60
+ }, "strip", z.ZodTypeAny, {
61
+ title: string | null;
62
+ companyName: string | null;
63
+ startDate: string | null;
64
+ endDate: string | null;
65
+ }, {
66
+ title: string | null;
67
+ companyName: string | null;
68
+ startDate: string | null;
69
+ endDate: string | null;
70
+ }>, "many">>;
71
+ education: z.ZodNullable<z.ZodArray<z.ZodObject<{
72
+ instituteName: z.ZodNullable<z.ZodString>;
73
+ degreeName: z.ZodNullable<z.ZodString>;
74
+ fieldOfStudy: z.ZodNullable<z.ZodString>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ instituteName: string | null;
77
+ degreeName: string | null;
78
+ fieldOfStudy: string | null;
79
+ }, {
80
+ instituteName: string | null;
81
+ degreeName: string | null;
82
+ fieldOfStudy: string | null;
83
+ }>, "many">>;
84
+ }, "strip", z.ZodTypeAny, {
85
+ title: string | null;
86
+ name: string | null;
87
+ summary: string | null;
88
+ location: string | null;
89
+ headline: string | null;
90
+ seniorityLevel: string | null;
91
+ emails: string[] | null;
92
+ languages: string[] | null;
93
+ skills: string[] | null;
94
+ education: {
95
+ instituteName: string | null;
96
+ degreeName: string | null;
97
+ fieldOfStudy: string | null;
98
+ }[] | null;
99
+ websites: string[] | null;
100
+ linkedinUrl: string | null;
101
+ profilePictureUrl: string | null;
102
+ twitterHandle: string | null;
103
+ yearsOfExperience: number | null;
104
+ recentlyChangedJobs: boolean | null;
105
+ locationCity: string | null;
106
+ locationCountry: string | null;
107
+ numConnections: number | null;
108
+ currentEmployers: {
109
+ title: string | null;
110
+ companyName: string | null;
111
+ companyLinkedinUrl: string | null;
112
+ seniorityLevel: string | null;
113
+ functionCategory: string | null;
114
+ startDate: string | null;
115
+ yearsAtCompany: number | null;
116
+ companyHeadcount: number | null;
117
+ companyIndustries: string[] | null;
118
+ }[] | null;
119
+ pastEmployers: {
120
+ title: string | null;
121
+ companyName: string | null;
122
+ startDate: string | null;
123
+ endDate: string | null;
124
+ }[] | null;
125
+ }, {
126
+ title: string | null;
127
+ name: string | null;
128
+ summary: string | null;
129
+ location: string | null;
130
+ headline: string | null;
131
+ seniorityLevel: string | null;
132
+ emails: string[] | null;
133
+ languages: string[] | null;
134
+ skills: string[] | null;
135
+ education: {
136
+ instituteName: string | null;
137
+ degreeName: string | null;
138
+ fieldOfStudy: string | null;
139
+ }[] | null;
140
+ websites: string[] | null;
141
+ linkedinUrl: string | null;
142
+ profilePictureUrl: string | null;
143
+ twitterHandle: string | null;
144
+ yearsOfExperience: number | null;
145
+ recentlyChangedJobs: boolean | null;
146
+ locationCity: string | null;
147
+ locationCountry: string | null;
148
+ numConnections: number | null;
149
+ currentEmployers: {
150
+ title: string | null;
151
+ companyName: string | null;
152
+ companyLinkedinUrl: string | null;
153
+ seniorityLevel: string | null;
154
+ functionCategory: string | null;
155
+ startDate: string | null;
156
+ yearsAtCompany: number | null;
157
+ companyHeadcount: number | null;
158
+ companyIndustries: string[] | null;
159
+ }[] | null;
160
+ pastEmployers: {
161
+ title: string | null;
162
+ companyName: string | null;
163
+ startDate: string | null;
164
+ endDate: string | null;
165
+ }[] | null;
166
+ }>;
167
+ declare const PeopleSearchToolParamsSchema: z.ZodObject<{
168
+ companyName: z.ZodOptional<z.ZodString>;
169
+ companyLinkedinUrl: z.ZodOptional<z.ZodString>;
170
+ jobTitle: z.ZodOptional<z.ZodString>;
171
+ jobTitles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
172
+ location: z.ZodOptional<z.ZodString>;
173
+ locationRadius: z.ZodOptional<z.ZodObject<{
174
+ location: z.ZodString;
175
+ radiusMiles: z.ZodNumber;
176
+ }, "strip", z.ZodTypeAny, {
177
+ location: string;
178
+ radiusMiles: number;
179
+ }, {
180
+ location: string;
181
+ radiusMiles: number;
182
+ }>>;
183
+ skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
184
+ languages: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
185
+ minYearsExperience: z.ZodOptional<z.ZodNumber>;
186
+ maxYearsExperience: z.ZodOptional<z.ZodNumber>;
187
+ seniorityLevels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
188
+ functionCategories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
189
+ companyIndustries: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
190
+ minCompanyHeadcount: z.ZodOptional<z.ZodNumber>;
191
+ maxCompanyHeadcount: z.ZodOptional<z.ZodNumber>;
192
+ minYearsAtCompany: z.ZodOptional<z.ZodNumber>;
193
+ pastCompanyName: z.ZodOptional<z.ZodString>;
194
+ pastJobTitle: z.ZodOptional<z.ZodString>;
195
+ schoolName: z.ZodOptional<z.ZodString>;
196
+ country: z.ZodOptional<z.ZodString>;
197
+ city: z.ZodOptional<z.ZodString>;
198
+ recentlyChangedJobs: z.ZodOptional<z.ZodBoolean>;
199
+ minConnections: z.ZodOptional<z.ZodNumber>;
200
+ excludeCompanies: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
201
+ excludeProfiles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
202
+ limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
203
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
204
+ }, "strip", z.ZodTypeAny, {
205
+ credentials?: Partial<Record<CredentialType, string>> | undefined;
206
+ limit?: number | undefined;
207
+ location?: string | undefined;
208
+ companyName?: string | undefined;
209
+ companyLinkedinUrl?: string | undefined;
210
+ city?: string | undefined;
211
+ country?: string | undefined;
212
+ languages?: string[] | undefined;
213
+ skills?: string[] | undefined;
214
+ recentlyChangedJobs?: boolean | undefined;
215
+ companyIndustries?: string[] | undefined;
216
+ jobTitle?: string | undefined;
217
+ jobTitles?: string[] | undefined;
218
+ locationRadius?: {
219
+ location: string;
220
+ radiusMiles: number;
221
+ } | undefined;
222
+ minYearsExperience?: number | undefined;
223
+ maxYearsExperience?: number | undefined;
224
+ seniorityLevels?: string[] | undefined;
225
+ functionCategories?: string[] | undefined;
226
+ minCompanyHeadcount?: number | undefined;
227
+ maxCompanyHeadcount?: number | undefined;
228
+ minYearsAtCompany?: number | undefined;
229
+ pastCompanyName?: string | undefined;
230
+ pastJobTitle?: string | undefined;
231
+ schoolName?: string | undefined;
232
+ minConnections?: number | undefined;
233
+ excludeCompanies?: string[] | undefined;
234
+ excludeProfiles?: string[] | undefined;
235
+ }, {
236
+ credentials?: Partial<Record<CredentialType, string>> | undefined;
237
+ limit?: number | undefined;
238
+ location?: string | undefined;
239
+ companyName?: string | undefined;
240
+ companyLinkedinUrl?: string | undefined;
241
+ city?: string | undefined;
242
+ country?: string | undefined;
243
+ languages?: string[] | undefined;
244
+ skills?: string[] | undefined;
245
+ recentlyChangedJobs?: boolean | undefined;
246
+ companyIndustries?: string[] | undefined;
247
+ jobTitle?: string | undefined;
248
+ jobTitles?: string[] | undefined;
249
+ locationRadius?: {
250
+ location: string;
251
+ radiusMiles: number;
252
+ } | undefined;
253
+ minYearsExperience?: number | undefined;
254
+ maxYearsExperience?: number | undefined;
255
+ seniorityLevels?: string[] | undefined;
256
+ functionCategories?: string[] | undefined;
257
+ minCompanyHeadcount?: number | undefined;
258
+ maxCompanyHeadcount?: number | undefined;
259
+ minYearsAtCompany?: number | undefined;
260
+ pastCompanyName?: string | undefined;
261
+ pastJobTitle?: string | undefined;
262
+ schoolName?: string | undefined;
263
+ minConnections?: number | undefined;
264
+ excludeCompanies?: string[] | undefined;
265
+ excludeProfiles?: string[] | undefined;
266
+ }>;
267
+ declare const PeopleSearchToolResultSchema: z.ZodObject<{
268
+ people: z.ZodArray<z.ZodObject<{
269
+ name: z.ZodNullable<z.ZodString>;
270
+ title: z.ZodNullable<z.ZodString>;
271
+ headline: z.ZodNullable<z.ZodString>;
272
+ linkedinUrl: z.ZodNullable<z.ZodString>;
273
+ profilePictureUrl: z.ZodNullable<z.ZodString>;
274
+ emails: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
275
+ twitterHandle: z.ZodNullable<z.ZodString>;
276
+ websites: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
277
+ seniorityLevel: z.ZodNullable<z.ZodString>;
278
+ yearsOfExperience: z.ZodNullable<z.ZodNumber>;
279
+ recentlyChangedJobs: z.ZodNullable<z.ZodBoolean>;
280
+ location: z.ZodNullable<z.ZodString>;
281
+ locationCity: z.ZodNullable<z.ZodString>;
282
+ locationCountry: z.ZodNullable<z.ZodString>;
283
+ skills: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
284
+ languages: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
285
+ summary: z.ZodNullable<z.ZodString>;
286
+ numConnections: z.ZodNullable<z.ZodNumber>;
287
+ currentEmployers: z.ZodNullable<z.ZodArray<z.ZodObject<{
288
+ title: z.ZodNullable<z.ZodString>;
289
+ companyName: z.ZodNullable<z.ZodString>;
290
+ companyLinkedinUrl: z.ZodNullable<z.ZodString>;
291
+ seniorityLevel: z.ZodNullable<z.ZodString>;
292
+ functionCategory: z.ZodNullable<z.ZodString>;
293
+ startDate: z.ZodNullable<z.ZodString>;
294
+ yearsAtCompany: z.ZodNullable<z.ZodNumber>;
295
+ companyHeadcount: z.ZodNullable<z.ZodNumber>;
296
+ companyIndustries: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
297
+ }, "strip", z.ZodTypeAny, {
298
+ title: string | null;
299
+ companyName: string | null;
300
+ companyLinkedinUrl: string | null;
301
+ seniorityLevel: string | null;
302
+ functionCategory: string | null;
303
+ startDate: string | null;
304
+ yearsAtCompany: number | null;
305
+ companyHeadcount: number | null;
306
+ companyIndustries: string[] | null;
307
+ }, {
308
+ title: string | null;
309
+ companyName: string | null;
310
+ companyLinkedinUrl: string | null;
311
+ seniorityLevel: string | null;
312
+ functionCategory: string | null;
313
+ startDate: string | null;
314
+ yearsAtCompany: number | null;
315
+ companyHeadcount: number | null;
316
+ companyIndustries: string[] | null;
317
+ }>, "many">>;
318
+ pastEmployers: z.ZodNullable<z.ZodArray<z.ZodObject<{
319
+ title: z.ZodNullable<z.ZodString>;
320
+ companyName: z.ZodNullable<z.ZodString>;
321
+ startDate: z.ZodNullable<z.ZodString>;
322
+ endDate: z.ZodNullable<z.ZodString>;
323
+ }, "strip", z.ZodTypeAny, {
324
+ title: string | null;
325
+ companyName: string | null;
326
+ startDate: string | null;
327
+ endDate: string | null;
328
+ }, {
329
+ title: string | null;
330
+ companyName: string | null;
331
+ startDate: string | null;
332
+ endDate: string | null;
333
+ }>, "many">>;
334
+ education: z.ZodNullable<z.ZodArray<z.ZodObject<{
335
+ instituteName: z.ZodNullable<z.ZodString>;
336
+ degreeName: z.ZodNullable<z.ZodString>;
337
+ fieldOfStudy: z.ZodNullable<z.ZodString>;
338
+ }, "strip", z.ZodTypeAny, {
339
+ instituteName: string | null;
340
+ degreeName: string | null;
341
+ fieldOfStudy: string | null;
342
+ }, {
343
+ instituteName: string | null;
344
+ degreeName: string | null;
345
+ fieldOfStudy: string | null;
346
+ }>, "many">>;
347
+ }, "strip", z.ZodTypeAny, {
348
+ title: string | null;
349
+ name: string | null;
350
+ summary: string | null;
351
+ location: string | null;
352
+ headline: string | null;
353
+ seniorityLevel: string | null;
354
+ emails: string[] | null;
355
+ languages: string[] | null;
356
+ skills: string[] | null;
357
+ education: {
358
+ instituteName: string | null;
359
+ degreeName: string | null;
360
+ fieldOfStudy: string | null;
361
+ }[] | null;
362
+ websites: string[] | null;
363
+ linkedinUrl: string | null;
364
+ profilePictureUrl: string | null;
365
+ twitterHandle: string | null;
366
+ yearsOfExperience: number | null;
367
+ recentlyChangedJobs: boolean | null;
368
+ locationCity: string | null;
369
+ locationCountry: string | null;
370
+ numConnections: number | null;
371
+ currentEmployers: {
372
+ title: string | null;
373
+ companyName: string | null;
374
+ companyLinkedinUrl: string | null;
375
+ seniorityLevel: string | null;
376
+ functionCategory: string | null;
377
+ startDate: string | null;
378
+ yearsAtCompany: number | null;
379
+ companyHeadcount: number | null;
380
+ companyIndustries: string[] | null;
381
+ }[] | null;
382
+ pastEmployers: {
383
+ title: string | null;
384
+ companyName: string | null;
385
+ startDate: string | null;
386
+ endDate: string | null;
387
+ }[] | null;
388
+ }, {
389
+ title: string | null;
390
+ name: string | null;
391
+ summary: string | null;
392
+ location: string | null;
393
+ headline: string | null;
394
+ seniorityLevel: string | null;
395
+ emails: string[] | null;
396
+ languages: string[] | null;
397
+ skills: string[] | null;
398
+ education: {
399
+ instituteName: string | null;
400
+ degreeName: string | null;
401
+ fieldOfStudy: string | null;
402
+ }[] | null;
403
+ websites: string[] | null;
404
+ linkedinUrl: string | null;
405
+ profilePictureUrl: string | null;
406
+ twitterHandle: string | null;
407
+ yearsOfExperience: number | null;
408
+ recentlyChangedJobs: boolean | null;
409
+ locationCity: string | null;
410
+ locationCountry: string | null;
411
+ numConnections: number | null;
412
+ currentEmployers: {
413
+ title: string | null;
414
+ companyName: string | null;
415
+ companyLinkedinUrl: string | null;
416
+ seniorityLevel: string | null;
417
+ functionCategory: string | null;
418
+ startDate: string | null;
419
+ yearsAtCompany: number | null;
420
+ companyHeadcount: number | null;
421
+ companyIndustries: string[] | null;
422
+ }[] | null;
423
+ pastEmployers: {
424
+ title: string | null;
425
+ companyName: string | null;
426
+ startDate: string | null;
427
+ endDate: string | null;
428
+ }[] | null;
429
+ }>, "many">;
430
+ totalCount: z.ZodNumber;
431
+ success: z.ZodBoolean;
432
+ error: z.ZodString;
433
+ }, "strip", z.ZodTypeAny, {
434
+ success: boolean;
435
+ error: string;
436
+ people: {
437
+ title: string | null;
438
+ name: string | null;
439
+ summary: string | null;
440
+ location: string | null;
441
+ headline: string | null;
442
+ seniorityLevel: string | null;
443
+ emails: string[] | null;
444
+ languages: string[] | null;
445
+ skills: string[] | null;
446
+ education: {
447
+ instituteName: string | null;
448
+ degreeName: string | null;
449
+ fieldOfStudy: string | null;
450
+ }[] | null;
451
+ websites: string[] | null;
452
+ linkedinUrl: string | null;
453
+ profilePictureUrl: string | null;
454
+ twitterHandle: string | null;
455
+ yearsOfExperience: number | null;
456
+ recentlyChangedJobs: boolean | null;
457
+ locationCity: string | null;
458
+ locationCountry: string | null;
459
+ numConnections: number | null;
460
+ currentEmployers: {
461
+ title: string | null;
462
+ companyName: string | null;
463
+ companyLinkedinUrl: string | null;
464
+ seniorityLevel: string | null;
465
+ functionCategory: string | null;
466
+ startDate: string | null;
467
+ yearsAtCompany: number | null;
468
+ companyHeadcount: number | null;
469
+ companyIndustries: string[] | null;
470
+ }[] | null;
471
+ pastEmployers: {
472
+ title: string | null;
473
+ companyName: string | null;
474
+ startDate: string | null;
475
+ endDate: string | null;
476
+ }[] | null;
477
+ }[];
478
+ totalCount: number;
479
+ }, {
480
+ success: boolean;
481
+ error: string;
482
+ people: {
483
+ title: string | null;
484
+ name: string | null;
485
+ summary: string | null;
486
+ location: string | null;
487
+ headline: string | null;
488
+ seniorityLevel: string | null;
489
+ emails: string[] | null;
490
+ languages: string[] | null;
491
+ skills: string[] | null;
492
+ education: {
493
+ instituteName: string | null;
494
+ degreeName: string | null;
495
+ fieldOfStudy: string | null;
496
+ }[] | null;
497
+ websites: string[] | null;
498
+ linkedinUrl: string | null;
499
+ profilePictureUrl: string | null;
500
+ twitterHandle: string | null;
501
+ yearsOfExperience: number | null;
502
+ recentlyChangedJobs: boolean | null;
503
+ locationCity: string | null;
504
+ locationCountry: string | null;
505
+ numConnections: number | null;
506
+ currentEmployers: {
507
+ title: string | null;
508
+ companyName: string | null;
509
+ companyLinkedinUrl: string | null;
510
+ seniorityLevel: string | null;
511
+ functionCategory: string | null;
512
+ startDate: string | null;
513
+ yearsAtCompany: number | null;
514
+ companyHeadcount: number | null;
515
+ companyIndustries: string[] | null;
516
+ }[] | null;
517
+ pastEmployers: {
518
+ title: string | null;
519
+ companyName: string | null;
520
+ startDate: string | null;
521
+ endDate: string | null;
522
+ }[] | null;
523
+ }[];
524
+ totalCount: number;
525
+ }>;
526
+ type PeopleSearchToolParams = z.output<typeof PeopleSearchToolParamsSchema>;
527
+ type PeopleSearchToolResult = z.output<typeof PeopleSearchToolResultSchema>;
528
+ type PeopleSearchToolParamsInput = z.input<typeof PeopleSearchToolParamsSchema>;
529
+ export type PersonResult = z.output<typeof PersonResultSchema>;
530
+ export type PeopleSearchResult = PeopleSearchToolResult;
531
+ /**
532
+ * People Search Tool
533
+ *
534
+ * Agent-friendly tool for searching and discovering professionals.
535
+ * Uses the Crustdata PersonDB in-database search API for fast, comprehensive results.
536
+ *
537
+ * Features:
538
+ * - Search by company name/URL, job title, location, or skills
539
+ * - Filter by seniority level (CXO, VP, Director, etc.)
540
+ * - Filter by years of experience
541
+ * - Full profiles with work history and education
542
+ * - Exclude specific companies or profiles
543
+ *
544
+ * Use cases:
545
+ * - Find specific professionals at a company
546
+ * - Search for people by job title across companies
547
+ * - Discover professionals with specific skills
548
+ * - Find senior executives (CXOs, VPs, Directors)
549
+ * - Sales prospecting and lead generation
550
+ *
551
+ * Credits: 3 credits per 100 results returned
552
+ */
553
+ export declare class PeopleSearchTool extends ToolBubble<PeopleSearchToolParams, PeopleSearchToolResult> {
554
+ static readonly bubbleName: BubbleName;
555
+ static readonly schema: z.ZodObject<{
556
+ companyName: z.ZodOptional<z.ZodString>;
557
+ companyLinkedinUrl: z.ZodOptional<z.ZodString>;
558
+ jobTitle: z.ZodOptional<z.ZodString>;
559
+ jobTitles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
560
+ location: z.ZodOptional<z.ZodString>;
561
+ locationRadius: z.ZodOptional<z.ZodObject<{
562
+ location: z.ZodString;
563
+ radiusMiles: z.ZodNumber;
564
+ }, "strip", z.ZodTypeAny, {
565
+ location: string;
566
+ radiusMiles: number;
567
+ }, {
568
+ location: string;
569
+ radiusMiles: number;
570
+ }>>;
571
+ skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
572
+ languages: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
573
+ minYearsExperience: z.ZodOptional<z.ZodNumber>;
574
+ maxYearsExperience: z.ZodOptional<z.ZodNumber>;
575
+ seniorityLevels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
576
+ functionCategories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
577
+ companyIndustries: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
578
+ minCompanyHeadcount: z.ZodOptional<z.ZodNumber>;
579
+ maxCompanyHeadcount: z.ZodOptional<z.ZodNumber>;
580
+ minYearsAtCompany: z.ZodOptional<z.ZodNumber>;
581
+ pastCompanyName: z.ZodOptional<z.ZodString>;
582
+ pastJobTitle: z.ZodOptional<z.ZodString>;
583
+ schoolName: z.ZodOptional<z.ZodString>;
584
+ country: z.ZodOptional<z.ZodString>;
585
+ city: z.ZodOptional<z.ZodString>;
586
+ recentlyChangedJobs: z.ZodOptional<z.ZodBoolean>;
587
+ minConnections: z.ZodOptional<z.ZodNumber>;
588
+ excludeCompanies: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
589
+ excludeProfiles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
590
+ limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
591
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
592
+ }, "strip", z.ZodTypeAny, {
593
+ credentials?: Partial<Record<CredentialType, string>> | undefined;
594
+ limit?: number | undefined;
595
+ location?: string | undefined;
596
+ companyName?: string | undefined;
597
+ companyLinkedinUrl?: string | undefined;
598
+ city?: string | undefined;
599
+ country?: string | undefined;
600
+ languages?: string[] | undefined;
601
+ skills?: string[] | undefined;
602
+ recentlyChangedJobs?: boolean | undefined;
603
+ companyIndustries?: string[] | undefined;
604
+ jobTitle?: string | undefined;
605
+ jobTitles?: string[] | undefined;
606
+ locationRadius?: {
607
+ location: string;
608
+ radiusMiles: number;
609
+ } | undefined;
610
+ minYearsExperience?: number | undefined;
611
+ maxYearsExperience?: number | undefined;
612
+ seniorityLevels?: string[] | undefined;
613
+ functionCategories?: string[] | undefined;
614
+ minCompanyHeadcount?: number | undefined;
615
+ maxCompanyHeadcount?: number | undefined;
616
+ minYearsAtCompany?: number | undefined;
617
+ pastCompanyName?: string | undefined;
618
+ pastJobTitle?: string | undefined;
619
+ schoolName?: string | undefined;
620
+ minConnections?: number | undefined;
621
+ excludeCompanies?: string[] | undefined;
622
+ excludeProfiles?: string[] | undefined;
623
+ }, {
624
+ credentials?: Partial<Record<CredentialType, string>> | undefined;
625
+ limit?: number | undefined;
626
+ location?: string | undefined;
627
+ companyName?: string | undefined;
628
+ companyLinkedinUrl?: string | undefined;
629
+ city?: string | undefined;
630
+ country?: string | undefined;
631
+ languages?: string[] | undefined;
632
+ skills?: string[] | undefined;
633
+ recentlyChangedJobs?: boolean | undefined;
634
+ companyIndustries?: string[] | undefined;
635
+ jobTitle?: string | undefined;
636
+ jobTitles?: string[] | undefined;
637
+ locationRadius?: {
638
+ location: string;
639
+ radiusMiles: number;
640
+ } | undefined;
641
+ minYearsExperience?: number | undefined;
642
+ maxYearsExperience?: number | undefined;
643
+ seniorityLevels?: string[] | undefined;
644
+ functionCategories?: string[] | undefined;
645
+ minCompanyHeadcount?: number | undefined;
646
+ maxCompanyHeadcount?: number | undefined;
647
+ minYearsAtCompany?: number | undefined;
648
+ pastCompanyName?: string | undefined;
649
+ pastJobTitle?: string | undefined;
650
+ schoolName?: string | undefined;
651
+ minConnections?: number | undefined;
652
+ excludeCompanies?: string[] | undefined;
653
+ excludeProfiles?: string[] | undefined;
654
+ }>;
655
+ static readonly resultSchema: z.ZodObject<{
656
+ people: z.ZodArray<z.ZodObject<{
657
+ name: z.ZodNullable<z.ZodString>;
658
+ title: z.ZodNullable<z.ZodString>;
659
+ headline: z.ZodNullable<z.ZodString>;
660
+ linkedinUrl: z.ZodNullable<z.ZodString>;
661
+ profilePictureUrl: z.ZodNullable<z.ZodString>;
662
+ emails: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
663
+ twitterHandle: z.ZodNullable<z.ZodString>;
664
+ websites: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
665
+ seniorityLevel: z.ZodNullable<z.ZodString>;
666
+ yearsOfExperience: z.ZodNullable<z.ZodNumber>;
667
+ recentlyChangedJobs: z.ZodNullable<z.ZodBoolean>;
668
+ location: z.ZodNullable<z.ZodString>;
669
+ locationCity: z.ZodNullable<z.ZodString>;
670
+ locationCountry: z.ZodNullable<z.ZodString>;
671
+ skills: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
672
+ languages: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
673
+ summary: z.ZodNullable<z.ZodString>;
674
+ numConnections: z.ZodNullable<z.ZodNumber>;
675
+ currentEmployers: z.ZodNullable<z.ZodArray<z.ZodObject<{
676
+ title: z.ZodNullable<z.ZodString>;
677
+ companyName: z.ZodNullable<z.ZodString>;
678
+ companyLinkedinUrl: z.ZodNullable<z.ZodString>;
679
+ seniorityLevel: z.ZodNullable<z.ZodString>;
680
+ functionCategory: z.ZodNullable<z.ZodString>;
681
+ startDate: z.ZodNullable<z.ZodString>;
682
+ yearsAtCompany: z.ZodNullable<z.ZodNumber>;
683
+ companyHeadcount: z.ZodNullable<z.ZodNumber>;
684
+ companyIndustries: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
685
+ }, "strip", z.ZodTypeAny, {
686
+ title: string | null;
687
+ companyName: string | null;
688
+ companyLinkedinUrl: string | null;
689
+ seniorityLevel: string | null;
690
+ functionCategory: string | null;
691
+ startDate: string | null;
692
+ yearsAtCompany: number | null;
693
+ companyHeadcount: number | null;
694
+ companyIndustries: string[] | null;
695
+ }, {
696
+ title: string | null;
697
+ companyName: string | null;
698
+ companyLinkedinUrl: string | null;
699
+ seniorityLevel: string | null;
700
+ functionCategory: string | null;
701
+ startDate: string | null;
702
+ yearsAtCompany: number | null;
703
+ companyHeadcount: number | null;
704
+ companyIndustries: string[] | null;
705
+ }>, "many">>;
706
+ pastEmployers: z.ZodNullable<z.ZodArray<z.ZodObject<{
707
+ title: z.ZodNullable<z.ZodString>;
708
+ companyName: z.ZodNullable<z.ZodString>;
709
+ startDate: z.ZodNullable<z.ZodString>;
710
+ endDate: z.ZodNullable<z.ZodString>;
711
+ }, "strip", z.ZodTypeAny, {
712
+ title: string | null;
713
+ companyName: string | null;
714
+ startDate: string | null;
715
+ endDate: string | null;
716
+ }, {
717
+ title: string | null;
718
+ companyName: string | null;
719
+ startDate: string | null;
720
+ endDate: string | null;
721
+ }>, "many">>;
722
+ education: z.ZodNullable<z.ZodArray<z.ZodObject<{
723
+ instituteName: z.ZodNullable<z.ZodString>;
724
+ degreeName: z.ZodNullable<z.ZodString>;
725
+ fieldOfStudy: z.ZodNullable<z.ZodString>;
726
+ }, "strip", z.ZodTypeAny, {
727
+ instituteName: string | null;
728
+ degreeName: string | null;
729
+ fieldOfStudy: string | null;
730
+ }, {
731
+ instituteName: string | null;
732
+ degreeName: string | null;
733
+ fieldOfStudy: string | null;
734
+ }>, "many">>;
735
+ }, "strip", z.ZodTypeAny, {
736
+ title: string | null;
737
+ name: string | null;
738
+ summary: string | null;
739
+ location: string | null;
740
+ headline: string | null;
741
+ seniorityLevel: string | null;
742
+ emails: string[] | null;
743
+ languages: string[] | null;
744
+ skills: string[] | null;
745
+ education: {
746
+ instituteName: string | null;
747
+ degreeName: string | null;
748
+ fieldOfStudy: string | null;
749
+ }[] | null;
750
+ websites: string[] | null;
751
+ linkedinUrl: string | null;
752
+ profilePictureUrl: string | null;
753
+ twitterHandle: string | null;
754
+ yearsOfExperience: number | null;
755
+ recentlyChangedJobs: boolean | null;
756
+ locationCity: string | null;
757
+ locationCountry: string | null;
758
+ numConnections: number | null;
759
+ currentEmployers: {
760
+ title: string | null;
761
+ companyName: string | null;
762
+ companyLinkedinUrl: string | null;
763
+ seniorityLevel: string | null;
764
+ functionCategory: string | null;
765
+ startDate: string | null;
766
+ yearsAtCompany: number | null;
767
+ companyHeadcount: number | null;
768
+ companyIndustries: string[] | null;
769
+ }[] | null;
770
+ pastEmployers: {
771
+ title: string | null;
772
+ companyName: string | null;
773
+ startDate: string | null;
774
+ endDate: string | null;
775
+ }[] | null;
776
+ }, {
777
+ title: string | null;
778
+ name: string | null;
779
+ summary: string | null;
780
+ location: string | null;
781
+ headline: string | null;
782
+ seniorityLevel: string | null;
783
+ emails: string[] | null;
784
+ languages: string[] | null;
785
+ skills: string[] | null;
786
+ education: {
787
+ instituteName: string | null;
788
+ degreeName: string | null;
789
+ fieldOfStudy: string | null;
790
+ }[] | null;
791
+ websites: string[] | null;
792
+ linkedinUrl: string | null;
793
+ profilePictureUrl: string | null;
794
+ twitterHandle: string | null;
795
+ yearsOfExperience: number | null;
796
+ recentlyChangedJobs: boolean | null;
797
+ locationCity: string | null;
798
+ locationCountry: string | null;
799
+ numConnections: number | null;
800
+ currentEmployers: {
801
+ title: string | null;
802
+ companyName: string | null;
803
+ companyLinkedinUrl: string | null;
804
+ seniorityLevel: string | null;
805
+ functionCategory: string | null;
806
+ startDate: string | null;
807
+ yearsAtCompany: number | null;
808
+ companyHeadcount: number | null;
809
+ companyIndustries: string[] | null;
810
+ }[] | null;
811
+ pastEmployers: {
812
+ title: string | null;
813
+ companyName: string | null;
814
+ startDate: string | null;
815
+ endDate: string | null;
816
+ }[] | null;
817
+ }>, "many">;
818
+ totalCount: z.ZodNumber;
819
+ success: z.ZodBoolean;
820
+ error: z.ZodString;
821
+ }, "strip", z.ZodTypeAny, {
822
+ success: boolean;
823
+ error: string;
824
+ people: {
825
+ title: string | null;
826
+ name: string | null;
827
+ summary: string | null;
828
+ location: string | null;
829
+ headline: string | null;
830
+ seniorityLevel: string | null;
831
+ emails: string[] | null;
832
+ languages: string[] | null;
833
+ skills: string[] | null;
834
+ education: {
835
+ instituteName: string | null;
836
+ degreeName: string | null;
837
+ fieldOfStudy: string | null;
838
+ }[] | null;
839
+ websites: string[] | null;
840
+ linkedinUrl: string | null;
841
+ profilePictureUrl: string | null;
842
+ twitterHandle: string | null;
843
+ yearsOfExperience: number | null;
844
+ recentlyChangedJobs: boolean | null;
845
+ locationCity: string | null;
846
+ locationCountry: string | null;
847
+ numConnections: number | null;
848
+ currentEmployers: {
849
+ title: string | null;
850
+ companyName: string | null;
851
+ companyLinkedinUrl: string | null;
852
+ seniorityLevel: string | null;
853
+ functionCategory: string | null;
854
+ startDate: string | null;
855
+ yearsAtCompany: number | null;
856
+ companyHeadcount: number | null;
857
+ companyIndustries: string[] | null;
858
+ }[] | null;
859
+ pastEmployers: {
860
+ title: string | null;
861
+ companyName: string | null;
862
+ startDate: string | null;
863
+ endDate: string | null;
864
+ }[] | null;
865
+ }[];
866
+ totalCount: number;
867
+ }, {
868
+ success: boolean;
869
+ error: string;
870
+ people: {
871
+ title: string | null;
872
+ name: string | null;
873
+ summary: string | null;
874
+ location: string | null;
875
+ headline: string | null;
876
+ seniorityLevel: string | null;
877
+ emails: string[] | null;
878
+ languages: string[] | null;
879
+ skills: string[] | null;
880
+ education: {
881
+ instituteName: string | null;
882
+ degreeName: string | null;
883
+ fieldOfStudy: string | null;
884
+ }[] | null;
885
+ websites: string[] | null;
886
+ linkedinUrl: string | null;
887
+ profilePictureUrl: string | null;
888
+ twitterHandle: string | null;
889
+ yearsOfExperience: number | null;
890
+ recentlyChangedJobs: boolean | null;
891
+ locationCity: string | null;
892
+ locationCountry: string | null;
893
+ numConnections: number | null;
894
+ currentEmployers: {
895
+ title: string | null;
896
+ companyName: string | null;
897
+ companyLinkedinUrl: string | null;
898
+ seniorityLevel: string | null;
899
+ functionCategory: string | null;
900
+ startDate: string | null;
901
+ yearsAtCompany: number | null;
902
+ companyHeadcount: number | null;
903
+ companyIndustries: string[] | null;
904
+ }[] | null;
905
+ pastEmployers: {
906
+ title: string | null;
907
+ companyName: string | null;
908
+ startDate: string | null;
909
+ endDate: string | null;
910
+ }[] | null;
911
+ }[];
912
+ totalCount: number;
913
+ }>;
914
+ static readonly shortDescription = "Comprehensive people search by company, title, location, skills, and more";
915
+ static readonly longDescription = "\n Comprehensive people search tool for finding and discovering professionals.\n Uses the Crustdata PersonDB in-database search for fast, comprehensive results.\n\n **SEARCH CRITERIA (at least one required):**\n - Company: companyName, companyLinkedinUrl, pastCompanyName\n - Job Title: jobTitle (single), jobTitles (multiple with OR logic), pastJobTitle\n - Location: location (fuzzy), locationRadius (geo search), country, city\n - Skills & Experience: skills, languages, minYearsExperience, maxYearsExperience\n - Seniority & Function: seniorityLevels, functionCategories\n - Company Attributes: companyIndustries, minCompanyHeadcount, maxCompanyHeadcount\n - Education: schoolName\n - Status: recentlyChangedJobs, minConnections, minYearsAtCompany\n\n **GEO RADIUS SEARCH:**\n Use locationRadius to find people within X miles of a location:\n - locationRadius: { location: \"San Francisco\", radiusMiles: 75 }\n - locationRadius: { location: \"New York City\", radiusMiles: 50 }\n\n **WHAT YOU GET:**\n - Full name, current title, and headline\n - LinkedIn profile URL and email addresses\n - Complete current and past work history with company details\n - Education background with degrees and fields of study\n - Skills, languages, seniority level, and years of experience\n - Location details (city, country, region)\n\n **EXAMPLE USE CASES:**\n - companyName: \"Stripe\" \u2192 find people currently at Stripe\n - jobTitle: \"CEO\", seniorityLevels: [\"CXO\"] \u2192 find CEOs\n - jobTitles: [\"Senior Hardware Engineer\", \"Technical Product Manager\"] \u2192 find people with either role\n - locationRadius: { location: \"Austin\", radiusMiles: 75 }, jobTitle: \"Engineer\" \u2192 engineers within 75 miles of Austin\n - pastCompanyName: \"Google\", companyName: \"Startup\" \u2192 ex-Googlers at startups\n - skills: [\"Python\", \"ML\"], minYearsExperience: 5 \u2192 experienced ML engineers\n - companyIndustries: [\"Healthcare\"], functionCategories: [\"Sales\"] \u2192 healthcare sales professionals\n - schoolName: \"Stanford\", seniorityLevels: [\"CXO\", \"Vice President\"] \u2192 Stanford alum executives\n - recentlyChangedJobs: true, companyName: \"Meta\" \u2192 recent Meta hires (good for outreach)\n - minCompanyHeadcount: 1000, maxCompanyHeadcount: 5000 \u2192 mid-size company employees\n\n **CREDITS:** 3 credits per 100 results returned\n ";
916
+ static readonly alias = "people";
917
+ static readonly type = "tool";
918
+ constructor(params?: PeopleSearchToolParamsInput, context?: BubbleContext);
919
+ performAction(): Promise<PeopleSearchToolResult>;
920
+ /**
921
+ * Transform API profiles to simplified format
922
+ */
923
+ private transformProfiles;
924
+ /**
925
+ * Transform a single PersonDB profile to PersonResult format
926
+ */
927
+ private transformProfile;
928
+ /**
929
+ * Create an error result
930
+ */
931
+ private createErrorResult;
932
+ }
933
+ export {};
934
+ //# sourceMappingURL=people-search-tool.d.ts.map