use std::{future::Future, pin::Pin};
use crate::{ProviderId, VerificationError, VerificationRequest, VerificationResult};
pub type VerificationFuture<'a> =
Pin<Box<dyn Future<Output = Result<VerificationResult, VerificationError>> + Send + 'a>>;
pub trait CaptchaVerifier: Send + Sync {
fn provider(&self) -> &ProviderId;
fn verify(&self, request: VerificationRequest) -> VerificationFuture<'_>;
}