import { EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core'; import { NgPaginationConfig } from './ng-pagination.config'; import * as i0 from "@angular/core"; /** * A context for the * * `NgPaginationFirst` * * `NgPaginationPrevious` * * `NgPaginationNext` * * `NgPaginationLast` * * `NgPaginationEllipsis` * * link templates in case you want to override one. * * @since 4.1.0 */ export interface NgPaginationLinkContext { /** * The currently selected page number */ currentPage: number; /** * If `true`, the current link is disabled */ disabled: boolean; } /** * A context for the `NgPaginationNumber` link template in case you want to override one. * * Extends `NgPaginationLinkContext`. * * @since 4.1.0 */ export interface NgPaginationNumberContext extends NgPaginationLinkContext { /** * The page number, displayed by the current page link. */ $implicit: number; } /** * A directive to match the 'ellipsis' link template * * @since 4.1.0 */ export declare class NgPaginationEllipsis { templateRef: TemplateRef; constructor(templateRef: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A directive to match the 'first' link template * * @since 4.1.0 */ export declare class NgPaginationFirst { templateRef: TemplateRef; constructor(templateRef: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A directive to match the 'last' link template * * @since 4.1.0 */ export declare class NgPaginationLast { templateRef: TemplateRef; constructor(templateRef: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A directive to match the 'next' link template * * @since 4.1.0 */ export declare class NgPaginationNext { templateRef: TemplateRef; constructor(templateRef: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A directive to match the page 'number' link template * * @since 4.1.0 */ export declare class NgPaginationNumber { templateRef: TemplateRef; constructor(templateRef: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A directive to match the 'previous' link template * * @since 4.1.0 */ export declare class NgPaginationPrevious { templateRef: TemplateRef; constructor(templateRef: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A component that displays page numbers and allows to customize them in several ways. */ export declare class NgPagination implements OnChanges { pageCount: number; pages: number[]; tplEllipsis: NgPaginationEllipsis; tplFirst: NgPaginationFirst; tplLast: NgPaginationLast; tplNext: NgPaginationNext; tplNumber: NgPaginationNumber; tplPrevious: NgPaginationPrevious; /** * If `true`, pagination links will be disabled. */ disabled: boolean; /** * If `true`, the "First" and "Last" page links are shown. */ boundaryLinks: boolean; /** * If `true`, the "Next" and "Previous" page links are shown. */ directionLinks: boolean; /** * If `true`, the ellipsis symbols and first/last page numbers will be shown when `maxSize` > number of pages. */ ellipses: boolean; /** * Whether to rotate pages when `maxSize` > number of pages. * * The current page always stays in the middle if `true`. */ rotate: boolean; /** * The number of items in your paginated collection. * * Note, that this is not the number of pages. Page numbers are calculated dynamically based on * `collectionSize` and `pageSize`. Ex. if you have 100 items in your collection and displaying 20 items per page, * you'll end up with 5 pages. */ collectionSize: number; /** * The maximum number of pages to display. */ maxSize: number; /** * The current page. * * Page numbers start with `1`. */ page: number; /** * The number of items per page. */ pageSize: number; /** * An event fired when the page is changed. Will fire only if collection size is set and all values are valid. * * Event payload is the number of the newly selected page. * * Page numbers start with `1`. */ pageChange: EventEmitter; /** * The pagination display size. * * Bootstrap currently supports small and large sizes. */ size: 'sm' | 'lg'; constructor(config: NgPaginationConfig); hasPrevious(): boolean; hasNext(): boolean; nextDisabled(): boolean; previousDisabled(): boolean; selectPage(pageNumber: number): void; ngOnChanges(changes: SimpleChanges): void; isEllipsis(pageNumber: any): boolean; /** * Appends ellipses and first/last page number to the displayed pages */ private _applyEllipses; /** * Rotates page numbers based on maxSize items visible. * Currently selected page stays in the middle: * * Ex. for selected page = 6: * [5,*6*,7] for maxSize = 3 * [4,5,*6*,7] for maxSize = 4 */ private _applyRotation; /** * Paginates page numbers based on maxSize items per page. */ private _applyPagination; private _setPageInRange; private _updatePages; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }