import { VegaSlimmer } from '../../../../vega-slimmer/vega-slimmer-core';
import { VegaInputPhoneNumber } from '../../vega-input-phone-number';
import { VegaCountryCode } from '../../../../types/flag.type';
/**
 * The `CountrySelectController` class in TypeScript includes methods to set the search string and
 * countryCode properties.
 */
export declare class CountrySelectController extends VegaSlimmer {
  static readonly defaultCountryCode: VegaCountryCode;
  static readonly defaultAllowedCountryCodes: VegaCountryCode[];
  protected countryCode: VegaInputPhoneNumber['countryCode'];
  protected host: VegaInputPhoneNumber['host'];
  /**
   * Component lifecycle - connectedCallback
   */
  connectedCallback(): void;
  /**
   * The function `setCountryCode` sets the countryCode property of an object to the specified VegaCountryCode value.
   *
   * @param {VegaCountryCode} countryCode - The `countryCode` parameter is of type `VegaCountryCode`, which is likely a
   * custom data type representing a country code.
   */
  setCountryCode(countryCode: VegaCountryCode): void;
  /**
   * Registers a remote invocation call for a dropdown search.
   */
  private registerRemoteDropdownSearch;
  /**
   * Remote invocation call for a dropdown search.
   *
   * @param {DropdownSourceItem[]} source - Source of dropdown.
   * @param {string} searchString - Searching string of dropdown.
   * @returns  {DropdownSourceItem[]}  The searched source.
   */
  private filterDropdownSourcesBySearchString;
}
