import '../icon/icon';
import '../../inputs/button/button';
import type { ComponentSize, ThemeColor, VisualVariant } from '../../types';
export type OrePaginationEvents = {
change: {
page: number;
};
};
export type OrePaginationProps = {
color?: ThemeColor;
label?: string;
page?: number;
'show-first-last'?: boolean;
'show-prev-next'?: boolean;
siblings?: number;
size?: ComponentSize;
'total-pages'?: number;
variant?: VisualVariant;
};
/**
* Page-based navigation control.
*
* @element ore-pagination
*
* @attr {number} page - Current page (1-indexed, default: 1)
* @attr {number} total-pages - Total number of pages (required)
* @attr {number} siblings - Sibling pages around current (default: 1)
* @attr {boolean} show-first-last - Show first/last page buttons (default: false)
* @attr {boolean} show-prev-next - Show prev/next buttons (default: false)
* @attr {string} color - Theme color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'
* @attr {string} variant - Visual variant for nav buttons: 'solid' | 'flat' | 'bordered' | 'outline' | 'ghost' | 'text' | 'frost' (default: 'ghost')
* @attr {string} size - 'sm' | 'md' | 'lg'
* @attr {string} label - Accessible nav label (default: 'Pagination')
*
* @fires change - Emitted when the page changes, with { page: number }
*
* @cssprop --pagination-item-size - Width/height of each item
* @cssprop --pagination-gap - Gap between items
* @cssprop --pagination-radius - Border radius of items
*
* @part page-btn - Page button.
* @part nav - Navigation container.
* @part list - List container.
* @part first-btn - First page button.
* @part prev-btn - Previous page button.
* @part next-btn - Next page button.
* @part last-btn - Last page button.
* @example
* ```html
*
*
*
*
*
*
*
*
* ```
*/
export declare const PAGINATION_TAG: "ore-pagination";
//# sourceMappingURL=pagination.d.ts.map