UNPKG

laplace-api

Version:

Client library for Laplace API for the US stock market and BIST (Istanbul stock market) fundamental financial data.

75 lines (65 loc) 1.71 kB
import { Client } from "./client"; export interface Politician { id: number; politicianName: string; totalHoldings: number; lastUpdated: Date; } export interface Holding { politicianName: string; symbol: string; company: string; holding: string; allocation: string; lastUpdated: Date; } export interface HoldingShort { symbol: string; company: string; holding: string; allocation: string; } export interface TopHolding { symbol: string; company: string; politicians: TopHoldingPolitician[]; count: number; } export interface TopHoldingPolitician { name: string; holding: string; allocation: string; } export interface PoliticianDetail { id: number; name: string; holdings: HoldingShort[]; totalHoldings: number; lastUpdated: Date; } export class PoliticianClient extends Client { async getAllPolitician(): Promise<Politician[]> { return await this.sendRequest<Politician[]>({ method: 'GET', url: `/api/v1/politician`, }); } async getPoliticianHoldingBySymbol(symbol: string): Promise<Holding[]> { return await this.sendRequest<Holding[]>({ method: 'GET', url: `/api/v1/holding/${symbol}` }) } async getAllTopHoldings(): Promise<TopHolding[]> { return await this.sendRequest<TopHolding[]>({ method: 'GET', url: `/api/v1/top-holding` }) } async getPoliticianDetail(id: number): Promise<PoliticianDetail> { return await this.sendRequest<PoliticianDetail>({ method: 'GET', url: `/api/v1/politician/${id}` }) } }