/// import type { MeltActionReturn } from '../../internal/types.js'; import type { PaginationEvents } from './events.js'; import type { CreatePaginationProps, Page } from './types.js'; export declare function createPagination(props: CreatePaginationProps): { elements: { root: import("../../internal/helpers/index.js").MeltElement>, () => { 'data-scope': string; }, string>; pageTrigger: import("../../internal/helpers/index.js").MeltElement<{ update: (updater: import("svelte/store").Updater, sideEffect?: ((newValue: number) => void) | undefined) => void; set: (this: void, value: number) => void; subscribe(this: void, run: import("svelte/store").Subscriber, invalidate?: import("svelte/store").Invalidator | undefined): import("svelte/store").Unsubscriber; get: () => number; destroy?: (() => void) | undefined; }, (node: HTMLElement) => MeltActionReturn, ($page: number) => (pageItem: Page) => { 'aria-label': string; 'data-value': number; 'data-selected': string | undefined; }, string>; prevButton: import("../../internal/helpers/index.js").MeltElement<{ update: (updater: import("svelte/store").Updater, sideEffect?: ((newValue: number) => void) | undefined) => void; set: (this: void, value: number) => void; subscribe(this: void, run: import("svelte/store").Subscriber, invalidate?: import("svelte/store").Invalidator | undefined): import("svelte/store").Unsubscriber; get: () => number; destroy?: (() => void) | undefined; }, (node: HTMLElement) => MeltActionReturn, ($page: number) => { readonly 'aria-label': "Previous"; readonly disabled: boolean; }, string>; nextButton: import("../../internal/helpers/index.js").MeltElement<[{ update: (updater: import("svelte/store").Updater, sideEffect?: ((newValue: number) => void) | undefined) => void; set: (this: void, value: number) => void; subscribe(this: void, run: import("svelte/store").Subscriber, invalidate?: import("svelte/store").Invalidator | undefined): import("svelte/store").Unsubscriber; get: () => number; destroy?: (() => void) | undefined; }, import("../../internal/helpers/withGet.js").WithGet>], (node: HTMLElement) => MeltActionReturn, ([$page, $totalPages]: [number, number]) => { readonly 'aria-label': "Next"; readonly disabled: boolean; }, string>; }; states: { range: import("svelte/store").Readable<{ start: number; end: number; }>; page: { update: (updater: import("svelte/store").Updater, sideEffect?: ((newValue: number) => void) | undefined) => void; set: (this: void, value: number) => void; subscribe(this: void, run: import("svelte/store").Subscriber, invalidate?: import("svelte/store").Invalidator | undefined): import("svelte/store").Unsubscriber; get: () => number; destroy?: (() => void) | undefined; }; pages: import("svelte/store").Readable; totalPages: import("svelte/store").Readable; }; options: import("../../internal/helpers/index.js").ToWritableStores | undefined; onPageChange?: import("../../internal/helpers/index.js").ChangeFn | undefined; }, "page" | "defaultPage" | "onPageChange">>; };