import { VegaSlimmer } from '../../../../vega-slimmer/vega-slimmer-core';
import { VegaFlagIcon } from '../../vega-flag-icon';
/**
 * The function `dynamicLoadTheCountryFlags` will dynamic import and register flags of all countries at once
 */
export declare function dynamicLoadTheCountryFlags(): Promise<void>;
/**
 * The `VegaFlagIconController` class in TypeScript manage country flag and
 * country codes, dynamic import the flags of all countries and get the country icon by specific code.
 */
export declare class VegaFlagIconController extends VegaSlimmer {
  protected host: VegaFlagIcon['host'];
  protected country: VegaFlagIcon['country'];
  private observer;
  /**
   * componentWillLoad
   */
  componentWillLoad(): void;
  /**
   * disconnectedCallback
   */
  unRegisterObserver(): void;
  /**
   * The function creates an observer to observe the subject of FLAG_ICON_LOADED.
   */
  registerObserver(): void;
  /**
   * Checks if the country icon exists by country code.
   *
   * @param {VegaCountryCode} countryCode - The `country` parameter is of type `VegaCountryCode`, which is likely a
   * custom data type representing a country code.
   * @returns {boolean} return the icon is exist or not.
   */
  private isFlagForCountryCodeLoaded;
  /**
   * Determines whether the observer should accept changes.
   *
   * @returns {boolean} Always returns true in the current implementation.
   */
  private isAcceptObserver;
  /**
   * This function listens whether the logo icon is imported asynchronously.
   */
  private listenerCallback;
}
