declare module "@/components/AudioRecorder" {
  interface AudioRecorderProps {}
  const AudioRecorder: React.FC<AudioRecorderProps>;
  export default AudioRecorder;
}

declare module "@/components/RecordingList" {
  interface Recording {
    id: string;
    title: string;
    duration: number;
    createdAt: string;
    audioUrl: string;
  }

  interface RecordingListProps {
    recordings: Recording[];
  }

  const RecordingList: React.FC<RecordingListProps>;
  export default RecordingList;
}

declare module "@/components/LoadingSpinner" {
  interface LoadingSpinnerProps {
    size?: "sm" | "md" | "lg";
    color?: "blue" | "red" | "green" | "gray" | "white";
    text?: string;
  }

  const LoadingSpinner: React.FC<LoadingSpinnerProps>;
  export default LoadingSpinner;
}

declare module "@/components/AudioPlayer" {
  interface AudioPlayerProps {
    src: string;
    title?: string;
    duration?: number;
  }

  const AudioPlayer: React.FC<AudioPlayerProps>;
  export default AudioPlayer;
}

declare module "@/components/UserMenu" {
  const UserMenu: React.FC;
  export default UserMenu;
}

declare module "@/components/Header" {
  const Header: React.FC;
  export default Header;
}
