import type Input from "./Input.js";

export interface TextInputProperties extends Partial<Pick<TextInput, "maxLength" | "minLength">> {}

/**
 * The mixin for [TextAreaInput](https://developers.arcgis.com/javascript/latest/api-reference/esri-form-elements-inputs-TextAreaInput.html), [TextBoxInput](https://developers.arcgis.com/javascript/latest/api-reference/esri-form-elements-inputs-TextBoxInput.html), and [BarcodeScannerInput](https://developers.arcgis.com/javascript/latest/api-reference/esri-form-elements-inputs-BarcodeScannerInput.html) classes.
 *
 * @since 4.16
 */
export default abstract class TextInput extends Input {
  /** When set, defines the text input's maximum length. */
  accessor maxLength: number | null | undefined;
  /**
   * When set, defines the text input's minimum length.
   *
   * @default 0
   */
  accessor minLength: number | null | undefined;
}