import { Pager } from './../index';
import { Animation, PagerAutoEllipsis, LayoutPosition } from './../index';
import { AfterViewInit, ElementRef, OnInit, OnChanges, OnDestroy, SimpleChanges, EventEmitter } from '@angular/core';
import { BaseElement } from './smart.element';
import * as i0 from "@angular/core";
export { Animation, PagerAutoEllipsis, LayoutPosition, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { Pager } from './../index';
export declare class PagerComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<Pager>);
    private eventHandlers;
    nativeElement: Pager;
    /** @description Creates the component on demand.
     * @param properties An optional object of properties, which will be added to the template binded ones.
     */
    createComponent(properties?: {}): any;
    /** @description Sets or gets the animation mode. Animation is disabled when the property is set to 'none' */
    get animation(): Animation | string;
    set animation(value: Animation | string);
    /** @description Handles pager's elipsis. Ellipsis buttons are displayed as indicators and additional help to navigate between pages. */
    get autoEllipsis(): PagerAutoEllipsis | string;
    set autoEllipsis(value: PagerAutoEllipsis | string);
    /** @description Enables or disables the pager. */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Sets or gets the unlockKey which unlocks the product. */
    get unlockKey(): string;
    set unlockKey(value: string);
    /** @description Sets or gets the language. Used in conjunction with the property messages.  */
    get locale(): string;
    set locale(value: string);
    /** @description Callback, related to localization module.  */
    get localizeFormatFunction(): any;
    set localizeFormatFunction(value: any);
    /** @description Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale.  */
    get messages(): any;
    set messages(value: any);
    /** @description Handles the position of the navigation buttons. */
    get navigationButtonsPosition(): LayoutPosition | string;
    set navigationButtonsPosition(value: LayoutPosition | string);
    /** @description Gets/sets current page index. */
    get pageIndex(): number;
    set pageIndex(value: number);
    /** @description Defines the number of page index selectors. */
    get pageIndexSelectors(): number;
    set pageIndexSelectors(value: number);
    /** @description Gets/sets total number of items displayed on page. */
    get pageSize(): number;
    set pageSize(value: number);
    /** @description Defines the data source of the element's page size selector drop down. */
    get pageSizeSelectorDataSource(): number[];
    set pageSizeSelectorDataSource(value: number[]);
    /** @description The number of pages in the element. */
    get pagesCount(): number;
    set pagesCount(value: number);
    /** @description If the element is readonly, users cannot interact with it. */
    get readonly(): boolean;
    set readonly(value: boolean);
    /** @description Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts. */
    get rightToLeft(): boolean;
    set rightToLeft(value: boolean);
    /** @description Controlls displaying of the 'first' and 'last' navigation buttons. */
    get showFirstLastNavigationButtons(): boolean;
    set showFirstLastNavigationButtons(value: boolean);
    /** @description Displays text content in navigation buttons instead default icons. */
    get showNavigationButtonLabels(): boolean;
    set showNavigationButtonLabels(value: boolean);
    /** @description Determines whether the navigation input is displayed. */
    get showNavigationInput(): boolean;
    set showNavigationInput(value: boolean);
    /** @description Determines whether the page index selectors are displayed. */
    get showPageIndexSelectors(): boolean;
    set showPageIndexSelectors(value: boolean);
    /** @description Determines whether the page size selector is displayed. */
    get showPageSizeSelector(): boolean;
    set showPageSizeSelector(value: boolean);
    /** @description Controlls displaying of the 'previous' and 'next' navigation buttons. */
    get showPrevNextNavigationButtons(): boolean;
    set showPrevNextNavigationButtons(value: boolean);
    /** @description Determines whether the page summary is displayed. */
    get showSummary(): boolean;
    set showSummary(value: boolean);
    /** @description Determines the theme. Theme defines the look of the element */
    get theme(): string;
    set theme(value: string);
    /** @description If is set to true, the element cannot be focused. */
    get unfocusable(): boolean;
    set unfocusable(value: boolean);
    /** @description Gets/sets total number of records whose pagination the Pager controls. Useful when the Pager is part of a more complex element or application. */
    get totalRecords(): number;
    set totalRecords(value: number);
    /** @description This event is triggered when user selects a new item.
    *  @param event. The custom event. 	*/
    onChange: EventEmitter<CustomEvent>;
    /** @description This event is triggered when page size is changed.
    *  @param event. The custom event. 	*/
    onPageSizeChanged: EventEmitter<CustomEvent>;
    /** @description Selects first item.
    */
    first(): void;
    /** @description Selects last item.
    */
    last(): void;
    /** @description Navigates to particular item.
    * @param {any} pageIndex.
    */
    navigateTo(pageIndex: any): void;
    /** @description Selects next pager item.
    */
    next(): void;
    /** @description Selects previous pager item.
    */
    prev(): void;
    get isRendered(): boolean;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    /** @description Add event listeners. */
    private listen;
    /** @description Remove event listeners. */
    private unlisten;
    static ɵfac: i0.ɵɵFactoryDeclaration<PagerComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<PagerComponent, "smart-pager, [smart-pager]", ["smart-pager"], { "animation": "animation"; "autoEllipsis": "autoEllipsis"; "disabled": "disabled"; "unlockKey": "unlockKey"; "locale": "locale"; "localizeFormatFunction": "localizeFormatFunction"; "messages": "messages"; "navigationButtonsPosition": "navigationButtonsPosition"; "pageIndex": "pageIndex"; "pageIndexSelectors": "pageIndexSelectors"; "pageSize": "pageSize"; "pageSizeSelectorDataSource": "pageSizeSelectorDataSource"; "pagesCount": "pagesCount"; "readonly": "readonly"; "rightToLeft": "rightToLeft"; "showFirstLastNavigationButtons": "showFirstLastNavigationButtons"; "showNavigationButtonLabels": "showNavigationButtonLabels"; "showNavigationInput": "showNavigationInput"; "showPageIndexSelectors": "showPageIndexSelectors"; "showPageSizeSelector": "showPageSizeSelector"; "showPrevNextNavigationButtons": "showPrevNextNavigationButtons"; "showSummary": "showSummary"; "theme": "theme"; "unfocusable": "unfocusable"; "totalRecords": "totalRecords"; }, { "onChange": "onChange"; "onPageSizeChanged": "onPageSizeChanged"; }, never>;
}
