import { type HTMLAttributes } from "vue"; import { type TailwindClassProp } from "../shared/props.js"; /** * Pagination component. * * Can be passed a slot like so to use a custom link element (like NuxtLink): * ```vue * * ``` */ declare const _default: __VLS_WithTemplateSlots & Readonly<{}>, { customRoute: (route: string, i: number) => { i: number; href: string; }; extraPages: number; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, { link?(_: { class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tfocus-outline\n\thover:text-accent-600\n\thover:border-b-accent-500\n\thover:scale-125\n"; i: number; href: string; text: string; ariaLabel: string; }): any; link?(_: { class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tfocus-outline\n\thover:text-accent-600\n\thover:border-b-accent-500\n\thover:scale-125\n"; i: number; href: string; text: number; ariaLabel: string; }): any; link?(_: { i: number; href: string; ariaLabel: string; class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tfocus-outline\n\thover:text-accent-600\n\thover:border-b-accent-500\n\thover:scale-125\n"; }): any; link?(_: { i: number; href: string; ariaLabel: string; class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tfocus-outline\n\thover:text-accent-600\n\thover:border-b-accent-500\n\thover:scale-125\n"; }): any; link?(_: { i: number; href: string; text: number; ariaLabel: string; class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tfocus-outline\n\thover:text-accent-600\n\thover:border-b-accent-500\n\thover:scale-125\n"; }): any; link?(_: { i: number; href: string; text: string; ariaLabel: string; class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tfocus-outline\n\thover:text-accent-600\n\thover:border-b-accent-500\n\thover:scale-125\n"; }): any; current?(_: { tabindex: string; i: number; ariaLabel: string; aria_current: boolean; class: "\n\t\n\tblock\n\tfocus-outline\n\tborder-b-2\n\tborder-transparent\n\ttransition-all\n\toutlined:rounded\n\n\tborder-b-accent-500\n\tscale-125\n"; }): any; }>; export default _default; type RealProps = { /** The total number of pages. */ total: number; /** The number of the current page. It must be valid, between 0 - total or the component will throw an error. */ current: number; /** The base route/link path for the page. Should end with a forward slash `/`. */ route: string; /** * A function to customize the output href and page link number. By default, page 0 is page 1, page 1 is 1, then everything else is normal. * * This is because usually we have routes like: `/page/1`, `/page/2`, not `/page/0`. * * You can use this function to customize things further. For example, make `/page/1` just `/` */ customRoute?: (route: string, i: number) => { i: number; href: string; }; /** How many extra pages to show to each side of the current page. */ extraPages?: number; }; interface Props extends /** @vue-ignore */ Partial & TailwindClassProp>, RealProps { } type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=LibPagination.vue.d.ts.map