import { ReactNode } from 'react';
import { GlobalDOMAttributes, SpectrumLabelableProps } from '@react-types/shared';
import { StyleProps } from './style-utils';
import { FormProps as RACFormProps } from 'react-aria-components/Form';
interface FormStyleProps extends Omit<SpectrumLabelableProps, 'label' | 'contextualHelp'> {
    /**
     * Size of the Form elements.
     * @default 'M'
     */
    size?: 'S' | 'M' | 'L' | 'XL';
    /** Whether the Form elements are disabled. */
    isDisabled?: boolean;
    /** Whether the Form elements are rendered with their emphasized style. */
    isEmphasized?: boolean;
}
export interface FormProps extends FormStyleProps, Omit<RACFormProps, 'className' | 'style' | 'render' | 'children' | keyof GlobalDOMAttributes>, StyleProps {
    children: ReactNode;
}
export declare const FormContext: import("react").Context<Partial<FormStyleProps | null>>;
export declare function useFormProps<T extends FormStyleProps>(props: T): T;
/**
 * Forms allow users to enter data that can be submitted while providing alignment and styling for form fields.
 */
export declare const Form: import("react").ForwardRefExoticComponent<FormProps & import("react").RefAttributes<import("@react-types/shared").DOMRefValue<HTMLFormElement>>>;
export {};
