/* 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'; /** * * @export * @interface Trade */ export interface Trade { /** * * @type {number} * @memberof Trade */ trade_id: number; /** * * @type {string} * @memberof Trade */ trade_id_str: string; /** * * @type {string} * @memberof Trade */ tx_hash: string; /** * * @type {string} * @memberof Trade */ type: TradeTypeEnum; /** * * @type {number} * @memberof Trade */ market_id: number; /** * * @type {string} * @memberof Trade */ size: string; /** * * @type {string} * @memberof Trade */ price: string; /** * * @type {string} * @memberof Trade */ usd_amount: string; /** * * @type {number} * @memberof Trade */ ask_id: number; /** * * @type {string} * @memberof Trade */ ask_id_str?: string; /** * * @type {number} * @memberof Trade */ bid_id: number; /** * * @type {string} * @memberof Trade */ bid_id_str?: string; /** * * @type {number} * @memberof Trade */ ask_client_id: number; /** * * @type {string} * @memberof Trade */ ask_client_id_str: string; /** * * @type {number} * @memberof Trade */ bid_client_id: number; /** * * @type {string} * @memberof Trade */ bid_client_id_str: string; /** * * @type {number} * @memberof Trade */ ask_account_id: number; /** * * @type {number} * @memberof Trade */ bid_account_id: number; /** * * @type {boolean} * @memberof Trade */ is_maker_ask: boolean; /** * * @type {number} * @memberof Trade */ block_height: number; /** * * @type {number} * @memberof Trade */ timestamp: number; /** * * @type {number} * @memberof Trade */ taker_fee?: number; /** * * @type {string} * @memberof Trade */ taker_position_size_before: string; /** * * @type {string} * @memberof Trade */ taker_entry_quote_before: string; /** * * @type {number} * @memberof Trade */ taker_initial_margin_fraction_before: number; /** * * @type {boolean} * @memberof Trade */ taker_position_sign_changed: boolean; /** * * @type {number} * @memberof Trade */ maker_fee?: number; /** * * @type {string} * @memberof Trade */ maker_position_size_before: string; /** * * @type {string} * @memberof Trade */ maker_entry_quote_before: string; /** * * @type {number} * @memberof Trade */ maker_initial_margin_fraction_before: number; /** * * @type {boolean} * @memberof Trade */ maker_position_sign_changed: boolean; /** * * @type {number} * @memberof Trade */ transaction_time: number; /** * * @type {string} * @memberof Trade */ ask_account_pnl: string; /** * * @type {string} * @memberof Trade */ bid_account_pnl: string; /** * * @type {number} * @memberof Trade */ integrator_taker_fee: number; /** * * @type {number} * @memberof Trade */ integrator_taker_fee_collector_index: number; /** * * @type {number} * @memberof Trade */ integrator_maker_fee: number; /** * * @type {number} * @memberof Trade */ integrator_maker_fee_collector_index: number; /** * * @type {number} * @memberof Trade */ taker_allocated_margin_usdc_before: number; /** * * @type {number} * @memberof Trade */ taker_allocated_margin_usdc_after: number; /** * * @type {number} * @memberof Trade */ maker_allocated_margin_usdc_before: number; /** * * @type {number} * @memberof Trade */ maker_allocated_margin_usdc_after: number; } /** * @export */ export const TradeTypeEnum = { Trade: 'trade', Liquidation: 'liquidation', Deleverage: 'deleverage', MarketSettlement: 'market-settlement' } as const; export type TradeTypeEnum = typeof TradeTypeEnum[keyof typeof TradeTypeEnum]; /** * Check if a given object implements the Trade interface. */ export function instanceOfTrade(value: object): value is Trade { if (!('trade_id' in value) || value['trade_id'] === undefined) return false; if (!('trade_id_str' in value) || value['trade_id_str'] === undefined) return false; if (!('tx_hash' in value) || value['tx_hash'] === undefined) return false; if (!('type' in value) || value['type'] === undefined) return false; if (!('market_id' in value) || value['market_id'] === undefined) return false; if (!('size' in value) || value['size'] === undefined) return false; if (!('price' in value) || value['price'] === undefined) return false; if (!('usd_amount' in value) || value['usd_amount'] === undefined) return false; if (!('ask_id' in value) || value['ask_id'] === undefined) return false; if (!('bid_id' in value) || value['bid_id'] === undefined) return false; if (!('ask_client_id' in value) || value['ask_client_id'] === undefined) return false; if (!('ask_client_id_str' in value) || value['ask_client_id_str'] === undefined) return false; if (!('bid_client_id' in value) || value['bid_client_id'] === undefined) return false; if (!('bid_client_id_str' in value) || value['bid_client_id_str'] === undefined) return false; if (!('ask_account_id' in value) || value['ask_account_id'] === undefined) return false; if (!('bid_account_id' in value) || value['bid_account_id'] === undefined) return false; if (!('is_maker_ask' in value) || value['is_maker_ask'] === undefined) return false; if (!('block_height' in value) || value['block_height'] === undefined) return false; if (!('timestamp' in value) || value['timestamp'] === undefined) return false; if (!('taker_position_size_before' in value) || value['taker_position_size_before'] === undefined) return false; if (!('taker_entry_quote_before' in value) || value['taker_entry_quote_before'] === undefined) return false; if (!('taker_initial_margin_fraction_before' in value) || value['taker_initial_margin_fraction_before'] === undefined) return false; if (!('taker_position_sign_changed' in value) || value['taker_position_sign_changed'] === undefined) return false; if (!('maker_position_size_before' in value) || value['maker_position_size_before'] === undefined) return false; if (!('maker_entry_quote_before' in value) || value['maker_entry_quote_before'] === undefined) return false; if (!('maker_initial_margin_fraction_before' in value) || value['maker_initial_margin_fraction_before'] === undefined) return false; if (!('maker_position_sign_changed' in value) || value['maker_position_sign_changed'] === undefined) return false; if (!('transaction_time' in value) || value['transaction_time'] === undefined) return false; if (!('ask_account_pnl' in value) || value['ask_account_pnl'] === undefined) return false; if (!('bid_account_pnl' in value) || value['bid_account_pnl'] === undefined) return false; if (!('integrator_taker_fee' in value) || value['integrator_taker_fee'] === undefined) return false; if (!('integrator_taker_fee_collector_index' in value) || value['integrator_taker_fee_collector_index'] === undefined) return false; if (!('integrator_maker_fee' in value) || value['integrator_maker_fee'] === undefined) return false; if (!('integrator_maker_fee_collector_index' in value) || value['integrator_maker_fee_collector_index'] === undefined) return false; if (!('taker_allocated_margin_usdc_before' in value) || value['taker_allocated_margin_usdc_before'] === undefined) return false; if (!('taker_allocated_margin_usdc_after' in value) || value['taker_allocated_margin_usdc_after'] === undefined) return false; if (!('maker_allocated_margin_usdc_before' in value) || value['maker_allocated_margin_usdc_before'] === undefined) return false; if (!('maker_allocated_margin_usdc_after' in value) || value['maker_allocated_margin_usdc_after'] === undefined) return false; return true; } export function TradeFromJSON(json: any): Trade { return TradeFromJSONTyped(json, false); } export function TradeFromJSONTyped(json: any, ignoreDiscriminator: boolean): Trade { if (json == null) { return json; } return { 'trade_id': json['trade_id'], 'trade_id_str': json['trade_id_str'], 'tx_hash': json['tx_hash'], 'type': json['type'], 'market_id': json['market_id'], 'size': json['size'], 'price': json['price'], 'usd_amount': json['usd_amount'], 'ask_id': json['ask_id'], 'ask_id_str': json['ask_id_str'] == null ? undefined : json['ask_id_str'], 'bid_id': json['bid_id'], 'bid_id_str': json['bid_id_str'] == null ? undefined : json['bid_id_str'], 'ask_client_id': json['ask_client_id'], 'ask_client_id_str': json['ask_client_id_str'], 'bid_client_id': json['bid_client_id'], 'bid_client_id_str': json['bid_client_id_str'], 'ask_account_id': json['ask_account_id'], 'bid_account_id': json['bid_account_id'], 'is_maker_ask': json['is_maker_ask'], 'block_height': json['block_height'], 'timestamp': json['timestamp'], 'taker_fee': json['taker_fee'] == null ? undefined : json['taker_fee'], 'taker_position_size_before': json['taker_position_size_before'], 'taker_entry_quote_before': json['taker_entry_quote_before'], 'taker_initial_margin_fraction_before': json['taker_initial_margin_fraction_before'], 'taker_position_sign_changed': json['taker_position_sign_changed'], 'maker_fee': json['maker_fee'] == null ? undefined : json['maker_fee'], 'maker_position_size_before': json['maker_position_size_before'], 'maker_entry_quote_before': json['maker_entry_quote_before'], 'maker_initial_margin_fraction_before': json['maker_initial_margin_fraction_before'], 'maker_position_sign_changed': json['maker_position_sign_changed'], 'transaction_time': json['transaction_time'], 'ask_account_pnl': json['ask_account_pnl'], 'bid_account_pnl': json['bid_account_pnl'], 'integrator_taker_fee': json['integrator_taker_fee'], 'integrator_taker_fee_collector_index': json['integrator_taker_fee_collector_index'], 'integrator_maker_fee': json['integrator_maker_fee'], 'integrator_maker_fee_collector_index': json['integrator_maker_fee_collector_index'], 'taker_allocated_margin_usdc_before': json['taker_allocated_margin_usdc_before'], 'taker_allocated_margin_usdc_after': json['taker_allocated_margin_usdc_after'], 'maker_allocated_margin_usdc_before': json['maker_allocated_margin_usdc_before'], 'maker_allocated_margin_usdc_after': json['maker_allocated_margin_usdc_after'], }; } export function TradeToJSON(value?: Trade | null): any { if (value == null) { return value; } return { 'trade_id': value['trade_id'], 'trade_id_str': value['trade_id_str'], 'tx_hash': value['tx_hash'], 'type': value['type'], 'market_id': value['market_id'], 'size': value['size'], 'price': value['price'], 'usd_amount': value['usd_amount'], 'ask_id': value['ask_id'], 'ask_id_str': value['ask_id_str'], 'bid_id': value['bid_id'], 'bid_id_str': value['bid_id_str'], 'ask_client_id': value['ask_client_id'], 'ask_client_id_str': value['ask_client_id_str'], 'bid_client_id': value['bid_client_id'], 'bid_client_id_str': value['bid_client_id_str'], 'ask_account_id': value['ask_account_id'], 'bid_account_id': value['bid_account_id'], 'is_maker_ask': value['is_maker_ask'], 'block_height': value['block_height'], 'timestamp': value['timestamp'], 'taker_fee': value['taker_fee'], 'taker_position_size_before': value['taker_position_size_before'], 'taker_entry_quote_before': value['taker_entry_quote_before'], 'taker_initial_margin_fraction_before': value['taker_initial_margin_fraction_before'], 'taker_position_sign_changed': value['taker_position_sign_changed'], 'maker_fee': value['maker_fee'], 'maker_position_size_before': value['maker_position_size_before'], 'maker_entry_quote_before': value['maker_entry_quote_before'], 'maker_initial_margin_fraction_before': value['maker_initial_margin_fraction_before'], 'maker_position_sign_changed': value['maker_position_sign_changed'], 'transaction_time': value['transaction_time'], 'ask_account_pnl': value['ask_account_pnl'], 'bid_account_pnl': value['bid_account_pnl'], 'integrator_taker_fee': value['integrator_taker_fee'], 'integrator_taker_fee_collector_index': value['integrator_taker_fee_collector_index'], 'integrator_maker_fee': value['integrator_maker_fee'], 'integrator_maker_fee_collector_index': value['integrator_maker_fee_collector_index'], 'taker_allocated_margin_usdc_before': value['taker_allocated_margin_usdc_before'], 'taker_allocated_margin_usdc_after': value['taker_allocated_margin_usdc_after'], 'maker_allocated_margin_usdc_before': value['maker_allocated_margin_usdc_before'], 'maker_allocated_margin_usdc_after': value['maker_allocated_margin_usdc_after'], }; }