import { EnumOption, JsonFormsUISchemaRegistryEntry } from '@jsonforms/core'; import { FileInputProps } from '@mantine/core'; import { ReactNode } from 'react'; import { MantineInputProps } from '../hooks/types'; export type MantineEnumInputProps = MantineInputProps & { options: EnumOption[]; }; export type MantineEnumArrayInputProps = MantineInputProps & { options: EnumOption[]; }; export type MantineOneOfEnumInputProps = MantineInputProps & { options: EnumOption[]; }; export type MantineObjectInputProps = MantineInputProps & { uischemas: JsonFormsUISchemaRegistryEntry[]; }; export interface FileInputChildrenArgs { componentProps: Partial; jsonFormsProps: MantineInputProps; } export type InnerMantineFileInputProps = MantineInputProps & { contextName: string; componentName: string; children?: ((args: FileInputChildrenArgs) => ReactNode) | ReactNode; }; export type InnerMantineNumberInputProps = MantineInputProps & { contextName: 'Number' | 'Integer'; componentName: string; };