<commit_before>import React from 'react'
import ReactNative from 'react-native'
import _omit from 'lodash/omit'

export interface IProps {
  align?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch',
  justify?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around',
  alignSelf?: 'auto' | 'flex-start' | 'flex-end' | 'center' | 'stretch',
  animated?: boolean,
  bottom?: number,
  center?: boolean,
  flex?: number | string,
  grow?: number | boolean,
  shrink?: number,
  basis?: number,
  height?: number,
  left?: number,
  margin?: number,
  marginBottom?: number,
  marginLeft?: number,
  marginRight?: number,
  marginTop?: number,
  marginVertical?: number,
  marginHorizontal?: number,
  maxHeight?: number,
  maxWidth?: number,
  minHeight?: number,
  minWidth?: number,
  overflow?: 'visible' | 'hidden' | 'scroll',
  padding?: number,
  paddingBottom?: number,
  paddingLeft?: number,
  paddingRight?: number,
  paddingTop?: number,
  paddingVertical?: number,
  paddingHorizontal?: number,
  position?: 'absolute' | 'relative',
  refNode?: () => {},
  right?: number,
  style?: Object,
  top?: number,
  width?: number,
  zIndex?: number,

  bounces?: boolean,
  contentContainerStyle?: Object,
  horizontal?: boolean,
  keyboardDismissMode?: 'none' | 'interactive' | 'on-drag',
  keyboardShouldPersistTaps?: 'always' | 'never' | 'handled' | boolean,
  onContentSizeChange?: Function,
  onScroll?: Function,
  pagingEnabled?: boolean,
  refreshControl?: JSX.Element,
  removeClippedSubviews?: boolean,
  scrollEnabled?: boolean,
  scrollEventThrottle?: number,
  showsHorizontalScrollIndicator?: boolean,
  showsVerticalScrollIndicator?: boolean,
}
<commit_msg>Add additional ts types for ScrollView<commit_after>import React from 'react'
import ReactNative from 'react-native'
import _omit from 'lodash/omit'

export interface IProps {
  align?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch',
  justify?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around',
  alignSelf?: 'auto' | 'flex-start' | 'flex-end' | 'center' | 'stretch',
  animated?: boolean,
  bottom?: number,
  center?: boolean,
  flex?: number | string,
  grow?: number | boolean,
  shrink?: number,
  basis?: number,
  height?: number,
  left?: number,
  margin?: number,
  marginBottom?: number,
  marginLeft?: number,
  marginRight?: number,
  marginTop?: number,
  marginVertical?: number,
  marginHorizontal?: number,
  maxHeight?: number,
  maxWidth?: number,
  minHeight?: number,
  minWidth?: number,
  overflow?: 'visible' | 'hidden' | 'scroll',
  padding?: number,
  paddingBottom?: number,
  paddingLeft?: number,
  paddingRight?: number,
  paddingTop?: number,
  paddingVertical?: number,
  paddingHorizontal?: number,
  position?: 'absolute' | 'relative',
  refNode?: () => {},
  right?: number,
  style?: Object,
  top?: number,
  width?: number,
  zIndex?: number,

  alwaysBounceHorizontal?: boolean,
  alwaysBounceVertical?: boolean,
  automaticallyAdjustContentInsets?: boolean,
  bounces?: boolean,
  bouncesZoom?: boolean,
  canCancelContentTouches?: boolean,
  centerContent?: boolean,
  contentContainerStyle?: Object,
  contentInset?: {top?: number, left?: number, bottom?: number, right?: number},
  contentOffset?: {x: number, y: number},
  decelerationRate?: "fast" | "normal" | number,
  directionalLockEnabled?: boolean,
  horizontal?: boolean,
  indicatorStyle?: "default" | "black" | "white",
  keyboardDismissMode?: 'none' | 'interactive' | 'on-drag',
  keyboardShouldPersistTaps?: 'always' | 'never' | 'handled' | boolean,
  maximumZoomScale?: number,
  minimumZoomScale?: number,
  onContentSizeChange?: Function,
  onScroll?: () => void,
  onScrollAnimationEnd?: () => void,
  onScrollBeginDrag?: () => void,
  onScrollEndDrag?: () => void,
  onMomentumScrollEnd?: () => void,
  onMomentumScrollBegin?: () => void,
  pagingEnabled?: boolean,
  refreshControl?: JSX.Element,
  removeClippedSubviews?: boolean,
  showsHorizontalScrollIndicator?: boolean,
  scrollEnabled?: boolean,
  scrollEventThrottle?: number,
  scrollIndicatorInsets?: {top?: number, left?: number, bottom?: number, right?: number},
  scrollsToTop?: boolean,
  showsVerticalScrollIndicator?: boolean,
  snapToAlignment?: "start" | "center" | "end",
  snapToInterval?: number,
  stickyHeaderIndices?: number[],
  zoomScale?: number,
}

{'fraction_non_alphanumeric': 0.1526700136923779, 'fraction_numerical': 0.0, 'mean_word_length': 5.14726507713885, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3506793', 'n_tokens_mistral': 1357, 'n_tokens_neox': 1365, 'n_words': 356}