import { IconPayload } from './interface';
/**
 * Internal icon manager
 */
declare class InternalIconManager {
  private static INTERNAL_ICON_NAMESPACE;
  /**
   * Get the internal icon key by name
   *
   * @param {string} name - The name of the icon
   * @returns {string} returns the internal icon key
   */
  getIconKey(name: string): string;
  /**
   *  Check if the internal icon manager has an icon by name
   *
   * @param {string} name - The name of the icon
   * @returns {boolean} returns true if the icon exists
   * @vegaVersion 2.46.0
   */
  hasIcon(name: string): boolean;
  /**
   * Register internal icons
   *
   * @param {Record<string, IconPayload>} icons - The icons to register
   */
  register(icons: Record<string, IconPayload>): void;
  /**
   * Generate the icon key with the namespace
   *
   * @param {string} name - The name of the icon
   * @param {string} namespace - The namespace of the icon
   * @returns {string} returns the key with the namespace
   */
  private generateIconKeyWithNamespace;
}
export declare const VegaInternalIconManager: InternalIconManager;
export {};
