import * as i18n from 'i18next' ; import { I18NextLoadResult } from './I18NextLoadResult' ; import { ITranslationEvents } from './ITranslationEvents' ; type Modify < T , R > = Omit < T , keyof R > & R ; export type ITranslationService = Modify < Partial < i18n . i18n > , { events : ITranslationEvents ; language : string ; languages : readonly string [ ] ; options : i18n . InitOptions ; modules : i18n . Modules ; services : i18n . Services ; store : i18n . ResourceStore ; resolvedLanguage : string ; use < T extends i18n . Module > ( module ) : ITranslationService ; init ( options ) : Promise < I18NextLoadResult > ; t : i18n . TFunction ; format : i18n . FormatFunction ; exists : i18n . ExistsFunction ; getFixedT ( lng , ns ? , keyPrefix ? ) : i18n . TFunction ; getFixedT ( lng , ns , keyPrefix ? ) : i18n . TFunction ; setDefaultNamespace ( ns ) : void ; dir ( lng ) : string ; changeLanguage ( lng ) : Promise < any > ; loadNamespaces ( namespaces ) : Promise < any > ; loadLanguages ( lngs , callback ? ) : Promise < void > ; loadResources ( callback ? ) : void ; getDataByLanguage ( lng ) : { translation : { [ key ] : string ; } ; } | undefined ; reloadResources ( lngs ? , ns ? , callback ? ) : Promise < void > ; reloadResources ( lngs , ns , callback ? ) : Promise < void > ; getResource ( lng , ns , key , options ? ) : any ; addResource ( lng , ns , key , value , options ? ) : i18n . i18n ; addResources ( lng , ns , resources ) : i18n . i18n ; addResourceBundle ( lng , ns , resources , deep ? , overwrite ? ) : i18n . i18n ; hasResourceBundle ( lng , ns ) : boolean ; getResourceBundle ( lng , ns ) : any ; removeResourceBundle ( lng , ns ) : i18n . i18n ; } > ;