import React from 'react';

/**
 *
 * The ShareRecordingPane component provides a pane interface for sharing
 *
 * recordings. It includes options for specifying playback timestamps and generates
 *
 * shareable links accordingly. The pane allows users to copy the shareable link
 *
 * and adjust playback timestamps.
 *
 * @example 
 *
 * import { useState } from "react";
 * import { Button } from "neetoui";
 * import ShareRecordingPane from "components/ShareRecordingPane";
 * 
 * const ShareRecordingPaneExample = () => {
 *   const [isOpen, setIsOpen] = useState(false);
 * 
 *   return (
 *     <>
 *       <Button
 *         label="Open Share Recording Pane"
 *         onClick={() => setIsOpen(true)}
 *       />
 *       <ShareRecordingPane
 *         recordingUrl="https://example.com/recording"
 *         totalDuration={3600} // Total duration in seconds (e.g., 1 hour)
 *         getCurrentTimestamp={() => 300} // Current playback time in seconds
 *         isOpen={isOpen} // Boolean indicating if the pane is open
 *         onClose={() => setIsOpen(false)} // Function to close the pane
 *         isLoading={false}
 *         preview={({ currentPlaybackTime }) => (
 *           <img
 *             src={`https://example.com/recording/preview?t=${currentPlaybackTime}`}
 *           />
 *         )}
 *       />
 *     </>
 *   );
 * };
 * 
 * export default ShareRecordingPaneExample;
 * @endexample
 * @example 
 *
 * import { useState } from "react";
 * import { Button } from "neetoui";
 * import ShareRecordingPane from "components/ShareRecordingPane";
 * 
 * const ShareRecordingPaneExample = () => {
 *   const [isOpen, setIsOpen] = useState(false);
 * 
 *   return (
 *     <>
 *       <Button
 *         label="Open Share Recording Pane with multiple recording URLs"
 *         onClick={() => setIsOpen(true)}
 *       />
 *       <ShareRecordingPane
 *         recordingUrls={[
 *           "https://example.com/recording",
 *           "https://customexample.domain.com/recording",
 *         ]}
 *         totalDuration={3600} // Total duration in seconds (e.g., 1 hour)
 *         getCurrentTimestamp={() => 300} // Current playback time in seconds
 *         isOpen={isOpen} // Boolean indicating if the pane is open
 *         onClose={() => setIsOpen(false)} // Function to close the pane
 *         isLoading={false}
 *       />
 *     </>
 *   );
 * };
 * 
 * export default ShareRecordingPaneExample;
 * @endexample
*/
declare const ShareRecordingPane: React.FC<{
  recordingUrl: string;
  recordingUrls?: Array<string>;
  totalDuration: number;
  getCurrentTimestamp: () => number;
  isOpen: boolean;
  onClose: Function;
  isLoading?: boolean;
  preview?: React.ElementType;
  size?: "extraLarge" | "large" | "small";
  enableAutoplayAndMuteFlags?: boolean;
}>;

export { ShareRecordingPane as default };
