import type { Ref } from "react";
import React from "react";
import type { InputNumberExperimentalAffixCompoundProps, InputNumberExperimentalDescriptionProps, InputNumberExperimentalErrorProps, InputNumberExperimentalFooterProps, InputNumberExperimentalGroupProps, InputNumberExperimentalInputProps, InputNumberExperimentalLabelProps, InputNumberExperimentalLoadingProps, InputNumberExperimentalProps, InputNumberExperimentalRef, InputNumberExperimentalStepButtonProps, InputNumberExperimentalStepperProps, InputNumberExperimentalWrapperProps } from "./types";
declare function InputNumberExperimentalWrapper({ ref, ...props }: InputNumberExperimentalWrapperProps & {
    readonly ref?: Ref<InputNumberExperimentalRef>;
}): React.JSX.Element;
declare namespace InputNumberExperimentalWrapper {
    var displayName: string;
}
declare function InputNumberExperimentalGroup({ children, className, style, }: InputNumberExperimentalGroupProps): React.JSX.Element;
declare namespace InputNumberExperimentalGroup {
    var displayName: string;
}
declare function InputNumberExperimentalFooter({ children, className, style, }: InputNumberExperimentalFooterProps): React.JSX.Element;
declare namespace InputNumberExperimentalFooter {
    var displayName: string;
}
declare function InputNumberExperimentalInput({ children, className, style, }: InputNumberExperimentalInputProps): React.JSX.Element;
declare namespace InputNumberExperimentalInput {
    var displayName: string;
}
declare function InputNumberExperimentalLabel({ children, className, style, }: InputNumberExperimentalLabelProps): React.JSX.Element | null;
declare namespace InputNumberExperimentalLabel {
    var displayName: string;
}
declare function InputNumberExperimentalDescription({ children, className, style, }: InputNumberExperimentalDescriptionProps): React.JSX.Element | null;
declare namespace InputNumberExperimentalDescription {
    var displayName: string;
}
declare function InputNumberExperimentalError({ children, className, style, }: InputNumberExperimentalErrorProps): React.JSX.Element | null;
declare namespace InputNumberExperimentalError {
    var displayName: string;
}
declare function InputNumberExperimentalLoading({ children, className, style, }: InputNumberExperimentalLoadingProps): React.JSX.Element;
declare namespace InputNumberExperimentalLoading {
    var displayName: string;
}
declare function InputNumberExperimentalStepper({ children, incrementLabel, decrementLabel, className, style, }: InputNumberExperimentalStepperProps): React.JSX.Element | null;
declare namespace InputNumberExperimentalStepper {
    var displayName: string;
}
declare function InputNumberExperimentalIncrement({ children, ariaLabel, className, style, }: InputNumberExperimentalStepButtonProps): React.JSX.Element;
declare namespace InputNumberExperimentalIncrement {
    var displayName: string;
}
declare function InputNumberExperimentalDecrement({ children, ariaLabel, className, style, }: InputNumberExperimentalStepButtonProps): React.JSX.Element;
declare namespace InputNumberExperimentalDecrement {
    var displayName: string;
}
declare function InputNumberExperimentalAffixCompound({ variation, label, icon, onClick, ariaLabel, children, className, style, }: InputNumberExperimentalAffixCompoundProps): React.JSX.Element | null;
declare namespace InputNumberExperimentalAffixCompound {
    var displayName: string;
}
/**
 * Sugar layer: composes the parts from props. This is the same composition a
 * consumer would write by hand with `<InputNumberExperimental.Wrapper>` and the
 * parts — to customize a single piece, copy this tree and swap that part.
 */
declare function InputNumberExperimental({ ref, ...props }: InputNumberExperimentalProps & {
    readonly ref?: Ref<InputNumberExperimentalRef>;
}): React.JSX.Element;
declare namespace InputNumberExperimental {
    var displayName: string;
    var Wrapper: typeof InputNumberExperimentalWrapper;
    var Group: typeof InputNumberExperimentalGroup;
    var Footer: typeof InputNumberExperimentalFooter;
    var Input: typeof InputNumberExperimentalInput;
    var Label: typeof InputNumberExperimentalLabel;
    var Description: typeof InputNumberExperimentalDescription;
    var Error: typeof InputNumberExperimentalError;
    var Loading: typeof InputNumberExperimentalLoading;
    var Stepper: typeof InputNumberExperimentalStepper;
    var Increment: typeof InputNumberExperimentalIncrement;
    var Decrement: typeof InputNumberExperimentalDecrement;
    var Affix: typeof InputNumberExperimentalAffixCompound;
}
export { InputNumberExperimental };
