1
1
import type { InterfacePressableProps } from '../../primitives/Pressable/types' ;
2
2
import type { IIconProps } from '../../primitives/Icon' ;
3
- import type { CustomProps , ResponsiveValue , VariantType } from '../../types' ;
4
- import type { ISizes } from '../../../theme/base/sizes' ;
5
-
3
+ import type { CustomProps , VariantType } from '../../types' ;
4
+ import type { ThemeComponentSizeType } from '../../../components/types/utils' ;
6
5
export interface InterfaceIconButtonProps
7
6
extends Omit < InterfacePressableProps , 'children' | 'color' > ,
8
7
Omit <
@@ -35,7 +34,7 @@ export interface InterfaceIconButtonProps
35
34
/**
36
35
* The size of the button.
37
36
*/
38
- size ?: ResponsiveValue < ISizes | ( string & { } ) | number > ;
37
+ size ?: ThemeComponentSizeType < 'IconButton' > ;
39
38
/**
40
39
* If true, the button will be disabled.
41
40
*/
@@ -47,19 +46,19 @@ export interface InterfaceIconButtonProps
47
46
/**
48
47
* Props to be passed to the icon used inside of IconButton.
49
48
*/
50
- _icon ?: IIconProps ;
49
+ _icon ?: Partial < IIconProps > ;
51
50
/**
52
51
*
53
52
*/
54
- _hover ?: IIconButtonProps ;
53
+ _hover ?: Omit < Partial < IIconButtonProps > , '_hover' > ;
55
54
/**
56
55
*
57
56
*/
58
- _pressed ?: IIconButtonProps ;
57
+ _pressed ?: Omit < Partial < IIconButtonProps > , '_pressed' > ;
59
58
/**
60
59
*
61
60
*/
62
- _focus ?: IIconButtonProps ;
61
+ _focus ?: Omit < Partial < IIconButtonProps > , '_focus' > ;
63
62
}
64
63
65
64
export type IIconButtonProps = InterfaceIconButtonProps & CustomProps < 'Icon' > ;
0 commit comments