interface.d.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import type React from 'react';
  2. import type { SizeChangerRender } from './Options';
  3. export interface PaginationLocale {
  4. items_per_page?: string;
  5. jump_to?: string;
  6. jump_to_confirm?: string;
  7. page?: string;
  8. prev_page?: string;
  9. next_page?: string;
  10. prev_5?: string;
  11. next_5?: string;
  12. prev_3?: string;
  13. next_3?: string;
  14. page_size?: string;
  15. }
  16. export interface PaginationData {
  17. className: string;
  18. selectPrefixCls: string;
  19. prefixCls: string;
  20. pageSizeOptions: number[];
  21. current: number;
  22. defaultCurrent: number;
  23. total: number;
  24. totalBoundaryShowSizeChanger?: number;
  25. pageSize: number;
  26. defaultPageSize: number;
  27. hideOnSinglePage: boolean;
  28. align: 'start' | 'center' | 'end';
  29. showSizeChanger: boolean;
  30. sizeChangerRender?: SizeChangerRender;
  31. showLessItems: boolean;
  32. showPrevNextJumpers: boolean;
  33. showQuickJumper: boolean | object;
  34. showTitle: boolean;
  35. simple: boolean | {
  36. readOnly?: boolean;
  37. };
  38. disabled: boolean;
  39. locale: PaginationLocale;
  40. style: React.CSSProperties;
  41. prevIcon: React.ComponentType | React.ReactNode;
  42. nextIcon: React.ComponentType | React.ReactNode;
  43. jumpPrevIcon: React.ComponentType | React.ReactNode;
  44. jumpNextIcon: React.ComponentType | React.ReactNode;
  45. }
  46. export interface PaginationProps extends Partial<PaginationData>, React.AriaAttributes {
  47. onChange?: (page: number, pageSize: number) => void;
  48. onShowSizeChange?: (current: number, size: number) => void;
  49. itemRender?: (page: number, type: 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next', element: React.ReactNode) => React.ReactNode;
  50. showTotal?: (total: number, range: [number, number]) => React.ReactNode;
  51. role?: React.AriaRole | undefined;
  52. }
  53. export interface PaginationState {
  54. current: number;
  55. currentInputValue: number;
  56. pageSize: number;
  57. }