import { RestApiResponse, ConfigurationRestAPI, WebsocketStream, WebsocketStreamsBase, ConfigurationWebsocketStreams } from '@binance/common';
export { BadRequestError, ConnectorClientError, DERIVATIVES_TRADING_OPTIONS_REST_API_PROD_URL, DERIVATIVES_TRADING_OPTIONS_WS_STREAMS_PROD_URL, ForbiddenError, NetworkError, NotFoundError, RateLimitBanError, RequiredError, ServerError, TooManyRequestsError, UnauthorizedError } from '@binance/common';

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AcceptBlockTradeOrderResponseLegsInner
 */
interface AcceptBlockTradeOrderResponseLegsInner {
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponseLegsInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponseLegsInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponseLegsInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponseLegsInner
     */
    price?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface AcceptBlockTradeOrderResponse
 */
interface AcceptBlockTradeOrderResponse {
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponse
     */
    blockTradeSettlementKey?: string;
    /**
     *
     * @type {number}
     * @memberof AcceptBlockTradeOrderResponse
     */
    expireTime?: number;
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponse
     */
    liquidity?: string;
    /**
     *
     * @type {string}
     * @memberof AcceptBlockTradeOrderResponse
     */
    status?: string;
    /**
     *
     * @type {number}
     * @memberof AcceptBlockTradeOrderResponse
     */
    createTime?: number;
    /**
     *
     * @type {Array<AcceptBlockTradeOrderResponseLegsInner>}
     * @memberof AcceptBlockTradeOrderResponse
     */
    legs?: Array<AcceptBlockTradeOrderResponseLegsInner>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountBlockTradeListResponseInnerLegsInner
 */
interface AccountBlockTradeListResponseInnerLegsInner {
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    createTime?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    updateTime?: number;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    orderId?: string;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    orderPrice?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    orderQuantity?: number;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    orderStatus?: string;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    executedQty?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    executedAmount?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    fee?: number;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    orderType?: string;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    orderSide?: string;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    id?: string;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    tradeId?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    tradePrice?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    tradeQty?: number;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    tradeTime?: number;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    liquidity?: string;
    /**
     *
     * @type {number}
     * @memberof AccountBlockTradeListResponseInnerLegsInner
     */
    commission?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface AccountBlockTradeListResponseInner
 */
interface AccountBlockTradeListResponseInner {
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInner
     */
    parentOrderId?: string;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInner
     */
    crossType?: string;
    /**
     *
     * @type {Array<AccountBlockTradeListResponseInnerLegsInner>}
     * @memberof AccountBlockTradeListResponseInner
     */
    legs?: Array<AccountBlockTradeListResponseInnerLegsInner>;
    /**
     *
     * @type {string}
     * @memberof AccountBlockTradeListResponseInner
     */
    blockTradeSettlementKey?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface AccountBlockTradeListResponse
 */
interface AccountBlockTradeListResponse extends Array<AccountBlockTradeListResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountFundingFlowResponseInner
 */
interface AccountFundingFlowResponseInner {
    /**
     *
     * @type {number}
     * @memberof AccountFundingFlowResponseInner
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof AccountFundingFlowResponseInner
     */
    asset?: string;
    /**
     *
     * @type {string}
     * @memberof AccountFundingFlowResponseInner
     */
    amount?: string;
    /**
     *
     * @type {string}
     * @memberof AccountFundingFlowResponseInner
     */
    type?: string;
    /**
     *
     * @type {number}
     * @memberof AccountFundingFlowResponseInner
     */
    createDate?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface AccountFundingFlowResponse
 */
interface AccountFundingFlowResponse extends Array<AccountFundingFlowResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountTradeListResponseInner
 */
interface AccountTradeListResponseInner {
    /**
     *
     * @type {number}
     * @memberof AccountTradeListResponseInner
     */
    id?: number;
    /**
     *
     * @type {number}
     * @memberof AccountTradeListResponseInner
     */
    tradeId?: number;
    /**
     *
     * @type {number}
     * @memberof AccountTradeListResponseInner
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    fee?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    realizedProfit?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    volatility?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    liquidity?: string;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    quoteAsset?: string;
    /**
     *
     * @type {number}
     * @memberof AccountTradeListResponseInner
     */
    time?: number;
    /**
     *
     * @type {number}
     * @memberof AccountTradeListResponseInner
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof AccountTradeListResponseInner
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof AccountTradeListResponseInner
     */
    optionSide?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface AccountTradeListResponse
 */
interface AccountTradeListResponse extends Array<AccountTradeListResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AutoCancelAllOpenOrdersResponse
 */
interface AutoCancelAllOpenOrdersResponse {
    /**
     *
     * @type {Array<string>}
     * @memberof AutoCancelAllOpenOrdersResponse
     */
    underlyings?: Array<string>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface CancelAllOptionOrdersByUnderlyingResponse
 */
interface CancelAllOptionOrdersByUnderlyingResponse {
    /**
     *
     * @type {number}
     * @memberof CancelAllOptionOrdersByUnderlyingResponse
     */
    code?: number;
    /**
     *
     * @type {string}
     * @memberof CancelAllOptionOrdersByUnderlyingResponse
     */
    msg?: string;
    /**
     *
     * @type {number}
     * @memberof CancelAllOptionOrdersByUnderlyingResponse
     */
    data?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface CancelAllOptionOrdersOnSpecificSymbolResponse
 */
interface CancelAllOptionOrdersOnSpecificSymbolResponse {
    /**
     *
     * @type {number}
     * @memberof CancelAllOptionOrdersOnSpecificSymbolResponse
     */
    code?: number;
    /**
     *
     * @type {string}
     * @memberof CancelAllOptionOrdersOnSpecificSymbolResponse
     */
    msg?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface CancelMultipleOptionOrdersResponseInner
 */
interface CancelMultipleOptionOrdersResponseInner {
    /**
     *
     * @type {number}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    executedQty?: string;
    /**
     *
     * @type {number}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    fee?: number;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    timeInForce?: string;
    /**
     *
     * @type {number}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    createTime?: number;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    avgPrice?: string;
    /**
     *
     * @type {boolean}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {string}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof CancelMultipleOptionOrdersResponseInner
     */
    updateTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface CancelMultipleOptionOrdersResponse
 */
interface CancelMultipleOptionOrdersResponse extends Array<CancelMultipleOptionOrdersResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface CancelOptionOrderResponse
 */
interface CancelOptionOrderResponse {
    /**
     *
     * @type {number}
     * @memberof CancelOptionOrderResponse
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    executedQty?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    fee?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    timeInForce?: string;
    /**
     *
     * @type {boolean}
     * @memberof CancelOptionOrderResponse
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CancelOptionOrderResponse
     */
    postOnly?: boolean;
    /**
     *
     * @type {number}
     * @memberof CancelOptionOrderResponse
     */
    createDate?: number;
    /**
     *
     * @type {number}
     * @memberof CancelOptionOrderResponse
     */
    updateTime?: number;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    avgPrice?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    source?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof CancelOptionOrderResponse
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof CancelOptionOrderResponse
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof CancelOptionOrderResponse
     */
    quoteAsset?: string;
    /**
     *
     * @type {boolean}
     * @memberof CancelOptionOrderResponse
     */
    mmp?: boolean;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface CheckServerTimeResponse
 */
interface CheckServerTimeResponse {
    /**
     *
     * @type {number}
     * @memberof CheckServerTimeResponse
     */
    serverTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ExchangeInformationResponseOptionAssetsInner
 */
interface ExchangeInformationResponseOptionAssetsInner {
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionAssetsInner
     */
    name?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ExchangeInformationResponseOptionContractsInner
 */
interface ExchangeInformationResponseOptionContractsInner {
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionContractsInner
     */
    baseAsset?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionContractsInner
     */
    quoteAsset?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionContractsInner
     */
    underlying?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionContractsInner
     */
    settleAsset?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ExchangeInformationResponseOptionSymbolsInnerFiltersInner
 */
interface ExchangeInformationResponseOptionSymbolsInnerFiltersInner {
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    filterType?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    minPrice?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    maxPrice?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    tickSize?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    minQty?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    maxQty?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInnerFiltersInner
     */
    stepSize?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface ExchangeInformationResponseOptionSymbolsInner
 */
interface ExchangeInformationResponseOptionSymbolsInner {
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    expiryDate?: number;
    /**
     *
     * @type {Array<ExchangeInformationResponseOptionSymbolsInnerFiltersInner>}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    filters?: Array<ExchangeInformationResponseOptionSymbolsInnerFiltersInner>;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    strikePrice?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    underlying?: string;
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    unit?: number;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    makerFeeRate?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    takerFeeRate?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    liquidationFeeRate?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    minQty?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    maxQty?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    initialMargin?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    maintenanceMargin?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    minInitialMargin?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    minMaintenanceMargin?: string;
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseOptionSymbolsInner
     */
    quoteAsset?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ExchangeInformationResponseRateLimitsInner
 */
interface ExchangeInformationResponseRateLimitsInner {
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseRateLimitsInner
     */
    rateLimitType?: string;
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponseRateLimitsInner
     */
    interval?: string;
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponseRateLimitsInner
     */
    intervalNum?: number;
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponseRateLimitsInner
     */
    limit?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface ExchangeInformationResponse
 */
interface ExchangeInformationResponse {
    /**
     *
     * @type {string}
     * @memberof ExchangeInformationResponse
     */
    timezone?: string;
    /**
     *
     * @type {number}
     * @memberof ExchangeInformationResponse
     */
    serverTime?: number;
    /**
     *
     * @type {Array<ExchangeInformationResponseOptionContractsInner>}
     * @memberof ExchangeInformationResponse
     */
    optionContracts?: Array<ExchangeInformationResponseOptionContractsInner>;
    /**
     *
     * @type {Array<ExchangeInformationResponseOptionAssetsInner>}
     * @memberof ExchangeInformationResponse
     */
    optionAssets?: Array<ExchangeInformationResponseOptionAssetsInner>;
    /**
     *
     * @type {Array<ExchangeInformationResponseOptionSymbolsInner>}
     * @memberof ExchangeInformationResponse
     */
    optionSymbols?: Array<ExchangeInformationResponseOptionSymbolsInner>;
    /**
     *
     * @type {Array<ExchangeInformationResponseRateLimitsInner>}
     * @memberof ExchangeInformationResponse
     */
    rateLimits?: Array<ExchangeInformationResponseRateLimitsInner>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ExtendBlockTradeOrderResponseLegsInner
 */
interface ExtendBlockTradeOrderResponseLegsInner {
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponseLegsInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponseLegsInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponseLegsInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponseLegsInner
     */
    price?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface ExtendBlockTradeOrderResponse
 */
interface ExtendBlockTradeOrderResponse {
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponse
     */
    blockTradeSettlementKey?: string;
    /**
     *
     * @type {number}
     * @memberof ExtendBlockTradeOrderResponse
     */
    expireTime?: number;
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponse
     */
    liquidity?: string;
    /**
     *
     * @type {string}
     * @memberof ExtendBlockTradeOrderResponse
     */
    status?: string;
    /**
     *
     * @type {number}
     * @memberof ExtendBlockTradeOrderResponse
     */
    createTime?: number;
    /**
     *
     * @type {Array<ExtendBlockTradeOrderResponseLegsInner>}
     * @memberof ExtendBlockTradeOrderResponse
     */
    legs?: Array<ExtendBlockTradeOrderResponseLegsInner>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetAutoCancelAllOpenOrdersResponse
 */
interface GetAutoCancelAllOpenOrdersResponse {
    /**
     *
     * @type {string}
     * @memberof GetAutoCancelAllOpenOrdersResponse
     */
    underlying?: string;
    /**
     *
     * @type {number}
     * @memberof GetAutoCancelAllOpenOrdersResponse
     */
    countdownTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetDownloadIdForOptionTransactionHistoryResponse
 */
interface GetDownloadIdForOptionTransactionHistoryResponse {
    /**
     *
     * @type {number}
     * @memberof GetDownloadIdForOptionTransactionHistoryResponse
     */
    avgCostTimestampOfLast30d?: number;
    /**
     *
     * @type {string}
     * @memberof GetDownloadIdForOptionTransactionHistoryResponse
     */
    downloadId?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetMarketMakerProtectionConfigResponse
 */
interface GetMarketMakerProtectionConfigResponse {
    /**
     *
     * @type {number}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    underlyingId?: number;
    /**
     *
     * @type {string}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    underlying?: string;
    /**
     *
     * @type {number}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    windowTimeInMilliseconds?: number;
    /**
     *
     * @type {number}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    frozenTimeInMilliseconds?: number;
    /**
     *
     * @type {string}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    qtyLimit?: string;
    /**
     *
     * @type {string}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    deltaLimit?: string;
    /**
     *
     * @type {number}
     * @memberof GetMarketMakerProtectionConfigResponse
     */
    lastTriggerTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetOptionTransactionHistoryDownloadLinkByIdResponse
 */
interface GetOptionTransactionHistoryDownloadLinkByIdResponse {
    /**
     *
     * @type {string}
     * @memberof GetOptionTransactionHistoryDownloadLinkByIdResponse
     */
    downloadId?: string;
    /**
     *
     * @type {string}
     * @memberof GetOptionTransactionHistoryDownloadLinkByIdResponse
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof GetOptionTransactionHistoryDownloadLinkByIdResponse
     */
    url?: string;
    /**
     *
     * @type {boolean}
     * @memberof GetOptionTransactionHistoryDownloadLinkByIdResponse
     */
    notified?: boolean;
    /**
     *
     * @type {number}
     * @memberof GetOptionTransactionHistoryDownloadLinkByIdResponse
     */
    expirationTimestamp?: number;
    /**
     *
     * @type {string}
     * @memberof GetOptionTransactionHistoryDownloadLinkByIdResponse
     */
    isExpired?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface HistoricalExerciseRecordsResponseInner
 */
interface HistoricalExerciseRecordsResponseInner {
    /**
     *
     * @type {string}
     * @memberof HistoricalExerciseRecordsResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof HistoricalExerciseRecordsResponseInner
     */
    strikePrice?: string;
    /**
     *
     * @type {string}
     * @memberof HistoricalExerciseRecordsResponseInner
     */
    realStrikePrice?: string;
    /**
     *
     * @type {number}
     * @memberof HistoricalExerciseRecordsResponseInner
     */
    expiryDate?: number;
    /**
     *
     * @type {string}
     * @memberof HistoricalExerciseRecordsResponseInner
     */
    strikeResult?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface HistoricalExerciseRecordsResponse
 */
interface HistoricalExerciseRecordsResponse extends Array<HistoricalExerciseRecordsResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface KlineCandlestickDataResponseInner
 */
interface KlineCandlestickDataResponseInner {
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    open?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    high?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    low?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    close?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    volume?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    amount?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    interval?: string;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickDataResponseInner
     */
    tradeCount?: number;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    takerVolume?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickDataResponseInner
     */
    takerAmount?: string;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickDataResponseInner
     */
    openTime?: number;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickDataResponseInner
     */
    closeTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface KlineCandlestickDataResponse
 */
interface KlineCandlestickDataResponse extends Array<KlineCandlestickDataResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface NewBlockTradeOrderResponse
 */
interface NewBlockTradeOrderResponse {
    /**
     *
     * @type {string}
     * @memberof NewBlockTradeOrderResponse
     */
    blockTradeSettlementKey?: string;
    /**
     *
     * @type {number}
     * @memberof NewBlockTradeOrderResponse
     */
    expireTime?: number;
    /**
     *
     * @type {string}
     * @memberof NewBlockTradeOrderResponse
     */
    liquidity?: string;
    /**
     *
     * @type {string}
     * @memberof NewBlockTradeOrderResponse
     */
    status?: string;
    /**
     *
     * @type {Array<ExtendBlockTradeOrderResponseLegsInner>}
     * @memberof NewBlockTradeOrderResponse
     */
    legs?: Array<ExtendBlockTradeOrderResponseLegsInner>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface NewOrderResponse
 */
interface NewOrderResponse {
    /**
     *
     * @type {number}
     * @memberof NewOrderResponse
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    type?: string;
    /**
     *
     * @type {number}
     * @memberof NewOrderResponse
     */
    createDate?: number;
    /**
     *
     * @type {boolean}
     * @memberof NewOrderResponse
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof NewOrderResponse
     */
    postOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof NewOrderResponse
     */
    mmp?: boolean;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    executedQty?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    fee?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    timeInForce?: string;
    /**
     *
     * @type {number}
     * @memberof NewOrderResponse
     */
    createTime?: number;
    /**
     *
     * @type {number}
     * @memberof NewOrderResponse
     */
    updateTime?: number;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    avgPrice?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof NewOrderResponse
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof NewOrderResponse
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof NewOrderResponse
     */
    quoteAsset?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OldTradesLookupResponseInner
 */
interface OldTradesLookupResponseInner {
    /**
     *
     * @type {string}
     * @memberof OldTradesLookupResponseInner
     */
    id?: string;
    /**
     *
     * @type {string}
     * @memberof OldTradesLookupResponseInner
     */
    tradeId?: string;
    /**
     *
     * @type {string}
     * @memberof OldTradesLookupResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof OldTradesLookupResponseInner
     */
    qty?: string;
    /**
     *
     * @type {string}
     * @memberof OldTradesLookupResponseInner
     */
    quoteQty?: string;
    /**
     *
     * @type {number}
     * @memberof OldTradesLookupResponseInner
     */
    side?: number;
    /**
     *
     * @type {number}
     * @memberof OldTradesLookupResponseInner
     */
    time?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OldTradesLookupResponse
 */
interface OldTradesLookupResponse extends Array<OldTradesLookupResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OpenInterestResponseInner
 */
interface OpenInterestResponseInner$1 {
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    sumOpenInterest?: string;
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    sumOpenInterestUsd?: string;
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    timestamp?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OpenInterestResponse
 */
interface OpenInterestResponse$1 extends Array<OpenInterestResponseInner$1> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OptionAccountInformationResponseAssetInner
 */
interface OptionAccountInformationResponseAssetInner {
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseAssetInner
     */
    asset?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseAssetInner
     */
    marginBalance?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseAssetInner
     */
    equity?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseAssetInner
     */
    available?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseAssetInner
     */
    locked?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseAssetInner
     */
    unrealizedPNL?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OptionAccountInformationResponseGreekInner
 */
interface OptionAccountInformationResponseGreekInner {
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseGreekInner
     */
    underlying?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseGreekInner
     */
    delta?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseGreekInner
     */
    gamma?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseGreekInner
     */
    theta?: string;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponseGreekInner
     */
    vega?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OptionAccountInformationResponse
 */
interface OptionAccountInformationResponse {
    /**
     *
     * @type {Array<OptionAccountInformationResponseAssetInner>}
     * @memberof OptionAccountInformationResponse
     */
    asset?: Array<OptionAccountInformationResponseAssetInner>;
    /**
     *
     * @type {Array<OptionAccountInformationResponseGreekInner>}
     * @memberof OptionAccountInformationResponse
     */
    greek?: Array<OptionAccountInformationResponseGreekInner>;
    /**
     *
     * @type {number}
     * @memberof OptionAccountInformationResponse
     */
    time?: number;
    /**
     *
     * @type {string}
     * @memberof OptionAccountInformationResponse
     */
    riskLevel?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OptionMarginAccountInformationResponseAssetInner
 */
interface OptionMarginAccountInformationResponseAssetInner {
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    asset?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    marginBalance?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    equity?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    available?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    initialMargin?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    maintMargin?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    unrealizedPNL?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarginAccountInformationResponseAssetInner
     */
    adjustedEquity?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OptionMarginAccountInformationResponse
 */
interface OptionMarginAccountInformationResponse {
    /**
     *
     * @type {Array<OptionMarginAccountInformationResponseAssetInner>}
     * @memberof OptionMarginAccountInformationResponse
     */
    asset?: Array<OptionMarginAccountInformationResponseAssetInner>;
    /**
     *
     * @type {Array<OptionAccountInformationResponseGreekInner>}
     * @memberof OptionMarginAccountInformationResponse
     */
    greek?: Array<OptionAccountInformationResponseGreekInner>;
    /**
     *
     * @type {number}
     * @memberof OptionMarginAccountInformationResponse
     */
    time?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OptionMarkPriceResponseInner
 */
interface OptionMarkPriceResponseInner {
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    markPrice?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    bidIV?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    askIV?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    markIV?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    delta?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    theta?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    gamma?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    vega?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    highPriceLimit?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    lowPriceLimit?: string;
    /**
     *
     * @type {string}
     * @memberof OptionMarkPriceResponseInner
     */
    riskFreeInterest?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OptionMarkPriceResponse
 */
interface OptionMarkPriceResponse extends Array<OptionMarkPriceResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OptionPositionInformationResponseInner
 */
interface OptionPositionInformationResponseInner {
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    entryPrice?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    reducibleQty?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    markValue?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    ror?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    unrealizedPNL?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    markPrice?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    strikePrice?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    positionCost?: string;
    /**
     *
     * @type {number}
     * @memberof OptionPositionInformationResponseInner
     */
    expiryDate?: number;
    /**
     *
     * @type {number}
     * @memberof OptionPositionInformationResponseInner
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof OptionPositionInformationResponseInner
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof OptionPositionInformationResponseInner
     */
    quoteAsset?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OptionPositionInformationResponse
 */
interface OptionPositionInformationResponse extends Array<OptionPositionInformationResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OrderBookResponseAsksItem
 */
interface OrderBookResponseAsksItem extends Array<string> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OrderBookResponseBidsItem
 */
interface OrderBookResponseBidsItem extends Array<string> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OrderBookResponse
 */
interface OrderBookResponse {
    /**
     *
     * @type {number}
     * @memberof OrderBookResponse
     */
    T?: number;
    /**
     *
     * @type {number}
     * @memberof OrderBookResponse
     */
    u?: number;
    /**
     *
     * @type {Array<OrderBookResponseBidsItem>}
     * @memberof OrderBookResponse
     */
    bids?: Array<OrderBookResponseBidsItem>;
    /**
     *
     * @type {Array<OrderBookResponseAsksItem>}
     * @memberof OrderBookResponse
     */
    asks?: Array<OrderBookResponseAsksItem>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlaceMultipleOrdersOrdersParameterInner
 */
interface PlaceMultipleOrdersOrdersParameterInner {
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    side?: PlaceMultipleOrdersOrdersParameterInnerSideEnum;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    type?: PlaceMultipleOrdersOrdersParameterInnerTypeEnum;
    /**
     *
     * @type {number}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    quantity?: number;
    /**
     *
     * @type {number}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    price?: number;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    timeInForce?: PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum;
    /**
     *
     * @type {boolean}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    postOnly?: boolean;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    newOrderRespType?: PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    clientOrderId?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlaceMultipleOrdersOrdersParameterInner
     */
    isMmp?: boolean;
}
declare const PlaceMultipleOrdersOrdersParameterInnerSideEnum: {
    readonly BUY: "BUY";
    readonly SELL: "SELL";
};
type PlaceMultipleOrdersOrdersParameterInnerSideEnum = (typeof PlaceMultipleOrdersOrdersParameterInnerSideEnum)[keyof typeof PlaceMultipleOrdersOrdersParameterInnerSideEnum];
declare const PlaceMultipleOrdersOrdersParameterInnerTypeEnum: {
    readonly LIMIT: "LIMIT";
};
type PlaceMultipleOrdersOrdersParameterInnerTypeEnum = (typeof PlaceMultipleOrdersOrdersParameterInnerTypeEnum)[keyof typeof PlaceMultipleOrdersOrdersParameterInnerTypeEnum];
declare const PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum: {
    readonly GTC: "GTC";
    readonly IOC: "IOC";
    readonly FOK: "FOK";
};
type PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum = (typeof PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum)[keyof typeof PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum];
declare const PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum: {
    readonly ACK: "ACK";
    readonly RESULT: "RESULT";
};
type PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum = (typeof PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum)[keyof typeof PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum];

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlaceMultipleOrdersResponseInner
 */
interface PlaceMultipleOrdersResponseInner {
    /**
     *
     * @type {number}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    type?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    postOnly?: boolean;
    /**
     *
     * @type {string}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    clientOrderId?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlaceMultipleOrdersResponseInner
     */
    mmp?: boolean;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface PlaceMultipleOrdersResponse
 */
interface PlaceMultipleOrdersResponse extends Array<PlaceMultipleOrdersResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface QueryBlockTradeDetailsResponseLegsInner
 */
interface QueryBlockTradeDetailsResponseLegsInner {
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponseLegsInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponseLegsInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponseLegsInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponseLegsInner
     */
    price?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface QueryBlockTradeDetailsResponse
 */
interface QueryBlockTradeDetailsResponse {
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponse
     */
    blockTradeSettlementKey?: string;
    /**
     *
     * @type {number}
     * @memberof QueryBlockTradeDetailsResponse
     */
    expireTime?: number;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponse
     */
    liquidity?: string;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeDetailsResponse
     */
    status?: string;
    /**
     *
     * @type {number}
     * @memberof QueryBlockTradeDetailsResponse
     */
    createTime?: number;
    /**
     *
     * @type {Array<QueryBlockTradeDetailsResponseLegsInner>}
     * @memberof QueryBlockTradeDetailsResponse
     */
    legs?: Array<QueryBlockTradeDetailsResponseLegsInner>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface QueryBlockTradeOrderResponseInner
 */
interface QueryBlockTradeOrderResponseInner {
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeOrderResponseInner
     */
    blockTradeSettlementKey?: string;
    /**
     *
     * @type {number}
     * @memberof QueryBlockTradeOrderResponseInner
     */
    expireTime?: number;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeOrderResponseInner
     */
    liquidity?: string;
    /**
     *
     * @type {string}
     * @memberof QueryBlockTradeOrderResponseInner
     */
    status?: string;
    /**
     *
     * @type {number}
     * @memberof QueryBlockTradeOrderResponseInner
     */
    createTime?: number;
    /**
     *
     * @type {Array<ExtendBlockTradeOrderResponseLegsInner>}
     * @memberof QueryBlockTradeOrderResponseInner
     */
    legs?: Array<ExtendBlockTradeOrderResponseLegsInner>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface QueryBlockTradeOrderResponse
 */
interface QueryBlockTradeOrderResponse extends Array<QueryBlockTradeOrderResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface QueryCurrentOpenOptionOrdersResponseInner
 */
interface QueryCurrentOpenOptionOrdersResponseInner {
    /**
     *
     * @type {number}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    executedQty?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    fee?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    timeInForce?: string;
    /**
     *
     * @type {boolean}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    postOnly?: boolean;
    /**
     *
     * @type {number}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    createTime?: number;
    /**
     *
     * @type {number}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    updateTime?: number;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    avgPrice?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    quoteAsset?: string;
    /**
     *
     * @type {boolean}
     * @memberof QueryCurrentOpenOptionOrdersResponseInner
     */
    mmp?: boolean;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface QueryCurrentOpenOptionOrdersResponse
 */
interface QueryCurrentOpenOptionOrdersResponse extends Array<QueryCurrentOpenOptionOrdersResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface QueryOptionOrderHistoryResponseInner
 */
interface QueryOptionOrderHistoryResponseInner {
    /**
     *
     * @type {number}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    executedQty?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    fee?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    timeInForce?: string;
    /**
     *
     * @type {boolean}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    postOnly?: boolean;
    /**
     *
     * @type {number}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    createTime?: number;
    /**
     *
     * @type {number}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    updateTime?: number;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    reason?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    avgPrice?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    source?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    quoteAsset?: string;
    /**
     *
     * @type {boolean}
     * @memberof QueryOptionOrderHistoryResponseInner
     */
    mmp?: boolean;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface QueryOptionOrderHistoryResponse
 */
interface QueryOptionOrderHistoryResponse extends Array<QueryOptionOrderHistoryResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface QuerySingleOrderResponse
 */
interface QuerySingleOrderResponse {
    /**
     *
     * @type {number}
     * @memberof QuerySingleOrderResponse
     */
    orderId?: number;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    executedQty?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    fee?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    side?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    timeInForce?: string;
    /**
     *
     * @type {boolean}
     * @memberof QuerySingleOrderResponse
     */
    reduceOnly?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof QuerySingleOrderResponse
     */
    postOnly?: boolean;
    /**
     *
     * @type {number}
     * @memberof QuerySingleOrderResponse
     */
    createTime?: number;
    /**
     *
     * @type {number}
     * @memberof QuerySingleOrderResponse
     */
    updateTime?: number;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    avgPrice?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    source?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof QuerySingleOrderResponse
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof QuerySingleOrderResponse
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof QuerySingleOrderResponse
     */
    quoteAsset?: string;
    /**
     *
     * @type {boolean}
     * @memberof QuerySingleOrderResponse
     */
    mmp?: boolean;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface RecentBlockTradesListResponseInner
 */
interface RecentBlockTradesListResponseInner {
    /**
     *
     * @type {number}
     * @memberof RecentBlockTradesListResponseInner
     */
    id?: number;
    /**
     *
     * @type {number}
     * @memberof RecentBlockTradesListResponseInner
     */
    tradeId?: number;
    /**
     *
     * @type {string}
     * @memberof RecentBlockTradesListResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof RecentBlockTradesListResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof RecentBlockTradesListResponseInner
     */
    qty?: string;
    /**
     *
     * @type {string}
     * @memberof RecentBlockTradesListResponseInner
     */
    quoteQty?: string;
    /**
     *
     * @type {number}
     * @memberof RecentBlockTradesListResponseInner
     */
    side?: number;
    /**
     *
     * @type {number}
     * @memberof RecentBlockTradesListResponseInner
     */
    time?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface RecentBlockTradesListResponse
 */
interface RecentBlockTradesListResponse extends Array<RecentBlockTradesListResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface RecentTradesListResponseInner
 */
interface RecentTradesListResponseInner {
    /**
     *
     * @type {string}
     * @memberof RecentTradesListResponseInner
     */
    id?: string;
    /**
     *
     * @type {string}
     * @memberof RecentTradesListResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof RecentTradesListResponseInner
     */
    price?: string;
    /**
     *
     * @type {string}
     * @memberof RecentTradesListResponseInner
     */
    qty?: string;
    /**
     *
     * @type {string}
     * @memberof RecentTradesListResponseInner
     */
    quoteQty?: string;
    /**
     *
     * @type {number}
     * @memberof RecentTradesListResponseInner
     */
    side?: number;
    /**
     *
     * @type {number}
     * @memberof RecentTradesListResponseInner
     */
    time?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface RecentTradesListResponse
 */
interface RecentTradesListResponse extends Array<RecentTradesListResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface ResetMarketMakerProtectionConfigResponse
 */
interface ResetMarketMakerProtectionConfigResponse {
    /**
     *
     * @type {number}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    underlyingId?: number;
    /**
     *
     * @type {string}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    underlying?: string;
    /**
     *
     * @type {number}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    windowTimeInMilliseconds?: number;
    /**
     *
     * @type {number}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    frozenTimeInMilliseconds?: number;
    /**
     *
     * @type {string}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    qtyLimit?: string;
    /**
     *
     * @type {string}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    deltaLimit?: string;
    /**
     *
     * @type {number}
     * @memberof ResetMarketMakerProtectionConfigResponse
     */
    lastTriggerTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface SetAutoCancelAllOpenOrdersResponse
 */
interface SetAutoCancelAllOpenOrdersResponse {
    /**
     *
     * @type {string}
     * @memberof SetAutoCancelAllOpenOrdersResponse
     */
    underlying?: string;
    /**
     *
     * @type {number}
     * @memberof SetAutoCancelAllOpenOrdersResponse
     */
    countdownTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface SetMarketMakerProtectionConfigResponse
 */
interface SetMarketMakerProtectionConfigResponse {
    /**
     *
     * @type {number}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    underlyingId?: number;
    /**
     *
     * @type {string}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    underlying?: string;
    /**
     *
     * @type {number}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    windowTimeInMilliseconds?: number;
    /**
     *
     * @type {number}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    frozenTimeInMilliseconds?: number;
    /**
     *
     * @type {string}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    qtyLimit?: string;
    /**
     *
     * @type {string}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    deltaLimit?: string;
    /**
     *
     * @type {number}
     * @memberof SetMarketMakerProtectionConfigResponse
     */
    lastTriggerTime?: number;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface StartUserDataStreamResponse
 */
interface StartUserDataStreamResponse {
    /**
     *
     * @type {string}
     * @memberof StartUserDataStreamResponse
     */
    listenKey?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface SymbolPriceTickerResponse
 */
interface SymbolPriceTickerResponse {
    /**
     *
     * @type {number}
     * @memberof SymbolPriceTickerResponse
     */
    time?: number;
    /**
     *
     * @type {string}
     * @memberof SymbolPriceTickerResponse
     */
    indexPrice?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface Ticker24hrPriceChangeStatisticsResponseInner
 */
interface Ticker24hrPriceChangeStatisticsResponseInner {
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    priceChange?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    priceChangePercent?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    lastPrice?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    lastQty?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    open?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    high?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    low?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    volume?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    amount?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    bidPrice?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    askPrice?: string;
    /**
     *
     * @type {number}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    openTime?: number;
    /**
     *
     * @type {number}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    closeTime?: number;
    /**
     *
     * @type {number}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    firstTradeId?: number;
    /**
     *
     * @type {number}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    tradeCount?: number;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    strikePrice?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24hrPriceChangeStatisticsResponseInner
     */
    exercisePrice?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface Ticker24hrPriceChangeStatisticsResponse
 */
interface Ticker24hrPriceChangeStatisticsResponse extends Array<Ticker24hrPriceChangeStatisticsResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface UserExerciseRecordResponseInner
 */
interface UserExerciseRecordResponseInner {
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    id?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    currency?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    symbol?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    exercisePrice?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    markPrice?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    quantity?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    amount?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    fee?: string;
    /**
     *
     * @type {number}
     * @memberof UserExerciseRecordResponseInner
     */
    createDate?: number;
    /**
     *
     * @type {number}
     * @memberof UserExerciseRecordResponseInner
     */
    priceScale?: number;
    /**
     *
     * @type {number}
     * @memberof UserExerciseRecordResponseInner
     */
    quantityScale?: number;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    optionSide?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    positionSide?: string;
    /**
     *
     * @type {string}
     * @memberof UserExerciseRecordResponseInner
     */
    quoteAsset?: string;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface UserExerciseRecordResponse
 */
interface UserExerciseRecordResponse extends Array<UserExerciseRecordResponseInner> {
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * AccountApi - interface
 * @interface AccountApi
 */
interface AccountApiInterface {
    /**
     * Query account funding flows.
     *
     * Weight: 1
     *
     * @summary Account Funding Flow (USER_DATA)
     * @param {AccountFundingFlowRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApiInterface
     */
    accountFundingFlow(requestParameters: AccountFundingFlowRequest): Promise<RestApiResponse<AccountFundingFlowResponse>>;
    /**
     * Get download id for option transaction history
     *
     * Request Limitation is 5 times per month, shared by > front end download page and rest api
     * The time between `startTime` and `endTime` can not be longer than 1 year
     *
     * Weight: 5
     *
     * @summary Get Download Id For Option Transaction History (USER_DATA)
     * @param {GetDownloadIdForOptionTransactionHistoryRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApiInterface
     */
    getDownloadIdForOptionTransactionHistory(requestParameters: GetDownloadIdForOptionTransactionHistoryRequest): Promise<RestApiResponse<GetDownloadIdForOptionTransactionHistoryResponse>>;
    /**
     * Get option transaction history download Link by Id
     *
     * Download link expiration: 24h
     *
     * Weight: 5
     *
     * @summary Get Option Transaction History Download Link by Id (USER_DATA)
     * @param {GetOptionTransactionHistoryDownloadLinkByIdRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApiInterface
     */
    getOptionTransactionHistoryDownloadLinkById(requestParameters: GetOptionTransactionHistoryDownloadLinkByIdRequest): Promise<RestApiResponse<GetOptionTransactionHistoryDownloadLinkByIdResponse>>;
    /**
     * Get current account information.
     *
     * Weight: 3
     *
     * @summary Option Account Information(TRADE)
     * @param {OptionAccountInformationRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApiInterface
     */
    optionAccountInformation(requestParameters?: OptionAccountInformationRequest): Promise<RestApiResponse<OptionAccountInformationResponse>>;
    /**
     * Get current account information.
     *
     * Weight: 3
     *
     * @summary Option Margin Account Information (USER_DATA)
     * @param {OptionMarginAccountInformationRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApiInterface
     */
    optionMarginAccountInformation(requestParameters?: OptionMarginAccountInformationRequest): Promise<RestApiResponse<OptionMarginAccountInformationResponse>>;
}
/**
 * Request parameters for accountFundingFlow operation in AccountApi.
 * @interface AccountFundingFlowRequest
 */
interface AccountFundingFlowRequest {
    /**
     * Asset type, only support USDT  as of now
     * @type {string}
     * @memberof AccountApiAccountFundingFlow
     */
    readonly currency: string;
    /**
     * Return the recordId and subsequent data, the latest data is returned by default, e.g 100000
     * @type {number}
     * @memberof AccountApiAccountFundingFlow
     */
    readonly recordId?: number;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof AccountApiAccountFundingFlow
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof AccountApiAccountFundingFlow
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof AccountApiAccountFundingFlow
     */
    readonly limit?: number;
    /**
     *
     * @type {number}
     * @memberof AccountApiAccountFundingFlow
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for getDownloadIdForOptionTransactionHistory operation in AccountApi.
 * @interface GetDownloadIdForOptionTransactionHistoryRequest
 */
interface GetDownloadIdForOptionTransactionHistoryRequest {
    /**
     * Timestamp in ms
     * @type {number}
     * @memberof AccountApiGetDownloadIdForOptionTransactionHistory
     */
    readonly startTime: number;
    /**
     * Timestamp in ms
     * @type {number}
     * @memberof AccountApiGetDownloadIdForOptionTransactionHistory
     */
    readonly endTime: number;
    /**
     *
     * @type {number}
     * @memberof AccountApiGetDownloadIdForOptionTransactionHistory
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for getOptionTransactionHistoryDownloadLinkById operation in AccountApi.
 * @interface GetOptionTransactionHistoryDownloadLinkByIdRequest
 */
interface GetOptionTransactionHistoryDownloadLinkByIdRequest {
    /**
     * get by download id api
     * @type {string}
     * @memberof AccountApiGetOptionTransactionHistoryDownloadLinkById
     */
    readonly downloadId: string;
    /**
     *
     * @type {number}
     * @memberof AccountApiGetOptionTransactionHistoryDownloadLinkById
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for optionAccountInformation operation in AccountApi.
 * @interface OptionAccountInformationRequest
 */
interface OptionAccountInformationRequest {
    /**
     *
     * @type {number}
     * @memberof AccountApiOptionAccountInformation
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for optionMarginAccountInformation operation in AccountApi.
 * @interface OptionMarginAccountInformationRequest
 */
interface OptionMarginAccountInformationRequest {
    /**
     *
     * @type {number}
     * @memberof AccountApiOptionMarginAccountInformation
     */
    readonly recvWindow?: number;
}
/**
 * AccountApi - object-oriented interface
 * @class AccountApi
 */
declare class AccountApi implements AccountApiInterface {
    private readonly configuration;
    private localVarAxiosParamCreator;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * Query account funding flows.
     *
     * Weight: 1
     *
     * @summary Account Funding Flow (USER_DATA)
     * @param {AccountFundingFlowRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AccountFundingFlowResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Account-Funding-Flow Binance API Documentation}
     */
    accountFundingFlow(requestParameters: AccountFundingFlowRequest): Promise<RestApiResponse<AccountFundingFlowResponse>>;
    /**
     * Get download id for option transaction history
     *
     * Request Limitation is 5 times per month, shared by > front end download page and rest api
     * The time between `startTime` and `endTime` can not be longer than 1 year
     *
     * Weight: 5
     *
     * @summary Get Download Id For Option Transaction History (USER_DATA)
     * @param {GetDownloadIdForOptionTransactionHistoryRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetDownloadIdForOptionTransactionHistoryResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Get-Download-Id-For-Option-Transaction-History Binance API Documentation}
     */
    getDownloadIdForOptionTransactionHistory(requestParameters: GetDownloadIdForOptionTransactionHistoryRequest): Promise<RestApiResponse<GetDownloadIdForOptionTransactionHistoryResponse>>;
    /**
     * Get option transaction history download Link by Id
     *
     * Download link expiration: 24h
     *
     * Weight: 5
     *
     * @summary Get Option Transaction History Download Link by Id (USER_DATA)
     * @param {GetOptionTransactionHistoryDownloadLinkByIdRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetOptionTransactionHistoryDownloadLinkByIdResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Get-Option-Transaction-History-Download-Link-by-Id Binance API Documentation}
     */
    getOptionTransactionHistoryDownloadLinkById(requestParameters: GetOptionTransactionHistoryDownloadLinkByIdRequest): Promise<RestApiResponse<GetOptionTransactionHistoryDownloadLinkByIdResponse>>;
    /**
     * Get current account information.
     *
     * Weight: 3
     *
     * @summary Option Account Information(TRADE)
     * @param {OptionAccountInformationRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionAccountInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Option-Account-Information Binance API Documentation}
     */
    optionAccountInformation(requestParameters?: OptionAccountInformationRequest): Promise<RestApiResponse<OptionAccountInformationResponse>>;
    /**
     * Get current account information.
     *
     * Weight: 3
     *
     * @summary Option Margin Account Information (USER_DATA)
     * @param {OptionMarginAccountInformationRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionMarginAccountInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof AccountApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Option-Margin-Account-Information Binance API Documentation}
     */
    optionMarginAccountInformation(requestParameters?: OptionMarginAccountInformationRequest): Promise<RestApiResponse<OptionMarginAccountInformationResponse>>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * MarketDataApi - interface
 * @interface MarketDataApi
 */
interface MarketDataApiInterface {
    /**
     * Test connectivity to the Rest API and get the current server time.
     *
     * Weight: 1
     *
     * @summary Check Server Time
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    checkServerTime(): Promise<RestApiResponse<CheckServerTimeResponse>>;
    /**
     * Current exchange trading rules and symbol information
     *
     * Weight: 1
     *
     * @summary Exchange Information
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    exchangeInformation(): Promise<RestApiResponse<ExchangeInformationResponse>>;
    /**
     * Get historical exercise records.
     * REALISTIC_VALUE_STRICKEN -> Exercised
     * EXTRINSIC_VALUE_EXPIRED -> Expired OTM
     *
     * Weight: 3
     *
     * @summary Historical Exercise Records
     * @param {HistoricalExerciseRecordsRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    historicalExerciseRecords(requestParameters?: HistoricalExerciseRecordsRequest): Promise<RestApiResponse<HistoricalExerciseRecordsResponse>>;
    /**
     * Kline/candlestick bars for an option symbol.
     * Klines are uniquely identified by their open time.
     *
     * If startTime and endTime are not sent, the most recent klines are returned.
     *
     * Weight: 1
     *
     * @summary Kline/Candlestick Data
     * @param {KlineCandlestickDataRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    klineCandlestickData(requestParameters: KlineCandlestickDataRequest): Promise<RestApiResponse<KlineCandlestickDataResponse>>;
    /**
     * Get older market historical trades.
     *
     * Weight: 20
     *
     * @summary Old Trades Lookup (MARKET_DATA)
     * @param {OldTradesLookupRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    oldTradesLookup(requestParameters: OldTradesLookupRequest): Promise<RestApiResponse<OldTradesLookupResponse>>;
    /**
     * Get open interest for specific underlying asset on specific expiration date.
     *
     * Weight: 0
     *
     * @summary Open Interest
     * @param {OpenInterestRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    openInterest(requestParameters: OpenInterestRequest$1): Promise<RestApiResponse<OpenInterestResponse$1>>;
    /**
     * Option mark price and greek info.
     *
     * Weight: 5
     *
     * @summary Option Mark Price
     * @param {OptionMarkPriceRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    optionMarkPrice(requestParameters?: OptionMarkPriceRequest): Promise<RestApiResponse<OptionMarkPriceResponse>>;
    /**
     * Check orderbook depth on specific symbol
     *
     * Weight: limit         | weight
     * ------------  | ------------
     * 5, 10, 20, 50 | 2
     * 100           | 5
     * 500           | 10
     * 1000          | 20
     *
     * @summary Order Book
     * @param {OrderBookRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    orderBook(requestParameters: OrderBookRequest): Promise<RestApiResponse<OrderBookResponse>>;
    /**
     * Get recent block trades
     *
     * Weight: 5
     *
     * @summary Recent Block Trades List
     * @param {RecentBlockTradesListRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    recentBlockTradesList(requestParameters?: RecentBlockTradesListRequest): Promise<RestApiResponse<RecentBlockTradesListResponse>>;
    /**
     * Get recent market trades
     *
     * Weight: 5
     *
     * @summary Recent Trades List
     * @param {RecentTradesListRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    recentTradesList(requestParameters: RecentTradesListRequest): Promise<RestApiResponse<RecentTradesListResponse>>;
    /**
     * Get spot index price for option underlying.
     *
     * Weight: 1
     *
     * @summary Symbol Price Ticker
     * @param {SymbolPriceTickerRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    symbolPriceTicker(requestParameters: SymbolPriceTickerRequest): Promise<RestApiResponse<SymbolPriceTickerResponse>>;
    /**
     * Test connectivity to the Rest API.
     *
     * Weight: 1
     *
     * @summary Test Connectivity
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    testConnectivity(): Promise<RestApiResponse<void>>;
    /**
     * 24 hour rolling window price change statistics.
     *
     * Weight: 5
     *
     * @summary 24hr Ticker Price Change Statistics
     * @param {Ticker24hrPriceChangeStatisticsRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApiInterface
     */
    ticker24hrPriceChangeStatistics(requestParameters?: Ticker24hrPriceChangeStatisticsRequest): Promise<RestApiResponse<Ticker24hrPriceChangeStatisticsResponse>>;
}
/**
 * Request parameters for historicalExerciseRecords operation in MarketDataApi.
 * @interface HistoricalExerciseRecordsRequest
 */
interface HistoricalExerciseRecordsRequest {
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketDataApiHistoricalExerciseRecords
     */
    readonly underlying?: string;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof MarketDataApiHistoricalExerciseRecords
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof MarketDataApiHistoricalExerciseRecords
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof MarketDataApiHistoricalExerciseRecords
     */
    readonly limit?: number;
}
/**
 * Request parameters for klineCandlestickData operation in MarketDataApi.
 * @interface KlineCandlestickDataRequest
 */
interface KlineCandlestickDataRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiKlineCandlestickData
     */
    readonly symbol: string;
    /**
     * Time interval
     * @type {string}
     * @memberof MarketDataApiKlineCandlestickData
     */
    readonly interval: string;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof MarketDataApiKlineCandlestickData
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof MarketDataApiKlineCandlestickData
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof MarketDataApiKlineCandlestickData
     */
    readonly limit?: number;
}
/**
 * Request parameters for oldTradesLookup operation in MarketDataApi.
 * @interface OldTradesLookupRequest
 */
interface OldTradesLookupRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiOldTradesLookup
     */
    readonly symbol: string;
    /**
     * The UniqueId ID from which to return. The latest deal record is returned by default
     * @type {number}
     * @memberof MarketDataApiOldTradesLookup
     */
    readonly fromId?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof MarketDataApiOldTradesLookup
     */
    readonly limit?: number;
}
/**
 * Request parameters for openInterest operation in MarketDataApi.
 * @interface OpenInterestRequest
 */
interface OpenInterestRequest$1 {
    /**
     * underlying asset, e.g ETH/BTC
     * @type {string}
     * @memberof MarketDataApiOpenInterest
     */
    readonly underlyingAsset: string;
    /**
     * expiration date, e.g 221225
     * @type {string}
     * @memberof MarketDataApiOpenInterest
     */
    readonly expiration: string;
}
/**
 * Request parameters for optionMarkPrice operation in MarketDataApi.
 * @interface OptionMarkPriceRequest
 */
interface OptionMarkPriceRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiOptionMarkPrice
     */
    readonly symbol?: string;
}
/**
 * Request parameters for orderBook operation in MarketDataApi.
 * @interface OrderBookRequest
 */
interface OrderBookRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiOrderBook
     */
    readonly symbol: string;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof MarketDataApiOrderBook
     */
    readonly limit?: number;
}
/**
 * Request parameters for recentBlockTradesList operation in MarketDataApi.
 * @interface RecentBlockTradesListRequest
 */
interface RecentBlockTradesListRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiRecentBlockTradesList
     */
    readonly symbol?: string;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof MarketDataApiRecentBlockTradesList
     */
    readonly limit?: number;
}
/**
 * Request parameters for recentTradesList operation in MarketDataApi.
 * @interface RecentTradesListRequest
 */
interface RecentTradesListRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiRecentTradesList
     */
    readonly symbol: string;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof MarketDataApiRecentTradesList
     */
    readonly limit?: number;
}
/**
 * Request parameters for symbolPriceTicker operation in MarketDataApi.
 * @interface SymbolPriceTickerRequest
 */
interface SymbolPriceTickerRequest {
    /**
     * Option underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketDataApiSymbolPriceTicker
     */
    readonly underlying: string;
}
/**
 * Request parameters for ticker24hrPriceChangeStatistics operation in MarketDataApi.
 * @interface Ticker24hrPriceChangeStatisticsRequest
 */
interface Ticker24hrPriceChangeStatisticsRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketDataApiTicker24hrPriceChangeStatistics
     */
    readonly symbol?: string;
}
/**
 * MarketDataApi - object-oriented interface
 * @class MarketDataApi
 */
declare class MarketDataApi implements MarketDataApiInterface {
    private readonly configuration;
    private localVarAxiosParamCreator;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * Test connectivity to the Rest API and get the current server time.
     *
     * Weight: 1
     *
     * @summary Check Server Time
     * @returns {Promise<RestApiResponse<CheckServerTimeResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Check-Server-Time Binance API Documentation}
     */
    checkServerTime(): Promise<RestApiResponse<CheckServerTimeResponse>>;
    /**
     * Current exchange trading rules and symbol information
     *
     * Weight: 1
     *
     * @summary Exchange Information
     * @returns {Promise<RestApiResponse<ExchangeInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Exchange-Information Binance API Documentation}
     */
    exchangeInformation(): Promise<RestApiResponse<ExchangeInformationResponse>>;
    /**
     * Get historical exercise records.
     * REALISTIC_VALUE_STRICKEN -> Exercised
     * EXTRINSIC_VALUE_EXPIRED -> Expired OTM
     *
     * Weight: 3
     *
     * @summary Historical Exercise Records
     * @param {HistoricalExerciseRecordsRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<HistoricalExerciseRecordsResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Historical-Exercise-Records Binance API Documentation}
     */
    historicalExerciseRecords(requestParameters?: HistoricalExerciseRecordsRequest): Promise<RestApiResponse<HistoricalExerciseRecordsResponse>>;
    /**
     * Kline/candlestick bars for an option symbol.
     * Klines are uniquely identified by their open time.
     *
     * If startTime and endTime are not sent, the most recent klines are returned.
     *
     * Weight: 1
     *
     * @summary Kline/Candlestick Data
     * @param {KlineCandlestickDataRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<KlineCandlestickDataResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Kline-Candlestick-Data Binance API Documentation}
     */
    klineCandlestickData(requestParameters: KlineCandlestickDataRequest): Promise<RestApiResponse<KlineCandlestickDataResponse>>;
    /**
     * Get older market historical trades.
     *
     * Weight: 20
     *
     * @summary Old Trades Lookup (MARKET_DATA)
     * @param {OldTradesLookupRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OldTradesLookupResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Old-Trades-Lookup Binance API Documentation}
     */
    oldTradesLookup(requestParameters: OldTradesLookupRequest): Promise<RestApiResponse<OldTradesLookupResponse>>;
    /**
     * Get open interest for specific underlying asset on specific expiration date.
     *
     * Weight: 0
     *
     * @summary Open Interest
     * @param {OpenInterestRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OpenInterestResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Open-Interest Binance API Documentation}
     */
    openInterest(requestParameters: OpenInterestRequest$1): Promise<RestApiResponse<OpenInterestResponse$1>>;
    /**
     * Option mark price and greek info.
     *
     * Weight: 5
     *
     * @summary Option Mark Price
     * @param {OptionMarkPriceRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionMarkPriceResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Option-Mark-Price Binance API Documentation}
     */
    optionMarkPrice(requestParameters?: OptionMarkPriceRequest): Promise<RestApiResponse<OptionMarkPriceResponse>>;
    /**
     * Check orderbook depth on specific symbol
     *
     * Weight: limit         | weight
     * ------------  | ------------
     * 5, 10, 20, 50 | 2
     * 100           | 5
     * 500           | 10
     * 1000          | 20
     *
     * @summary Order Book
     * @param {OrderBookRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OrderBookResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Order-Book Binance API Documentation}
     */
    orderBook(requestParameters: OrderBookRequest): Promise<RestApiResponse<OrderBookResponse>>;
    /**
     * Get recent block trades
     *
     * Weight: 5
     *
     * @summary Recent Block Trades List
     * @param {RecentBlockTradesListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<RecentBlockTradesListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Recent-Block-Trade-List Binance API Documentation}
     */
    recentBlockTradesList(requestParameters?: RecentBlockTradesListRequest): Promise<RestApiResponse<RecentBlockTradesListResponse>>;
    /**
     * Get recent market trades
     *
     * Weight: 5
     *
     * @summary Recent Trades List
     * @param {RecentTradesListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<RecentTradesListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Recent-Trades-List Binance API Documentation}
     */
    recentTradesList(requestParameters: RecentTradesListRequest): Promise<RestApiResponse<RecentTradesListResponse>>;
    /**
     * Get spot index price for option underlying.
     *
     * Weight: 1
     *
     * @summary Symbol Price Ticker
     * @param {SymbolPriceTickerRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<SymbolPriceTickerResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Symbol-Price-Ticker Binance API Documentation}
     */
    symbolPriceTicker(requestParameters: SymbolPriceTickerRequest): Promise<RestApiResponse<SymbolPriceTickerResponse>>;
    /**
     * Test connectivity to the Rest API.
     *
     * Weight: 1
     *
     * @summary Test Connectivity
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Test-Connectivity Binance API Documentation}
     */
    testConnectivity(): Promise<RestApiResponse<void>>;
    /**
     * 24 hour rolling window price change statistics.
     *
     * Weight: 5
     *
     * @summary 24hr Ticker Price Change Statistics
     * @param {Ticker24hrPriceChangeStatisticsRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<Ticker24hrPriceChangeStatisticsResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketDataApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/24hr-Ticker-Price-Change-Statistics Binance API Documentation}
     */
    ticker24hrPriceChangeStatistics(requestParameters?: Ticker24hrPriceChangeStatisticsRequest): Promise<RestApiResponse<Ticker24hrPriceChangeStatisticsResponse>>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * MarketMakerBlockTradeApi - interface
 * @interface MarketMakerBlockTradeApi
 */
interface MarketMakerBlockTradeApiInterface {
    /**
     * Accept a block trade order
     *
     * Weight: 5
     *
     * @summary Accept Block Trade Order (TRADE)
     * @param {AcceptBlockTradeOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    acceptBlockTradeOrder(requestParameters: AcceptBlockTradeOrderRequest): Promise<RestApiResponse<AcceptBlockTradeOrderResponse>>;
    /**
     * Gets block trades for a specific account.
     *
     * Weight: 5
     *
     * @summary Account Block Trade List (USER_DATA)
     * @param {AccountBlockTradeListRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    accountBlockTradeList(requestParameters?: AccountBlockTradeListRequest): Promise<RestApiResponse<AccountBlockTradeListResponse>>;
    /**
     * Cancel a block trade order.
     *
     * Weight: 5
     *
     * @summary Cancel Block Trade Order (TRADE)
     * @param {CancelBlockTradeOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    cancelBlockTradeOrder(requestParameters: CancelBlockTradeOrderRequest): Promise<RestApiResponse<void>>;
    /**
     * Extends a block trade expire time by 30 mins from the current time.
     *
     * Weight: 5
     *
     * @summary Extend Block Trade Order (TRADE)
     * @param {ExtendBlockTradeOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    extendBlockTradeOrder(requestParameters: ExtendBlockTradeOrderRequest): Promise<RestApiResponse<ExtendBlockTradeOrderResponse>>;
    /**
     * Send in a new block trade order.
     *
     * Weight: 5
     *
     * @summary New Block Trade Order (TRADE)
     * @param {NewBlockTradeOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    newBlockTradeOrder(requestParameters: NewBlockTradeOrderRequest): Promise<RestApiResponse<NewBlockTradeOrderResponse>>;
    /**
     * Query block trade details; returns block trade details from counterparty's perspective.
     *
     * Weight: 5
     *
     * @summary Query Block Trade Details (USER_DATA)
     * @param {QueryBlockTradeDetailsRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    queryBlockTradeDetails(requestParameters: QueryBlockTradeDetailsRequest): Promise<RestApiResponse<QueryBlockTradeDetailsResponse>>;
    /**
     * Check block trade order status.
     *
     * Weight: 5
     *
     * @summary Query Block Trade Order (TRADE)
     * @param {QueryBlockTradeOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApiInterface
     */
    queryBlockTradeOrder(requestParameters?: QueryBlockTradeOrderRequest): Promise<RestApiResponse<QueryBlockTradeOrderResponse>>;
}
/**
 * Request parameters for acceptBlockTradeOrder operation in MarketMakerBlockTradeApi.
 * @interface AcceptBlockTradeOrderRequest
 */
interface AcceptBlockTradeOrderRequest {
    /**
     *
     * @type {string}
     * @memberof MarketMakerBlockTradeApiAcceptBlockTradeOrder
     */
    readonly blockOrderMatchingKey: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiAcceptBlockTradeOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for accountBlockTradeList operation in MarketMakerBlockTradeApi.
 * @interface AccountBlockTradeListRequest
 */
interface AccountBlockTradeListRequest {
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof MarketMakerBlockTradeApiAccountBlockTradeList
     */
    readonly endTime?: number;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof MarketMakerBlockTradeApiAccountBlockTradeList
     */
    readonly startTime?: number;
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerBlockTradeApiAccountBlockTradeList
     */
    readonly underlying?: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiAccountBlockTradeList
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for cancelBlockTradeOrder operation in MarketMakerBlockTradeApi.
 * @interface CancelBlockTradeOrderRequest
 */
interface CancelBlockTradeOrderRequest {
    /**
     *
     * @type {string}
     * @memberof MarketMakerBlockTradeApiCancelBlockTradeOrder
     */
    readonly blockOrderMatchingKey: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiCancelBlockTradeOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for extendBlockTradeOrder operation in MarketMakerBlockTradeApi.
 * @interface ExtendBlockTradeOrderRequest
 */
interface ExtendBlockTradeOrderRequest {
    /**
     *
     * @type {string}
     * @memberof MarketMakerBlockTradeApiExtendBlockTradeOrder
     */
    readonly blockOrderMatchingKey: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiExtendBlockTradeOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for newBlockTradeOrder operation in MarketMakerBlockTradeApi.
 * @interface NewBlockTradeOrderRequest
 */
interface NewBlockTradeOrderRequest {
    /**
     * Taker or Maker
     * @type {string}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly liquidity: string;
    /**
     * Max 1 (only single leg supported), list of legs parameters in JSON; example: eapi/v1/block/order/create?orders=[{"symbol":"BTC-210115-35000-C", "price":"100","quantity":"0.0002","side":"BUY","type":"LIMIT"}]
     * @type {Array<object>}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly legs: Array<object>;
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly symbol: string;
    /**
     * BUY or SELL
     * @type {'BUY' | 'SELL'}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly side: NewBlockTradeOrderSideEnum;
    /**
     * Order Price
     * @type {number}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly price: number;
    /**
     * Order Quantity
     * @type {number}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly quantity: number;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiNewBlockTradeOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for queryBlockTradeDetails operation in MarketMakerBlockTradeApi.
 * @interface QueryBlockTradeDetailsRequest
 */
interface QueryBlockTradeDetailsRequest {
    /**
     *
     * @type {string}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeDetails
     */
    readonly blockOrderMatchingKey: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeDetails
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for queryBlockTradeOrder operation in MarketMakerBlockTradeApi.
 * @interface QueryBlockTradeOrderRequest
 */
interface QueryBlockTradeOrderRequest {
    /**
     * If specified, returns the specific block trade associated with the blockOrderMatchingKey
     * @type {string}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeOrder
     */
    readonly blockOrderMatchingKey?: string;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeOrder
     */
    readonly endTime?: number;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeOrder
     */
    readonly startTime?: number;
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeOrder
     */
    readonly underlying?: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerBlockTradeApiQueryBlockTradeOrder
     */
    readonly recvWindow?: number;
}
/**
 * MarketMakerBlockTradeApi - object-oriented interface
 * @class MarketMakerBlockTradeApi
 */
declare class MarketMakerBlockTradeApi implements MarketMakerBlockTradeApiInterface {
    private readonly configuration;
    private localVarAxiosParamCreator;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * Accept a block trade order
     *
     * Weight: 5
     *
     * @summary Accept Block Trade Order (TRADE)
     * @param {AcceptBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AcceptBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Accept-Block-Trade-Order Binance API Documentation}
     */
    acceptBlockTradeOrder(requestParameters: AcceptBlockTradeOrderRequest): Promise<RestApiResponse<AcceptBlockTradeOrderResponse>>;
    /**
     * Gets block trades for a specific account.
     *
     * Weight: 5
     *
     * @summary Account Block Trade List (USER_DATA)
     * @param {AccountBlockTradeListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AccountBlockTradeListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Account-Block-Trade-List Binance API Documentation}
     */
    accountBlockTradeList(requestParameters?: AccountBlockTradeListRequest): Promise<RestApiResponse<AccountBlockTradeListResponse>>;
    /**
     * Cancel a block trade order.
     *
     * Weight: 5
     *
     * @summary Cancel Block Trade Order (TRADE)
     * @param {CancelBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Cancel-Block-Trade-Order Binance API Documentation}
     */
    cancelBlockTradeOrder(requestParameters: CancelBlockTradeOrderRequest): Promise<RestApiResponse<void>>;
    /**
     * Extends a block trade expire time by 30 mins from the current time.
     *
     * Weight: 5
     *
     * @summary Extend Block Trade Order (TRADE)
     * @param {ExtendBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<ExtendBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Extend-Block-Trade-Order Binance API Documentation}
     */
    extendBlockTradeOrder(requestParameters: ExtendBlockTradeOrderRequest): Promise<RestApiResponse<ExtendBlockTradeOrderResponse>>;
    /**
     * Send in a new block trade order.
     *
     * Weight: 5
     *
     * @summary New Block Trade Order (TRADE)
     * @param {NewBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<NewBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/New-Block-Trade-Order Binance API Documentation}
     */
    newBlockTradeOrder(requestParameters: NewBlockTradeOrderRequest): Promise<RestApiResponse<NewBlockTradeOrderResponse>>;
    /**
     * Query block trade details; returns block trade details from counterparty's perspective.
     *
     * Weight: 5
     *
     * @summary Query Block Trade Details (USER_DATA)
     * @param {QueryBlockTradeDetailsRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryBlockTradeDetailsResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Query-Block-Trade-Detail Binance API Documentation}
     */
    queryBlockTradeDetails(requestParameters: QueryBlockTradeDetailsRequest): Promise<RestApiResponse<QueryBlockTradeDetailsResponse>>;
    /**
     * Check block trade order status.
     *
     * Weight: 5
     *
     * @summary Query Block Trade Order (TRADE)
     * @param {QueryBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerBlockTradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Query-Block-Trade-Order Binance API Documentation}
     */
    queryBlockTradeOrder(requestParameters?: QueryBlockTradeOrderRequest): Promise<RestApiResponse<QueryBlockTradeOrderResponse>>;
}
declare enum NewBlockTradeOrderSideEnum {
    BUY = "BUY",
    SELL = "SELL"
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * MarketMakerEndpointsApi - interface
 * @interface MarketMakerEndpointsApi
 */
interface MarketMakerEndpointsApiInterface {
    /**
     * This endpoint resets the time from which the countdown will begin to the time this messaged is received.  It should be called repeatedly as heartbeats.  Multiple heartbeats can be updated at once by specifying the underlying symbols as a list (ex. BTCUSDT,ETHUSDT) in the underlyings parameter.
     *
     * The response will only include underlying symbols where the heartbeat has been successfully updated.
     *
     * Weight: 10
     *
     * @summary Auto-Cancel All Open Orders (Kill-Switch) Heartbeat (TRADE)
     * @param {AutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApiInterface
     */
    autoCancelAllOpenOrders(requestParameters: AutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<AutoCancelAllOpenOrdersResponse>>;
    /**
     * This endpoint returns the auto-cancel parameters for each underlying symbol. Note only active auto-cancel parameters will be returned, if countdownTime is set to 0 (ie. countdownTime has been turned off), the underlying symbol and corresponding countdownTime parameter will not be returned in the response.
     *
     * countdownTime = 0 means the function is disabled.
     *
     * Weight: 1
     *
     * @summary Get Auto-Cancel All Open Orders (Kill-Switch) Config (TRADE)
     * @param {GetAutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApiInterface
     */
    getAutoCancelAllOpenOrders(requestParameters?: GetAutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<GetAutoCancelAllOpenOrdersResponse>>;
    /**
     * Get config for MMP.
     *
     * Weight: 1
     *
     * @summary Get Market Maker Protection Config (TRADE)
     * @param {GetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApiInterface
     */
    getMarketMakerProtectionConfig(requestParameters?: GetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<GetMarketMakerProtectionConfigResponse>>;
    /**
     * Reset MMP, start MMP order again.
     *
     * Weight: 1
     *
     * @summary Reset Market Maker Protection Config (TRADE)
     * @param {ResetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApiInterface
     */
    resetMarketMakerProtectionConfig(requestParameters?: ResetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<ResetMarketMakerProtectionConfigResponse>>;
    /**
     * This endpoint sets the parameters of the auto-cancel feature which cancels all open orders (both market maker protection and non market maker protection order types) of the underlying symbol at the end of the specified countdown time period if no heartbeat message is sent.  After the countdown time period, all open orders will be cancelled and new orders will be rejected with error code -2010 until either a heartbeat message is sent or the auto-cancel feature is turned off by setting countdownTime to 0.
     *
     *
     * This rest endpoint sets up the parameters to cancel your open orders in case of an outage or disconnection.
     * Example usage:
     * Call this endpoint with a countdownTime value of 10000 (10 seconds) to turn on the auto-cancel feature. If the corresponding countdownCancelAllHeartBeat endpoint is not called within 10 seconds with the specified underlying symbol, all open orders of the specified symbol will be automatically canceled. If this endpoint is called with an countdownTime of 0, the countdown timer will be stopped.
     * The system will check all countdowns approximately every 1000 milliseconds, **please note that sufficient redundancy should be considered when using this function**. We do not recommend setting the countdown time to be too precise or too small.
     *
     * Weight: 1
     *
     * @summary Set Auto-Cancel All Open Orders (Kill-Switch) Config (TRADE)
     * @param {SetAutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApiInterface
     */
    setAutoCancelAllOpenOrders(requestParameters: SetAutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<SetAutoCancelAllOpenOrdersResponse>>;
    /**
     * Set config for MMP.
     * Market Maker Protection(MMP) is a set of protection mechanism for option market maker, this mechanism is able to prevent mass trading in short period time. Once market maker's account branches the threshold, the Market Maker Protection will be triggered. When Market Maker Protection triggers, all the current MMP orders will be canceled, new MMP orders will be rejected. Market maker can use this time to reevaluate market and modify order price.
     *
     * Weight: 1
     *
     * @summary Set Market Maker Protection Config (TRADE)
     * @param {SetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApiInterface
     */
    setMarketMakerProtectionConfig(requestParameters?: SetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<SetMarketMakerProtectionConfigResponse>>;
}
/**
 * Request parameters for autoCancelAllOpenOrders operation in MarketMakerEndpointsApi.
 * @interface AutoCancelAllOpenOrdersRequest
 */
interface AutoCancelAllOpenOrdersRequest {
    /**
     * Option Underlying Symbols, e.g BTCUSDT,ETHUSDT
     * @type {string}
     * @memberof MarketMakerEndpointsApiAutoCancelAllOpenOrders
     */
    readonly underlyings: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerEndpointsApiAutoCancelAllOpenOrders
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for getAutoCancelAllOpenOrders operation in MarketMakerEndpointsApi.
 * @interface GetAutoCancelAllOpenOrdersRequest
 */
interface GetAutoCancelAllOpenOrdersRequest {
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerEndpointsApiGetAutoCancelAllOpenOrders
     */
    readonly underlying?: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerEndpointsApiGetAutoCancelAllOpenOrders
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for getMarketMakerProtectionConfig operation in MarketMakerEndpointsApi.
 * @interface GetMarketMakerProtectionConfigRequest
 */
interface GetMarketMakerProtectionConfigRequest {
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerEndpointsApiGetMarketMakerProtectionConfig
     */
    readonly underlying?: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerEndpointsApiGetMarketMakerProtectionConfig
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for resetMarketMakerProtectionConfig operation in MarketMakerEndpointsApi.
 * @interface ResetMarketMakerProtectionConfigRequest
 */
interface ResetMarketMakerProtectionConfigRequest {
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerEndpointsApiResetMarketMakerProtectionConfig
     */
    readonly underlying?: string;
    /**
     *
     * @type {number}
     * @memberof MarketMakerEndpointsApiResetMarketMakerProtectionConfig
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for setAutoCancelAllOpenOrders operation in MarketMakerEndpointsApi.
 * @interface SetAutoCancelAllOpenOrdersRequest
 */
interface SetAutoCancelAllOpenOrdersRequest {
    /**
     * Option underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerEndpointsApiSetAutoCancelAllOpenOrders
     */
    readonly underlying: string;
    /**
     * Countdown time in milliseconds (ex. 1,000 for 1 second). 0 to disable the timer. Negative values (ex. -10000) are not accepted. Minimum acceptable value is 5,000
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetAutoCancelAllOpenOrders
     */
    readonly countdownTime: number;
    /**
     *
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetAutoCancelAllOpenOrders
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for setMarketMakerProtectionConfig operation in MarketMakerEndpointsApi.
 * @interface SetMarketMakerProtectionConfigRequest
 */
interface SetMarketMakerProtectionConfigRequest {
    /**
     * underlying, e.g BTCUSDT
     * @type {string}
     * @memberof MarketMakerEndpointsApiSetMarketMakerProtectionConfig
     */
    readonly underlying?: string;
    /**
     * MMP Interval in milliseconds; Range (0,5000]
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetMarketMakerProtectionConfig
     */
    readonly windowTimeInMilliseconds?: number;
    /**
     * MMP frozen time in milliseconds, if set to 0 manual reset is required
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetMarketMakerProtectionConfig
     */
    readonly frozenTimeInMilliseconds?: number;
    /**
     * quantity limit
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetMarketMakerProtectionConfig
     */
    readonly qtyLimit?: number;
    /**
     * net delta limit
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetMarketMakerProtectionConfig
     */
    readonly deltaLimit?: number;
    /**
     *
     * @type {number}
     * @memberof MarketMakerEndpointsApiSetMarketMakerProtectionConfig
     */
    readonly recvWindow?: number;
}
/**
 * MarketMakerEndpointsApi - object-oriented interface
 * @class MarketMakerEndpointsApi
 */
declare class MarketMakerEndpointsApi implements MarketMakerEndpointsApiInterface {
    private readonly configuration;
    private localVarAxiosParamCreator;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * This endpoint resets the time from which the countdown will begin to the time this messaged is received.  It should be called repeatedly as heartbeats.  Multiple heartbeats can be updated at once by specifying the underlying symbols as a list (ex. BTCUSDT,ETHUSDT) in the underlyings parameter.
     *
     * The response will only include underlying symbols where the heartbeat has been successfully updated.
     *
     * Weight: 10
     *
     * @summary Auto-Cancel All Open Orders (Kill-Switch) Heartbeat (TRADE)
     * @param {AutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AutoCancelAllOpenOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Auto-Cancel-All-Open-Orders-Heartbeat Binance API Documentation}
     */
    autoCancelAllOpenOrders(requestParameters: AutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<AutoCancelAllOpenOrdersResponse>>;
    /**
     * This endpoint returns the auto-cancel parameters for each underlying symbol. Note only active auto-cancel parameters will be returned, if countdownTime is set to 0 (ie. countdownTime has been turned off), the underlying symbol and corresponding countdownTime parameter will not be returned in the response.
     *
     * countdownTime = 0 means the function is disabled.
     *
     * Weight: 1
     *
     * @summary Get Auto-Cancel All Open Orders (Kill-Switch) Config (TRADE)
     * @param {GetAutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetAutoCancelAllOpenOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Get-Auto-Cancel-All-Open-Orders-Config Binance API Documentation}
     */
    getAutoCancelAllOpenOrders(requestParameters?: GetAutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<GetAutoCancelAllOpenOrdersResponse>>;
    /**
     * Get config for MMP.
     *
     * Weight: 1
     *
     * @summary Get Market Maker Protection Config (TRADE)
     * @param {GetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetMarketMakerProtectionConfigResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Get-Market-Maker-Protection-Config Binance API Documentation}
     */
    getMarketMakerProtectionConfig(requestParameters?: GetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<GetMarketMakerProtectionConfigResponse>>;
    /**
     * Reset MMP, start MMP order again.
     *
     * Weight: 1
     *
     * @summary Reset Market Maker Protection Config (TRADE)
     * @param {ResetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<ResetMarketMakerProtectionConfigResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Reset-Market-Maker-Protection-Config Binance API Documentation}
     */
    resetMarketMakerProtectionConfig(requestParameters?: ResetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<ResetMarketMakerProtectionConfigResponse>>;
    /**
     * This endpoint sets the parameters of the auto-cancel feature which cancels all open orders (both market maker protection and non market maker protection order types) of the underlying symbol at the end of the specified countdown time period if no heartbeat message is sent.  After the countdown time period, all open orders will be cancelled and new orders will be rejected with error code -2010 until either a heartbeat message is sent or the auto-cancel feature is turned off by setting countdownTime to 0.
     *
     *
     * This rest endpoint sets up the parameters to cancel your open orders in case of an outage or disconnection.
     * Example usage:
     * Call this endpoint with a countdownTime value of 10000 (10 seconds) to turn on the auto-cancel feature. If the corresponding countdownCancelAllHeartBeat endpoint is not called within 10 seconds with the specified underlying symbol, all open orders of the specified symbol will be automatically canceled. If this endpoint is called with an countdownTime of 0, the countdown timer will be stopped.
     * The system will check all countdowns approximately every 1000 milliseconds, **please note that sufficient redundancy should be considered when using this function**. We do not recommend setting the countdown time to be too precise or too small.
     *
     * Weight: 1
     *
     * @summary Set Auto-Cancel All Open Orders (Kill-Switch) Config (TRADE)
     * @param {SetAutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<SetAutoCancelAllOpenOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Set-Auto-Cancel-All-Open-Orders-Config Binance API Documentation}
     */
    setAutoCancelAllOpenOrders(requestParameters: SetAutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<SetAutoCancelAllOpenOrdersResponse>>;
    /**
     * Set config for MMP.
     * Market Maker Protection(MMP) is a set of protection mechanism for option market maker, this mechanism is able to prevent mass trading in short period time. Once market maker's account branches the threshold, the Market Maker Protection will be triggered. When Market Maker Protection triggers, all the current MMP orders will be canceled, new MMP orders will be rejected. Market maker can use this time to reevaluate market and modify order price.
     *
     * Weight: 1
     *
     * @summary Set Market Maker Protection Config (TRADE)
     * @param {SetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<SetMarketMakerProtectionConfigResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof MarketMakerEndpointsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Set-Market-Maker-Protection-Config Binance API Documentation}
     */
    setMarketMakerProtectionConfig(requestParameters?: SetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<SetMarketMakerProtectionConfigResponse>>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * TradeApi - interface
 * @interface TradeApi
 */
interface TradeApiInterface {
    /**
     * Get trades for a specific account and symbol.
     *
     * Weight: 5
     *
     * @summary Account Trade List (USER_DATA)
     * @param {AccountTradeListRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    accountTradeList(requestParameters?: AccountTradeListRequest): Promise<RestApiResponse<AccountTradeListResponse>>;
    /**
     * Cancel all active orders on specified underlying.
     *
     * Weight: 1
     *
     * @summary Cancel All Option Orders By Underlying (TRADE)
     * @param {CancelAllOptionOrdersByUnderlyingRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    cancelAllOptionOrdersByUnderlying(requestParameters: CancelAllOptionOrdersByUnderlyingRequest): Promise<RestApiResponse<CancelAllOptionOrdersByUnderlyingResponse>>;
    /**
     * Cancel all active order on a symbol.
     *
     * Weight: 1
     *
     * @summary Cancel all Option orders on specific symbol (TRADE)
     * @param {CancelAllOptionOrdersOnSpecificSymbolRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    cancelAllOptionOrdersOnSpecificSymbol(requestParameters: CancelAllOptionOrdersOnSpecificSymbolRequest): Promise<RestApiResponse<CancelAllOptionOrdersOnSpecificSymbolResponse>>;
    /**
     * Cancel multiple orders.
     *
     * At least one instance of `orderId` and `clientOrderId` must be sent.
     *
     * Weight: 1
     *
     * @summary Cancel Multiple Option Orders (TRADE)
     * @param {CancelMultipleOptionOrdersRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    cancelMultipleOptionOrders(requestParameters: CancelMultipleOptionOrdersRequest): Promise<RestApiResponse<CancelMultipleOptionOrdersResponse>>;
    /**
     * Cancel an active order.
     *
     * At least one instance of `orderId` and `clientOrderId` must be sent.
     *
     * Weight: 1
     *
     * @summary Cancel Option Order (TRADE)
     * @param {CancelOptionOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    cancelOptionOrder(requestParameters: CancelOptionOrderRequest): Promise<RestApiResponse<CancelOptionOrderResponse>>;
    /**
     * Send a new order.
     *
     * Weight: 0
     *
     * @summary New Order (TRADE)
     * @param {NewOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    newOrder(requestParameters: NewOrderRequest): Promise<RestApiResponse<NewOrderResponse>>;
    /**
     * Get current position information.
     *
     * Weight: 5
     *
     * @summary Option Position Information (USER_DATA)
     * @param {OptionPositionInformationRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    optionPositionInformation(requestParameters?: OptionPositionInformationRequest): Promise<RestApiResponse<OptionPositionInformationResponse>>;
    /**
     * Send multiple option orders.
     *
     * Parameter rules are same with New Order
     * Batch orders are processed concurrently, and the order of matching is not guaranteed.
     *
     * Weight: 5
     *
     * @summary Place Multiple Orders(TRADE)
     * @param {PlaceMultipleOrdersRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    placeMultipleOrders(requestParameters: PlaceMultipleOrdersRequest): Promise<RestApiResponse<PlaceMultipleOrdersResponse>>;
    /**
     * Query current all open orders, status: ACCEPTED PARTIALLY_FILLED
     *
     * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted
     *
     * @summary Query Current Open Option Orders (USER_DATA)
     * @param {QueryCurrentOpenOptionOrdersRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    queryCurrentOpenOptionOrders(requestParameters?: QueryCurrentOpenOptionOrdersRequest): Promise<RestApiResponse<QueryCurrentOpenOptionOrdersResponse>>;
    /**
     * Query all finished orders within 5 days, finished status: CANCELLED FILLED REJECTED.
     *
     * Weight: 3
     *
     * @summary Query Option Order History (TRADE)
     * @param {QueryOptionOrderHistoryRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    queryOptionOrderHistory(requestParameters: QueryOptionOrderHistoryRequest): Promise<RestApiResponse<QueryOptionOrderHistoryResponse>>;
    /**
     * Check an order status.
     *
     * These orders will not be found:
     * order status is `CANCELED` or `REJECTED`, **AND**
     * order has NO filled trade, **AND**
     * created time + 3 days < current time
     *
     *
     * Either `orderId` or `clientOrderId ` must be sent.
     *
     * Weight: 1
     *
     * @summary Query Single Order (TRADE)
     * @param {QuerySingleOrderRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    querySingleOrder(requestParameters: QuerySingleOrderRequest): Promise<RestApiResponse<QuerySingleOrderResponse>>;
    /**
     * Get account exercise records.
     *
     * Weight: 5
     *
     * @summary User Exercise Record (USER_DATA)
     * @param {UserExerciseRecordRequest} requestParameters Request parameters.
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApiInterface
     */
    userExerciseRecord(requestParameters?: UserExerciseRecordRequest): Promise<RestApiResponse<UserExerciseRecordResponse>>;
}
/**
 * Request parameters for accountTradeList operation in TradeApi.
 * @interface AccountTradeListRequest
 */
interface AccountTradeListRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiAccountTradeList
     */
    readonly symbol?: string;
    /**
     * The UniqueId ID from which to return. The latest deal record is returned by default
     * @type {number}
     * @memberof TradeApiAccountTradeList
     */
    readonly fromId?: number;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof TradeApiAccountTradeList
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof TradeApiAccountTradeList
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof TradeApiAccountTradeList
     */
    readonly limit?: number;
    /**
     *
     * @type {number}
     * @memberof TradeApiAccountTradeList
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for cancelAllOptionOrdersByUnderlying operation in TradeApi.
 * @interface CancelAllOptionOrdersByUnderlyingRequest
 */
interface CancelAllOptionOrdersByUnderlyingRequest {
    /**
     * Option underlying, e.g BTCUSDT
     * @type {string}
     * @memberof TradeApiCancelAllOptionOrdersByUnderlying
     */
    readonly underlying: string;
    /**
     *
     * @type {number}
     * @memberof TradeApiCancelAllOptionOrdersByUnderlying
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for cancelAllOptionOrdersOnSpecificSymbol operation in TradeApi.
 * @interface CancelAllOptionOrdersOnSpecificSymbolRequest
 */
interface CancelAllOptionOrdersOnSpecificSymbolRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiCancelAllOptionOrdersOnSpecificSymbol
     */
    readonly symbol: string;
    /**
     *
     * @type {number}
     * @memberof TradeApiCancelAllOptionOrdersOnSpecificSymbol
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for cancelMultipleOptionOrders operation in TradeApi.
 * @interface CancelMultipleOptionOrdersRequest
 */
interface CancelMultipleOptionOrdersRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiCancelMultipleOptionOrders
     */
    readonly symbol: string;
    /**
     * Order ID, e.g [4611875134427365377,4611875134427365378]
     * @type {Array<number>}
     * @memberof TradeApiCancelMultipleOptionOrders
     */
    readonly orderIds?: Array<number>;
    /**
     * User-defined order ID, e.g ["my_id_1","my_id_2"]
     * @type {Array<string>}
     * @memberof TradeApiCancelMultipleOptionOrders
     */
    readonly clientOrderIds?: Array<string>;
    /**
     *
     * @type {number}
     * @memberof TradeApiCancelMultipleOptionOrders
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for cancelOptionOrder operation in TradeApi.
 * @interface CancelOptionOrderRequest
 */
interface CancelOptionOrderRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiCancelOptionOrder
     */
    readonly symbol: string;
    /**
     * Order ID, e.g 4611875134427365377
     * @type {number}
     * @memberof TradeApiCancelOptionOrder
     */
    readonly orderId?: number;
    /**
     * User-defined order ID, e.g 10000
     * @type {string}
     * @memberof TradeApiCancelOptionOrder
     */
    readonly clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof TradeApiCancelOptionOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for newOrder operation in TradeApi.
 * @interface NewOrderRequest
 */
interface NewOrderRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiNewOrder
     */
    readonly symbol: string;
    /**
     * BUY or SELL
     * @type {'BUY' | 'SELL'}
     * @memberof TradeApiNewOrder
     */
    readonly side: NewOrderSideEnum;
    /**
     * Order Type: LIMIT(only support limit)
     * @type {'LIMIT'}
     * @memberof TradeApiNewOrder
     */
    readonly type: NewOrderTypeEnum;
    /**
     * Order Quantity
     * @type {number}
     * @memberof TradeApiNewOrder
     */
    readonly quantity: number;
    /**
     * Order Price
     * @type {number}
     * @memberof TradeApiNewOrder
     */
    readonly price?: number;
    /**
     * Time in force method（Default GTC）
     * @type {'GTC' | 'IOC' | 'FOK'}
     * @memberof TradeApiNewOrder
     */
    readonly timeInForce?: NewOrderTimeInForceEnum;
    /**
     * Reduce Only（Default false）
     * @type {boolean}
     * @memberof TradeApiNewOrder
     */
    readonly reduceOnly?: boolean;
    /**
     * Post Only（Default false）
     * @type {boolean}
     * @memberof TradeApiNewOrder
     */
    readonly postOnly?: boolean;
    /**
     * "ACK", "RESULT", Default "ACK"
     * @type {'ACK' | 'RESULT'}
     * @memberof TradeApiNewOrder
     */
    readonly newOrderRespType?: NewOrderNewOrderRespTypeEnum;
    /**
     * User-defined order ID, e.g 10000
     * @type {string}
     * @memberof TradeApiNewOrder
     */
    readonly clientOrderId?: string;
    /**
     * is market maker protection order, true/false
     * @type {boolean}
     * @memberof TradeApiNewOrder
     */
    readonly isMmp?: boolean;
    /**
     *
     * @type {number}
     * @memberof TradeApiNewOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for optionPositionInformation operation in TradeApi.
 * @interface OptionPositionInformationRequest
 */
interface OptionPositionInformationRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiOptionPositionInformation
     */
    readonly symbol?: string;
    /**
     *
     * @type {number}
     * @memberof TradeApiOptionPositionInformation
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for placeMultipleOrders operation in TradeApi.
 * @interface PlaceMultipleOrdersRequest
 */
interface PlaceMultipleOrdersRequest {
    /**
     * order list. Max 5 orders
     * @type {Array<PlaceMultipleOrdersOrdersParameterInner>}
     * @memberof TradeApiPlaceMultipleOrders
     */
    readonly orders: Array<PlaceMultipleOrdersOrdersParameterInner>;
    /**
     *
     * @type {number}
     * @memberof TradeApiPlaceMultipleOrders
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for queryCurrentOpenOptionOrders operation in TradeApi.
 * @interface QueryCurrentOpenOptionOrdersRequest
 */
interface QueryCurrentOpenOptionOrdersRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiQueryCurrentOpenOptionOrders
     */
    readonly symbol?: string;
    /**
     * Order ID, e.g 4611875134427365377
     * @type {number}
     * @memberof TradeApiQueryCurrentOpenOptionOrders
     */
    readonly orderId?: number;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof TradeApiQueryCurrentOpenOptionOrders
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof TradeApiQueryCurrentOpenOptionOrders
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof TradeApiQueryCurrentOpenOptionOrders
     */
    readonly limit?: number;
    /**
     *
     * @type {number}
     * @memberof TradeApiQueryCurrentOpenOptionOrders
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for queryOptionOrderHistory operation in TradeApi.
 * @interface QueryOptionOrderHistoryRequest
 */
interface QueryOptionOrderHistoryRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiQueryOptionOrderHistory
     */
    readonly symbol: string;
    /**
     * Order ID, e.g 4611875134427365377
     * @type {number}
     * @memberof TradeApiQueryOptionOrderHistory
     */
    readonly orderId?: number;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof TradeApiQueryOptionOrderHistory
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof TradeApiQueryOptionOrderHistory
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof TradeApiQueryOptionOrderHistory
     */
    readonly limit?: number;
    /**
     *
     * @type {number}
     * @memberof TradeApiQueryOptionOrderHistory
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for querySingleOrder operation in TradeApi.
 * @interface QuerySingleOrderRequest
 */
interface QuerySingleOrderRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiQuerySingleOrder
     */
    readonly symbol: string;
    /**
     * Order ID, e.g 4611875134427365377
     * @type {number}
     * @memberof TradeApiQuerySingleOrder
     */
    readonly orderId?: number;
    /**
     * User-defined order ID, e.g 10000
     * @type {string}
     * @memberof TradeApiQuerySingleOrder
     */
    readonly clientOrderId?: string;
    /**
     *
     * @type {number}
     * @memberof TradeApiQuerySingleOrder
     */
    readonly recvWindow?: number;
}
/**
 * Request parameters for userExerciseRecord operation in TradeApi.
 * @interface UserExerciseRecordRequest
 */
interface UserExerciseRecordRequest {
    /**
     * Option trading pair, e.g BTC-200730-9000-C
     * @type {string}
     * @memberof TradeApiUserExerciseRecord
     */
    readonly symbol?: string;
    /**
     * Start Time, e.g 1593511200000
     * @type {number}
     * @memberof TradeApiUserExerciseRecord
     */
    readonly startTime?: number;
    /**
     * End Time, e.g 1593512200000
     * @type {number}
     * @memberof TradeApiUserExerciseRecord
     */
    readonly endTime?: number;
    /**
     * Number of result sets returned Default:100 Max:1000
     * @type {number}
     * @memberof TradeApiUserExerciseRecord
     */
    readonly limit?: number;
    /**
     *
     * @type {number}
     * @memberof TradeApiUserExerciseRecord
     */
    readonly recvWindow?: number;
}
/**
 * TradeApi - object-oriented interface
 * @class TradeApi
 */
declare class TradeApi implements TradeApiInterface {
    private readonly configuration;
    private localVarAxiosParamCreator;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * Get trades for a specific account and symbol.
     *
     * Weight: 5
     *
     * @summary Account Trade List (USER_DATA)
     * @param {AccountTradeListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AccountTradeListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Account-Trade-List Binance API Documentation}
     */
    accountTradeList(requestParameters?: AccountTradeListRequest): Promise<RestApiResponse<AccountTradeListResponse>>;
    /**
     * Cancel all active orders on specified underlying.
     *
     * Weight: 1
     *
     * @summary Cancel All Option Orders By Underlying (TRADE)
     * @param {CancelAllOptionOrdersByUnderlyingRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelAllOptionOrdersByUnderlyingResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-All-Option-Orders-By-Underlying Binance API Documentation}
     */
    cancelAllOptionOrdersByUnderlying(requestParameters: CancelAllOptionOrdersByUnderlyingRequest): Promise<RestApiResponse<CancelAllOptionOrdersByUnderlyingResponse>>;
    /**
     * Cancel all active order on a symbol.
     *
     * Weight: 1
     *
     * @summary Cancel all Option orders on specific symbol (TRADE)
     * @param {CancelAllOptionOrdersOnSpecificSymbolRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelAllOptionOrdersOnSpecificSymbolResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-all-Option-orders-on-specific-symbol Binance API Documentation}
     */
    cancelAllOptionOrdersOnSpecificSymbol(requestParameters: CancelAllOptionOrdersOnSpecificSymbolRequest): Promise<RestApiResponse<CancelAllOptionOrdersOnSpecificSymbolResponse>>;
    /**
     * Cancel multiple orders.
     *
     * At least one instance of `orderId` and `clientOrderId` must be sent.
     *
     * Weight: 1
     *
     * @summary Cancel Multiple Option Orders (TRADE)
     * @param {CancelMultipleOptionOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelMultipleOptionOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-Multiple-Option-Orders Binance API Documentation}
     */
    cancelMultipleOptionOrders(requestParameters: CancelMultipleOptionOrdersRequest): Promise<RestApiResponse<CancelMultipleOptionOrdersResponse>>;
    /**
     * Cancel an active order.
     *
     * At least one instance of `orderId` and `clientOrderId` must be sent.
     *
     * Weight: 1
     *
     * @summary Cancel Option Order (TRADE)
     * @param {CancelOptionOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelOptionOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-Option-Order Binance API Documentation}
     */
    cancelOptionOrder(requestParameters: CancelOptionOrderRequest): Promise<RestApiResponse<CancelOptionOrderResponse>>;
    /**
     * Send a new order.
     *
     * Weight: 0
     *
     * @summary New Order (TRADE)
     * @param {NewOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<NewOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/New-Order Binance API Documentation}
     */
    newOrder(requestParameters: NewOrderRequest): Promise<RestApiResponse<NewOrderResponse>>;
    /**
     * Get current position information.
     *
     * Weight: 5
     *
     * @summary Option Position Information (USER_DATA)
     * @param {OptionPositionInformationRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionPositionInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Option-Position-Information Binance API Documentation}
     */
    optionPositionInformation(requestParameters?: OptionPositionInformationRequest): Promise<RestApiResponse<OptionPositionInformationResponse>>;
    /**
     * Send multiple option orders.
     *
     * Parameter rules are same with New Order
     * Batch orders are processed concurrently, and the order of matching is not guaranteed.
     *
     * Weight: 5
     *
     * @summary Place Multiple Orders(TRADE)
     * @param {PlaceMultipleOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<PlaceMultipleOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Place-Multiple-Orders Binance API Documentation}
     */
    placeMultipleOrders(requestParameters: PlaceMultipleOrdersRequest): Promise<RestApiResponse<PlaceMultipleOrdersResponse>>;
    /**
     * Query current all open orders, status: ACCEPTED PARTIALLY_FILLED
     *
     * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted
     *
     * @summary Query Current Open Option Orders (USER_DATA)
     * @param {QueryCurrentOpenOptionOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryCurrentOpenOptionOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Query-Current-Open-Option-Orders Binance API Documentation}
     */
    queryCurrentOpenOptionOrders(requestParameters?: QueryCurrentOpenOptionOrdersRequest): Promise<RestApiResponse<QueryCurrentOpenOptionOrdersResponse>>;
    /**
     * Query all finished orders within 5 days, finished status: CANCELLED FILLED REJECTED.
     *
     * Weight: 3
     *
     * @summary Query Option Order History (TRADE)
     * @param {QueryOptionOrderHistoryRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryOptionOrderHistoryResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Query-Option-Order-History Binance API Documentation}
     */
    queryOptionOrderHistory(requestParameters: QueryOptionOrderHistoryRequest): Promise<RestApiResponse<QueryOptionOrderHistoryResponse>>;
    /**
     * Check an order status.
     *
     * These orders will not be found:
     * order status is `CANCELED` or `REJECTED`, **AND**
     * order has NO filled trade, **AND**
     * created time + 3 days < current time
     *
     *
     * Either `orderId` or `clientOrderId ` must be sent.
     *
     * Weight: 1
     *
     * @summary Query Single Order (TRADE)
     * @param {QuerySingleOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QuerySingleOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Query-Single-Order Binance API Documentation}
     */
    querySingleOrder(requestParameters: QuerySingleOrderRequest): Promise<RestApiResponse<QuerySingleOrderResponse>>;
    /**
     * Get account exercise records.
     *
     * Weight: 5
     *
     * @summary User Exercise Record (USER_DATA)
     * @param {UserExerciseRecordRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<UserExerciseRecordResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof TradeApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/User-Exercise-Record Binance API Documentation}
     */
    userExerciseRecord(requestParameters?: UserExerciseRecordRequest): Promise<RestApiResponse<UserExerciseRecordResponse>>;
}
declare enum NewOrderSideEnum {
    BUY = "BUY",
    SELL = "SELL"
}
declare enum NewOrderTypeEnum {
    LIMIT = "LIMIT"
}
declare enum NewOrderTimeInForceEnum {
    GTC = "GTC",
    IOC = "IOC",
    FOK = "FOK"
}
declare enum NewOrderNewOrderRespTypeEnum {
    ACK = "ACK",
    RESULT = "RESULT"
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * UserDataStreamsApi - interface
 * @interface UserDataStreamsApi
 */
interface UserDataStreamsApiInterface {
    /**
     * Close out a user data stream.
     *
     * Weight: 1
     *
     * @summary Close User Data Stream (USER_STREAM)
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof UserDataStreamsApiInterface
     */
    closeUserDataStream(): Promise<RestApiResponse<void>>;
    /**
     * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.
     *
     * Weight: 1
     *
     * @summary Keepalive User Data Stream (USER_STREAM)
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof UserDataStreamsApiInterface
     */
    keepaliveUserDataStream(): Promise<RestApiResponse<void>>;
    /**
     * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.
     *
     * Weight: 1
     *
     * @summary Start User Data Stream (USER_STREAM)
     *
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof UserDataStreamsApiInterface
     */
    startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>>;
}
/**
 * UserDataStreamsApi - object-oriented interface
 * @class UserDataStreamsApi
 */
declare class UserDataStreamsApi implements UserDataStreamsApiInterface {
    private readonly configuration;
    private localVarAxiosParamCreator;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * Close out a user data stream.
     *
     * Weight: 1
     *
     * @summary Close User Data Stream (USER_STREAM)
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof UserDataStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/user-data-streams/Close-User-Data-Stream Binance API Documentation}
     */
    closeUserDataStream(): Promise<RestApiResponse<void>>;
    /**
     * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.
     *
     * Weight: 1
     *
     * @summary Keepalive User Data Stream (USER_STREAM)
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof UserDataStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/user-data-streams/Keepalive-User-Data-Stream Binance API Documentation}
     */
    keepaliveUserDataStream(): Promise<RestApiResponse<void>>;
    /**
     * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.
     *
     * Weight: 1
     *
     * @summary Start User Data Stream (USER_STREAM)
     * @returns {Promise<RestApiResponse<StartUserDataStreamResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @memberof UserDataStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/user-data-streams/Start-User-Data-Stream Binance API Documentation}
     */
    startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

declare class RestAPI {
    private configuration;
    private accountApi;
    private marketDataApi;
    private marketMakerBlockTradeApi;
    private marketMakerEndpointsApi;
    private tradeApi;
    private userDataStreamsApi;
    constructor(configuration: ConfigurationRestAPI);
    /**
     * Generic function to send a request.
     * @param endpoint - The API endpoint to call.
     * @param method - HTTP method to use (GET, POST, DELETE, etc.).
     * @param params - Query parameters for the request.
     *
     * @returns A promise resolving to the response data object.
     */
    sendRequest<T>(endpoint: string, method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH', params?: Record<string, unknown>): Promise<RestApiResponse<T>>;
    /**
     * Generic function to send a signed request.
     * @param endpoint - The API endpoint to call.
     * @param method - HTTP method to use (GET, POST, DELETE, etc.).
     * @param params - Query parameters for the request.
     *
     * @returns A promise resolving to the response data object.
     */
    sendSignedRequest<T>(endpoint: string, method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH', params?: Record<string, unknown>): Promise<RestApiResponse<T>>;
    /**
     * Query account funding flows.
     *
     * Weight: 1
     *
     * @summary Account Funding Flow (USER_DATA)
     * @param {AccountFundingFlowRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AccountFundingFlowResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Account-Funding-Flow Binance API Documentation}
     */
    accountFundingFlow(requestParameters: AccountFundingFlowRequest): Promise<RestApiResponse<AccountFundingFlowResponse>>;
    /**
     * Get download id for option transaction history
     *
     * Request Limitation is 5 times per month, shared by > front end download page and rest api
     * The time between `startTime` and `endTime` can not be longer than 1 year
     *
     * Weight: 5
     *
     * @summary Get Download Id For Option Transaction History (USER_DATA)
     * @param {GetDownloadIdForOptionTransactionHistoryRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetDownloadIdForOptionTransactionHistoryResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Get-Download-Id-For-Option-Transaction-History Binance API Documentation}
     */
    getDownloadIdForOptionTransactionHistory(requestParameters: GetDownloadIdForOptionTransactionHistoryRequest): Promise<RestApiResponse<GetDownloadIdForOptionTransactionHistoryResponse>>;
    /**
     * Get option transaction history download Link by Id
     *
     * Download link expiration: 24h
     *
     * Weight: 5
     *
     * @summary Get Option Transaction History Download Link by Id (USER_DATA)
     * @param {GetOptionTransactionHistoryDownloadLinkByIdRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetOptionTransactionHistoryDownloadLinkByIdResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Get-Option-Transaction-History-Download-Link-by-Id Binance API Documentation}
     */
    getOptionTransactionHistoryDownloadLinkById(requestParameters: GetOptionTransactionHistoryDownloadLinkByIdRequest): Promise<RestApiResponse<GetOptionTransactionHistoryDownloadLinkByIdResponse>>;
    /**
     * Get current account information.
     *
     * Weight: 3
     *
     * @summary Option Account Information(TRADE)
     * @param {OptionAccountInformationRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionAccountInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Option-Account-Information Binance API Documentation}
     */
    optionAccountInformation(requestParameters?: OptionAccountInformationRequest): Promise<RestApiResponse<OptionAccountInformationResponse>>;
    /**
     * Get current account information.
     *
     * Weight: 3
     *
     * @summary Option Margin Account Information (USER_DATA)
     * @param {OptionMarginAccountInformationRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionMarginAccountInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/account/Option-Margin-Account-Information Binance API Documentation}
     */
    optionMarginAccountInformation(requestParameters?: OptionMarginAccountInformationRequest): Promise<RestApiResponse<OptionMarginAccountInformationResponse>>;
    /**
     * Test connectivity to the Rest API and get the current server time.
     *
     * Weight: 1
     *
     * @summary Check Server Time
     * @returns {Promise<RestApiResponse<CheckServerTimeResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Check-Server-Time Binance API Documentation}
     */
    checkServerTime(): Promise<RestApiResponse<CheckServerTimeResponse>>;
    /**
     * Current exchange trading rules and symbol information
     *
     * Weight: 1
     *
     * @summary Exchange Information
     * @returns {Promise<RestApiResponse<ExchangeInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Exchange-Information Binance API Documentation}
     */
    exchangeInformation(): Promise<RestApiResponse<ExchangeInformationResponse>>;
    /**
     * Get historical exercise records.
     * REALISTIC_VALUE_STRICKEN -> Exercised
     * EXTRINSIC_VALUE_EXPIRED -> Expired OTM
     *
     * Weight: 3
     *
     * @summary Historical Exercise Records
     * @param {HistoricalExerciseRecordsRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<HistoricalExerciseRecordsResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Historical-Exercise-Records Binance API Documentation}
     */
    historicalExerciseRecords(requestParameters?: HistoricalExerciseRecordsRequest): Promise<RestApiResponse<HistoricalExerciseRecordsResponse>>;
    /**
     * Kline/candlestick bars for an option symbol.
     * Klines are uniquely identified by their open time.
     *
     * If startTime and endTime are not sent, the most recent klines are returned.
     *
     * Weight: 1
     *
     * @summary Kline/Candlestick Data
     * @param {KlineCandlestickDataRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<KlineCandlestickDataResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Kline-Candlestick-Data Binance API Documentation}
     */
    klineCandlestickData(requestParameters: KlineCandlestickDataRequest): Promise<RestApiResponse<KlineCandlestickDataResponse>>;
    /**
     * Get older market historical trades.
     *
     * Weight: 20
     *
     * @summary Old Trades Lookup (MARKET_DATA)
     * @param {OldTradesLookupRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OldTradesLookupResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Old-Trades-Lookup Binance API Documentation}
     */
    oldTradesLookup(requestParameters: OldTradesLookupRequest): Promise<RestApiResponse<OldTradesLookupResponse>>;
    /**
     * Get open interest for specific underlying asset on specific expiration date.
     *
     * Weight: 0
     *
     * @summary Open Interest
     * @param {OpenInterestRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OpenInterestResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Open-Interest Binance API Documentation}
     */
    openInterest(requestParameters: OpenInterestRequest$1): Promise<RestApiResponse<OpenInterestResponse$1>>;
    /**
     * Option mark price and greek info.
     *
     * Weight: 5
     *
     * @summary Option Mark Price
     * @param {OptionMarkPriceRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionMarkPriceResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Option-Mark-Price Binance API Documentation}
     */
    optionMarkPrice(requestParameters?: OptionMarkPriceRequest): Promise<RestApiResponse<OptionMarkPriceResponse>>;
    /**
     * Check orderbook depth on specific symbol
     *
     * Weight: limit         | weight
     * ------------  | ------------
     * 5, 10, 20, 50 | 2
     * 100           | 5
     * 500           | 10
     * 1000          | 20
     *
     * @summary Order Book
     * @param {OrderBookRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OrderBookResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Order-Book Binance API Documentation}
     */
    orderBook(requestParameters: OrderBookRequest): Promise<RestApiResponse<OrderBookResponse>>;
    /**
     * Get recent block trades
     *
     * Weight: 5
     *
     * @summary Recent Block Trades List
     * @param {RecentBlockTradesListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<RecentBlockTradesListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Recent-Block-Trade-List Binance API Documentation}
     */
    recentBlockTradesList(requestParameters?: RecentBlockTradesListRequest): Promise<RestApiResponse<RecentBlockTradesListResponse>>;
    /**
     * Get recent market trades
     *
     * Weight: 5
     *
     * @summary Recent Trades List
     * @param {RecentTradesListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<RecentTradesListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Recent-Trades-List Binance API Documentation}
     */
    recentTradesList(requestParameters: RecentTradesListRequest): Promise<RestApiResponse<RecentTradesListResponse>>;
    /**
     * Get spot index price for option underlying.
     *
     * Weight: 1
     *
     * @summary Symbol Price Ticker
     * @param {SymbolPriceTickerRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<SymbolPriceTickerResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Symbol-Price-Ticker Binance API Documentation}
     */
    symbolPriceTicker(requestParameters: SymbolPriceTickerRequest): Promise<RestApiResponse<SymbolPriceTickerResponse>>;
    /**
     * Test connectivity to the Rest API.
     *
     * Weight: 1
     *
     * @summary Test Connectivity
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/Test-Connectivity Binance API Documentation}
     */
    testConnectivity(): Promise<RestApiResponse<void>>;
    /**
     * 24 hour rolling window price change statistics.
     *
     * Weight: 5
     *
     * @summary 24hr Ticker Price Change Statistics
     * @param {Ticker24hrPriceChangeStatisticsRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<Ticker24hrPriceChangeStatisticsResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-data/24hr-Ticker-Price-Change-Statistics Binance API Documentation}
     */
    ticker24hrPriceChangeStatistics(requestParameters?: Ticker24hrPriceChangeStatisticsRequest): Promise<RestApiResponse<Ticker24hrPriceChangeStatisticsResponse>>;
    /**
     * Accept a block trade order
     *
     * Weight: 5
     *
     * @summary Accept Block Trade Order (TRADE)
     * @param {AcceptBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AcceptBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Accept-Block-Trade-Order Binance API Documentation}
     */
    acceptBlockTradeOrder(requestParameters: AcceptBlockTradeOrderRequest): Promise<RestApiResponse<AcceptBlockTradeOrderResponse>>;
    /**
     * Gets block trades for a specific account.
     *
     * Weight: 5
     *
     * @summary Account Block Trade List (USER_DATA)
     * @param {AccountBlockTradeListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AccountBlockTradeListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Account-Block-Trade-List Binance API Documentation}
     */
    accountBlockTradeList(requestParameters?: AccountBlockTradeListRequest): Promise<RestApiResponse<AccountBlockTradeListResponse>>;
    /**
     * Cancel a block trade order.
     *
     * Weight: 5
     *
     * @summary Cancel Block Trade Order (TRADE)
     * @param {CancelBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Cancel-Block-Trade-Order Binance API Documentation}
     */
    cancelBlockTradeOrder(requestParameters: CancelBlockTradeOrderRequest): Promise<RestApiResponse<void>>;
    /**
     * Extends a block trade expire time by 30 mins from the current time.
     *
     * Weight: 5
     *
     * @summary Extend Block Trade Order (TRADE)
     * @param {ExtendBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<ExtendBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Extend-Block-Trade-Order Binance API Documentation}
     */
    extendBlockTradeOrder(requestParameters: ExtendBlockTradeOrderRequest): Promise<RestApiResponse<ExtendBlockTradeOrderResponse>>;
    /**
     * Send in a new block trade order.
     *
     * Weight: 5
     *
     * @summary New Block Trade Order (TRADE)
     * @param {NewBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<NewBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/New-Block-Trade-Order Binance API Documentation}
     */
    newBlockTradeOrder(requestParameters: NewBlockTradeOrderRequest): Promise<RestApiResponse<NewBlockTradeOrderResponse>>;
    /**
     * Query block trade details; returns block trade details from counterparty's perspective.
     *
     * Weight: 5
     *
     * @summary Query Block Trade Details (USER_DATA)
     * @param {QueryBlockTradeDetailsRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryBlockTradeDetailsResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Query-Block-Trade-Detail Binance API Documentation}
     */
    queryBlockTradeDetails(requestParameters: QueryBlockTradeDetailsRequest): Promise<RestApiResponse<QueryBlockTradeDetailsResponse>>;
    /**
     * Check block trade order status.
     *
     * Weight: 5
     *
     * @summary Query Block Trade Order (TRADE)
     * @param {QueryBlockTradeOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryBlockTradeOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-block-trade/Query-Block-Trade-Order Binance API Documentation}
     */
    queryBlockTradeOrder(requestParameters?: QueryBlockTradeOrderRequest): Promise<RestApiResponse<QueryBlockTradeOrderResponse>>;
    /**
     * This endpoint resets the time from which the countdown will begin to the time this messaged is received.  It should be called repeatedly as heartbeats.  Multiple heartbeats can be updated at once by specifying the underlying symbols as a list (ex. BTCUSDT,ETHUSDT) in the underlyings parameter.
     *
     * The response will only include underlying symbols where the heartbeat has been successfully updated.
     *
     * Weight: 10
     *
     * @summary Auto-Cancel All Open Orders (Kill-Switch) Heartbeat (TRADE)
     * @param {AutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AutoCancelAllOpenOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Auto-Cancel-All-Open-Orders-Heartbeat Binance API Documentation}
     */
    autoCancelAllOpenOrders(requestParameters: AutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<AutoCancelAllOpenOrdersResponse>>;
    /**
     * This endpoint returns the auto-cancel parameters for each underlying symbol. Note only active auto-cancel parameters will be returned, if countdownTime is set to 0 (ie. countdownTime has been turned off), the underlying symbol and corresponding countdownTime parameter will not be returned in the response.
     *
     * countdownTime = 0 means the function is disabled.
     *
     * Weight: 1
     *
     * @summary Get Auto-Cancel All Open Orders (Kill-Switch) Config (TRADE)
     * @param {GetAutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetAutoCancelAllOpenOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Get-Auto-Cancel-All-Open-Orders-Config Binance API Documentation}
     */
    getAutoCancelAllOpenOrders(requestParameters?: GetAutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<GetAutoCancelAllOpenOrdersResponse>>;
    /**
     * Get config for MMP.
     *
     * Weight: 1
     *
     * @summary Get Market Maker Protection Config (TRADE)
     * @param {GetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<GetMarketMakerProtectionConfigResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Get-Market-Maker-Protection-Config Binance API Documentation}
     */
    getMarketMakerProtectionConfig(requestParameters?: GetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<GetMarketMakerProtectionConfigResponse>>;
    /**
     * Reset MMP, start MMP order again.
     *
     * Weight: 1
     *
     * @summary Reset Market Maker Protection Config (TRADE)
     * @param {ResetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<ResetMarketMakerProtectionConfigResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Reset-Market-Maker-Protection-Config Binance API Documentation}
     */
    resetMarketMakerProtectionConfig(requestParameters?: ResetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<ResetMarketMakerProtectionConfigResponse>>;
    /**
     * This endpoint sets the parameters of the auto-cancel feature which cancels all open orders (both market maker protection and non market maker protection order types) of the underlying symbol at the end of the specified countdown time period if no heartbeat message is sent.  After the countdown time period, all open orders will be cancelled and new orders will be rejected with error code -2010 until either a heartbeat message is sent or the auto-cancel feature is turned off by setting countdownTime to 0.
     *
     *
     * This rest endpoint sets up the parameters to cancel your open orders in case of an outage or disconnection.
     * Example usage:
     * Call this endpoint with a countdownTime value of 10000 (10 seconds) to turn on the auto-cancel feature. If the corresponding countdownCancelAllHeartBeat endpoint is not called within 10 seconds with the specified underlying symbol, all open orders of the specified symbol will be automatically canceled. If this endpoint is called with an countdownTime of 0, the countdown timer will be stopped.
     * The system will check all countdowns approximately every 1000 milliseconds, **please note that sufficient redundancy should be considered when using this function**. We do not recommend setting the countdown time to be too precise or too small.
     *
     * Weight: 1
     *
     * @summary Set Auto-Cancel All Open Orders (Kill-Switch) Config (TRADE)
     * @param {SetAutoCancelAllOpenOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<SetAutoCancelAllOpenOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Set-Auto-Cancel-All-Open-Orders-Config Binance API Documentation}
     */
    setAutoCancelAllOpenOrders(requestParameters: SetAutoCancelAllOpenOrdersRequest): Promise<RestApiResponse<SetAutoCancelAllOpenOrdersResponse>>;
    /**
     * Set config for MMP.
     * Market Maker Protection(MMP) is a set of protection mechanism for option market maker, this mechanism is able to prevent mass trading in short period time. Once market maker's account branches the threshold, the Market Maker Protection will be triggered. When Market Maker Protection triggers, all the current MMP orders will be canceled, new MMP orders will be rejected. Market maker can use this time to reevaluate market and modify order price.
     *
     * Weight: 1
     *
     * @summary Set Market Maker Protection Config (TRADE)
     * @param {SetMarketMakerProtectionConfigRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<SetMarketMakerProtectionConfigResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/market-maker-endpoints/Set-Market-Maker-Protection-Config Binance API Documentation}
     */
    setMarketMakerProtectionConfig(requestParameters?: SetMarketMakerProtectionConfigRequest): Promise<RestApiResponse<SetMarketMakerProtectionConfigResponse>>;
    /**
     * Get trades for a specific account and symbol.
     *
     * Weight: 5
     *
     * @summary Account Trade List (USER_DATA)
     * @param {AccountTradeListRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<AccountTradeListResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Account-Trade-List Binance API Documentation}
     */
    accountTradeList(requestParameters?: AccountTradeListRequest): Promise<RestApiResponse<AccountTradeListResponse>>;
    /**
     * Cancel all active orders on specified underlying.
     *
     * Weight: 1
     *
     * @summary Cancel All Option Orders By Underlying (TRADE)
     * @param {CancelAllOptionOrdersByUnderlyingRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelAllOptionOrdersByUnderlyingResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-All-Option-Orders-By-Underlying Binance API Documentation}
     */
    cancelAllOptionOrdersByUnderlying(requestParameters: CancelAllOptionOrdersByUnderlyingRequest): Promise<RestApiResponse<CancelAllOptionOrdersByUnderlyingResponse>>;
    /**
     * Cancel all active order on a symbol.
     *
     * Weight: 1
     *
     * @summary Cancel all Option orders on specific symbol (TRADE)
     * @param {CancelAllOptionOrdersOnSpecificSymbolRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelAllOptionOrdersOnSpecificSymbolResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-all-Option-orders-on-specific-symbol Binance API Documentation}
     */
    cancelAllOptionOrdersOnSpecificSymbol(requestParameters: CancelAllOptionOrdersOnSpecificSymbolRequest): Promise<RestApiResponse<CancelAllOptionOrdersOnSpecificSymbolResponse>>;
    /**
     * Cancel multiple orders.
     *
     * At least one instance of `orderId` and `clientOrderId` must be sent.
     *
     * Weight: 1
     *
     * @summary Cancel Multiple Option Orders (TRADE)
     * @param {CancelMultipleOptionOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelMultipleOptionOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-Multiple-Option-Orders Binance API Documentation}
     */
    cancelMultipleOptionOrders(requestParameters: CancelMultipleOptionOrdersRequest): Promise<RestApiResponse<CancelMultipleOptionOrdersResponse>>;
    /**
     * Cancel an active order.
     *
     * At least one instance of `orderId` and `clientOrderId` must be sent.
     *
     * Weight: 1
     *
     * @summary Cancel Option Order (TRADE)
     * @param {CancelOptionOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<CancelOptionOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Cancel-Option-Order Binance API Documentation}
     */
    cancelOptionOrder(requestParameters: CancelOptionOrderRequest): Promise<RestApiResponse<CancelOptionOrderResponse>>;
    /**
     * Send a new order.
     *
     * Weight: 0
     *
     * @summary New Order (TRADE)
     * @param {NewOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<NewOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/New-Order Binance API Documentation}
     */
    newOrder(requestParameters: NewOrderRequest): Promise<RestApiResponse<NewOrderResponse>>;
    /**
     * Get current position information.
     *
     * Weight: 5
     *
     * @summary Option Position Information (USER_DATA)
     * @param {OptionPositionInformationRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<OptionPositionInformationResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Option-Position-Information Binance API Documentation}
     */
    optionPositionInformation(requestParameters?: OptionPositionInformationRequest): Promise<RestApiResponse<OptionPositionInformationResponse>>;
    /**
     * Send multiple option orders.
     *
     * Parameter rules are same with New Order
     * Batch orders are processed concurrently, and the order of matching is not guaranteed.
     *
     * Weight: 5
     *
     * @summary Place Multiple Orders(TRADE)
     * @param {PlaceMultipleOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<PlaceMultipleOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Place-Multiple-Orders Binance API Documentation}
     */
    placeMultipleOrders(requestParameters: PlaceMultipleOrdersRequest): Promise<RestApiResponse<PlaceMultipleOrdersResponse>>;
    /**
     * Query current all open orders, status: ACCEPTED PARTIALLY_FILLED
     *
     * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted
     *
     * @summary Query Current Open Option Orders (USER_DATA)
     * @param {QueryCurrentOpenOptionOrdersRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryCurrentOpenOptionOrdersResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Query-Current-Open-Option-Orders Binance API Documentation}
     */
    queryCurrentOpenOptionOrders(requestParameters?: QueryCurrentOpenOptionOrdersRequest): Promise<RestApiResponse<QueryCurrentOpenOptionOrdersResponse>>;
    /**
     * Query all finished orders within 5 days, finished status: CANCELLED FILLED REJECTED.
     *
     * Weight: 3
     *
     * @summary Query Option Order History (TRADE)
     * @param {QueryOptionOrderHistoryRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QueryOptionOrderHistoryResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Query-Option-Order-History Binance API Documentation}
     */
    queryOptionOrderHistory(requestParameters: QueryOptionOrderHistoryRequest): Promise<RestApiResponse<QueryOptionOrderHistoryResponse>>;
    /**
     * Check an order status.
     *
     * These orders will not be found:
     * order status is `CANCELED` or `REJECTED`, **AND**
     * order has NO filled trade, **AND**
     * created time + 3 days < current time
     *
     *
     * Either `orderId` or `clientOrderId ` must be sent.
     *
     * Weight: 1
     *
     * @summary Query Single Order (TRADE)
     * @param {QuerySingleOrderRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<QuerySingleOrderResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/Query-Single-Order Binance API Documentation}
     */
    querySingleOrder(requestParameters: QuerySingleOrderRequest): Promise<RestApiResponse<QuerySingleOrderResponse>>;
    /**
     * Get account exercise records.
     *
     * Weight: 5
     *
     * @summary User Exercise Record (USER_DATA)
     * @param {UserExerciseRecordRequest} requestParameters Request parameters.
     * @returns {Promise<RestApiResponse<UserExerciseRecordResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/trade/User-Exercise-Record Binance API Documentation}
     */
    userExerciseRecord(requestParameters?: UserExerciseRecordRequest): Promise<RestApiResponse<UserExerciseRecordResponse>>;
    /**
     * Close out a user data stream.
     *
     * Weight: 1
     *
     * @summary Close User Data Stream (USER_STREAM)
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/user-data-streams/Close-User-Data-Stream Binance API Documentation}
     */
    closeUserDataStream(): Promise<RestApiResponse<void>>;
    /**
     * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.
     *
     * Weight: 1
     *
     * @summary Keepalive User Data Stream (USER_STREAM)
     * @returns {Promise<RestApiResponse<void>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/user-data-streams/Keepalive-User-Data-Stream Binance API Documentation}
     */
    keepaliveUserDataStream(): Promise<RestApiResponse<void>>;
    /**
     * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.
     *
     * Weight: 1
     *
     * @summary Start User Data Stream (USER_STREAM)
     * @returns {Promise<RestApiResponse<StartUserDataStreamResponse>>}
     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/user-data-streams/Start-User-Data-Stream Binance API Documentation}
     */
    startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>>;
}

/**
 * Binance Derivatives Trading Options REST API
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

type index$1_AcceptBlockTradeOrderRequest = AcceptBlockTradeOrderRequest;
type index$1_AcceptBlockTradeOrderResponse = AcceptBlockTradeOrderResponse;
type index$1_AcceptBlockTradeOrderResponseLegsInner = AcceptBlockTradeOrderResponseLegsInner;
type index$1_AccountApi = AccountApi;
declare const index$1_AccountApi: typeof AccountApi;
type index$1_AccountApiInterface = AccountApiInterface;
type index$1_AccountBlockTradeListRequest = AccountBlockTradeListRequest;
type index$1_AccountBlockTradeListResponse = AccountBlockTradeListResponse;
type index$1_AccountBlockTradeListResponseInner = AccountBlockTradeListResponseInner;
type index$1_AccountBlockTradeListResponseInnerLegsInner = AccountBlockTradeListResponseInnerLegsInner;
type index$1_AccountFundingFlowRequest = AccountFundingFlowRequest;
type index$1_AccountFundingFlowResponse = AccountFundingFlowResponse;
type index$1_AccountFundingFlowResponseInner = AccountFundingFlowResponseInner;
type index$1_AccountTradeListRequest = AccountTradeListRequest;
type index$1_AccountTradeListResponse = AccountTradeListResponse;
type index$1_AccountTradeListResponseInner = AccountTradeListResponseInner;
type index$1_AutoCancelAllOpenOrdersRequest = AutoCancelAllOpenOrdersRequest;
type index$1_AutoCancelAllOpenOrdersResponse = AutoCancelAllOpenOrdersResponse;
type index$1_CancelAllOptionOrdersByUnderlyingRequest = CancelAllOptionOrdersByUnderlyingRequest;
type index$1_CancelAllOptionOrdersByUnderlyingResponse = CancelAllOptionOrdersByUnderlyingResponse;
type index$1_CancelAllOptionOrdersOnSpecificSymbolRequest = CancelAllOptionOrdersOnSpecificSymbolRequest;
type index$1_CancelAllOptionOrdersOnSpecificSymbolResponse = CancelAllOptionOrdersOnSpecificSymbolResponse;
type index$1_CancelBlockTradeOrderRequest = CancelBlockTradeOrderRequest;
type index$1_CancelMultipleOptionOrdersRequest = CancelMultipleOptionOrdersRequest;
type index$1_CancelMultipleOptionOrdersResponse = CancelMultipleOptionOrdersResponse;
type index$1_CancelMultipleOptionOrdersResponseInner = CancelMultipleOptionOrdersResponseInner;
type index$1_CancelOptionOrderRequest = CancelOptionOrderRequest;
type index$1_CancelOptionOrderResponse = CancelOptionOrderResponse;
type index$1_CheckServerTimeResponse = CheckServerTimeResponse;
type index$1_ExchangeInformationResponse = ExchangeInformationResponse;
type index$1_ExchangeInformationResponseOptionAssetsInner = ExchangeInformationResponseOptionAssetsInner;
type index$1_ExchangeInformationResponseOptionContractsInner = ExchangeInformationResponseOptionContractsInner;
type index$1_ExchangeInformationResponseOptionSymbolsInner = ExchangeInformationResponseOptionSymbolsInner;
type index$1_ExchangeInformationResponseOptionSymbolsInnerFiltersInner = ExchangeInformationResponseOptionSymbolsInnerFiltersInner;
type index$1_ExchangeInformationResponseRateLimitsInner = ExchangeInformationResponseRateLimitsInner;
type index$1_ExtendBlockTradeOrderRequest = ExtendBlockTradeOrderRequest;
type index$1_ExtendBlockTradeOrderResponse = ExtendBlockTradeOrderResponse;
type index$1_ExtendBlockTradeOrderResponseLegsInner = ExtendBlockTradeOrderResponseLegsInner;
type index$1_GetAutoCancelAllOpenOrdersRequest = GetAutoCancelAllOpenOrdersRequest;
type index$1_GetAutoCancelAllOpenOrdersResponse = GetAutoCancelAllOpenOrdersResponse;
type index$1_GetDownloadIdForOptionTransactionHistoryRequest = GetDownloadIdForOptionTransactionHistoryRequest;
type index$1_GetDownloadIdForOptionTransactionHistoryResponse = GetDownloadIdForOptionTransactionHistoryResponse;
type index$1_GetMarketMakerProtectionConfigRequest = GetMarketMakerProtectionConfigRequest;
type index$1_GetMarketMakerProtectionConfigResponse = GetMarketMakerProtectionConfigResponse;
type index$1_GetOptionTransactionHistoryDownloadLinkByIdRequest = GetOptionTransactionHistoryDownloadLinkByIdRequest;
type index$1_GetOptionTransactionHistoryDownloadLinkByIdResponse = GetOptionTransactionHistoryDownloadLinkByIdResponse;
type index$1_HistoricalExerciseRecordsRequest = HistoricalExerciseRecordsRequest;
type index$1_HistoricalExerciseRecordsResponse = HistoricalExerciseRecordsResponse;
type index$1_HistoricalExerciseRecordsResponseInner = HistoricalExerciseRecordsResponseInner;
type index$1_KlineCandlestickDataRequest = KlineCandlestickDataRequest;
type index$1_KlineCandlestickDataResponse = KlineCandlestickDataResponse;
type index$1_KlineCandlestickDataResponseInner = KlineCandlestickDataResponseInner;
type index$1_MarketDataApi = MarketDataApi;
declare const index$1_MarketDataApi: typeof MarketDataApi;
type index$1_MarketDataApiInterface = MarketDataApiInterface;
type index$1_MarketMakerBlockTradeApi = MarketMakerBlockTradeApi;
declare const index$1_MarketMakerBlockTradeApi: typeof MarketMakerBlockTradeApi;
type index$1_MarketMakerBlockTradeApiInterface = MarketMakerBlockTradeApiInterface;
type index$1_MarketMakerEndpointsApi = MarketMakerEndpointsApi;
declare const index$1_MarketMakerEndpointsApi: typeof MarketMakerEndpointsApi;
type index$1_MarketMakerEndpointsApiInterface = MarketMakerEndpointsApiInterface;
type index$1_NewBlockTradeOrderRequest = NewBlockTradeOrderRequest;
type index$1_NewBlockTradeOrderResponse = NewBlockTradeOrderResponse;
type index$1_NewBlockTradeOrderSideEnum = NewBlockTradeOrderSideEnum;
declare const index$1_NewBlockTradeOrderSideEnum: typeof NewBlockTradeOrderSideEnum;
type index$1_NewOrderNewOrderRespTypeEnum = NewOrderNewOrderRespTypeEnum;
declare const index$1_NewOrderNewOrderRespTypeEnum: typeof NewOrderNewOrderRespTypeEnum;
type index$1_NewOrderRequest = NewOrderRequest;
type index$1_NewOrderResponse = NewOrderResponse;
type index$1_NewOrderSideEnum = NewOrderSideEnum;
declare const index$1_NewOrderSideEnum: typeof NewOrderSideEnum;
type index$1_NewOrderTimeInForceEnum = NewOrderTimeInForceEnum;
declare const index$1_NewOrderTimeInForceEnum: typeof NewOrderTimeInForceEnum;
type index$1_NewOrderTypeEnum = NewOrderTypeEnum;
declare const index$1_NewOrderTypeEnum: typeof NewOrderTypeEnum;
type index$1_OldTradesLookupRequest = OldTradesLookupRequest;
type index$1_OldTradesLookupResponse = OldTradesLookupResponse;
type index$1_OldTradesLookupResponseInner = OldTradesLookupResponseInner;
type index$1_OptionAccountInformationRequest = OptionAccountInformationRequest;
type index$1_OptionAccountInformationResponse = OptionAccountInformationResponse;
type index$1_OptionAccountInformationResponseAssetInner = OptionAccountInformationResponseAssetInner;
type index$1_OptionAccountInformationResponseGreekInner = OptionAccountInformationResponseGreekInner;
type index$1_OptionMarginAccountInformationRequest = OptionMarginAccountInformationRequest;
type index$1_OptionMarginAccountInformationResponse = OptionMarginAccountInformationResponse;
type index$1_OptionMarginAccountInformationResponseAssetInner = OptionMarginAccountInformationResponseAssetInner;
type index$1_OptionMarkPriceRequest = OptionMarkPriceRequest;
type index$1_OptionMarkPriceResponse = OptionMarkPriceResponse;
type index$1_OptionMarkPriceResponseInner = OptionMarkPriceResponseInner;
type index$1_OptionPositionInformationRequest = OptionPositionInformationRequest;
type index$1_OptionPositionInformationResponse = OptionPositionInformationResponse;
type index$1_OptionPositionInformationResponseInner = OptionPositionInformationResponseInner;
type index$1_OrderBookRequest = OrderBookRequest;
type index$1_OrderBookResponse = OrderBookResponse;
type index$1_OrderBookResponseAsksItem = OrderBookResponseAsksItem;
type index$1_OrderBookResponseBidsItem = OrderBookResponseBidsItem;
type index$1_PlaceMultipleOrdersOrdersParameterInner = PlaceMultipleOrdersOrdersParameterInner;
type index$1_PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum = PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum;
type index$1_PlaceMultipleOrdersOrdersParameterInnerSideEnum = PlaceMultipleOrdersOrdersParameterInnerSideEnum;
type index$1_PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum = PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum;
type index$1_PlaceMultipleOrdersOrdersParameterInnerTypeEnum = PlaceMultipleOrdersOrdersParameterInnerTypeEnum;
type index$1_PlaceMultipleOrdersRequest = PlaceMultipleOrdersRequest;
type index$1_PlaceMultipleOrdersResponse = PlaceMultipleOrdersResponse;
type index$1_PlaceMultipleOrdersResponseInner = PlaceMultipleOrdersResponseInner;
type index$1_QueryBlockTradeDetailsRequest = QueryBlockTradeDetailsRequest;
type index$1_QueryBlockTradeDetailsResponse = QueryBlockTradeDetailsResponse;
type index$1_QueryBlockTradeDetailsResponseLegsInner = QueryBlockTradeDetailsResponseLegsInner;
type index$1_QueryBlockTradeOrderRequest = QueryBlockTradeOrderRequest;
type index$1_QueryBlockTradeOrderResponse = QueryBlockTradeOrderResponse;
type index$1_QueryBlockTradeOrderResponseInner = QueryBlockTradeOrderResponseInner;
type index$1_QueryCurrentOpenOptionOrdersRequest = QueryCurrentOpenOptionOrdersRequest;
type index$1_QueryCurrentOpenOptionOrdersResponse = QueryCurrentOpenOptionOrdersResponse;
type index$1_QueryCurrentOpenOptionOrdersResponseInner = QueryCurrentOpenOptionOrdersResponseInner;
type index$1_QueryOptionOrderHistoryRequest = QueryOptionOrderHistoryRequest;
type index$1_QueryOptionOrderHistoryResponse = QueryOptionOrderHistoryResponse;
type index$1_QueryOptionOrderHistoryResponseInner = QueryOptionOrderHistoryResponseInner;
type index$1_QuerySingleOrderRequest = QuerySingleOrderRequest;
type index$1_QuerySingleOrderResponse = QuerySingleOrderResponse;
type index$1_RecentBlockTradesListRequest = RecentBlockTradesListRequest;
type index$1_RecentBlockTradesListResponse = RecentBlockTradesListResponse;
type index$1_RecentBlockTradesListResponseInner = RecentBlockTradesListResponseInner;
type index$1_RecentTradesListRequest = RecentTradesListRequest;
type index$1_RecentTradesListResponse = RecentTradesListResponse;
type index$1_RecentTradesListResponseInner = RecentTradesListResponseInner;
type index$1_ResetMarketMakerProtectionConfigRequest = ResetMarketMakerProtectionConfigRequest;
type index$1_ResetMarketMakerProtectionConfigResponse = ResetMarketMakerProtectionConfigResponse;
type index$1_RestAPI = RestAPI;
declare const index$1_RestAPI: typeof RestAPI;
type index$1_SetAutoCancelAllOpenOrdersRequest = SetAutoCancelAllOpenOrdersRequest;
type index$1_SetAutoCancelAllOpenOrdersResponse = SetAutoCancelAllOpenOrdersResponse;
type index$1_SetMarketMakerProtectionConfigRequest = SetMarketMakerProtectionConfigRequest;
type index$1_SetMarketMakerProtectionConfigResponse = SetMarketMakerProtectionConfigResponse;
type index$1_StartUserDataStreamResponse = StartUserDataStreamResponse;
type index$1_SymbolPriceTickerRequest = SymbolPriceTickerRequest;
type index$1_SymbolPriceTickerResponse = SymbolPriceTickerResponse;
type index$1_Ticker24hrPriceChangeStatisticsRequest = Ticker24hrPriceChangeStatisticsRequest;
type index$1_Ticker24hrPriceChangeStatisticsResponse = Ticker24hrPriceChangeStatisticsResponse;
type index$1_Ticker24hrPriceChangeStatisticsResponseInner = Ticker24hrPriceChangeStatisticsResponseInner;
type index$1_TradeApi = TradeApi;
declare const index$1_TradeApi: typeof TradeApi;
type index$1_TradeApiInterface = TradeApiInterface;
type index$1_UserDataStreamsApi = UserDataStreamsApi;
declare const index$1_UserDataStreamsApi: typeof UserDataStreamsApi;
type index$1_UserDataStreamsApiInterface = UserDataStreamsApiInterface;
type index$1_UserExerciseRecordRequest = UserExerciseRecordRequest;
type index$1_UserExerciseRecordResponse = UserExerciseRecordResponse;
type index$1_UserExerciseRecordResponseInner = UserExerciseRecordResponseInner;
declare namespace index$1 {
  export { type index$1_AcceptBlockTradeOrderRequest as AcceptBlockTradeOrderRequest, type index$1_AcceptBlockTradeOrderResponse as AcceptBlockTradeOrderResponse, type index$1_AcceptBlockTradeOrderResponseLegsInner as AcceptBlockTradeOrderResponseLegsInner, index$1_AccountApi as AccountApi, type index$1_AccountApiInterface as AccountApiInterface, type index$1_AccountBlockTradeListRequest as AccountBlockTradeListRequest, type index$1_AccountBlockTradeListResponse as AccountBlockTradeListResponse, type index$1_AccountBlockTradeListResponseInner as AccountBlockTradeListResponseInner, type index$1_AccountBlockTradeListResponseInnerLegsInner as AccountBlockTradeListResponseInnerLegsInner, type index$1_AccountFundingFlowRequest as AccountFundingFlowRequest, type index$1_AccountFundingFlowResponse as AccountFundingFlowResponse, type index$1_AccountFundingFlowResponseInner as AccountFundingFlowResponseInner, type index$1_AccountTradeListRequest as AccountTradeListRequest, type index$1_AccountTradeListResponse as AccountTradeListResponse, type index$1_AccountTradeListResponseInner as AccountTradeListResponseInner, type index$1_AutoCancelAllOpenOrdersRequest as AutoCancelAllOpenOrdersRequest, type index$1_AutoCancelAllOpenOrdersResponse as AutoCancelAllOpenOrdersResponse, type index$1_CancelAllOptionOrdersByUnderlyingRequest as CancelAllOptionOrdersByUnderlyingRequest, type index$1_CancelAllOptionOrdersByUnderlyingResponse as CancelAllOptionOrdersByUnderlyingResponse, type index$1_CancelAllOptionOrdersOnSpecificSymbolRequest as CancelAllOptionOrdersOnSpecificSymbolRequest, type index$1_CancelAllOptionOrdersOnSpecificSymbolResponse as CancelAllOptionOrdersOnSpecificSymbolResponse, type index$1_CancelBlockTradeOrderRequest as CancelBlockTradeOrderRequest, type index$1_CancelMultipleOptionOrdersRequest as CancelMultipleOptionOrdersRequest, type index$1_CancelMultipleOptionOrdersResponse as CancelMultipleOptionOrdersResponse, type index$1_CancelMultipleOptionOrdersResponseInner as CancelMultipleOptionOrdersResponseInner, type index$1_CancelOptionOrderRequest as CancelOptionOrderRequest, type index$1_CancelOptionOrderResponse as CancelOptionOrderResponse, type index$1_CheckServerTimeResponse as CheckServerTimeResponse, type index$1_ExchangeInformationResponse as ExchangeInformationResponse, type index$1_ExchangeInformationResponseOptionAssetsInner as ExchangeInformationResponseOptionAssetsInner, type index$1_ExchangeInformationResponseOptionContractsInner as ExchangeInformationResponseOptionContractsInner, type index$1_ExchangeInformationResponseOptionSymbolsInner as ExchangeInformationResponseOptionSymbolsInner, type index$1_ExchangeInformationResponseOptionSymbolsInnerFiltersInner as ExchangeInformationResponseOptionSymbolsInnerFiltersInner, type index$1_ExchangeInformationResponseRateLimitsInner as ExchangeInformationResponseRateLimitsInner, type index$1_ExtendBlockTradeOrderRequest as ExtendBlockTradeOrderRequest, type index$1_ExtendBlockTradeOrderResponse as ExtendBlockTradeOrderResponse, type index$1_ExtendBlockTradeOrderResponseLegsInner as ExtendBlockTradeOrderResponseLegsInner, type index$1_GetAutoCancelAllOpenOrdersRequest as GetAutoCancelAllOpenOrdersRequest, type index$1_GetAutoCancelAllOpenOrdersResponse as GetAutoCancelAllOpenOrdersResponse, type index$1_GetDownloadIdForOptionTransactionHistoryRequest as GetDownloadIdForOptionTransactionHistoryRequest, type index$1_GetDownloadIdForOptionTransactionHistoryResponse as GetDownloadIdForOptionTransactionHistoryResponse, type index$1_GetMarketMakerProtectionConfigRequest as GetMarketMakerProtectionConfigRequest, type index$1_GetMarketMakerProtectionConfigResponse as GetMarketMakerProtectionConfigResponse, type index$1_GetOptionTransactionHistoryDownloadLinkByIdRequest as GetOptionTransactionHistoryDownloadLinkByIdRequest, type index$1_GetOptionTransactionHistoryDownloadLinkByIdResponse as GetOptionTransactionHistoryDownloadLinkByIdResponse, type index$1_HistoricalExerciseRecordsRequest as HistoricalExerciseRecordsRequest, type index$1_HistoricalExerciseRecordsResponse as HistoricalExerciseRecordsResponse, type index$1_HistoricalExerciseRecordsResponseInner as HistoricalExerciseRecordsResponseInner, type index$1_KlineCandlestickDataRequest as KlineCandlestickDataRequest, type index$1_KlineCandlestickDataResponse as KlineCandlestickDataResponse, type index$1_KlineCandlestickDataResponseInner as KlineCandlestickDataResponseInner, index$1_MarketDataApi as MarketDataApi, type index$1_MarketDataApiInterface as MarketDataApiInterface, index$1_MarketMakerBlockTradeApi as MarketMakerBlockTradeApi, type index$1_MarketMakerBlockTradeApiInterface as MarketMakerBlockTradeApiInterface, index$1_MarketMakerEndpointsApi as MarketMakerEndpointsApi, type index$1_MarketMakerEndpointsApiInterface as MarketMakerEndpointsApiInterface, type index$1_NewBlockTradeOrderRequest as NewBlockTradeOrderRequest, type index$1_NewBlockTradeOrderResponse as NewBlockTradeOrderResponse, index$1_NewBlockTradeOrderSideEnum as NewBlockTradeOrderSideEnum, index$1_NewOrderNewOrderRespTypeEnum as NewOrderNewOrderRespTypeEnum, type index$1_NewOrderRequest as NewOrderRequest, type index$1_NewOrderResponse as NewOrderResponse, index$1_NewOrderSideEnum as NewOrderSideEnum, index$1_NewOrderTimeInForceEnum as NewOrderTimeInForceEnum, index$1_NewOrderTypeEnum as NewOrderTypeEnum, type index$1_OldTradesLookupRequest as OldTradesLookupRequest, type index$1_OldTradesLookupResponse as OldTradesLookupResponse, type index$1_OldTradesLookupResponseInner as OldTradesLookupResponseInner, type OpenInterestRequest$1 as OpenInterestRequest, type OpenInterestResponse$1 as OpenInterestResponse, type OpenInterestResponseInner$1 as OpenInterestResponseInner, type index$1_OptionAccountInformationRequest as OptionAccountInformationRequest, type index$1_OptionAccountInformationResponse as OptionAccountInformationResponse, type index$1_OptionAccountInformationResponseAssetInner as OptionAccountInformationResponseAssetInner, type index$1_OptionAccountInformationResponseGreekInner as OptionAccountInformationResponseGreekInner, type index$1_OptionMarginAccountInformationRequest as OptionMarginAccountInformationRequest, type index$1_OptionMarginAccountInformationResponse as OptionMarginAccountInformationResponse, type index$1_OptionMarginAccountInformationResponseAssetInner as OptionMarginAccountInformationResponseAssetInner, type index$1_OptionMarkPriceRequest as OptionMarkPriceRequest, type index$1_OptionMarkPriceResponse as OptionMarkPriceResponse, type index$1_OptionMarkPriceResponseInner as OptionMarkPriceResponseInner, type index$1_OptionPositionInformationRequest as OptionPositionInformationRequest, type index$1_OptionPositionInformationResponse as OptionPositionInformationResponse, type index$1_OptionPositionInformationResponseInner as OptionPositionInformationResponseInner, type index$1_OrderBookRequest as OrderBookRequest, type index$1_OrderBookResponse as OrderBookResponse, type index$1_OrderBookResponseAsksItem as OrderBookResponseAsksItem, type index$1_OrderBookResponseBidsItem as OrderBookResponseBidsItem, type index$1_PlaceMultipleOrdersOrdersParameterInner as PlaceMultipleOrdersOrdersParameterInner, type index$1_PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum as PlaceMultipleOrdersOrdersParameterInnerNewOrderRespTypeEnum, type index$1_PlaceMultipleOrdersOrdersParameterInnerSideEnum as PlaceMultipleOrdersOrdersParameterInnerSideEnum, type index$1_PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum as PlaceMultipleOrdersOrdersParameterInnerTimeInForceEnum, type index$1_PlaceMultipleOrdersOrdersParameterInnerTypeEnum as PlaceMultipleOrdersOrdersParameterInnerTypeEnum, type index$1_PlaceMultipleOrdersRequest as PlaceMultipleOrdersRequest, type index$1_PlaceMultipleOrdersResponse as PlaceMultipleOrdersResponse, type index$1_PlaceMultipleOrdersResponseInner as PlaceMultipleOrdersResponseInner, type index$1_QueryBlockTradeDetailsRequest as QueryBlockTradeDetailsRequest, type index$1_QueryBlockTradeDetailsResponse as QueryBlockTradeDetailsResponse, type index$1_QueryBlockTradeDetailsResponseLegsInner as QueryBlockTradeDetailsResponseLegsInner, type index$1_QueryBlockTradeOrderRequest as QueryBlockTradeOrderRequest, type index$1_QueryBlockTradeOrderResponse as QueryBlockTradeOrderResponse, type index$1_QueryBlockTradeOrderResponseInner as QueryBlockTradeOrderResponseInner, type index$1_QueryCurrentOpenOptionOrdersRequest as QueryCurrentOpenOptionOrdersRequest, type index$1_QueryCurrentOpenOptionOrdersResponse as QueryCurrentOpenOptionOrdersResponse, type index$1_QueryCurrentOpenOptionOrdersResponseInner as QueryCurrentOpenOptionOrdersResponseInner, type index$1_QueryOptionOrderHistoryRequest as QueryOptionOrderHistoryRequest, type index$1_QueryOptionOrderHistoryResponse as QueryOptionOrderHistoryResponse, type index$1_QueryOptionOrderHistoryResponseInner as QueryOptionOrderHistoryResponseInner, type index$1_QuerySingleOrderRequest as QuerySingleOrderRequest, type index$1_QuerySingleOrderResponse as QuerySingleOrderResponse, type index$1_RecentBlockTradesListRequest as RecentBlockTradesListRequest, type index$1_RecentBlockTradesListResponse as RecentBlockTradesListResponse, type index$1_RecentBlockTradesListResponseInner as RecentBlockTradesListResponseInner, type index$1_RecentTradesListRequest as RecentTradesListRequest, type index$1_RecentTradesListResponse as RecentTradesListResponse, type index$1_RecentTradesListResponseInner as RecentTradesListResponseInner, type index$1_ResetMarketMakerProtectionConfigRequest as ResetMarketMakerProtectionConfigRequest, type index$1_ResetMarketMakerProtectionConfigResponse as ResetMarketMakerProtectionConfigResponse, index$1_RestAPI as RestAPI, type index$1_SetAutoCancelAllOpenOrdersRequest as SetAutoCancelAllOpenOrdersRequest, type index$1_SetAutoCancelAllOpenOrdersResponse as SetAutoCancelAllOpenOrdersResponse, type index$1_SetMarketMakerProtectionConfigRequest as SetMarketMakerProtectionConfigRequest, type index$1_SetMarketMakerProtectionConfigResponse as SetMarketMakerProtectionConfigResponse, type index$1_StartUserDataStreamResponse as StartUserDataStreamResponse, type index$1_SymbolPriceTickerRequest as SymbolPriceTickerRequest, type index$1_SymbolPriceTickerResponse as SymbolPriceTickerResponse, type index$1_Ticker24hrPriceChangeStatisticsRequest as Ticker24hrPriceChangeStatisticsRequest, type index$1_Ticker24hrPriceChangeStatisticsResponse as Ticker24hrPriceChangeStatisticsResponse, type index$1_Ticker24hrPriceChangeStatisticsResponseInner as Ticker24hrPriceChangeStatisticsResponseInner, index$1_TradeApi as TradeApi, type index$1_TradeApiInterface as TradeApiInterface, index$1_UserDataStreamsApi as UserDataStreamsApi, type index$1_UserDataStreamsApiInterface as UserDataStreamsApiInterface, type index$1_UserExerciseRecordRequest as UserExerciseRecordRequest, type index$1_UserExerciseRecordResponse as UserExerciseRecordResponse, type index$1_UserExerciseRecordResponseInner as UserExerciseRecordResponseInner };
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountUpdateBInner
 */
interface AccountUpdateBInner {
    /**
     *
     * @type {string}
     * @memberof AccountUpdateBInner
     */
    b?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdateBInner
     */
    m?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdateBInner
     */
    u?: string;
    /**
     *
     * @type {number}
     * @memberof AccountUpdateBInner
     */
    U?: number;
    /**
     *
     * @type {string}
     * @memberof AccountUpdateBInner
     */
    M?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdateBInner
     */
    i?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdateBInner
     */
    a?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountUpdateGInner
 */
interface AccountUpdateGInner {
    /**
     *
     * @type {string}
     * @memberof AccountUpdateGInner
     */
    ui?: string;
    /**
     *
     * @type {number}
     * @memberof AccountUpdateGInner
     */
    d?: number;
    /**
     *
     * @type {number}
     * @memberof AccountUpdateGInner
     */
    t?: number;
    /**
     *
     * @type {number}
     * @memberof AccountUpdateGInner
     */
    g?: number;
    /**
     *
     * @type {number}
     * @memberof AccountUpdateGInner
     */
    v?: number;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountUpdatePInner
 */
interface AccountUpdatePInner {
    /**
     *
     * @type {string}
     * @memberof AccountUpdatePInner
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdatePInner
     */
    c?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdatePInner
     */
    r?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdatePInner
     */
    p?: string;
    /**
     *
     * @type {string}
     * @memberof AccountUpdatePInner
     */
    a?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface AccountUpdate
 */
interface AccountUpdate {
    /**
     *
     * @type {number}
     * @memberof AccountUpdate
     */
    E?: number;
    /**
     *
     * @type {Array<AccountUpdateBInner>}
     * @memberof AccountUpdate
     */
    B?: Array<AccountUpdateBInner>;
    /**
     *
     * @type {Array<AccountUpdateGInner>}
     * @memberof AccountUpdate
     */
    G?: Array<AccountUpdateGInner>;
    /**
     *
     * @type {Array<AccountUpdatePInner>}
     * @memberof AccountUpdate
     */
    P?: Array<AccountUpdatePInner>;
    /**
     *
     * @type {number}
     * @memberof AccountUpdate
     */
    uid?: number;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface IndexPriceStreamsResponse
 */
interface IndexPriceStreamsResponse {
    /**
     *
     * @type {string}
     * @memberof IndexPriceStreamsResponse
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof IndexPriceStreamsResponse
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof IndexPriceStreamsResponse
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof IndexPriceStreamsResponse
     */
    p?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface KlineCandlestickStreamsResponseK
 */
interface KlineCandlestickStreamsResponseK {
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickStreamsResponseK
     */
    t?: number;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickStreamsResponseK
     */
    T?: number;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    i?: string;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickStreamsResponseK
     */
    F?: number;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickStreamsResponseK
     */
    L?: number;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    o?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    c?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    h?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    l?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    v?: string;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickStreamsResponseK
     */
    n?: number;
    /**
     *
     * @type {boolean}
     * @memberof KlineCandlestickStreamsResponseK
     */
    x?: boolean;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    q?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    V?: string;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponseK
     */
    Q?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface KlineCandlestickStreamsResponse
 */
interface KlineCandlestickStreamsResponse {
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponse
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof KlineCandlestickStreamsResponse
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof KlineCandlestickStreamsResponse
     */
    s?: string;
    /**
     *
     * @type {KlineCandlestickStreamsResponseK}
     * @memberof KlineCandlestickStreamsResponse
     */
    k?: KlineCandlestickStreamsResponseK;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface MarkPriceResponseInner
 */
interface MarkPriceResponseInner {
    /**
     *
     * @type {string}
     * @memberof MarkPriceResponseInner
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof MarkPriceResponseInner
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof MarkPriceResponseInner
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof MarkPriceResponseInner
     */
    mp?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface MarkPriceResponse
 */
interface MarkPriceResponse extends Array<MarkPriceResponseInner> {
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface NewSymbolInfoResponse
 */
interface NewSymbolInfoResponse {
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof NewSymbolInfoResponse
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    u?: string;
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    qa?: string;
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    s?: string;
    /**
     *
     * @type {number}
     * @memberof NewSymbolInfoResponse
     */
    unit?: number;
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    mq?: string;
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    d?: string;
    /**
     *
     * @type {string}
     * @memberof NewSymbolInfoResponse
     */
    sp?: string;
    /**
     *
     * @type {number}
     * @memberof NewSymbolInfoResponse
     */
    ed?: number;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OpenInterestResponseInner
 */
interface OpenInterestResponseInner {
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof OpenInterestResponseInner
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    o?: string;
    /**
     *
     * @type {string}
     * @memberof OpenInterestResponseInner
     */
    h?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OpenInterestResponse
 */
interface OpenInterestResponse extends Array<OpenInterestResponseInner> {
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface OrderTradeUpdateOInnerFiInner
 */
interface OrderTradeUpdateOInnerFiInner {
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInnerFiInner
     */
    t?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInnerFiInner
     */
    p?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInnerFiInner
     */
    q?: string;
    /**
     *
     * @type {number}
     * @memberof OrderTradeUpdateOInnerFiInner
     */
    T?: number;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInnerFiInner
     */
    m?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInnerFiInner
     */
    f?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OrderTradeUpdateOInner
 */
interface OrderTradeUpdateOInner {
    /**
     *
     * @type {number}
     * @memberof OrderTradeUpdateOInner
     */
    T?: number;
    /**
     *
     * @type {number}
     * @memberof OrderTradeUpdateOInner
     */
    t?: number;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    c?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    oid?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    p?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    q?: string;
    /**
     *
     * @type {number}
     * @memberof OrderTradeUpdateOInner
     */
    stp?: number;
    /**
     *
     * @type {boolean}
     * @memberof OrderTradeUpdateOInner
     */
    r?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof OrderTradeUpdateOInner
     */
    po?: boolean;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    S?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    e?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    ec?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    f?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    tif?: string;
    /**
     *
     * @type {string}
     * @memberof OrderTradeUpdateOInner
     */
    oty?: string;
    /**
     *
     * @type {Array<OrderTradeUpdateOInnerFiInner>}
     * @memberof OrderTradeUpdateOInner
     */
    fi?: Array<OrderTradeUpdateOInnerFiInner>;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface OrderTradeUpdate
 */
interface OrderTradeUpdate {
    /**
     *
     * @type {number}
     * @memberof OrderTradeUpdate
     */
    E?: number;
    /**
     *
     * @type {Array<OrderTradeUpdateOInner>}
     * @memberof OrderTradeUpdate
     */
    o?: Array<OrderTradeUpdateOInner>;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PartialBookDepthStreamsResponseAItem
 */
interface PartialBookDepthStreamsResponseAItem extends Array<string> {
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PartialBookDepthStreamsResponseBItem
 */
interface PartialBookDepthStreamsResponseBItem extends Array<string> {
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface PartialBookDepthStreamsResponse
 */
interface PartialBookDepthStreamsResponse {
    /**
     *
     * @type {string}
     * @memberof PartialBookDepthStreamsResponse
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof PartialBookDepthStreamsResponse
     */
    E?: number;
    /**
     *
     * @type {number}
     * @memberof PartialBookDepthStreamsResponse
     */
    T?: number;
    /**
     *
     * @type {string}
     * @memberof PartialBookDepthStreamsResponse
     */
    s?: string;
    /**
     *
     * @type {number}
     * @memberof PartialBookDepthStreamsResponse
     */
    u?: number;
    /**
     *
     * @type {number}
     * @memberof PartialBookDepthStreamsResponse
     */
    pu?: number;
    /**
     *
     * @type {Array<PartialBookDepthStreamsResponseBItem>}
     * @memberof PartialBookDepthStreamsResponse
     */
    b?: Array<PartialBookDepthStreamsResponseBItem>;
    /**
     *
     * @type {Array<PartialBookDepthStreamsResponseAItem>}
     * @memberof PartialBookDepthStreamsResponse
     */
    a?: Array<PartialBookDepthStreamsResponseAItem>;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface RiskLevelChange
 */
interface RiskLevelChange {
    /**
     *
     * @type {number}
     * @memberof RiskLevelChange
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof RiskLevelChange
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof RiskLevelChange
     */
    mb?: string;
    /**
     *
     * @type {string}
     * @memberof RiskLevelChange
     */
    mm?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
 */
interface Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner {
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    E?: number;
    /**
     *
     * @type {number}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    T?: number;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    o?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    h?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    l?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    c?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    V?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    A?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    P?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    p?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    Q?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    F?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    L?: string;
    /**
     *
     * @type {number}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    n?: number;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    bo?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    ao?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    bq?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    aq?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    b?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    a?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    d?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    t?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    g?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    v?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    vo?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    mp?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    hl?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    ll?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner
     */
    eep?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 *
 * @export
 * @interface Ticker24HourByUnderlyingAssetAndExpirationDataResponse
 */
interface Ticker24HourByUnderlyingAssetAndExpirationDataResponse extends Array<Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner> {
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface Ticker24HourResponse
 */
interface Ticker24HourResponse {
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof Ticker24HourResponse
     */
    E?: number;
    /**
     *
     * @type {number}
     * @memberof Ticker24HourResponse
     */
    T?: number;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    s?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    o?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    h?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    l?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    c?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    V?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    A?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    P?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    p?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    Q?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    F?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    L?: string;
    /**
     *
     * @type {number}
     * @memberof Ticker24HourResponse
     */
    n?: number;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    bo?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    ao?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    bq?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    aq?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    b?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    a?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    d?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    t?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    g?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    v?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    vo?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    mp?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    hl?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    ll?: string;
    /**
     *
     * @type {string}
     * @memberof Ticker24HourResponse
     */
    eep?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface TradeStreamsResponse
 */
interface TradeStreamsResponse {
    /**
     *
     * @type {string}
     * @memberof TradeStreamsResponse
     */
    e?: string;
    /**
     *
     * @type {number}
     * @memberof TradeStreamsResponse
     */
    E?: number;
    /**
     *
     * @type {string}
     * @memberof TradeStreamsResponse
     */
    s?: string;
    /**
     *
     * @type {number}
     * @memberof TradeStreamsResponse
     */
    t?: number;
    /**
     *
     * @type {string}
     * @memberof TradeStreamsResponse
     */
    p?: string;
    /**
     *
     * @type {string}
     * @memberof TradeStreamsResponse
     */
    q?: string;
    /**
     *
     * @type {number}
     * @memberof TradeStreamsResponse
     */
    b?: number;
    /**
     *
     * @type {number}
     * @memberof TradeStreamsResponse
     */
    a?: number;
    /**
     *
     * @type {number}
     * @memberof TradeStreamsResponse
     */
    T?: number;
    /**
     *
     * @type {string}
     * @memberof TradeStreamsResponse
     */
    S?: string;
    /**
     *
     * @type {string}
     * @memberof TradeStreamsResponse
     */
    X?: string;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * @type UserDataStreamEventsResponse
 * @export
 */
type UserDataStreamEventsResponse = ({
    e: 'ACCOUNT_UPDATE';
} & AccountUpdate) | ({
    e: 'ORDER_TRADE_UPDATE';
} & OrderTradeUpdate) | ({
    e: 'RISK_LEVEL_CHANGE';
} & RiskLevelChange);

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/**
 * WebsocketMarketStreamsApi - interface
 * @interface WebsocketMarketStreamsApi
 */
interface WebsocketMarketStreamsApiInterface {
    /**
     * Underlying(e.g ETHUSDT) index stream.
     *
     * Update Speed: 1000ms
     *
     * @summary Index Price Streams
     * @param {IndexPriceStreamsRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<IndexPriceStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    indexPriceStreams(requestParameters: IndexPriceStreamsRequest): WebsocketStream<IndexPriceStreamsResponse>;
    /**
     * The Kline/Candlestick Stream push updates to the current klines/candlestick every 1000 milliseconds (if existing).
     *
     * Update Speed: 1000ms
     *
     * @summary Kline/Candlestick Streams
     * @param {KlineCandlestickStreamsRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<KlineCandlestickStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    klineCandlestickStreams(requestParameters: KlineCandlestickStreamsRequest): WebsocketStream<KlineCandlestickStreamsResponse>;
    /**
     * The mark price for all option symbols on specific underlying asset. E.g.[ETH@markPrice](wss://nbstream.binance.com/eoptions/stream?streams=ETH@markPrice)
     *
     * Update Speed: 1000ms
     *
     * @summary Mark Price
     * @param {MarkPriceRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<MarkPriceResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    markPrice(requestParameters: MarkPriceRequest): WebsocketStream<MarkPriceResponse>;
    /**
     * New symbol listing stream.
     *
     * Update Speed: 50ms
     *
     * @summary New Symbol Info
     * @param {NewSymbolInfoRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<NewSymbolInfoResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    newSymbolInfo(requestParameters?: NewSymbolInfoRequest): WebsocketStream<NewSymbolInfoResponse>;
    /**
     * Option open interest for specific underlying asset on specific expiration date. E.g.[ETH@openInterest@221125](wss://nbstream.binance.com/eoptions/stream?streams=ETH@openInterest@221125)
     *
     * Update Speed: 60s
     *
     * @summary Open Interest
     * @param {OpenInterestRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<OpenInterestResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    openInterest(requestParameters: OpenInterestRequest): WebsocketStream<OpenInterestResponse>;
    /**
     * Top **<levels\>** bids and asks, Valid levels are **<levels\>** are 10, 20, 50, 100.
     *
     * Update Speed: 100ms or 1000ms, 500ms(default when update speed isn't used)
     *
     * @summary Partial Book Depth Streams
     * @param {PartialBookDepthStreamsRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<PartialBookDepthStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    partialBookDepthStreams(requestParameters: PartialBookDepthStreamsRequest): WebsocketStream<PartialBookDepthStreamsResponse>;
    /**
     * 24hr ticker info for all symbols. Only symbols whose ticker info changed will be sent.
     *
     * Update Speed: 1000ms
     *
     * @summary 24-hour TICKER
     * @param {Ticker24HourRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<Ticker24HourResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    ticker24Hour(requestParameters: Ticker24HourRequest): WebsocketStream<Ticker24HourResponse>;
    /**
     * 24hr ticker info by underlying asset and expiration date. E.g.[ETH@ticker@220930](wss://nbstream.binance.com/eoptions/stream?streams=ETH@ticker@220930)
     *
     * Update Speed: 1000ms
     *
     * @summary 24-hour TICKER by underlying asset and expiration data
     * @param {Ticker24HourByUnderlyingAssetAndExpirationDataRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<Ticker24HourByUnderlyingAssetAndExpirationDataResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    ticker24HourByUnderlyingAssetAndExpirationData(requestParameters: Ticker24HourByUnderlyingAssetAndExpirationDataRequest): WebsocketStream<Ticker24HourByUnderlyingAssetAndExpirationDataResponse>;
    /**
     * The Trade Streams push raw trade information for specific symbol or underlying asset. E.g.[ETH@trade](wss://nbstream.binance.com/eoptions/stream?streams=ETH@trade)
     *
     * Update Speed: 50ms
     *
     * @summary Trade Streams
     * @param {TradeStreamsRequest} requestParameters Request parameters.
     *
     * @returns {WebsocketStream<TradeStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApiInterface
     */
    tradeStreams(requestParameters: TradeStreamsRequest): WebsocketStream<TradeStreamsResponse>;
}
/**
 * Request parameters for indexPriceStreams operation in WebsocketMarketStreamsApi.
 * @interface IndexPriceStreamsRequest
 */
interface IndexPriceStreamsRequest {
    /**
     * The symbol parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiIndexPriceStreams
     */
    readonly symbol: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiIndexPriceStreams
     */
    readonly id?: string;
}
/**
 * Request parameters for klineCandlestickStreams operation in WebsocketMarketStreamsApi.
 * @interface KlineCandlestickStreamsRequest
 */
interface KlineCandlestickStreamsRequest {
    /**
     * The symbol parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiKlineCandlestickStreams
     */
    readonly symbol: string;
    /**
     * The interval parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiKlineCandlestickStreams
     */
    readonly interval: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiKlineCandlestickStreams
     */
    readonly id?: string;
}
/**
 * Request parameters for markPrice operation in WebsocketMarketStreamsApi.
 * @interface MarkPriceRequest
 */
interface MarkPriceRequest {
    /**
     * The underlyingAsset parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiMarkPrice
     */
    readonly underlyingAsset: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiMarkPrice
     */
    readonly id?: string;
}
/**
 * Request parameters for newSymbolInfo operation in WebsocketMarketStreamsApi.
 * @interface NewSymbolInfoRequest
 */
interface NewSymbolInfoRequest {
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiNewSymbolInfo
     */
    readonly id?: string;
}
/**
 * Request parameters for openInterest operation in WebsocketMarketStreamsApi.
 * @interface OpenInterestRequest
 */
interface OpenInterestRequest {
    /**
     * The underlyingAsset parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiOpenInterest
     */
    readonly underlyingAsset: string;
    /**
     * The expirationDate parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiOpenInterest
     */
    readonly expirationDate: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiOpenInterest
     */
    readonly id?: string;
}
/**
 * Request parameters for partialBookDepthStreams operation in WebsocketMarketStreamsApi.
 * @interface PartialBookDepthStreamsRequest
 */
interface PartialBookDepthStreamsRequest {
    /**
     * The symbol parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiPartialBookDepthStreams
     */
    readonly symbol: string;
    /**
     * The levels parameter
     * @type {number}
     * @memberof WebsocketMarketStreamsApiPartialBookDepthStreams
     */
    readonly levels: number;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiPartialBookDepthStreams
     */
    readonly id?: string;
    /**
     * WebSocket stream update speed
     * @type {string}
     * @memberof WebsocketMarketStreamsApiPartialBookDepthStreams
     */
    readonly updateSpeed?: string;
}
/**
 * Request parameters for ticker24Hour operation in WebsocketMarketStreamsApi.
 * @interface Ticker24HourRequest
 */
interface Ticker24HourRequest {
    /**
     * The symbol parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTicker24Hour
     */
    readonly symbol: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTicker24Hour
     */
    readonly id?: string;
}
/**
 * Request parameters for ticker24HourByUnderlyingAssetAndExpirationData operation in WebsocketMarketStreamsApi.
 * @interface Ticker24HourByUnderlyingAssetAndExpirationDataRequest
 */
interface Ticker24HourByUnderlyingAssetAndExpirationDataRequest {
    /**
     * The underlyingAsset parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTicker24HourByUnderlyingAssetAndExpirationData
     */
    readonly underlyingAsset: string;
    /**
     * The expirationDate parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTicker24HourByUnderlyingAssetAndExpirationData
     */
    readonly expirationDate: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTicker24HourByUnderlyingAssetAndExpirationData
     */
    readonly id?: string;
}
/**
 * Request parameters for tradeStreams operation in WebsocketMarketStreamsApi.
 * @interface TradeStreamsRequest
 */
interface TradeStreamsRequest {
    /**
     * The symbol parameter
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTradeStreams
     */
    readonly symbol: string;
    /**
     * Unique WebSocket request ID.
     * @type {string}
     * @memberof WebsocketMarketStreamsApiTradeStreams
     */
    readonly id?: string;
}
/**
 * WebsocketMarketStreamsApi - interface
 * @class WebsocketMarketStreamsApi
 * @extends {WebsocketStreamsBase}
 */
declare class WebsocketMarketStreamsApi implements WebsocketMarketStreamsApiInterface {
    private readonly websocketBase;
    private localVarParamCreator;
    constructor(websocketBase: WebsocketStreamsBase);
    /**
     * Underlying(e.g ETHUSDT) index stream.
     *
     * Update Speed: 1000ms
     *
     * @summary Index Price Streams
     * @param {IndexPriceStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<IndexPriceStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Index-Price-Streams Binance API Documentation}
     */
    indexPriceStreams(requestParameters: IndexPriceStreamsRequest): WebsocketStream<IndexPriceStreamsResponse>;
    /**
     * The Kline/Candlestick Stream push updates to the current klines/candlestick every 1000 milliseconds (if existing).
     *
     * Update Speed: 1000ms
     *
     * @summary Kline/Candlestick Streams
     * @param {KlineCandlestickStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<KlineCandlestickStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Kline-Candlestick-Streams Binance API Documentation}
     */
    klineCandlestickStreams(requestParameters: KlineCandlestickStreamsRequest): WebsocketStream<KlineCandlestickStreamsResponse>;
    /**
     * The mark price for all option symbols on specific underlying asset. E.g.[ETH@markPrice](wss://nbstream.binance.com/eoptions/stream?streams=ETH@markPrice)
     *
     * Update Speed: 1000ms
     *
     * @summary Mark Price
     * @param {MarkPriceRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<MarkPriceResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Mark-Price Binance API Documentation}
     */
    markPrice(requestParameters: MarkPriceRequest): WebsocketStream<MarkPriceResponse>;
    /**
     * New symbol listing stream.
     *
     * Update Speed: 50ms
     *
     * @summary New Symbol Info
     * @param {NewSymbolInfoRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<NewSymbolInfoResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/New-Symbol-Info Binance API Documentation}
     */
    newSymbolInfo(requestParameters?: NewSymbolInfoRequest): WebsocketStream<NewSymbolInfoResponse>;
    /**
     * Option open interest for specific underlying asset on specific expiration date. E.g.[ETH@openInterest@221125](wss://nbstream.binance.com/eoptions/stream?streams=ETH@openInterest@221125)
     *
     * Update Speed: 60s
     *
     * @summary Open Interest
     * @param {OpenInterestRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<OpenInterestResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Open-Interest Binance API Documentation}
     */
    openInterest(requestParameters: OpenInterestRequest): WebsocketStream<OpenInterestResponse>;
    /**
     * Top **<levels\>** bids and asks, Valid levels are **<levels\>** are 10, 20, 50, 100.
     *
     * Update Speed: 100ms or 1000ms, 500ms(default when update speed isn't used)
     *
     * @summary Partial Book Depth Streams
     * @param {PartialBookDepthStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<PartialBookDepthStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Partial-Book-Depth-Streams Binance API Documentation}
     */
    partialBookDepthStreams(requestParameters: PartialBookDepthStreamsRequest): WebsocketStream<PartialBookDepthStreamsResponse>;
    /**
     * 24hr ticker info for all symbols. Only symbols whose ticker info changed will be sent.
     *
     * Update Speed: 1000ms
     *
     * @summary 24-hour TICKER
     * @param {Ticker24HourRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<Ticker24HourResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/24-hour-TICKER Binance API Documentation}
     */
    ticker24Hour(requestParameters: Ticker24HourRequest): WebsocketStream<Ticker24HourResponse>;
    /**
     * 24hr ticker info by underlying asset and expiration date. E.g.[ETH@ticker@220930](wss://nbstream.binance.com/eoptions/stream?streams=ETH@ticker@220930)
     *
     * Update Speed: 1000ms
     *
     * @summary 24-hour TICKER by underlying asset and expiration data
     * @param {Ticker24HourByUnderlyingAssetAndExpirationDataRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<Ticker24HourByUnderlyingAssetAndExpirationDataResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/24-hour-TICKER-by-underlying-asset-and-expiration-data Binance API Documentation}
     */
    ticker24HourByUnderlyingAssetAndExpirationData(requestParameters: Ticker24HourByUnderlyingAssetAndExpirationDataRequest): WebsocketStream<Ticker24HourByUnderlyingAssetAndExpirationDataResponse>;
    /**
     * The Trade Streams push raw trade information for specific symbol or underlying asset. E.g.[ETH@trade](wss://nbstream.binance.com/eoptions/stream?streams=ETH@trade)
     *
     * Update Speed: 50ms
     *
     * @summary Trade Streams
     * @param {TradeStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<TradeStreamsResponse>}
     * @throws {RequiredError}
     * @memberof WebsocketMarketStreamsApi
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Trade-Streams Binance API Documentation}
     */
    tradeStreams(requestParameters: TradeStreamsRequest): WebsocketStream<TradeStreamsResponse>;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

declare class WebsocketStreamsConnection {
    private websocketBase;
    private websocketMarketStreamsApi;
    constructor(websocketBase: WebsocketStreamsBase);
    /**
     * Adds an event listener for the specified WebSocket event.
     * @param event - The WebSocket event to listen for, such as 'open', 'message', 'error', 'close', 'ping', or 'pong'.
     * @param listener - The callback function to be executed when the event is triggered. The function can accept any number of arguments.
     */
    on(event: 'open' | 'message' | 'error' | 'close' | 'ping' | 'pong', listener: (...args: any[]) => void): void;
    /**
     * Removes an event listener for the specified WebSocket event.
     * @param event - The WebSocket event to stop listening for, such as 'open', 'message', 'error', 'close', 'ping', or 'pong'.
     * @param listener - The callback function that was previously added as the event listener.
     */
    off(event: 'open' | 'message' | 'error' | 'close' | 'ping' | 'pong', listener: (...args: any[]) => void): void;
    /**
     * Disconnects from the WebSocket server.
     * If there is no active connection, a warning is logged.
     * Otherwise, all connections in the connection pool are closed gracefully,
     * and a message is logged indicating that the connection has been disconnected.
     * @returns A Promise that resolves when all connections have been closed.
     * @throws Error if the WebSocket client is not set.
     */
    disconnect(): Promise<void>;
    /**
     * Checks if the WebSocket connection is currently open.
     * @returns `true` if the connection is open, `false` otherwise.
     */
    isConnected(): boolean;
    /**
     * Sends a ping message to all connected Websocket servers in the pool.
     * If no connections are ready, a warning is logged.
     * For each active connection, the ping message is sent, and debug logs provide details.
     * @throws Error if a Websocket client is not set for a connection.
     */
    pingServer(): void;
    /**
     * Subscribes to one or multiple WebSocket streams
     * Handles both single and pool modes
     * @param stream Single stream name or array of stream names to subscribe to
     * @param id Optional subscription ID
     * @returns void
     */
    subscribe(stream: string | string[], id?: string): void;
    /**
     * Unsubscribes from one or multiple WebSocket streams
     * Handles both single and pool modes
     * @param stream Single stream name or array of stream names to unsubscribe from
     * @param id Optional unsubscription ID
     * @returns void
     */
    unsubscribe(stream: string | string[], id?: string): void;
    /**
     * Checks if the WebSocket connection is subscribed to the specified stream.
     * @param stream The name of the WebSocket stream to check.
     * @returns `true` if the connection is subscribed to the stream, `false` otherwise.
     */
    isSubscribed(stream: string): boolean;
    /**
     * Subscribes to the user data WebSocket stream using the provided listen key.
     * @param listenKey - The listen key for the user data WebSocket stream.
     * @param id - Optional user data stream ID
     * @returns A WebSocket stream handler for the user data stream.
     */
    userData(listenKey: string, id?: string): WebsocketStream<UserDataStreamEventsResponse>;
    /**
     * Underlying(e.g ETHUSDT) index stream.
     *
     * Update Speed: 1000ms
     *
     * @summary Index Price Streams
     * @param {IndexPriceStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<IndexPriceStreamsResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Index-Price-Streams Binance API Documentation}
     */
    indexPriceStreams(requestParameters: IndexPriceStreamsRequest): WebsocketStream<IndexPriceStreamsResponse>;
    /**
     * The Kline/Candlestick Stream push updates to the current klines/candlestick every 1000 milliseconds (if existing).
     *
     * Update Speed: 1000ms
     *
     * @summary Kline/Candlestick Streams
     * @param {KlineCandlestickStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<KlineCandlestickStreamsResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Kline-Candlestick-Streams Binance API Documentation}
     */
    klineCandlestickStreams(requestParameters: KlineCandlestickStreamsRequest): WebsocketStream<KlineCandlestickStreamsResponse>;
    /**
     * The mark price for all option symbols on specific underlying asset. E.g.[ETH@markPrice](wss://nbstream.binance.com/eoptions/stream?streams=ETH@markPrice)
     *
     * Update Speed: 1000ms
     *
     * @summary Mark Price
     * @param {MarkPriceRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<MarkPriceResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Mark-Price Binance API Documentation}
     */
    markPrice(requestParameters: MarkPriceRequest): WebsocketStream<MarkPriceResponse>;
    /**
     * New symbol listing stream.
     *
     * Update Speed: 50ms
     *
     * @summary New Symbol Info
     * @param {NewSymbolInfoRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<NewSymbolInfoResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/New-Symbol-Info Binance API Documentation}
     */
    newSymbolInfo(requestParameters?: NewSymbolInfoRequest): WebsocketStream<NewSymbolInfoResponse>;
    /**
     * Option open interest for specific underlying asset on specific expiration date. E.g.[ETH@openInterest@221125](wss://nbstream.binance.com/eoptions/stream?streams=ETH@openInterest@221125)
     *
     * Update Speed: 60s
     *
     * @summary Open Interest
     * @param {OpenInterestRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<OpenInterestResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Open-Interest Binance API Documentation}
     */
    openInterest(requestParameters: OpenInterestRequest): WebsocketStream<OpenInterestResponse>;
    /**
     * Top **<levels\>** bids and asks, Valid levels are **<levels\>** are 10, 20, 50, 100.
     *
     * Update Speed: 100ms or 1000ms, 500ms(default when update speed isn't used)
     *
     * @summary Partial Book Depth Streams
     * @param {PartialBookDepthStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<PartialBookDepthStreamsResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Partial-Book-Depth-Streams Binance API Documentation}
     */
    partialBookDepthStreams(requestParameters: PartialBookDepthStreamsRequest): WebsocketStream<PartialBookDepthStreamsResponse>;
    /**
     * 24hr ticker info for all symbols. Only symbols whose ticker info changed will be sent.
     *
     * Update Speed: 1000ms
     *
     * @summary 24-hour TICKER
     * @param {Ticker24HourRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<Ticker24HourResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/24-hour-TICKER Binance API Documentation}
     */
    ticker24Hour(requestParameters: Ticker24HourRequest): WebsocketStream<Ticker24HourResponse>;
    /**
     * 24hr ticker info by underlying asset and expiration date. E.g.[ETH@ticker@220930](wss://nbstream.binance.com/eoptions/stream?streams=ETH@ticker@220930)
     *
     * Update Speed: 1000ms
     *
     * @summary 24-hour TICKER by underlying asset and expiration data
     * @param {Ticker24HourByUnderlyingAssetAndExpirationDataRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<Ticker24HourByUnderlyingAssetAndExpirationDataResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/24-hour-TICKER-by-underlying-asset-and-expiration-data Binance API Documentation}
     */
    ticker24HourByUnderlyingAssetAndExpirationData(requestParameters: Ticker24HourByUnderlyingAssetAndExpirationDataRequest): WebsocketStream<Ticker24HourByUnderlyingAssetAndExpirationDataResponse>;
    /**
     * The Trade Streams push raw trade information for specific symbol or underlying asset. E.g.[ETH@trade](wss://nbstream.binance.com/eoptions/stream?streams=ETH@trade)
     *
     * Update Speed: 50ms
     *
     * @summary Trade Streams
     * @param {TradeStreamsRequest} requestParameters Request parameters.
     * @returns {WebsocketStream<TradeStreamsResponse>}
     * @throws {RequiredError}
     * @see {@link https://developers.binance.com/docs/derivatives/option/websocket-market-streams/Trade-Streams Binance API Documentation}
     */
    tradeStreams(requestParameters: TradeStreamsRequest): WebsocketStream<TradeStreamsResponse>;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

declare class WebsocketStreams {
    private configuration;
    constructor(configuration: ConfigurationWebsocketStreams);
    /**
     * Connects to the Binance WebSocket streams and returns a `WebsocketStreamsConnection` instance.
     *
     * @param {object} [options] - Optional connection options.
     * @param {string|string[]} [options.stream] - The stream(s) to connect to.
     * @param {'single'|'pool'} [options.mode] - The connection mode, either 'single' or 'pool'. Overwrite the `mode` option in the configuration.
     * @param {number} [options.poolSize] - The number of connections to use in pool mode. Overwrite the `poolSize` option in the configuration.
     * @returns {Promise<WebsocketStreamsConnection>} - A promise that resolves to a `WebsocketStreamsConnection` instance.
     */
    connect({ stream, mode, poolSize, }?: {
        stream?: string | string[];
        mode?: 'single' | 'pool';
        poolSize?: number;
    }): Promise<WebsocketStreamsConnection>;
}

/**
 * Binance Derivatives Trading Options WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Options WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

type index_AccountUpdate = AccountUpdate;
type index_AccountUpdateBInner = AccountUpdateBInner;
type index_AccountUpdateGInner = AccountUpdateGInner;
type index_AccountUpdatePInner = AccountUpdatePInner;
type index_IndexPriceStreamsRequest = IndexPriceStreamsRequest;
type index_IndexPriceStreamsResponse = IndexPriceStreamsResponse;
type index_KlineCandlestickStreamsRequest = KlineCandlestickStreamsRequest;
type index_KlineCandlestickStreamsResponse = KlineCandlestickStreamsResponse;
type index_KlineCandlestickStreamsResponseK = KlineCandlestickStreamsResponseK;
type index_MarkPriceRequest = MarkPriceRequest;
type index_MarkPriceResponse = MarkPriceResponse;
type index_MarkPriceResponseInner = MarkPriceResponseInner;
type index_NewSymbolInfoRequest = NewSymbolInfoRequest;
type index_NewSymbolInfoResponse = NewSymbolInfoResponse;
type index_OpenInterestRequest = OpenInterestRequest;
type index_OpenInterestResponse = OpenInterestResponse;
type index_OpenInterestResponseInner = OpenInterestResponseInner;
type index_OrderTradeUpdate = OrderTradeUpdate;
type index_OrderTradeUpdateOInner = OrderTradeUpdateOInner;
type index_OrderTradeUpdateOInnerFiInner = OrderTradeUpdateOInnerFiInner;
type index_PartialBookDepthStreamsRequest = PartialBookDepthStreamsRequest;
type index_PartialBookDepthStreamsResponse = PartialBookDepthStreamsResponse;
type index_PartialBookDepthStreamsResponseAItem = PartialBookDepthStreamsResponseAItem;
type index_PartialBookDepthStreamsResponseBItem = PartialBookDepthStreamsResponseBItem;
type index_RiskLevelChange = RiskLevelChange;
type index_Ticker24HourByUnderlyingAssetAndExpirationDataRequest = Ticker24HourByUnderlyingAssetAndExpirationDataRequest;
type index_Ticker24HourByUnderlyingAssetAndExpirationDataResponse = Ticker24HourByUnderlyingAssetAndExpirationDataResponse;
type index_Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner = Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner;
type index_Ticker24HourRequest = Ticker24HourRequest;
type index_Ticker24HourResponse = Ticker24HourResponse;
type index_TradeStreamsRequest = TradeStreamsRequest;
type index_TradeStreamsResponse = TradeStreamsResponse;
type index_UserDataStreamEventsResponse = UserDataStreamEventsResponse;
type index_WebsocketMarketStreamsApi = WebsocketMarketStreamsApi;
declare const index_WebsocketMarketStreamsApi: typeof WebsocketMarketStreamsApi;
type index_WebsocketMarketStreamsApiInterface = WebsocketMarketStreamsApiInterface;
type index_WebsocketStreams = WebsocketStreams;
declare const index_WebsocketStreams: typeof WebsocketStreams;
type index_WebsocketStreamsConnection = WebsocketStreamsConnection;
declare const index_WebsocketStreamsConnection: typeof WebsocketStreamsConnection;
declare namespace index {
  export { type index_AccountUpdate as AccountUpdate, type index_AccountUpdateBInner as AccountUpdateBInner, type index_AccountUpdateGInner as AccountUpdateGInner, type index_AccountUpdatePInner as AccountUpdatePInner, type index_IndexPriceStreamsRequest as IndexPriceStreamsRequest, type index_IndexPriceStreamsResponse as IndexPriceStreamsResponse, type index_KlineCandlestickStreamsRequest as KlineCandlestickStreamsRequest, type index_KlineCandlestickStreamsResponse as KlineCandlestickStreamsResponse, type index_KlineCandlestickStreamsResponseK as KlineCandlestickStreamsResponseK, type index_MarkPriceRequest as MarkPriceRequest, type index_MarkPriceResponse as MarkPriceResponse, type index_MarkPriceResponseInner as MarkPriceResponseInner, type index_NewSymbolInfoRequest as NewSymbolInfoRequest, type index_NewSymbolInfoResponse as NewSymbolInfoResponse, type index_OpenInterestRequest as OpenInterestRequest, type index_OpenInterestResponse as OpenInterestResponse, type index_OpenInterestResponseInner as OpenInterestResponseInner, type index_OrderTradeUpdate as OrderTradeUpdate, type index_OrderTradeUpdateOInner as OrderTradeUpdateOInner, type index_OrderTradeUpdateOInnerFiInner as OrderTradeUpdateOInnerFiInner, type index_PartialBookDepthStreamsRequest as PartialBookDepthStreamsRequest, type index_PartialBookDepthStreamsResponse as PartialBookDepthStreamsResponse, type index_PartialBookDepthStreamsResponseAItem as PartialBookDepthStreamsResponseAItem, type index_PartialBookDepthStreamsResponseBItem as PartialBookDepthStreamsResponseBItem, type index_RiskLevelChange as RiskLevelChange, type index_Ticker24HourByUnderlyingAssetAndExpirationDataRequest as Ticker24HourByUnderlyingAssetAndExpirationDataRequest, type index_Ticker24HourByUnderlyingAssetAndExpirationDataResponse as Ticker24HourByUnderlyingAssetAndExpirationDataResponse, type index_Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner as Ticker24HourByUnderlyingAssetAndExpirationDataResponseInner, type index_Ticker24HourRequest as Ticker24HourRequest, type index_Ticker24HourResponse as Ticker24HourResponse, type index_TradeStreamsRequest as TradeStreamsRequest, type index_TradeStreamsResponse as TradeStreamsResponse, type index_UserDataStreamEventsResponse as UserDataStreamEventsResponse, index_WebsocketMarketStreamsApi as WebsocketMarketStreamsApi, type index_WebsocketMarketStreamsApiInterface as WebsocketMarketStreamsApiInterface, index_WebsocketStreams as WebsocketStreams, index_WebsocketStreamsConnection as WebsocketStreamsConnection };
}

interface ConfigurationDerivativesTradingOptions {
    configurationRestAPI?: ConfigurationRestAPI;
    configurationWebsocketStreams?: ConfigurationWebsocketStreams;
}
declare class DerivativesTradingOptions {
    restAPI: RestAPI;
    websocketStreams: WebsocketStreams;
    constructor(config: ConfigurationDerivativesTradingOptions);
}

export { type ConfigurationDerivativesTradingOptions, DerivativesTradingOptions, index$1 as DerivativesTradingOptionsRestAPI, index as DerivativesTradingOptionsWebsocketStreams };
