import type { InjectedProps } from 'formsy-react';
import Formsy from 'formsy-react';
import hoistNonReactStatics from 'hoist-non-react-statics';
import React, { Component, ComponentProps } from 'react';
import { StrictFormProps } from 'semantic-ui-react';
import { IFormsyDropdownProps } from './FormsyDropdown';
import { IFormsyInputProps } from './FormsyInput';
import { IFormsyRadioGroupProps } from './FormsyRadioGroup';
type IFormProps = Partial<ComponentProps<typeof Formsy>> & Omit<StrictFormProps, 'onSubmit'>;
declare class Form extends Component<IFormProps & {
    forwardedRef: any;
}> {
    static Button: React.FC<import("semantic-ui-react").FormButtonProps>;
    static Radio: React.FC<import("semantic-ui-react").FormRadioProps>;
    static Field: React.FC<import("semantic-ui-react").FormFieldProps>;
    static Group: React.FC<import("semantic-ui-react").FormGroupProps>;
    static Checkbox: React.ComponentType<Omit<import("./FormsyCheckbox").IFormsyCheckboxProps & import("formsy-react/dist/withFormsy").WrapperProps<string | number | boolean>, keyof InjectedProps<V>>>;
    static Input: (props: Omit<IFormsyInputProps, keyof InjectedProps<any>>) => React.JSX.Element;
    static TextArea: (props: Omit<IFormsyInputProps<React.TextareaHTMLAttributes<any>>, keyof InjectedProps<any>>) => React.JSX.Element;
    static Select: (props: Omit<IFormsyDropdownProps, keyof InjectedProps<any>>) => React.JSX.Element;
    static RadioGroup: (props: Omit<IFormsyRadioGroupProps, keyof InjectedProps<any>>) => React.JSX.Element;
    static Dropdown: (props: Omit<IFormsyDropdownProps, keyof InjectedProps<any>>) => React.JSX.Element;
    render(): React.JSX.Element;
}
declare const _default: React.ForwardRefExoticComponent<Partial<import("formsy-react/dist/Formsy").FormsyProps> & Omit<StrictFormProps, "onSubmit"> & React.RefAttributes<Formsy>> & hoistNonReactStatics.NonReactStatics<typeof Form, {}>;
export default _default;
