import { InvestmentAccount } from "../InvestmentAccount";
import { InvestmentAccountDetails } from "../../domain/data/investment/accounts/InvestmentAccountDetails";
import { FinancialInstitutionImpl } from "./FinancialInstitutionImpl";
import { InvestmentStatementResponse } from "../../domain/data/investment/statements/InvestmentStatementResponse";
import { SecurityRequest } from "../../domain/data/seclist/SecurityRequest";
import { SecurityList } from "../../domain/data/seclist/SecurityList";
export declare class InvestmentAccountImpl implements InvestmentAccount {
    private details;
    private username;
    private password;
    private institution;
    constructor(details: InvestmentAccountDetails, username: string, password: string, institution: FinancialInstitutionImpl);
    readStatement(start: Date, end: Date): Promise<InvestmentStatementResponse>;
    readSecurityList(securities: Array<SecurityRequest>): Promise<SecurityList>;
    /**
     * The details of this account.
     *
     * @return The details of this account.
     */
    getDetails(): InvestmentAccountDetails;
    private unwrapStatementResponse;
    private createStatementRequestMessageSet;
    private createStatementRequest;
    private createSecurityListRequestMessageSet;
    private createSecurityListRequest;
    private unwrapSecurityList;
}
