import { ElementRef, Renderer2, ChangeDetectorRef, AfterViewInit, OnDestroy } from '@angular/core';
/**
 * carousel item inteface
 */
export interface CarouselItem {
    /** image title */
    title: string;
    /** image src  */
    imageUrl: string;
    /** target link, optional */
    href?: string;
}
/**
 * Carousel Component
 */
export declare class CarouselComponent implements AfterViewInit, OnDestroy {
    private _el;
    private _render;
    private _cd;
    /**
     * Whether the carousel can auto play
     * @default false
     */
    auto: boolean;
    /**
     * The time interval(milliseconds) when auto play
     * @default 3000
     */
    interval: number;
    /**
     * Whether the carousel show title navigation
     * @default false
     */
    showTitle: boolean;
    /**
     * carousel width, in pixels
     */
    width: number;
    /**
     * carousel datasource, each item with a `title`、`imageUrl`、`href`(optional) property
     * @default []
     */
    datasource: CarouselItem[];
    /**
     * carousel active index
     * @default 0
     */
    activeIndex: number;
    /**
     * carousel custom style skin, will add a class `nb-carousel-skinName` to the host element
     * @default ''
     */
    skin: string;
    /**
     * auto play timer
     * @docs-private
     */
    _timer: any;
    /**
     * compute left position
     *
     * @readonly
     * @docs-private
     */
    readonly leftPos: number;
    constructor(_el: ElementRef, _render: Renderer2, _cd: ChangeDetectorRef);
    /**
     * navigate to specific index
     *
     * @param {number} idx - index
     */
    navigate(idx: number): void;
    /**
     * navigate to prev item
     */
    prev(): void;
    /**
     * navigate to next item
     */
    next(): void;
    ngAfterViewInit(): void;
    _onMouseOver(): void;
    _onMouseOut(): void;
    /**
     * @docs-private
     */
    poll(): void;
    ngOnDestroy(): void;
}
