sentisense 0.9.1 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -6,16 +6,31 @@ interface SentiSenseOptions {
6
6
  }
7
7
  interface StockPrice {
8
8
  ticker: string;
9
+ /** Regular-session price. During RTH: live last trade. Otherwise: most recent RTH close. */
9
10
  price: number;
10
11
  change: number;
11
12
  changePercent: number;
12
13
  previousClose: number;
13
14
  /** Unix timestamp in milliseconds of the price quote. */
14
15
  timestamp: number;
16
+ /** Extended-hours view (pre-market or after-hours). Null/absent during RTH, overnight, and weekends. */
17
+ extendedHours?: ExtendedHoursInfo | null;
18
+ }
19
+ /**
20
+ * Extended-hours session view embedded in price / quote responses when the snapshot sees
21
+ * pre-market (04:00–09:30 ET) or after-hours (16:00–20:00 ET) activity. `change` and
22
+ * `changePercent` are computed by the server vs the regular-session `currentPrice`.
23
+ */
24
+ interface ExtendedHoursInfo {
25
+ session: "pre" | "post";
26
+ price: number;
27
+ change: number;
28
+ changePercent: number;
15
29
  }
16
30
  /** Aggregate quote snapshot from GET /api/v1/stocks/{ticker}/quote. */
17
31
  interface StockQuote {
18
32
  ticker: string;
33
+ /** Regular-session price. During RTH: live last trade. Otherwise: most recent RTH close. */
19
34
  currentPrice: number | null;
20
35
  change: number | null;
21
36
  changePercent: number | null;
@@ -31,7 +46,8 @@ interface StockQuote {
31
46
  epsTTM: number | null;
32
47
  dividendYield: number | null;
33
48
  timestamp: number | null;
34
- extendedHours: boolean | null;
49
+ /** Extended-hours view (pre-market or after-hours). Null/absent during RTH, overnight, and weekends. */
50
+ extendedHours?: ExtendedHoursInfo | null;
35
51
  }
36
52
  interface StockDetail {
37
53
  ticker: string;
@@ -67,12 +83,20 @@ interface StockEntity {
67
83
  [key: string]: unknown;
68
84
  }
69
85
  interface ChartDataPoint {
86
+ /** Unix timestamp in milliseconds. */
87
+ timestamp?: number;
70
88
  date: string;
71
89
  open: number;
72
90
  high: number;
73
91
  low: number;
74
92
  close: number;
75
93
  volume: number;
94
+ /**
95
+ * US-equity market session: "pre" (04:00–09:30 ET), "regular" (09:30–16:00 ET),
96
+ * or "post" (16:00–20:00 ET). Populated for intraday timeframes (1D / 5D / 1W / 1M);
97
+ * `null` for daily / weekly bars (3M and longer) that span whole sessions.
98
+ */
99
+ session?: "pre" | "regular" | "post" | null;
76
100
  }
77
101
  interface ChartData {
78
102
  ticker: string;
@@ -112,7 +136,7 @@ interface AISummary {
112
136
  [key: string]: unknown;
113
137
  }
114
138
  interface GetChartOptions {
115
- timeframe?: "1M" | "3M" | "6M" | "1Y";
139
+ timeframe?: "1D" | "5D" | "1W" | "1M" | "3M" | "6M" | "1Y" | "ALL";
116
140
  }
117
141
  interface GetImagesOptions {
118
142
  forced?: boolean;
@@ -485,12 +509,157 @@ interface GetInsightsOptions {
485
509
  /** Filter by insight type (e.g., `"insider_buy_signal"`). */
486
510
  insightType?: string;
487
511
  }
512
+ /** One period value in a KPI time series. */
513
+ interface KpiDataPoint {
514
+ /** e.g. "Q2 FY2026" */
515
+ period: string;
516
+ /** ISO date, e.g. "2025-12-27" */
517
+ date: string;
518
+ value: number;
519
+ /** Preliminary flag; often null. */
520
+ isEstimate?: boolean | null;
521
+ }
522
+ /** A single KPI time series for a company. */
523
+ interface KpiSeries {
524
+ /** Stable per-ticker identifier, e.g. "iphone_revenue". */
525
+ id: string;
526
+ /** Human-readable name, e.g. "iPhone Revenue". */
527
+ name: string;
528
+ /** Logical category, e.g. "product_revenue", "segment_revenue". */
529
+ category: string;
530
+ /** Unit of measurement, e.g. "USD". */
531
+ unit: string;
532
+ /** Display hint, e.g. "currency_abbreviated". */
533
+ displayFormat: string;
534
+ /** Default chart type, e.g. "bar" or "line". */
535
+ chartType: string;
536
+ /** Time-series data points. */
537
+ values: KpiDataPoint[];
538
+ /** Citation for the source filing. */
539
+ sourceRef?: string;
540
+ /** Set when the company has stopped reporting this metric. */
541
+ discontinued?: boolean;
542
+ /** Optional human-readable note about discontinuation. */
543
+ discontinuedNote?: string;
544
+ }
545
+ /** Full KPI payload for a company. Returned by `client.stocks.getKpis`. */
546
+ interface CompanyKpisData {
547
+ ticker: string;
548
+ companyName: string;
549
+ cik?: string;
550
+ lastUpdated: string;
551
+ kpis: KpiSeries[];
552
+ }
553
+ /** Lightweight coverage entry. Returned by `client.stocks.listKpiCoverage`. */
554
+ interface KpiCoverageEntry {
555
+ ticker: string;
556
+ companyName: string;
557
+ lastUpdated: string;
558
+ kpiCount: number;
559
+ }
560
+ /** Coverage listing envelope: count + list of covered tickers. */
561
+ interface KpiCoverageResponse {
562
+ count: number;
563
+ tickers: KpiCoverageEntry[];
564
+ }
565
+ /** Lightweight KPI metadata tuple. Returned by `client.stocks.getKpiTypes`. */
566
+ interface KpiTypeEntry {
567
+ id: string;
568
+ name: string;
569
+ category: string;
570
+ chartType: string;
571
+ }
488
572
  interface KBEntity {
489
573
  entityId: string;
490
574
  name: string;
491
575
  [key: string]: unknown;
492
576
  }
493
577
 
578
+ interface AnalystConsensus {
579
+ ticker: string;
580
+ currentPrice: number | null;
581
+ targetLow: number | null;
582
+ targetMean: number | null;
583
+ targetHigh: number | null;
584
+ targetMedian: number | null;
585
+ numberOfAnalysts: number;
586
+ upsidePercent: number | null;
587
+ consensusLabel: string | null;
588
+ recommendationMean: number | null;
589
+ /** PRO-only; zero in the free preview. */
590
+ strongBuy: number;
591
+ /** PRO-only; zero in the free preview. */
592
+ buy: number;
593
+ /** PRO-only; zero in the free preview. */
594
+ hold: number;
595
+ /** PRO-only; zero in the free preview. */
596
+ sell: number;
597
+ /** PRO-only; zero in the free preview. */
598
+ strongSell: number;
599
+ updatedAt: string | null;
600
+ }
601
+ interface AnalystAction {
602
+ ticker: string;
603
+ actionDate: string;
604
+ firm: string;
605
+ /** UPGRADE, DOWNGRADE, INITIATE, REITERATE, OTHER */
606
+ actionType: string;
607
+ fromGrade: string | null;
608
+ toGrade: string | null;
609
+ }
610
+ interface AnalystEstimate {
611
+ /** Fiscal period descriptor (provider-specific shape). */
612
+ [key: string]: unknown;
613
+ }
614
+ interface AnalystEarningsSurprise {
615
+ /** Past report descriptor (provider-specific shape). */
616
+ [key: string]: unknown;
617
+ }
618
+ interface AnalystEstimatesResponse {
619
+ estimates: AnalystEstimate[];
620
+ surprises: AnalystEarningsSurprise[];
621
+ }
622
+ interface GetAnalystActionsOptions {
623
+ /** Days of history to return. Default 90. */
624
+ lookbackDays?: number;
625
+ }
626
+ interface GetAnalystMarketActivityOptions {
627
+ /** Days of history to return. Default 30. */
628
+ lookbackDays?: number;
629
+ }
630
+ /**
631
+ * Wall Street analyst coverage: aggregate price targets, recommendation distribution,
632
+ * recent upgrade/downgrade actions, and forward EPS estimates with earnings surprise history.
633
+ *
634
+ * Free users receive the price target band (low/mean/high + analyst count + consensus label)
635
+ * in full -- it powers the public projection cone. The buy/hold/sell distribution counts
636
+ * and full action/estimate history are PRO-only.
637
+ */
638
+ declare class Analyst {
639
+ private client;
640
+ constructor(client: APIClient);
641
+ /**
642
+ * Get the aggregate Wall Street consensus for a ticker. Returns 404 if no
643
+ * coverage exists.
644
+ */
645
+ consensus(ticker: string): Promise<PreviewResponse<AnalystConsensus>>;
646
+ /**
647
+ * Get recent analyst upgrade/downgrade actions for a ticker, newest first.
648
+ * Free users receive the 3 most recent.
649
+ */
650
+ actions(ticker: string, options?: GetAnalystActionsOptions): Promise<PreviewResponse<AnalystAction[]>>;
651
+ /**
652
+ * Get forward EPS estimates and earnings surprise history for a ticker.
653
+ * Free users receive 1 estimate (current quarter) plus the 2 most recent surprises.
654
+ */
655
+ estimates(ticker: string): Promise<PreviewResponse<AnalystEstimatesResponse>>;
656
+ /**
657
+ * Get market-wide recent analyst actions across all covered tickers, newest first.
658
+ * Free users receive the 5 most recent.
659
+ */
660
+ marketActivity(options?: GetAnalystMarketActivityOptions): Promise<PreviewResponse<AnalystAction[]>>;
661
+ }
662
+
494
663
  declare class Documents {
495
664
  private client;
496
665
  constructor(client: APIClient);
@@ -556,6 +725,163 @@ declare class EntityMetrics {
556
725
  getAverageSentiment(symbol: string, options?: EntityMetricsDateRange): Promise<SentimentData>;
557
726
  }
558
727
 
728
+ interface EtfInfo {
729
+ ticker: string;
730
+ name: string;
731
+ kbEntityId: string | null;
732
+ urlSlug: string | null;
733
+ issuer: string | null;
734
+ trackedIndex: string | null;
735
+ assetClass: string | null;
736
+ }
737
+ interface EtfHolding {
738
+ ticker: string;
739
+ name: string | null;
740
+ /** Weight in the fund as a percentage (0-100). */
741
+ weight_pct: number;
742
+ /** First date this holding appeared in the composition. */
743
+ first_seen: string | null;
744
+ }
745
+ interface EtfHoldings {
746
+ ticker: string;
747
+ issuer: string;
748
+ issuer_endpoint: string | null;
749
+ as_of_date: string;
750
+ fetched_at: string;
751
+ next_refresh_due: string;
752
+ total_holdings: number;
753
+ holdings: EtfHolding[];
754
+ /** True when this is a top-N view rather than the full fund. */
755
+ partial?: boolean | null;
756
+ /** Issuer's reported total holdings when `partial=true`. */
757
+ total_known_holdings?: number | null;
758
+ }
759
+ interface EtfAggregateCoverage {
760
+ holdingsCount: number;
761
+ holdingsCovered: number;
762
+ /** Sum of weights (0-100) for the covered holdings. */
763
+ weightCovered: number;
764
+ partial?: boolean | null;
765
+ totalKnownHoldings?: number | null;
766
+ }
767
+ interface WeightedConsensus {
768
+ upsidePercent: number | null;
769
+ consensusLabel: string | null;
770
+ /** Fractions of covered AUM in each bucket. Sums to ~1.0. */
771
+ distribution: Record<string, number>;
772
+ totalAnalysts: number;
773
+ }
774
+ interface EtfAnalystContributor {
775
+ ticker: string;
776
+ weightPct: number;
777
+ upsidePercent: number | null;
778
+ consensusLabel: string | null;
779
+ /** Signed contribution to the fund's weighted upside in percentage points. */
780
+ contributionPp: number;
781
+ }
782
+ interface EtfAnalystAggregate {
783
+ ticker: string;
784
+ asOfDate: string | null;
785
+ computedAt: string;
786
+ coverage: EtfAggregateCoverage;
787
+ weightedConsensus: WeightedConsensus;
788
+ /** PRO-only; null on the free preview. */
789
+ topContributors: EtfAnalystContributor[] | null;
790
+ }
791
+ interface WeightedNetFlow {
792
+ /** Weighted net dollar flow (buys - sells). Negative = net selling. */
793
+ netDollars: number;
794
+ buyDollars: number;
795
+ sellDollars: number;
796
+ /** Unweighted; for context. */
797
+ buyTradeCount: number;
798
+ /** Unweighted; for context. */
799
+ sellTradeCount: number;
800
+ distinctInsiderCount: number;
801
+ }
802
+ interface EtfInsiderContributor {
803
+ ticker: string;
804
+ weightPct: number;
805
+ /** Per-stock net flow over the window (signed). */
806
+ netDollars: number;
807
+ /** Signed contribution to the weighted headline. */
808
+ weightedNetDollars: number;
809
+ tradeCount: number;
810
+ }
811
+ interface EtfInsiderAggregate {
812
+ ticker: string;
813
+ asOfDate: string | null;
814
+ computedAt: string;
815
+ lookbackDays: number;
816
+ coverage: EtfAggregateCoverage;
817
+ weightedNetFlow: WeightedNetFlow;
818
+ /** PRO-only; null on the free preview. */
819
+ topContributors: EtfInsiderContributor[] | null;
820
+ }
821
+ interface EtfSentimentReading {
822
+ sentiSenseScore: number | null;
823
+ /** BULLISH / NEUTRAL / BEARISH. */
824
+ scoreLabel: string;
825
+ /** Epoch millis when the underlying metric was produced. */
826
+ asOfTimestamp: number | null;
827
+ }
828
+ interface EtfSentimentAggregate {
829
+ ticker: string;
830
+ asOfDate: string | null;
831
+ computedAt: string;
832
+ coverage: EtfAggregateCoverage;
833
+ /** Holdings-weighted SentiSense across the fund's constituents. */
834
+ constituentsWeighted: EtfSentimentReading;
835
+ /** Direct reading from mentions of the fund's own ticker. Null for low-mention funds. */
836
+ direct: EtfSentimentReading | null;
837
+ }
838
+ interface GetEtfInsiderAggregateOptions {
839
+ /** Trailing window for the trade aggregation. Typical values: 30, 90. Default 30. */
840
+ lookbackDays?: number;
841
+ }
842
+ /**
843
+ * ETF discovery, composition (holdings), and holdings-weighted aggregate views.
844
+ *
845
+ * Funds aren't rated by analysts directly, don't have insiders of their own, and
846
+ * may not get many direct news mentions -- but the companies inside them do. The
847
+ * aggregate endpoints synthesize fund-level views from each constituent's per-stock
848
+ * data, weighted by allocation, with a coverage block so consumers see how much of
849
+ * the fund's AUM the underlying data covered.
850
+ *
851
+ * Beta as of 2026-05-15: starting with a limited set of widely-traded funds.
852
+ */
853
+ declare class Etfs {
854
+ private client;
855
+ constructor(client: APIClient);
856
+ /**
857
+ * List every ETF tracked by SentiSense, sorted by ticker.
858
+ */
859
+ list(): Promise<EtfInfo[]>;
860
+ /**
861
+ * Get the full holdings composition for an ETF, including per-holding weights
862
+ * and freshness metadata. Returns 404 for unknown ETFs or commodity-only funds.
863
+ */
864
+ holdings(ticker: string): Promise<EtfHoldings>;
865
+ /**
866
+ * Get the holdings-weighted analyst consensus for an ETF. Free users receive
867
+ * the headline and coverage block; PRO unlocks per-holding `topContributors`.
868
+ */
869
+ analystAggregate(ticker: string): Promise<PreviewResponse<EtfAnalystAggregate>>;
870
+ /**
871
+ * Get the holdings-weighted SEC Form 4 insider aggregate for an ETF over a
872
+ * configurable trailing window. Free users receive the headline + buy/sell
873
+ * split; PRO unlocks per-holding `topContributors` with signed contribution.
874
+ */
875
+ insiderAggregate(ticker: string, options?: GetEtfInsiderAggregateOptions): Promise<PreviewResponse<EtfInsiderAggregate>>;
876
+ /**
877
+ * Get two SentiSense Score readings side-by-side: `constituentsWeighted`
878
+ * (precomputed daily weighted average across the fund's holdings) and `direct`
879
+ * (score from mentions of the fund's own ticker). The two can diverge, and the
880
+ * gap is itself information.
881
+ */
882
+ sentimentAggregate(ticker: string): Promise<PreviewResponse<EtfSentimentAggregate>>;
883
+ }
884
+
559
885
  declare class Insider {
560
886
  private client;
561
887
  constructor(client: APIClient);
@@ -610,6 +936,20 @@ declare class Politicians {
610
936
  getMember(slug: string): Promise<PreviewResponse<PoliticianDetail>>;
611
937
  }
612
938
 
939
+ interface GetStockInsightsRangeOptions {
940
+ startDate: string;
941
+ endDate: string;
942
+ urgency?: "low" | "medium" | "high";
943
+ insightType?: string;
944
+ }
945
+ interface GetLatestInsightsOptions {
946
+ limit?: number;
947
+ urgency?: "low" | "medium" | "high";
948
+ }
949
+ interface GetUserInsightsOptions {
950
+ limit?: number;
951
+ category?: string;
952
+ }
613
953
  declare class Insights {
614
954
  private client;
615
955
  constructor(client: APIClient);
@@ -622,6 +962,13 @@ declare class Insights {
622
962
  * (type, urgency, timestamp) showing what additional signals exist.
623
963
  */
624
964
  stock(ticker: string, options?: GetInsightsOptions): Promise<Insight[] | InsightPreviewResponse>;
965
+ /**
966
+ * Get AI insights for a stock within a date range.
967
+ *
968
+ * Free users receive the top 3; PRO users receive the full list.
969
+ * The server returns 400 if `startDate` is after `endDate`.
970
+ */
971
+ stockRange(ticker: string, options: GetStockInsightsRangeOptions): Promise<Insight[] | InsightPreviewResponse>;
625
972
  /**
626
973
  * Get AI-generated market-level insights, sorted by urgency then confidence.
627
974
  *
@@ -630,6 +977,19 @@ declare class Insights {
630
977
  * the top 5 insights in full, and a `locked` array with metadata-only entries.
631
978
  */
632
979
  market(): Promise<Insight[] | InsightPreviewResponse>;
980
+ /**
981
+ * Get the latest AI insights across all tracked stocks, newest first.
982
+ *
983
+ * Free users receive the top 5; PRO users receive up to `limit` (clamped to 1-200).
984
+ */
985
+ latest(options?: GetLatestInsightsOptions): Promise<Insight[] | InsightPreviewResponse>;
986
+ /**
987
+ * Get personalized insights for the authenticated user.
988
+ *
989
+ * Biased toward the user's watchlist and portfolio when available; falls back
990
+ * to market-level insights otherwise. API key authentication required.
991
+ */
992
+ user(options?: GetUserInsightsOptions): Promise<Insight[] | InsightPreviewResponse>;
633
993
  /**
634
994
  * Get available insight types for a specific stock.
635
995
  * No authentication required.
@@ -650,6 +1010,15 @@ declare class Institutional {
650
1010
  getHolders(ticker: string, reportDate: string): Promise<Holder[]>;
651
1011
  /** Get activist investor positions (NEW or INCREASED). */
652
1012
  getActivists(reportDate: string): Promise<Holder[]>;
1013
+ /**
1014
+ * Get the full profile, summary stats, and current-quarter holdings for a
1015
+ * specific institutional filer.
1016
+ *
1017
+ * Resolved by URL slug (e.g. `Berkshire-Hathaway`) or numeric SEC CIK.
1018
+ * Free users receive the profile and top 10 holdings; PRO users receive the
1019
+ * full holdings array. Returns 404 if the slug or CIK is unknown.
1020
+ */
1021
+ getInstitutionDetail(slugOrCik: string): Promise<unknown>;
653
1022
  }
654
1023
 
655
1024
  declare class KB {
@@ -732,11 +1101,41 @@ declare class Stocks {
732
1101
  getFloat(ticker: string): Promise<FloatInfo>;
733
1102
  /** Get short volume trading data. */
734
1103
  getShortVolume(ticker: string): Promise<ShortVolume>;
1104
+ /**
1105
+ * Get company-specific KPI time-series for a ticker. Returns curated GAAP and
1106
+ * non-GAAP metrics from earnings filings (e.g. iPhone unit sales, Tesla deliveries,
1107
+ * AWS revenue).
1108
+ *
1109
+ * Free users receive metadata only with an empty `kpis` list; PRO users receive
1110
+ * the full series. Returns 404 for tickers that do not yet have curated coverage.
1111
+ *
1112
+ * Coverage today: near-complete for the S&P 500 plus extended universe
1113
+ * (~500 tickers). Use `listKpiCoverage()` to enumerate.
1114
+ */
1115
+ getKpis(ticker: string): Promise<PreviewResponse<CompanyKpisData>>;
1116
+ /**
1117
+ * List every ticker with curated KPI coverage. Returns `{count, tickers: [...]}`
1118
+ * with lightweight metadata (ticker, companyName, lastUpdated, kpiCount).
1119
+ * Sorted alphabetically by ticker.
1120
+ *
1121
+ * Auth: API key required, but the call does NOT consume your monthly quota
1122
+ * (rate-limit-per-minute still applies). [COMP-421]
1123
+ */
1124
+ listKpiCoverage(): Promise<KpiCoverageResponse>;
1125
+ /**
1126
+ * List the KPI metadata tuples available for a ticker — `id, name, category,
1127
+ * chartType` — without paying the cost of the full series payload. Mirrors
1128
+ * the `/api/v1/insights/stock/{ticker}/types` precedent.
1129
+ *
1130
+ * Auth: API key required, no quota cost. 404 if the ticker has no curated KPIs.
1131
+ */
1132
+ getKpiTypes(ticker: string): Promise<KpiTypeEntry[]>;
735
1133
  }
736
1134
 
737
1135
  /** @internal HTTP interface exposed to resource classes. */
738
1136
  interface APIClient {
739
1137
  get<T = unknown>(path: string, params?: object): Promise<T>;
1138
+ post<T = unknown>(path: string, body: unknown): Promise<T>;
740
1139
  }
741
1140
  declare class SentiSense implements APIClient {
742
1141
  private baseUrl;
@@ -745,10 +1144,12 @@ declare class SentiSense implements APIClient {
745
1144
  private maxRetries;
746
1145
  readonly stocks: Stocks;
747
1146
  readonly documents: Documents;
1147
+ readonly etfs: Etfs;
748
1148
  readonly institutional: Institutional;
749
1149
  readonly insider: Insider;
750
1150
  readonly politicians: Politicians;
751
1151
  readonly insights: Insights;
1152
+ readonly analyst: Analyst;
752
1153
  readonly entityMetrics: EntityMetrics;
753
1154
  readonly marketMood: MarketMoodResource;
754
1155
  readonly marketSummary: MarketSummaryResource;
@@ -756,6 +1157,8 @@ declare class SentiSense implements APIClient {
756
1157
  constructor(options?: SentiSenseOptions);
757
1158
  /** @internal */
758
1159
  get<T = unknown>(path: string, params?: object): Promise<T>;
1160
+ /** @internal */
1161
+ post<T = unknown>(path: string, body: unknown): Promise<T>;
759
1162
  private buildUrl;
760
1163
  private handleErrorResponse;
761
1164
  }
@@ -779,6 +1182,6 @@ declare class APIError extends SentiSenseError {
779
1182
  constructor(message: string, status: number, code?: string);
780
1183
  }
781
1184
 
782
- declare const VERSION = "0.9.1";
1185
+ declare const VERSION = "0.14.0";
783
1186
 
784
- export { type AISummary, APIError, AuthenticationError, type ChartData, type ChartDataPoint, type ClusterBuy, type CongressTrade, type Document, type DocumentSource, type FloatInfo, type Fundamentals, type FundamentalsPeriod, type GetInsiderOptions, type GetInsightsOptions, type GetPoliticiansOptions, type Holder, type InsiderActivityResponse, type InsiderActivitySummary, type InsiderTrade, type Insight, type InsightPreviewResponse, type InstitutionalFlow, type InstitutionalFlowsResponse, type KBEntity, type LockedInsight, type MarketMood, type MarketStatus, type MarketSummary, type MentionCount, type MentionData, type MetricDistribution, type MetricDistributionOptions, type MetricType, type MetricsBreakdown, type MetricsOptions, NotFoundError, type PoliticianDetail, type PoliticianSummary, type PreviewResponse, type Quarter, RateLimitError, SentiSense, SentiSenseError, type SentiSenseOptions, type SentimentData, type SentimentEntry, type ServingMetric, type ShortInterest, type ShortVolume, type SimilarStock, type StockDetail, type StockEntity, type StockImage, type StockPrice, type StockProfile, type StockQuote, type Story, type StoryCluster, VERSION, SentiSense as default };
1187
+ export { type AISummary, APIError, type AnalystAction, type AnalystConsensus, type AnalystEarningsSurprise, type AnalystEstimate, type AnalystEstimatesResponse, AuthenticationError, type ChartData, type ChartDataPoint, type ClusterBuy, type CompanyKpisData, type CongressTrade, type Document, type DocumentSource, type EtfAggregateCoverage, type EtfAnalystAggregate, type EtfAnalystContributor, type EtfHolding, type EtfHoldings, type EtfInfo, type EtfInsiderAggregate, type EtfInsiderContributor, type EtfSentimentAggregate, type EtfSentimentReading, type FloatInfo, type Fundamentals, type FundamentalsPeriod, type GetAnalystActionsOptions, type GetAnalystMarketActivityOptions, type GetEtfInsiderAggregateOptions, type GetInsiderOptions, type GetInsightsOptions, type GetLatestInsightsOptions, type GetPoliticiansOptions, type GetStockInsightsRangeOptions, type GetUserInsightsOptions, type Holder, type InsiderActivityResponse, type InsiderActivitySummary, type InsiderTrade, type Insight, type InsightPreviewResponse, type InstitutionalFlow, type InstitutionalFlowsResponse, type KBEntity, type KpiCoverageEntry, type KpiCoverageResponse, type KpiDataPoint, type KpiSeries, type KpiTypeEntry, type LockedInsight, type MarketMood, type MarketStatus, type MarketSummary, type MentionCount, type MentionData, type MetricDistribution, type MetricDistributionOptions, type MetricType, type MetricsBreakdown, type MetricsOptions, NotFoundError, type PoliticianDetail, type PoliticianSummary, type PreviewResponse, type Quarter, RateLimitError, SentiSense, SentiSenseError, type SentiSenseOptions, type SentimentData, type SentimentEntry, type ServingMetric, type ShortInterest, type ShortVolume, type SimilarStock, type StockDetail, type StockEntity, type StockImage, type StockPrice, type StockProfile, type StockQuote, type Story, type StoryCluster, VERSION, type WeightedConsensus, type WeightedNetFlow, SentiSense as default };