import * as i0 from '@angular/core';
import { Provider, EnvironmentProviders, ModuleWithProviders } from '@angular/core';
import { G11nFeature, G11nLocale, G11nOptions } from '@hug/ngx-g11n/internal';
export { DefaultModuleImport, G11nDebug, G11nLocale, G11nOptions, currentLanguage, setLanguage } from '@hug/ngx-g11n/internal';

declare class G11nModule {
    static forRoot(...features: G11nFeature<Provider | EnvironmentProviders>[]): ModuleWithProviders<G11nModule>;
    static ɵfac: i0.ɵɵFactoryDeclaration<G11nModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<G11nModule, never, never, never>;
    static ɵinj: i0.ɵɵInjectorDeclaration<G11nModule>;
}

declare const withInterceptor: () => G11nFeature<EnvironmentProviders>;
declare const withLocales: (locales: Record<string, G11nLocale>) => G11nFeature;
declare const withOptions: (options: G11nOptions) => G11nFeature;
declare const provideG11n: (...features: G11nFeature<Provider | EnvironmentProviders>[]) => EnvironmentProviders;

export { G11nModule, provideG11n, withInterceptor, withLocales, withOptions };
