import type Accessor from "../../core/Accessor.js";

/** @since 5.0 */
export interface VisibleElementsProperties extends Partial<Pick<VisibleElements, "errorsForNonVisibleFields" | "readOnlyNotice">> {}

/**
 * An object containing properties that control the visibility of certain elements within the [BatchAttributeForm](https://developers.arcgis.com/javascript/latest/references/core/widgets/BatchAttributeForm/) widget.
 *
 * @since 5.0
 */
export default class VisibleElements extends Accessor {
  constructor(properties?: VisibleElementsProperties);
  /**
   * Default value is `true`. Indicates whether to display validation errors for fields that are not visible in the form.
   *
   * @default true
   * @since 5.0
   */
  accessor errorsForNonVisibleFields: boolean;
  /**
   * Default value is `true`. Indicates whether to display the read-only notice for the form.
   *
   * @default true
   * @since 5.1
   */
  accessor readOnlyNotice: boolean;
}