maz-ui
Version:
A standalone components library for Vue.Js 3 & Nuxt.Js 3
73 lines (72 loc) • 4.88 kB
TypeScript
import { InjectionKey } from 'vue';
import { BaseFormPayload, CustomInstance, ExtractModelKey, FieldsStates, FieldState, FormContext, FormFieldOptions, FormSchema, StrictOptions } from './types';
export declare function getFieldState<Model extends BaseFormPayload = BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>, FieldType = Model[ModelKey]>({ name, schema, initialValue, fieldState, options, }: {
name: ModelKey;
schema?: FormSchema<Model>;
initialValue?: FieldType;
fieldState: FieldState<Model, ModelKey, FieldType>;
options?: Pick<StrictOptions<Model, ModelKey>, 'debouncedFields' | 'throttledFields' | 'mode'>;
}): FieldState<Model, ModelKey, FieldType>;
export declare function fieldHasValidation<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>>>(field: ModelKey, schema: FormSchema<Model>): boolean;
export declare function getFieldsStates<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>>({ schema, payload, options, }: {
schema: FormSchema<Model>;
payload: Partial<Model>;
options: StrictOptions<Model, ModelKey>;
}): FieldsStates<Model, ModelKey>;
export declare function updateFieldsStates<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>>({ fieldsStates, payload, schema, options, updateMode, }: {
fieldsStates: FieldsStates<Model, ModelKey>;
payload: Model;
schema: FormSchema<Model>;
options: StrictOptions<Model, ModelKey>;
updateMode?: boolean;
}): void;
export declare function updateFieldState<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>, FieldType = Model[ModelKey]>({ name, fieldState, payload, schema, options, updateMode, }: {
name: ModelKey;
fieldState: FieldState<Model, ModelKey, FieldType>;
payload: Model;
schema: FormSchema<Model>;
options: FormFieldOptions<Model, ModelKey, FieldType> & StrictOptions<Model, ModelKey>;
updateMode?: boolean;
}): {
blurred: boolean;
dirty: boolean;
error: boolean;
errors: import('./types').ValidationIssues;
valid: boolean;
validating: boolean;
validated: boolean;
validateFunction: ((args_0: {
name: ModelKey;
fieldState: FieldState<Model, ModelKey, Model[ModelKey]>;
schema: FormSchema<Model>;
payload: Model;
setError?: boolean;
setErrorIfInvalidAndNotEmpty?: boolean;
}) => Promise<void>) | undefined;
initialValue: Readonly<FieldType> | undefined;
mode: "blur" | "eager" | "lazy" | "aggressive" | "progressive" | undefined;
};
export declare function canExecuteValidation<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>, FieldType = Model[ModelKey]>({ eventName, fieldState, isSubmitted, }: {
eventName: 'blur' | 'input';
fieldState: FieldState<Model, ModelKey, FieldType>;
isSubmitted: boolean;
}): boolean;
export declare function handleFieldBlur<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>, FieldType = Model[ModelKey]>({ name, force, payload, fieldState, schema, isSubmitted, }: {
name: ModelKey;
payload: Model;
fieldState: FieldState<Model, ModelKey, FieldType>;
schema: FormSchema<Model>;
isSubmitted: boolean;
force?: boolean;
}): Promise<void> | undefined;
export declare function handleFieldInput<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>, FieldType = Model[ModelKey]>({ name, payload, fieldState, schema, isSubmitted, forceValidation, }: {
name: ModelKey;
payload: Model;
fieldState: FieldState<Model, ModelKey, FieldType>;
schema: FormSchema<Model>;
isSubmitted: boolean;
forceValidation?: boolean;
}): Promise<void> | undefined;
export declare function hasModeIncludes<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>>(modes: StrictOptions<Model, ModelKey>['mode'][], value?: StrictOptions<Model, ModelKey>['mode']): value is StrictOptions<Model, ModelKey>['mode'];
export declare function getInstance<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>>(composableName: string): CustomInstance<Model, ModelKey>;
export declare function getContext<Model extends BaseFormPayload, ModelKey extends ExtractModelKey<FormSchema<Model>> = ExtractModelKey<FormSchema<Model>>>(identifier: string | symbol | InjectionKey<FormContext<Model, ModelKey>>, composableName: string): FormContext<Model, ModelKey>;