import { PropertyValueMap, TemplateResult } from "lit"; import { FRoot } from "@cldcvr/flow-core"; import { Ref } from "lit/directives/ref.js"; import { FFormInputElements, FormBuilderObjectField, FormBuilderValues } from "../../types"; import { Subject } from "rxjs"; import { FFormGroup } from "@cldcvr/flow-core"; export type ObjectValueType = Record; export declare class FFormObject extends FRoot { /** * css loaded from scss file */ static styles: import("lit").CSSResult[]; /** * @attribute comments baout title */ config: FormBuilderObjectField; /** * @attribute value */ value: ObjectValueType; state?: "primary" | "default" | "success" | "warning" | "danger"; /** * @attribute Gap is used to define the gap between the elements */ gap?: "large" | "medium" | "small" | "x-small"; formGroupElement?: FFormGroup; fieldRefs: Record>; showWhenSubject: Subject; render(): TemplateResult<1>; getFieldValue(fieldname: string): unknown; getLabelOffSet(): number; buildFields(): TemplateResult<1>; validate(silent?: boolean): Promise<{ result: boolean; message: string | null; name: string; label?: string | import("../../types").FormBuilderLabel | undefined; rule: "min" | "max" | "regex" | "email" | "custom" | "required" | "between" | "max-value" | "min-value"; }[]>; /** * updated hook of lit element * @param _changedProperties */ protected updated(_changedProperties: PropertyValueMap | Map): Promise; dispatchInputEvent(): void; /** * dispatch showWhen event so that root will publish new form values */ dispatchShowWhenEvent(): void; /** * dispatch showWhen event so that root will publish new form values */ dispatchShowWhenExeEvent(): void; }