import * as lit_html from 'lit-html';
import * as lit from 'lit';
import { LitElement } from 'lit';
import KemetScrollSnapSlide from './scroll-snap-slide.js';
/**
* @since 1.0.0
* @status stable
*
* @tagname kemet-scroll-snap-paginator
* @summary The scroll snap's pagination.
*
* @prop {array} slides - Information about each slide.
* @prop {string} icon - A string representing which icon to use for pagination. Supports icons used in kemet-icon.
* @prop {number} size - The size in pixels of the icons.
* @prop {boolean} center - Determines whether to center the pagination items.
* @prop {boolean} hideFocusedLinks - Will hide inactive pagination items if set to true.
* @prop {boolean} useNumberPages - If set to true, the pages in the pagination iterator will appear as a set of numbers.
* @prop {boolean} useLabelPages - If set to true, the pages in the pagination iterator will appear as the label set on the slide.
*
* @cssproperty --kemet-scroll-snap-paginator-padding - The padding on the container.
* @cssproperty --kemet-scroll-snap-paginator-gap - The space between pagination items.
* @cssproperty --kemet-scroll-snap-paginator-link-color - The color of a linkable pagination item.
*
* @event kemet-focus - Fires when a set of slides are focused on.
*
*/
declare class KemetScrollSnapPaginator extends LitElement {
static styles: lit.CSSResult[];
slides: KemetScrollSnapSlide[];
icon: string;
size: number;
center: boolean;
hideFocusedLinks: boolean;
useNumberPages: boolean;
useLabelPages: boolean;
updated(): void;
render(): lit_html.TemplateResult<1>;
makePagination(): lit_html.TemplateResult<1>[];
pageDisplay(slide: KemetScrollSnapSlide, visibleIndex: number): string | number | lit_html.TemplateResult<1>;
slideLink(index: string): void;
handleKeyboardInput(event: KeyboardEvent, id: string): void;
}
declare global {
interface HTMLElementTagNameMap {
'kemet-scroll-snap-paginator': KemetScrollSnapPaginator;
}
}
export { KemetScrollSnapPaginator as default };