import * as react_jsx_runtime from 'react/jsx-runtime';
import React from 'react';

interface LoginInput {
    email: string;
    password: string;
}
interface AuthenticationState {
    token: string;
    authenticated: boolean;
    login: (input: LoginInput) => Promise<{
        token?: string;
        error?: Error;
    }>;
    logout: () => void;
    updateToken: (token: string) => Promise<{
        error?: Error;
    }>;
}
declare const M2mAuthenticationProvider: ({ children, }: {
    children: React.ReactNode;
}) => react_jsx_runtime.JSX.Element;
declare const useAuth: () => AuthenticationState;

export { M2mAuthenticationProvider, useAuth };
