import React, { ReactNode } from 'react';
import type { FormInstance, FormItemProps } from 'antd';
import type { ProFormProps } from '../wau-form';
import { BaseQueryFilterProps } from '../wau-query-filter';
import type { ProSchemaComponentTypes } from '../utils';
import type { IntlType } from '../wau-provider';
import type { ProColumns } from '.';
export type SearchConfig = BaseQueryFilterProps & {
    filterType?: 'query' | 'light';
};
export type TableFormItem<T, U = any> = {
    onSubmit?: (value: T, firstLoad: boolean) => void;
    onReset?: (value: T) => void;
    form?: Omit<ProFormProps, 'form'>;
    type?: ProSchemaComponentTypes;
    dateFormatter?: 'string' | 'number' | false;
    search?: false | SearchConfig;
    columns: ProColumns<U, any>[];
    formRef: React.MutableRefObject<FormInstance | undefined>;
    submitButtonLoading?: boolean;
    manualRequest?: boolean;
    bordered?: boolean;
} & Omit<FormItemProps, 'children' | 'onReset'>;
/**
 * 把配置转化为输入控件
 *
 * @param props
 * @param ref
 */
export declare const formInputRender: React.FC<{
    item: ProColumns<any>;
    value?: any;
    form?: FormInstance<any>;
    type: ProSchemaComponentTypes;
    intl: IntlType;
    onChange?: (value: any) => void;
    onSelect?: (value: any) => void;
    [key: string]: any;
}>;
export declare const proFormItemRender: (props: {
    item: ProColumns<any>;
    isForm: boolean;
    type: ProSchemaComponentTypes;
    intl: IntlType;
    formInstance?: FormInstance;
}) => null | ReactNode;
declare const _default: <T, U = any>({ onSubmit, formRef, dateFormatter, type, columns, manualRequest, onReset, submitButtonLoading, search: searchConfig, form: formConfig, bordered, }: TableFormItem<T, U>) => import("react/jsx-runtime").JSX.Element;
export default _default;
