// Type definitions for react-native-dialog 5.6 // Project: https://github.com/mmazzarolo/react-native-dialog // Definitions by: MrLuje // Stack Builders // Esteban Ibarra // Yaron Malin // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.8 import { Ref, PureComponent, ReactNode } from "react"; import { ViewProps, TextProps, StyleProp, TextInputProps, ViewStyle } from "react-native"; import * as reactNativeModal from 'react-native-modal'; interface ButtonProps { label: string; /** * default: * ios #007ff9 * android #169689 */ color?: string; bold?: boolean; /** * default: false */ disabled?: boolean; onPress: () => void; } interface ContainerProps { blurComponentIOS?: ReactNode; children: React.ReactNode[]; /** * default: false */ visible?: boolean; buttonSeparatorStyle?: ViewStyle; contentStyle?: ViewStyle; footerStyle?: ViewStyle; headerStyle?: ViewStyle; } interface TitleProps { children: string; } interface InputProps { label?: string; textInputRef?: Ref; wrapperStyle?: StyleProp; } interface DescriptionProps { children: string; } type reactNativeModalContainerProps = Partial>>; export namespace Dialog { class Button extends PureComponent< ButtonProps & ViewProps & TextProps > {} class Container extends PureComponent {} class Title extends PureComponent< TitleProps & ViewProps & TextProps > {} class Input extends PureComponent< InputProps & ViewProps & TextInputProps > {} class Description extends PureComponent< DescriptionProps & ViewProps & TextProps > {} } export default Dialog;