robinhood-nodets
Version:
Comprehensive TypeScript API wrapper for the Robinhood private API
159 lines • 4.27 kB
TypeScript
import RobinhoodApi from "./api.js";
export interface RobinhoodOrdersOptions {
fetchAfter?: string;
fetchMaxPages?: number;
}
export interface RobinhoodEarningsOptions {
instrument?: string;
symbol?: string;
range?: number;
}
export interface RobinhoodOrderOptions {
instrument: {
url: string;
symbol: string;
};
bid_price: number;
quantity: number;
side: "buy" | "sell";
type: "limit" | "market";
stop_price?: number;
time?: "gfd" | "gtc";
trigger?: "immediate" | "stop";
}
export interface RobinhoodWatchlist {
}
export interface RobinhoodInvestmentProfile {
}
export interface RobinhoodFundamentals {
}
export interface RobinhoodPopularity {
}
export interface RobinhoodQuoteData {
instrument: string;
}
export interface RobinhoodOrder {
id: string;
account: string;
user_uuid: string;
side: "buy" | "sell";
type: "limit" | "market";
trigger: "immediate" | "stop";
state: "pending" | "filled" | "partially_filled" | "cancelled";
quantity: number;
price: string;
time_in_force: string;
instrument_id: string;
tax_lot_selection_type: string;
created_at: string;
cancel: string | null;
reject_reason: string | null;
market_hours: "extended_hours" | "all_day_hours" | "regular_hours";
extended_hours: boolean;
user_cancel_request_state: string;
}
export interface RobinhoodUser {
}
export interface RobinhoodDividend {
}
export interface RobinhoodInstrument {
symbol: string;
id: string;
url: string;
name: string;
tradable_chain_id: string;
}
export interface RobinhoodAccount {
account_number: string;
url: string;
portfolio_cash: string;
unsettled_funds: string;
buying_power: string;
deactivated: boolean;
state: "active" | "closed" | "inactive";
}
export interface RobinhoodCryptoHolding {
id: string;
quantity: string;
currency_pair_id: string;
currency: {
code: string;
name: string;
};
cost_bases: {
direct_quantity: string;
direct_cost_basis: string;
}[];
}
export interface RobinhoodPosition {
url: string;
instrument: string;
instrument_id: string;
symbol: string;
account: string;
account_number: string;
brokerage_account_type: string;
average_buy_price: string;
pending_average_buy_price: string;
quantity: string;
intraday_average_buy_price: string;
intraday_quantity: string;
shares_available_for_exercise: string;
shares_available_for_sells: string;
shares_held_for_buys: string;
shares_held_for_sells: string;
shares_held_for_stock_grants: string;
shares_held_for_options_collateral: string;
shares_held_for_options_events: string;
shares_pending_from_options_events: string;
shares_available_for_closing_short_position: string;
ipo_allocated_quantity: string;
ipo_dsp_allocated_quantity: string;
avg_cost_affected: boolean;
avg_cost_affected_reason: string | null;
is_primary_account: boolean;
updated_at: string;
created_at: string;
instrument_is_halted: boolean;
clearing_cost_basis: string;
clearing_average_cost: string;
clearing_running_quantity: string;
clearing_intraday_cost_basis: string;
clearing_intraday_running_quantity: string;
custom_tax_lot_selection_eligible: boolean;
has_selectable_lots: boolean;
fetch_tax_lot_related_info: boolean;
}
export interface RobinhoodResultResponse<T> {
results: T[];
next?: string;
previous?: string;
}
export interface RobinhoodEarnings {
}
export type AuthResponse = AuthResponseError | AuthResponseAwaitingInput | AuthResponseSuccess;
export interface AuthResponseError {
status: string;
message: string;
}
export interface AuthResponseAwaitingInput {
status: string;
message: string;
workflow_id: string;
authType: string;
}
export interface TokenData {
access_token: string;
}
export interface AuthResponseSuccess {
status: string;
tokenData: TokenData;
api: RobinhoodApi;
}
export type RobinhoodCredentials = {
username?: string;
password?: string;
token?: string;
deviceToken?: string;
};
//# sourceMappingURL=types.d.ts.map