-
Notifications
You must be signed in to change notification settings - Fork 0
/
react-native-toast.d.ts
112 lines (103 loc) · 2.57 KB
/
react-native-toast.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
declare module '@platformbuilders/react-native-toast' {
export interface ToastProviderProps {
children: React.ReactNode;
config?: ToastConfigProps;
}
export type ToastType = 'success' | 'warning' | 'error' | 'custom';
export type ContextType = {
showError(message: string, title?: string, duration?: number): void;
showSuccess(message: string, title?: string, duration?: number): void;
showWarning(message: string, title?: string, duration?: number): void;
showCustom(message: string, title?: string, duration?: number): void;
};
export type ToastProps = {
title?: string | undefined;
message: string;
type: ToastType;
duration?: number;
};
export type PanGestureContextType = {
translateY: number;
};
export type OptionsToast = {
success?: string;
warning?: string;
error?: string;
custom?: string;
};
export type ToastConfigProps = {
containerStyle?: Record<string, unknown>;
fontFamily?: string;
textColor?: OptionsToast | string;
titleSize?: number;
messageSize?: number;
backgroundColor?: OptionsToast;
closeButtonText?: string;
customIcon?: {
success?: React.ReactElement;
warning?: React.ReactElement;
error?: React.ReactElement;
custom?: React.ReactElement;
};
icon?: {
success?: {
icon: ImageSourcePropType;
height?: number;
width?: number;
};
warning?: {
icon: ImageSourcePropType;
height?: number;
width?: number;
};
error?: {
icon: ImageSourcePropType;
height?: number;
width?: number;
};
custom?: {
icon: ImageSourcePropType;
height?: number;
width?: number;
};
};
autoHide?: {
success?: boolean;
warning?: boolean;
error?: boolean;
custom?: boolean;
};
showCloseButton?: {
success?: boolean;
warning?: boolean;
error?: boolean;
custom?: boolean;
};
showIcon?: boolean;
};
export function useToast(): ContextType;
export function ToastProvider({
children,
config,
}: ToastProviderProps): React.JSX.Element;
export function showError(
message: string,
title?: string,
duration?: number,
): void;
export function showSuccess(
message: string,
title?: string,
duration?: number,
): void;
export function showWarning(
message: string,
title?: string,
duration?: number,
): void;
export function showCustom(
message: string,
title?: string,
duration?: number,
): void;
}