import { View, Animated, StyleSheet, type StyleProp, type ViewStyle, type TextStyle, } from 'react-native'; import React from 'react'; import { useOnboarding } from '../hooks/useOnboarding'; import { Button } from './button'; type FooterProps = { animatedValue: Animated.Value; numberOfScreens: number; backgroundColor: string; color: string; width: number; showDone?: boolean; showSkip?: boolean; showNext?: boolean; nextLabel?: string | React.ReactNode; skipLabel?: string | React.ReactNode; doneLabel?: string | React.ReactNode; paginationContainerStyle?: StyleProp; buttonRightContainerStyle?: StyleProp; buttonLeftContainerStyle?: StyleProp; dotsContainerStyle?: StyleProp; doneLabelStyle?: StyleProp; hasSkipPosition?: boolean; skipLabelStyle?: StyleProp; skipButtonContainerStyle?: StyleProp; nextButtonContainerStyle?: StyleProp; doneButtonContainerStyle?: StyleProp; nextLabelStyle?: StyleProp; paginationPosition?: 'top' | 'bottom'; onDone?: () => void; onSkip?: () => void; onNext?: () => void; }; export function Pagination(props: FooterProps) { const { isDone } = useOnboarding(); const dots = Array.from({ length: props.numberOfScreens }, (_, i) => i); const width = props.width; return ( {props.showSkip && !props.hasSkipPosition && (