import { Action } from '@ngrx/store'; import { SessionUser } from './user.model'; import * as firebase from 'firebase'; export declare type AuthError = { code: string; message: string; name: string; }; export interface State { authenticated: boolean; error?: AuthError; id?: string; data?: SessionUser; } export declare const AUTH_STATE_CHANGED = "[Auth] authStateChanged"; export declare const SESSION_USER_LOADED = "[Auth] sessionUserLoaded"; export declare const AUTH_ERRORED = "[Auth] authErrored"; export declare class AuthStateChangedAction implements Action { readonly payload: firebase.User; type: string; constructor(payload: firebase.User); } export declare class SessionUserLoadedAction implements Action { readonly payload: SessionUser; type: string; constructor(payload: SessionUser); } export declare class AuthErroredAction implements Action { readonly payload: AuthError; type: string; constructor(payload: AuthError); } export declare function reducer(state: State, action: Action): State;