/* tslint:disable */ /* eslint-disable */ /** * * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { MarketConfig } from './MarketConfig'; import { MarketConfigFromJSON, MarketConfigFromJSONTyped, MarketConfigToJSON, } from './MarketConfig'; /** * * @export * @interface PerpsOrderBookDetail */ export interface PerpsOrderBookDetail { /** * * @type {string} * @memberof PerpsOrderBookDetail */ symbol: string; /** * * @type {number} * @memberof PerpsOrderBookDetail */ market_id: number; /** * * @type {string} * @memberof PerpsOrderBookDetail */ market_type: PerpsOrderBookDetailMarketTypeEnum; /** * * @type {number} * @memberof PerpsOrderBookDetail */ base_asset_id: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ quote_asset_id: number; /** * * @type {string} * @memberof PerpsOrderBookDetail */ status: PerpsOrderBookDetailStatusEnum; /** * * @type {string} * @memberof PerpsOrderBookDetail */ taker_fee: string; /** * * @type {boolean} * @memberof PerpsOrderBookDetail */ is_taker_fee_enabled: boolean; /** * * @type {string} * @memberof PerpsOrderBookDetail */ maker_fee: string; /** * * @type {boolean} * @memberof PerpsOrderBookDetail */ is_maker_fee_enabled: boolean; /** * * @type {string} * @memberof PerpsOrderBookDetail */ liquidation_fee: string; /** * * @type {string} * @memberof PerpsOrderBookDetail */ min_base_amount: string; /** * * @type {string} * @memberof PerpsOrderBookDetail */ min_quote_amount: string; /** * * @type {string} * @memberof PerpsOrderBookDetail */ order_quote_limit: string; /** * * @type {number} * @memberof PerpsOrderBookDetail */ supported_size_decimals: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ supported_price_decimals: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ supported_quote_decimals: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ size_decimals: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ price_decimals: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ quote_multiplier: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ default_initial_margin_fraction: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ min_initial_margin_fraction: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ maintenance_margin_fraction: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ closeout_margin_fraction: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ last_trade_price: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ daily_trades_count: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ daily_base_token_volume: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ daily_quote_token_volume: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ daily_price_low: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ daily_price_high: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ daily_price_change: number; /** * * @type {number} * @memberof PerpsOrderBookDetail */ open_interest: number; /** * * @type {{ [key: string]: number; }} * @memberof PerpsOrderBookDetail */ daily_chart: { [key: string]: number; }; /** * * @type {MarketConfig} * @memberof PerpsOrderBookDetail */ market_config: MarketConfig; /** * * @type {number} * @memberof PerpsOrderBookDetail */ strategy_index: number; } /** * @export */ export const PerpsOrderBookDetailMarketTypeEnum = { Perp: 'perp', Spot: 'spot' } as const; export type PerpsOrderBookDetailMarketTypeEnum = typeof PerpsOrderBookDetailMarketTypeEnum[keyof typeof PerpsOrderBookDetailMarketTypeEnum]; /** * @export */ export const PerpsOrderBookDetailStatusEnum = { Inactive: 'inactive', Active: 'active' } as const; export type PerpsOrderBookDetailStatusEnum = typeof PerpsOrderBookDetailStatusEnum[keyof typeof PerpsOrderBookDetailStatusEnum]; /** * Check if a given object implements the PerpsOrderBookDetail interface. */ export function instanceOfPerpsOrderBookDetail(value: object): value is PerpsOrderBookDetail { if (!('symbol' in value) || value['symbol'] === undefined) return false; if (!('market_id' in value) || value['market_id'] === undefined) return false; if (!('market_type' in value) || value['market_type'] === undefined) return false; if (!('base_asset_id' in value) || value['base_asset_id'] === undefined) return false; if (!('quote_asset_id' in value) || value['quote_asset_id'] === undefined) return false; if (!('status' in value) || value['status'] === undefined) return false; if (!('taker_fee' in value) || value['taker_fee'] === undefined) return false; if (!('is_taker_fee_enabled' in value) || value['is_taker_fee_enabled'] === undefined) return false; if (!('maker_fee' in value) || value['maker_fee'] === undefined) return false; if (!('is_maker_fee_enabled' in value) || value['is_maker_fee_enabled'] === undefined) return false; if (!('liquidation_fee' in value) || value['liquidation_fee'] === undefined) return false; if (!('min_base_amount' in value) || value['min_base_amount'] === undefined) return false; if (!('min_quote_amount' in value) || value['min_quote_amount'] === undefined) return false; if (!('order_quote_limit' in value) || value['order_quote_limit'] === undefined) return false; if (!('supported_size_decimals' in value) || value['supported_size_decimals'] === undefined) return false; if (!('supported_price_decimals' in value) || value['supported_price_decimals'] === undefined) return false; if (!('supported_quote_decimals' in value) || value['supported_quote_decimals'] === undefined) return false; if (!('size_decimals' in value) || value['size_decimals'] === undefined) return false; if (!('price_decimals' in value) || value['price_decimals'] === undefined) return false; if (!('quote_multiplier' in value) || value['quote_multiplier'] === undefined) return false; if (!('default_initial_margin_fraction' in value) || value['default_initial_margin_fraction'] === undefined) return false; if (!('min_initial_margin_fraction' in value) || value['min_initial_margin_fraction'] === undefined) return false; if (!('maintenance_margin_fraction' in value) || value['maintenance_margin_fraction'] === undefined) return false; if (!('closeout_margin_fraction' in value) || value['closeout_margin_fraction'] === undefined) return false; if (!('last_trade_price' in value) || value['last_trade_price'] === undefined) return false; if (!('daily_trades_count' in value) || value['daily_trades_count'] === undefined) return false; if (!('daily_base_token_volume' in value) || value['daily_base_token_volume'] === undefined) return false; if (!('daily_quote_token_volume' in value) || value['daily_quote_token_volume'] === undefined) return false; if (!('daily_price_low' in value) || value['daily_price_low'] === undefined) return false; if (!('daily_price_high' in value) || value['daily_price_high'] === undefined) return false; if (!('daily_price_change' in value) || value['daily_price_change'] === undefined) return false; if (!('open_interest' in value) || value['open_interest'] === undefined) return false; if (!('daily_chart' in value) || value['daily_chart'] === undefined) return false; if (!('market_config' in value) || value['market_config'] === undefined) return false; if (!('strategy_index' in value) || value['strategy_index'] === undefined) return false; return true; } export function PerpsOrderBookDetailFromJSON(json: any): PerpsOrderBookDetail { return PerpsOrderBookDetailFromJSONTyped(json, false); } export function PerpsOrderBookDetailFromJSONTyped(json: any, ignoreDiscriminator: boolean): PerpsOrderBookDetail { if (json == null) { return json; } return { 'symbol': json['symbol'], 'market_id': json['market_id'], 'market_type': json['market_type'], 'base_asset_id': json['base_asset_id'], 'quote_asset_id': json['quote_asset_id'], 'status': json['status'], 'taker_fee': json['taker_fee'], 'is_taker_fee_enabled': json['is_taker_fee_enabled'], 'maker_fee': json['maker_fee'], 'is_maker_fee_enabled': json['is_maker_fee_enabled'], 'liquidation_fee': json['liquidation_fee'], 'min_base_amount': json['min_base_amount'], 'min_quote_amount': json['min_quote_amount'], 'order_quote_limit': json['order_quote_limit'], 'supported_size_decimals': json['supported_size_decimals'], 'supported_price_decimals': json['supported_price_decimals'], 'supported_quote_decimals': json['supported_quote_decimals'], 'size_decimals': json['size_decimals'], 'price_decimals': json['price_decimals'], 'quote_multiplier': json['quote_multiplier'], 'default_initial_margin_fraction': json['default_initial_margin_fraction'], 'min_initial_margin_fraction': json['min_initial_margin_fraction'], 'maintenance_margin_fraction': json['maintenance_margin_fraction'], 'closeout_margin_fraction': json['closeout_margin_fraction'], 'last_trade_price': json['last_trade_price'], 'daily_trades_count': json['daily_trades_count'], 'daily_base_token_volume': json['daily_base_token_volume'], 'daily_quote_token_volume': json['daily_quote_token_volume'], 'daily_price_low': json['daily_price_low'], 'daily_price_high': json['daily_price_high'], 'daily_price_change': json['daily_price_change'], 'open_interest': json['open_interest'], 'daily_chart': json['daily_chart'], 'market_config': MarketConfigFromJSON(json['market_config']), 'strategy_index': json['strategy_index'], }; } export function PerpsOrderBookDetailToJSON(value?: PerpsOrderBookDetail | null): any { if (value == null) { return value; } return { 'symbol': value['symbol'], 'market_id': value['market_id'], 'market_type': value['market_type'], 'base_asset_id': value['base_asset_id'], 'quote_asset_id': value['quote_asset_id'], 'status': value['status'], 'taker_fee': value['taker_fee'], 'is_taker_fee_enabled': value['is_taker_fee_enabled'], 'maker_fee': value['maker_fee'], 'is_maker_fee_enabled': value['is_maker_fee_enabled'], 'liquidation_fee': value['liquidation_fee'], 'min_base_amount': value['min_base_amount'], 'min_quote_amount': value['min_quote_amount'], 'order_quote_limit': value['order_quote_limit'], 'supported_size_decimals': value['supported_size_decimals'], 'supported_price_decimals': value['supported_price_decimals'], 'supported_quote_decimals': value['supported_quote_decimals'], 'size_decimals': value['size_decimals'], 'price_decimals': value['price_decimals'], 'quote_multiplier': value['quote_multiplier'], 'default_initial_margin_fraction': value['default_initial_margin_fraction'], 'min_initial_margin_fraction': value['min_initial_margin_fraction'], 'maintenance_margin_fraction': value['maintenance_margin_fraction'], 'closeout_margin_fraction': value['closeout_margin_fraction'], 'last_trade_price': value['last_trade_price'], 'daily_trades_count': value['daily_trades_count'], 'daily_base_token_volume': value['daily_base_token_volume'], 'daily_quote_token_volume': value['daily_quote_token_volume'], 'daily_price_low': value['daily_price_low'], 'daily_price_high': value['daily_price_high'], 'daily_price_change': value['daily_price_change'], 'open_interest': value['open_interest'], 'daily_chart': value['daily_chart'], 'market_config': MarketConfigToJSON(value['market_config']), 'strategy_index': value['strategy_index'], }; }