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