refactor(section-d): frontend API client type safety audit

All 19 api/*.ts files already used import api from './client' (X-Tenant-ID
guaranteed). Fixed missing type generics and any usage in 10 files:
- worker.ts: args: any[] → unknown[]
- imports.ts, notifications.ts: add response type generics
- renderTemplates.ts: add typed generics on 6 calls
- materials.ts, cad.ts: type previously untyped api calls
- products.ts: ProductCadUploadResponse interface, typed generics
- uploads.ts: StepUploadResponse interface
- billing.ts, orders.ts: <Blob> on download calls

Zero bare axios usage, zero as any in API layer.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-08 20:36:48 +01:00
parent 69e94e25e3
commit 596360e507
10 changed files with 59 additions and 24 deletions
+2 -2
View File
@@ -25,12 +25,12 @@ export async function getNotifications(params?: {
unread_only?: boolean
channel?: NotificationChannel
}): Promise<NotificationListResponse> {
const { data } = await api.get('/notifications', { params })
const { data } = await api.get<NotificationListResponse>('/notifications', { params })
return data
}
export async function getUnreadCount(): Promise<number> {
const { data } = await api.get('/notifications/unread-count')
const { data } = await api.get<{ unread_count: number }>('/notifications/unread-count')
return data.unread_count
}