lumnisai 0.5.21 → 0.5.23

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.ts CHANGED
@@ -897,6 +897,210 @@ interface CompetitorPostEngagementOutput {
897
897
  agentParams?: Record<string, any>;
898
898
  }
899
899
 
900
+ /**
901
+ * @module competitor_rep_engagement
902
+ *
903
+ * # Competitor Rep Engagement Agent — SDK Reference
904
+ *
905
+ * > Find the prospects your competitors' sales reps are actively working.
906
+ *
907
+ * Agent ID: `competitor_rep_engagement`
908
+ *
909
+ * The **inverse** of {@link ./competitor-post-engagement.ts}: instead of scoring
910
+ * the people who engaged WITH competitor posts, this agent finds a competitor's
911
+ * **sales reps** and surfaces the **AUTHORS** of the LinkedIn posts those reps
912
+ * react to / comment on — i.e. the prospects the competitor is actively selling
913
+ * to. Authors are ranked against a persona prompt using the shared
914
+ * deep_people_search scoring chain.
915
+ *
916
+ * ---
917
+ *
918
+ * ## Invocation
919
+ *
920
+ * ```ts
921
+ * import { LumnisClient, type CompetitorRepEngagementOutput } from 'lumnisai'
922
+ *
923
+ * const client = new LumnisClient({ apiKey: '...' })
924
+ *
925
+ * // Discovery mode — find competitors from a seed company
926
+ * const { responseId } = await client.responses.competitorRepEngagement(
927
+ * 'VP Eng or Heads of Data at AI-native startups (50-500 employees)',
928
+ * { company: 'lumnis.ai', companyContext: 'AI outbound automation for B2B sales', limit: 100 },
929
+ * )
930
+ *
931
+ * // Explicit mode — you already know the competitors
932
+ * const { responseId } = await client.responses.competitorRepEngagement(
933
+ * 'Same persona prompt here',
934
+ * { competitors: ['outreach.io', 'apollo.io'], postsDateRange: 'past-quarter' },
935
+ * )
936
+ *
937
+ * const result = await client.responses.get(responseId, { wait: 120 })
938
+ * const output = result.structuredResponse as CompetitorRepEngagementOutput
939
+ * ```
940
+ *
941
+ * Lower-level API (same payload):
942
+ *
943
+ * ```ts
944
+ * await client.responses.create({
945
+ * messages: [{ role: 'user', content: '<persona prompt>' }],
946
+ * specializedAgent: 'competitor_rep_engagement',
947
+ * specializedAgentParams: { competitors: ['openai.com'], limit: 100 },
948
+ * })
949
+ * ```
950
+ *
951
+ * ---
952
+ *
953
+ * ## Input modes (exactly one required)
954
+ *
955
+ * | Mode | Param | Behavior |
956
+ * |------|-------|----------|
957
+ * | **A — Explicit** | `competitors: string[]` | Validates each domain/name, skips discovery |
958
+ * | **B — Discovery** | `company: string` | ReAct finds competitors, then crawls each one's reps |
959
+ *
960
+ * The **persona prompt** lives in `messages[0].content` (required). Params only
961
+ * control targets, rep selection, and the engagement window.
962
+ *
963
+ * ---
964
+ *
965
+ * ## API keys (BYO via external API keys, or platform env)
966
+ *
967
+ * | Key | Required | Role |
968
+ * |-----|----------|------|
969
+ * | `FIBER_API_KEY` | **Yes** | Company resolution + per-rep profile engagement (reactions/comments) |
970
+ * | `CRUSTDATA_API_KEY` | **Yes** | Rep search (company-scoped role filter) + author enrichment |
971
+ * | `EXA_API_KEY` | Discovery + deep validation | Web search in find_competitors ReAct + validation chain |
972
+ *
973
+ * ---
974
+ *
975
+ * ## Defaults & caps (per run)
976
+ *
977
+ * | Param | Default | Max |
978
+ * |-------|---------|-----|
979
+ * | `limit` | 100 | 1000 |
980
+ * | `maxCompetitors` | 10 (discovery only) | 50 |
981
+ * | `maxRepsPerCompetitor` | 20 | 100 |
982
+ * | `maxEngagementsPerRep` | 100 | 1000 |
983
+ * | `postsDateRange` | `past-month` | past-24h … past-3-years |
984
+ * | `engagementTypes` | `['reactor','commenter']` | — |
985
+ * | `restrictEngagementToTenure` | true | — |
986
+ *
987
+ * `engagementTypes` maps to each rep's OUTGOING actions: `reactor` → posts the
988
+ * rep reacted to, `commenter` → posts the rep commented on. A rep comment is a
989
+ * stronger buying signal than a like.
990
+ *
991
+ * Longer windows (`past-2-years`, `past-3-years`) apply fully here because
992
+ * engagement is sourced from Fiber profile history (~3 years) — to genuinely
993
+ * reach a long window for very active reps, also raise `maxEngagementsPerRep`.
994
+ *
995
+ * ---
996
+ *
997
+ * ## Pipeline (what happens server-side)
998
+ *
999
+ * 1. **criteria_decomposition** — persona → scorable criteria (reused from deep_people_search)
1000
+ * 2. **resolve_targets** — Fiber kitchen-sink (primary) / Crustdata identify (fallback)
1001
+ * 3. **find_competitors** *(discovery only)* — ReAct: Exa + optional Firecrawl + Fiber validate
1002
+ * 4. **discover_exclusion** — widen the competitor-employee exclusion set
1003
+ * 5. **fetch_rep_engagement** *(NEW)* — find each competitor's reps, paginate their
1004
+ * Fiber reactions/comments, extract the POST AUTHORS (prospects) as candidates
1005
+ * 6. **reactor_prefilter → enrich → merge → fast_filter → realtime_refresh → validation**
1006
+ * — reused scoring chain
1007
+ *
1008
+ * ---
1009
+ *
1010
+ * ## Structured output (`ResponseObject.structuredResponse`)
1011
+ *
1012
+ * Cast to {@link CompetitorRepEngagementOutput}:
1013
+ *
1014
+ * - `candidates[]` — scored prospect-authors, sorted by rank, capped to `limit`
1015
+ * - `competitorsResolved[]` — resolved target metadata per competitor analyzed
1016
+ * - `resolutionWarnings[]` — domain-owner mismatches (e.g. "outreach.io is owned by Canopy")
1017
+ * - `discoveredCompetitors[]` — domains found in discovery mode (Mode B)
1018
+ * - `discoveryTrace` — ReAct audit trail
1019
+ * - `repEngagementStats` — rep/author counts for the run
1020
+ * - `criteria` — generated criteria definitions + classification
1021
+ * - `agentParams` — echo of params used for the run
1022
+ *
1023
+ * ### Per-candidate `engagementData[]`
1024
+ *
1025
+ * Each entry is one post the prospect authored that a competitor rep engaged
1026
+ * with. See {@link RepEngagementData}. Multiple reps engaging the same prospect
1027
+ * → multiple entries on the one candidate.
1028
+ *
1029
+ * @see Backend agent: `src/specialized_agents/competitor_rep_engagement/`
1030
+ */
1031
+
1032
+ /**
1033
+ * One LinkedIn post a prospect AUTHORED that a competitor's sales rep engaged
1034
+ * with (reacted to / commented on). Lives on a candidate's `engagementData[]`.
1035
+ *
1036
+ * Provenance is the full chain: PROSPECT (the candidate) authored the post →
1037
+ * engaged by REP at COMPETITOR via `engagementAction`.
1038
+ */
1039
+ interface RepEngagementData {
1040
+ /** LinkedIn URL of the post the prospect authored (and the rep engaged with) */
1041
+ postUrl?: string;
1042
+ /** Full text of the prospect's post */
1043
+ postText?: string;
1044
+ /** Provenance role — always `"post_author"` for this lane (the candidate is the author) */
1045
+ role?: 'post_author' | string;
1046
+ /** How the rep engaged with the post */
1047
+ engagementAction?: 'reaction' | 'comment';
1048
+ /** Name of the competitor rep who engaged */
1049
+ engagedByRepName?: string;
1050
+ /** LinkedIn URL of the competitor rep */
1051
+ engagedByRepUrl?: string;
1052
+ /** Title of the competitor rep (e.g. "Account Executive") */
1053
+ engagedByRepTitle?: string;
1054
+ /** Competitor company the rep works at */
1055
+ repCompetitor?: string;
1056
+ /** Relative recency of the engagement, e.g. "2w" */
1057
+ engagedAgo?: string;
1058
+ /** Numeric days-ago of the engagement (parsed from engagedAgo, for recency ranking) */
1059
+ engagedDaysAgo?: number;
1060
+ /** The rep's OWN comment text (present only when engagementAction is "comment") */
1061
+ repCommentText?: string;
1062
+ [key: string]: any;
1063
+ }
1064
+ /**
1065
+ * Counts describing a competitor_rep_engagement run.
1066
+ * Surfaced on `structuredResponse.repEngagementStats`.
1067
+ */
1068
+ interface RepEngagementStats {
1069
+ /** Number of competitors analyzed */
1070
+ competitors: number;
1071
+ /** Number of sales reps crawled across all competitors */
1072
+ reps: number;
1073
+ /** Raw author-engagement records harvested before dedupe */
1074
+ rawAuthorEngagements: number;
1075
+ /** Unique prospect-authors after dedupe */
1076
+ uniqueAuthors: number;
1077
+ /** Engagement records dropped because the author was a rep itself */
1078
+ droppedRepSelfEngagements: number;
1079
+ [key: string]: any;
1080
+ }
1081
+ /**
1082
+ * Full structured output from a succeeded `competitor_rep_engagement` run.
1083
+ * Available on `ResponseObject.structuredResponse`.
1084
+ */
1085
+ interface CompetitorRepEngagementOutput {
1086
+ /** Scored prospect-authors, sorted by rank, capped to params.limit */
1087
+ candidates: ValidatedCandidate[];
1088
+ /** Generated or reused criteria metadata */
1089
+ criteria?: CriteriaMetadata;
1090
+ /** Resolved competitor targets whose reps were crawled */
1091
+ competitorsResolved: ResolvedCompetitorTarget[];
1092
+ /** Domain-owner mismatch warnings (e.g. seed resolved to a different company) */
1093
+ resolutionWarnings?: string[];
1094
+ /** Competitors discovered from seed (discovery mode only) */
1095
+ discoveredCompetitors?: string[];
1096
+ /** Audit trail from the competitor-discovery ReAct */
1097
+ discoveryTrace?: DiscoveryTrace;
1098
+ /** Rep/author counts for the run */
1099
+ repEngagementStats?: RepEngagementStats;
1100
+ /** Echo of validated agent params used for this run */
1101
+ agentParams?: Record<string, any>;
1102
+ }
1103
+
900
1104
  /**
901
1105
  * Available people search data sources
902
1106
  */
@@ -1246,6 +1450,37 @@ interface CriterionResult {
1246
1450
  /** Why this confidence level */
1247
1451
  confidenceReasoning: string;
1248
1452
  }
1453
+ /**
1454
+ * One discrete buying-intent signal, broken out from the synthesized
1455
+ * `intentScore`.
1456
+ *
1457
+ * ADDITIVE / OPTIONAL: the scalar `intentScore` + `intentReasoning` remain the
1458
+ * source of truth for ranking. This list is an auditable, per-signal breakdown
1459
+ * for the frontend.
1460
+ */
1461
+ interface IntentSignal {
1462
+ /**
1463
+ * Category of the signal, e.g. 'competitor_rep_engagement' (a competitor's rep
1464
+ * engaged with this person's post), 'person_post_engagement' (they
1465
+ * authored/reacted/commented), or 'company_hiring' (their employer is hiring
1466
+ * for the initiative).
1467
+ */
1468
+ signalType: string;
1469
+ /** Concise who/what for this signal — e.g. 'AE @ Mercor commented on their post'. */
1470
+ source: string;
1471
+ /** 0-10 strength of THIS signal alone (same rubric as intentScore). */
1472
+ score: number;
1473
+ /**
1474
+ * 0-1 — how much THIS signal should count toward overall intent (person-level
1475
+ * > company-level). Used for analysis/aggregation, not ranking.
1476
+ */
1477
+ weight: number;
1478
+ /** Human recency of the signal, e.g. '3d ago', '6mo ago', 'unknown'. */
1479
+ recency: string;
1480
+ /** One sentence on why THIS signal suggests they're in-market now. */
1481
+ reasoning: string;
1482
+ [key: string]: any;
1483
+ }
1249
1484
  /**
1250
1485
  * Validated candidate with scoring and criterion results.
1251
1486
  * Returned from deep_people_search after validation.
@@ -1277,6 +1512,23 @@ interface ValidatedCandidate {
1277
1512
  criteriaQualityWarnings?: string[];
1278
1513
  /** Explanation of LinkedIn engagement relevance (if applicable) */
1279
1514
  engagementReasoning?: string | null;
1515
+ /**
1516
+ * Buying-intent score (0-10), SEPARATE from fit (`overallScore`). 0 when no
1517
+ * intent signals are present. Synthesized from `intentSignals`.
1518
+ */
1519
+ intentScore?: number;
1520
+ /**
1521
+ * User-facing buying-intent explanation (1-2 sentences per signal). Empty
1522
+ * string when the candidate has no intent signals.
1523
+ */
1524
+ intentReasoning?: string;
1525
+ /**
1526
+ * Per-signal buying-intent breakdown that `intentReasoning`/`intentScore`
1527
+ * synthesize from. Empty/absent when no intent signals are present. Populated
1528
+ * by deep_people_search validation, competitor_post_engagement, and
1529
+ * competitor_rep_engagement.
1530
+ */
1531
+ intentSignals?: IntentSignal[];
1280
1532
  /**
1281
1533
  * LinkedIn posts this candidate engaged with (reacted or commented).
1282
1534
  * One entry per post — if someone engaged with multiple competitor posts,
@@ -1379,14 +1631,28 @@ interface StructuredResponse extends Record<string, any> {
1379
1631
  costStats?: AgentCostStats;
1380
1632
  provenanceAttached?: boolean;
1381
1633
  agentParams?: Record<string, any>;
1634
+ /** Competitor rep engagement output (when using competitor_rep_engagement agent) */
1635
+ resolutionWarnings?: string[];
1636
+ repEngagementStats?: RepEngagementStats;
1382
1637
  }
1383
1638
  /**
1384
1639
  * Available specialized agents
1385
1640
  * Using a union type that can be extended with any string to support future agents
1386
1641
  */
1387
- type SpecializedAgentType = 'quick_people_search' | 'deep_people_search' | 'people_scoring' | 'competitor_post_engagement' | (string & {});
1388
- /** Shared posts date-range enum (deep_people_search, competitor_post_engagement). */
1389
- type PostsDateRange = 'past-24h' | 'past-week' | 'past-month' | 'past-quarter' | 'past-year';
1642
+ type SpecializedAgentType = 'quick_people_search' | 'deep_people_search' | 'people_scoring' | 'competitor_post_engagement' | 'competitor_rep_engagement' | (string & {});
1643
+ /**
1644
+ * Shared posts date-range enum (deep_people_search, competitor_post_engagement,
1645
+ * competitor_rep_engagement).
1646
+ *
1647
+ * The longer ranges (`past-6-months`, `past-2-years`, `past-3-years`) apply fully
1648
+ * only to `competitor_rep_engagement` (engagement is sourced from Fiber profile
1649
+ * history, ~3 years). For KEYWORD post search (deep_people_search posts +
1650
+ * competitor_post_engagement), Crustdata's keyword-post API only supports up to
1651
+ * `past-year`: `past-6-months` is honored window-exact via a client-side cutoff
1652
+ * (may return fewer results), while `past-2-years`/`past-3-years` are CAPPED to
1653
+ * `past-year`.
1654
+ */
1655
+ type PostsDateRange = 'past-24h' | 'past-week' | 'past-month' | 'past-quarter' | 'past-6-months' | 'past-year' | 'past-2-years' | 'past-3-years';
1390
1656
  /** @see {@link ./competitor-post-engagement.ts} for full agent reference (invocation, pipeline, output shape, costs). */
1391
1657
  /**
1392
1658
  * Parameters for specialized agent execution
@@ -1491,10 +1757,21 @@ interface SpecializedAgentParams {
1491
1757
  */
1492
1758
  postsMaxKeywords?: number;
1493
1759
  /**
1494
- * Date range for posts search / post selection.
1495
- * Options: 'past-24h', 'past-week', 'past-month', 'past-quarter', 'past-year'
1760
+ * Date window for posts search / post selection / rep engagement lookback.
1761
+ * Options: 'past-24h', 'past-week', 'past-month', 'past-quarter',
1762
+ * 'past-6-months', 'past-year', 'past-2-years', 'past-3-years'.
1496
1763
  * @default 'past-month'
1497
- * Used by deep_people_search and competitor_post_engagement.
1764
+ * Used by deep_people_search, competitor_post_engagement, and
1765
+ * competitor_rep_engagement.
1766
+ *
1767
+ * For deep_people_search / competitor_post_engagement it bounds POST recency;
1768
+ * for competitor_rep_engagement it bounds how far back each rep's OUTGOING
1769
+ * engagement is considered (also bounded by `maxEngagementsPerRep`).
1770
+ *
1771
+ * NOTE on keyword post search: Crustdata's keyword-post API only supports up to
1772
+ * 'past-year'. 'past-6-months' is honored window-exact via a client-side cutoff
1773
+ * (may return fewer results); 'past-2-years'/'past-3-years' are capped to
1774
+ * 'past-year'. The longer ranges apply fully only to competitor_rep_engagement.
1498
1775
  */
1499
1776
  postsDateRange?: PostsDateRange;
1500
1777
  /**
@@ -1653,9 +1930,14 @@ interface SpecializedAgentParams {
1653
1930
  */
1654
1931
  companyExamples?: string[];
1655
1932
  /**
1656
- * Which engagement types to extract from LinkedIn posts.
1657
- * Also drives post ranking (reactor-only ranks by reactions, not comments).
1933
+ * Which engagement signals to use. Options: 'reactor', 'commenter'.
1658
1934
  * @default ['reactor', 'commenter']
1935
+ *
1936
+ * For competitor_post_engagement: which engagers to extract FROM competitor
1937
+ * posts (also drives post ranking — reactor-only ranks by reactions, not
1938
+ * comments). For competitor_rep_engagement: which OUTGOING actions of the rep
1939
+ * to harvest (reactor = posts they reacted to, commenter = posts they
1940
+ * commented on).
1659
1941
  */
1660
1942
  engagementTypes?: PostEngagementType[];
1661
1943
  /**
@@ -1719,6 +2001,53 @@ interface SpecializedAgentParams {
1719
2001
  * @maximum 100
1720
2002
  */
1721
2003
  maxCommentsPerPost?: number;
2004
+ /**
2005
+ * Enrich the full author/candidate pool BEFORE the LLM prefilter cuts it.
2006
+ * Higher discrimination, higher cost (~20x enrichment spend on large runs).
2007
+ * Default false enriches only prefilter survivors.
2008
+ * @default false
2009
+ * Used by competitor_post_engagement and competitor_rep_engagement.
2010
+ */
2011
+ thoroughEnrichment?: boolean;
2012
+ /**
2013
+ * Override the default sales-rep title list used to find competitor reps
2014
+ * (e.g. Account Executive, SDR, BDR, Account Manager).
2015
+ * Used by competitor_rep_engagement.
2016
+ */
2017
+ repTitles?: string[];
2018
+ /**
2019
+ * Max sales reps to crawl per competitor.
2020
+ * @default 20
2021
+ * @minimum 1
2022
+ * @maximum 100
2023
+ * Used by competitor_rep_engagement.
2024
+ */
2025
+ maxRepsPerCompetitor?: number;
2026
+ /**
2027
+ * Max outgoing engagements (reactions + comments combined) harvested per rep.
2028
+ * Bounds Fiber pagination cost.
2029
+ * @default 100
2030
+ * @minimum 1
2031
+ * @maximum 1000
2032
+ * Used by competitor_rep_engagement.
2033
+ */
2034
+ maxEngagementsPerRep?: number;
2035
+ /**
2036
+ * Only mine a rep's engagement from AFTER they joined the competitor
2037
+ * (engagement before their start date is a prior job's network, not
2038
+ * current-role prospects). Effective lookback = min(postsDateRange,
2039
+ * time-since-joined). Reps with unknown start date are not capped (kept).
2040
+ * @default true
2041
+ * Used by competitor_rep_engagement.
2042
+ */
2043
+ restrictEngagementToTenure?: boolean;
2044
+ /**
2045
+ * In explicit-competitors mode, also run a names-only discovery to build a
2046
+ * broader employee-exclusion set across the vertical.
2047
+ * @default true
2048
+ * Used by competitor_rep_engagement.
2049
+ */
2050
+ expandExclusionViaDiscovery?: boolean;
1722
2051
  /**
1723
2052
  * Additional parameters for any specialized agent
1724
2053
  * This allows flexibility for future agents without SDK updates
@@ -1737,7 +2066,8 @@ interface CreateResponseRequest {
1737
2066
  modelOverrides?: ModelOverrides;
1738
2067
  /**
1739
2068
  * Route to a specialized agent instead of the main Lumnis agent
1740
- * Known agents: 'quick_people_search', 'deep_people_search', 'people_scoring', 'competitor_post_engagement'
2069
+ * Known agents: 'quick_people_search', 'deep_people_search', 'people_scoring',
2070
+ * 'competitor_post_engagement', 'competitor_rep_engagement'
1741
2071
  * Accepts any string to support future agents without SDK updates
1742
2072
  */
1743
2073
  specializedAgent?: SpecializedAgentType;
@@ -2206,6 +2536,24 @@ interface AddProspectsResponse {
2206
2536
  skipped: number;
2207
2537
  warnings: ProspectWarning[];
2208
2538
  }
2539
+ interface TransferProspectsRequest {
2540
+ /** Campaign to move the prospects into. Must belong to the same user and not be stopped/completed. */
2541
+ targetCampaignId: string;
2542
+ /**
2543
+ * Campaign prospect ids (CampaignProspectResponse.id) to transfer.
2544
+ * Omit to transfer every prospect in the source campaign.
2545
+ */
2546
+ prospectIds?: string[];
2547
+ }
2548
+ type TransferSkipReason = 'not_found' | 'duplicate_in_target';
2549
+ interface SkippedTransferProspect {
2550
+ prospectId: string;
2551
+ reason: TransferSkipReason;
2552
+ }
2553
+ interface TransferProspectsResponse {
2554
+ transferred: number;
2555
+ skipped: SkippedTransferProspect[];
2556
+ }
2209
2557
  interface CampaignProspectResponse {
2210
2558
  id: string;
2211
2559
  campaignId: string;
@@ -2540,6 +2888,16 @@ declare class CampaignsResource {
2540
2888
  * Get a single prospect with full action timeline and pending action.
2541
2889
  */
2542
2890
  getProspectDetail(campaignId: string, prospectId: string): Promise<CampaignProspectDetailResponse>;
2891
+ /**
2892
+ * Transfer prospects from this campaign into another campaign owned by
2893
+ * the same user. Omit prospectIds to transfer every prospect.
2894
+ *
2895
+ * In-flight actions are cancelled and the prospect is re-evaluated under
2896
+ * the target campaign's playbook; its action history and email threads
2897
+ * follow it. Prospects already present in the target are skipped and
2898
+ * reported with a reason.
2899
+ */
2900
+ transferProspects(campaignId: string, request: TransferProspectsRequest): Promise<TransferProspectsResponse>;
2543
2901
  /**
2544
2902
  * Remove a prospect from a campaign.
2545
2903
  */
@@ -5044,6 +5402,7 @@ declare class ResponsesResource {
5044
5402
  private _validateCriteriaDefinitions;
5045
5403
  private _validateCriteriaClassification;
5046
5404
  private _validateCompetitorPostEngagementParams;
5405
+ private _validateCompetitorRepEngagementParams;
5047
5406
  private _validateCriteriaParams;
5048
5407
  private _validateFileReference;
5049
5408
  /**
@@ -5271,6 +5630,88 @@ declare class ResponsesResource {
5271
5630
  */
5272
5631
  maxCommentsPerPost?: number;
5273
5632
  }): Promise<CreateResponseResponse>;
5633
+ /**
5634
+ * Find a competitor's sales reps and surface the AUTHORS of the LinkedIn posts
5635
+ * those reps engage with — i.e. the prospects the competitor is actively
5636
+ * selling to. The INVERSE of {@link competitorPostEngagement}.
5637
+ *
5638
+ * **Discovery mode** — pass `company`: ReAct discovers competitors, then crawls
5639
+ * each one's reps and harvests their outgoing engagement.
5640
+ *
5641
+ * **Explicit mode** — pass `competitors`: skips discovery, uses your list.
5642
+ *
5643
+ * Requires `FIBER_API_KEY` + `CRUSTDATA_API_KEY`.
5644
+ *
5645
+ * @param query - Persona prompt for the prospect-authors (e.g. "VP Eng at AI-native startups…")
5646
+ * @param options - Exactly one of `company` or `competitors` is required
5647
+ * @returns Response; poll with `get()` then read `structuredResponse` as
5648
+ * {@link CompetitorRepEngagementOutput}. See `src/types/competitor-rep-engagement.ts`
5649
+ * for the full agent reference (pipeline, API keys, engagementData shape).
5650
+ */
5651
+ competitorRepEngagement(query: string, options: {
5652
+ /** Seed company domain/name — triggers competitor discovery ReAct */
5653
+ company?: string;
5654
+ /** Explicit competitor domains/names — skips discovery */
5655
+ competitors?: string[];
5656
+ /**
5657
+ * What the seed company does — disambiguates ambiguous domains in discovery.
5658
+ * @example 'AI-powered outbound automation for B2B sales'
5659
+ */
5660
+ companyContext?: string;
5661
+ /**
5662
+ * Known-good competitors to anchor discovery vertical.
5663
+ * @example ['outreach.io', 'apollo.io']
5664
+ */
5665
+ companyExamples?: string[];
5666
+ /** Final scored candidate cap @default 100 @minimum 1 @maximum 1000 */
5667
+ limit?: number;
5668
+ /**
5669
+ * How far back to look at each rep's OUTGOING engagement @default 'past-month'.
5670
+ * Longer windows (past-2-years/past-3-years) apply fully here.
5671
+ */
5672
+ postsDateRange?: PostsDateRange;
5673
+ /**
5674
+ * Which OUTGOING engagement signals to harvest from each rep
5675
+ * (reactor → reacted-to posts, commenter → commented-on posts).
5676
+ * @default ['reactor', 'commenter']
5677
+ */
5678
+ engagementTypes?: PostEngagementType[];
5679
+ /**
5680
+ * Override the default sales-rep title list used to find competitor reps.
5681
+ * @example ['Account Executive', 'SDR', 'Account Manager']
5682
+ */
5683
+ repTitles?: string[];
5684
+ /** Max sales reps to crawl per competitor @default 20 @maximum 100 */
5685
+ maxRepsPerCompetitor?: number;
5686
+ /**
5687
+ * Max outgoing engagements (reactions + comments) harvested per rep.
5688
+ * @default 100 @maximum 1000
5689
+ */
5690
+ maxEngagementsPerRep?: number;
5691
+ /**
5692
+ * Only mine engagement from after a rep joined the competitor
5693
+ * (effective lookback = min(postsDateRange, time-since-joined)).
5694
+ * @default true
5695
+ */
5696
+ restrictEngagementToTenure?: boolean;
5697
+ /**
5698
+ * Filter out authors currently employed at analyzed competitors @default true.
5699
+ * Reps themselves are always dropped.
5700
+ */
5701
+ excludeCompetitorEmployees?: boolean;
5702
+ /**
5703
+ * In explicit-competitors mode, also run a names-only discovery to build a
5704
+ * broader employee-exclusion set across the vertical @default true.
5705
+ */
5706
+ expandExclusionViaDiscovery?: boolean;
5707
+ /** Cap after discovery engagement ranking @default 10 @maximum 50 */
5708
+ maxCompetitors?: number;
5709
+ /**
5710
+ * Enrich the full author pool BEFORE the LLM prefilter cuts it (~20x cost).
5711
+ * @default false
5712
+ */
5713
+ thoroughEnrichment?: boolean;
5714
+ }): Promise<CreateResponseResponse>;
5274
5715
  }
5275
5716
 
5276
5717
  /**
@@ -6769,4 +7210,4 @@ declare class ProgressTracker {
6769
7210
  */
6770
7211
  declare function verifyWebhookSignature(payload: string, signature: string, secret: string): boolean;
6771
7212
 
6772
- export { ACTION_DELAYS, type ActionLimit, type ActiveHours, type AddAndRunCriterionRequest, type AddCriterionRequest, type AddOrgMemberRequest, type AddOrgMemberResponse, type AddPersonaRequest, type AddPersonaResponse, type AddProspectsRequest, type AddProspectsResponse, type AgentConfig, type AgentCostStats, type ApiKeyMode, type ApiKeyModeRequest, type ApiKeyModeResponse, type ApiProvider, type AppEnabledResponse, type AppliedFilters, type ApprovalActionRequest, type ApprovalItem, type ApprovalListResponse, type ApprovalMode, type ApprovalResponse, type ApprovalSettings, type ApprovalStatus, type ApprovalsParams, type ApprovalsRequestItem, type ApprovalsResponseItem, type ApproveStepRequest, type AppsListResponse, type ArtifactObject, type ArtifactsListResponse, AuthenticationError, type BaseResource, type BatchCheckConnectionRequest, type BatchCheckPriorContactRequest, type BatchCheckPriorContactResponse, type BatchConnectionRequest, type BatchConnectionResponse, type BatchConnectionStatus, type BatchConnectionStatusResponse, type BatchDraftCompleteData, type BatchDraftCreatedData, type BatchDraftErrorData, type BatchDraftJobProgress, type BatchDraftJobResponse, type BatchDraftJobStartedData, type BatchDraftJobStatusResponse, type BatchDraftProgressData, type BatchDraftRequest, type BatchDraftResponse, type BatchDraftStreamCallbacks, type BatchDraftStreamEvent, type BatchDraftStreamEventType, type BatchExecutionInclude, type BatchExecutionRequest, type BatchExecutionResponse, BatchJobStatus, type BatchPollRequest, type BatchPollResponse, type BatchProspectIdentifier, type BatchRequestItem, type BatchRequestType, type BatchResponseItem, type BatchSendRequest, type BatchSendResponse, type BatchStepMetric, type BillingStatus, type BulkApprovalAction, type BulkApprovalFailure, type BulkApprovalRequest, type BulkApprovalResponse, type BulkCompleteFailure, type BulkCompleteRequest, type BulkCompleteResponse, type BulkDeleteRequest, type BulkDeleteResponse, type BulkOperationRequest, type BulkOperationResponse, type BulkUploadResponse, CONTENT_LIMITS, CONTENT_LIMITS_MAP, type CampaignActionListResponse, type CampaignActionResponse, type CampaignActionStatus, type CampaignActionType, type CampaignBulkApprovalAction, type CampaignBulkApprovalItem, type CampaignBulkApprovalRequest, type CampaignBulkApprovalResponse, type CampaignBulkApprovalResult, type CampaignCreate, type CampaignGuardrails, type CampaignListResponse, type CampaignMetricsResponse, type CampaignOutcomeType, type CampaignProspectDetailResponse, type CampaignProspectInput, type CampaignProspectResponse, type CampaignProspectState, type CampaignResponse, type CampaignStatus, type CampaignUpdate, CampaignsResource, type CancelDraftResponse, type CancelQueuedRequest, type CancelResponseResponse, type ChannelContactHistory, ChannelType, type CheckAppEnabledParams, type CheckLinkedInConnectionRequest, type CheckPriorContactRequest, type CheckPriorContactResponse, type ChunkingStrategy, type CompetitorPostEngagementOutput, type CompleteExecutionRequest, type CompleteExecutionResponse, type ConnectionAcceptedData, type ConnectionCallbackRequest, type ConnectionCallbackResponse, type ConnectionInfo, type ConnectionStatus, type ConnectionStatusResponse, type ConnectionSummary, type ConnectionsSyncStatus, type ContactDetailsInput, type ContactEnrichPersonInput, type ContactEnrichPersonResult, type ContactEnrichRequest, type ContactEnrichResponse, type ContactHistorySyncStatus, type ContactRelationshipProvider, type ContactRelationshipResponse, type ContactRelationshipStatus, ContactRelationshipsResource, type ContactScore, type ContentLimit, type ContentSource, type ContentType, type ConversationDetail, ConversationStatus, type ConversationSummary, type CreateDraftRequest, type CreateFeedbackRequest, type CreateFeedbackResponse, type CreateResponseRequest, type CreateResponseResponse, type CreateThreadRequest, type CriteriaClassification, type CriteriaMetadata, type CriterionDefinition, type CriterionResult, type CriterionType, type CrmMatchBatchRequest, type CrmMatchBatchResponse, type CrmMatchedProspect, type CrmProvider, CrmResource, type CrmSyncProspectRequest, type CrmSyncProspectResponse, DAILY_INMAIL_LIMITS, DEFAULT_SUBSCRIPTION_TYPE, type DatabaseStatus, type DeepPeopleSearchOutput, type DeepSearchPreview, type DeepSearchStats, type DeleteApiKeyResponse, type DeleteConnectionsResponse, type DeleteConversationResponse, type DeleteConversationsByProjectResponse, type DisconnectRequest, type DisconnectResponse, type DiscoveryTrace, type DraftResponse, type DraftSendOverride, DraftStatus, type DuplicateHandling, type DuplicateTemplateRequest, type EditQueuedRequest, type Email, type EmailAction, type EmailOnboardRequest, type EmailOnboardResponse, type EmailOnboardStatusResponse, type EmailOrgHealthResponse, type EmailOrgListResponse, type EmailOrgSettingsResponse, type EmailOrgSettingsUpdate, type EmailOrgSummary, EmailResource, type EmailSenderPersona, type EmailThreadSummary, type EngagementStatus, type EngagementStatusData, type EngagementStatusRequest, type EngagementStatusResponse, EnrichmentResource, type ErrorDetail, type ErrorResponse, type ErrorResponseItem, type EvidenceSource, type ExecutionDetailResponse, type ExecutionEvent, type ExecutionEventData, type ExecutionListResponse, type ExecutionMetricsOptions, type ExecutionMetricsResponse, type ExecutionStatus, type ExecutionSummary, type ExecutionSummaryExtended, type ExecutionsParams, type ExecutionsRequestItem, type ExecutionsResponseItem, ExternalAPIKeysResource, type ExternalApiKeyResponse, type FeedbackListResponse, type FeedbackObject, type FeedbackType, type FileAttachment, type FileChunk, type FileContentResponse, type FileListResponse, type FileMetadata, type FileScope, type FileScopeUpdateRequest, type FileSearchRequest, type FileSearchResponse, type FileSearchResult, type FileStatisticsResponse, type FileUploadResponse, FilesResource, type FilterLogic, type FilterValue, type FunnelStage, type GetConnectionStatusParams, type GetContactRelationshipsOptions, type GetToolsRequest, type GetToolsResponse, type GetUserConnectionsParams, type InitiateConnectionRequest, type InitiateConnectionResponse, type InmailSubscription, IntegrationsResource, InternalServerError, LINKEDIN_LIMITS, type LifecycleOperationRequest, type LifecycleOperationResponse, type LinkAssetsRequest, type LinkedAssetsResponse, type LinkedInAccountInfoResponse, type LinkedInAccountRateLimits, type LinkedInAccountRateLimitsResponse, type LinkedInAccountRateLimitsUpdate, type LinkedInAction, type LinkedInConnectionStatus, type LinkedInCreditsResponse, type LinkedInLimitSubscriptionType, type LinkedInLimits, type LinkedInSendRequest, type LinkedInSubscriptionInfo, LinkedInSubscriptionType, type LinkedInSyncStatusResponse, type ListApprovalsOptions, type ListAssetsOptions, type ListCampaignActionsOptions, type ListCampaignProspectsOptions, type ListCampaignsOptions, type ListExecutionsOptions, type ListPendingApprovalsOptions, type ListPlaybooksOptions, type ListProvidersResponse, type ListStepExecutionsOptions, type ListTemplatesOptions, LocalFileNotSupportedError, LumnisClient, type LumnisClientOptions, LumnisError, type LumnisErrorOptions, type MCPScope, type MCPServerCreateRequest, type MCPServerListResponse, type MCPServerResponse, type MCPServerUpdateRequest, MCPServersResource, type MCPToolListResponse, type MCPToolResponse, type MCPTransport, type Message, type MessageReceivedData, type MessageResponse, type MessageSentData, MessageType, MessagingAPIError, MessagingConnectionError, MessagingNotFoundError, MessagingResource, MessagingSendError, MessagingValidationError, type MetricsParams, type MetricsRequestItem, type MetricsResponseItem, type ModelAvailability, type ModelOverrides, type ModelPreferenceCreate, type ModelPreferencesBulkUpdate, ModelPreferencesResource, type ModelProvider, type ModelType, NetworkDistance, NoDataSourcesError, NotFoundError, type OnFailure, type OutcomeType, type OutreachAssetCreate, type OutreachAssetResponse, type OutreachAssetType, type OutreachAssetUpdate, OutreachMethod, type PaginationInfo, type PaginationParams, type PauseResumeQueuedRequest, type PendingApprovalExtended, PeopleDataSource, PeopleResource, type PeopleSearchRequest, type PeopleSearchResponse, type PersonResult, type Plan, type PlaybookCreate, type PlaybookGenerateJobResponse, type PlaybookGenerateJobStatusResponse, type PlaybookGenerateRequest, type PlaybookResponse, type PlaybookUpdate, type PlaybookVersionResponse, type PostEngagementData, type PostEngagementProvenance, type PostEngagementType, type PostPreviewRequest, type PostPreviewResponse, type PostPreviewResult, type PostsDateRange, type PostsSearchStats, type PriorContactMessage, type ProcessingStatus, type ProcessingStatusResponse, type ProgressEntry, ProgressTracker, type ProjectApprovalsData, type ProjectExecutionsData, type ProjectMetricsData, type ProspectConnectionCheck, type ProspectInfo, type ProspectInput, type ProspectPriorContactResult, type ProspectSyncIdentifier, type ProspectSyncResult, type ProspectWarning, ProviderType, QueueItemStatus, type QuickPeopleSearchOutput, RATE_LIMIT_COOLDOWNS, type RateLimitData, RateLimitError, type RateLimitErrorOptions, type RateLimitInfo$1 as RateLimitInfo, type RateLimitStatusResponse, type RateLimitsParams, type RateLimitsRequestItem, type RateLimitsResponseItem, type RecordOutcomeRequest, type RejectActionRequest, type RejectStepRequest, type RemoveOrgMemberResponse, type ReplySentiment, type ResolvedCompetitorTarget, type ResponseArtifact, type ResponseListResponse, type ResponseObject, type ResponseStatus, ResponsesResource, SEQUENCE_RATE_LIMITS, type SalaryRange, type Scope, type SelectedSkill, type SendMessageRequest, type SendMessageResponse, type SendReplyRequest, type SendResult, type SenderPersonaInput, type SequenceAction, type SequenceApprovalNeededData, type SequenceChannel, type SequenceEventType, type SequenceExecutionCompletedData, type SequenceExecutionFailedData, type SequenceRateLimitAction, type SequenceStepCompletedData, type SequenceTemplateCreate, type SequenceTemplateResponse, type SequenceTemplateUpdate, SequencesResource, SharePermission, type SkillAnalyticsRequest, type SkillEffectivenessMetrics, type SkillGuidelineBase, type SkillGuidelineCreate, type SkillGuidelineListResponse, type SkillGuidelineResponse, type SkillGuidelineUpdate, type SkillRetrievalMetadata, type SkillUsageBase, type SkillUsageCreate, type SkillUsageListResponse, type SkillUsageResponse, type SkillUsageUpdate, SkillsResource, type SkipActionRequest, type SkipStepRequest, type SkipStepResponse, type SkippedProspect, SourcesNotAvailableError, type SpecializedAgentParams, type SpecializedAgentType, type StartExecutionRequest, type StartExecutionResponse, type StepConfig, type StepExecutionItem, type StepExecutionListResponse, type StepExecutionStatus, type StepHistoryEntry, type StepMetric, type StoppedBreakdown, type StoreApiKeyRequest, type StructuredResponse, type SyncJobResponse, SyncJobStatus, SyncPhaseStatus, type SyncProspectRequest, type SyncProspectResponse, type SyncRequest, type SyncStats, type TeardownOrgResponse, type TemplateShareConfig, type TemplateShareInfo, type TemplateShareRequest, type TemplateSharesResponse, type TenantDetailsResponse, TenantInfoResource, type TenantModelPreference, type TenantModelPreferencesResponse, type TestConnectionResponse, type ThreadListResponse, type ThreadObject, type ThreadResponsesParams, ThreadsResource, type ToolInfo, type TransitionCondition, type TransitionConditionOperator, type TransitionConditionType, type TransitionConfig, type TransitionEventParams, type TriggerSyncResponse, UNIPILE_RATE_LIMIT_ERRORS, UNIPILE_SAFE_LIMITS, type UUID, type UnlinkConversationsResponse, type UpdateAppStatusParams, type UpdateAppStatusResponse, type UpdateDraftRequest, type UpdateLinkedInSubscriptionRequest, type UpdatePersonaRequest, type UpdatePersonaResponse, type UpdateStepExecutionRequest, type UpdateStepExecutionResponse, type UpdateThreadRequest, type UserConnectionsResponse, type UserCreateRequest, type UserDeleteResponse, type UserIdentifier, type UserListResponse, type UserResponse, type UserUpdateRequest, UsersResource, VALID_EVENT_TYPES, type ValidatedCandidate, ValidationError, type ValidationIssue, type ValidationResponse, type WebhookEvent, type WebhookPayload, canSendInmail, displayProgress, formatProgressEntry, getBestSubscriptionForAction, getConnectionRequestLimit, getContentLimit, getDailyInmailLimit, getDefaultDailyLimits, getInmailAllowance, getLimits, getMessageLimit, getRateLimit, hasOpenProfileMessages, isRecruiterSubscription, normalizeAction, verifyWebhookSignature };
7213
+ export { ACTION_DELAYS, type ActionLimit, type ActiveHours, type AddAndRunCriterionRequest, type AddCriterionRequest, type AddOrgMemberRequest, type AddOrgMemberResponse, type AddPersonaRequest, type AddPersonaResponse, type AddProspectsRequest, type AddProspectsResponse, type AgentConfig, type AgentCostStats, type ApiKeyMode, type ApiKeyModeRequest, type ApiKeyModeResponse, type ApiProvider, type AppEnabledResponse, type AppliedFilters, type ApprovalActionRequest, type ApprovalItem, type ApprovalListResponse, type ApprovalMode, type ApprovalResponse, type ApprovalSettings, type ApprovalStatus, type ApprovalsParams, type ApprovalsRequestItem, type ApprovalsResponseItem, type ApproveStepRequest, type AppsListResponse, type ArtifactObject, type ArtifactsListResponse, AuthenticationError, type BaseResource, type BatchCheckConnectionRequest, type BatchCheckPriorContactRequest, type BatchCheckPriorContactResponse, type BatchConnectionRequest, type BatchConnectionResponse, type BatchConnectionStatus, type BatchConnectionStatusResponse, type BatchDraftCompleteData, type BatchDraftCreatedData, type BatchDraftErrorData, type BatchDraftJobProgress, type BatchDraftJobResponse, type BatchDraftJobStartedData, type BatchDraftJobStatusResponse, type BatchDraftProgressData, type BatchDraftRequest, type BatchDraftResponse, type BatchDraftStreamCallbacks, type BatchDraftStreamEvent, type BatchDraftStreamEventType, type BatchExecutionInclude, type BatchExecutionRequest, type BatchExecutionResponse, BatchJobStatus, type BatchPollRequest, type BatchPollResponse, type BatchProspectIdentifier, type BatchRequestItem, type BatchRequestType, type BatchResponseItem, type BatchSendRequest, type BatchSendResponse, type BatchStepMetric, type BillingStatus, type BulkApprovalAction, type BulkApprovalFailure, type BulkApprovalRequest, type BulkApprovalResponse, type BulkCompleteFailure, type BulkCompleteRequest, type BulkCompleteResponse, type BulkDeleteRequest, type BulkDeleteResponse, type BulkOperationRequest, type BulkOperationResponse, type BulkUploadResponse, CONTENT_LIMITS, CONTENT_LIMITS_MAP, type CampaignActionListResponse, type CampaignActionResponse, type CampaignActionStatus, type CampaignActionType, type CampaignBulkApprovalAction, type CampaignBulkApprovalItem, type CampaignBulkApprovalRequest, type CampaignBulkApprovalResponse, type CampaignBulkApprovalResult, type CampaignCreate, type CampaignGuardrails, type CampaignListResponse, type CampaignMetricsResponse, type CampaignOutcomeType, type CampaignProspectDetailResponse, type CampaignProspectInput, type CampaignProspectResponse, type CampaignProspectState, type CampaignResponse, type CampaignStatus, type CampaignUpdate, CampaignsResource, type CancelDraftResponse, type CancelQueuedRequest, type CancelResponseResponse, type ChannelContactHistory, ChannelType, type CheckAppEnabledParams, type CheckLinkedInConnectionRequest, type CheckPriorContactRequest, type CheckPriorContactResponse, type ChunkingStrategy, type CompetitorPostEngagementOutput, type CompetitorRepEngagementOutput, type CompleteExecutionRequest, type CompleteExecutionResponse, type ConnectionAcceptedData, type ConnectionCallbackRequest, type ConnectionCallbackResponse, type ConnectionInfo, type ConnectionStatus, type ConnectionStatusResponse, type ConnectionSummary, type ConnectionsSyncStatus, type ContactDetailsInput, type ContactEnrichPersonInput, type ContactEnrichPersonResult, type ContactEnrichRequest, type ContactEnrichResponse, type ContactHistorySyncStatus, type ContactRelationshipProvider, type ContactRelationshipResponse, type ContactRelationshipStatus, ContactRelationshipsResource, type ContactScore, type ContentLimit, type ContentSource, type ContentType, type ConversationDetail, ConversationStatus, type ConversationSummary, type CreateDraftRequest, type CreateFeedbackRequest, type CreateFeedbackResponse, type CreateResponseRequest, type CreateResponseResponse, type CreateThreadRequest, type CriteriaClassification, type CriteriaMetadata, type CriterionDefinition, type CriterionResult, type CriterionType, type CrmMatchBatchRequest, type CrmMatchBatchResponse, type CrmMatchedProspect, type CrmProvider, CrmResource, type CrmSyncProspectRequest, type CrmSyncProspectResponse, DAILY_INMAIL_LIMITS, DEFAULT_SUBSCRIPTION_TYPE, type DatabaseStatus, type DeepPeopleSearchOutput, type DeepSearchPreview, type DeepSearchStats, type DeleteApiKeyResponse, type DeleteConnectionsResponse, type DeleteConversationResponse, type DeleteConversationsByProjectResponse, type DisconnectRequest, type DisconnectResponse, type DiscoveryTrace, type DraftResponse, type DraftSendOverride, DraftStatus, type DuplicateHandling, type DuplicateTemplateRequest, type EditQueuedRequest, type Email, type EmailAction, type EmailOnboardRequest, type EmailOnboardResponse, type EmailOnboardStatusResponse, type EmailOrgHealthResponse, type EmailOrgListResponse, type EmailOrgSettingsResponse, type EmailOrgSettingsUpdate, type EmailOrgSummary, EmailResource, type EmailSenderPersona, type EmailThreadSummary, type EngagementStatus, type EngagementStatusData, type EngagementStatusRequest, type EngagementStatusResponse, EnrichmentResource, type ErrorDetail, type ErrorResponse, type ErrorResponseItem, type EvidenceSource, type ExecutionDetailResponse, type ExecutionEvent, type ExecutionEventData, type ExecutionListResponse, type ExecutionMetricsOptions, type ExecutionMetricsResponse, type ExecutionStatus, type ExecutionSummary, type ExecutionSummaryExtended, type ExecutionsParams, type ExecutionsRequestItem, type ExecutionsResponseItem, ExternalAPIKeysResource, type ExternalApiKeyResponse, type FeedbackListResponse, type FeedbackObject, type FeedbackType, type FileAttachment, type FileChunk, type FileContentResponse, type FileListResponse, type FileMetadata, type FileScope, type FileScopeUpdateRequest, type FileSearchRequest, type FileSearchResponse, type FileSearchResult, type FileStatisticsResponse, type FileUploadResponse, FilesResource, type FilterLogic, type FilterValue, type FunnelStage, type GetConnectionStatusParams, type GetContactRelationshipsOptions, type GetToolsRequest, type GetToolsResponse, type GetUserConnectionsParams, type InitiateConnectionRequest, type InitiateConnectionResponse, type InmailSubscription, IntegrationsResource, type IntentSignal, InternalServerError, LINKEDIN_LIMITS, type LifecycleOperationRequest, type LifecycleOperationResponse, type LinkAssetsRequest, type LinkedAssetsResponse, type LinkedInAccountInfoResponse, type LinkedInAccountRateLimits, type LinkedInAccountRateLimitsResponse, type LinkedInAccountRateLimitsUpdate, type LinkedInAction, type LinkedInConnectionStatus, type LinkedInCreditsResponse, type LinkedInLimitSubscriptionType, type LinkedInLimits, type LinkedInSendRequest, type LinkedInSubscriptionInfo, LinkedInSubscriptionType, type LinkedInSyncStatusResponse, type ListApprovalsOptions, type ListAssetsOptions, type ListCampaignActionsOptions, type ListCampaignProspectsOptions, type ListCampaignsOptions, type ListExecutionsOptions, type ListPendingApprovalsOptions, type ListPlaybooksOptions, type ListProvidersResponse, type ListStepExecutionsOptions, type ListTemplatesOptions, LocalFileNotSupportedError, LumnisClient, type LumnisClientOptions, LumnisError, type LumnisErrorOptions, type MCPScope, type MCPServerCreateRequest, type MCPServerListResponse, type MCPServerResponse, type MCPServerUpdateRequest, MCPServersResource, type MCPToolListResponse, type MCPToolResponse, type MCPTransport, type Message, type MessageReceivedData, type MessageResponse, type MessageSentData, MessageType, MessagingAPIError, MessagingConnectionError, MessagingNotFoundError, MessagingResource, MessagingSendError, MessagingValidationError, type MetricsParams, type MetricsRequestItem, type MetricsResponseItem, type ModelAvailability, type ModelOverrides, type ModelPreferenceCreate, type ModelPreferencesBulkUpdate, ModelPreferencesResource, type ModelProvider, type ModelType, NetworkDistance, NoDataSourcesError, NotFoundError, type OnFailure, type OutcomeType, type OutreachAssetCreate, type OutreachAssetResponse, type OutreachAssetType, type OutreachAssetUpdate, OutreachMethod, type PaginationInfo, type PaginationParams, type PauseResumeQueuedRequest, type PendingApprovalExtended, PeopleDataSource, PeopleResource, type PeopleSearchRequest, type PeopleSearchResponse, type PersonResult, type Plan, type PlaybookCreate, type PlaybookGenerateJobResponse, type PlaybookGenerateJobStatusResponse, type PlaybookGenerateRequest, type PlaybookResponse, type PlaybookUpdate, type PlaybookVersionResponse, type PostEngagementData, type PostEngagementProvenance, type PostEngagementType, type PostPreviewRequest, type PostPreviewResponse, type PostPreviewResult, type PostsDateRange, type PostsSearchStats, type PriorContactMessage, type ProcessingStatus, type ProcessingStatusResponse, type ProgressEntry, ProgressTracker, type ProjectApprovalsData, type ProjectExecutionsData, type ProjectMetricsData, type ProspectConnectionCheck, type ProspectInfo, type ProspectInput, type ProspectPriorContactResult, type ProspectSyncIdentifier, type ProspectSyncResult, type ProspectWarning, ProviderType, QueueItemStatus, type QuickPeopleSearchOutput, RATE_LIMIT_COOLDOWNS, type RateLimitData, RateLimitError, type RateLimitErrorOptions, type RateLimitInfo$1 as RateLimitInfo, type RateLimitStatusResponse, type RateLimitsParams, type RateLimitsRequestItem, type RateLimitsResponseItem, type RecordOutcomeRequest, type RejectActionRequest, type RejectStepRequest, type RemoveOrgMemberResponse, type RepEngagementData, type RepEngagementStats, type ReplySentiment, type ResolvedCompetitorTarget, type ResponseArtifact, type ResponseListResponse, type ResponseObject, type ResponseStatus, ResponsesResource, SEQUENCE_RATE_LIMITS, type SalaryRange, type Scope, type SelectedSkill, type SendMessageRequest, type SendMessageResponse, type SendReplyRequest, type SendResult, type SenderPersonaInput, type SequenceAction, type SequenceApprovalNeededData, type SequenceChannel, type SequenceEventType, type SequenceExecutionCompletedData, type SequenceExecutionFailedData, type SequenceRateLimitAction, type SequenceStepCompletedData, type SequenceTemplateCreate, type SequenceTemplateResponse, type SequenceTemplateUpdate, SequencesResource, SharePermission, type SkillAnalyticsRequest, type SkillEffectivenessMetrics, type SkillGuidelineBase, type SkillGuidelineCreate, type SkillGuidelineListResponse, type SkillGuidelineResponse, type SkillGuidelineUpdate, type SkillRetrievalMetadata, type SkillUsageBase, type SkillUsageCreate, type SkillUsageListResponse, type SkillUsageResponse, type SkillUsageUpdate, SkillsResource, type SkipActionRequest, type SkipStepRequest, type SkipStepResponse, type SkippedProspect, type SkippedTransferProspect, SourcesNotAvailableError, type SpecializedAgentParams, type SpecializedAgentType, type StartExecutionRequest, type StartExecutionResponse, type StepConfig, type StepExecutionItem, type StepExecutionListResponse, type StepExecutionStatus, type StepHistoryEntry, type StepMetric, type StoppedBreakdown, type StoreApiKeyRequest, type StructuredResponse, type SyncJobResponse, SyncJobStatus, SyncPhaseStatus, type SyncProspectRequest, type SyncProspectResponse, type SyncRequest, type SyncStats, type TeardownOrgResponse, type TemplateShareConfig, type TemplateShareInfo, type TemplateShareRequest, type TemplateSharesResponse, type TenantDetailsResponse, TenantInfoResource, type TenantModelPreference, type TenantModelPreferencesResponse, type TestConnectionResponse, type ThreadListResponse, type ThreadObject, type ThreadResponsesParams, ThreadsResource, type ToolInfo, type TransferProspectsRequest, type TransferProspectsResponse, type TransferSkipReason, type TransitionCondition, type TransitionConditionOperator, type TransitionConditionType, type TransitionConfig, type TransitionEventParams, type TriggerSyncResponse, UNIPILE_RATE_LIMIT_ERRORS, UNIPILE_SAFE_LIMITS, type UUID, type UnlinkConversationsResponse, type UpdateAppStatusParams, type UpdateAppStatusResponse, type UpdateDraftRequest, type UpdateLinkedInSubscriptionRequest, type UpdatePersonaRequest, type UpdatePersonaResponse, type UpdateStepExecutionRequest, type UpdateStepExecutionResponse, type UpdateThreadRequest, type UserConnectionsResponse, type UserCreateRequest, type UserDeleteResponse, type UserIdentifier, type UserListResponse, type UserResponse, type UserUpdateRequest, UsersResource, VALID_EVENT_TYPES, type ValidatedCandidate, ValidationError, type ValidationIssue, type ValidationResponse, type WebhookEvent, type WebhookPayload, canSendInmail, displayProgress, formatProgressEntry, getBestSubscriptionForAction, getConnectionRequestLimit, getContentLimit, getDailyInmailLimit, getDefaultDailyLimits, getInmailAllowance, getLimits, getMessageLimit, getRateLimit, hasOpenProfileMessages, isRecruiterSubscription, normalizeAction, verifyWebhookSignature };