export type GifLoopBehavior = 'loop' | 'pause-after-finish' | 'unmount-after-finish'; export type RemotionGifProps = { src: string; width?: number; height?: number; onLoad?: (info: { width: number; height: number; delays: number[]; frames: ImageData[]; }) => void; onError?: (error: Error) => void; fit?: GifFillMode; playbackRate?: number; style?: React.CSSProperties; loopBehavior?: GifLoopBehavior; id?: string; delayRenderTimeoutInMilliseconds?: number; }; export type GifState = { delays: number[]; frames: ImageData[]; width: number; height: number; }; export type GifFillMode = 'contain' | 'cover' | 'fill';