export interface TranslateEngineConfig { timeout ? : number ; apiKey ? : string ; } export interface TranslateOptions { text : string ; from ? : string ; to ? : string ; } export interface TranslateResult { text : string ; from : string ; to : string ; response : any ; linkToResult : string ; error ? : Error ; result ? : string [ ] ; detailed ? : string [ ] ; } export default abstract class TranslateEngine { constructor ( public config = { } ) { } resolve ( lang ) { return lang ; } abstract translate ( options ) ; }