diff --git a/index.d.ts b/index.d.ts new file mode 100644 index 0000000..322493d --- /dev/null +++ b/index.d.ts @@ -0,0 +1,113 @@ +import React from "react"; +import { ImageStyle, ViewStyle } from "react-native"; + +declare module 'react-native-image-slider-banner' { + export type DataType = {img:string|number}; + interface ImageSliderProps { + /** + * Set array of images path- these paths can contain http url link or local images path using require('./pathOfImage') + */ + data: DataType[]; + /** + * its define whats type image urls you provide if its true it means you provide local images path + * @default: false + */ + localImg?: boolean; + /** + * if its true its shows a header on slider + * @default false + */ + showHeader?: boolean; + /** + * for displaying right component in header + * @default null + */ + headerRightComponent?: React.ReactNode; + /** + * for displaying left component in header + * @default null + */ + headerLeftComponent?: React.ReactNode; + /** + * for displaying center component in header + * @default null + */ + headerCenterComponent?: ReactNode; + /** + * for change style of header + * @default {} + */ + headerStyle?: ViewStyle; + /** + * for change style of previewImageContainer + * @default {} + */ + previewImageContainerStyle?: ViewStyle; + /** + * for change style of previewImage + * @default {} + */ + previewImageStyle?: ImageStyle; + /** + * for change style of caroselImageContainerStyle + * @default {} + */ + caroselImageContainerStyle?: ViewStyle; + /** + * for change style of caroselImageStyle + * @default {} + */ + caroselImageStyle?: ImageStyle; + /** + * for auto scrolling + * @default false + */ + autoPlay?: boolean; + /** + * timeinterval for changing slider + * @default 2000 + */ + timer?: number; + /** + * for Showing indicator + * @default false + */ + showIndicator?: boolean; + /** + * for change style of activeIndicator + * @default {} + */ + activeIndicatorStyle?: ViewStyle; + /** + * for change style of inActiveIndicatorStyle + * @default {} + */ + inActiveIndicatorStyle?: ViewStyle; + /** + * for change style of indicatorContainerStyle + * @default {} + */ + indicatorContainerStyle?: ViewStyle; + /** + * when item changed its give item data in parameter + * @default (itemData) => {} + */ + onItemChanged?:(itemData: DataType) => void; + /** + * when click on any item its give item data in parameter and when onClick Present so slider not show IMAGE PREVIEW on Click + * @default (item, index) => {}, + */ + onClick?:(item: DataType, index: number) => void; + /** + * Image Preview cross icon color + * @default #000 + */ + closeIconColor?: string; + /** + * Image Preview Background Blur Radius + * @default 50 + */ + blurRadius?: number; + } + export class ImageSlider extends React.Component { } +} diff --git a/package.json b/package.json index b1bf8b3..a0c6b9b 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "1.0.2", "description": "A simple and fully customizable React Native Component that implements Image and Banner Slider UI with animations.", "main": "index.js", + "typings": "index.d.ts", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" },