타입/인터페이스 레퍼런스
일반 프로젝트의 타입 인덱스에 해당하는 문서입니다.
02-reusable-code(TypeScript/React) 및02-reusable-code-python(Python) 라이브러리의 주요 타입을 관리합니다.
TypeScript (02-reusable-code)
01-ui-components
shadcn/ui v4 (new-york 스타일) 기반. 각 컴포넌트는 Radix UI 프리미티브를 래핑하며 자체 Props 타입을 export합니다.
| 서브카테고리 | 주요 컴포넌트 | Props 타입 예시 |
|---|---|---|
| shadcn-core | Button, Dialog, Tabs, Separator 등 | ButtonProps, DialogProps |
| shadcn-form | Input, Select, Checkbox, RadioGroup 등 | InputProps, SelectProps |
| shadcn-overlay | Sheet, Drawer, Popover, Tooltip 등 | SheetProps, DrawerProps |
| shadcn-nav | NavigationMenu, Breadcrumb, Menubar 등 | NavigationMenuProps |
| shadcn-data | Table, Card, Badge, Avatar 등 | TableProps, CardProps |
| shadcn-misc | Calendar, Carousel, Chart 등 | CalendarProps |
| web3 | 결제 컴포넌트 | Web3 결제 관련 타입 |
02-hooks
| 훅 | 경로 | 시그니처 |
|---|---|---|
| useDebounce | 02-hooks/useDebounce.ts | <T>(value: T, delay: number) => T |
| useInfiniteScroll | 02-hooks/useInfiniteScroll.ts | (options: InfiniteScrollOptions) => InfiniteScrollReturn |
| useAutoSave | 02-hooks/useAutoSave.ts | <T>(data: T, saveFn: (data: T) => Promise<void>, delay?: number) => AutoSaveReturn |
| useUnsavedChangesWarning | 02-hooks/useUnsavedChangesWarning.ts | (hasChanges: boolean) => void |
| useGeolocation | 02-hooks/useGeolocation.ts | () => GeolocationReturn |
03-utils
| 유틸 | 경로 | 시그니처 |
|---|---|---|
| cn | 03-utils/cn.ts | (...inputs: ClassValue[]) => string |
| formatPrice | 03-utils/formatters/price.ts | (amount: number, options?: PriceFormatOptions) => string |
| formatDate | 03-utils/formatters/date.ts | (date: Date, labels?: DateLabels) => string |
| exportExcel | 03-utils/export/excel.ts | (data: ExportData, options?: ExcelOptions) => Promise<Blob> |
| exportPdf | 03-utils/export/pdf.ts | (data: ExportData, options?: PdfOptions) => Promise<Blob> |
| exportCsv | 03-utils/export/csv.ts | (data: ExportData) => string |
04-supabase-patterns
| 패턴 | 경로 | 주요 타입 |
|---|---|---|
| client | 04-supabase-patterns/client.ts | SupabaseClient |
| server | 04-supabase-patterns/server.ts | ServerSupabaseClient |
| middleware | 04-supabase-patterns/middleware.ts | MiddlewareConfig |
05-auth-rbac
| 패턴 | 경로 | 주요 타입 |
|---|---|---|
| Edge JWT | 05-auth-rbac/edge-jwt/ | JWTPayload, AuthConfig |
| 미들웨어 | 05-auth-rbac/middleware/ | AuthMiddlewareOptions, ProtectedRoute |
06-api-middleware
| 패턴 | 경로 | 주요 타입 |
|---|---|---|
| API Client | 06-api-middleware/api-client.ts | ApiClientConfig, ApiResponse<T> |
| Retry Policy | 06-api-middleware/retry-policy.ts | RetryOptions, RetryPolicy |
| Error Handler | 06-api-middleware/error-handler.ts | AppError, ErrorCode |
08-services
| 서비스 | 경로 | 주요 타입 |
|---|---|---|
| Cloudinary | 08-services/cloudinary/ | CloudinaryConfig, UploadOptions |
10-stripe-saas
| 패턴 | 경로 | 주요 타입 |
|---|---|---|
| Stripe API | 10-stripe-saas/api/ | StripeConfig, PlanConfig, SubscriptionStatus |
| 컴포넌트 | 10-stripe-saas/components/ | PricingCardProps, CheckoutFormProps |
Python (02-reusable-code-python)
ai/
| 모듈 | 경로 | 주요 클래스/타입 |
|---|---|---|
| WhisperSTTEngine | ai/whisper_engine.py | WhisperSTTEngine (싱글톤) |
api/
| 모듈 | 경로 | 주요 클래스/타입 |
|---|---|---|
| FastAPI 인증 | api/fastapi_auth.py | AuthConfig, TokenPayload |
| WebSocket | api/websocket_handler.py | WSHandler, WSMessage |
utils/
| 모듈 | 경로 | 주요 클래스/타입 |
|---|---|---|
| Excel 리더 | utils/excel_reader.py | ExcelReader, SheetData |
| PDF 리더 | utils/pdf_reader.py | PdfReader, PageContent |
| HWPX 생성기 | utils/hwpx_generator.py | HwpxGenerator, DocumentSection |
| 오디오 프로세서 | utils/audio_processor.py | AudioProcessor, AudioConfig |
| 세션 매니저 | utils/session_manager.py | SQLiteSessionManager |
| 디바이스 감지 | utils/device_detector.py | DeviceDetector, DeviceInfo |
최종 갱신
- 2026-02-16: 초판 작성