import { StatementResponse } from "../../common/StatementResponse";
import { InvestmentAccountDetails } from "../accounts/InvestmentAccountDetails";
import { InvestmentTransactionList } from "../transactions/InvestmentTransactionList";
import { InvestmentPositionList } from "../positions/InvestmentPositionList";
import { InvestmentBalance } from "./InvestmentBalance";
import { SecurityList } from "../../seclist/SecurityList";
/**
* Aggregate for the investment statement download response.
* @see "Section 13.9.2.2, OFX Spec"
*/
export declare class InvestmentStatementResponse extends StatementResponse {
private dateOfStatement;
private account;
private investmentTransactionList;
private positionList;
private accountBalance;
private securityList;
/**
* Gets the name of the response message.
*
* @return the name of the response message
*/
getResponseMessageName(): string;
/**
* Gets the date and time for the statement download. This is a required field according to the
* OFX spec.
*
* @return the date and time for the statement download
*/
getDateOfStatement(): Date;
/**
* Sets the date and time for the statement download. This is a required field according to the
* OFX spec.
*
* @param dateOfStatement the date and time for the statement download
*/
setDateOfStatement(dateOfStatement: Date): void;
/**
* Gets the account for the statement. This is a required field according to the OFX spec.
*
* @return the account for the statement
*/
getAccount(): InvestmentAccountDetails;
/**
* Sets the account for the statement. This is a required field according to the OFX spec.
*
* @param account the account for the statement
*/
setAccount(account: InvestmentAccountDetails): void;
/**
* Gets the transaction list aggregate. This is an optional field according to the OFX spec.
*
* @return the transaction list aggregate
*/
getInvestmentTransactionList(): InvestmentTransactionList;
/**
* Sets the transaction list aggregate. This is an optional field according to the OFX spec.
*
* @param transactionList the transaction list aggregate
*/
setInvestmentTransactionList(transactionList: InvestmentTransactionList): void;
/**
* Gets the position list aggreate. This is an optional field according to the OFX spec.
*
* @return the position list aggregate
*/
getPositionList(): InvestmentPositionList;
/**
* Sets the position list aggreate. This is an optional field according to the OFX spec.
*
* @param positionList the position list aggregate
*/
setPositionList(positionList: InvestmentPositionList): void;
/**
* Gets the account balance. This is an optional field according to the OFX spec.
*
* @return the account balance
*/
getAccountBalance(): InvestmentBalance;
/**
* Sets the account balance. This is an optional field according to the OFX spec.
*
* @param accountBalance the account balance
*/
setAccountBalance(accountBalance: InvestmentBalance): void;
/**
* Gets the security list aggregate.
*
* This is not actually technically part of the investment statement responsr aggregate, but
* according to Section 13.8.4, OFX spec, this aggregate can appear the overall response and
* we provide it here for convenience.
*
* @return the security list aggregate
*/
getSecurityList(): SecurityList;
/**
* Sets the security list aggregate.
*
* This is not actually technically part of the investment statement responsr aggregate, but
* according to Section 13.8.4, OFX spec, this aggregate can appear the overall response and
* we provide it here for convenience.
*
* @param securityList the security list aggregate
*/
setSecurityList(securityList: SecurityList): void;
}