ionic-framework
Version:
An advanced HTML5 mobile app framework built on Angular2
258 lines (257 loc) • 5.22 kB
TypeScript
import { ElementRef, EventEmitter } from 'angular2/core';
import { Ion } from '../ion';
import { Swiper } from './swiper-widget';
/**
* @name Slides
* @description
* Slides is a slide box implementation based on Swiper.js
*
* @usage
* ```ts
* @Page({
* template: `
* <ion-slides pager (change)="onSlideChanged($event)" (move)="onSlideMove($event)" loop="true" autoplay="true">
* <ion-slide>
* <h3>Thank you for choosing the Awesome App!</h3>
* <p>
* The number one app for everything awesome.
* </p>
* </ion-slide>
* <ion-slide>
* <h3>Using Awesome</h3>
* <div id="list">
* <h5>Just three steps:</h5>
* <ol>
* <li>Be awesome</li>
* <li>Stay awesome</li>
* <li>There is no step 3</li>
* </ol>
* </div>
* </ion-slide>
* <ion-slide>
* <h3>Any questions?</h3>
* </ion-slide>
* </ion-slides>
* `
*})
*
*```
* @demo /docs/v2/demos/slides/
* @see {@link /docs/v2/components#slides Slides Component Docs}
*
* Swiper.js:
* The most modern mobile touch slider and framework with hardware accelerated transitions
*
* http://www.idangero.us/swiper/
*
* Copyright 2015, Vladimir Kharlampidi
* The iDangero.us
* http://www.idangero.us/
*
* Licensed under MIT
*/
export declare class Slides extends Ion {
/**
* @private
*/
rapidUpdate: Function;
/**
* @private
*/
private showPager;
/**
* @private
*/
private slider;
/**
* @private
*/
private maxScale;
/**
* @private
*/
private zoomElement;
/**
* @private
*/
private zoomGesture;
/**
* @private
*/
private scale;
/**
* @private
*/
private zoomLastPosX;
/**
* @private
*/
private zoomLastPosY;
/**
* @private
*/
private viewportWidth;
/**
* @private
*/
private viewportHeight;
/**
* @private
*/
private enableZoom;
/**
* @private
*/
private touch;
/**
* @input {boolean} Whether the slide should show the pager or not
*/
pager: any;
/**
* @input {any} Any slider options you want to configure, see swiper parameters: http://www.idangero.us/swiper/api/
*/
options: any;
/**
* @input {number} Whether or not the slider can zoom in or out
*/
zoom: any;
/**
* @input {number} how long it should take to zoom a slide
*/
zoomDuration: any;
/**
* @input {number} the max scale an slide can be zoomed
*/
zoomMax: any;
/**
* @output {any} expression to evaluate when a slide has been changed
*/
change: EventEmitter<any>;
/**
* @output {any} expression to evaluate when a slide change starts
*/
slideChangeStart: EventEmitter<any>;
/**
* @output {any} expression to evaluate when a slide moves
*/
move: EventEmitter<any>;
/**
* @private
* @param {ElementRef} elementRef TODO
*/
constructor(elementRef: ElementRef);
/**
* @private
*/
ngOnInit(): void;
/**
* @private
*/
onTap(swiper: any, e: any): void;
/**
* @private
*/
onClick(swiper: any, e: any): void;
/**
* @private
*/
onDoubleTap(swiper: any, e: any): void;
/**
* @private
*/
onLazyImageLoad(swiper: any, slide: any, img: any): void;
/**
* @private
*/
onLazyImageReady(swiper: any, slide: any, img: any): void;
/**
* @private
*/
initZoom(): void;
/**
* @private
*/
resetZoom(): void;
/**
* @private
*/
toggleZoom(swiper: any, e: any): void;
/**
* @private
*/
onTransitionStart(swiper: any, e: any): void;
/**
* @private
*/
onTransitionEnd(swiper: any, e: any): void;
/**
* @private
*/
onTouchStart(e: any): void;
/**
* @private
*/
onTouchMove(e: any): boolean;
/**
* @private
*/
onTouchEnd(e: any): void;
/**
* @private
* Update the underlying slider implementation. Call this if you've added or removed
* child slides.
*/
update(): void;
/**
* @private
*/
next(): void;
/**
* @private
*/
prev(): void;
/**
* @private
*/
getIndex(): number;
/**
* @private
*/
getNumSlides(): number;
/**
* @private
*/
isAtEnd(): boolean;
/**
* @private
*/
isAtBeginning(): boolean;
/**
* @private
*/
getSliderWidget(): Swiper;
}
/**
* @name Slide
* @description
* `ion-slide` is a child component of `ion-slides` and is where all your individule slide content will be rendered too.
*
* @demo /docs/v2/demos/slides/
* @see {@link /docs/v2/api/components/slides/Slides/ Slides API Docs}
*/
export declare class Slide {
/**
* @private
*/
private ele;
/**
* @private
*/
zoom: any;
constructor(elementRef: ElementRef, slides: Slides);
}
/**
* @private
*/
export declare class SlideLazy {
}