Documentation
use std::ops::Range;

use aok::Result;

mod cache;
pub use cache::Cache;

pub trait Traner {
  fn tran(
    &self,
    from_lang: u16,
    to_lang: u16,
    txt_li: &[&str],
  ) -> impl std::future::Future<Output = Result<Vec<String>>> + Send;
}

pub trait Parser {
  fn parse(txt: &str) -> Result<Vec<Range<usize>>>;
}