"use client"; import type * as React from "react"; import type { ControlChangeMeta } from "@repo/ui"; import type { ToolcraftControlSchema } from "../../schema/types"; import type { ToolcraftCommand, ToolcraftState } from "../../state/types"; export type ToolcraftCustomControlSetValue = ( value: Value, meta?: ControlChangeMeta, ) => void; export type ToolcraftCustomControlRendererProps = { control: ToolcraftControlSchema; controlId: string; dispatch: React.Dispatch; keyframeAction: React.ReactNode; name: string; setValue: ToolcraftCustomControlSetValue; state: ToolcraftState; value: Value; }; export type ToolcraftCustomControlRenderer = ( props: ToolcraftCustomControlRendererProps, ) => React.ReactNode; export type ToolcraftControlRendererMap = Readonly< Record >;