UNPKG

shineout

Version:

Shein 前端组件库

56 lines (55 loc) 2.48 kB
import { FormItemRule } from '../Rule/Props'; import { FORCE_PASS, IGNORE_VALIDATE, ValidType, PublishType } from './types'; import { FormDatumOptions, FormValid } from './Props'; import { ObjectType } from '../@types/common'; export default class<V extends ObjectType> { rules: FormDatumOptions<V>['rules']; onChange: FormDatumOptions<V>['onChange']; removeUndefined: FormDatumOptions<V>['removeUndefined']; $defaultValues: V; $inputNames: { [name: string]: boolean; }; $values: Partial<V>; $validator: ObjectType<FormValid>; $events: ObjectType<((...args: any) => void)[]>; $errors: ObjectType; updateLock: boolean; deepSetOptions: { removeUndefined: boolean; forceSet: boolean; }; formUnmount: boolean; constructor(options?: FormDatumOptions<V>); handleChange(): void; reset(): void; setLock(lock: boolean): void; get(name: string | (string[])): any; set(value: ObjectType): void; set(name: string | string[], value: any, pub?: boolean): void; setArrayValue(names: string[], values: any[]): void; insert(name: string, index: number, value: any): void; splice(name: string, index: number): void; remove(name: string): void; publishValue(name: string, type: PublishType): void; getError(name: string, firstHand?: boolean): any; resetFormError(error?: ObjectType<string | Error>): void; removeFormError(name: string): void; setFormError(name: string, error?: Error): void; setError(name: string, error?: Error, pub?: boolean): void; insertError(name: string, index: number, error?: Error): void; spliceError(name: string, index: number): void; publishError(name: string): void; getRule(name: string): FormItemRule<any>; getValue(): any; setValue(v?: any, type?: typeof IGNORE_VALIDATE | typeof FORCE_PASS, forceSet?: boolean): void; bind(name: string, fn: (...args: any) => void, value: any, validate: FormValid): void; unbind(name: string | string[], _cb?: any, reserveAble?: boolean): void; dispatch(name: string, ...args: any): void; subscribe(name: string, fn: (...args: any) => void): void; unsubscribe(name: string, fn?: (...args: any) => void): void; validate(type?: ValidType): Promise<unknown>; validateFieldsByName(name: string, type?: ValidType): Promise<unknown>; validateFields(names: string[], type?: ValidType): Promise<unknown>; validateClear(): void; }