@drift-labs/common
Version:
Common functions for Drift
27 lines (26 loc) • 931 B
TypeScript
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;
}