use std::error::Error;
use std::future::Future;
pub trait LoadSource {
type ErrorType: Error;
fn load(&self) -> Result<Vec<String>, Self::ErrorType>;
}
pub trait AsyncLoadSource {
type ErrorType: Error;
fn load(&self) -> impl Future<Output = Result<Vec<String>, Self::ErrorType>> + Send;
}