@modular-forms/qwik
Version:
The modular and type-safe form library for Qwik
23 lines (22 loc) • 1.56 kB
TypeScript
import { type PublicProps, type QRL, type JSXOutput } from '@builder.io/qwik';
import type { FieldArrayPath, FieldArrayStore, FieldPath, FieldPathValue, FieldStore, FieldValues, FormStore, Maybe, MaybeArray, ResponseData, TransformField, ValidateField, ValidateFieldArray, ValidationMode } from '../types';
/**
* Value type of the lifecycle properties.
*/
type LifecycleProps<TFieldValues extends FieldValues, TResponseData extends ResponseData, TFieldName extends FieldPath<TFieldValues>, TFieldArrayName extends FieldArrayPath<TFieldValues>> = {
key: string | number;
of: FormStore<TFieldValues, TResponseData>;
store: FieldStore<TFieldValues, TFieldName> | FieldArrayStore<TFieldValues, TFieldArrayName>;
validate?: Maybe<MaybeArray<QRL<ValidateField<FieldPathValue<TFieldValues, TFieldName>>>> | MaybeArray<QRL<ValidateFieldArray<number[]>>>>;
validateOn?: Maybe<ValidationMode>;
revalidateOn?: Maybe<ValidationMode>;
transform?: Maybe<MaybeArray<QRL<TransformField<FieldPathValue<TFieldValues, TFieldName>>>>>;
keepActive?: Maybe<boolean>;
keepState?: Maybe<boolean>;
};
/**
* Component that handles the lifecycle dependent state of a field or field
* array.
*/
export declare function Lifecycle<TFieldValues extends FieldValues, TResponseData extends ResponseData, TFieldName extends FieldPath<TFieldValues>, TFieldArrayName extends FieldArrayPath<TFieldValues>>(props: PublicProps<LifecycleProps<TFieldValues, TResponseData, TFieldName, TFieldArrayName>>, key: string | null, flags: number): JSXOutput;
export {};