Tengo estos datos de ejemplo:
{ lastName: "dasdasd", totalAmount: 400, cartItems: [ { color: "Black", size: "500", quantity: 2, cat: "ML", name: "Tumbler", price: 200 } ], orderCreatedAt: { seconds: 1647338693, nanoseconds: 319000000 }, Address: "France", houseNo: "7", firstName: "Anna", }, Quería imprimir el nombre, el apellido, el número de casa, la dirección, el monto total, los artículos del carrito (solo nombre y color) y luego la fecha de la marca de tiempo de orderCreatedAt . Recreé esto en codesandbox:https://codesandbox.io/s/js-pdf-78272j?file=/src/App.js:184-627
const handlePrint = () => { console.log("clicked"); const doc = new jsPDF(); doc.text("Order details", 20, 10); const columns = [ "First Name", "Last Name", "House No.", " Address", " Cart Items", "Total Amount", "Order Created At" ]; const rows = []; data.map((item) => rows.push(Object.values(item))); doc.autoTable(columns, rows); doc.save("order.pdf"); }; Con estos códigos, imprimirá estos datos. No está arreglado y luego muestra [Objeto, objeto] 
La razón por la que muestra [Objeto,Objeto] es cuando lo hace
data.map((item) => rows.push(Object.values(item))); En realidad, está empujando todo el objeto de datos sin ninguna transformación de datos, a la matriz de rows uno por uno. Entonces, en la columna House No. , el [Objeto,Objeto] en realidad representa el objeto cartItems , y en la columna Address , el [Objeto,Objeto] en realidad es el valor de orderCreatedAt .
Ahora, las columns que definió no se alinean con el objeto de datos que tiene, por lo tanto, primero debe realizar una transformación de datos. He editado los códigos y el cuadro aquí para su referencia.
También para la columna orderCreatedAt , supongo que está obteniendo los datos de firebase, por lo que es posible que deba importar la marca de tiempo del paquete firebase/firestore para realizar la conversión, pero la gente también descubrió que puede convertir la marca de tiempo a la fecha con esta fórmula
Espero eso ayude.