/**
 * Generic Control Dispatcher
 *
 * Routes to appropriate control based on type definition.
 */
import { Renderable } from '@tempots/dom';
import { type Controller } from '../../form';
import type { StructureContext } from '../structure-context';
import type { JSONStructureSchema } from '../structure-types';
import type { WidgetRegistry } from '../widgets/widget-registry';
/**
 * Props for the generic control
 */
export interface GenericControlProps<T = unknown> {
    controller: Controller<T>;
    ctx: StructureContext;
}
/**
 * Generic control dispatcher that routes to appropriate control based on type
 */
export declare function StructureGenericControl<T>({ ctx, controller, }: GenericControlProps<T>): Renderable;
/**
 * Main entry point for JSON Structure controls
 */
export declare function StructureControl<T>({ schema, controller, widgetRegistry, readOnly, locale, }: {
    schema: JSONStructureSchema;
    controller: Controller<T>;
    widgetRegistry?: WidgetRegistry;
    readOnly?: boolean;
    locale?: string;
}): Renderable;
