import { ComponentChildren, JSX } from 'preact';
import { Size } from "../utils/UNSAFE_size";
type TextFieldProps = {
    /**
     * Defines how the label is going to be positioned. For a TextField only the start and top values are allowed.
     */
    labelEdge?: 'start' | 'top';
    /**
     * Specifies if the parent component is a TextField or TextArea
     */
    parentComponentVariant?: 'textField' | 'textArea';
};
type FormComponentWrapperProps = {
    /**
     * The start, top and inside values are supported for a wrapped component.
     */
    labelEdge?: 'start' | 'top' | 'inside';
    /**
     * Specifies if the parent component is a Form Component Wrapper
     */
    parentComponentVariant: 'formComponentWrapper';
    /**
     * Specifies if there is assistive text or links at the top of the component below the label
     */
    hasTopUserAssistance?: boolean;
};
type Props = (TextFieldProps | FormComponentWrapperProps) & {
    /**
     * Label content of the layout
     */
    label?: ComponentChildren;
    /**
     * Defines the label width for labelEdge 'start' ('top' is always 100%)
     */
    labelStartWidth?: Size;
    /**
     * Value content of the layout
     */
    children: ComponentChildren;
};
/**
 * A layout component for rendering a label and value pair, used in form components
 * such as TextField, TextArea, and FormComponentWrapper.
 */
export declare const LabelValueLayout: ({ label, labelEdge, children, labelStartWidth, parentComponentVariant, ...rest }: Props) => JSX.Element;
export {};
