import * as flatbuffers from 'flatbuffers';
import { OrderType as OrderType, SecurityType as SecurityType, Side as Side, TimeInForce as TimeInForce } from './Enum_generated.js';
import { StrategyParameter as StrategyParameter } from './StrategyParameter_generated.js';
/**
 * The New Order Single message is sent by the taker to create a new order for execution.
 * The maker is expected to respond immediately with a Execution Report message under normal conditions.
 */
export declare class NewOrderSingle {
    bb: flatbuffers.ByteBuffer | null;
    bb_pos: number;
    __init(i: number, bb: flatbuffers.ByteBuffer): NewOrderSingle;
    static getRootAsNewOrderSingle(bb: flatbuffers.ByteBuffer, obj?: NewOrderSingle): NewOrderSingle;
    static getSizePrefixedRootAsNewOrderSingle(bb: flatbuffers.ByteBuffer, obj?: NewOrderSingle): NewOrderSingle;
    /**
     * Trading account.
     */
    account(): string | null;
    account(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Instrument symbol
     */
    symbol(): string | null;
    symbol(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Exchange or venue symbol.
     */
    venue(): string | null;
    venue(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Tenor symbol. Defaults to SP.
     */
    tenor(): string | null;
    tenor(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Request identifier assigned by the client (Max 48 characters).
     */
    clOrderId(): string | null;
    clOrderId(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Security Type. defaults to Spot.
     */
    securityType(): SecurityType;
    /**
     * Order side.
     */
    side(): Side;
    /**
     * See OrderType.
     */
    orderType(): OrderType;
    /**
     * See TimeInForce.
     */
    timeInForce(): TimeInForce;
    /**
     * Order quantity. MUST be greater than zero.
     */
    qty(): number;
    /**
     * All-in order price.
     */
    price(): number;
    /**
     * Order currency.
     */
    ccy(): string | null;
    ccy(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Order price tolerance.
     */
    priceTolerance(): number;
    /**
     * Quote Indentifier.
     */
    quoteId(): string | null;
    quoteId(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Target strategy for order execution.
     */
    strategy(): string | null;
    strategy(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Strategy Parameters
     */
    strategyParameters(index: number, obj?: StrategyParameter): StrategyParameter | null;
    strategyParametersLength(): number;
    /**
     * Free text field for customer use. Max 128 characters.
     */
    text(): string | null;
    text(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * A list of order execution venues. Ignored if venue is not AGG.
     */
    execVenues(index: number): string;
    execVenues(index: number, optionalEncoding: flatbuffers.Encoding): string | Uint8Array;
    execVenuesLength(): number;
    /**
     * Swap only, far leg all-in price.
     */
    farPrice(): number;
    /**
     * Swap only, far leg quantity.
     */
    farQty(): number;
    /**
     * Swaps only, far leg tenor.
     */
    farTenor(): string | null;
    farTenor(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    static startNewOrderSingle(builder: flatbuffers.Builder): void;
    static addAccount(builder: flatbuffers.Builder, accountOffset: flatbuffers.Offset): void;
    static addSymbol(builder: flatbuffers.Builder, symbolOffset: flatbuffers.Offset): void;
    static addVenue(builder: flatbuffers.Builder, venueOffset: flatbuffers.Offset): void;
    static addTenor(builder: flatbuffers.Builder, tenorOffset: flatbuffers.Offset): void;
    static addClOrderId(builder: flatbuffers.Builder, clOrderIdOffset: flatbuffers.Offset): void;
    static addSecurityType(builder: flatbuffers.Builder, securityType: SecurityType): void;
    static addSide(builder: flatbuffers.Builder, side: Side): void;
    static addOrderType(builder: flatbuffers.Builder, orderType: OrderType): void;
    static addTimeInForce(builder: flatbuffers.Builder, timeInForce: TimeInForce): void;
    static addQty(builder: flatbuffers.Builder, qty: number): void;
    static addPrice(builder: flatbuffers.Builder, price: number): void;
    static addCcy(builder: flatbuffers.Builder, ccyOffset: flatbuffers.Offset): void;
    static addPriceTolerance(builder: flatbuffers.Builder, priceTolerance: number): void;
    static addQuoteId(builder: flatbuffers.Builder, quoteIdOffset: flatbuffers.Offset): void;
    static addStrategy(builder: flatbuffers.Builder, strategyOffset: flatbuffers.Offset): void;
    static addStrategyParameters(builder: flatbuffers.Builder, strategyParametersOffset: flatbuffers.Offset): void;
    static createStrategyParametersVector(builder: flatbuffers.Builder, data: flatbuffers.Offset[]): flatbuffers.Offset;
    static startStrategyParametersVector(builder: flatbuffers.Builder, numElems: number): void;
    static addText(builder: flatbuffers.Builder, textOffset: flatbuffers.Offset): void;
    static addExecVenues(builder: flatbuffers.Builder, execVenuesOffset: flatbuffers.Offset): void;
    static createExecVenuesVector(builder: flatbuffers.Builder, data: flatbuffers.Offset[]): flatbuffers.Offset;
    static startExecVenuesVector(builder: flatbuffers.Builder, numElems: number): void;
    static addFarPrice(builder: flatbuffers.Builder, farPrice: number): void;
    static addFarQty(builder: flatbuffers.Builder, farQty: number): void;
    static addFarTenor(builder: flatbuffers.Builder, farTenorOffset: flatbuffers.Offset): void;
    static endNewOrderSingle(builder: flatbuffers.Builder): flatbuffers.Offset;
    static createNewOrderSingle(builder: flatbuffers.Builder, accountOffset: flatbuffers.Offset, symbolOffset: flatbuffers.Offset, venueOffset: flatbuffers.Offset, tenorOffset: flatbuffers.Offset, clOrderIdOffset: flatbuffers.Offset, securityType: SecurityType, side: Side, orderType: OrderType, timeInForce: TimeInForce, qty: number, price: number, ccyOffset: flatbuffers.Offset, priceTolerance: number, quoteIdOffset: flatbuffers.Offset, strategyOffset: flatbuffers.Offset, strategyParametersOffset: flatbuffers.Offset, textOffset: flatbuffers.Offset, execVenuesOffset: flatbuffers.Offset, farPrice: number, farQty: number, farTenorOffset: flatbuffers.Offset): flatbuffers.Offset;
}
