UNPKG

@drift-labs/common

Version:

Common functions for Drift

27 lines (26 loc) 931 B
import { MarketType } from '@drift-labs/sdk'; import { Opaque } from './utility'; export type MarketKey = Opaque<'MarketKey', string>; export declare class MarketId { readonly marketIndex: number; readonly marketType: MarketType; private static cache; private _key; private _isSpot; private _isPerp; private _marketTypeStr; constructor(marketIndex: number, marketType: MarketType); private static getOrCreate; static createPerpMarket(marketIndex: number): MarketId; static createSpotMarket(marketIndex: number): MarketId; static getMarketIdFromKey(key: MarketKey): MarketId; get isSpot(): boolean; get isPerp(): boolean; get marketTypeStr(): string; static key(marketIndex: number, marketType: MarketType): MarketKey; /** * Returns a unique string that can be used as a key in a map. */ get key(): MarketKey; equals(other: MarketId): boolean; }