Solución

@fernandozamoranoo·3/8/2026TypeScript
solution.tsTypeScript
async function getUser(id: number): Promise<{ id: number; name: string }> {
  const users: Record<number, { id: number; name: string }> = {
    1: { id: 1, name: "Alice" },
    2: { id: 2, name: "Bob" },
  };
  return Promise.resolve(users[id] ?? { id, name: "Unknown" });
}

async function getOrders(userId: number): Promise<{ id: number; amount: number }[]> {
  const orders: Record<number, { id: number; amount: number }[]> = {
    1: [{ id: 101, amount: 100 }, { id: 102, amount: 50 }],
    2: [{ id: 201, amount: 200 }],
  };
  return Promise.resolve(orders[userId] ?? []);
}

async function getUserSummary(id: number): Promise<{ userName: string; totalAmount: number }> {
  const { name } = await getUser(id)
  const orders = await getOrders(id)
  const total = orders.reduce((acum, {amount}) => acum + amount, 0)

  return { userName: name, totalAmount: total };
}

export { getUserSummary };
0respuestas
Respuestas

Aún no hay respuestas

¡Sé el primero en responder!

Escribir un comentario

Recuerda ser amable. Estás comentando la solución de otra persona. Comparte tu perspectiva de forma constructiva y respetuosa.

Debes iniciar sesión para publicar un comentario.