diff --git a/src/ui/hooks/controls.tsx b/src/ui/hooks/controls.tsx index 9e8dabf..fd79763 100644 --- a/src/ui/hooks/controls.tsx +++ b/src/ui/hooks/controls.tsx @@ -1,17 +1,17 @@ import { useCallback, useContext, useEffect, useState } from "react"; import { Contexts } from ".."; -export interface ControlSpec { - value: string; - setValue: (value: string) => Promise; - submitValue: (value: string) => Promise; +export interface ControlSpec { + value: T; + setValue: (value: T) => Promise; + submitValue: (value: T) => Promise; } -export type ControlsResult = { - [K in keyof T]: ControlSpec; +export type ControlsResult> = { + [K in keyof T]: ControlSpec; } & { value: string; submitCurrentValue: () => void }; -export function useControls>({ +export function useControls>({ parse, compose, }: {