import { LitElement } from "lit"; import type { TemplateResult } from "lit"; import "../primitives/index.js"; type PaginationSize = "xs" | "sm" | "md" | "lg"; export interface PaginationPageChangeDetail { page: number; } export interface PaginationOffsetChangeDetail { offset: number; limit: number; } /** * @fires change - Fired on commit with the new value in `detail`. * @fires xm-pagination-page-change - Fired when the page changes (`detail.page`). * @fires xm-pagination-offset-change - Fired in offset/limit mode (`detail.offset`, `detail.limit`). */ export declare class XmPagination extends LitElement { static styles: CSSStyleSheet[]; page: number; total: number; siblings: number; size: PaginationSize; /** Offset/limit mode (AD-18): set `limit` + `total-items` (+ `offset`) instead of `page` + `total`. The page-based API stays available and unchanged; in this mode the control ALSO emits xm-pagination-offset-change. */ offset: number; limit: number; totalItems: number; private _isOffsetMode; render(): TemplateResult; private _clamp; private _goto; private _pageWindow; } declare global { interface HTMLElementTagNameMap { "xm-pagination": XmPagination; } } export {};