1
1
declare module 'react-native-dropdown-picker' {
2
- import type { SetStateAction , Dispatch , PropsWithoutRef } from 'react' ;
2
+ import type { Dispatch , PropsWithoutRef } from 'react' ;
3
3
import type {
4
4
FlatListProps ,
5
5
LayoutChangeEvent ,
@@ -14,6 +14,9 @@ declare module 'react-native-dropdown-picker' {
14
14
ViewStyle ,
15
15
} from 'react-native' ;
16
16
17
+ type SetStateCallback < S > = ( ( prevState : S ) => S ) ;
18
+ type SetStateValue < S > = ( ( prevState : S ) => S ) ;
19
+
17
20
export type ValueType = string | number | boolean ;
18
21
19
22
export type ItemType < T > = {
@@ -243,8 +246,8 @@ declare module 'react-native-dropdown-picker' {
243
246
min ?: number ;
244
247
max ?: number ;
245
248
addCustomItem ?: boolean ;
246
- setOpen : Dispatch < SetStateAction < boolean > > ;
247
- setItems ?: Dispatch < SetStateAction < any [ ] > > ;
249
+ setOpen : Dispatch < SetStateValue < boolean > > ;
250
+ setItems ?: Dispatch < SetStateCallback < any [ ] > > ;
248
251
disableBorderRadius ?: boolean ;
249
252
containerProps ?: ViewProps ;
250
253
onLayout ?: ( e : LayoutChangeEvent ) => void ;
@@ -268,15 +271,15 @@ declare module 'react-native-dropdown-picker' {
268
271
multiple ?: false ;
269
272
onChangeValue ?: ( value : T | null ) => void ;
270
273
onSelectItem ?: ( item : ItemType < T > ) => void ;
271
- setValue : Dispatch < SetStateAction < T | null > > ;
274
+ setValue : Dispatch < SetStateCallback < T | null | any > > ;
272
275
value : T | null ;
273
276
}
274
277
275
278
interface DropDownPickerMultipleProps < T > {
276
279
multiple : true ;
277
280
onChangeValue ?: ( value : T [ ] | null ) => void ;
278
281
onSelectItem ?: ( items : ItemType < T > [ ] ) => void ;
279
- setValue : Dispatch < SetStateAction < T [ ] | null > > ;
282
+ setValue : Dispatch < SetStateCallback < T [ ] | null | any > > ;
280
283
value : T [ ] | null ;
281
284
}
282
285
0 commit comments