import { NgZone } from '@angular/core'; import { Observable } from 'rxjs'; import { KitSlideDirection, KitSlideId } from './meta'; /** * ### Usage * * Provide `KitSlideHostService` on a component and add `*kitSlide` to slides. * * ```html *
*
Slide 1
*
Slide 2
*
Slide 3
*
* ``` * * Use `KitSlideHostService` for state changing. * * ```typescript * providers[KitSlideHostService], * ... * constructor(private slideHost: KitSlideHostService) { * } * ... * rotate() { * this.slideHost.rotate(); * } * ``` * * * ### Example * * * collection:carousel - * [sources](https://github.com/ngx-kit/ngx-kit/tree/master/packages/collection/lib/ui-carousel), * [demo](http://ngx-kit.com/collection/module/ui-carousel) * * collection:tabs - [sources](https://github.com/ngx-kit/ngx-kit/tree/master/packages/collection/lib/ui-tabs), * [demo](http://ngx-kit.com/collection/module/ui-tabs) */ export declare class KitSlideHostService { private zone; /** * Activate first slide on init. */ activateFirst: boolean; private _active; private _direction; private firstRegistration; private ids; private lastId; constructor(zone: NgZone); /** * Get active slide id. */ /** * Set active side by id. */ active: KitSlideId; /** * Set active and emit only 'initial' direction. */ activeInitial: KitSlideId; /** * Get `Observable` with active slide id. */ readonly activeChanges: Observable; /** * Get `Observable` with direction of slide changing (next, prev). */ readonly directionChanges: Observable; /** * Register slide. */ addId(id: KitSlideId): void; /** * Delete slide. */ deleteId(id: KitSlideId): void; /** * Generate slide id. */ genId(): number; /** * Activate next slide. */ next(cycle?: boolean): void; /** * Activate prev slide. */ prev(cycle?: boolean): void; private getCurrentIndex; private getIndex; }