import React, { ReactNode } from 'react'; export interface HighlightVideoPreviewProps { /** Highlight video URL */ highlightVideoUrl?: string | null; /** Video thumbnail URL */ highlightVideoThumbnail?: string | null; /** Video duration in milliseconds */ highlightVideoDurationMs?: number | null; /** Whether video was AI generated */ highlightVideoSource?: 'manual' | 'ai_generated' | null; /** Handler to upload a new highlight video - receives File, should return uploaded URL */ onUpload: (file: File) => Promise; /** Handler to delete the highlight video */ onDelete: () => Promise; /** Whether upload is in progress */ isUploading?: boolean; /** Custom label */ label?: string; /** Custom empty state message */ emptyMessage?: string; /** Upload progress component (optional) */ uploadProgressComponent?: ReactNode; /** Video preview component - receives video data, should render the preview */ renderVideoPreview: (props: { videoUrl: string; title: string; thumbnailUrl?: string; onDelete: () => Promise; }) => ReactNode; } /** * HighlightVideoPreview - Unified component for highlight video preview and manual upload * * This component provides a consistent UI for both CustomerInterview and ProductRelease entities * for displaying and manually uploading highlight videos. */ export declare function HighlightVideoPreview({ highlightVideoUrl, highlightVideoThumbnail, highlightVideoDurationMs, highlightVideoSource, onUpload, onDelete, isUploading, label, emptyMessage, uploadProgressComponent, renderVideoPreview, }: HighlightVideoPreviewProps): React.JSX.Element; export default HighlightVideoPreview; //# sourceMappingURL=highlight-video-preview.d.ts.map