diff options
Diffstat (limited to 'frontend/types')
| -rw-r--r-- | frontend/types/api.ts | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/frontend/types/api.ts b/frontend/types/api.ts new file mode 100644 index 0000000..679ada9 --- /dev/null +++ b/frontend/types/api.ts @@ -0,0 +1,85 @@ +export type SearchResult = { + symbol: string; + name: string; + exchange?: string | null; +}; + +export type Quote = { + price?: number | null; + prev_close?: number | null; + change?: number | null; + change_pct?: number | null; +}; + +export type MarketIndex = { + name: string; + price?: number | null; + change_pct?: number | null; +}; + +export type Signal = { + key: string; + state: "pos" | "warn" | "neg" | "neu"; + value: string; + description: string; +}; + +export type TickerOverview = { + profile: { + symbol: string; + name: string; + sector?: string | null; + industry?: string | null; + exchange?: string | null; + website?: string | null; + summary?: string | null; + }; + quote: Quote; + signals: Signal[]; + stats: { + market_cap?: number | null; + trailing_pe?: number | null; + trailing_eps?: number | null; + volume?: number | null; + average_volume?: number | null; + beta?: number | null; + }; + range_52w: { + low?: number | null; + high?: number | null; + price?: number | null; + }; + short_interest: { + short_percent_of_float?: number | null; + short_ratio?: number | null; + shares_short?: number | null; + shares_short_prior_month?: number | null; + shares_short_delta_pct?: number | null; + }; + meta: { + status: "complete" | "partial"; + is_partial: boolean; + field_availability: Record<string, boolean>; + sources: Record<string, string>; + }; +}; + +export type HistoryPoint = { + date: string; + open?: number | null; + high?: number | null; + low?: number | null; + close?: number | null; + volume?: number | null; +}; + +export type WatchlistItem = { + symbol: string; + created_at: string; + quote?: Quote | null; +}; + +export type WatchlistResponse = { + items: WatchlistItem[]; + limit: number; +}; |
