/// <reference types="react" />
import { MainStateManager } from "../MainStateManager";
import { ElementsOfFormFactory } from "../Page/ElementsOfFormFactory";
import { CheckBoxFactory } from "../ComponentFactory/CheckBoxFactory";
import { UserBoxFactory } from "../ComponentFactory/UserBoxFactory";
import { MenuFactory } from "./Menus/1-MenuFactory";
import { ISettingInfo } from "./Models/SettingInfo";
import { FiscalYear, IFiscalYearsInfo } from "./Models/FiscalYearsInfo/FiscalYearsInfo";
import { ISubSystemsInfo } from "./Models/SubSystemsInfo/SubSystemsInfo";
import { IUserInfo } from "./Models/UserInfo/UserInfo";
export interface ILoginResponseData {
    fiscalYearsInfo: IFiscalYearsInfo;
    userInfo: IUserInfo;
    settingInfo: ISettingInfo;
    subSystemsInfo: ISubSystemsInfo;
}
export interface ILoginResponse {
    isSuccess: boolean;
    message: string;
    token: string;
    data: ILoginResponseData;
}
export declare class AuthFactory {
    #private;
    mainStateManager: MainStateManager;
    get any(): any;
    forceUpdate: () => void;
    searchBoxRef?: React.RefObject<HTMLInputElement>;
    cach: {};
    userRoutes: any[];
    getUser: () => UserBoxFactory;
    getPass: () => UserBoxFactory;
    getRememberMe: () => CheckBoxFactory;
    elementsOfForm: ElementsOfFormFactory;
    menuFactory: MenuFactory;
    afterLoginSuccess?: (response: any) => void;
    constructor(mainStateManager: MainStateManager);
    loginByToken: () => void;
    loginByUserPass: () => void;
    get isAtunticated(): boolean;
    signOut: () => void;
    selectNewActiveFiscalYear: (currentRow: FiscalYear) => void;
    selectNewActiveSystems: () => void;
    private deserialize;
}
