"""
Pydantic schema for FieldRenderer component.

AUTO-GENERATED FROM ui-manifest.json - DO NOT EDIT MANUALLY
Source: base/form/dynamic/field-renderer.tsx
Component Path: base/form/dynamic/field-renderer
"""

from typing import Any

from pydantic import Field

from lightwave.schema.pydantic.core.base import JSONFieldSchema

from ._types import T


class FormFieldRendererProps(JSONFieldSchema):
    """Props for FormFieldRenderer component."""

    field: Any = Field(description="Field configuration from backend/SST")
    control: T = Field(description="React Hook Form control")
    name: T | None = Field(default=None, description="Override field name (defaults to field.name)")
    class_name: str | None = Field(default=None, alias="className", description="Additional className")


class FieldComponentProps(JSONFieldSchema):
    """Props for FieldComponent component."""

    field: T
    controller: Any
