import { PropertyValueMap } from "lit"; import { FRoot } from "@nonfx/flow-core"; import { FFormInputElements, FormBuilderArrayField, FormBuilderValues } from "../../types"; import { Ref } from "lit/directives/ref.js"; import { SimpleSubject } from "@nonfx/flow-core-config"; import { FIconButton } from "@nonfx/flow-core"; export type ArrayValueType = (string | string[] | number | number[] | unknown | unknown[] | undefined)[]; export declare class FFormArray extends FRoot { /** * css loaded from scss file */ static styles: import("lit").CSSResult[]; /** * @attribute comments baout title */ config: FormBuilderArrayField; /** * @attribute value */ value: ArrayValueType; state?: "primary" | "default" | "success" | "warning" | "danger"; /** * @attribute Gap is used to define the gap between the elements */ gap?: "large" | "medium" | "small" | "x-small"; actions?: NodeListOf; fieldRefs: Ref[]; showWhenSubject: SimpleSubject; get isRequired(): boolean; render(): import("lit-html").TemplateResult<1>; getFieldValue(index: number): unknown; buildFields(valueCount: number): import("lit-html").TemplateResult<1>; validate(silent?: boolean): Promise<{ result: boolean; message: string | null; name: string; label?: import("../../types").FormBuilderLabel | string; rule: import("../../types").FormBuilderGenericValidationRule["name"]; }[]>; applyLabelOffSet(element: HTMLElement): void; /** * updated hook of lit element * @param _changedProperties */ protected updated(_changedProperties: PropertyValueMap | Map): Promise; addField(): void; removeField(idx: number): void; /** * dispatch showWhen event so that root will publish new form values */ dispatchShowWhenEvent(): void; dispatchInputEvent(): void; /** * dispatch showWhen event so that root will publish new form values */ dispatchShowWhenExeEvent(): void; }