forex-quotes
Version:
Realtime forex quote API client
47 lines (46 loc) • 1.55 kB
TypeScript
import { RestClientSettings } from './RestClient';
export interface ForgeClientSettings {
rest: RestClientSettings;
}
export interface Quote {
b: number;
a: number;
p: number;
s: string;
t: number;
}
export interface ConversionResult {
value: number;
text: string;
timestamp: number;
}
export interface MarketStatus {
market_is_open: boolean;
}
export declare enum Errors {
SOCKET_NOT_CONNECTED = "You must connect before trying to emit messages. Please see https://github.com/1Forge/javascript-forex-quotes for examples"
}
export declare type Callback = (...args: any[]) => void;
declare class ForgeClient {
private apiKey;
private temporary;
private restClient;
private socketClient;
constructor(apiKey: string, settings?: ForgeClientSettings, temporary?: boolean);
connect(): void;
subscribeTo(symbols: string[] | string): void;
subscribeToAll(): void;
unsubscribeFrom(symbols: string[] | string): void;
unsubscribeFromAll(symbols: string[] | string): void;
onDisconnect(callback: Callback): void;
onConnect(callback: Callback): void;
onUpdate(callback: Callback): void;
onMessage(callback: Callback): void;
disconnect(): void;
getQuotes(symbols: string[] | string): Promise<Quote[]>;
getSymbols(): Promise<string[]>;
getMarketStatus(): Promise<MarketStatus>;
convert(from: string, to: string, quantity: number): Promise<ConversionResult>;
getQuota(): Promise<import("./RestClient").Quota>;
}
export default ForgeClient;