import { DemoData } from "../../global/demo";
import { InputFieldViewProps } from "./sqm-input-field-view";
/**
 * @uiName Form Input Field
 * @validParents ["sqm-portal-register","sqm-portal-registration-form", "sqm-portal-google-registration-form"]
 * @exampleGroup Microsite Components
 * @example Form Input Field - <sqm-input-field input-label="Field Label" field-type="text" error-message="Cannot be empty"></sqm-input-field>
 */
export declare class InputField {
  ignored: boolean;
  /**
   * This name is used as the key for this form field on submission. The name must be unique within this specific form.
   *
   * @uiName Input name attribute
   * @required
   */
  fieldName: string;
  /**
   * @uiName Input label
   */
  fieldLabel: string;
  /**
   * @uiName Input type
   * @uiType string
   * @uiEnum ["text", "date", "tel"]
   * @uiEnumNames ["Text", "Date", "Phone Number"]
   */
  fieldType: "text" | "date" | "tel";
  /**
   * @uiName Required error message
   */
  errorMessage: string;
  /**
   * @uiName Optional
   * @default
   */
  fieldOptional?: boolean;
  /**
   * @undocumented
   * @uiType object
   */
  demoData?: DemoData<InputFieldViewProps>;
  constructor();
  disconnectedCallback(): void;
  render(): any;
}
