import * as React from "react";
import type { DefinitionPropertyField } from '@formitiva/core';
/**
* ColumnFieldLayout - Vertical layout wrapper for form fields
*
* This component provides a column-based layout pattern:
* - Label on top (left-aligned or center-aligned based on labelLayout)
* - Value/input area below
* - Optional tooltip support
* - Error display area
*
* Usage:
*
*
*
*/
export declare const ColumnFieldLayout: React.MemoExoticComponent<({ field, error, children, showLabel, }: {
field: DefinitionPropertyField;
error?: string | null;
children: React.ReactNode;
showLabel?: boolean;
}) => import("react/jsx-runtime").JSX.Element>;
/**
* RowFieldLayout - Horizontal layout wrapper for form fields
*
* This component provides the traditional two-column layout pattern:
* - Label on the left using CSS_CLASSES.label
* - Value/input area on the right
* - Optional tooltip support
* - Error display area
*
* Usage:
*
*
*
*/
export declare const RowFieldLayout: React.MemoExoticComponent<({ field, error, children, rightAlign, }: {
field: DefinitionPropertyField;
error?: string | null;
children: React.ReactNode;
rightAlign?: boolean;
}) => import("react/jsx-runtime").JSX.Element>;
/**
* StandardFieldLayout - Smart layout wrapper that delegates to appropriate layout component
*
* This component automatically chooses between row and column layouts based on field.labelLayout:
* - Uses ColumnFieldLayout when field.labelLayout === 'column'
* - Uses RowFieldLayout for default/row layout
* - Maintains consistent API for all field components
*
* Usage:
*
*
*
*/
export declare const StandardFieldLayout: React.MemoExoticComponent<({ field, error, children, rightAlign, }: {
field: DefinitionPropertyField;
error?: string | null;
children: React.ReactNode;
rightAlign?: boolean;
}) => import("react/jsx-runtime").JSX.Element>;
export declare const ErrorDiv: React.MemoExoticComponent<({ children, id }: {
children: React.ReactNode;
id?: string;
}) => import("react/jsx-runtime").JSX.Element>;
/**
* InstanceName - display and edit an instance name in a compact grid row
* on top of fields list
*
* Props:
* - `name`: current instance name
* - `onChange`: callback invoked with new name when edited
*/
export declare const InstanceName: React.MemoExoticComponent<({ name, onChange }: {
name: string;
onChange: (n: string) => void;
}) => import("react/jsx-runtime").JSX.Element>;
//# sourceMappingURL=LayoutComponents.d.ts.map