Interface defining the options for the Pagination component.

PaginationOptions

Pagination State:

interface PaginationOptions {
    totalPages: number;
    currentUserPage: number;
    handlePageChange?: ((options: GeneratePageContentOptions) => Promise<void>);
    position?: "left" | "right" | "middle";
    location?: "top" | "bottom" | "middle";
    direction?: "horizontal" | "vertical";
    buttonsContainerStyle?: StyleProp<ViewStyle>;
    activePageStyle?: StyleProp<ViewStyle>;
    inactivePageStyle?: StyleProp<ViewStyle>;
    backgroundColor?: string;
    paginationHeight?: number;
    showAspect?: boolean;
    parameters: PaginationParameters;
    style?: object;
    renderContent?: ((options: {
        defaultContent: ReactNode;
        dimensions: {
            width: number;
            height: number;
        };
    }) => ReactNode);
    renderContainer?: ((options: {
        defaultContainer: ReactNode;
        dimensions: {
            width: number;
            height: number;
        };
    }) => ReactNode);
}

Properties

totalPages: number

Total number of pages available

currentUserPage: number

Current page number the user is viewing (1-indexed)

handlePageChange?: ((options: GeneratePageContentOptions) => Promise<void>)

Function to handle page changes (default: generatePageContent)

Layout & Positioning:

position?: "left" | "right" | "middle"

Horizontal alignment

location?: "top" | "bottom" | "middle"

Vertical alignment

direction?: "horizontal" | "vertical"

Pagination button layout direction

buttonsContainerStyle?: StyleProp<ViewStyle>

Custom styles for buttons container

activePageStyle?: StyleProp<ViewStyle>

Custom styles for active page button

inactivePageStyle?: StyleProp<ViewStyle>

Custom styles for inactive page buttons

backgroundColor?: string

Background color of pagination container

paginationHeight?: number

Height of the pagination container in pixels

showAspect?: boolean

Whether to display the pagination component

Styling:

Pagination context and breakout room parameters

Advanced Render Overrides:

style?: object

Additional custom styles for container

State Parameters:

renderContent?: ((options: {
    defaultContent: ReactNode;
    dimensions: {
        width: number;
        height: number;
    };
}) => ReactNode)

Function to wrap or replace pagination content

renderContainer?: ((options: {
    defaultContainer: ReactNode;
    dimensions: {
        width: number;
        height: number;
    };
}) => ReactNode)

Function to wrap or replace pagination container