tdesign-vue
Version:
86 lines (85 loc) • 3.65 kB
TypeScript
import Vue from 'vue';
import { NormalizedScopedSlot } from 'vue/types/vnode';
import { Data, FormRule, TdFormItemProps, TdFormProps, ValueType, ValidateTriggerType, AllValidateResult, FormErrorMessage, FormItemValidateMessage } from './type';
import { AnalysisValidateResult } from './const';
import Form from './form';
import { ClassName, TNodeReturnValue, Styles } from '../common';
import { FormConfig } from '../config-provider/config-receiver';
export declare type FormInstance = InstanceType<typeof Form>;
export declare type FormItemValidateResult<T extends Data = Data> = {
[key in keyof T]: boolean | AllValidateResult[];
};
export declare const enum VALIDATE_STATUS {
TO_BE_VALIDATED = "not",
SUCCESS = "success",
FAIL = "fail"
}
export interface FormItemConstructor extends Vue {
form: FormInstance;
}
export declare function getFormItemClassName(componentName: string, name?: string): string;
declare const _default: import("vue/types/vue").ExtendedVue<{
useGlobalIcon(tdIcon: Record<string, any>): import("tdesign-icons-vue").GlobalIconConfig;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & Vue & {
t<T>(pattern: T, placement?: number | import("../config-provider/config-receiver").Placement): string;
} & {
global: FormConfig;
classPrefix: string;
componentName: string;
commonSizeClassName: Record<string, string>;
commonStatusClassName: Record<string, string>;
} & FormItemConstructor, {
errorList: any[];
successList: any[];
verifyStatus: VALIDATE_STATUS;
resetValidating: boolean;
needResetField: boolean;
initialValue: any;
freeShowErrorMessage: any;
}, {
addWatch(): void;
setChildrenDisabled(disabled: boolean, children: Vue[]): void;
setValidateMessage(validateMessage: FormItemValidateMessage[]): void;
validate<T_1>(trigger: ValidateTriggerType, showErrorMessage?: boolean, source?: 'submit-function' | 'submit-event'): Promise<FormItemValidateResult<T_1>>;
validateOnly<T_2>(trigger: ValidateTriggerType): Promise<FormItemValidateResult<T_2>>;
analysisValidateResult(trigger: ValidateTriggerType): Promise<AnalysisValidateResult>;
getLabelContent(): TNodeReturnValue;
getLabel(): TNodeReturnValue;
getDefaultIcon(): TNodeReturnValue;
getIcon(statusIcon: TdFormProps['statusIcon'] | TdFormItemProps['statusIcon'], slotStatusIcon: NormalizedScopedSlot, props?: TdFormItemProps): TNodeReturnValue;
getSuffixIcon(): TNodeReturnValue;
getEmptyValue(): ValueType;
resetField(resetType?: 'empty' | 'initial'): void;
resetHandler(): void;
}, {
needErrorMessage: Boolean;
classes: ClassName;
extraNode: JSX.Element;
labelClasses: ClassName;
errorClasses: string;
disabled: boolean;
contentClasses: ClassName;
contentStyle: Styles;
value: any;
hasColon: boolean;
needRequiredMark: boolean;
requiredMarkPosition: string;
innerRules: FormRule[];
errorMessages: FormErrorMessage;
statusClass: string;
}, {
for: string;
help: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
label: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
labelAlign: "left" | "top" | "right";
labelWidth: string | number;
name: string;
requiredMark: any;
rules: FormRule[];
showErrorMessage: any;
status: string;
statusIcon: any;
successBorder: boolean;
tips: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
}>;
export default _default;