///
import { Static } from './index';
import type { Simplify } from 'type-fest';
import type { CommonPropsType } from '../../web/types';
/**
* 去掉某些属性
*/
export declare const omit: (obj: T, fields: K[]) => Omit;
/**
* 包含某些属性
*/
export declare const pick: (obj: T, fields: K[]) => Pick;
/**
* 批量更改分类
*/
export declare const pickWithXCategory: (obj: T, fields: K[], xCategory: string) => Pick;
export declare const X_CATEGORY: {
COMMON: string;
TITLE: string;
INPUT_BOX: string;
MP: string;
VERIFY: string;
PRIVATE: string;
SELECT: string;
};
export declare const FORM_ITEM_DATA: {
/** 通用 */
name: import("@sinclair/typebox").TString;
mode: import("@sinclair/typebox").TUnsafe;
_modeInTime: import("@sinclair/typebox").TUnsafe;
dateFormat: import("@sinclair/typebox").TUnsafe;
value: import("@sinclair/typebox").TString;
_valueInDate: import("@sinclair/typebox").TAny;
_valueInTime: import("@sinclair/typebox").TAny;
start: import("@sinclair/typebox").TAny;
end: import("@sinclair/typebox").TAny;
inputValue: import("@sinclair/typebox").TString;
placeholder: import("@sinclair/typebox").TString;
size: import("@sinclair/typebox").TUnsafe;
block: import("@sinclair/typebox").TBoolean;
/** 标题 */
label: import("@sinclair/typebox").TString;
labelVisible: import("@sinclair/typebox").TBoolean;
labelAlign: import("@sinclair/typebox").TUnsafe;
labelWrap: import("@sinclair/typebox").TBoolean;
layout: import("@sinclair/typebox").TUnsafe;
labelWidth: import("@sinclair/typebox").TString;
labelTips: import("@sinclair/typebox").TString;
/** 输入 */
clearable: import("@sinclair/typebox").TBoolean;
before: import("@sinclair/typebox").TString;
after: import("@sinclair/typebox").TString;
isUnionValue: import("@sinclair/typebox").TBoolean;
prefixType: import("@sinclair/typebox").TUnsafe;
prefixIcon: import("@sinclair/typebox").TUnsafe;
prefixSrc: import("@sinclair/typebox").TString;
suffixType: import("@sinclair/typebox").TUnsafe;
suffixIcon: import("@sinclair/typebox").TUnsafe;
suffixSrc: import("@sinclair/typebox").TString;
extra: import("@sinclair/typebox").TString;
password: import("@sinclair/typebox").TBoolean;
type: import("@sinclair/typebox").TUnsafe;
counterVisible: import("@sinclair/typebox").TBoolean;
focus: import("@sinclair/typebox").TBoolean;
borderedH5: import("@sinclair/typebox").TBoolean;
borderedPc: import("@sinclair/typebox").TBoolean;
/** 小程序能力 */
isNickNameType: import("@sinclair/typebox").TBoolean;
/** 状态/校验 */
maxLength: import("@sinclair/typebox").TNumber;
rules: import("@sinclair/typebox").TArray;
}>>;
validateStatus: import("@sinclair/typebox").TUnsafe;
status: import("@sinclair/typebox").TUnsafe;
required: import("@sinclair/typebox").TBoolean;
requiredFlag: import("@sinclair/typebox").TBoolean;
requiredMsg: import("@sinclair/typebox").TString;
/** 提供给widget挂载的属性 */
visible: import("@sinclair/typebox").TBoolean;
disabled: import("@sinclair/typebox").TBoolean;
readOnly: import("@sinclair/typebox").TBoolean;
selectedLabel: import("@sinclair/typebox").TString;
};
export declare const FORM_ITEM_DATA_TITLE: Pick<{
/** 通用 */
name: import("@sinclair/typebox").TString;
mode: import("@sinclair/typebox").TUnsafe;
_modeInTime: import("@sinclair/typebox").TUnsafe;
dateFormat: import("@sinclair/typebox").TUnsafe;
value: import("@sinclair/typebox").TString;
_valueInDate: import("@sinclair/typebox").TAny;
_valueInTime: import("@sinclair/typebox").TAny;
start: import("@sinclair/typebox").TAny;
end: import("@sinclair/typebox").TAny;
inputValue: import("@sinclair/typebox").TString;
placeholder: import("@sinclair/typebox").TString;
size: import("@sinclair/typebox").TUnsafe;
block: import("@sinclair/typebox").TBoolean;
/** 标题 */
label: import("@sinclair/typebox").TString;
labelVisible: import("@sinclair/typebox").TBoolean;
labelAlign: import("@sinclair/typebox").TUnsafe;
labelWrap: import("@sinclair/typebox").TBoolean;
layout: import("@sinclair/typebox").TUnsafe;
labelWidth: import("@sinclair/typebox").TString;
labelTips: import("@sinclair/typebox").TString;
/** 输入 */
clearable: import("@sinclair/typebox").TBoolean;
before: import("@sinclair/typebox").TString;
after: import("@sinclair/typebox").TString;
isUnionValue: import("@sinclair/typebox").TBoolean;
prefixType: import("@sinclair/typebox").TUnsafe;
prefixIcon: import("@sinclair/typebox").TUnsafe;
prefixSrc: import("@sinclair/typebox").TString;
suffixType: import("@sinclair/typebox").TUnsafe;
suffixIcon: import("@sinclair/typebox").TUnsafe;
suffixSrc: import("@sinclair/typebox").TString;
extra: import("@sinclair/typebox").TString;
password: import("@sinclair/typebox").TBoolean;
type: import("@sinclair/typebox").TUnsafe;
counterVisible: import("@sinclair/typebox").TBoolean;
focus: import("@sinclair/typebox").TBoolean;
borderedH5: import("@sinclair/typebox").TBoolean;
borderedPc: import("@sinclair/typebox").TBoolean;
/** 小程序能力 */
isNickNameType: import("@sinclair/typebox").TBoolean;
/** 状态/校验 */
maxLength: import("@sinclair/typebox").TNumber;
rules: import("@sinclair/typebox").TArray;
}>>;
validateStatus: import("@sinclair/typebox").TUnsafe;
status: import("@sinclair/typebox").TUnsafe;
required: import("@sinclair/typebox").TBoolean;
requiredFlag: import("@sinclair/typebox").TBoolean;
requiredMsg: import("@sinclair/typebox").TString;
/** 提供给widget挂载的属性 */
visible: import("@sinclair/typebox").TBoolean;
disabled: import("@sinclair/typebox").TBoolean;
readOnly: import("@sinclair/typebox").TBoolean;
selectedLabel: import("@sinclair/typebox").TString;
}, "label" | "layout" | "labelVisible" | "labelWidth" | "labelAlign" | "labelWrap" | "labelTips">;
export declare const DEFAULT_DETAIL: import("@sinclair/typebox").TObject<{
value: import("@sinclair/typebox").TString;
}>;
export declare const DEFAULT_DETAIL_NUMBER: import("@sinclair/typebox").TObject<{
value: import("@sinclair/typebox").TNumber;
}>;
export declare const FORM_ITEM_EVENTS: {
readonly change: {
readonly name: "change";
readonly title: "值改变";
readonly detail: import("@sinclair/typebox").TObject<{
value: import("@sinclair/typebox").TString;
}>;
};
readonly focus: {
readonly name: "focus";
readonly title: "聚焦";
readonly detail: import("@sinclair/typebox").TObject<{
value: import("@sinclair/typebox").TString;
}>;
};
readonly blur: {
readonly name: "blur";
readonly title: "失焦";
readonly detail: import("@sinclair/typebox").TObject<{
value: import("@sinclair/typebox").TString;
}>;
};
readonly confirm: {
readonly name: "confirm";
readonly title: "确认";
readonly detail: import("@sinclair/typebox").TObject<{
value: import("@sinclair/typebox").TString;
}>;
};
readonly clear: {
readonly name: "clear";
readonly title: "清除内容";
readonly detail: import("@sinclair/typebox").TObject<{
originValue: import("@sinclair/typebox").TString;
}>;
};
readonly cancel: {
readonly name: "cancel";
readonly title: "取消";
};
};
export declare const FORM_ITEM_METHODS: {
setValue: {
name: string;
label: string;
params: {
properties: {
value: {
title: string;
type: string;
};
};
};
description: string;
};
setVisible: {
name: string;
label: string;
params: {
properties: {
value: {
title: string;
type: string;
};
};
};
description: string;
};
setDisabled: {
name: string;
label: string;
params: {
properties: {
value: {
title: string;
type: string;
};
};
};
description: string;
};
setReadOnly: {
name: string;
label: string;
params: {
properties: {
value: {
title: string;
type: string;
};
};
};
description: string;
};
clearValue: {
name: string;
label: string;
description: string;
};
resetValue: {
name: string;
label: string;
description: string;
};
clearValidate: {
name: string;
label: string;
description: string;
};
handleValidate: {
name: string;
label: string;
description: string;
};
};
export declare const getFormItemClasses: (classRoot: string) => {
name: string;
selector: string;
description: string;
}[];
export declare const FORM_ITEM_META: {
group: {
通用: {
'x-index': number;
expand: boolean;
};
标题: {
'x-index': number;
expand: boolean;
};
输入框: {
'x-index': number;
expand: boolean;
};
选择框: {
'x-index': number;
expand: boolean;
};
选项: {
'x-index': number;
expand: boolean;
};
开关按钮: {
'x-index': number;
expand: boolean;
};
小程序能力: {
'x-index': number;
expand: boolean;
};
'\u72B6\u6001/\u6821\u9A8C': {
'x-index': number;
expand: boolean;
};
};
shortcut: {
props: string[];
};
visible: any;
category: string;
};
export declare const ItemData: import("@sinclair/typebox").TObject<{
name: import("@sinclair/typebox").TOptional;
mode: import("@sinclair/typebox").TOptional>;
_modeInTime: import("@sinclair/typebox").TOptional>;
dateFormat: import("@sinclair/typebox").TOptional>;
value: import("@sinclair/typebox").TOptional;
_valueInDate: import("@sinclair/typebox").TOptional;
_valueInTime: import("@sinclair/typebox").TOptional;
start: import("@sinclair/typebox").TOptional;
end: import("@sinclair/typebox").TOptional;
inputValue: import("@sinclair/typebox").TOptional;
placeholder: import("@sinclair/typebox").TOptional;
size: import("@sinclair/typebox").TOptional>;
block: import("@sinclair/typebox").TOptional;
label: import("@sinclair/typebox").TOptional;
labelVisible: import("@sinclair/typebox").TOptional;
labelAlign: import("@sinclair/typebox").TOptional>;
labelWrap: import("@sinclair/typebox").TOptional;
layout: import("@sinclair/typebox").TOptional>;
labelWidth: import("@sinclair/typebox").TOptional;
labelTips: import("@sinclair/typebox").TOptional;
clearable: import("@sinclair/typebox").TOptional;
before: import("@sinclair/typebox").TOptional;
after: import("@sinclair/typebox").TOptional;
isUnionValue: import("@sinclair/typebox").TOptional;
prefixType: import("@sinclair/typebox").TOptional>;
prefixIcon: import("@sinclair/typebox").TOptional>;
prefixSrc: import("@sinclair/typebox").TOptional;
suffixType: import("@sinclair/typebox").TOptional>;
suffixIcon: import("@sinclair/typebox").TOptional>;
suffixSrc: import("@sinclair/typebox").TOptional;
extra: import("@sinclair/typebox").TOptional;
password: import("@sinclair/typebox").TOptional;
type: import("@sinclair/typebox").TOptional>;
counterVisible: import("@sinclair/typebox").TOptional;
focus: import("@sinclair/typebox").TOptional;
borderedH5: import("@sinclair/typebox").TOptional;
borderedPc: import("@sinclair/typebox").TOptional;
isNickNameType: import("@sinclair/typebox").TOptional;
maxLength: import("@sinclair/typebox").TOptional;
rules: import("@sinclair/typebox").TOptional;
}>>>;
validateStatus: import("@sinclair/typebox").TOptional>;
status: import("@sinclair/typebox").TOptional>;
required: import("@sinclair/typebox").TOptional;
requiredFlag: import("@sinclair/typebox").TOptional;
requiredMsg: import("@sinclair/typebox").TOptional;
visible: import("@sinclair/typebox").TOptional;
disabled: import("@sinclair/typebox").TOptional;
readOnly: import("@sinclair/typebox").TOptional;
selectedLabel: import("@sinclair/typebox").TOptional;
}>;
type ItemDataType = Simplify>;
export interface WdFormItemProps extends CommonPropsType, Pick {
/** 仅用于 jest 测试 */
testId?: string;
/** 校验提示 */
validateErrorMsg?: string;
/** 校验状态 */
validateState?: string;
/** 只读时的值 */
readValue?: any;
/** 样式根元素,比如 input,textarea */
classRoot?: string;
/** control 对齐方式,默认左对齐 */
controlAlign?: '' | 'left' | 'right';
/** 绑定标题的 for 属性,用于聚焦 */
inputId?: string;
}
export interface WdInputGroupProps extends Pick {
/** 子元素 */
children?: React.ReactNode | undefined;
/** 样式根元素,比如 input,textarea */
classRoot?: string;
}
export interface WdInputWrapProps extends Pick {
/** 子元素 */
children?: React.ReactNode | undefined;
/** 样式根元素,比如 input,textarea */
classRoot?: string;
/** 其余样式 */
wrapClassName?: string;
/** 是否有清空按钮 */
hasClearIcon?: boolean;
/** 清空事件 */
onClear?: () => void;
/** 其他属性 */
[key: string]: any;
}
export {};