import { useStorageState } from '@/utils/useStorageState'; import type { Base64ConverterPageMode } from '@/types/storage'; import TextMode from './components/TextMode'; import Base64ConverterSection from './components/Base64ConverterSection'; import SwitchButtonGroup from '@/components/SwitchButtonGroup'; const VALID_PAGE_MODES: readonly Base64ConverterPageMode[] = ['text', 'file', 'image']; const isValidPageMode = (val: unknown): val is Base64ConverterPageMode => typeof val === 'string' && (VALID_PAGE_MODES as readonly string[]).includes(val); type PageMode = Base64ConverterPageMode; export default function Index() { const [pageMode, setPageMode] = useStorageState( 'base64Converter/pageMode', 'text', isValidPageMode, ); return (