import { CSSResultGroup, TemplateResult, PropertyValues } from 'lit';
import FinproElement from '../../internals/finpro-element';
import '../fp-button/fp-button';
import '../fp-input/fp-input';
import '../fp-select/fp-select';
/**
 * @tag fp-pagination
 * @summary Finpro Pagination component
 */
export default class FpPagination extends FinproElement {
    static get styles(): CSSResultGroup;
    /**
     * Sets the current page
     */
    currentPage: number;
    /**
     * Sets the total items to be paginated
     */
    totalItems: number;
    /**
     * Sets the number of items per page
     */
    itemsPerPage: number;
    /**
     * Adds jumper element if provided as true
     */
    hasJumper: boolean;
    /**
     * Sets the jumper label
     */
    jumperLabel: string;
    /**
     *  Adds select element to choose the items per page
     */
    hasSelect: boolean;
    /**
     *  Adds select element to choose the items per page
     */
    selectLabel: string;
    /**
     * Sets the items per page options of the select element
     *  PROPERTY
     */
    itemsPerPageOptions: {
        text: string;
        value: number;
    }[];
    private pages;
    /**
     * Fires when the current page changes
     */
    private onChange;
    connectedCallback(): void;
    disconnectedCallback(): void;
    updated(changedProperties: PropertyValues<this>): void;
    private _paginate;
    private _changePage;
    private _pageBack;
    private _pageForward;
    private _getLastPage;
    private _inputHandler;
    private _selectHandler;
    private _renderSinglePage;
    private renderPages;
    render(): TemplateResult;
}
declare global {
    interface HTMLElementTagNameMap {
        'fp-pagination': FpPagination;
    }
}
//# sourceMappingURL=fp-pagination.d.ts.map