import Formsy from 'formsy-react';
import { FormsyProps } from 'formsy-react/dist/Formsy';
import { InjectedProps } from 'formsy-react/dist/withFormsy';
import hoistNonReactStatics from 'hoist-non-react-statics';
import React, { Component } from 'react';
import { StrictFormProps } from 'semantic-ui-react';
import { IFormsyDropdownProps } from './FormsyDropdown';
import { IFormsyInputProps } from './FormsyInput';
import { IFormsyRadioGroupProps } from './FormsyRadioGroup';
declare type IFormProps = Partial<FormsyProps> & 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<Pick<import("./FormsyCheckbox").IFormsyCheckboxProps & import("formsy-react/dist/withFormsy").WrapperProps<string | number | boolean>, "as" | "className" | "error" | "width" | "inline" | "disabled" | "value" | "name" | "onChange" | "slider" | "toggle" | "type" | "checked" | "defaultChecked" | "defaultIndeterminate" | "fitted" | "id" | "indeterminate" | "label" | "onClick" | "onMouseDown" | "onMouseUp" | "radio" | "readOnly" | "tabIndex" | "innerRef" | "required" | "validationError" | "validationErrors" | "validations" | "inputClassName" | "passRequiredToField" | "inputAs" | "errorLabel">>;
    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<FormsyProps> & Pick<StrictFormProps, "as" | "action" | "children" | "className" | "error" | "inverted" | "loading" | "reply" | "size" | "success" | "unstackable" | "warning" | "widths"> & React.RefAttributes<Formsy>> & hoistNonReactStatics.NonReactStatics<typeof Form, {}>;
export default _default;
