import React from 'react';
import type { ScrollViewProps } from 'react-native';
import { ScrollView } from 'react-native';
import AnimatedScroller from './AnimatedScrollable';
import type { ActionGroupProps } from '../FAB/ActionGroup';
import type { FABProps } from '../FAB/FAB';

export interface ScrollViewWithFABProps extends ScrollViewProps {
  /**
   * FAB or FAB.ActionGroup props props.
   */
  fabProps: FABProps | ActionGroupProps;
}

const ScrollViewWithFAB = ({ fabProps, ...props }: ScrollViewWithFABProps) => (
  <AnimatedScroller
    ScrollComponent={<ScrollView {...props} />}
    fabProps={fabProps}
  />
);

export default ScrollViewWithFAB;
