
"use client";
import { PaginationEllipsisPlacement, PaginationSize, PaginationVariant, PaginationVisibleItem } from "../../../types/dist/index.js";
import * as _$react from "react";
import * as _$react_jsx_runtime0 from "react/jsx-runtime";

//#region src/components/client/Pagination/paginationContext.d.ts
interface PaginationContextValue {
  activePage: number;
  totalPages: number;
  maxVisiblePageNumbers: number;
  ellipsisPlacement: PaginationEllipsisPlacement;
  size: PaginationSize;
  variant: PaginationVariant;
  getPageHref?: (page: number) => string;
  getItemAriaLabel: (page: number, isActive: boolean) => string;
  onPageChange?: (page: number) => void;
}
declare const defaultGetItemAriaLabel: (page: number, isActive: boolean) => string;
declare const PaginationContext: _$react.Context<PaginationContextValue | null>;
interface PaginationProviderProps {
  value: Omit<PaginationContextValue, never>;
  children: React.ReactNode;
}
declare const PaginationProvider: {
  ({
    value,
    children
  }: PaginationProviderProps): _$react_jsx_runtime0.JSX.Element;
  displayName: string;
};
declare function usePaginationContext(): PaginationContextValue;
declare function useVisiblePages(): PaginationVisibleItem[];
//#endregion
export { PaginationContext, PaginationProvider, defaultGetItemAriaLabel, usePaginationContext, useVisiblePages };