import { ResponseMessage } from "../ResponseMessage";
import { StatusHolder } from "../common/StatusHolder";
import { Status } from "../common/Status";
import { FinancialInstitutionInfo } from "./FinancialInstitution";
/**
 * The signon response message.
 *
 * @see "Section 2.5.1.2, OFX Spec."
 */
export declare class SignonResponse extends ResponseMessage implements StatusHolder {
    private status;
    private timestamp;
    private userKey;
    private userKeyExpiration;
    private language;
    private profileLastUpdated;
    private accountLastUpdated;
    private financialInstitution;
    private sessionId;
    private accessKey;
    constructor();
    getResponseMessageName(): string;
    getStatusHolderName(): string;
    /**
     * The signon response status.
     *
     * @return The signon response status.
     */
    getStatus(): Status;
    /**
     * The signon response status.
     *
     * @param status The signon response status.
     */
    setStatus(status: Status): void;
    /**
     * The timestamp of this response.
     *
     * @return The timestamp of this response.
     */
    getTimestamp(): Date;
    /**
     * The timestamp of this response.
     *
     * @param timestamp The timestamp of this response.
     */
    setTimestamp(timestamp: Date): void;
    /**
     * The userkey that can be used instead of the username/password.
     *
     * @return The userkey that can be used instead of the username/password.
     */
    getUserKey(): string;
    /**
     * The userkey that can be used instead of the username/password.
     *
     * @param userKey The userkey that can be used instead of the username/password.
     */
    setUserKey(userKey: string): void;
    /**
     * The date/time of the expiration of the user key.
     *
     * @return The date/time of the expiration of the user key.
     */
    getUserKeyExpiration(): Date;
    /**
     * The date/time of the expiration of the user key.
     *
     * @param userKeyExpiration The date/time of the expiration of the user key.
     */
    setUserKeyExpiration(userKeyExpiration: Date): void;
    /**
     * The three-letter langauge code.
     *
     * @return The three-letter langauge code.
     * @see java.util.Locale#getISO3Language()
     */
    getLanguage(): string;
    /**
     * The three-letter langauge code.
     *
     * @param language The three-letter langauge code.
     */
    setLanguage(language: string): void;
    /**
     * The date/time that the FI profile was last updated.
     *
     * @return The date/time that the FI profile was last updated.
     */
    getProfileLastUpdated(): Date;
    /**
     * The date/time that the FI profile was last updated.
     *
     * @param profileLastUpdated The date/time that the FI profile was last updated.
     */
    setProfileLastUpdated(profileLastUpdated: Date): void;
    /**
     * The date/time that the user's account information was updated.
     *
     * @return The date/time that the user's account information was updated.
     */
    getAccountLastUpdated(): Date;
    /**
     * The date/time that the user's account information was updated.
     *
     * @param accountLastUpdated The date/time that the user's account information was updated.
     */
    setAccountLastUpdated(accountLastUpdated: Date): void;
    /**
     * The financial instutution identity information.
     *
     * @return The financial instutution identity information.
     */
    getFinancialInstitution(): FinancialInstitutionInfo;
    /**
     * The financial instutution identity information.
     *
     * @param financialInstitution The financial instutution identity information.
     */
    setFinancialInstitution(financialInstitution: FinancialInstitutionInfo): void;
    /**
     * The session id for the client.
     *
     * @return The session id for the client.
     */
    getSessionId(): string;
    /**
     * The session id for the client.
     *
     * @param sessionId The session id for the client.
     */
    setSessionId(sessionId: string): void;
    /**
     * The access key that the client should return in the next sign-on requuest.
     *
     * @return The access key that the client should return in the next sign-on requuest.
     */
    getAccessKey(): string;
    /**
     * The access key that the client should return in the next sign-on requuest.
     *
     * @param accessKey The access key that the client should return in the next sign-on requuest.
     */
    setAccessKey(accessKey: string): void;
}
