import { Logger } from '@dvn/core/log/logger';
import { SozlukEntry } from '@dvn/sozluk/models/sozluk-entry';
export interface ISozlukApi {
  getContent<T>(key: string, defaultData?: any): Promise<T>;
  setContents(contents: any[]): SozlukApi;
  setLanguage(language: string): SozlukApi;
}
export declare class SozlukApi implements ISozlukApi {
  static defaultLanguage: string;
  static build: (text: string, vars: any) => string;
  contents: SozlukEntry[];
  language: string;
  logger: Logger;
  constructor(language?: string);
  /**
   * Returns the entry with provided key for the specified language. Tries to provide fallback
   * for the fields that are missing in the provided language by adding the fields from the default language.
   * @param key
   * @param defaultData
   */
  getContent<T>(key: string, defaultData?: any): Promise<T>;
  /**
   * Sets the data locally. getContent() returns the entries from the provided data.
   * @param contents
   */
  setContents(contents: any[]): SozlukApi;
  setLanguage(language: string): SozlukApi;
}
