import type { EditFieldLayout } from '../../hooks/useDocumentLayout';
import type { RelationsFieldProps } from '../../pages/EditView/components/FormInputs/Relations/Relations';
import type { DistributiveOmit } from 'react-redux';
declare const CustomRelationInput: (props: RelationsFieldProps) => import("react/jsx-runtime").JSX.Element;
type VersionInputRendererProps = DistributiveOmit<EditFieldLayout, 'size'> & {
    /**
     * In the context of content history, deleted fields need to ignore RBAC
     * @default false
     */
    shouldIgnoreRBAC?: boolean;
};
/**
 * Resolve the layout, configuration metadata and schema attributes needed to
 * render a component field on the history page. Returns `null` when any of
 * those are missing — happens when the component schema referenced by the
 * version was deleted via the Content-Type Builder, in which case the caller
 * should render a fallback instead of crashing on the destructuring.
 */
declare const resolveComponentRenderResources: (componentUID: string, componentsLayout: {
    [uid: string]: {
        layout: unknown;
    } | undefined;
}, configurationComponents: {
    [uid: string]: {
        metadatas: unknown;
    } | undefined;
}, components: {
    [uid: string]: {
        attributes: unknown;
    } | undefined;
}) => {
    layout: unknown;
    metadatas: unknown;
    schemaAttributes: unknown;
} | null;
/**
 * @internal
 *
 * @description An abstraction around the regular form input renderer designed specifically
 * to be used on the History page in the content-manager. It understands how to render specific
 * inputs within the context of a history version (i.e. relations, media, ignored RBAC, etc...)
 */
declare const VersionInputRenderer: ({ visible, hint: providedHint, shouldIgnoreRBAC, labelAction, ...props }: VersionInputRendererProps) => import("react/jsx-runtime").JSX.Element | null;
export type { VersionInputRendererProps };
export { VersionInputRenderer, CustomRelationInput, resolveComponentRenderResources };
