@react-solutions/inputs 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,1333 +1,1790 @@
1
+ import { SliderProps, FormControlProps, FormLabelProps, SwitchProps, FormControlLabelProps, RadioGroupProps, RadioProps, FormControl, CheckboxProps, Box, Stack, ButtonProps, TextFieldProps, AutocompleteProps, AutocompleteChangeReason, AutocompleteInputChangeReason, AutocompleteCloseReason, SelectProps, MenuItemProps, InputLabel, SelectChangeEvent, IconButtonProps, TextFieldPropsSizeOverrides, SxProps, Theme } from '@mui/material';
2
+ import * as React from 'react';
3
+ import React__default, { SyntheticEvent, FocusEvent, ChangeEvent } from 'react';
4
+ import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';
5
+ import { DateCalendarProps } from '@mui/x-date-pickers/DateCalendar';
6
+ import { TimeClockProps, TimeView, TimePickerProps, DatePickerProps } from '@mui/x-date-pickers';
7
+ import { FilterOptionsState } from '@mui/material/useAutocomplete';
8
+ import * as react_jsx_runtime from 'react/jsx-runtime';
1
9
  import { FieldValues, Control, FieldErrors } from 'react-hook-form';
2
- import { ComponentType } from 'react';
3
10
 
4
- /**
5
- * @module @react-solutions/input
6
- * @description A comprehensive React form input library with React Hook Form integration and Material-UI components.
7
- * Provides both standalone FormFields and React Hook Form integrated HookFormFields.
8
- * @version 0.0.0
9
- * @author React Solutions
10
- *
11
- * @example
12
- * ```typescript
13
- * import { FormInputTextField, useForm } from '@react-solutions/input';
14
- * import { useForm } from 'react-hook-form';
15
- *
16
- * function MyForm() {
17
- * const { control, handleSubmit, formState: { errors } } = useForm();
18
- *
19
- * const onSubmit = (data) => {
20
- * console.log(data);
21
- * };
22
- *
23
- * return (
24
- * <form onSubmit={handleSubmit(onSubmit)}>
25
- * <FormInputTextField
26
- * name="username"
27
- * label="Username"
28
- * control={control}
29
- * errors={errors}
30
- * />
31
- * <button type="submit">Submit</button>
32
- * </form>
33
- * );
34
- * }
35
- * ```
36
- */
37
-
38
- // ============================================================================
39
- // HOOK FORM FIELDS - Text Inputs
40
- // ============================================================================
41
-
42
- /**
43
- * @component FormInputTextField
44
- * @description React Hook Form integrated text input field component.
45
- * Wraps TextInputField with React Hook Form Controller for form state management.
46
- *
47
- * @example
48
- * ```typescript
49
- * import { FormInputTextField } from '@react-solutions/input';
50
- * import { useForm } from 'react-hook-form';
51
- *
52
- * function LoginForm() {
53
- * const { control, formState: { errors } } = useForm({
54
- * defaultValues: { email: '' }
55
- * });
56
- *
57
- * return (
58
- * <FormInputTextField
59
- * name="email"
60
- * label="Email Address"
61
- * control={control}
62
- * errors={errors}
63
- * placeholder="Enter your email"
64
- * required
65
- * type="email"
66
- * />
67
- * );
68
- * }
69
- * ```
70
- *
71
- * @example
72
- * ```typescript
73
- * // With validation
74
- * <FormInputTextField
75
- * name="username"
76
- * label="Username"
77
- * control={control}
78
- * errors={errors}
79
- * defaultValue=""
80
- * onChange={(value) => console.log('Changed:', value)}
81
- * disabled={false}
82
- * fullWidth
83
- * size="medium"
84
- * />
85
- * ```
86
- *
87
- * @props {IFormInputFields} props - Component props
88
- * @props {string} props.name - Field name for form identification (required)
89
- * @props {string} [props.label] - Label text for the field
90
- * @props {Control} props.control - React Hook Form control object (required)
91
- * @props {FieldErrors} props.errors - React Hook Form errors object (required)
92
- * @props {string} [props.defaultValue=""] - Default value for the field
93
- * @props {string} [props.placeholder] - Placeholder text
94
- * @props {"small"|"medium"} [props.size] - Field size
95
- * @props {boolean} [props.disabled] - Whether the field is disabled
96
- * @props {boolean} [props.required] - Whether the field is required
97
- * @props {boolean} [props.fullWidth] - Full width of the field
98
- * @props {function} [props.onChange] - Callback fired when value changes: (value: any) => void
99
- */
100
- declare const FormInputTextField: ComponentType<any>;
101
-
102
- /**
103
- * @component FormInputTextArea
104
- * @description React Hook Form integrated textarea field component.
105
- * Supports multiline text input with customizable rows and resize options.
106
- *
107
- * @example
108
- * ```typescript
109
- * import { FormInputTextArea } from '@react-solutions/input';
110
- *
111
- * <FormInputTextArea
112
- * name="description"
113
- * label="Description"
114
- * control={control}
115
- * errors={errors}
116
- * placeholder="Enter description"
117
- * rows={4}
118
- * minRows={3}
119
- * maxRows={10}
120
- * resize="vertical"
121
- * />
122
- * ```
123
- *
124
- * @props {IFormInputTextAreaFields} props - Component props
125
- * @props {string} props.name - Field name (required)
126
- * @props {Control} props.control - React Hook Form control (required)
127
- * @props {FieldErrors} props.errors - React Hook Form errors (required)
128
- * @props {number} [props.rows] - Number of rows
129
- * @props {number} [props.minRows] - Minimum number of rows
130
- * @props {number} [props.maxRows] - Maximum number of rows
131
- * @props {"none"|"both"|"horizontal"|"vertical"} [props.resize] - Resize option
132
- */
133
- declare const FormInputTextArea: ComponentType<any>;
134
-
135
- /**
136
- * @component FormInputPasswordField
137
- * @description React Hook Form integrated password input field with secure text masking.
138
- *
139
- * @example
140
- * ```typescript
141
- * <FormInputPasswordField
142
- * name="password"
143
- * label="Password"
144
- * control={control}
145
- * errors={errors}
146
- * placeholder="Enter password"
147
- * required
148
- * autoComplete="current-password"
149
- * />
150
- * ```
151
- */
152
- declare const FormInputPasswordField: ComponentType<any>;
153
-
154
- /**
155
- * @component FormInputNumberField
156
- * @description React Hook Form integrated number input field with validation.
157
- * Supports min/max values, decimal places, and custom patterns.
158
- *
159
- * @example
160
- * ```typescript
161
- * <FormInputNumberField
162
- * name="age"
163
- * label="Age"
164
- * control={control}
165
- * errors={errors}
166
- * min={0}
167
- * max={120}
168
- * step={1}
169
- * allowDecimals={false}
170
- * />
171
- * ```
172
- *
173
- * @props {IFormInputNumberFields} props - Component props
174
- * @props {number} [props.min] - Minimum value
175
- * @props {number} [props.max] - Maximum value
176
- * @props {number} [props.step] - Step value
177
- * @props {boolean} [props.allowDecimals] - Allow decimal numbers
178
- * @props {number} [props.decimalPlaces] - Number of decimal places
179
- */
180
- declare const FormInputNumberField: ComponentType<any>;
181
-
182
- /**
183
- * @component FormInputTelField
184
- * @description React Hook Form integrated telephone number input field.
185
- *
186
- * @example
187
- * ```typescript
188
- * <FormInputTelField
189
- * name="phone"
190
- * label="Phone Number"
191
- * control={control}
192
- * errors={errors}
193
- * placeholder="+1 (555) 123-4567"
194
- * />
195
- * ```
196
- */
197
- declare const FormInputTelField: ComponentType<any>;
198
-
199
- /**
200
- * @component FormInputSearchField
201
- * @description React Hook Form integrated search input field.
202
- *
203
- * @example
204
- * ```typescript
205
- * <FormInputSearchField
206
- * name="search"
207
- * label="Search"
208
- * control={control}
209
- * errors={errors}
210
- * placeholder="Search..."
211
- * onEnterPress={(value) => handleSearch(value)}
212
- * />
213
- * ```
214
- */
215
- declare const FormInputSearchField: ComponentType<any>;
216
-
217
- /**
218
- * @component FormInputOTPField
219
- * @description React Hook Form integrated OTP (One-Time Password) input field.
220
- *
221
- * @example
222
- * ```typescript
223
- * <FormInputOTPField
224
- * name="otp"
225
- * label="Enter OTP"
226
- * control={control}
227
- * errors={errors}
228
- * length={6}
229
- * />
230
- * ```
231
- */
232
- declare const FormInputOTPField: ComponentType<any>;
233
-
234
- // ============================================================================
235
- // HOOK FORM FIELDS - Dropdown Inputs
236
- // ============================================================================
237
-
238
- /**
239
- * @component FormInputSelect
240
- * @description React Hook Form integrated select dropdown field.
241
- * Supports single and multiple selection with custom options.
242
- *
243
- * @example
244
- * ```typescript
245
- * const options = [
246
- * { name: 'Option 1', value: '1' },
247
- * { name: 'Option 2', value: '2' },
248
- * { name: 'Option 3', value: '3' }
249
- * ];
250
- *
251
- * <FormInputSelect
252
- * name="category"
253
- * label="Category"
254
- * control={control}
255
- * errors={errors}
256
- * options={options}
257
- * defaultValue=""
258
- * />
259
- * ```
260
- *
261
- * @example
262
- * ```typescript
263
- * // Multiple selection
264
- * <FormInputSelect
265
- * name="tags"
266
- * label="Tags"
267
- * control={control}
268
- * errors={errors}
269
- * options={options}
270
- * multiple
271
- * limitTags={3}
272
- * />
273
- * ```
274
- *
275
- * @props {IFormInputFieldsWithOptions} props - Component props
276
- * @props {Option[]} [props.options=[]] - Options array for dropdown
277
- * @props {number} [props.limitTags] - Limit number of tags displayed (for multi-select)
278
- * @props {boolean} [props.multiple] - Allow multiple selections
279
- */
280
- declare const FormInputSelect: ComponentType<any>;
281
-
282
- /**
283
- * @component FormInputMultiSelect
284
- * @description React Hook Form integrated multi-select dropdown field.
285
- *
286
- * @example
287
- * ```typescript
288
- * <FormInputMultiSelect
289
- * name="skills"
290
- * label="Skills"
291
- * control={control}
292
- * errors={errors}
293
- * options={skillOptions}
294
- * limitTags={5}
295
- * filterSelectedOptions
296
- * />
297
- * ```
298
- */
299
- declare const FormInputMultiSelect: ComponentType<any>;
300
-
301
- /**
302
- * @component FormInputAutoComplete
303
- * @description React Hook Form integrated autocomplete field with search functionality.
304
- *
305
- * @example
306
- * ```typescript
307
- * const countries = [
308
- * { name: 'United States', value: 'US' },
309
- * { name: 'Canada', value: 'CA' },
310
- * { name: 'Mexico', value: 'MX' }
311
- * ];
312
- *
313
- * <FormInputAutoComplete
314
- * name="country"
315
- * label="Country"
316
- * control={control}
317
- * errors={errors}
318
- * options={countries}
319
- * placeholder="Select or type country"
320
- * />
321
- * ```
322
- *
323
- * @props {IFormInputFieldsWithOptions} props - Component props
324
- * @props {Option[]} [props.options=[]] - Options array
325
- * @props {function} [props.getOptionLabel] - Custom function to get option label
326
- * @props {function} [props.renderOption] - Custom render function for options
327
- */
328
- declare const FormInputAutoComplete: ComponentType<any>;
329
-
330
- /**
331
- * @component FormInputMultiAutoComplete
332
- * @description React Hook Form integrated multi-select autocomplete field.
333
- *
334
- * @example
335
- * ```typescript
336
- * <FormInputMultiAutoComplete
337
- * name="ingredients"
338
- * label="Ingredients"
339
- * control={control}
340
- * errors={errors}
341
- * options={ingredientOptions}
342
- * limitTags={3}
343
- * disableCheckBox={false}
344
- * />
345
- * ```
346
- */
347
- declare const FormInputMultiAutoComplete: ComponentType<any>;
348
-
349
- /**
350
- * @component FormInputColorPicker
351
- * @description React Hook Form integrated color picker field.
352
- *
353
- * @example
354
- * ```typescript
355
- * <FormInputColorPicker
356
- * name="themeColor"
357
- * label="Theme Color"
358
- * control={control}
359
- * errors={errors}
360
- * defaultValue="#000000"
361
- * />
362
- * ```
363
- */
364
- declare const FormInputColorPicker: ComponentType<any>;
365
-
366
- /**
367
- * @component FormInputFileUpload
368
- * @description React Hook Form integrated file upload field.
369
- *
370
- * @example
371
- * ```typescript
372
- * <FormInputFileUpload
373
- * name="avatar"
374
- * label="Upload Avatar"
375
- * control={control}
376
- * errors={errors}
377
- * accept="image/*"
378
- * multiple={false}
379
- * />
380
- * ```
381
- */
382
- declare const FormInputFileUpload: ComponentType<any>;
383
-
384
- // ============================================================================
385
- // HOOK FORM FIELDS - Date/Time Inputs
386
- // ============================================================================
387
-
388
- /**
389
- * @component FormInputDatePicker
390
- * @description React Hook Form integrated date picker field.
391
- * Uses MUI X Date Pickers with date-fns adapter.
392
- *
393
- * @example
394
- * ```typescript
395
- * import { useForm } from 'react-hook-form';
396
- *
397
- * <FormInputDatePicker
398
- * name="birthDate"
399
- * label="Birth Date"
400
- * control={control}
401
- * errors={errors}
402
- * minDate={new Date('1900-01-01')}
403
- * maxDate={new Date()}
404
- * disablePast
405
- * />
406
- * ```
407
- *
408
- * @example
409
- * ```typescript
410
- * // With custom date validation
411
- * <FormInputDatePicker
412
- * name="appointmentDate"
413
- * label="Appointment Date"
414
- * control={control}
415
- * errors={errors}
416
- * shouldDisableDate={(date) => {
417
- * // Disable weekends
418
- * return date.getDay() === 0 || date.getDay() === 6;
419
- * }}
420
- * />
421
- * ```
422
- *
423
- * @props {IFormInputDateFields} props - Component props
424
- * @props {Date|null} [props.defaultValue=null] - Default date value
425
- * @props {Date} [props.minDate] - Minimum selectable date
426
- * @props {Date} [props.maxDate] - Maximum selectable date
427
- * @props {boolean} [props.readOnly] - Whether the field is read-only
428
- * @props {boolean} [props.disablePast] - Whether to disable past dates
429
- * @props {function} [props.shouldDisableDate] - Custom function to disable specific dates: (date: Date) => boolean
430
- */
431
- declare const FormInputDatePicker: ComponentType<any>;
432
-
433
- /**
434
- * @component FormInputTimePicker
435
- * @description React Hook Form integrated time picker field.
436
- *
437
- * @example
438
- * ```typescript
439
- * <FormInputTimePicker
440
- * name="appointmentTime"
441
- * label="Appointment Time"
442
- * control={control}
443
- * errors={errors}
444
- * ampm={true}
445
- * views={['hours', 'minutes']}
446
- * />
447
- * ```
448
- *
449
- * @props {IFormInputDateFields} props - Component props
450
- * @props {boolean} [props.ampm] - Whether to use 12-hour format (AM/PM)
451
- * @props {TimeView[]} [props.views] - Views to show in picker
452
- */
453
- declare const FormInputTimePicker: ComponentType<any>;
454
-
455
- /**
456
- * @component FormInputTimeClock
457
- * @description React Hook Form integrated time clock field.
458
- *
459
- * @example
460
- * ```typescript
461
- * <FormInputTimeClock
462
- * name="alarmTime"
463
- * label="Alarm Time"
464
- * control={control}
465
- * errors={errors}
466
- * ampm={true}
467
- * ampmInClock={true}
468
- * />
469
- * ```
470
- */
471
- declare const FormInputTimeClock: ComponentType<any>;
472
-
473
- /**
474
- * @component FormInputCalendar
475
- * @description React Hook Form integrated calendar field.
476
- *
477
- * @example
478
- * ```typescript
479
- * <FormInputCalendar
480
- * name="selectedDate"
481
- * label="Select Date"
482
- * control={control}
483
- * errors={errors}
484
- * defaultValue={new Date()}
485
- * />
486
- * ```
487
- */
488
- declare const FormInputCalendar: ComponentType<any>;
489
-
490
- // ============================================================================
491
- // HOOK FORM FIELDS - Box Inputs
492
- // ============================================================================
493
-
494
- /**
495
- * @component FormInputCheckBox
496
- * @description React Hook Form integrated single checkbox field.
497
- *
498
- * @example
499
- * ```typescript
500
- * <FormInputCheckBox
501
- * name="agreeToTerms"
502
- * label="I agree to the terms and conditions"
503
- * control={control}
504
- * errors={errors}
505
- * defaultValue={false}
506
- * color="primary"
507
- * labelPlacement="end"
508
- * />
509
- * ```
510
- *
511
- * @props {IFormInputFields} props - Component props
512
- * @props {boolean} [props.defaultValue=false] - Default checked state
513
- */
514
- declare const FormInputCheckBox: ComponentType<any>;
515
-
516
- /**
517
- * @component FormInputCheckBoxGroup
518
- * @description React Hook Form integrated checkbox group field.
519
- * Supports multiple selections from a list of options.
520
- *
521
- * @example
522
- * ```typescript
523
- * const interests = [
524
- * { name: 'Sports', value: 'sports' },
525
- * { name: 'Music', value: 'music' },
526
- * { name: 'Reading', value: 'reading' }
527
- * ];
528
- *
529
- * <FormInputCheckBoxGroup
530
- * name="interests"
531
- * label="Interests"
532
- * control={control}
533
- * errors={errors}
534
- * options={interests}
535
- * row={true}
536
- * color="primary"
537
- * />
538
- * ```
539
- *
540
- * @props {IFormInputCheckBoxGroupFields} props - Component props
541
- * @props {Option[]} [props.options=[]] - Options array
542
- * @props {boolean} [props.row] - Whether to display checkboxes in a row
543
- * @props {"default"|"primary"|"secondary"|"error"|"info"|"success"|"warning"} [props.color] - Checkbox color
544
- */
545
- declare const FormInputCheckBoxGroup: ComponentType<any>;
546
-
547
- /**
548
- * @component FormInputSwitch
549
- * @description React Hook Form integrated switch/toggle field.
550
- *
551
- * @example
552
- * ```typescript
553
- * <FormInputSwitch
554
- * name="notifications"
555
- * label="Enable Notifications"
556
- * control={control}
557
- * errors={errors}
558
- * defaultValue={false}
559
- * color="primary"
560
- * />
561
- * ```
562
- */
563
- declare const FormInputSwitch: ComponentType<any>;
564
-
565
- /**
566
- * @component FormInputSlider
567
- * @description React Hook Form integrated slider/range field.
568
- *
569
- * @example
570
- * ```typescript
571
- * <FormInputSlider
572
- * name="volume"
573
- * label="Volume"
574
- * control={control}
575
- * errors={errors}
576
- * defaultValue={50}
577
- * min={0}
578
- * max={100}
579
- * step={1}
580
- * marks
581
- * />
582
- * ```
583
- */
584
- declare const FormInputSlider: ComponentType<any>;
585
-
586
- /**
587
- * @component FormInputSingleRadio
588
- * @description React Hook Form integrated single radio button field.
589
- *
590
- * @example
591
- * ```typescript
592
- * <FormInputSingleRadio
593
- * name="gender"
594
- * label="Male"
595
- * control={control}
596
- * errors={errors}
597
- * value="male"
598
- * checked={watch('gender') === 'male'}
599
- * />
600
- * ```
601
- */
602
- declare const FormInputSingleRadio: ComponentType<any>;
603
-
604
- /**
605
- * @component FormInputRadioButtonGroup
606
- * @description React Hook Form integrated radio button group field.
607
- * Supports single selection from a list of options.
608
- *
609
- * @example
610
- * ```typescript
611
- * const genderOptions = [
612
- * { name: 'Male', value: 'male' },
613
- * { name: 'Female', value: 'female' },
614
- * { name: 'Other', value: 'other' }
615
- * ];
616
- *
617
- * <FormInputRadioButtonGroup
618
- * name="gender"
619
- * label="Gender"
620
- * control={control}
621
- * errors={errors}
622
- * options={genderOptions}
623
- * row={true}
624
- * color="primary"
625
- * />
626
- * ```
627
- *
628
- * @props {IFormInputFieldsWithOptions} props - Component props
629
- * @props {Option[]} [props.options=[]] - Options array
630
- * @props {boolean} [props.row] - Whether to display radio buttons in a row
631
- */
632
- declare const FormInputRadioButtonGroup: ComponentType<any>;
633
-
634
- // ============================================================================
635
- // FORM FIELDS - Text Inputs (Standalone)
636
- // ============================================================================
637
-
638
- /**
639
- * @component TextInputField
640
- * @description Standalone text input field component without React Hook Form integration.
641
- * Use this when you need direct control over the input value and onChange handler.
642
- *
643
- * @example
644
- * ```typescript
645
- * import { TextInputField } from '@react-solutions/input';
646
- * import { useState } from 'react';
647
- *
648
- * function MyComponent() {
649
- * const [value, setValue] = useState('');
650
- *
651
- * return (
652
- * <TextInputField
653
- * name="username"
654
- * label="Username"
655
- * value={value}
656
- * onChange={(e) => setValue(e.target.value)}
657
- * placeholder="Enter username"
658
- * required
659
- * fullWidth
660
- * />
661
- * );
662
- * }
663
- * ```
664
- *
665
- * @example
666
- * ```typescript
667
- * // Multiline textarea
668
- * <TextInputField
669
- * name="description"
670
- * label="Description"
671
- * value={description}
672
- * onChange={(e) => setDescription(e.target.value)}
673
- * multiline
674
- * rows={4}
675
- * minRows={3}
676
- * maxRows={10}
677
- * resize="vertical"
678
- * />
679
- * ```
680
- *
681
- * @props {ITextInputFieldProps} props - Component props
682
- * @props {string} props.value - Current text value (required)
683
- * @props {function} props.onChange - Callback fired when value changes: (event: ChangeEvent) => void (required)
684
- * @props {string} [props.name] - Field name
685
- * @props {string} [props.label] - Label text
686
- * @props {FieldError} [props.error] - Error object with optional message
687
- * @props {string} [props.helperText] - Helper text to display below field
688
- * @props {boolean} [props.disabled=false] - Whether the field is disabled
689
- * @props {string} [props.placeholder] - Placeholder text
690
- * @props {"outlined"|"filled"|"standard"} [props.variant="outlined"] - TextField variant
691
- * @props {"small"|"medium"} [props.size] - TextField size
692
- * @props {boolean} [props.fullWidth=true] - Full width of the field
693
- * @props {boolean} [props.multiline=false] - Whether to enable multiline input (textarea)
694
- * @props {number} [props.rows] - Number of rows for multiline input
695
- * @props {number} [props.minRows] - Minimum number of rows
696
- * @props {number} [props.maxRows] - Maximum number of rows
697
- * @props {"none"|"both"|"horizontal"|"vertical"} [props.resize="both"] - Resize option for textarea
698
- * @props {number} [props.maxLength] - Maximum length of input
699
- * @props {string} [props.type="text"] - Input type (text, email, number, tel, url, etc.)
700
- * @props {React.ReactNode} [props.startAdornment] - Start adornment (icon or element before input)
701
- * @props {React.ReactNode} [props.endAdornment] - End adornment (icon or element after input)
702
- * @props {function} [props.onEnterPress] - Callback fired on Enter key press: (value: string) => void
703
- */
704
- declare const TextInputField: ComponentType<any>;
705
-
706
- /**
707
- * @component PasswordField
708
- * @description Standalone password input field with secure text masking.
709
- *
710
- * @example
711
- * ```typescript
712
- * <PasswordField
713
- * name="password"
714
- * label="Password"
715
- * value={password}
716
- * onChange={(e) => setPassword(e.target.value)}
717
- * placeholder="Enter password"
718
- * showPasswordToggle
719
- * />
720
- * ```
721
- */
722
- declare const PasswordField: ComponentType<any>;
723
-
724
- /**
725
- * @component NumberField
726
- * @description Standalone number input field with validation.
727
- *
728
- * @example
729
- * ```typescript
730
- * <NumberField
731
- * name="age"
732
- * label="Age"
733
- * value={age}
734
- * onChange={(e) => setAge(e.target.value)}
735
- * min={0}
736
- * max={120}
737
- * step={1}
738
- * />
739
- * ```
740
- */
741
- declare const NumberField: ComponentType<any>;
742
-
743
- /**
744
- * @component TelInputField
745
- * @description Standalone telephone number input field.
746
- *
747
- * @example
748
- * ```typescript
749
- * <TelInputField
750
- * name="phone"
751
- * label="Phone Number"
752
- * value={phone}
753
- * onChange={(e) => setPhone(e.target.value)}
754
- * placeholder="+1 (555) 123-4567"
755
- * />
756
- * ```
757
- */
758
- declare const TelInputField: ComponentType<any>;
759
-
760
- /**
761
- * @component SearchInputField
762
- * @description Standalone search input field.
763
- *
764
- * @example
765
- * ```typescript
766
- * <SearchInputField
767
- * name="search"
768
- * label="Search"
769
- * value={searchTerm}
770
- * onChange={(e) => setSearchTerm(e.target.value)}
771
- * onEnterPress={(value) => handleSearch(value)}
772
- * />
773
- * ```
774
- */
775
- declare const SearchInputField: ComponentType<any>;
776
-
777
- /**
778
- * @component OTPField
779
- * @description Standalone OTP (One-Time Password) input field.
780
- *
781
- * @example
782
- * ```typescript
783
- * <OTPField
784
- * name="otp"
785
- * label="Enter OTP"
786
- * value={otp}
787
- * onChange={setOtp}
788
- * length={6}
789
- * />
790
- * ```
791
- */
792
- declare const OTPField: ComponentType<any>;
793
-
794
- // ============================================================================
795
- // FORM FIELDS - Dropdown Inputs (Standalone)
796
- // ============================================================================
797
-
798
- /**
799
- * @component SelectInputField
800
- * @description Standalone select dropdown field without React Hook Form integration.
801
- *
802
- * @example
803
- * ```typescript
804
- * const options = [
805
- * { name: 'Option 1', value: '1' },
806
- * { name: 'Option 2', value: '2' }
807
- * ];
808
- *
809
- * <SelectInputField
810
- * name="category"
811
- * label="Category"
812
- * value={selectedValue}
813
- * onChange={(e) => setSelectedValue(e.target.value)}
814
- * options={options}
815
- * fullWidth
816
- * />
817
- * ```
818
- *
819
- * @props {ISelectInputFieldProps} props - Component props
820
- * @props {string|number|(string|number)[]|""} props.value - Current selected value(s) (required)
821
- * @props {function} props.onChange - Callback fired when value changes: (event: SelectChangeEvent) => void (required)
822
- * @props {SelectOption[]} props.options - Options array to display in dropdown (required)
823
- * @props {boolean} [props.multiple] - Whether to allow multiple selections
824
- * @props {function} [props.renderValue] - Custom render function for selected value(s)
825
- * @props {function} [props.renderMenuItem] - Custom render function for menu items
826
- */
827
- declare const SelectInputField: ComponentType<any>;
828
-
829
- /**
830
- * @component AutoCompleteField
831
- * @description Standalone autocomplete field with search functionality.
832
- *
833
- * @example
834
- * ```typescript
835
- * const countries = [
836
- * { name: 'United States', value: 'US' },
837
- * { name: 'Canada', value: 'CA' }
838
- * ];
839
- *
840
- * <AutoCompleteField
841
- * name="country"
842
- * label="Country"
843
- * value={selectedCountry}
844
- * onChange={(_, newValue) => setSelectedCountry(newValue)}
845
- * options={countries}
846
- * placeholder="Select or type country"
847
- * />
848
- * ```
849
- */
850
- declare const AutoCompleteField: ComponentType<any>;
851
-
852
- /**
853
- * @component ColorPickerField
854
- * @description Standalone color picker field.
855
- *
856
- * @example
857
- * ```typescript
858
- * <ColorPickerField
859
- * name="themeColor"
860
- * label="Theme Color"
861
- * value={color}
862
- * onChange={setColor}
863
- * defaultValue="#000000"
864
- * />
865
- * ```
866
- */
867
- declare const ColorPickerField: ComponentType<any>;
868
-
869
- /**
870
- * @component FileUploadField
871
- * @description Standalone file upload field.
872
- *
873
- * @example
874
- * ```typescript
875
- * <FileUploadField
876
- * name="avatar"
877
- * label="Upload Avatar"
878
- * value={file}
879
- * onChange={setFile}
880
- * accept="image/*"
881
- * multiple={false}
882
- * />
883
- * ```
884
- */
885
- declare const FileUploadField: ComponentType<any>;
886
-
887
- // ============================================================================
888
- // FORM FIELDS - Date/Time Inputs (Standalone)
889
- // ============================================================================
890
-
891
- /**
892
- * @component DatePickerField
893
- * @description Standalone date picker field without React Hook Form integration.
894
- * Uses MUI X Date Pickers with date-fns adapter.
895
- *
896
- * @example
897
- * ```typescript
898
- * <DatePickerField
899
- * name="birthDate"
900
- * label="Birth Date"
901
- * value={date}
902
- * onChange={setDate}
903
- * minDate={new Date('1900-01-01')}
904
- * maxDate={new Date()}
905
- * disablePast
906
- * />
907
- * ```
908
- *
909
- * @props {IDatePickerFieldProps} props - Component props
910
- * @props {Date|null} props.value - Current selected date value (required)
911
- * @props {function} props.onChange - Callback fired when date changes: (newValue: Date | null) => void (required)
912
- * @props {Date} [props.minDate] - Minimum selectable date
913
- * @props {Date} [props.maxDate] - Maximum selectable date
914
- * @props {boolean} [props.disablePast] - Whether to disable past dates
915
- * @props {function} [props.shouldDisableDate] - Custom function to disable specific dates: (date: Date) => boolean
916
- */
917
- declare const DatePickerField: ComponentType<any>;
918
-
919
- /**
920
- * @component TimePickerField
921
- * @description Standalone time picker field.
922
- *
923
- * @example
924
- * ```typescript
925
- * <TimePickerField
926
- * name="appointmentTime"
927
- * label="Appointment Time"
928
- * value={time}
929
- * onChange={setTime}
930
- * ampm={true}
931
- * views={['hours', 'minutes']}
932
- * />
933
- * ```
934
- */
935
- declare const TimePickerField: ComponentType<any>;
936
-
937
- /**
938
- * @component TimeClockField
939
- * @description Standalone time clock field.
940
- *
941
- * @example
942
- * ```typescript
943
- * <TimeClockField
944
- * name="alarmTime"
945
- * label="Alarm Time"
946
- * value={time}
947
- * onChange={setTime}
948
- * ampm={true}
949
- * ampmInClock={true}
950
- * />
951
- * ```
952
- */
953
- declare const TimeClockField: ComponentType<any>;
954
-
955
- /**
956
- * @component DateCalendarField
957
- * @description Standalone calendar field.
958
- *
959
- * @example
960
- * ```typescript
961
- * <DateCalendarField
962
- * name="selectedDate"
963
- * label="Select Date"
964
- * value={date}
965
- * onChange={setDate}
966
- * defaultValue={new Date()}
967
- * />
968
- * ```
969
- */
970
- declare const DateCalendarField: ComponentType<any>;
971
-
972
- // ============================================================================
973
- // FORM FIELDS - Box Inputs (Standalone)
974
- // ============================================================================
975
-
976
- /**
977
- * @component CheckBoxField
978
- * @description Standalone single checkbox field without React Hook Form integration.
979
- *
980
- * @example
981
- * ```typescript
982
- * <CheckBoxField
983
- * name="agreeToTerms"
984
- * label="I agree to the terms and conditions"
985
- * value={checked}
986
- * onChange={setChecked}
987
- * color="primary"
988
- * labelPlacement="end"
989
- * />
990
- * ```
991
- *
992
- * @props {ICheckboxFieldProps} props - Component props
993
- * @props {boolean} props.value - Current checked state (required)
994
- * @props {function} props.onChange - Callback fired when checked state changes: (checked: boolean) => void (required)
995
- * @props {React.ReactNode} [props.label] - Label text or element
996
- * @props {"default"|"primary"|"secondary"|"error"|"info"|"success"|"warning"} [props.color] - Checkbox color
997
- * @props {"end"|"start"|"top"|"bottom"} [props.labelPlacement] - Label placement
998
- */
999
- declare const CheckBoxField: ComponentType<any>;
1000
-
1001
- /**
1002
- * @component CheckBoxFieldGroup
1003
- * @description Standalone checkbox group field.
1004
- * Supports multiple selections from a list of options.
1005
- *
1006
- * @example
1007
- * ```typescript
1008
- * const interests = [
1009
- * { name: 'Sports', value: 'sports' },
1010
- * { name: 'Music', value: 'music' }
1011
- * ];
1012
- *
1013
- * <CheckBoxFieldGroup
1014
- * name="interests"
1015
- * label="Interests"
1016
- * value={selectedInterests}
1017
- * onChange={setSelectedInterests}
1018
- * options={interests}
1019
- * row={true}
1020
- * color="primary"
1021
- * />
1022
- * ```
1023
- */
1024
- declare const CheckBoxFieldGroup: ComponentType<any>;
1025
-
1026
- /**
1027
- * @component RadioButtonField
1028
- * @description Standalone single radio button field.
1029
- *
1030
- * @example
1031
- * ```typescript
1032
- * <RadioButtonField
1033
- * name="gender"
1034
- * label="Male"
1035
- * value={selectedGender === 'male'}
1036
- * onChange={() => setSelectedGender('male')}
1037
- * color="primary"
1038
- * />
1039
- * ```
1040
- */
1041
- declare const RadioButtonField: ComponentType<any>;
1042
-
1043
- /**
1044
- * @component RadioButtonFieldGroup
1045
- * @description Standalone radio button group field.
1046
- * Supports single selection from a list of options.
1047
- *
1048
- * @example
1049
- * ```typescript
1050
- * const genderOptions = [
1051
- * { name: 'Male', value: 'male' },
1052
- * { name: 'Female', value: 'female' }
1053
- * ];
1054
- *
1055
- * <RadioButtonFieldGroup
1056
- * name="gender"
1057
- * label="Gender"
1058
- * value={selectedGender}
1059
- * onChange={setSelectedGender}
1060
- * options={genderOptions}
1061
- * row={true}
1062
- * color="primary"
1063
- * />
1064
- * ```
1065
- */
1066
- declare const RadioButtonFieldGroup: ComponentType<any>;
1067
-
1068
- /**
1069
- * @component SwitchField
1070
- * @description Standalone switch/toggle field.
1071
- *
1072
- * @example
1073
- * ```typescript
1074
- * <SwitchField
1075
- * name="notifications"
1076
- * label="Enable Notifications"
1077
- * value={enabled}
1078
- * onChange={setEnabled}
1079
- * color="primary"
1080
- * />
1081
- * ```
1082
- */
1083
- declare const SwitchField: ComponentType<any>;
1084
-
1085
- /**
1086
- * @component SliderField
1087
- * @description Standalone slider/range field.
1088
- *
1089
- * @example
1090
- * ```typescript
1091
- * <SliderField
1092
- * name="volume"
1093
- * label="Volume"
1094
- * value={volume}
1095
- * onChange={setVolume}
1096
- * min={0}
1097
- * max={100}
1098
- * step={1}
1099
- * marks
1100
- * />
1101
- * ```
1102
- */
1103
- declare const SliderField: ComponentType<any>;
1104
-
1105
- // ============================================================================
1106
- // TYPES
1107
- // ============================================================================
1108
-
1109
- /**
1110
- * @typedef {Object} Option
1111
- * @description Base option type for dropdown fields
1112
- * @property {string} name - Display name of the option
1113
- * @property {string|number} value - Value of the option
1114
- * @property {boolean} [disabled] - Whether the option is disabled
1115
- * @property {*} [key] - Additional properties
1116
- */
1117
- type Option = {
1118
- name: string;
1119
- value: number | string;
1120
- disabled?: boolean;
1121
- [key: string]: unknown;
1122
- };
1123
-
1124
- /**
1125
- * @typedef {Object} IFormInputFields
1126
- * @description Base interface for all HookForm field components
1127
- * @property {string} name - Field name for form identification (required)
1128
- * @property {string} [label] - Label text for the field
1129
- * @property {Control} control - React Hook Form control object (required)
1130
- * @property {FieldErrors} errors - React Hook Form errors object (required)
1131
- * @property {*} [defaultValue] - Default value for the field
1132
- * @property {string} [placeholder] - Placeholder text
1133
- * @property {"small"|"medium"} [size] - Field size
1134
- * @property {boolean} [disabled] - Whether the field is disabled
1135
- * @property {boolean} [required] - Whether the field is required
1136
- * @property {boolean} [fullWidth] - Full width of the field
1137
- * @property {SxProps} [inputStyles] - Custom styles for input
1138
- * @property {SxProps} [sx] - Custom styles
1139
- * @property {*} [slotProps] - Custom slot props for MUI v7
1140
- * @property {*} [slots] - Custom slots for MUI v7
1141
- * @property {function} [onChange] - Callback fired when the value changes: (value: any) => void
1142
- */
1143
- interface IFormInputFields<TFieldValues extends FieldValues = FieldValues> {
1144
- name: string;
1145
- label?: string;
1146
- control: Control<TFieldValues>;
1147
- errors: FieldErrors<TFieldValues>;
1148
- defaultValue?: any;
1149
- placeholder?: string;
1150
- size?: "small" | "medium";
1151
- disabled?: boolean;
1152
- required?: boolean;
1153
- fullWidth?: boolean;
1154
- inputStyles?: any;
1155
- sx?: any;
1156
- slotProps?: any;
1157
- slots?: any;
1158
- onChange?: (value: any) => void;
1159
- [key: string]: any;
1160
- }
1161
-
1162
- /**
1163
- * @typedef {Object} IFormInputFieldsWithOptions
1164
- * @description Interface for fields with options (Select, AutoComplete, etc.)
1165
- * @extends {IFormInputFields}
1166
- * @property {Option[]} [options] - Options array for dropdown fields
1167
- * @property {number} [limitTags] - Limit number of tags displayed (for multi-select)
1168
- * @property {function} [renderOption] - Custom render function for options
1169
- * @property {function} [getOptionLabel] - Custom function to get option label
1170
- * @property {boolean} [isRenderSingle] - Whether to render single option
1171
- * @property {function} [renderOptionValue] - Custom render function for option value
1172
- * @property {boolean} [disableCheckBox] - Whether to disable checkbox in multi-select
1173
- * @property {boolean} [filterSelectedOptions] - Whether to filter selected options
1174
- */
1175
- interface IFormInputFieldsWithOptions<TFieldValues extends FieldValues = FieldValues>
1176
- extends IFormInputFields<TFieldValues> {
1177
- options?: Option[];
1178
- limitTags?: number;
1179
- renderOption?: any;
1180
- getOptionLabel?: any;
1181
- isRenderSingle?: boolean;
1182
- renderOptionValue?: any;
1183
- disableCheckBox?: boolean;
1184
- filterSelectedOptions?: boolean;
1185
- }
1186
-
1187
- /**
1188
- * @typedef {Object} IFormInputDateFields
1189
- * @description Interface for date/time picker fields
1190
- * @extends {IFormInputFields}
1191
- * @property {Date|null} [defaultValue] - Default date value
1192
- * @property {Date} [minDate] - Minimum selectable date
1193
- * @property {Date} [maxDate] - Maximum selectable date
1194
- * @property {boolean} [readOnly] - Whether the field is read-only
1195
- * @property {*} [timezone] - Timezone setting
1196
- * @property {boolean} [ampm] - Whether to use 12-hour format (AM/PM)
1197
- * @property {TimeView[]} [views] - Views to show in picker
1198
- * @property {boolean} [ampmInClock] - Whether to show AM/PM in clock
1199
- * @property {boolean} [disablePast] - Whether to disable past dates
1200
- * @property {function} [shouldDisableDate] - Custom function to disable specific dates: (date: Date) => boolean
1201
- */
1202
- interface IFormInputDateFields<TFieldValues extends FieldValues = FieldValues>
1203
- extends IFormInputFields<TFieldValues> {
1204
- defaultValue?: Date | null;
1205
- minDate?: Date;
1206
- maxDate?: Date;
1207
- readOnly?: boolean;
1208
- timezone?: any;
1209
- ampm?: boolean;
1210
- views?: any[];
1211
- ampmInClock?: boolean;
1212
- disablePast?: boolean;
1213
- shouldDisableDate?: (date: Date) => boolean;
1214
- }
1215
-
1216
- /**
1217
- * @typedef {Object} IFormInputNumberFields
1218
- * @description Interface for number input fields
1219
- * @extends {IFormInputFields}
1220
- * @property {string} [pattern] - Number pattern type or custom pattern string
1221
- * @property {number} [min] - Minimum value
1222
- * @property {number} [max] - Maximum value
1223
- * @property {number} [step] - Step value
1224
- * @property {boolean} [allowDecimals] - Allow decimal numbers
1225
- * @property {number} [decimalPlaces] - Number of decimal places
1226
- */
1227
- interface IFormInputNumberFields<TFieldValues extends FieldValues = FieldValues>
1228
- extends IFormInputFields<TFieldValues> {
1229
- pattern?: string;
1230
- min?: number;
1231
- max?: number;
1232
- step?: number;
1233
- allowDecimals?: boolean;
1234
- decimalPlaces?: number;
1235
- }
1236
-
1237
- /**
1238
- * @typedef {Object} IFormInputTextAreaFields
1239
- * @description Interface for text area fields
1240
- * @extends {IFormInputFields}
1241
- * @property {number} [rows] - Number of rows
1242
- * @property {number} [minRows] - Minimum number of rows
1243
- * @property {number} [maxRows] - Maximum number of rows
1244
- * @property {"none"|"both"|"horizontal"|"vertical"} [resize] - Resize option
1245
- */
1246
- interface IFormInputTextAreaFields<TFieldValues extends FieldValues = FieldValues>
1247
- extends IFormInputFields<TFieldValues> {
1248
- rows?: number;
1249
- minRows?: number;
1250
- maxRows?: number;
1251
- resize?: "none" | "both" | "horizontal" | "vertical";
1252
- }
1253
-
1254
- /**
1255
- * @typedef {Object} IFormInputRadioFields
1256
- * @description Interface for radio button fields (single)
1257
- * @extends {IFormInputFields}
1258
- * @property {boolean} [checked] - Current checked state
1259
- * @property {"default"|"primary"|"secondary"|"error"|"info"|"success"|"warning"} [color] - Radio color
1260
- * @property {"end"|"start"|"top"|"bottom"} [labelPlacement] - Label placement
1261
- */
1262
- interface IFormInputRadioFields<TFieldValues extends FieldValues = FieldValues>
1263
- extends IFormInputFields<TFieldValues> {
1264
- checked?: boolean;
1265
- color?: "default" | "primary" | "secondary" | "error" | "info" | "success" | "warning";
1266
- labelPlacement?: "end" | "start" | "top" | "bottom";
1267
- }
1268
-
1269
- /**
1270
- * @typedef {Object} IFormInputCheckBoxGroupFields
1271
- * @description Interface for checkbox group fields
1272
- * @extends {IFormInputFieldsWithOptions}
1273
- * @property {boolean} [row] - Whether to display checkboxes in a row
1274
- * @property {"default"|"primary"|"secondary"|"error"|"info"|"success"|"warning"} [color] - Checkbox color
1275
- * @property {"end"|"start"|"top"|"bottom"} [labelPlacement] - Label placement
1276
- */
1277
- interface IFormInputCheckBoxGroupFields<TFieldValues extends FieldValues = FieldValues>
1278
- extends IFormInputFieldsWithOptions<TFieldValues> {
1279
- row?: boolean;
1280
- color?: "default" | "primary" | "secondary" | "error" | "info" | "success" | "warning";
1281
- labelPlacement?: "end" | "start" | "top" | "bottom";
1282
- }
1283
-
1284
- // Default export
1285
- declare const _default: {
1286
- // HookFormFields
1287
- FormInputTextField: ComponentType<any>;
1288
- FormInputTextArea: ComponentType<any>;
1289
- FormInputPasswordField: ComponentType<any>;
1290
- FormInputNumberField: ComponentType<any>;
1291
- FormInputTelField: ComponentType<any>;
1292
- FormInputSearchField: ComponentType<any>;
1293
- FormInputOTPField: ComponentType<any>;
1294
- FormInputSelect: ComponentType<any>;
1295
- FormInputMultiSelect: ComponentType<any>;
1296
- FormInputAutoComplete: ComponentType<any>;
1297
- FormInputMultiAutoComplete: ComponentType<any>;
1298
- FormInputColorPicker: ComponentType<any>;
1299
- FormInputFileUpload: ComponentType<any>;
1300
- FormInputDatePicker: ComponentType<any>;
1301
- FormInputTimePicker: ComponentType<any>;
1302
- FormInputTimeClock: ComponentType<any>;
1303
- FormInputCalendar: ComponentType<any>;
1304
- FormInputCheckBox: ComponentType<any>;
1305
- FormInputCheckBoxGroup: ComponentType<any>;
1306
- FormInputSwitch: ComponentType<any>;
1307
- FormInputSlider: ComponentType<any>;
1308
- FormInputSingleRadio: ComponentType<any>;
1309
- FormInputRadioButtonGroup: ComponentType<any>;
1310
- // FormFields
1311
- TextInputField: ComponentType<any>;
1312
- PasswordField: ComponentType<any>;
1313
- NumberField: ComponentType<any>;
1314
- TelInputField: ComponentType<any>;
1315
- SearchInputField: ComponentType<any>;
1316
- OTPField: ComponentType<any>;
1317
- SelectInputField: ComponentType<any>;
1318
- AutoCompleteField: ComponentType<any>;
1319
- ColorPickerField: ComponentType<any>;
1320
- FileUploadField: ComponentType<any>;
1321
- DatePickerField: ComponentType<any>;
1322
- TimePickerField: ComponentType<any>;
1323
- TimeClockField: ComponentType<any>;
1324
- DateCalendarField: ComponentType<any>;
1325
- CheckBoxField: ComponentType<any>;
1326
- CheckBoxFieldGroup: ComponentType<any>;
1327
- RadioButtonField: ComponentType<any>;
1328
- RadioButtonFieldGroup: ComponentType<any>;
1329
- SwitchField: ComponentType<any>;
1330
- SliderField: ComponentType<any>;
11
+ /**
12
+ * Error object type
13
+ */
14
+ type FieldError$j = {
15
+ message?: string;
16
+ } | null;
17
+ /**
18
+ * Extended Slider Field Props
19
+ * Extends MUI SliderProps with custom form field props
20
+ */
21
+ interface ISliderFieldProps extends Omit<SliderProps, "value" | "onChange" | "onChangeCommitted" | "name" | "orientation"> {
22
+ /** Field name for form identification */
23
+ name?: string;
24
+ /** Label text for the slider */
25
+ label?: React__default.ReactNode;
26
+ /** Current slider value(s) */
27
+ value: number | number[];
28
+ /** Error object with optional message */
29
+ error?: FieldError$j;
30
+ /** Helper text to display below slider */
31
+ helperText?: string;
32
+ /** Whether the field is disabled */
33
+ disabled?: boolean;
34
+ /** Full width of the field */
35
+ fullWidth?: boolean;
36
+ /** Required field indicator */
37
+ required?: boolean;
38
+ /** Slider orientation - horizontal or vertical */
39
+ orientation?: "horizontal" | "vertical";
40
+ /** Minimum value (default: 0) */
41
+ min?: number;
42
+ /** Maximum value (default: 100) */
43
+ max?: number;
44
+ /** Step value (default: 1) */
45
+ step?: number | null;
46
+ /** Whether to show value label */
47
+ valueLabelDisplay?: SliderProps["valueLabelDisplay"];
48
+ /** Custom format for value label */
49
+ valueLabelFormat?: SliderProps["valueLabelFormat"];
50
+ /** Slider color */
51
+ color?: SliderProps["color"];
52
+ /** Slider size */
53
+ size?: SliderProps["size"];
54
+ /** Marks on the slider */
55
+ marks?: boolean | SliderProps["marks"];
56
+ /** Track display mode */
57
+ track?: SliderProps["track"];
58
+ /** Custom styles for the Slider */
59
+ sliderStyles?: SliderProps["sx"];
60
+ /** Custom styles for FormControl */
61
+ formControlStyles?: FormControlProps["sx"];
62
+ /** Custom styles for FormLabel */
63
+ formLabelStyles?: FormLabelProps["sx"];
64
+ /** Callback fired when the value changes (during drag) */
65
+ onChange?: (value: number | number[]) => void;
66
+ /** Callback fired when the value change is committed (on mouse up) */
67
+ onChangeCommitted?: (value: number | number[]) => void;
68
+ /** Callback fired when slider receives focus */
69
+ onFocus?: (event: SyntheticEvent) => void;
70
+ /** Callback fired when slider loses focus */
71
+ onBlur?: (event: SyntheticEvent) => void;
72
+ /** Custom slot props for MUI v7 */
73
+ slotProps?: SliderProps["slotProps"];
74
+ /** Custom slots for MUI v7 */
75
+ slots?: SliderProps["slots"];
76
+ /** FormLabel props */
77
+ formLabelProps?: Omit<FormLabelProps, "children">;
78
+ }
79
+ declare const SliderField: React__default.ForwardRefExoticComponent<Omit<ISliderFieldProps, "ref"> & React__default.RefAttributes<HTMLSpanElement>>;
80
+
81
+ /**
82
+ * Error object type
83
+ */
84
+ type FieldError$i = {
85
+ message?: string;
86
+ } | null;
87
+ /**
88
+ * Extended Switch Field Props
89
+ * Extends MUI SwitchProps with custom form field props
90
+ */
91
+ interface ISwitchFieldProps extends Omit<SwitchProps, "checked" | "onChange" | "name"> {
92
+ /** Field name for form identification */
93
+ name?: string;
94
+ /** Label text for the switch */
95
+ label?: React__default.ReactNode;
96
+ /** Current checked state */
97
+ value: boolean;
98
+ /** Error object with optional message */
99
+ error?: FieldError$i;
100
+ /** Helper text to display below switch */
101
+ helperText?: string;
102
+ /** Whether the field is disabled */
103
+ disabled?: boolean;
104
+ /** Switch color */
105
+ color?: SwitchProps["color"];
106
+ /** Switch size */
107
+ size?: SwitchProps["size"];
108
+ /** Full width of the field */
109
+ fullWidth?: boolean;
110
+ /** Required field indicator */
111
+ required?: boolean;
112
+ /** Label placement */
113
+ labelPlacement?: FormControlLabelProps["labelPlacement"];
114
+ /** Edge placement for the switch */
115
+ edge?: SwitchProps["edge"];
116
+ /** Custom icon for checked state */
117
+ checkedIcon?: React__default.ReactNode;
118
+ /** Custom icon for unchecked state */
119
+ icon?: React__default.ReactNode;
120
+ /** Custom styles for the Switch */
121
+ switchStyles?: SwitchProps["sx"];
122
+ /** Custom styles for FormControlLabel */
123
+ labelStyles?: FormControlLabelProps["sx"];
124
+ /** Custom styles for FormControl */
125
+ formControlStyles?: FormControlProps["sx"];
126
+ /** Callback fired when the value changes */
127
+ onChange?: (checked: boolean) => void;
128
+ /** Callback fired when switch is clicked */
129
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void;
130
+ /** Callback fired when switch receives focus */
131
+ onFocus?: SwitchProps["onFocus"];
132
+ /** Callback fired when switch loses focus */
133
+ onBlur?: SwitchProps["onBlur"];
134
+ /** Custom slot props for MUI v7 */
135
+ slotProps?: SwitchProps["slotProps"];
136
+ /** Custom slots for MUI v7 */
137
+ slots?: SwitchProps["slots"];
138
+ /** FormControlLabel props */
139
+ formControlLabelProps?: Omit<FormControlLabelProps, "control" | "label" | "checked">;
140
+ }
141
+ declare const SwitchField: React__default.ForwardRefExoticComponent<Omit<ISwitchFieldProps, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
142
+
143
+ /**
144
+ * Base option type for Radio Button Group
145
+ */
146
+ type RadioOption = {
147
+ name: string;
148
+ value: string | number;
149
+ disabled?: boolean;
150
+ [key: string]: unknown;
151
+ };
152
+ /**
153
+ * Error object type
154
+ */
155
+ type FieldError$h = {
156
+ message?: string;
157
+ } | null;
158
+ /**
159
+ * Extended Radio Button Group Props
160
+ * Extends MUI RadioGroupProps with custom form field props
161
+ */
162
+ interface IRadioButtonGroupFieldProps extends Omit<RadioGroupProps, "value" | "onChange" | "name" | "children" | "onFocus" | "onBlur" | "onClick"> {
163
+ /** Field name for form identification */
164
+ name?: string;
165
+ /** Label text for the radio group */
166
+ label?: React__default.ReactNode;
167
+ /** Current selected value */
168
+ value: string | number | null | undefined;
169
+ /** Options array to display as radio buttons */
170
+ options: RadioOption[];
171
+ /** Error object with optional message */
172
+ error?: FieldError$h;
173
+ /** Helper text to display below radio group */
174
+ helperText?: string;
175
+ /** Whether the field is disabled */
176
+ disabled?: boolean;
177
+ /** Radio color */
178
+ color?: RadioProps["color"];
179
+ /** Radio size */
180
+ size?: RadioProps["size"];
181
+ /** Full width of the field */
182
+ fullWidth?: boolean;
183
+ /** Required field indicator */
184
+ required?: boolean;
185
+ /** Label placement for each radio button */
186
+ labelPlacement?: FormControlLabelProps["labelPlacement"];
187
+ /** Row layout (horizontal) or column layout (vertical) */
188
+ row?: boolean;
189
+ /** Custom icon for checked state */
190
+ checkedIcon?: React__default.ReactNode;
191
+ /** Custom icon for unchecked state */
192
+ icon?: React__default.ReactNode;
193
+ /** Custom styles for individual Radio components */
194
+ radioStyles?: RadioProps["sx"];
195
+ /** Custom styles for FormControlLabel components */
196
+ labelStyles?: FormControlLabelProps["sx"];
197
+ /** Custom styles for FormControl */
198
+ formControlStyles?: FormControlProps["sx"];
199
+ /** Custom styles for FormLabel */
200
+ formLabelStyles?: FormLabelProps["sx"];
201
+ /** Custom styles for RadioGroup */
202
+ radioGroupStyles?: RadioGroupProps["sx"];
203
+ /** Custom render function for radio buttons */
204
+ renderRadio?: (option: RadioOption, index: number) => React__default.ReactNode;
205
+ /** Callback fired when the value changes */
206
+ onChange?: (value: string | number) => void;
207
+ /** Callback fired when a radio button is clicked */
208
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void;
209
+ /** Callback fired when a radio button receives focus */
210
+ onFocus?: RadioProps["onFocus"];
211
+ /** Callback fired when a radio button loses focus */
212
+ onBlur?: RadioProps["onBlur"];
213
+ /** Custom slot props for MUI v7 */
214
+ slotProps?: {
215
+ radio?: RadioProps["slotProps"];
216
+ formControlLabel?: FormControlLabelProps["slotProps"];
217
+ };
218
+ /** Custom slots for MUI v7 */
219
+ slots?: {
220
+ radio?: RadioProps["slots"];
221
+ formControlLabel?: FormControlLabelProps["slots"];
222
+ };
223
+ /** FormLabel props */
224
+ formLabelProps?: Omit<FormLabelProps, "children">;
225
+ /** FormControlLabel props */
226
+ formControlLabelProps?: Omit<FormControlLabelProps, "control" | "label" | "value">;
227
+ }
228
+ declare const RadioButtonFieldGroup: React__default.ForwardRefExoticComponent<Omit<IRadioButtonGroupFieldProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
229
+
230
+ /**
231
+ * Error object type
232
+ */
233
+ type FieldError$g = {
234
+ message?: string;
235
+ } | null;
236
+ /**
237
+ * Extended Radio Button Field Props
238
+ * Extends MUI RadioProps with custom form field props
239
+ */
240
+ interface IRadioButtonFieldProps extends Omit<RadioProps, "checked" | "onChange" | "name"> {
241
+ /** Field name for form identification */
242
+ name?: string;
243
+ /** Label text for the radio button */
244
+ label?: React__default.ReactNode;
245
+ /** Current checked state */
246
+ value: boolean;
247
+ /** Error object with optional message */
248
+ error?: FieldError$g;
249
+ /** Helper text to display below radio button */
250
+ helperText?: string;
251
+ /** Whether the field is disabled */
252
+ disabled?: boolean;
253
+ /** Radio color */
254
+ color?: RadioProps["color"];
255
+ /** Radio size */
256
+ size?: RadioProps["size"];
257
+ /** Full width of the field */
258
+ fullWidth?: boolean;
259
+ /** Required field indicator */
260
+ required?: boolean;
261
+ /** Label placement */
262
+ labelPlacement?: FormControlLabelProps["labelPlacement"];
263
+ /** Callback fired when the value changes */
264
+ onChange?: (checked: boolean) => void;
265
+ /** Callback fired when radio button is clicked */
266
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void;
267
+ /** Callback fired when radio button receives focus */
268
+ onFocus?: RadioProps["onFocus"];
269
+ /** Callback fired when radio button loses focus */
270
+ onBlur?: RadioProps["onBlur"];
271
+ /** Custom icon for checked state */
272
+ checkedIcon?: React__default.ReactNode;
273
+ /** Custom icon for unchecked state */
274
+ icon?: React__default.ReactNode;
275
+ /** Custom styles for the Radio */
276
+ radioStyles?: RadioProps["sx"];
277
+ /** Custom styles for FormControlLabel */
278
+ labelStyles?: FormControlLabelProps["sx"];
279
+ /** Custom styles for FormControl */
280
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
281
+ /** Custom slot props for MUI v7 */
282
+ slotProps?: RadioProps["slotProps"];
283
+ /** Custom slots for MUI v7 */
284
+ slots?: RadioProps["slots"];
285
+ /** FormControlLabel props */
286
+ formControlLabelProps?: Omit<FormControlLabelProps, "control" | "label" | "value">;
287
+ }
288
+ declare const RadioButtonField: React__default.ForwardRefExoticComponent<Omit<IRadioButtonFieldProps, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
289
+
290
+ /**
291
+ * Error object type
292
+ */
293
+ type FieldError$f = {
294
+ message?: string;
295
+ } | null;
296
+ /**
297
+ * Checkbox option type
298
+ */
299
+ type CheckboxOption = {
300
+ value: string | number;
301
+ label: React__default.ReactNode;
302
+ disabled?: boolean;
303
+ };
304
+ /**
305
+ * Extended Checkbox Group Field Props
306
+ */
307
+ interface ICheckboxFieldGroupProps extends Omit<FormControlProps, "error" | "disabled" | "required" | "fullWidth" | "color" | "size" | "onChange" | "onFocus" | "onBlur" | "onClick"> {
308
+ /** Field name for form identification */
309
+ name?: string;
310
+ /** Label text for the checkbox group */
311
+ label?: React__default.ReactNode;
312
+ /** Array of selected values */
313
+ value: (string | number)[];
314
+ /** Array of checkbox options */
315
+ options: CheckboxOption[];
316
+ /** Error object with optional message */
317
+ error?: FieldError$f;
318
+ /** Helper text to display below field */
319
+ helperText?: string;
320
+ /** Whether the field is disabled */
321
+ disabled?: boolean;
322
+ /** Full width of the field */
323
+ fullWidth?: boolean;
324
+ /** Required field indicator */
325
+ required?: boolean;
326
+ /** Checkbox color */
327
+ color?: CheckboxProps["color"];
328
+ /** Checkbox size */
329
+ size?: CheckboxProps["size"];
330
+ /** Label placement relative to checkbox */
331
+ labelPlacement?: FormControlLabelProps["labelPlacement"];
332
+ /** Whether to display checkboxes in a row */
333
+ row?: boolean;
334
+ /** Custom icon for checked state */
335
+ checkedIcon?: React__default.ReactNode;
336
+ /** Custom icon for unchecked state */
337
+ icon?: React__default.ReactNode;
338
+ /** Custom styles for individual checkboxes */
339
+ checkboxStyles?: CheckboxProps["sx"];
340
+ /** Custom styles for checkbox labels */
341
+ labelStyles?: FormControlLabelProps["sx"];
342
+ /** Custom styles for FormControl */
343
+ formControlStyles?: FormControlProps["sx"];
344
+ /** Custom styles for FormLabel */
345
+ formLabelStyles?: FormLabelProps["sx"];
346
+ /** Callback fired when the value changes */
347
+ onChange?: (value: (string | number)[]) => void;
348
+ /** Callback fired when a checkbox receives focus */
349
+ onFocus?: (event: FocusEvent<HTMLButtonElement>, value: string | number) => void;
350
+ /** Callback fired when a checkbox loses focus */
351
+ onBlur?: (event: FocusEvent<HTMLButtonElement>, value: string | number) => void;
352
+ /** Callback fired when a checkbox is clicked */
353
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>, value: string | number) => void;
354
+ /** Custom render function for checkboxes */
355
+ renderCheckbox?: (option: CheckboxOption, index: number, isChecked: boolean, handleChange: (event: ChangeEvent<HTMLInputElement>) => void) => React__default.ReactNode;
356
+ /** Custom slot props for MUI v7 */
357
+ slotProps?: {
358
+ checkbox?: CheckboxProps["slotProps"];
359
+ formControlLabel?: FormControlLabelProps["slotProps"];
360
+ };
361
+ /** Custom slots for MUI v7 */
362
+ slots?: {
363
+ checkbox?: CheckboxProps["slots"];
364
+ };
365
+ /** FormLabel props */
366
+ formLabelProps?: Omit<FormLabelProps, "children">;
367
+ /** FormControlLabel props */
368
+ formControlLabelProps?: Omit<FormControlLabelProps, "control" | "label" | "value">;
369
+ }
370
+ declare const CheckboxFieldGroup: React__default.ForwardRefExoticComponent<Omit<ICheckboxFieldGroupProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
371
+
372
+ /**
373
+ * Error object type
374
+ */
375
+ type FieldError$e = {
376
+ message?: string;
377
+ } | null;
378
+ /**
379
+ * Extended Checkbox Field Props
380
+ * Extends MUI CheckboxProps with custom form field props
381
+ */
382
+ interface ICheckboxFieldProps extends Omit<CheckboxProps, "checked" | "onChange" | "name"> {
383
+ /** Field name for form identification */
384
+ name?: string;
385
+ /** Label text for the checkbox */
386
+ label?: React__default.ReactNode;
387
+ /** Current checked state */
388
+ value: boolean;
389
+ /** Error object with optional message */
390
+ error?: FieldError$e;
391
+ /** Helper text to display below checkbox */
392
+ helperText?: string;
393
+ /** Whether the field is disabled */
394
+ disabled?: boolean;
395
+ /** Checkbox color */
396
+ color?: CheckboxProps["color"];
397
+ /** Checkbox size */
398
+ size?: CheckboxProps["size"];
399
+ /** Full width of the field */
400
+ fullWidth?: boolean;
401
+ /** Required field indicator */
402
+ required?: boolean;
403
+ /** Label placement */
404
+ labelPlacement?: FormControlLabelProps["labelPlacement"];
405
+ /** Callback fired when the value changes */
406
+ onChange?: (checked: boolean) => void;
407
+ /** Callback fired when checkbox is clicked */
408
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void;
409
+ /** Callback fired when checkbox receives focus */
410
+ onFocus?: CheckboxProps["onFocus"];
411
+ /** Callback fired when checkbox loses focus */
412
+ onBlur?: CheckboxProps["onBlur"];
413
+ /** Custom icon for checked state */
414
+ checkedIcon?: React__default.ReactNode;
415
+ /** Custom icon for unchecked state */
416
+ icon?: React__default.ReactNode;
417
+ /** Custom styles for the Checkbox */
418
+ checkboxStyles?: CheckboxProps["sx"];
419
+ /** Custom styles for FormControlLabel */
420
+ labelStyles?: FormControlLabelProps["sx"];
421
+ /** Custom styles for FormControl */
422
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
423
+ /** Indeterminate state */
424
+ indeterminate?: boolean;
425
+ /** Custom slot props for MUI v7 */
426
+ slotProps?: CheckboxProps["slotProps"];
427
+ /** Custom slots for MUI v7 */
428
+ slots?: CheckboxProps["slots"];
429
+ }
430
+ declare const CheckboxField: React__default.ForwardRefExoticComponent<Omit<ICheckboxFieldProps, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
431
+
432
+ /**
433
+ * Error object type
434
+ */
435
+ type FieldError$d = {
436
+ message?: string;
437
+ } | null;
438
+ /**
439
+ * Extended Date Calendar Field Props
440
+ * Extends MUI DateCalendarProps with custom form field props
441
+ */
442
+ interface IDateCalendarFieldProps extends Omit<DateCalendarProps, "value" | "onChange" | "defaultValue" | "slots" | "slotProps"> {
443
+ /** Field name for form identification */
444
+ name?: string;
445
+ /** Label text for the calendar */
446
+ label?: React__default.ReactNode;
447
+ /** Current selected date value */
448
+ value: Date | null;
449
+ /** Default date value */
450
+ defaultValue?: Date | null;
451
+ /** Error object with optional message */
452
+ error?: FieldError$d;
453
+ /** Helper text to display below calendar */
454
+ helperText?: string;
455
+ /** Whether the field is disabled */
456
+ disabled?: boolean;
457
+ /** Full width of the field */
458
+ fullWidth?: boolean;
459
+ /** Required field indicator */
460
+ required?: boolean;
461
+ /** Minimum selectable date */
462
+ minDate?: Date;
463
+ /** Maximum selectable date */
464
+ maxDate?: Date;
465
+ /** Function to disable specific dates */
466
+ shouldDisableDate?: (date: Date) => boolean;
467
+ /** Function to disable specific months */
468
+ shouldDisableMonth?: (month: Date) => boolean;
469
+ /** Function to disable specific years */
470
+ shouldDisableYear?: (year: Date) => boolean;
471
+ /** Custom styles for the DateCalendar */
472
+ calendarStyles?: DateCalendarProps["sx"];
473
+ /** Custom styles for FormControl */
474
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
475
+ /** Custom styles for FormLabel */
476
+ formLabelStyles?: FormLabelProps["sx"];
477
+ /** Custom styles for the container Box */
478
+ containerStyles?: React__default.ComponentProps<typeof Box>["sx"];
479
+ /** Callback fired when the date changes */
480
+ onChange?: (value: Date | null) => void;
481
+ /** Callback fired when a view change is requested */
482
+ onViewChange?: (view: "day" | "month" | "year") => void;
483
+ /** Callback fired when a month change is requested */
484
+ onMonthChange?: (month: Date) => void;
485
+ /** Callback fired when a year change is requested */
486
+ onYearChange?: (year: Date) => void;
487
+ /** Custom slot props for MUI v7 */
488
+ slotProps?: DateCalendarProps["slotProps"];
489
+ /** Custom slots for MUI v7 */
490
+ slots?: DateCalendarProps["slots"];
491
+ /** Date adapter to use (defaults to AdapterDateFns) */
492
+ dateAdapter?: typeof AdapterDateFns;
493
+ /** Whether to show days outside current month */
494
+ showDaysOutsideCurrentMonth?: boolean;
495
+ /** Whether to disable past dates */
496
+ disablePast?: boolean;
497
+ /** Whether to disable future dates */
498
+ disableFuture?: boolean;
499
+ /** Reference date for the calendar */
500
+ referenceDate?: Date;
501
+ /** Controlled view state */
502
+ view?: "day" | "month" | "year";
503
+ }
504
+ declare const DateCalendarField: React__default.ForwardRefExoticComponent<IDateCalendarFieldProps & React__default.RefAttributes<HTMLDivElement>>;
505
+
506
+ /**
507
+ * Error object type
508
+ */
509
+ type FieldError$c = {
510
+ message?: string;
511
+ } | null;
512
+ /**
513
+ * Extended Time Clock Field Props
514
+ * Extends MUI TimeClockProps with custom form field props
515
+ */
516
+ interface ITimeClockFieldProps extends Omit<TimeClockProps<TimeView>, "value" | "onChange" | "defaultValue" | "slots" | "slotProps" | "view" | "onViewChange"> {
517
+ /** Field name for form identification */
518
+ name?: string;
519
+ /** Label text for the time clock */
520
+ label?: React__default.ReactNode;
521
+ /** Current selected time value */
522
+ value: Date | null;
523
+ /** Default time value */
524
+ defaultValue?: Date | null;
525
+ /** Error object with optional message */
526
+ error?: FieldError$c;
527
+ /** Helper text to display below time clock */
528
+ helperText?: string;
529
+ /** Whether the field is disabled */
530
+ disabled?: boolean;
531
+ /** Full width of the field */
532
+ fullWidth?: boolean;
533
+ /** Required field indicator */
534
+ required?: boolean;
535
+ /** Available views (hours, minutes, seconds) */
536
+ views?: TimeView[];
537
+ /** Whether to show AM/PM in the clock */
538
+ ampmInClock?: boolean;
539
+ /** Whether to use 12-hour format */
540
+ ampm?: boolean;
541
+ /** Whether to disable past times */
542
+ disablePast?: boolean;
543
+ /** Whether to disable future times */
544
+ disableFuture?: boolean;
545
+ /** Minimum selectable time */
546
+ minTime?: Date;
547
+ /** Maximum selectable time */
548
+ maxTime?: Date;
549
+ /** Function to disable specific times */
550
+ shouldDisableTime?: (time: Date, view: TimeView) => boolean;
551
+ /** Custom styles for the TimeClock */
552
+ clockStyles?: TimeClockProps<TimeView>["sx"];
553
+ /** Custom styles for FormControl */
554
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
555
+ /** Custom styles for FormLabel */
556
+ formLabelStyles?: FormLabelProps["sx"];
557
+ /** Custom styles for the container Box */
558
+ containerStyles?: React__default.ComponentProps<typeof Box>["sx"];
559
+ /** Custom styles for the view buttons Stack */
560
+ buttonsStackStyles?: React__default.ComponentProps<typeof Stack>["sx"];
561
+ /** Custom styles for view buttons */
562
+ buttonStyles?: ButtonProps["sx"];
563
+ /** Custom styles for active view button */
564
+ activeButtonStyles?: ButtonProps["sx"];
565
+ /** Whether to show view selector buttons */
566
+ showViewButtons?: boolean;
567
+ /** Initial view */
568
+ initialView?: TimeView;
569
+ /** Controlled view state */
570
+ view?: TimeView;
571
+ /** Callback fired when the time changes */
572
+ onChange?: (value: Date | null) => void;
573
+ /** Callback fired when a view change is requested */
574
+ onViewChange?: (view: TimeView) => void;
575
+ /** Custom slot props for MUI v7 */
576
+ slotProps?: TimeClockProps<TimeView>["slotProps"];
577
+ /** Custom slots for MUI v7 */
578
+ slots?: TimeClockProps<TimeView>["slots"];
579
+ /** Date adapter to use (defaults to AdapterDateFns) */
580
+ dateAdapter?: typeof AdapterDateFns;
581
+ /** Auto focus */
582
+ autoFocus?: boolean;
583
+ }
584
+ declare const TimeClockField: React__default.ForwardRefExoticComponent<ITimeClockFieldProps & React__default.RefAttributes<HTMLDivElement>>;
585
+
586
+ /**
587
+ * Error object type
588
+ */
589
+ type FieldError$b = {
590
+ message?: string;
591
+ } | null;
592
+ /**
593
+ * Extended Time Picker Field Props
594
+ * Extends MUI TimePickerProps with custom form field props
595
+ */
596
+ interface ITimePickerFieldProps extends Omit<TimePickerProps, "value" | "onChange" | "defaultValue" | "slots" | "slotProps" | "renderInput" | "onViewChange"> {
597
+ /** Field name for form identification */
598
+ name?: string;
599
+ /** Label text for the time picker */
600
+ label?: string;
601
+ /** Current selected time value */
602
+ value: Date | null;
603
+ /** Default time value */
604
+ defaultValue?: Date | null;
605
+ /** Error object with optional message */
606
+ error?: FieldError$b;
607
+ /** Helper text to display below field */
608
+ helperText?: string;
609
+ /** Whether the field is disabled */
610
+ disabled?: boolean;
611
+ /** Full width of the field */
612
+ fullWidth?: boolean;
613
+ /** Required field indicator */
614
+ required?: boolean;
615
+ /** Minimum selectable time */
616
+ minTime?: Date;
617
+ /** Maximum selectable time */
618
+ maxTime?: Date;
619
+ /** Function to disable specific times */
620
+ shouldDisableTime?: (time: Date, view: "hours" | "minutes" | "seconds") => boolean;
621
+ /** TextField size */
622
+ size?: TextFieldProps["size"];
623
+ /** TextField variant */
624
+ variant?: TextFieldProps["variant"];
625
+ /** TextField color */
626
+ color?: TextFieldProps["color"];
627
+ /** Placeholder text */
628
+ placeholder?: string;
629
+ /** Whether the field is read-only */
630
+ readOnly?: boolean;
631
+ /** Whether to show clear button */
632
+ showClearButton?: boolean;
633
+ /** Whether to disable past times */
634
+ disablePast?: boolean;
635
+ /** Whether to disable future times */
636
+ disableFuture?: boolean;
637
+ /** Whether to use 12-hour format */
638
+ ampm?: boolean;
639
+ /** Available views (hours, minutes, seconds) */
640
+ views?: ("hours" | "minutes" | "seconds")[];
641
+ /** Controlled view state */
642
+ view?: "hours" | "minutes" | "seconds";
643
+ /** Default view */
644
+ openTo?: "hours" | "minutes" | "seconds";
645
+ /** Format for displaying the time */
646
+ format?: string;
647
+ /** Custom styles for the TimePicker */
648
+ pickerStyles?: TimePickerProps["sx"];
649
+ /** Custom styles for FormControl */
650
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
651
+ /** Custom styles for FormLabel */
652
+ formLabelStyles?: FormLabelProps["sx"];
653
+ /** Custom styles for the container Box */
654
+ containerStyles?: React__default.ComponentProps<typeof Box>["sx"];
655
+ /** Custom styles for the TextField */
656
+ textFieldStyles?: TextFieldProps["sx"];
657
+ /** Callback fired when the time changes */
658
+ onChange?: (value: Date | null) => void;
659
+ /** Callback fired when the field receives focus */
660
+ onFocus?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
661
+ /** Callback fired when the field loses focus */
662
+ onBlur?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
663
+ /** Callback fired when a view change is requested */
664
+ onViewChange?: (view: "hours" | "minutes" | "seconds" | "meridiem") => void;
665
+ /** Callback fired when the picker opens */
666
+ onOpen?: () => void;
667
+ /** Callback fired when the picker closes */
668
+ onClose?: () => void;
669
+ /** Custom slot props for MUI v7 */
670
+ slotProps?: TimePickerProps["slotProps"];
671
+ /** Custom slots for MUI v7 */
672
+ slots?: TimePickerProps["slots"];
673
+ /** Date adapter to use (defaults to AdapterDateFns) */
674
+ dateAdapter?: typeof AdapterDateFns;
675
+ /** Auto focus the input */
676
+ autoFocus?: boolean;
677
+ }
678
+ declare const TimePickerField: React__default.ForwardRefExoticComponent<ITimePickerFieldProps & React__default.RefAttributes<HTMLDivElement>>;
679
+
680
+ /**
681
+ * Error object type
682
+ */
683
+ type FieldError$a = {
684
+ message?: string;
685
+ } | null;
686
+ /**
687
+ * Extended Date Picker Field Props
688
+ * Extends MUI DatePickerProps with custom form field props
689
+ */
690
+ interface IDatePickerFieldProps extends Omit<DatePickerProps, "value" | "onChange" | "defaultValue" | "slots" | "slotProps" | "renderInput"> {
691
+ /** Field name for form identification */
692
+ name?: string;
693
+ /** Label text for the date picker */
694
+ label?: string;
695
+ /** Current selected date value */
696
+ value: Date | null;
697
+ /** Default date value */
698
+ defaultValue?: Date | null;
699
+ /** Error object with optional message */
700
+ error?: FieldError$a;
701
+ /** Helper text to display below field */
702
+ helperText?: string;
703
+ /** Whether the field is disabled */
704
+ disabled?: boolean;
705
+ /** Full width of the field */
706
+ fullWidth?: boolean;
707
+ /** Required field indicator */
708
+ required?: boolean;
709
+ /** Minimum selectable date */
710
+ minDate?: Date;
711
+ /** Maximum selectable date */
712
+ maxDate?: Date;
713
+ /** Function to disable specific dates */
714
+ shouldDisableDate?: (date: Date) => boolean;
715
+ /** Function to disable specific months */
716
+ shouldDisableMonth?: (month: Date) => boolean;
717
+ /** Function to disable specific years */
718
+ shouldDisableYear?: (year: Date) => boolean;
719
+ /** TextField size */
720
+ size?: TextFieldProps["size"];
721
+ /** TextField variant */
722
+ variant?: TextFieldProps["variant"];
723
+ /** TextField color */
724
+ color?: TextFieldProps["color"];
725
+ /** Placeholder text */
726
+ placeholder?: string;
727
+ /** Whether the field is read-only */
728
+ readOnly?: boolean;
729
+ /** Whether to show clear button */
730
+ showClearButton?: boolean;
731
+ /** Whether to disable past dates */
732
+ disablePast?: boolean;
733
+ /** Whether to disable future dates */
734
+ disableFuture?: boolean;
735
+ /** Reference date for the calendar */
736
+ referenceDate?: Date;
737
+ /** Controlled view state */
738
+ view?: "day" | "month" | "year";
739
+ /** Format for displaying the date */
740
+ format?: string;
741
+ /** Whether to open the calendar on focus */
742
+ openTo?: "day" | "month" | "year";
743
+ /** Custom styles for the DatePicker */
744
+ pickerStyles?: DatePickerProps["sx"];
745
+ /** Custom styles for FormControl */
746
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
747
+ /** Custom styles for FormLabel */
748
+ formLabelStyles?: FormLabelProps["sx"];
749
+ /** Custom styles for the container Box */
750
+ containerStyles?: React__default.ComponentProps<typeof Box>["sx"];
751
+ /** Custom styles for the TextField */
752
+ textFieldStyles?: TextFieldProps["sx"];
753
+ /** Callback fired when the date changes */
754
+ onChange?: (value: Date | null) => void;
755
+ /** Callback fired when the field receives focus */
756
+ onFocus?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
757
+ /** Callback fired when the field loses focus */
758
+ onBlur?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
759
+ /** Callback fired when a view change is requested */
760
+ onViewChange?: (view: "day" | "month" | "year") => void;
761
+ /** Callback fired when a month change is requested */
762
+ onMonthChange?: (month: Date) => void;
763
+ /** Callback fired when a year change is requested */
764
+ onYearChange?: (year: Date) => void;
765
+ /** Callback fired when the calendar opens */
766
+ onOpen?: () => void;
767
+ /** Callback fired when the calendar closes */
768
+ onClose?: () => void;
769
+ /** Custom slot props for MUI v7 */
770
+ slotProps?: DatePickerProps["slotProps"];
771
+ /** Custom slots for MUI v7 */
772
+ slots?: DatePickerProps["slots"];
773
+ /** Date adapter to use (defaults to AdapterDateFns) */
774
+ dateAdapter?: typeof AdapterDateFns;
775
+ /** Whether to reduce animations */
776
+ reduceAnimations?: boolean;
777
+ /** Auto focus the input */
778
+ autoFocus?: boolean;
779
+ }
780
+ declare const DatePickerField: React__default.ForwardRefExoticComponent<IDatePickerFieldProps & React__default.RefAttributes<HTMLDivElement>>;
781
+
782
+ /**
783
+ * Error object type
784
+ */
785
+ type FieldError$9 = {
786
+ message?: string;
787
+ } | null;
788
+ /**
789
+ * Extended File Upload Field Props
790
+ * Extends MUI TextFieldProps with custom file upload props
791
+ */
792
+ interface IFileUploadFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "onDrop"> {
793
+ /** Field name for form identification */
794
+ name?: string;
795
+ /** Label text for the file upload field */
796
+ label?: string;
797
+ /** Current file value */
798
+ value?: File | File[] | {
799
+ name: string;
800
+ } | null;
801
+ /** Error object with optional message */
802
+ error?: FieldError$9;
803
+ /** Helper text to display below field */
804
+ helperText?: string;
805
+ /** Whether the field is disabled */
806
+ disabled?: boolean;
807
+ /** File types to accept (e.g., "image/*", ".pdf,.doc") */
808
+ accept?: string;
809
+ /** Whether to allow multiple file selection */
810
+ multiple?: boolean;
811
+ /** Maximum file size in bytes */
812
+ maxSize?: number;
813
+ /** Minimum file size in bytes */
814
+ minSize?: number;
815
+ /** Allowed file types (MIME types or extensions) */
816
+ allowedTypes?: string[];
817
+ /** Whether to show file preview */
818
+ showPreview?: boolean;
819
+ /** Whether to enable drag and drop */
820
+ enableDragDrop?: boolean;
821
+ /** Placeholder text */
822
+ placeholder?: string;
823
+ /** TextField variant */
824
+ variant?: TextFieldProps["variant"];
825
+ /** TextField size */
826
+ size?: TextFieldProps["size"];
827
+ /** TextField color */
828
+ color?: TextFieldProps["color"];
829
+ /** Full width of the field */
830
+ fullWidth?: boolean;
831
+ /** Required field indicator */
832
+ required?: boolean;
833
+ /** Upload button text */
834
+ buttonText?: string;
835
+ /** Upload button variant */
836
+ buttonVariant?: ButtonProps["variant"];
837
+ /** Upload button color */
838
+ buttonColor?: ButtonProps["color"];
839
+ /** Upload button size */
840
+ buttonSize?: ButtonProps["size"];
841
+ /** Custom upload icon */
842
+ uploadIcon?: React__default.ReactNode;
843
+ /** Callback fired when file(s) change */
844
+ onChange?: (file: File | File[] | undefined) => void;
845
+ /** Callback fired when file is selected */
846
+ onFileSelect?: (file: File | File[] | undefined) => void;
847
+ /** Callback fired when file is removed */
848
+ onFileRemove?: () => void;
849
+ /** Callback fired on file validation error */
850
+ onValidationError?: (error: string) => void;
851
+ /** Callback fired when file is dropped (drag and drop) */
852
+ onDrop?: (files: FileList) => void;
853
+ /** Custom styles for the TextField */
854
+ inputStyles?: TextFieldProps["sx"];
855
+ /** Custom styles for the Button */
856
+ buttonStyles?: ButtonProps["sx"];
857
+ /** Custom styles for FormControl */
858
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
859
+ /** Custom styles for the container */
860
+ containerStyles?: React__default.CSSProperties;
861
+ /** Custom slot props for MUI v7 */
862
+ slotProps?: TextFieldProps["slotProps"];
863
+ /** Custom slots for MUI v7 */
864
+ slots?: TextFieldProps["slots"];
865
+ }
866
+ declare const FileUploadField: React__default.ForwardRefExoticComponent<Omit<IFileUploadFieldProps, "ref"> & React__default.RefAttributes<HTMLInputElement>>;
867
+
868
+ /**
869
+ * Error object type
870
+ */
871
+ type FieldError$8 = {
872
+ message?: string;
873
+ } | null;
874
+ /**
875
+ * Color format types
876
+ */
877
+ type ColorFormat = "hex" | "rgb" | "rgba" | "hsl" | "hsla";
878
+ /**
879
+ * Extended Color Picker Field Props
880
+ */
881
+ interface IColorPickerFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef" | "multiline" | "variant" | "size"> {
882
+ /** Field name for form identification */
883
+ name?: string;
884
+ /** Label text for the color picker field */
885
+ label?: string;
886
+ /** Current color value (hex string or color object) */
887
+ value: string;
888
+ /** Error object with optional message */
889
+ error?: FieldError$8;
890
+ /** Helper text to display below field */
891
+ helperText?: string;
892
+ /** Whether the field is disabled */
893
+ disabled?: boolean;
894
+ /** Placeholder text */
895
+ placeholder?: string;
896
+ /** TextField variant */
897
+ variant?: TextFieldProps["variant"];
898
+ /** TextField size */
899
+ size?: TextFieldProps["size"];
900
+ /** TextField color */
901
+ color?: TextFieldProps["color"];
902
+ /** Full width of the field */
903
+ fullWidth?: boolean;
904
+ /** Required field indicator */
905
+ required?: boolean;
906
+ /** Color format (hex, rgb, rgba, hsl, hsla) */
907
+ format?: ColorFormat;
908
+ /** Whether to show color preview swatch */
909
+ showPreview?: boolean;
910
+ /** Whether to show native color input */
911
+ showNativeInput?: boolean;
912
+ /** Whether to show popover picker */
913
+ showPopoverPicker?: boolean;
914
+ /** Preset colors to display */
915
+ presetColors?: string[];
916
+ /** Whether to show preset colors */
917
+ showPresetColors?: boolean;
918
+ /** Callback fired when the color changes */
919
+ onChange?: (value: string) => void;
920
+ /** Callback fired when field receives focus */
921
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
922
+ /** Callback fired when field loses focus */
923
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
924
+ /** Callback fired on Enter key press */
925
+ onEnterPress?: (value: string) => void;
926
+ /** Custom styles for the color preview swatch */
927
+ previewStyles?: React__default.CSSProperties;
928
+ /** Custom styles for FormControl */
929
+ formControlStyles?: FormControlProps["sx"];
930
+ /** Custom styles for TextField */
931
+ inputStyles?: TextFieldProps["sx"];
932
+ /** Custom slot props for MUI v7 */
933
+ slotProps?: TextFieldProps["slotProps"];
934
+ /** Custom slots for MUI v7 */
935
+ slots?: TextFieldProps["slots"];
936
+ }
937
+ declare const ColorPickerField: React__default.NamedExoticComponent<Omit<IColorPickerFieldProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
938
+
939
+ type AutoCompleteOption = {
940
+ name: string;
941
+ value: string | number;
942
+ [key: string]: unknown;
943
+ };
944
+ /**
945
+ * Error object type
946
+ */
947
+ type FieldError$7 = {
948
+ message?: string;
949
+ } | null;
950
+ /**
951
+ * Extended Autocomplete Input Props
952
+ * Extends MUI AutocompleteProps with custom form field props
953
+ */
954
+ interface IAutoCompleteInputProps<T extends AutoCompleteOption = AutoCompleteOption, Multiple extends boolean = false, DisableClearable extends boolean = false, FreeSolo extends boolean = false> extends Omit<AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>, "renderInput" | "options" | "value" | "onChange" | "getOptionLabel" | "isOptionEqualToValue" | "renderOption"> {
955
+ /** Field name for form identification */
956
+ name?: string;
957
+ /** Label text for the input field */
958
+ label?: string;
959
+ /** Current selected value */
960
+ value: Multiple extends true ? T[] : T | null;
961
+ /** Options array to display in dropdown */
962
+ options: T[];
963
+ /** Error object with optional message */
964
+ error?: FieldError$7;
965
+ /** Helper text to display below input */
966
+ helperText?: string;
967
+ /** Whether the field is disabled */
968
+ disabled?: boolean;
969
+ /** Placeholder text */
970
+ placeholder?: string;
971
+ /** TextField variant */
972
+ variant?: TextFieldProps["variant"];
973
+ /** TextField size */
974
+ size?: TextFieldProps["size"];
975
+ /** TextField color */
976
+ color?: TextFieldProps["color"];
977
+ /** Full width of the field */
978
+ fullWidth?: boolean;
979
+ /** Required field indicator */
980
+ required?: boolean;
981
+ /** Custom function to get option label (defaults to option.name) */
982
+ getOptionLabel?: (option: T | string) => string;
983
+ /** Custom function to check option equality (defaults to comparing option.name) */
984
+ isOptionEqualToValue?: (option: T, value: T) => boolean;
985
+ /** Custom render function for options */
986
+ renderOption?: (props: React__default.HTMLAttributes<HTMLLIElement>, option: T, state?: {
987
+ selected: boolean;
988
+ inputValue: string;
989
+ }) => React__default.ReactNode;
990
+ /** Callback fired when the value changes */
991
+ onChange?: (event: SyntheticEvent, newValue: Multiple extends true ? T[] : T | null, reason?: AutocompleteChangeReason) => void;
992
+ /** Callback fired when input value changes */
993
+ onInputChange?: (event: SyntheticEvent, newInputValue: string, reason: AutocompleteInputChangeReason) => void;
994
+ /** Callback fired when popup opens */
995
+ onOpen?: (event: SyntheticEvent) => void;
996
+ /** Callback fired when popup closes */
997
+ onClose?: (event: SyntheticEvent, reason: AutocompleteCloseReason) => void;
998
+ /** Custom icon for popup indicator */
999
+ popupIcon?: React__default.ReactNode;
1000
+ /** Custom styles for the TextField */
1001
+ inputStyles?: TextFieldProps["sx"];
1002
+ /** Custom styles for the Autocomplete */
1003
+ autocompleteStyles?: AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>["sx"];
1004
+ /** Custom styles for FormControl */
1005
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
1006
+ /** Whether to show loading state */
1007
+ loading?: boolean;
1008
+ /** Text to show when loading */
1009
+ loadingText?: React__default.ReactNode;
1010
+ /** Text to show when no options available */
1011
+ noOptionsText?: React__default.ReactNode;
1012
+ /** Text to show when options are being filtered */
1013
+ filterText?: string;
1014
+ /** Custom filter options function */
1015
+ filterOptions?: (options: T[], state: FilterOptionsState<T>) => T[];
1016
+ /** Whether to highlight the first option */
1017
+ autoHighlight?: boolean;
1018
+ /** Whether to select the first option on highlight */
1019
+ autoSelect?: boolean;
1020
+ /** Whether to disable portal rendering */
1021
+ disablePortal?: boolean;
1022
+ /** Whether to disable list wrapping */
1023
+ disableListWrap?: boolean;
1024
+ /** Custom slot props for MUI v7 */
1025
+ slotProps?: AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>["slotProps"];
1026
+ /** Custom slots for MUI v7 */
1027
+ slots?: AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>["slots"];
1028
+ }
1029
+ declare const AutoCompleteField: React__default.NamedExoticComponent<Omit<IAutoCompleteInputProps<AutoCompleteOption, boolean, boolean, boolean>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
1030
+
1031
+ /**
1032
+ * Base option type for Select
1033
+ */
1034
+ type SelectOption = {
1035
+ name: string;
1036
+ value: string | number;
1037
+ disabled?: boolean;
1038
+ [key: string]: unknown;
1039
+ };
1040
+ /**
1041
+ * Error object type
1042
+ */
1043
+ type FieldError$6 = {
1044
+ message?: string;
1045
+ } | null;
1046
+ /**
1047
+ * Extended Select Input Props
1048
+ * Extends MUI SelectProps with custom form field props
1049
+ */
1050
+ interface ISelectInputFieldProps extends Omit<SelectProps<string | number | (string | number)[]>, "value" | "onChange" | "name" | "error" | "children" | "renderValue"> {
1051
+ /** Field name for form identification */
1052
+ name?: string;
1053
+ /** Label text for the select field */
1054
+ label?: string;
1055
+ /** Current selected value(s) */
1056
+ value: string | number | (string | number)[] | "";
1057
+ /** Options array to display in dropdown */
1058
+ options: SelectOption[];
1059
+ /** Error object with optional message */
1060
+ error?: FieldError$6;
1061
+ /** Helper text to display below select */
1062
+ helperText?: string;
1063
+ /** Whether the field is disabled */
1064
+ disabled?: boolean;
1065
+ /** Select variant */
1066
+ variant?: SelectProps["variant"];
1067
+ /** Select size */
1068
+ size?: SelectProps["size"];
1069
+ /** Select color */
1070
+ color?: SelectProps["color"];
1071
+ /** Full width of the field */
1072
+ fullWidth?: boolean;
1073
+ /** Required field indicator */
1074
+ required?: boolean;
1075
+ /** Whether to allow multiple selections */
1076
+ multiple?: boolean;
1077
+ /** Custom icon for dropdown indicator */
1078
+ icon?: React__default.ReactNode;
1079
+ /** Custom render function for selected value(s) */
1080
+ renderValue?: SelectProps<string | number | (string | number)[]>["renderValue"];
1081
+ /** Custom render function for menu items */
1082
+ renderMenuItem?: (option: SelectOption, index: number) => React__default.ReactNode;
1083
+ /** Custom styles for MenuItem - can be static styles or a function that receives (option, index) */
1084
+ menuItemStyles?: MenuItemProps["sx"] | ((option: SelectOption, index: number) => MenuItemProps["sx"]);
1085
+ /** Custom styles for the Select */
1086
+ selectStyles?: SelectProps["sx"];
1087
+ /** Custom styles for FormControl */
1088
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
1089
+ /** Custom styles for InputLabel */
1090
+ labelStyles?: React__default.ComponentProps<typeof InputLabel>["sx"];
1091
+ /** Callback fired when the value changes */
1092
+ onChange?: (event: SelectChangeEvent<string | number | (string | number)[]>, child?: React__default.ReactNode) => void;
1093
+ /** Callback fired when menu opens */
1094
+ onOpen?: (event: SyntheticEvent) => void;
1095
+ /** Callback fired when menu closes */
1096
+ onClose?: (event: SyntheticEvent) => void;
1097
+ /** Custom slot props for MUI v7 */
1098
+ slotProps?: SelectProps["slotProps"];
1099
+ /** Custom slots for MUI v7 */
1100
+ slots?: SelectProps["slots"];
1101
+ /** Display empty value */
1102
+ displayEmpty?: boolean;
1103
+ /** Auto width for menu */
1104
+ autoWidth?: boolean;
1105
+ /** Native select element */
1106
+ native?: boolean;
1107
+ /** Menu props */
1108
+ MenuProps?: SelectProps["MenuProps"];
1109
+ }
1110
+ declare const SelectInputField: React__default.ForwardRefExoticComponent<Omit<ISelectInputFieldProps, "ref"> & React__default.RefAttributes<HTMLInputElement>>;
1111
+
1112
+ /**
1113
+ * Error object type
1114
+ */
1115
+ type FieldError$5 = {
1116
+ message?: string;
1117
+ } | null;
1118
+ /**
1119
+ * Extended OTP Input Field Props
1120
+ */
1121
+ interface IOTPInputFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef" | "multiline" | "variant" | "size"> {
1122
+ /** Field name for form identification */
1123
+ name?: string;
1124
+ /** Label text for the OTP field */
1125
+ label?: string;
1126
+ /** Current OTP value (string of digits) */
1127
+ value: string;
1128
+ /** Error object with optional message */
1129
+ error?: FieldError$5;
1130
+ /** Helper text to display below field */
1131
+ helperText?: string;
1132
+ /** Whether the field is disabled */
1133
+ disabled?: boolean;
1134
+ /** Number of OTP input boxes (default: 6) */
1135
+ length?: number;
1136
+ /** TextField variant */
1137
+ variant?: TextFieldProps["variant"];
1138
+ /** TextField size */
1139
+ size?: TextFieldProps["size"];
1140
+ /** TextField color */
1141
+ color?: TextFieldProps["color"];
1142
+ /** Full width of the field */
1143
+ fullWidth?: boolean;
1144
+ /** Required field indicator */
1145
+ required?: boolean;
1146
+ /** Spacing between OTP boxes */
1147
+ spacing?: number;
1148
+ /** Whether to auto-focus first input on mount */
1149
+ autoFocus?: boolean;
1150
+ /** Whether to auto-submit when all boxes are filled */
1151
+ autoSubmit?: boolean;
1152
+ /** Callback fired when the value changes */
1153
+ onChange?: (value: string) => void;
1154
+ /** Callback fired when all OTP boxes are filled */
1155
+ onComplete?: (value: string) => void;
1156
+ /** Callback fired when field receives focus */
1157
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1158
+ /** Callback fired when field loses focus */
1159
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1160
+ /** Callback fired on Enter key press */
1161
+ onEnterPress?: (value: string) => void;
1162
+ /** Custom styles for the OTP container */
1163
+ containerStyles?: React__default.CSSProperties;
1164
+ /** Custom styles for individual OTP input boxes */
1165
+ inputStyles?: TextFieldProps["sx"];
1166
+ /** Custom styles for FormControl */
1167
+ formControlStyles?: FormControlProps["sx"];
1168
+ /** Custom slot props for MUI v7 */
1169
+ slotProps?: TextFieldProps["slotProps"];
1170
+ /** Custom slots for MUI v7 */
1171
+ slots?: TextFieldProps["slots"];
1172
+ }
1173
+ declare const OTPField: React__default.ForwardRefExoticComponent<Omit<IOTPInputFieldProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
1174
+
1175
+ /**
1176
+ * Error object type
1177
+ */
1178
+ type FieldError$4 = {
1179
+ message?: string;
1180
+ } | null;
1181
+ /**
1182
+ * Extended Search Input Field Props
1183
+ * Extends MUI TextFieldProps with custom search field props
1184
+ */
1185
+ interface ISearchInputFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef"> {
1186
+ /** Field name for form identification */
1187
+ name?: string;
1188
+ /** Label text for the search field */
1189
+ label?: string;
1190
+ /** Current search value */
1191
+ value: string;
1192
+ /** Error object with optional message */
1193
+ error?: FieldError$4;
1194
+ /** Helper text to display below field */
1195
+ helperText?: string;
1196
+ /** Whether the field is disabled */
1197
+ disabled?: boolean;
1198
+ /** Placeholder text */
1199
+ placeholder?: string;
1200
+ /** TextField variant */
1201
+ variant?: TextFieldProps["variant"];
1202
+ /** TextField size */
1203
+ size?: TextFieldProps["size"];
1204
+ /** TextField color */
1205
+ color?: TextFieldProps["color"];
1206
+ /** Full width of the field */
1207
+ fullWidth?: boolean;
1208
+ /** Required field indicator */
1209
+ required?: boolean;
1210
+ /** Whether to show clear button */
1211
+ showClearButton?: boolean;
1212
+ /** Whether to show search button */
1213
+ showSearchButton?: boolean;
1214
+ /** Custom clear icon */
1215
+ clearIcon?: React__default.ReactNode;
1216
+ /** Custom search icon */
1217
+ searchIcon?: React__default.ReactNode;
1218
+ /** Custom icon button props for clear button */
1219
+ clearButtonProps?: IconButtonProps;
1220
+ /** Custom icon button props for search button */
1221
+ searchButtonProps?: IconButtonProps;
1222
+ /** Callback fired when the value changes */
1223
+ onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
1224
+ /** Callback fired when field receives focus */
1225
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1226
+ /** Callback fired when field loses focus */
1227
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1228
+ /** Callback fired when search button is clicked */
1229
+ onSearch?: (value: string) => void;
1230
+ /** Callback fired when clear button is clicked */
1231
+ onClear?: () => void;
1232
+ /** Callback fired on Enter key press */
1233
+ onEnterPress?: (value: string) => void;
1234
+ /** Enable debounce for search (default: true) */
1235
+ enableDebounce?: boolean;
1236
+ /** Debounce delay in milliseconds (default: 300) */
1237
+ debounceDelay?: number;
1238
+ /** Enable throttle for search (default: false) */
1239
+ enableThrottle?: boolean;
1240
+ /** Throttle delay in milliseconds (default: 300) */
1241
+ throttleDelay?: number;
1242
+ /** Custom styles for the TextField */
1243
+ inputStyles?: TextFieldProps["sx"];
1244
+ /** Custom styles for FormControl */
1245
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
1246
+ /** Custom slot props for MUI v7 */
1247
+ slotProps?: TextFieldProps["slotProps"];
1248
+ /** Custom slots for MUI v7 */
1249
+ slots?: TextFieldProps["slots"];
1250
+ }
1251
+ declare const SearchField: React__default.NamedExoticComponent<Omit<ISearchInputFieldProps, "ref"> & React__default.RefAttributes<HTMLInputElement>>;
1252
+
1253
+ /**
1254
+ * Error object type
1255
+ */
1256
+ type FieldError$3 = {
1257
+ message?: string;
1258
+ } | null;
1259
+ /**
1260
+ * Extended Tel Input Field Props
1261
+ * Extends MUI TextFieldProps with custom tel field props
1262
+ */
1263
+ interface ITelInputFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef"> {
1264
+ /** Field name for form identification */
1265
+ name?: string;
1266
+ /** Label text for the tel field */
1267
+ label?: string;
1268
+ /** Current tel value (digits only, formatting is handled internally) */
1269
+ value: string;
1270
+ /** Error object with optional message */
1271
+ error?: FieldError$3;
1272
+ /** Helper text to display below field */
1273
+ helperText?: string;
1274
+ /** Whether the field is disabled */
1275
+ disabled?: boolean;
1276
+ /** Placeholder text (auto-generated from pattern if not provided) */
1277
+ placeholder?: string;
1278
+ /** TextField variant */
1279
+ variant?: TextFieldProps["variant"];
1280
+ /** TextField size */
1281
+ size?: TextFieldProps["size"];
1282
+ /** TextField color */
1283
+ color?: TextFieldProps["color"];
1284
+ /** Full width of the field */
1285
+ fullWidth?: boolean;
1286
+ /** Required field indicator */
1287
+ required?: boolean;
1288
+ /** Pattern string (e.g., "XXX-XXXX" where X represents digits) */
1289
+ pattern?: string;
1290
+ /** Maximum length (defaults to pattern length if pattern provided) */
1291
+ maxLength?: number;
1292
+ /** Country code to display */
1293
+ countryCode?: string;
1294
+ /** Whether to show country code */
1295
+ showCountryCode?: boolean;
1296
+ /** Start adornment (icon or element before input) */
1297
+ startAdornment?: React__default.ReactNode;
1298
+ /** End adornment (icon or element after input) */
1299
+ endAdornment?: React__default.ReactNode;
1300
+ /** Callback fired when the value changes (returns digits only) */
1301
+ onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
1302
+ /** Callback fired when field receives focus */
1303
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1304
+ /** Callback fired when field loses focus */
1305
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1306
+ /** Callback fired on Enter key press */
1307
+ onEnterPress?: (value: string) => void;
1308
+ /** Custom styles for the TextField */
1309
+ inputStyles?: TextFieldProps["sx"];
1310
+ /** Custom styles for FormControl */
1311
+ formControlStyles?: FormControlProps["sx"];
1312
+ /** Custom styles for country code display */
1313
+ countryCodeStyles?: React__default.CSSProperties;
1314
+ /** Custom slot props for MUI v7 */
1315
+ slotProps?: TextFieldProps["slotProps"];
1316
+ /** Custom slots for MUI v7 */
1317
+ slots?: TextFieldProps["slots"];
1318
+ }
1319
+ declare const TeliField: React__default.NamedExoticComponent<Omit<ITelInputFieldProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
1320
+
1321
+ /**
1322
+ * Error object type
1323
+ */
1324
+ type FieldError$2 = {
1325
+ message?: string;
1326
+ } | null;
1327
+ /**
1328
+ * Number pattern types
1329
+ */
1330
+ type NumberPattern = "phone" | "credit-card" | "currency" | "ssn" | "zip-code" | "decimal" | "integer" | "percentage" | "custom";
1331
+ /**
1332
+ * Extended Number Input Field Props
1333
+ * Extends MUI TextFieldProps with custom number field props
1334
+ */
1335
+ interface INumberInputFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef"> {
1336
+ /** Field name for form identification */
1337
+ name?: string;
1338
+ /** Label text for the number field */
1339
+ label?: string;
1340
+ /** Current number value (as string to support formatted values) */
1341
+ value: string;
1342
+ /** Error object with optional message */
1343
+ error?: FieldError$2;
1344
+ /** Helper text to display below field */
1345
+ helperText?: string;
1346
+ /** Whether the field is disabled */
1347
+ disabled?: boolean;
1348
+ /** Placeholder text */
1349
+ placeholder?: string;
1350
+ /** TextField variant */
1351
+ variant?: TextFieldProps["variant"];
1352
+ /** TextField size */
1353
+ size?: TextFieldProps["size"];
1354
+ /** TextField color */
1355
+ color?: TextFieldProps["color"];
1356
+ /** Full width of the field */
1357
+ fullWidth?: boolean;
1358
+ /** Required field indicator */
1359
+ required?: boolean;
1360
+ /** Number pattern type or pattern string (e.g., "XXX-XXXX" where X represents digits) */
1361
+ pattern?: NumberPattern | string;
1362
+ /** Custom regex pattern (used when pattern is "custom") */
1363
+ customPattern?: RegExp;
1364
+ /** Custom formatter function */
1365
+ customFormatter?: (value: string) => string;
1366
+ /** Minimum value */
1367
+ min?: number;
1368
+ /** Maximum value */
1369
+ max?: number;
1370
+ /** Step value for number input */
1371
+ step?: number;
1372
+ /** Allow decimal numbers (for decimal pattern) */
1373
+ allowDecimals?: boolean;
1374
+ /** Number of decimal places */
1375
+ decimalPlaces?: number;
1376
+ /** Start adornment (icon or element before input) */
1377
+ startAdornment?: React__default.ReactNode;
1378
+ /** End adornment (icon or element after input) */
1379
+ endAdornment?: React__default.ReactNode;
1380
+ /** Callback fired when the value changes (returns formatted string) */
1381
+ onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
1382
+ /** Callback fired when field receives focus */
1383
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1384
+ /** Callback fired when field loses focus */
1385
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1386
+ /** Callback fired on Enter key press */
1387
+ onEnterPress?: (value: string) => void;
1388
+ /** Custom styles for the TextField */
1389
+ inputStyles?: TextFieldProps["sx"];
1390
+ /** Custom styles for FormControl */
1391
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
1392
+ /** Custom slot props for MUI v7 */
1393
+ slotProps?: TextFieldProps["slotProps"];
1394
+ /** Custom slots for MUI v7 */
1395
+ slots?: TextFieldProps["slots"];
1396
+ }
1397
+ declare const NumberField: React__default.NamedExoticComponent<Omit<INumberInputFieldProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
1398
+
1399
+ /**
1400
+ * Error object type
1401
+ */
1402
+ type FieldError$1 = {
1403
+ message?: string;
1404
+ } | null;
1405
+ /**
1406
+ * Password strength level
1407
+ */
1408
+ type PasswordStrength = "weak" | "medium" | "strong" | "very-strong";
1409
+ /**
1410
+ * Extended Password Field Props
1411
+ * Extends MUI TextFieldProps with custom password field props
1412
+ */
1413
+ interface IPasswordFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef"> {
1414
+ /** Field name for form identification */
1415
+ name?: string;
1416
+ /** Label text for the password field */
1417
+ label?: string;
1418
+ /** Current password value */
1419
+ value: string;
1420
+ /** Error object with optional message */
1421
+ error?: FieldError$1;
1422
+ /** Helper text to display below field */
1423
+ helperText?: string;
1424
+ /** Whether the field is disabled */
1425
+ disabled?: boolean;
1426
+ /** Placeholder text */
1427
+ placeholder?: string;
1428
+ /** TextField variant */
1429
+ variant?: TextFieldProps["variant"];
1430
+ /** TextField size */
1431
+ size?: TextFieldProps["size"];
1432
+ /** TextField color */
1433
+ color?: TextFieldProps["color"];
1434
+ /** Full width of the field */
1435
+ fullWidth?: boolean;
1436
+ /** Required field indicator */
1437
+ required?: boolean;
1438
+ /** Whether to show password strength indicator */
1439
+ showPasswordStrength?: boolean;
1440
+ /** Minimum password length */
1441
+ minLength?: number;
1442
+ /** Maximum password length */
1443
+ maxLength?: number;
1444
+ /** Whether to show password by default */
1445
+ defaultShowPassword?: boolean;
1446
+ /** Custom visibility toggle icon (when password is visible) */
1447
+ visibilityIcon?: React__default.ReactNode;
1448
+ /** Custom visibility off icon (when password is hidden) */
1449
+ visibilityOffIcon?: React__default.ReactNode;
1450
+ /** Custom icon button props */
1451
+ iconButtonProps?: IconButtonProps;
1452
+ /** Callback fired when the value changes */
1453
+ onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
1454
+ /** Callback fired when field receives focus */
1455
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1456
+ /** Callback fired when field loses focus */
1457
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1458
+ /** Callback fired when password visibility toggles */
1459
+ onVisibilityToggle?: (isVisible: boolean) => void;
1460
+ /** Custom function to calculate password strength */
1461
+ getPasswordStrength?: (password: string) => PasswordStrength;
1462
+ /** Custom styles for the TextField */
1463
+ inputStyles?: TextFieldProps["sx"];
1464
+ /** Custom styles for FormControl */
1465
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
1466
+ /** Custom slot props for MUI v7 */
1467
+ slotProps?: TextFieldProps["slotProps"];
1468
+ /** Custom slots for MUI v7 */
1469
+ slots?: TextFieldProps["slots"];
1470
+ }
1471
+ declare const PasswordField: React__default.NamedExoticComponent<Omit<IPasswordFieldProps, "ref"> & React__default.RefAttributes<HTMLInputElement>>;
1472
+
1473
+ /**
1474
+ * Error object type
1475
+ */
1476
+ type FieldError = {
1477
+ message?: string;
1478
+ } | null;
1479
+ /**
1480
+ * Resize options for textarea
1481
+ */
1482
+ type ResizeOption = "none" | "both" | "horizontal" | "vertical";
1483
+ /**
1484
+ * Extended Text Input Field Props
1485
+ * Extends MUI TextFieldProps with custom text field props
1486
+ */
1487
+ interface ITextInputFieldProps extends Omit<TextFieldProps, "value" | "onChange" | "name" | "type" | "error" | "inputRef" | "multiline"> {
1488
+ /** Field name for form identification */
1489
+ name?: string;
1490
+ /** Label text for the text field */
1491
+ label?: string;
1492
+ /** Current text value */
1493
+ value: string;
1494
+ /** Error object with optional message */
1495
+ error?: FieldError;
1496
+ /** Helper text to display below field */
1497
+ helperText?: string;
1498
+ /** Whether the field is disabled */
1499
+ disabled?: boolean;
1500
+ /** Placeholder text */
1501
+ placeholder?: string;
1502
+ /** TextField variant */
1503
+ variant?: TextFieldProps["variant"];
1504
+ /** TextField size */
1505
+ size?: TextFieldProps["size"];
1506
+ /** TextField color */
1507
+ color?: TextFieldProps["color"];
1508
+ /** Full width of the field */
1509
+ fullWidth?: boolean;
1510
+ /** Required field indicator */
1511
+ required?: boolean;
1512
+ /** Whether to enable multiline input (textarea) */
1513
+ multiline?: boolean;
1514
+ /** Number of rows for multiline input */
1515
+ rows?: number;
1516
+ /** Minimum number of rows for multiline input */
1517
+ minRows?: number;
1518
+ /** Maximum number of rows for multiline input */
1519
+ maxRows?: number;
1520
+ /** Resize option for textarea (none, both, horizontal, vertical) */
1521
+ resize?: ResizeOption;
1522
+ /** Maximum length of input */
1523
+ maxLength?: number;
1524
+ /** Minimum length of input */
1525
+ minLength?: number;
1526
+ /** Input type (text, email, number, tel, url, etc.) */
1527
+ type?: string;
1528
+ /** Auto complete attribute */
1529
+ autoComplete?: string;
1530
+ /** Start adornment (icon or element before input) */
1531
+ startAdornment?: React__default.ReactNode;
1532
+ /** End adornment (icon or element after input) */
1533
+ endAdornment?: React__default.ReactNode;
1534
+ /** Callback fired when the value changes */
1535
+ onChange?: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
1536
+ /** Callback fired when field receives focus */
1537
+ onFocus?: (event: FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
1538
+ /** Callback fired when field loses focus */
1539
+ onBlur?: (event: FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
1540
+ /** Callback fired on Enter key press */
1541
+ onEnterPress?: (value: string) => void;
1542
+ /** Custom styles for the TextField */
1543
+ inputStyles?: TextFieldProps["sx"];
1544
+ /** Custom styles for FormControl */
1545
+ formControlStyles?: React__default.ComponentProps<typeof FormControl>["sx"];
1546
+ /** Custom slot props for MUI v7 */
1547
+ slotProps?: TextFieldProps["slotProps"];
1548
+ /** Custom slots for MUI v7 */
1549
+ slots?: TextFieldProps["slots"];
1550
+ }
1551
+ declare const TextInputField: React__default.NamedExoticComponent<Omit<ITextInputFieldProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
1552
+
1553
+ /**
1554
+ * Base option type for dropdown fields
1555
+ */
1556
+ type Option = {
1557
+ name: string;
1558
+ value: number | string;
1559
+ disabled?: boolean;
1560
+ [key: string]: unknown;
1561
+ };
1562
+ /**
1563
+ * Base interface for all HookForm field components
1564
+ */
1565
+ interface IFormInputFields<TFieldValues extends FieldValues = FieldValues> {
1566
+ /** Field name for form identification */
1567
+ name: string;
1568
+ /** Label text for the field */
1569
+ label?: string;
1570
+ /** React Hook Form control object */
1571
+ control: Control<TFieldValues>;
1572
+ /** React Hook Form errors object */
1573
+ errors: FieldErrors<TFieldValues>;
1574
+ /** Default value for the field */
1575
+ defaultValue?: any;
1576
+ /** Placeholder text */
1577
+ placeholder?: string;
1578
+ /** Field size */
1579
+ size?: TextFieldPropsSizeOverrides;
1580
+ /** Whether the field is disabled */
1581
+ disabled?: boolean;
1582
+ /** Whether the field is required */
1583
+ required?: boolean;
1584
+ /** Full width of the field */
1585
+ fullWidth?: boolean;
1586
+ /** Custom styles for input */
1587
+ inputStyles?: SxProps<Theme>;
1588
+ /** Custom styles */
1589
+ sx?: SxProps<Theme>;
1590
+ /** Custom slot props for MUI v7 */
1591
+ slotProps?: any;
1592
+ /** Custom slots for MUI v7 */
1593
+ slots?: any;
1594
+ /** Callback fired when the value changes - allows manual updates/actions */
1595
+ onChange?: (value: any) => void;
1596
+ /** Additional props */
1597
+ [key: string]: any;
1598
+ }
1599
+ /**
1600
+ * Interface for fields with options (Select, AutoComplete, etc.)
1601
+ */
1602
+ interface IFormInputFieldsWithOptions<TFieldValues extends FieldValues = FieldValues> extends IFormInputFields<TFieldValues> {
1603
+ /** Options array for dropdown fields */
1604
+ options?: Option[];
1605
+ /** Limit number of tags displayed (for multi-select) */
1606
+ limitTags?: number;
1607
+ /** Custom render function for options */
1608
+ renderOption?: any;
1609
+ /** Custom function to get option label */
1610
+ getOptionLabel?: any;
1611
+ /** Whether to render single option */
1612
+ isRenderSingle?: boolean;
1613
+ /** Custom render function for option value */
1614
+ renderOptionValue?: any;
1615
+ /** Whether to disable checkbox in multi-select */
1616
+ disableCheckBox?: boolean;
1617
+ /** Whether to filter selected options */
1618
+ filterSelectedOptions?: boolean;
1619
+ }
1620
+ /**
1621
+ * Interface for date/time picker fields
1622
+ */
1623
+ interface IFormInputDateFields<TFieldValues extends FieldValues = FieldValues> extends IFormInputFields<TFieldValues> {
1624
+ /** Default date value */
1625
+ defaultValue?: Date | null;
1626
+ /** Minimum selectable date */
1627
+ minDate?: Date;
1628
+ /** Maximum selectable date */
1629
+ maxDate?: Date;
1630
+ /** Whether the field is read-only */
1631
+ readOnly?: boolean;
1632
+ /** Timezone setting */
1633
+ timezone?: any;
1634
+ /** Whether to use 12-hour format (AM/PM) */
1635
+ ampm?: boolean;
1636
+ /** Views to show in picker */
1637
+ views?: TimeView[];
1638
+ /** Whether to show AM/PM in clock */
1639
+ ampmInClock?: boolean;
1640
+ /** Whether to disable past dates */
1641
+ disablePast?: boolean;
1642
+ /** Custom function to disable specific dates */
1643
+ shouldDisableDate?: (date: Date) => boolean;
1644
+ }
1645
+ /**
1646
+ * Interface for number input fields
1647
+ */
1648
+ interface IFormInputNumberFields<TFieldValues extends FieldValues = FieldValues> extends IFormInputFields<TFieldValues> {
1649
+ /** Number pattern type or custom pattern string */
1650
+ pattern?: string;
1651
+ /** Minimum value */
1652
+ min?: number;
1653
+ /** Maximum value */
1654
+ max?: number;
1655
+ /** Step value */
1656
+ step?: number;
1657
+ /** Allow decimal numbers */
1658
+ allowDecimals?: boolean;
1659
+ /** Number of decimal places */
1660
+ decimalPlaces?: number;
1661
+ }
1662
+ /**
1663
+ * Interface for text area fields
1664
+ */
1665
+ interface IFormInputTextAreaFields<TFieldValues extends FieldValues = FieldValues> extends IFormInputFields<TFieldValues> {
1666
+ /** Number of rows */
1667
+ rows?: number;
1668
+ /** Minimum number of rows */
1669
+ minRows?: number;
1670
+ /** Maximum number of rows */
1671
+ maxRows?: number;
1672
+ /** Resize option */
1673
+ resize?: "none" | "both" | "horizontal" | "vertical";
1674
+ }
1675
+ /**
1676
+ * Interface for radio button fields (single)
1677
+ */
1678
+ interface IFormInputRadioFields<TFieldValues extends FieldValues = FieldValues> extends IFormInputFields<TFieldValues> {
1679
+ /** Current checked state */
1680
+ checked?: boolean;
1681
+ /** Radio color */
1682
+ color?: "default" | "primary" | "secondary" | "error" | "info" | "success" | "warning";
1683
+ /** Label placement */
1684
+ labelPlacement?: "end" | "start" | "top" | "bottom";
1685
+ }
1686
+ /**
1687
+ * Interface for checkbox group fields
1688
+ */
1689
+ interface IFormInputCheckBoxGroupFields<TFieldValues extends FieldValues = FieldValues> extends IFormInputFieldsWithOptions<TFieldValues> {
1690
+ /** Whether to display checkboxes in a row */
1691
+ row?: boolean;
1692
+ /** Checkbox color */
1693
+ color?: "default" | "primary" | "secondary" | "error" | "info" | "success" | "warning";
1694
+ /** Label placement */
1695
+ labelPlacement?: "end" | "start" | "top" | "bottom";
1696
+ }
1697
+
1698
+ declare const FormInputTextField: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1699
+
1700
+ declare const FormInputTextArea: React__default.MemoExoticComponent<({ name, label, control, errors, rows, minRows, maxRows, resize, defaultValue, onChange, ...props }: IFormInputTextAreaFields) => react_jsx_runtime.JSX.Element>;
1701
+
1702
+ declare const FormInputPasswordField: React__default.MemoExoticComponent<({ name, label, control, errors, size, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1703
+
1704
+ declare const FormInputNumberField: React__default.MemoExoticComponent<({ name, label, control, errors, pattern, min, max, step, allowDecimals, decimalPlaces, defaultValue, onChange, ...props }: IFormInputNumberFields) => react_jsx_runtime.JSX.Element>;
1705
+
1706
+ declare const FormInputTelField: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1707
+
1708
+ declare const FormInputSearchField: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1709
+
1710
+ declare const FormInputOTPField: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1711
+
1712
+ declare const FormInputSelect: React__default.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1713
+
1714
+ declare const FormInputMultiSelect: React__default.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1715
+
1716
+ declare const FormInputAutoComplete: React__default.MemoExoticComponent<({ name, label, control, errors, options, disabled, placeholder, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1717
+
1718
+ declare const FormInputMultiAutoComplete: React__default.MemoExoticComponent<({ name, label, control, errors, options, disabled, placeholder, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1719
+
1720
+ declare const FormInputColorPicker: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1721
+
1722
+ declare const FormInputFileUpload: React__default.MemoExoticComponent<({ name, label, control, errors, size, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1723
+
1724
+ declare const FormInputDatePicker: React__default.MemoExoticComponent<({ name, label, control, errors, size, readOnly, shouldDisableDate, disabled, placeholder, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1725
+
1726
+ declare const FormInputTimePicker: React__default.MemoExoticComponent<({ name, label, control, errors, ampm, timezone, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1727
+
1728
+ declare const FormInputTimeClock: React__default.MemoExoticComponent<({ name, label, control, errors, readOnly, disabled, ampm, views, ampmInClock, disablePast, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1729
+
1730
+ declare const FormInputCalendar: React__default.MemoExoticComponent<({ name, label, control, errors, readOnly, disabled, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1731
+
1732
+ declare const FormInputCheckBox: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1733
+
1734
+ declare const FormInputCheckBoxGroup: React__default.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, row, color, labelPlacement, ...props }: IFormInputCheckBoxGroupFields) => react_jsx_runtime.JSX.Element>;
1735
+
1736
+ declare const FormInputSwitch: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1737
+
1738
+ declare const FormInputSlider: React__default.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1739
+
1740
+ declare const FormInputRadioButton: React__default.MemoExoticComponent<({ name, label, control, errors, checked, defaultValue, onChange, color, labelPlacement, ...props }: IFormInputRadioFields) => react_jsx_runtime.JSX.Element>;
1741
+
1742
+ declare const FormInputRadioButtonGroup: React__default.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1743
+
1744
+ declare const FormFields: {
1745
+ FormInputTextField: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1746
+ FormInputTextArea: React.MemoExoticComponent<({ name, label, control, errors, rows, minRows, maxRows, resize, defaultValue, onChange, ...props }: IFormInputTextAreaFields) => react_jsx_runtime.JSX.Element>;
1747
+ FormInputPasswordField: React.MemoExoticComponent<({ name, label, control, errors, size, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1748
+ FormInputNumberField: React.MemoExoticComponent<({ name, label, control, errors, pattern, min, max, step, allowDecimals, decimalPlaces, defaultValue, onChange, ...props }: IFormInputNumberFields) => react_jsx_runtime.JSX.Element>;
1749
+ FormInputTelField: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1750
+ FormInputSearchField: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1751
+ FormInputOTPField: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1752
+ FormInputSelect: React.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1753
+ FormInputMultiSelect: React.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1754
+ FormInputAutoComplete: React.MemoExoticComponent<({ name, label, control, errors, options, disabled, placeholder, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1755
+ FormInputMultiAutoComplete: React.MemoExoticComponent<({ name, label, control, errors, options, disabled, placeholder, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1756
+ FormInputColorPicker: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1757
+ FormInputFileUpload: React.MemoExoticComponent<({ name, label, control, errors, size, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1758
+ FormInputDatePicker: React.MemoExoticComponent<({ name, label, control, errors, size, readOnly, shouldDisableDate, disabled, placeholder, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1759
+ FormInputTimePicker: React.MemoExoticComponent<({ name, label, control, errors, ampm, timezone, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1760
+ FormInputTimeClock: React.MemoExoticComponent<({ name, label, control, errors, readOnly, disabled, ampm, views, ampmInClock, disablePast, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1761
+ FormInputCalendar: React.MemoExoticComponent<({ name, label, control, errors, readOnly, disabled, defaultValue, onChange, ...props }: IFormInputDateFields) => react_jsx_runtime.JSX.Element>;
1762
+ FormInputCheckBox: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1763
+ FormInputCheckBoxGroup: React.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, row, color, labelPlacement, ...props }: IFormInputCheckBoxGroupFields) => react_jsx_runtime.JSX.Element>;
1764
+ FormInputSwitch: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1765
+ FormInputSlider: React.MemoExoticComponent<({ name, label, control, errors, defaultValue, onChange, ...props }: IFormInputFields) => react_jsx_runtime.JSX.Element>;
1766
+ FormInputSingleRadio: React.MemoExoticComponent<({ name, label, control, errors, checked, defaultValue, onChange, color, labelPlacement, ...props }: IFormInputRadioFields) => react_jsx_runtime.JSX.Element>;
1767
+ FormInputRadioButtonGroup: React.MemoExoticComponent<({ name, label, control, errors, options, defaultValue, onChange, ...props }: IFormInputFieldsWithOptions) => react_jsx_runtime.JSX.Element>;
1768
+ TextInputField: React.NamedExoticComponent<Omit<ITextInputFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1769
+ PasswordField: React.NamedExoticComponent<Omit<IPasswordFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
1770
+ NumberField: React.NamedExoticComponent<Omit<INumberInputFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1771
+ TelInputField: React.NamedExoticComponent<Omit<ITelInputFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1772
+ SearchInputField: React.NamedExoticComponent<Omit<ISearchInputFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
1773
+ OTPField: React.ForwardRefExoticComponent<Omit<IOTPInputFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1774
+ SelectInputField: React.ForwardRefExoticComponent<Omit<ISelectInputFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
1775
+ AutoCompleteField: React.NamedExoticComponent<Omit<IAutoCompleteInputProps<AutoCompleteOption, boolean, boolean, boolean>, "ref"> & React.RefAttributes<HTMLDivElement>>;
1776
+ ColorPickerField: React.NamedExoticComponent<Omit<IColorPickerFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1777
+ FileUploadField: React.ForwardRefExoticComponent<Omit<IFileUploadFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
1778
+ DatePickerField: React.ForwardRefExoticComponent<IDatePickerFieldProps & React.RefAttributes<HTMLDivElement>>;
1779
+ TimePickerField: React.ForwardRefExoticComponent<ITimePickerFieldProps & React.RefAttributes<HTMLDivElement>>;
1780
+ TimeClockField: React.ForwardRefExoticComponent<ITimeClockFieldProps & React.RefAttributes<HTMLDivElement>>;
1781
+ DateCalendarField: React.ForwardRefExoticComponent<IDateCalendarFieldProps & React.RefAttributes<HTMLDivElement>>;
1782
+ CheckBoxField: React.ForwardRefExoticComponent<Omit<ICheckboxFieldProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
1783
+ CheckBoxFieldGroup: React.ForwardRefExoticComponent<Omit<ICheckboxFieldGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1784
+ RadioButtonField: React.ForwardRefExoticComponent<Omit<IRadioButtonFieldProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
1785
+ RadioButtonFieldGroup: React.ForwardRefExoticComponent<Omit<IRadioButtonGroupFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
1786
+ SwitchField: React.ForwardRefExoticComponent<Omit<ISwitchFieldProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
1787
+ SliderField: React.ForwardRefExoticComponent<Omit<ISliderFieldProps, "ref"> & React.RefAttributes<HTMLSpanElement>>;
1331
1788
  };
1332
1789
 
1333
- export { AutoCompleteField, CheckBoxField, CheckBoxFieldGroup, ColorPickerField, DateCalendarField, DatePickerField, FileUploadField, FormInputAutoComplete, FormInputCalendar, FormInputCheckBox, FormInputCheckBoxGroup, FormInputColorPicker, FormInputDatePicker, FormInputFileUpload, FormInputMultiAutoComplete, FormInputMultiSelect, FormInputNumberField, FormInputOTPField, FormInputPasswordField, FormInputRadioButtonGroup, FormInputSearchField, FormInputSelect, FormInputSingleRadio, FormInputSlider, FormInputSwitch, FormInputTelField, FormInputTextArea, FormInputTextField, FormInputTimeClock, FormInputTimePicker, type IFormInputCheckBoxGroupFields, type IFormInputDateFields, type IFormInputFields, type IFormInputFieldsWithOptions, type IFormInputNumberFields, type IFormInputRadioFields, type IFormInputTextAreaFields, NumberField, OTPField, type Option, PasswordField, RadioButtonField, RadioButtonFieldGroup, SearchInputField, SelectInputField, SliderField, SwitchField, TelInputField, TextInputField, TimeClockField, TimePickerField, _default as default };
1790
+ export { AutoCompleteField, CheckboxField as CheckBoxField, CheckboxFieldGroup as CheckBoxFieldGroup, ColorPickerField, DateCalendarField, DatePickerField, FileUploadField, FormInputAutoComplete, FormInputCalendar, FormInputCheckBox, FormInputCheckBoxGroup, FormInputColorPicker, FormInputDatePicker, FormInputFileUpload, FormInputMultiAutoComplete, FormInputMultiSelect, FormInputNumberField, FormInputOTPField, FormInputPasswordField, FormInputRadioButtonGroup, FormInputSearchField, FormInputSelect, FormInputRadioButton as FormInputSingleRadio, FormInputSlider, FormInputSwitch, FormInputTelField, FormInputTextArea, FormInputTextField, FormInputTimeClock, FormInputTimePicker, type IFormInputCheckBoxGroupFields, type IFormInputDateFields, type IFormInputFields, type IFormInputFieldsWithOptions, type IFormInputNumberFields, type IFormInputRadioFields, type IFormInputTextAreaFields, NumberField, OTPField, type Option, PasswordField, RadioButtonField, RadioButtonFieldGroup, SearchField as SearchInputField, SelectInputField, SliderField, SwitchField, TeliField as TelInputField, TextInputField, TimeClockField, TimePickerField, FormFields as default };