import { KycDocUploadResponse, MyKycResponse } from '@interfaces'; import { apiClient } from '@services'; export interface KycUploadFile { uri: string; name: string; type: string; } export interface KycUploadMetadata { docName: string; docNumber: string; } export interface KycUploadPayload { files: KycUploadFile[]; metadata: KycUploadMetadata[]; } export const uploadKycDocuments = async ( payload: KycUploadPayload, ): Promise => { const formData = new FormData(); payload.files.forEach(file => { // In React Native, FormData requires appending file objects with uri, name, and type properties formData.append('files', { uri: file.uri, name: file.name, type: file.type, } as any); }); formData.append('metadata', JSON.stringify(payload.metadata)); return await apiClient.post('/kyc/upload', formData); }; export const getMyKyc = async (): Promise => { return await apiClient.get('/kyc/my-details'); };