use clap::Parser;
use fars::ApiKey;
use fars::Config;
use fars::Email;
use fars::Password;
#[derive(Parser)]
struct Arguments {
#[arg(short, long)]
email: String,
#[arg(short, long)]
password: String,
}
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let arguments = Arguments::parse();
let api_key = ApiKey::new(std::env::var("FIREBASE_API_KEY")?);
let config = Config::new(api_key);
let session = config
.sign_in_with_email_password(
Email::new(arguments.email.clone()),
Password::new(arguments.password.clone()),
)
.await?;
let (_new_session, user_data) = session
.get_user_data()
.await?;
println!(
"Succeeded to get user data: {:?}",
user_data
);
Ok(())
}