Skip to content

Commit 667e5b9

Browse files
author
sqlProvider
committed
[Typings] fixed typings
1 parent f77d4f5 commit 667e5b9

File tree

2 files changed

+10
-17
lines changed

2 files changed

+10
-17
lines changed

src/Button.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313

1414
import tinycolor from 'tinycolor2';
1515

16-
import { IButton, RecursiveArray } from './IButton';
16+
import { IButton } from './IButton';
1717
import { ButtonSize, Styles } from './Styles';
1818

1919
export class Button extends Component<IButton.IProps, IButton.IState> {

src/IButton.d.ts

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,6 @@ import {
99
TextStyle
1010
} from 'react-native';
1111

12-
/**
13-
* Recursive Array Interface
14-
*/
15-
export interface RecursiveArray<T> {
16-
[i: number]: T | RecursiveArray<T>;
17-
}
18-
1912
export module IButton {
2013
export interface IProps extends IButtonState {
2114
// Container Settings
@@ -24,7 +17,7 @@ export module IButton {
2417

2518
// State Settings
2619
selectedState?: string;
27-
states: {
20+
states?: {
2821
[key: string]: IButtonStateWithPrivate;
2922
};
3023

@@ -63,12 +56,12 @@ export module IButton {
6356

6457
// Icon Settings
6558
icon?: ImageURISource | any;
66-
iconStyle?: RecursiveArray<ImageStyle>;
59+
iconStyle?: Array<ImageStyle> | ImageStyle;
6760
iconPosition?: 'left' | 'right';
6861

6962
// Text Settings
7063
text: string;
71-
textStyle?: RecursiveArray<TextStyle>;
64+
textStyle?: Array<TextStyle> | TextStyle;
7265

7366
// Spinner Settings
7467
spinner?: boolean;
@@ -79,14 +72,14 @@ export module IButton {
7972
asyncIconAndTextAnimationDiff?: number;
8073

8174
// Renderers
82-
renderButtonInside(state: IButtonState): JSX.Element;
83-
renderIcon(state: IButtonState): JSX.Element;
84-
renderSpinner(state: IButtonState): JSX.Element;
85-
renderText(state: IButtonState): JSX.Element;
75+
renderButtonInside?(state: IButtonState): JSX.Element;
76+
renderIcon?(state: IButtonState): JSX.Element;
77+
renderSpinner?(state: IButtonState): JSX.Element;
78+
renderText?(state: IButtonState): JSX.Element;
8679

8780
// Events
88-
onLongPress(event?: GestureResponderEvent, activeState?: IButtonState): boolean | void;
89-
onPress(event?: GestureResponderEvent, activeState?: IButtonState): boolean | void;
81+
onLongPress?(event?: GestureResponderEvent, activeState?: IButtonState): boolean | void;
82+
onPress?(event?: GestureResponderEvent, activeState?: IButtonState): boolean | void;
9083
}
9184

9285
export interface IButtonStateWithPrivate extends IButtonState {

0 commit comments

Comments
 (0)