import { ReactNode, RefObject, VideoHTMLAttributes } from "react"; /** * There is a known issue in React in regards to the 'muted' property which causes the warning: * "Warning: unstable_flushDiscreteUpdates: Cannot flush updates when React is already rendering." * * https://github.com/facebook/react/issues/10389 * https://github.com/facebook/react/issues/6544 * https://github.com/testing-library/react-testing-library/issues/470 */ type Layout = "cover" | "contain" | "stretchHorizontally" | "stretchVertically"; export type VideoProps = VideoHTMLAttributes & { src: string; type: string; layout?: Layout; autoPlay?: boolean; loop?: boolean; muted?: boolean; children?: ReactNode; containerRef?: RefObject; poster?: string; }; declare function Video({ src, type, children, containerRef, poster, muted, loop, autoPlay, layout, ...otherVideoProps }: VideoProps): JSX.Element; export default Video;