ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
46 lines (45 loc) • 1.71 kB
TypeScript
/**
* @license
* Copyright Alibaba.com All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
import { ChangeDetectorRef, QueryList, Renderer2 } from '@angular/core';
import { Observable } from 'rxjs';
import { NzCarouselContentDirective } from '../carousel-content.directive';
import { FromToInterface, NzCarouselComponentAsSource, PointerVector } from '../typings';
export declare abstract class NzCarouselBaseStrategy {
protected cdr: ChangeDetectorRef;
protected renderer: Renderer2;
protected carouselComponent: NzCarouselComponentAsSource | null;
protected contents: NzCarouselContentDirective[];
protected slickListEl: HTMLElement;
protected slickTrackEl: HTMLElement;
protected length: number;
protected unitWidth: number;
protected unitHeight: number;
protected get maxIndex(): number;
protected get firstEl(): HTMLElement;
protected get lastEl(): HTMLElement;
constructor(carouselComponent: NzCarouselComponentAsSource, cdr: ChangeDetectorRef, renderer: Renderer2);
/**
* Initialize dragging sequences.
* @param contents
*/
withCarouselContents(contents: QueryList<NzCarouselContentDirective> | null): void;
/**
* Trigger transition.
*/
abstract switch(_f: number, _t: number): Observable<void>;
/**
* When user drag the carousel component.
* @optional
*/
dragging(_vector: PointerVector): void;
/**
* Destroy a scroll strategy.
*/
dispose(): void;
protected getFromToInBoundary(f: number, t: number): FromToInterface;
}