UNPKG

3.17 kBTypeScriptView Raw
1import * as React from "react";
2
3type ComponentConstructor<TProps> =
4 | React.ComponentClass<TProps>
5 | React.FunctionComponent<TProps>;
6
7export interface CustomArrowProps {
8 className?: string | undefined;
9 style?: React.CSSProperties | undefined;
10 onClick?: React.MouseEventHandler<any> | undefined;
11 currentSlide?: number | undefined;
12 slideCount?: number | undefined;
13}
14
15export interface ResponsiveObject {
16 breakpoint: number;
17 settings: "unslick" | Settings;
18}
19
20export interface InnerSlider {
21 list?: HTMLDivElement;
22}
23
24export type SwipeDirection = "left" | "down" | "right" | "up" | string;
25
26export type LazyLoadTypes = "ondemand" | "progressive" | "anticipated";
27
28export interface Settings {
29 accessibility?: boolean | undefined;
30 adaptiveHeight?: boolean | undefined;
31 afterChange?(currentSlide: number): void;
32 appendDots?(dots: React.ReactNode): React.JSX.Element;
33 arrows?: boolean | undefined;
34 asNavFor?: Slider | undefined;
35 autoplaySpeed?: number | undefined;
36 autoplay?: boolean | undefined;
37 beforeChange?(currentSlide: number, nextSlide: number): void;
38 centerMode?: boolean | undefined;
39 centerPadding?: string | undefined;
40 children?: React.ReactNode;
41 className?: string | undefined;
42 cssEase?: string | undefined;
43 customPaging?(index: number): React.JSX.Element;
44 dotsClass?: string | undefined;
45 dots?: boolean | undefined;
46 draggable?: boolean | undefined;
47 easing?: string | undefined;
48 edgeFriction?: number | undefined;
49 fade?: boolean | undefined;
50 focusOnSelect?: boolean | undefined;
51 infinite?: boolean | undefined;
52 initialSlide?: number | undefined;
53 lazyLoad?: LazyLoadTypes | undefined;
54 nextArrow?: React.JSX.Element | undefined;
55 onEdge?(swipeDirection: SwipeDirection): void;
56 onInit?(): void;
57 onLazyLoad?(slidesToLoad: number[]): void;
58 onReInit?(): void;
59 onSwipe?(swipeDirection: SwipeDirection): void;
60 pauseOnDotsHover?: boolean | undefined;
61 pauseOnFocus?: boolean | undefined;
62 pauseOnHover?: boolean | undefined;
63 prevArrow?: React.JSX.Element | undefined;
64 responsive?: ResponsiveObject[] | undefined;
65 rows?: number | undefined;
66 rtl?: boolean | undefined;
67 slide?: string | undefined;
68 slidesPerRow?: number | undefined;
69 slidesToScroll?: number | undefined;
70 slidesToShow?: number | undefined;
71 speed?: number | undefined;
72 swipeToSlide?: boolean | undefined;
73 swipe?: boolean | undefined;
74 swipeEvent?(swipeDirection: SwipeDirection): void;
75 touchMove?: boolean | undefined;
76 touchThreshold?: number | undefined;
77 useCSS?: boolean | undefined;
78 useTransform?: boolean | undefined;
79 variableWidth?: boolean | undefined;
80 vertical?: boolean | undefined;
81 verticalSwiping?: boolean | undefined;
82 waitForAnimate?: boolean | undefined;
83}
84
85declare class Slider extends React.Component<Settings, never> {
86 innerSlider?: InnerSlider | undefined;
87 slickNext(): void;
88 slickPause(): void;
89 slickPlay(): void;
90 slickPrev(): void;
91 slickGoTo(slideNumber: number, dontAnimate?: boolean): void;
92}
93
94export default Slider;