import { TypeTranslation } from "./_types/types";
import { CountryData, Point } from "../config/interfaces";
import { TypeCity } from "./cities";
/**
 * General types.
 */
export type TypeCountryData = {
    [key: string]: TypeCountry;
};
/**
 * Country type
 */
export type TypeCountry = {
    code: string | null;
    translation: TypeTranslation;
};
/**
 * Returns all countries.
 */
export declare const getCountries: () => TypeCountry[];
/**
 * Convert countries to easy accessible array (map).
 */
export declare const getCountryMap: () => TypeCountryData;
/**
 * Get country by given country id (code).
 */
export declare const getCountryByCountryId: (countryId: string | null) => TypeCountry | null;
/**
 * Get country by given place
 */
export declare const getCountryByPlace: (place: TypeCity) => TypeCountry | null;
/**
 * Converts the given TypeCountry to CountryData.
 *
 * @param country
 * @param language
 * @param point
 * @param svgPoint
 */
export declare const getCountryDataByCountry: (country: TypeCountry, point?: Point | null, svgPoint?: SVGPoint | null, language?: string) => CountryData;
