import { requireNativeComponent, UIManager } from 'react-native'; import type { StyleProp, NativeSyntheticEvent, ViewStyle, NativeMethods, } from 'react-native'; import type { HMSHLSPlayerCuesEvent, HMSHLSPlayerPlaybackEvent, HMSHLSPlayerStatsEvent, RequestedDataEvent, } from '../../types'; export type HmsHlsPlaybackEventHandler = ( event: NativeSyntheticEvent ) => void; export type HmsHlsStatsEventHandler = ( event: NativeSyntheticEvent ) => void; export type HlsSPlayerCuesEventHandler = ( event: NativeSyntheticEvent ) => void; export type RequestedDataEventHandler = ( event: NativeSyntheticEvent ) => void; export type RCTHMSHLSPlayerProps = { url?: string; style?: StyleProp; enableStats?: boolean; enableControls?: boolean; onHmsHlsPlaybackEvent?: HmsHlsPlaybackEventHandler; onHmsHlsStatsEvent?: HmsHlsStatsEventHandler; onDataReturned?: RequestedDataEventHandler; onHlsPlayerCuesEvent?: HlsSPlayerCuesEventHandler; }; export const RCTHMSHLSPlayer = requireNativeComponent('HMSHLSPlayer'); export type RCTHMSHLSPlayerRef = React.Component & Readonly; export const RCTHMSHLSPlayerViewManagerConfig = UIManager.getViewManagerConfig('HMSHLSPlayer');