import { NumberMaskStrategy, NumberMaskConfig } from './number-mask-strategy';
/**
 * A class for formatting number string with the "," as the thousand separator
 */
export declare class NumberThousandCommaStrategy extends NumberMaskStrategy {
  /**
   * It creates a new instance of the Mask class.
   *
   * @param {NumberMaskConfig} maskConfig - MaskConfig
   * @param {boolean} overrideValue - Whether to override the value after blur, default is false
   */
  constructor(maskConfig: NumberMaskConfig, overrideValue?: boolean);
  /**
   * If the input is a number, format it as a thousand comma string
   *
   * @param {string} input - string
   * @returns {string} The input string, but with commas as thousands separator.
   */
  format(input: string): string;
  /**
   * Get the position of caret
   *
   * @param {string} input - The input string
   * @param {number} caretPosition - The current caret position
   * @returns {number} The new position of caret
   */
  calculateCaretPosition(input: string, caretPosition: number): number;
  /**
   * The function `thousandCommaFormat` takes a string input, removes non-numeric characters, formats the number with thousand commas, and returns the result.
   *
   * @param {string} input - Takes a string input and formats it by adding commas to separate thousands. It also handles decimal values based on the precision specified in the `maskConfig`.
   * @returns {string} Returns a formatted string with commas for thousands separator and optional decimal places.
   */
  private thousandCommaFormat;
}
