import { CallHandler, ExecutionContext, NestInterceptor, OnModuleInit, Type } from '@nestjs/common';
import { Observable } from 'rxjs';
import { BaseLocalizationAdapter } from '../adapters';
import { LocaleResolver, TranslationFn } from '../interfaces';
import { ModuleRef } from '@nestjs/core';
export declare class LocalizationInterceptor implements NestInterceptor, OnModuleInit {
    private readonly localizationAdapter;
    private readonly resolvers;
    private readonly moduleRef;
    private cachedResolvers;
    private static currentTranslationFn;
    static getCurrentTranslationFn(): TranslationFn;
    constructor(localizationAdapter: BaseLocalizationAdapter, resolvers: (LocaleResolver | Type<LocaleResolver>)[], moduleRef: ModuleRef);
    onModuleInit(): Promise<void>;
    intercept(context: ExecutionContext, next: CallHandler<unknown>): Promise<Observable<unknown>>;
    private getLocale;
    private getResolver;
    private getTranslationFn;
}
