anvil/striker-ui/types/CreateInputOnChangeHandlerFunction.d.ts

20 lines
616 B
TypeScript
Raw Normal View History

type MapToInputType = Pick<MapToType, 'boolean' | 'number' | 'string'>;
type InputOnChangeParameters = Parameters<
Exclude<import('@mui/material').InputBaseProps['onChange'], undefined>
>;
type StateSetter = (value: unknown) => void;
type CreateInputOnChangeHandlerOptions<TypeName extends keyof MapToInputType> =
{
postSet?: (...args: InputOnChangeParameters) => void;
preSet?: (...args: InputOnChangeParameters) => void;
set?: StateSetter;
setType?: TypeName;
valueKey?: Extract<
keyof import('react').ChangeEvent<HTMLInputElement>['target'],
'checked' | 'value'
>;
};