/**
 * Created by rburson on 12/23/15.
 */
import * as React from 'react';
import { CvState, CvProps, CvEvent, CvLoginResult, CvContext, CvResultCallback, CvActionFiredResult } from '../core/catreact-core';
export interface CvLoginState extends CvState {
}
export interface CvLoginProps extends CvProps {
    loginListeners?: Array<(loginEvent: CvEvent<CvLoginResult>) => void>;
    actionListeners?: Array<(event: CvEvent<CvActionFiredResult>) => void>;
    renderer?: (cvContext: CvContext, callback: CvLoginCallback) => {};
}
export interface CvLoginCallback {
    isLoggedIn(): boolean;
    changePasswordAndLogin(url: string, tenantId: string, clientType: string, userId: string, existingPassword: string, newPassword: string, resultCallback?: CvResultCallback<CvLoginResult>): void;
    login(gatewayHost: string, tenantId: string, clientType: string, userId: string, password: string, resultCallback?: CvResultCallback<CvLoginResult>): void;
    loginDirectly(url: string, tenantId: string, clientType: string, userId: string, password: string, resultCallback?: CvResultCallback<CvLoginResult>): void;
}
export declare var CvLogin: React.ClassicComponentClass<CvLoginProps>;
