import ApolloClient from "apollo-client";
import { AuthLoginResponse } from "@joincivil/utils";
export interface AuthServiceOptions {
    apolloClient: ApolloClient<any>;
    onAuthChange(currentUser: any): void;
}
export declare class AuthService {
    currentUser?: any;
    loading: boolean;
    private apolloClient;
    private onAuthChange;
    constructor(opts: AuthServiceOptions);
    handleInitialState(): Promise<void>;
    getSession(): AuthLoginResponse | null;
    logout(): void;
    authenticate(signature: any): Promise<any>;
    signup(signature: any): Promise<any>;
    loginUser(session: any): Promise<void>;
    fetchCurrentUser(): Promise<void>;
    private graphqlLoginSignup;
}
