import React, { ComponentType } from 'react';
import Ajv from 'ajv';
import type { UISchemaElement } from '@jsonforms/core';
import { JsonFormsCellRendererRegistryEntry, JsonFormsRendererRegistryEntry, JsonSchema, OwnPropsOfRenderer } from '@jsonforms/core';
export declare const renderLayoutElements: (elements: UISchemaElement[], schema: JsonSchema, path: string, enabled: boolean, direction: 'row' | 'column', renderers?: JsonFormsRendererRegistryEntry[], cells?: JsonFormsCellRendererRegistryEntry[]) => JSX.Element[];
export interface LayoutRendererProps extends OwnPropsOfRenderer {
    elements: UISchemaElement[];
    direction: 'row' | 'column';
}
export declare const LayoutRenderer: ({ elements, schema, path, enabled, direction, renderers, cells, }: LayoutRendererProps) => JSX.Element;
export interface AjvProps {
    ajv: Ajv;
}
export declare const withAjvProps: <P extends {}>(Component: React.ComponentType<AjvProps & P>) => (props: P) => JSX.Element;
