import { BaseBuyInvestmentTransaction } from "./BaseBuyInvestmentTransaction";
import { OptionBuyType } from "./OptionBuyType";
/**
 * Transaction for buying options.
 * @see "Section 13.9.2.4.4, OFX Spec"
 */
export declare class BuyOptionTransaction extends BaseBuyInvestmentTransaction {
    private optionBuyType;
    private sharesPerContact;
    constructor();
    /**
     * Gets the type of option purchase (i.e. "BUYTOOPEN" or "BUYTOCLOSE"). This is a required field
     * according to the OFX spec.
     * @see "Section 13.9.2.4.4, OFX Spec"
     *
     * @return the option buy type
     */
    getOptionBuyType(): string;
    /**
     * Sets the type of option purchase (i.e. "BUYTOOPEN" or "BUYTOCLOSE"). This is a required field
     * according to the OFX spec.
     * @see "Section 13.9.2.4.4, OFX Spec"
     *
     * @param optionBuyType the option buy type
     */
    setOptionBuyType(optionBuyType: string): void;
    /**
     * Gets the option buy type as one of the well-known types.
     *
     * @return the type of purchase or null if it's not known
     */
    getOptionBuyTypeEnum(): OptionBuyType;
    /**
     * Gets the number of shares per contact. This is a required field according to the OFX spec.
     * @see "Section 13.9.2.4.4, OFX Spec"
     *
     * @return the number of shares per contact
     */
    getSharesPerContract(): number;
    /**
     * Sets the number of shares per contact. This is a required field according to the OFX spec.
     * @see "Section 13.9.2.4.4, OFX Spec"
     *
     * @param sharesPerContact the number of shares per contact
     */
    setSharesPerContract(sharesPerContact: number): void;
}
