@etsoo/react
Version:
TypeScript ReactJs UI Independent Framework
36 lines (32 loc) • 808 B
text/typescript
import {
CustomFieldData,
CustomFieldProps,
CustomFieldRef,
ICustomField
} from "@etsoo/appscript";
/**
* React custom field interface
* React自定义字段接口
*/
export interface ICustomFieldReact<
V,
D extends CustomFieldData = CustomFieldData
> extends ICustomField<V, D, CustomFieldReactProps<V, D>, React.JSX.Element> {}
/**
* React custom field props
* React自定义字段属性
*/
export type CustomFieldReactProps<
V,
D extends CustomFieldData = CustomFieldData
> = CustomFieldProps<D, V> & {
mref: React.Ref<CustomFieldRef<V>>;
};
/**
* React custom field renderer collection
* React自定义字段渲染结果集合
*/
export type CustomFieldReactCollection<D extends CustomFieldData> = Record<
string,
[React.RefObject<CustomFieldRef<unknown> | null>, D]
>;