import { SugaredRelativeSingleField } from '@contember/binding';
import { FieldContainerProps } from '@contember/ui';
import { CSSProperties, ReactNode } from 'react';
import type { SimpleRelativeSingleFieldMetadata } from './SimpleRelativeSingleField';
export type SimpleRelativeSingleFieldProxyFieldContainerProps = Omit<FieldContainerProps, 'children' | 'className' | 'style'>;
export type SimpleRelativeSingleFieldProxyExtraProps = {
    className?: string | undefined;
    containerClassName?: string | undefined;
    containerStyle?: CSSProperties | undefined;
    style?: CSSProperties | undefined;
    suppressErrors?: boolean | undefined;
};
export type RenderedSugaredRelativeSingleFieldKeys = 'field';
export type RenderedSimpleRelativeSingleFieldProxyExtraPropsKeys = 'className' | 'style';
export type RenderedSimpleRelativeSingleFieldProxyFieldContainerPropsKeys = 'required' | 'size' | 'errors';
export type SimpleRelativeSingleFieldProxyExcludeHandledProps<P extends SimpleRelativeSingleFieldProxyProps> = Omit<P, Exclude<keyof SugaredRelativeSingleField, RenderedSugaredRelativeSingleFieldKeys> | Exclude<keyof SimpleRelativeSingleFieldProxyExtraProps, RenderedSimpleRelativeSingleFieldProxyExtraPropsKeys> | Exclude<keyof SimpleRelativeSingleFieldProxyFieldContainerProps, RenderedSimpleRelativeSingleFieldProxyFieldContainerPropsKeys>>;
export type SimpleRelativeSingleFieldProxyRendererProps = {
    render: (fieldMetadata: SimpleRelativeSingleFieldMetadata<any>, props: SimpleRelativeSingleFieldProxyExcludeHandledProps<any>) => ReactNode;
};
export type SimpleRelativeSingleFieldProxyProps = SimpleRelativeSingleFieldProxyFieldContainerProps & SugaredRelativeSingleField & SimpleRelativeSingleFieldProxyExtraProps;
/**
 * @internal
 */
export declare const SimpleRelativeSingleFieldProxy: React.MemoExoticComponent<({ render, defaultValue, isNonbearing, onBeforeUpdate, onInitialize, onUpdate, description, direction, gap, label, labelDescription, labelPosition, useLabelElement, width, className, style, errors, field: fieldName, required, size, containerClassName, containerStyle, suppressErrors, ...rest }: SimpleRelativeSingleFieldProxyProps & SimpleRelativeSingleFieldProxyRendererProps) => JSX.Element>;
//# sourceMappingURL=SimpleRelativeFieldProxy.d.ts.map