typescript - การนำเข้าแค่ประเภท
ด้วย Firebase Admin API คุณจะได้รับการพิมพ์จาก @google-cloud/[namespace] โดยที่ namespace อาจเป็น firestore, messaging, database เป็นต้น
ใช้ firestore เป็นตัวอย่าง สิ่งที่ฉันอยากทำคือการนำเข้า เฉพาะ คำจำกัดความประเภท อย่างไรก็ตามถ้าฉันเพิ่ม @google-cloud/firestore เป็นการพึ่งพา ฉันจะได้ทุกอย่าง (โค้ดและไทป์)
ฉันพิจารณาสิ่งต่อไปนี้:
การเพิ่ม dependency เป็น devDependencies เพื่อให้ฉันสามารถใช้ types ได้ แต่ผู้ใช้ไลบรารีของฉันจะไม่ได้รับโค้ดที่ไม่ได้ใช้งาน
ฉันก็พิจารณาที่จะเก็บไว้เป็น dependency แต่ฉันไม่แน่ใจว่าจะนำเข้าคำจำกัดความของอินเทอร์เฟซอย่างไร ฉันลองนำเข้าแบบด้านล่างแต่ก็ไม่ได้ผล:
import firestore จาก '@google-cloud/firestore/types';
ฉันตื่นเต้นมากที่จะหาวิธีใดวิธีหนึ่ง -- นอกเหนือจากการตัดและวาง -- เพื่อที่จะนำเข้าการกำหนดประเภทของ Admin API
หมายเหตุ: สิ่งนี้ค่อนข้างง่ายด้วยการพิมพ์ API ฝั่งลูกค้า และสุดท้ายสิ่งที่ฉันต้องการทำคือสร้างอินเทอร์เฟซที่อนุญาตให้ไลบรารีเขียนโค้ดที่มีการพิมพ์ซึ่งสามารถโต้ตอบกับทั้งไลบรารีฝั่งลูกค้าและแอดมินได้