UNPKG

2.73 kBTypeScriptView Raw
1export interface VirtualMethods {
2 /**
3 * Object with cached slides HTML elements
4 */
5 cache: object;
6
7 /**
8 * Index of first rendered slide
9 */
10 from: number;
11
12 /**
13 * Index of last rendered slide
14 */
15 to: number;
16
17 /**
18 * Array with slide items passed by virtual.slides parameter
19 */
20 slides: any[];
21
22 /*
23 * Methods
24 */
25
26 /**
27 * Append slide. slides can be a single slide item or array with such slides.
28 */
29 appendSlide(slide: HTMLElement | string | HTMLElement[] | string[]): void;
30
31 /**
32 * Prepend slide. slides can be a single slide item or array with such slides.
33 */
34 prependSlide(slide: HTMLElement | string | HTMLElement[] | string[]): void;
35
36 /**
37 * Remove specific slide or slides. slideIndexes can be a number with slide index to remove or array with indexes.
38 */
39 removeSlide(slideIndexes: number[]): void;
40
41 /**
42 * Remove all slides
43 */
44 removeAllSlides(): void;
45
46 /**
47 * Update virutal slides state
48 */
49 update(): void;
50}
51
52export interface VirtualEvents {}
53
54export interface VirtualData {
55 /**
56 * slides left/top offset in px
57 */
58 offset: number;
59 /**
60 * index of first slide required to be rendered
61 */
62 from: number;
63 /**
64 * index of last slide required to be rendered
65 */
66 to: number;
67 /**
68 * array with slide items to be rendered
69 */
70 slides: any[];
71}
72
73export interface VirtualOptions {
74 /**
75 * Array with slides
76 *
77 * @default []
78 */
79 slides?: any[];
80 /**
81 * Enables DOM cache of rendering slides html elements. Once they are rendered they will be saved to cache and reused from it.
82 *
83 * @default true
84 */
85 cache?: boolean;
86 /**
87 * Increases amount of pre-rendered slides before active slide
88 *
89 * @default 0
90 */
91 addSlidesBefore?: number;
92 /**
93 * Increases amount of pre-rendered slides after active slide
94 *
95 * @default 0
96 */
97 addSlidesAfter?: number;
98 /**
99 * Function to render slide. As an argument it accepts current slide item for slides array and index number of the current slide. Function must return an outter HTML of the swiper slide.
100 *
101 * @default null
102 */
103 renderSlide?: (slide: any, index: any) => any;
104 /**
105 * Function for external rendering (e.g. using some other library to handle DOM manipulations and state like React.js or Vue.js). As an argument it accepts data object with the following properties:
106 *
107 * @default null
108 */
109 renderExternal?: (data: VirtualData) => any;
110 /**
111 * When enabled (by default) it will update Swiper layout right after renderExternal called. Useful to disable and update swiper manually when used with render libraries that renders asynchronously
112 *
113 * @default true
114 */
115 renderExternalUpdate?: boolean;
116}