forked from htmlstreamofficial/preline
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcarousel.d.ts
74 lines (70 loc) · 1.81 KB
/
carousel.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
export interface IBasePlugin<O, E> {
el: E;
options?: O;
events?: {};
}
declare class HSBasePlugin<O, E = HTMLElement> implements IBasePlugin<O, E> {
el: E;
options: O;
events?: any;
constructor(el: E, options: O, events?: any);
createCollection(collection: any[], element: any): void;
fireEvent(evt: string, payload?: any): any;
on(evt: string, cb: Function): void;
}
export interface ICollectionItem<T> {
id: string | number;
element: T;
}
export interface ICarouselOptions {
currentIndex: number;
loadingClasses?: string | string[];
isAutoPlay?: boolean;
speed?: number;
isInfiniteLoop?: boolean;
}
export interface ICarousel {
options?: ICarouselOptions;
recalculateWidth(): void;
goToPrev(): void;
goToNext(): void;
goTo(i: number): void;
}
declare class HSCarousel extends HSBasePlugin<ICarouselOptions> implements ICarousel {
private readonly inner;
private readonly slides;
private readonly prev;
private readonly next;
private readonly dots;
private sliderWidth;
private currentIndex;
private readonly loadingClasses;
private readonly loadingClassesRemove;
private readonly loadingClassesAdd;
private readonly afterLoadingClassesAdd;
private readonly isAutoPlay;
private readonly speed;
private readonly isInfiniteLoop;
private timer;
private readonly touchX;
constructor(el: HTMLElement, options?: ICarouselOptions);
private init;
private observeResize;
private calculateWidth;
private addCurrentClass;
private addDisabledClass;
private autoPlay;
private setTimer;
private resetTimer;
private detectDirection;
recalculateWidth(): void;
goToPrev(): void;
goToNext(): void;
goTo(i: number): void;
static getInstance(target: HTMLElement | string, isInstance?: boolean): HSCarousel | ICollectionItem<HSCarousel>;
static autoInit(): void;
}
export {
HSCarousel as default,
};
export {};