import React from "react";
import { StateRef } from "../helpers/reactUtils";
interface BaseGenericEntry {
    id: string;
    label: string;
    enabled?: () => boolean;
    visible?: () => boolean;
}
export interface GenericTextEntry extends BaseGenericEntry {
    type: "text";
    state: StateRef<string>;
}
export interface GenericNumberEntry extends BaseGenericEntry {
    type: "number";
    state: StateRef<number>;
    min?: number;
    max?: number;
    step?: number;
}
export interface GenericBoolEntry extends BaseGenericEntry {
    type: "bool";
    state: StateRef<boolean>;
}
export type GenericEntryType = GenericTextEntry | GenericBoolEntry | GenericNumberEntry;
/**
 * Renders a panel field based on its type.
 * @param field - The panel field to render.
 * @returns The rendered field element.
 */
export declare function GenericEntry(field: GenericEntryType): React.ReactNode;
export {};
