Quiero que la temp variable sea del tipo Id , que es un tipo personalizado. Sin embargo, recibo un error en la temp :
Type '{ [index: string]: { [id: string]: { [targets: string]: number; }; }; }' no es asignable a
type 'Id'. 'string' index signatures are incompatible. Type '{ [id: string]: { [targets: string]: number; }; }' (nota: el último tipo es el tipo de responseDeploymentData[key][index] )
faltan las siguientes propiedades del tipo '{ count_targets: number; count_targets_excluded: número; count_targets_pending: número; count_targets_in_progress: número; count_targets_completed: número; count_targets_failed: número; }[]': longitud, pop, push, concatenación y 29 más.
Quiero incluir la información de count_target en mi tipo, pero no estoy seguro de cómo incorporar eso con la id . Vea el código a continuación.
type Id = { [key in string]: { count_targets: number; count_targets_excluded: number; count_targets_pending: number; count_targets_in_progress: number; count_targets_completed: number; count_targets_failed: number; }[]; } interface CountersData{ //other properties id?: Id[]; } \\later in code const parseCounters = useCallback( async ( responseDeploymentData: { [state: string]: { [date: string]: {[index: string]: {[id: string] : {[targets: string ]: number} } } } } ) => { const countersData = {} as CountersData; for(const index in responseDeploymentData[key][date]){ const temp: Id = responseDeploymentData[key][index]; countersData.id?.push(temp); }