@struktoai/mirage-node 0.0.4 → 0.0.5-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/aliyun-S62BR3TB.js +11 -0
- package/dist/append.lua +17 -0
- package/dist/backblaze-4EKSW63F.js +11 -0
- package/dist/box-ZPLZAGMK.js +8 -0
- package/dist/ceph-ALKLD3MO.js +11 -0
- package/dist/{chunk-VLRSOWHP.js → chunk-2A4YGVBM.js} +5 -14
- package/dist/chunk-2A4YGVBM.js.map +1 -0
- package/dist/chunk-2HCYLVGY.js +28 -0
- package/dist/chunk-2HCYLVGY.js.map +1 -0
- package/dist/chunk-2VPZAH5Q.js +20 -0
- package/dist/chunk-2VPZAH5Q.js.map +1 -0
- package/dist/{chunk-HCU3B6FW.js → chunk-3JZQ6VSZ.js} +5 -4
- package/dist/chunk-3JZQ6VSZ.js.map +1 -0
- package/dist/chunk-4IF4TGAI.js +11 -0
- package/dist/chunk-4IF4TGAI.js.map +1 -0
- package/dist/{chunk-L7FEZ7LU.js → chunk-5H6KNEPP.js} +4 -5
- package/dist/{chunk-L7FEZ7LU.js.map → chunk-5H6KNEPP.js.map} +1 -1
- package/dist/{chunk-25W4XQJZ.js → chunk-5K2MWDCE.js} +4 -5
- package/dist/{chunk-25W4XQJZ.js.map → chunk-5K2MWDCE.js.map} +1 -1
- package/dist/{chunk-L4GMDSMB.js → chunk-6SVXWRKX.js} +4 -5
- package/dist/{chunk-L4GMDSMB.js.map → chunk-6SVXWRKX.js.map} +1 -1
- package/dist/{chunk-H62XQZUM.js → chunk-6VOIUGAD.js} +22 -10
- package/dist/chunk-6VOIUGAD.js.map +1 -0
- package/dist/{chunk-SI4GMRXD.js → chunk-7JYHFXXC.js} +4 -8
- package/dist/chunk-7JYHFXXC.js.map +1 -0
- package/dist/chunk-7VQQFWV6.js +20 -0
- package/dist/chunk-7VQQFWV6.js.map +1 -0
- package/dist/chunk-7ZP6TPHX.js +87 -0
- package/dist/chunk-7ZP6TPHX.js.map +1 -0
- package/dist/{chunk-HWQPEBID.js → chunk-ADEXNSYU.js} +6 -12
- package/dist/chunk-ADEXNSYU.js.map +1 -0
- package/dist/chunk-AQSYAXL4.js +16 -0
- package/dist/chunk-AQSYAXL4.js.map +1 -0
- package/dist/{chunk-NJ42VNXG.js → chunk-ATLXMNKD.js} +8 -3
- package/dist/chunk-ATLXMNKD.js.map +1 -0
- package/dist/{chunk-CB76WPUS.js → chunk-BYCUGFRF.js} +5 -4
- package/dist/chunk-BYCUGFRF.js.map +1 -0
- package/dist/{chunk-4M73WHIE.js → chunk-BZTVYOES.js} +3 -3
- package/dist/{chunk-CQCTCW4S.js → chunk-CRC4YWXB.js} +28 -9
- package/dist/chunk-CRC4YWXB.js.map +1 -0
- package/dist/{chunk-C7TNKIK5.js → chunk-CTGXJHO5.js} +1 -1
- package/dist/chunk-CTGXJHO5.js.map +1 -0
- package/dist/{chunk-HSD24IP2.js → chunk-DCDBIXVZ.js} +7 -2
- package/dist/chunk-DCDBIXVZ.js.map +1 -0
- package/dist/{chunk-HEDE2377.js → chunk-DDAFNROK.js} +318 -322
- package/dist/chunk-DDAFNROK.js.map +1 -0
- package/dist/chunk-DQIEWEAW.js +85 -0
- package/dist/chunk-DQIEWEAW.js.map +1 -0
- package/dist/{chunk-2ERLWAGG.js → chunk-EBI4IHDC.js} +20 -11
- package/dist/chunk-EBI4IHDC.js.map +1 -0
- package/dist/{chunk-RHUEV4I7.js → chunk-EIUTZ6N7.js} +10 -24
- package/dist/chunk-EIUTZ6N7.js.map +1 -0
- package/dist/{chunk-IUXXZHY3.js → chunk-EJZG5VUF.js} +24 -12
- package/dist/chunk-EJZG5VUF.js.map +1 -0
- package/dist/{chunk-BWWU5T2D.js → chunk-ENW5BVYN.js} +3 -3
- package/dist/{chunk-F5NWRF32.js → chunk-ETIAW4YD.js} +3 -3
- package/dist/chunk-EUPXAYPB.js +20 -0
- package/dist/chunk-EUPXAYPB.js.map +1 -0
- package/dist/{chunk-EGZNOUMH.js → chunk-FA6YNU75.js} +4 -5
- package/dist/{chunk-EGZNOUMH.js.map → chunk-FA6YNU75.js.map} +1 -1
- package/dist/{chunk-XUUSWR4U.js → chunk-FFH6R5VQ.js} +7 -2
- package/dist/{chunk-XUUSWR4U.js.map → chunk-FFH6R5VQ.js.map} +1 -1
- package/dist/{chunk-JEBH5APX.js → chunk-GE6H2COM.js} +5 -13
- package/dist/chunk-GE6H2COM.js.map +1 -0
- package/dist/{chunk-TUNR4VUM.js → chunk-GMMQ3ZK4.js} +3 -3
- package/dist/{chunk-SAOQW6ZJ.js → chunk-GSGE3M5P.js} +5 -13
- package/dist/chunk-GSGE3M5P.js.map +1 -0
- package/dist/{chunk-FRGTDZQT.js → chunk-H64SB6VO.js} +19 -5
- package/dist/chunk-H64SB6VO.js.map +1 -0
- package/dist/{chunk-DXU7NZPH.js → chunk-HCRYAFBI.js} +3 -3
- package/dist/{chunk-OSVZKYXS.js → chunk-HOPUP6LA.js} +192 -156
- package/dist/chunk-HOPUP6LA.js.map +1 -0
- package/dist/chunk-HS24BL6W.js +160 -0
- package/dist/chunk-HS24BL6W.js.map +1 -0
- package/dist/chunk-HVYVG5KQ.js +16 -0
- package/dist/chunk-HVYVG5KQ.js.map +1 -0
- package/dist/{chunk-XEMLYWHK.js → chunk-I7CPLZNW.js} +4 -5
- package/dist/{chunk-XEMLYWHK.js.map → chunk-I7CPLZNW.js.map} +1 -1
- package/dist/{chunk-AULFV3KY.js → chunk-IFUCGI4I.js} +7 -2
- package/dist/chunk-IFUCGI4I.js.map +1 -0
- package/dist/{chunk-HGIPWY5Y.js → chunk-IFYXSSKR.js} +6 -6
- package/dist/chunk-IFYXSSKR.js.map +1 -0
- package/dist/chunk-IXA4DQE4.js +20 -0
- package/dist/chunk-IXA4DQE4.js.map +1 -0
- package/dist/chunk-IZMKMD3O.js +11 -0
- package/dist/chunk-IZMKMD3O.js.map +1 -0
- package/dist/{chunk-4X6CLF4F.js → chunk-JJERW2BI.js} +4 -5
- package/dist/{chunk-4X6CLF4F.js.map → chunk-JJERW2BI.js.map} +1 -1
- package/dist/{chunk-M6E7VK4D.js → chunk-JQR4HVUX.js} +2 -5
- package/dist/chunk-JQR4HVUX.js.map +1 -0
- package/dist/{chunk-BWLUBJQG.js → chunk-JXOMDLFS.js} +6 -15
- package/dist/chunk-JXOMDLFS.js.map +1 -0
- package/dist/{chunk-5ZHNPNDD.js → chunk-KIX6N7NT.js} +198 -141
- package/dist/chunk-KIX6N7NT.js.map +1 -0
- package/dist/{chunk-XFSEADPC.js → chunk-L42UTDFK.js} +7 -2
- package/dist/chunk-L42UTDFK.js.map +1 -0
- package/dist/chunk-M2UF2JHJ.js +11 -0
- package/dist/chunk-M2UF2JHJ.js.map +1 -0
- package/dist/{chunk-LPLZLSMK.js → chunk-MONC734W.js} +7 -2
- package/dist/chunk-MONC734W.js.map +1 -0
- package/dist/{chunk-XADEMW6B.js → chunk-N72RLCMU.js} +4 -5
- package/dist/{chunk-XADEMW6B.js.map → chunk-N72RLCMU.js.map} +1 -1
- package/dist/{chunk-ZPB3SLPK.js → chunk-ND4IWJ4V.js} +7 -2
- package/dist/chunk-ND4IWJ4V.js.map +1 -0
- package/dist/{chunk-ZPZQXHW2.js → chunk-NZ3EKGW4.js} +260 -178
- package/dist/chunk-NZ3EKGW4.js.map +1 -0
- package/dist/{chunk-E3KXVEYI.js → chunk-OAE57MNL.js} +22 -10
- package/dist/chunk-OAE57MNL.js.map +1 -0
- package/dist/{chunk-JBDFYIN2.js → chunk-OHKGIQB4.js} +2 -5
- package/dist/chunk-OHKGIQB4.js.map +1 -0
- package/dist/{chunk-V7JVMG63.js → chunk-OXEQSPND.js} +3 -3
- package/dist/{chunk-YRJICL2Q.js → chunk-PKNE5J2B.js} +5 -13
- package/dist/chunk-PKNE5J2B.js.map +1 -0
- package/dist/chunk-PSXXEGYQ.js +16 -0
- package/dist/chunk-PSXXEGYQ.js.map +1 -0
- package/dist/{chunk-KAWDDS27.js → chunk-QAOVABCR.js} +7 -2
- package/dist/chunk-QAOVABCR.js.map +1 -0
- package/dist/{chunk-SYMNWNC3.js → chunk-QQ7FP4GD.js} +4 -5
- package/dist/{chunk-SYMNWNC3.js.map → chunk-QQ7FP4GD.js.map} +1 -1
- package/dist/{chunk-3JZN3GYO.js → chunk-QYLVMC6B.js} +2 -5
- package/dist/chunk-QYLVMC6B.js.map +1 -0
- package/dist/{chunk-CXQGMFI7.js → chunk-RX3XR65X.js} +4 -5
- package/dist/{chunk-CXQGMFI7.js.map → chunk-RX3XR65X.js.map} +1 -1
- package/dist/{chunk-MRXTUFBZ.js → chunk-RYQJJB4C.js} +1 -1
- package/dist/chunk-RYQJJB4C.js.map +1 -0
- package/dist/{chunk-5I7Q7RHW.js → chunk-TUF7TCN7.js} +4 -5
- package/dist/{chunk-5I7Q7RHW.js.map → chunk-TUF7TCN7.js.map} +1 -1
- package/dist/{chunk-NLXJMXVE.js → chunk-TUX36JY5.js} +4 -5
- package/dist/{chunk-NLXJMXVE.js.map → chunk-TUX36JY5.js.map} +1 -1
- package/dist/{chunk-4GYB7DGC.js → chunk-TWRQCQWU.js} +327 -558
- package/dist/chunk-TWRQCQWU.js.map +1 -0
- package/dist/chunk-U6DFQRG3.js +20 -0
- package/dist/chunk-U6DFQRG3.js.map +1 -0
- package/dist/chunk-VI5YTKNY.js +20 -0
- package/dist/chunk-VI5YTKNY.js.map +1 -0
- package/dist/{chunk-W5ZLIQFR.js → chunk-WG5YS6TC.js} +308 -200
- package/dist/chunk-WG5YS6TC.js.map +1 -0
- package/dist/{chunk-ZM44MGC5.js → chunk-WMJJ4WGF.js} +4 -5
- package/dist/{chunk-ZM44MGC5.js.map → chunk-WMJJ4WGF.js.map} +1 -1
- package/dist/{chunk-5YRWF5RP.js → chunk-WY4FNH42.js} +6 -5
- package/dist/chunk-WY4FNH42.js.map +1 -0
- package/dist/{chunk-VBYIDRNU.js → chunk-XIG5BWWH.js} +19 -10
- package/dist/chunk-XIG5BWWH.js.map +1 -0
- package/dist/chunk-XJBC3OYX.js +11 -0
- package/dist/chunk-XJBC3OYX.js.map +1 -0
- package/dist/{chunk-ZMREYTHA.js → chunk-XPRDXWK7.js} +8 -8
- package/dist/chunk-XPRDXWK7.js.map +1 -0
- package/dist/chunk-YKRQSZS7.js +96 -0
- package/dist/chunk-YKRQSZS7.js.map +1 -0
- package/dist/{chunk-IEVLWEBO.js → chunk-YMBL3VJB.js} +9 -8
- package/dist/chunk-YMBL3VJB.js.map +1 -0
- package/dist/{chunk-CGGO5NKD.js → chunk-YUJBXFYK.js} +357 -346
- package/dist/chunk-YUJBXFYK.js.map +1 -0
- package/dist/{chunk-S4KVLPBR.js → chunk-YZ4ZJNOL.js} +22 -10
- package/dist/chunk-YZ4ZJNOL.js.map +1 -0
- package/dist/chunk-ZTHVEXIV.js +11 -0
- package/dist/chunk-ZTHVEXIV.js.map +1 -0
- package/dist/{chunk-VHED2STW.js → chunk-ZVSYUCYS.js} +2 -1
- package/dist/chunk-ZVSYUCYS.js.map +1 -0
- package/dist/{config-T2IUIU5C.js → config-2YBCHU2W.js} +2 -2
- package/dist/{config-M3Z47VYU.js → config-3YRGRW72.js} +3 -2
- package/dist/config-4GSOMUMF.js +9 -0
- package/dist/config-5YBUWFUP.js +9 -0
- package/dist/{config-2LASFFRD.js → config-5ZRKJTKG.js} +3 -2
- package/dist/{config-W7EVPJNK.js → config-A25LTL5W.js} +2 -2
- package/dist/{config-WKQ3FGTZ.js → config-CLU7JABG.js} +2 -2
- package/dist/{config-E22XAGYN.js → config-D2RF7L3N.js} +2 -2
- package/dist/{config-HQXNFQZS.js → config-E55TKM6K.js} +2 -2
- package/dist/config-ELDOFRJW.js +9 -0
- package/dist/{config-EX3ZJTZI.js → config-FPC3RBFD.js} +2 -2
- package/dist/config-FPM3LAW7.js +9 -0
- package/dist/{config-IPNWAJHH.js → config-G3F54CS4.js} +3 -2
- package/dist/{config-BBOLI7VE.js → config-G43HRUI3.js} +2 -2
- package/dist/{config-QO2XUME4.js → config-GG3WO5PB.js} +3 -2
- package/dist/{config-QWQGOXQ5.js → config-JUYBWAZE.js} +2 -2
- package/dist/{config-SPW6NESU.js → config-LJ5T6TVA.js} +2 -2
- package/dist/{config-WVILHDFV.js → config-MDSAE4O3.js} +2 -2
- package/dist/{config-MZM3IPFM.js → config-NRIOKK5T.js} +2 -2
- package/dist/{config-L7SBSH5L.js → config-OYK2BSJK.js} +2 -2
- package/dist/config-PB3KA2CE.js +9 -0
- package/dist/{config-54USUVSE.js → config-QY4IL3PH.js} +3 -2
- package/dist/{config-VKKZGC7V.js → config-R4LAOEDS.js} +2 -2
- package/dist/{config-FRK7ZL37.js → config-RIAAD6RW.js} +3 -2
- package/dist/{config-J2C53GOT.js → config-SYNEQAUB.js} +2 -2
- package/dist/{config-XU6D5C7E.js → config-TJKGYA2B.js} +3 -2
- package/dist/{config-DWSJL3NH.js → config-UURRGA7U.js} +4 -2
- package/dist/{config-BIBFLUIR.js → config-VPLHQXVE.js} +2 -2
- package/dist/config-WRACCRPN.js +9 -0
- package/dist/{config-OJ2BPESH.js → config-WVHKXEVE.js} +3 -2
- package/dist/{config-CPYFOUQO.js → config-XU7R36IE.js} +3 -2
- package/dist/{config-A2GQYJDB.js → config-Y2KOUYSS.js} +2 -2
- package/dist/databricks_volume-CNCPTZHS.js +7 -0
- package/dist/digitalocean-DJZOUB6Q.js +11 -0
- package/dist/discord-ETB2CADR.js +7 -0
- package/dist/disk-WEHSTK3F.js +7 -0
- package/dist/dropbox-XN6PGLNE.js +8 -0
- package/dist/email-OV7XCP3T.js +8 -0
- package/dist/gcal-P56MRCGU.js +8 -0
- package/dist/gcs-HFBIAE2C.js +10 -0
- package/dist/gdocs-LQ3UXP3J.js +8 -0
- package/dist/gdrive-N6UBYLON.js +8 -0
- package/dist/github-BPZREGPI.js +8 -0
- package/dist/github_ci-7A4LUIZ7.js +8 -0
- package/dist/{gmail-2TBT4CVH.js → gmail-YED2MF6H.js} +2 -2
- package/dist/gridfs-CPLQ4G62.js +9 -0
- package/dist/gsheets-4BNIJPQ6.js +8 -0
- package/dist/gslides-GDBYLO5A.js +8 -0
- package/dist/hf_buckets-FTJITQ3P.js +10 -0
- package/dist/hf_datasets-6GXVKQD7.js +10 -0
- package/dist/hf_models-PJPGZAC5.js +10 -0
- package/dist/hf_spaces-LFNFOLBF.js +10 -0
- package/dist/index.d.ts +897 -609
- package/dist/index.js +2371 -781
- package/dist/index.js.map +1 -1
- package/dist/jaeger-GCA6MJ6E.js +8 -0
- package/dist/lancedb-TJ5YSJY5.js +7 -0
- package/dist/langfuse-RUMTUMXS.js +8 -0
- package/dist/linear-BCE4KEAC.js +7 -0
- package/dist/minio-5SO6KBTK.js +11 -0
- package/dist/mongodb-L5CMN2EE.js +7 -0
- package/dist/nextcloud-4O2LZVW2.js +9 -0
- package/dist/notion-RVKEAQ2M.js +7 -0
- package/dist/oci-OQXOIC62.js +10 -0
- package/dist/postgres-AV45GNRS.js +7 -0
- package/dist/qingstor-W277YA4K.js +11 -0
- package/dist/r2-FUA4IORE.js +10 -0
- package/dist/{redis-6D55Q2WB.js → redis-LPS357NF.js} +2 -2
- package/dist/s3-FPNWWIVM.js +8 -0
- package/dist/scaleway-BP3732U7.js +11 -0
- package/dist/seaweedfs-MC6HIEP4.js +11 -0
- package/dist/slack-JFGW7VLN.js +7 -0
- package/dist/ssh-UYPG42LM.js +8 -0
- package/dist/supabase-A3KUFMDC.js +10 -0
- package/dist/tencent-5464UQ2X.js +11 -0
- package/dist/trello-O2KB3FUO.js +8 -0
- package/dist/wasabi-2IKBIWNO.js +10 -0
- package/dist/wasabi-2IKBIWNO.js.map +1 -0
- package/package.json +15 -3
- package/dist/aliyun-PGI57A43.js +0 -10
- package/dist/backblaze-TSPL6Y56.js +0 -10
- package/dist/box-7XTZYDSO.js +0 -8
- package/dist/ceph-C265UI5T.js +0 -10
- package/dist/chunk-2ERLWAGG.js.map +0 -1
- package/dist/chunk-2QNPKPZZ.js +0 -59
- package/dist/chunk-2QNPKPZZ.js.map +0 -1
- package/dist/chunk-3ASOQTZB.js +0 -59
- package/dist/chunk-3ASOQTZB.js.map +0 -1
- package/dist/chunk-3JZN3GYO.js.map +0 -1
- package/dist/chunk-4GYB7DGC.js.map +0 -1
- package/dist/chunk-5YRWF5RP.js.map +0 -1
- package/dist/chunk-5ZHNPNDD.js.map +0 -1
- package/dist/chunk-AULFV3KY.js.map +0 -1
- package/dist/chunk-BWLUBJQG.js.map +0 -1
- package/dist/chunk-C7TNKIK5.js.map +0 -1
- package/dist/chunk-CB76WPUS.js.map +0 -1
- package/dist/chunk-CGGO5NKD.js.map +0 -1
- package/dist/chunk-CQCTCW4S.js.map +0 -1
- package/dist/chunk-D3U7VQCG.js +0 -25
- package/dist/chunk-D3U7VQCG.js.map +0 -1
- package/dist/chunk-E3KXVEYI.js.map +0 -1
- package/dist/chunk-EVK6HH6Z.js +0 -17
- package/dist/chunk-EVK6HH6Z.js.map +0 -1
- package/dist/chunk-FRGTDZQT.js.map +0 -1
- package/dist/chunk-GF75O2EN.js +0 -54
- package/dist/chunk-GF75O2EN.js.map +0 -1
- package/dist/chunk-GTAS3QVC.js +0 -25
- package/dist/chunk-GTAS3QVC.js.map +0 -1
- package/dist/chunk-H62XQZUM.js.map +0 -1
- package/dist/chunk-HCU3B6FW.js.map +0 -1
- package/dist/chunk-HEDE2377.js.map +0 -1
- package/dist/chunk-HGIPWY5Y.js.map +0 -1
- package/dist/chunk-HSD24IP2.js.map +0 -1
- package/dist/chunk-HWQPEBID.js.map +0 -1
- package/dist/chunk-IEHPTILN.js +0 -21
- package/dist/chunk-IEHPTILN.js.map +0 -1
- package/dist/chunk-IEVLWEBO.js.map +0 -1
- package/dist/chunk-IKJQOYI4.js +0 -26
- package/dist/chunk-IKJQOYI4.js.map +0 -1
- package/dist/chunk-IUXXZHY3.js.map +0 -1
- package/dist/chunk-JBDFYIN2.js.map +0 -1
- package/dist/chunk-JEBH5APX.js.map +0 -1
- package/dist/chunk-JHI2PHHD.js +0 -25
- package/dist/chunk-JHI2PHHD.js.map +0 -1
- package/dist/chunk-KAWDDS27.js.map +0 -1
- package/dist/chunk-KGC2OGXI.js +0 -27
- package/dist/chunk-KGC2OGXI.js.map +0 -1
- package/dist/chunk-LPLZLSMK.js.map +0 -1
- package/dist/chunk-M6E7VK4D.js.map +0 -1
- package/dist/chunk-MIQ3ECZM.js +0 -54
- package/dist/chunk-MIQ3ECZM.js.map +0 -1
- package/dist/chunk-MRXTUFBZ.js.map +0 -1
- package/dist/chunk-NJ42VNXG.js.map +0 -1
- package/dist/chunk-OSVZKYXS.js.map +0 -1
- package/dist/chunk-RHUEV4I7.js.map +0 -1
- package/dist/chunk-S4KVLPBR.js.map +0 -1
- package/dist/chunk-SAOQW6ZJ.js.map +0 -1
- package/dist/chunk-SI4GMRXD.js.map +0 -1
- package/dist/chunk-UAJYJP5C.js +0 -59
- package/dist/chunk-UAJYJP5C.js.map +0 -1
- package/dist/chunk-UYA3XL3J.js +0 -54
- package/dist/chunk-UYA3XL3J.js.map +0 -1
- package/dist/chunk-VBYIDRNU.js.map +0 -1
- package/dist/chunk-VHED2STW.js.map +0 -1
- package/dist/chunk-VIICUPWQ.js +0 -23
- package/dist/chunk-VIICUPWQ.js.map +0 -1
- package/dist/chunk-VLRSOWHP.js.map +0 -1
- package/dist/chunk-W5ZLIQFR.js.map +0 -1
- package/dist/chunk-WTSSEUOZ.js +0 -59
- package/dist/chunk-WTSSEUOZ.js.map +0 -1
- package/dist/chunk-WWP2STF5.js +0 -59
- package/dist/chunk-WWP2STF5.js.map +0 -1
- package/dist/chunk-XFSEADPC.js.map +0 -1
- package/dist/chunk-YBVMZ7SR.js +0 -59
- package/dist/chunk-YBVMZ7SR.js.map +0 -1
- package/dist/chunk-YRJICL2Q.js.map +0 -1
- package/dist/chunk-ZMREYTHA.js.map +0 -1
- package/dist/chunk-ZPB3SLPK.js.map +0 -1
- package/dist/chunk-ZPZQXHW2.js.map +0 -1
- package/dist/config-3WDIJPTG.js +0 -9
- package/dist/config-4QV4QYI5.js +0 -9
- package/dist/config-5ZXN2T2H.js +0 -9
- package/dist/config-EHE52ZTK.js +0 -9
- package/dist/config-HTXOOAOD.js +0 -9
- package/dist/config-K63RX6EU.js +0 -9
- package/dist/config-LEALEMKA.js +0 -9
- package/dist/config-RI7IEZUF.js +0 -9
- package/dist/databricks_volume-ETRDJVVQ.js +0 -7
- package/dist/digitalocean-QP72DR4J.js +0 -10
- package/dist/discord-BSN5RB3E.js +0 -8
- package/dist/disk-24NWTN2I.js +0 -7
- package/dist/dropbox-OSTZXSIE.js +0 -8
- package/dist/email-4ZFPSWIN.js +0 -8
- package/dist/gcs-PFWR6MIW.js +0 -10
- package/dist/gdocs-GPAZRQG5.js +0 -8
- package/dist/gdrive-XSX6A7B3.js +0 -8
- package/dist/github-EQ4NXUTA.js +0 -8
- package/dist/github_ci-QL5B2Q2N.js +0 -8
- package/dist/gridfs-KZRZ6SIB.js +0 -9
- package/dist/gsheets-N53WEXN2.js +0 -8
- package/dist/gslides-TATSARTH.js +0 -8
- package/dist/hf_buckets-BK7NGJWS.js +0 -10
- package/dist/hf_datasets-UQ5QGM4L.js +0 -10
- package/dist/hf_models-75LFCQCS.js +0 -10
- package/dist/hf_spaces-6T2KB3UC.js +0 -10
- package/dist/langfuse-AMQCQWNE.js +0 -8
- package/dist/linear-V3TXO6CV.js +0 -8
- package/dist/minio-IZRZY4C5.js +0 -10
- package/dist/mongodb-VMKPQCPX.js +0 -7
- package/dist/nextcloud-5RHQCGDO.js +0 -9
- package/dist/notion-6PPNTQFM.js +0 -8
- package/dist/oci-CKYBSFZJ.js +0 -10
- package/dist/postgres-WIQBVL5M.js +0 -7
- package/dist/qingstor-AP4IIPLY.js +0 -10
- package/dist/r2-C4XGEWQY.js +0 -10
- package/dist/s3-XQBI2CXN.js +0 -8
- package/dist/scaleway-SEZJVURB.js +0 -10
- package/dist/seaweedfs-3XYIAFU2.js +0 -10
- package/dist/slack-ZHXDJQY4.js +0 -8
- package/dist/ssh-X2MO7JOV.js +0 -8
- package/dist/supabase-BBM44UTM.js +0 -10
- package/dist/tencent-X72USLJ7.js +0 -10
- package/dist/trello-EER5NG7L.js +0 -8
- package/dist/wasabi-O4MVIUFG.js +0 -10
- /package/dist/{aliyun-PGI57A43.js.map → aliyun-S62BR3TB.js.map} +0 -0
- /package/dist/{backblaze-TSPL6Y56.js.map → backblaze-4EKSW63F.js.map} +0 -0
- /package/dist/{box-7XTZYDSO.js.map → box-ZPLZAGMK.js.map} +0 -0
- /package/dist/{ceph-C265UI5T.js.map → ceph-ALKLD3MO.js.map} +0 -0
- /package/dist/{chunk-4M73WHIE.js.map → chunk-BZTVYOES.js.map} +0 -0
- /package/dist/{chunk-BWWU5T2D.js.map → chunk-ENW5BVYN.js.map} +0 -0
- /package/dist/{chunk-F5NWRF32.js.map → chunk-ETIAW4YD.js.map} +0 -0
- /package/dist/{chunk-TUNR4VUM.js.map → chunk-GMMQ3ZK4.js.map} +0 -0
- /package/dist/{chunk-DXU7NZPH.js.map → chunk-HCRYAFBI.js.map} +0 -0
- /package/dist/{chunk-V7JVMG63.js.map → chunk-OXEQSPND.js.map} +0 -0
- /package/dist/{config-2LASFFRD.js.map → config-2YBCHU2W.js.map} +0 -0
- /package/dist/{config-3WDIJPTG.js.map → config-3YRGRW72.js.map} +0 -0
- /package/dist/{config-4QV4QYI5.js.map → config-4GSOMUMF.js.map} +0 -0
- /package/dist/{config-54USUVSE.js.map → config-5YBUWFUP.js.map} +0 -0
- /package/dist/{config-5ZXN2T2H.js.map → config-5ZRKJTKG.js.map} +0 -0
- /package/dist/{config-A2GQYJDB.js.map → config-A25LTL5W.js.map} +0 -0
- /package/dist/{config-BBOLI7VE.js.map → config-CLU7JABG.js.map} +0 -0
- /package/dist/{config-BIBFLUIR.js.map → config-D2RF7L3N.js.map} +0 -0
- /package/dist/{config-CPYFOUQO.js.map → config-E55TKM6K.js.map} +0 -0
- /package/dist/{config-DWSJL3NH.js.map → config-ELDOFRJW.js.map} +0 -0
- /package/dist/{config-E22XAGYN.js.map → config-FPC3RBFD.js.map} +0 -0
- /package/dist/{config-EHE52ZTK.js.map → config-FPM3LAW7.js.map} +0 -0
- /package/dist/{config-EX3ZJTZI.js.map → config-G3F54CS4.js.map} +0 -0
- /package/dist/{config-FRK7ZL37.js.map → config-G43HRUI3.js.map} +0 -0
- /package/dist/{config-HQXNFQZS.js.map → config-GG3WO5PB.js.map} +0 -0
- /package/dist/{config-HTXOOAOD.js.map → config-JUYBWAZE.js.map} +0 -0
- /package/dist/{config-IPNWAJHH.js.map → config-LJ5T6TVA.js.map} +0 -0
- /package/dist/{config-J2C53GOT.js.map → config-MDSAE4O3.js.map} +0 -0
- /package/dist/{config-K63RX6EU.js.map → config-NRIOKK5T.js.map} +0 -0
- /package/dist/{config-L7SBSH5L.js.map → config-OYK2BSJK.js.map} +0 -0
- /package/dist/{config-LEALEMKA.js.map → config-PB3KA2CE.js.map} +0 -0
- /package/dist/{config-M3Z47VYU.js.map → config-QY4IL3PH.js.map} +0 -0
- /package/dist/{config-MZM3IPFM.js.map → config-R4LAOEDS.js.map} +0 -0
- /package/dist/{config-OJ2BPESH.js.map → config-RIAAD6RW.js.map} +0 -0
- /package/dist/{config-QO2XUME4.js.map → config-SYNEQAUB.js.map} +0 -0
- /package/dist/{config-QWQGOXQ5.js.map → config-TJKGYA2B.js.map} +0 -0
- /package/dist/{config-RI7IEZUF.js.map → config-UURRGA7U.js.map} +0 -0
- /package/dist/{config-SPW6NESU.js.map → config-VPLHQXVE.js.map} +0 -0
- /package/dist/{config-T2IUIU5C.js.map → config-WRACCRPN.js.map} +0 -0
- /package/dist/{config-VKKZGC7V.js.map → config-WVHKXEVE.js.map} +0 -0
- /package/dist/{config-W7EVPJNK.js.map → config-XU7R36IE.js.map} +0 -0
- /package/dist/{config-WKQ3FGTZ.js.map → config-Y2KOUYSS.js.map} +0 -0
- /package/dist/{config-WVILHDFV.js.map → databricks_volume-CNCPTZHS.js.map} +0 -0
- /package/dist/{config-XU6D5C7E.js.map → digitalocean-DJZOUB6Q.js.map} +0 -0
- /package/dist/{databricks_volume-ETRDJVVQ.js.map → discord-ETB2CADR.js.map} +0 -0
- /package/dist/{digitalocean-QP72DR4J.js.map → disk-WEHSTK3F.js.map} +0 -0
- /package/dist/{discord-BSN5RB3E.js.map → dropbox-XN6PGLNE.js.map} +0 -0
- /package/dist/{disk-24NWTN2I.js.map → email-OV7XCP3T.js.map} +0 -0
- /package/dist/{dropbox-OSTZXSIE.js.map → gcal-P56MRCGU.js.map} +0 -0
- /package/dist/{email-4ZFPSWIN.js.map → gcs-HFBIAE2C.js.map} +0 -0
- /package/dist/{gcs-PFWR6MIW.js.map → gdocs-LQ3UXP3J.js.map} +0 -0
- /package/dist/{gdocs-GPAZRQG5.js.map → gdrive-N6UBYLON.js.map} +0 -0
- /package/dist/{gdrive-XSX6A7B3.js.map → github-BPZREGPI.js.map} +0 -0
- /package/dist/{github-EQ4NXUTA.js.map → github_ci-7A4LUIZ7.js.map} +0 -0
- /package/dist/{github_ci-QL5B2Q2N.js.map → gmail-YED2MF6H.js.map} +0 -0
- /package/dist/{gmail-2TBT4CVH.js.map → gridfs-CPLQ4G62.js.map} +0 -0
- /package/dist/{gridfs-KZRZ6SIB.js.map → gsheets-4BNIJPQ6.js.map} +0 -0
- /package/dist/{gsheets-N53WEXN2.js.map → gslides-GDBYLO5A.js.map} +0 -0
- /package/dist/{gslides-TATSARTH.js.map → hf_buckets-FTJITQ3P.js.map} +0 -0
- /package/dist/{hf_buckets-BK7NGJWS.js.map → hf_datasets-6GXVKQD7.js.map} +0 -0
- /package/dist/{hf_datasets-UQ5QGM4L.js.map → hf_models-PJPGZAC5.js.map} +0 -0
- /package/dist/{hf_models-75LFCQCS.js.map → hf_spaces-LFNFOLBF.js.map} +0 -0
- /package/dist/{hf_spaces-6T2KB3UC.js.map → jaeger-GCA6MJ6E.js.map} +0 -0
- /package/dist/{langfuse-AMQCQWNE.js.map → lancedb-TJ5YSJY5.js.map} +0 -0
- /package/dist/{linear-V3TXO6CV.js.map → langfuse-RUMTUMXS.js.map} +0 -0
- /package/dist/{minio-IZRZY4C5.js.map → linear-BCE4KEAC.js.map} +0 -0
- /package/dist/{mongodb-VMKPQCPX.js.map → minio-5SO6KBTK.js.map} +0 -0
- /package/dist/{nextcloud-5RHQCGDO.js.map → mongodb-L5CMN2EE.js.map} +0 -0
- /package/dist/{notion-6PPNTQFM.js.map → nextcloud-4O2LZVW2.js.map} +0 -0
- /package/dist/{oci-CKYBSFZJ.js.map → notion-RVKEAQ2M.js.map} +0 -0
- /package/dist/{postgres-WIQBVL5M.js.map → oci-OQXOIC62.js.map} +0 -0
- /package/dist/{qingstor-AP4IIPLY.js.map → postgres-AV45GNRS.js.map} +0 -0
- /package/dist/{r2-C4XGEWQY.js.map → qingstor-W277YA4K.js.map} +0 -0
- /package/dist/{redis-6D55Q2WB.js.map → r2-FUA4IORE.js.map} +0 -0
- /package/dist/{s3-XQBI2CXN.js.map → redis-LPS357NF.js.map} +0 -0
- /package/dist/{scaleway-SEZJVURB.js.map → s3-FPNWWIVM.js.map} +0 -0
- /package/dist/{seaweedfs-3XYIAFU2.js.map → scaleway-BP3732U7.js.map} +0 -0
- /package/dist/{slack-ZHXDJQY4.js.map → seaweedfs-MC6HIEP4.js.map} +0 -0
- /package/dist/{ssh-X2MO7JOV.js.map → slack-JFGW7VLN.js.map} +0 -0
- /package/dist/{supabase-BBM44UTM.js.map → ssh-UYPG42LM.js.map} +0 -0
- /package/dist/{tencent-X72USLJ7.js.map → supabase-A3KUFMDC.js.map} +0 -0
- /package/dist/{trello-EER5NG7L.js.map → tencent-5464UQ2X.js.map} +0 -0
- /package/dist/{wasabi-O4MVIUFG.js.map → trello-O2KB3FUO.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,19 +1,30 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as _struktoai_mirage_core from '@struktoai/mirage-core';
|
|
2
|
+
import { Resource, MountMode, MountBackend, Limit, SandboxConfig, RemoteSandbox, RuntimeOptions, RunResult, WorkspaceOptions, Workspace as Workspace$1, MountSpec, ExecuteOptions, ExecuteResult, ProvisionResult, Accessor, BaseResource, CapacityResult, RegisteredOp, RegisteredCommand, PathSpec, FileStat, FindOptions, ObserverStoreBase, ConsoleStore, Channel, ConsoleChunk, ReadResult, NamespaceStore, NodeFields, SessionStore, SessionFields, WorkspaceStateStore, WorkspaceStateStoreOverrides, ObserverStore, WorkspaceFields, REDACTED_SECRET, CommandOpts, FileCache, Session, Ops, FileTable, OpRecord, S3Config as S3Config$1, RedactedConfig, ConfigOf, z, S3Accessor, DatabricksVolumeConfig, DatabricksVolumeAccessor, DatabricksVolumeConfigRedacted, ResourceName, PgDriver, PostgresConfigResolved, PgQueryResult, PostgresAccessor, PostgresConfig, MongoDriver, EntityKind, MongoCollectionSpec, MongoFindOptions, MongoIterOptions, MongoIndexAccess, MongoDBConfigResolved, MongoDBAccessor, MongoDBConfig, LanceDriver, LanceDBConfigResolved, LanceRow, LanceDBAccessor, LanceDBConfig, SlackConfig, SlackAccessor, SlackConfigRedacted, DeltaHook, WalkEntry, DiscordConfig, DiscordAccessor, DiscordConfigRedacted, TrelloAccessor, LinearConfig, LinearAccessor, LinearConfigRedacted, NotionConfig, NotionAccessor, NotionConfigRedacted, LangfuseAccessor, JaegerAccessor, GitHubAccessor, GitHubCIAccessor, GoogleConfig, GDocsAccessor, GoogleConfigRedacted, GSheetsAccessor, GSlidesAccessor, GDriveAccessor, DropboxAccessor, BoxAccessor, GmailAccessor, GCalAccessor, CLISpec, PythonRuntime, RunArgs } from '@struktoai/mirage-core';
|
|
2
3
|
export * from '@struktoai/mirage-core';
|
|
3
|
-
export { GoogleConfig as GmailConfig, GoogleConfigRedacted as GmailConfigRedacted, normalizeGoogleConfig as normalizeGmailConfig, redactGoogleConfig as redactGmailConfig } from '@struktoai/mirage-core';
|
|
4
|
+
export { DiscordConfig, DiscordConfigRedacted, GoogleConfig as GCalConfig, GoogleConfigRedacted as GCalConfigRedacted, GoogleConfig as GDocsConfig, GoogleConfigRedacted as GDocsConfigRedacted, GoogleConfig as GDriveConfig, GoogleConfigRedacted as GDriveConfigRedacted, GoogleConfig as GSheetsConfig, GoogleConfigRedacted as GSheetsConfigRedacted, GoogleConfig as GSlidesConfig, GoogleConfigRedacted as GSlidesConfigRedacted, GoogleConfig as GmailConfig, GoogleConfigRedacted as GmailConfigRedacted, LinearConfig, LinearConfigRedacted, Mem0Config, Mem0Resource, NotionConfig, NotionConfigRedacted, OneDriveConfig, OneDriveResource, SharePointConfig, SharePointResource, SlackConfig, SlackConfigRedacted, normalizeDiscordConfig, normalizeGoogleConfig as normalizeGCalConfig, normalizeGoogleConfig as normalizeGDocsConfig, normalizeGoogleConfig as normalizeGDriveConfig, normalizeGoogleConfig as normalizeGSheetsConfig, normalizeGoogleConfig as normalizeGSlidesConfig, normalizeGoogleConfig as normalizeGmailConfig, normalizeLinearConfig, normalizeNotionConfig, normalizeSlackConfig, redactDiscordConfig, redactGoogleConfig as redactGCalConfig, redactGoogleConfig as redactGDocsConfig, redactGoogleConfig as redactGDriveConfig, redactGoogleConfig as redactGSheetsConfig, redactGoogleConfig as redactGSlidesConfig, redactGoogleConfig as redactGmailConfig, redactLinearConfig, redactNotionConfig, redactSlackConfig } from '@struktoai/mirage-core';
|
|
4
5
|
import { FileHandle } from 'node:fs/promises';
|
|
5
6
|
import { RedisClientType } from 'redis';
|
|
6
7
|
import { MongoClient, Db } from 'mongodb';
|
|
7
8
|
import { Operator } from 'opendal';
|
|
8
9
|
import { SFTPWrapper } from 'ssh2';
|
|
9
10
|
import { ImapFlow } from 'imapflow';
|
|
11
|
+
import * as daytonaSdk from '@daytonaio/sdk';
|
|
12
|
+
import * as e2bSdk from 'e2b';
|
|
10
13
|
|
|
11
14
|
interface MountSpecOptions {
|
|
12
15
|
/** Per-mount mode override; falls back to the workspace default when unset. */
|
|
13
16
|
mode?: MountMode;
|
|
14
|
-
/**
|
|
15
|
-
|
|
16
|
-
|
|
17
|
+
/**
|
|
18
|
+
* How the mount is exposed. `vfs` (the default) keeps it inside mirage's
|
|
19
|
+
* own filesystem; `fuse` and `fskit` also register a real mountpoint.
|
|
20
|
+
*/
|
|
21
|
+
backend?: MountBackend;
|
|
22
|
+
/**
|
|
23
|
+
* Where to mount, for the kernel backends. Omitted picks a temporary
|
|
24
|
+
* directory appropriate for the backend. Ignored when backend is `vfs`.
|
|
25
|
+
*/
|
|
26
|
+
mountpoint?: string;
|
|
27
|
+
commandLimits?: Record<string, Limit>;
|
|
17
28
|
}
|
|
18
29
|
declare class Mount {
|
|
19
30
|
readonly resource: Resource;
|
|
@@ -21,6 +32,43 @@ declare class Mount {
|
|
|
21
32
|
constructor(resource: Resource, options?: MountSpecOptions);
|
|
22
33
|
}
|
|
23
34
|
|
|
35
|
+
/** How to reach the user's live Daytona sandbox. */
|
|
36
|
+
interface DaytonaConfig extends SandboxConfig {
|
|
37
|
+
/**
|
|
38
|
+
* Id of a sandbox you created (dashboard, `daytona sandbox create`,
|
|
39
|
+
* or the SDK). Boot it from an image or snapshot with fuse3 and
|
|
40
|
+
* mirage installed.
|
|
41
|
+
*/
|
|
42
|
+
sandboxId: string;
|
|
43
|
+
/** Daytona credential; absent reads DAYTONA_API_KEY. */
|
|
44
|
+
apiKey?: string;
|
|
45
|
+
}
|
|
46
|
+
declare const DAYTONA_CONFIG_KEYS: readonly string[];
|
|
47
|
+
|
|
48
|
+
type DaytonaSdk = typeof daytonaSdk;
|
|
49
|
+
/**
|
|
50
|
+
* A Daytona sandbox the user runs as a whole-line runtime.
|
|
51
|
+
*
|
|
52
|
+
* You create the sandbox yourself (dashboard, `daytona sandbox
|
|
53
|
+
* create`, or the SDK); mirage only connects by `sandboxId` and execs
|
|
54
|
+
* lines. `apiKey` falls back to DAYTONA_API_KEY. Daytona's exec has
|
|
55
|
+
* no stdin and reports combined output, so piped bytes are uploaded
|
|
56
|
+
* and redirected in, and stderr comes back null. close() releases the
|
|
57
|
+
* SDK client and never touches the sandbox.
|
|
58
|
+
*/
|
|
59
|
+
declare class DaytonaRuntime extends RemoteSandbox<DaytonaConfig> {
|
|
60
|
+
readonly name = "daytona";
|
|
61
|
+
private client;
|
|
62
|
+
private sandbox;
|
|
63
|
+
constructor(options?: RuntimeOptions<DaytonaConfig> | Record<string, unknown>);
|
|
64
|
+
protected loadSdk(): Promise<DaytonaSdk>;
|
|
65
|
+
connect(): Promise<void>;
|
|
66
|
+
execLine(line: string, stdin: Uint8Array | null, env: Record<string, string>, cwd: string): Promise<RunResult>;
|
|
67
|
+
private upload;
|
|
68
|
+
/** Release the SDK client; the sandbox itself is the user's. */
|
|
69
|
+
close(): Promise<void>;
|
|
70
|
+
}
|
|
71
|
+
|
|
24
72
|
type NodeWorkspaceOptions = WorkspaceOptions;
|
|
25
73
|
declare class Workspace extends Workspace$1 {
|
|
26
74
|
private fuseSetupPromise;
|
|
@@ -39,7 +87,7 @@ declare class Workspace extends Workspace$1 {
|
|
|
39
87
|
* into a container and the narrowing travels with it); it is keyed
|
|
40
88
|
* separately so the same prefix can also be exposed unbound.
|
|
41
89
|
*/
|
|
42
|
-
addFuseMount(prefix: string, mountpoint?: string, sessionId?: string): Promise<string>;
|
|
90
|
+
addFuseMount(prefix: string, mountpoint?: string, sessionId?: string, backend?: MountBackend): Promise<string>;
|
|
43
91
|
removeFuseMount(prefix: string, sessionId?: string): Promise<void>;
|
|
44
92
|
get fuseMountpoints(): Record<string, string>;
|
|
45
93
|
get fuseMountpoint(): string | null;
|
|
@@ -71,14 +119,16 @@ interface DiskResourceState {
|
|
|
71
119
|
declare class DiskResource extends BaseResource implements Resource {
|
|
72
120
|
readonly kind: "disk";
|
|
73
121
|
readonly cachesReads: boolean;
|
|
122
|
+
readonly sizesAlwaysKnown: boolean;
|
|
74
123
|
readonly indexTtl: number;
|
|
75
124
|
readonly prompt = "{prefix}\n Local disk filesystem. Mirrors the configured root directory.\n Standard commands: ls, cat, head, tail, grep, wc, find, tree, mkdir, touch, cp, mv, rm, tee.";
|
|
76
125
|
readonly root: string;
|
|
77
126
|
readonly accessor: DiskAccessor;
|
|
78
127
|
readonly opsMap: Record<string, unknown>;
|
|
79
128
|
constructor(options: DiskResourceOptions);
|
|
129
|
+
storageId(): string;
|
|
80
130
|
open(): Promise<void>;
|
|
81
|
-
|
|
131
|
+
statfs(): Promise<CapacityResult>;
|
|
82
132
|
ops(): readonly RegisteredOp[];
|
|
83
133
|
commands(): readonly RegisteredCommand[];
|
|
84
134
|
streamPath(p: PathSpec): AsyncIterable<Uint8Array>;
|
|
@@ -112,16 +162,15 @@ declare const DISK_OPS: readonly RegisteredOp[];
|
|
|
112
162
|
* ObserverStore backed by a directory of JSONL files. Created lazily on
|
|
113
163
|
* first append. Mirrors the Python DiskObserverStore.
|
|
114
164
|
*/
|
|
115
|
-
declare class DiskObserverStore
|
|
165
|
+
declare class DiskObserverStore extends ObserverStoreBase {
|
|
116
166
|
private readonly root;
|
|
117
167
|
constructor(root: string);
|
|
118
168
|
private abs;
|
|
119
169
|
append(key: string, data: Uint8Array): Promise<void>;
|
|
120
170
|
write(key: string, data: Uint8Array): Promise<void>;
|
|
121
|
-
readAll(): Promise<Map<string, Uint8Array>>;
|
|
122
171
|
readMatching(suffix: string): Promise<Map<string, Uint8Array>>;
|
|
123
172
|
clear(): Promise<void>;
|
|
124
|
-
|
|
173
|
+
private rootIsDir;
|
|
125
174
|
private walk;
|
|
126
175
|
}
|
|
127
176
|
|
|
@@ -136,7 +185,7 @@ interface RedisObserverStoreOptions {
|
|
|
136
185
|
* file keys exist so readAll needs no SCAN. Mirrors the Python
|
|
137
186
|
* RedisObserverStore.
|
|
138
187
|
*/
|
|
139
|
-
declare class RedisObserverStore
|
|
188
|
+
declare class RedisObserverStore extends ObserverStoreBase {
|
|
140
189
|
readonly url: string;
|
|
141
190
|
private readonly prefix;
|
|
142
191
|
private readonly indexKey;
|
|
@@ -145,7 +194,6 @@ declare class RedisObserverStore implements ObserverStore {
|
|
|
145
194
|
private client;
|
|
146
195
|
append(key: string, data: Uint8Array): Promise<void>;
|
|
147
196
|
write(key: string, data: Uint8Array): Promise<void>;
|
|
148
|
-
readAll(): Promise<Map<string, Uint8Array>>;
|
|
149
197
|
readMatching(suffix: string): Promise<Map<string, Uint8Array>>;
|
|
150
198
|
private indexedPaths;
|
|
151
199
|
private readPaths;
|
|
@@ -153,6 +201,71 @@ declare class RedisObserverStore implements ObserverStore {
|
|
|
153
201
|
close(): Promise<void>;
|
|
154
202
|
}
|
|
155
203
|
|
|
204
|
+
interface RedisConsoleStoreOptions {
|
|
205
|
+
url?: string;
|
|
206
|
+
keyPrefix?: string;
|
|
207
|
+
/** Expire the keys this long after the last append; absent keeps them. */
|
|
208
|
+
ttlSeconds?: number;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Console storage on a Redis stream, for readers in other processes.
|
|
212
|
+
*
|
|
213
|
+
* One stream per job: chunk seq maps to stream id `(seq+1)-0`, with the
|
|
214
|
+
* channel, payload and timestamp as entry fields (`c`/`d`/`t`). The
|
|
215
|
+
* job's process appends through its store instance; a reader anywhere
|
|
216
|
+
* else attaches its own instance on the same keyPrefix and follows
|
|
217
|
+
* live, which is what RAM cannot offer. The schema matches the Python
|
|
218
|
+
* RedisConsoleStore byte for byte, so the reader does not have to be
|
|
219
|
+
* the writer's language.
|
|
220
|
+
*
|
|
221
|
+
* The job owns its keys: a factory must hand every job a prefix nothing
|
|
222
|
+
* else has written, because a reused stream replays the previous job's
|
|
223
|
+
* chunks, ending chunk included. `keyPrefix` stays public because it is
|
|
224
|
+
* the console's address: an embedder reads it off a job's store and
|
|
225
|
+
* hands it to the process that should attach.
|
|
226
|
+
*
|
|
227
|
+
* The ending chunk is terminal in the store itself, not only in this
|
|
228
|
+
* process: the append script refuses any append once a CONTROL chunk
|
|
229
|
+
* landed, so an emit that raced a kill past `JobConsole`'s local guard
|
|
230
|
+
* is dropped server-side instead of landing after the ending.
|
|
231
|
+
*
|
|
232
|
+
* `wait` polls the seq counter rather than blocking server-side the way
|
|
233
|
+
* Python's XREAD BLOCK does: node-redis serializes commands on one
|
|
234
|
+
* connection, so a blocking read would wedge the job's own appends
|
|
235
|
+
* behind it, and a second connection costs more than a short poll.
|
|
236
|
+
* There is no retention trim, so readFrom never reports a truncated
|
|
237
|
+
* cursor; retention is bounded by `ttlSeconds` instead, refreshed on
|
|
238
|
+
* every append, so a console expires that long after its job's last
|
|
239
|
+
* write.
|
|
240
|
+
*/
|
|
241
|
+
declare class RedisConsoleStore implements ConsoleStore {
|
|
242
|
+
readonly url: string;
|
|
243
|
+
readonly keyPrefix: string;
|
|
244
|
+
private readonly streamKey;
|
|
245
|
+
private readonly counterKey;
|
|
246
|
+
private readonly endedKey;
|
|
247
|
+
private readonly ttlSeconds;
|
|
248
|
+
private clientPromise;
|
|
249
|
+
private isClosed;
|
|
250
|
+
constructor(options?: RedisConsoleStoreOptions);
|
|
251
|
+
get closed(): boolean;
|
|
252
|
+
private client;
|
|
253
|
+
/**
|
|
254
|
+
* Append one chunk, atomically against the console's ending.
|
|
255
|
+
*
|
|
256
|
+
* A dropped append (the console already ended) reports the last real
|
|
257
|
+
* chunk's seq; `JobConsole.emit` ignores the return and the drop is
|
|
258
|
+
* exactly its documented after-the-ending semantics.
|
|
259
|
+
*/
|
|
260
|
+
append(channel: Channel, data: Uint8Array): Promise<ConsoleChunk>;
|
|
261
|
+
readFrom(seq: number, limit?: number): Promise<ReadResult>;
|
|
262
|
+
wait(seq: number): Promise<void>;
|
|
263
|
+
close(): Promise<void>;
|
|
264
|
+
/** Delete the console's keys (test and integ teardown only). */
|
|
265
|
+
clear(): Promise<void>;
|
|
266
|
+
private chunk;
|
|
267
|
+
}
|
|
268
|
+
|
|
156
269
|
/**
|
|
157
270
|
* NamespaceStore backed by one `namespace.json` per workspace.
|
|
158
271
|
*
|
|
@@ -253,6 +366,7 @@ declare class DiskRecordClient {
|
|
|
253
366
|
private releaseLock;
|
|
254
367
|
private writeRecord;
|
|
255
368
|
}
|
|
369
|
+
|
|
256
370
|
/**
|
|
257
371
|
* SessionStore backed by per-session files under one directory.
|
|
258
372
|
*
|
|
@@ -459,6 +573,7 @@ interface RedisResourceState {
|
|
|
459
573
|
declare class RedisResource extends BaseResource implements Resource {
|
|
460
574
|
readonly kind: string;
|
|
461
575
|
readonly cachesReads: boolean;
|
|
576
|
+
readonly sizesAlwaysKnown: boolean;
|
|
462
577
|
readonly indexTtl: number;
|
|
463
578
|
readonly prompt: string;
|
|
464
579
|
readonly url: string;
|
|
@@ -467,6 +582,7 @@ declare class RedisResource extends BaseResource implements Resource {
|
|
|
467
582
|
readonly accessor: RedisAccessor;
|
|
468
583
|
readonly opsMap: Record<string, unknown>;
|
|
469
584
|
constructor(options?: RedisResourceOptions);
|
|
585
|
+
storageId(): string;
|
|
470
586
|
open(): Promise<void>;
|
|
471
587
|
close(): Promise<void>;
|
|
472
588
|
client(): Promise<RedisClientType>;
|
|
@@ -536,6 +652,8 @@ declare class RedisFileCacheStore extends RedisResource implements FileCache {
|
|
|
536
652
|
remove(key: string): Promise<void>;
|
|
537
653
|
exists(key: string | PathSpec): Promise<boolean>;
|
|
538
654
|
isFresh(key: string, remoteFingerprint: string): Promise<boolean>;
|
|
655
|
+
evictPrefix(prefix: string): Promise<void>;
|
|
656
|
+
evictPaths(_paths: Iterable<string>): void;
|
|
539
657
|
clear(): Promise<void>;
|
|
540
658
|
allCached(keys: readonly string[]): Promise<boolean>;
|
|
541
659
|
multiGet(keys: readonly string[]): Promise<(Uint8Array | null)[]>;
|
|
@@ -568,6 +686,13 @@ interface MountOptions {
|
|
|
568
686
|
* Mirage appends by default (see appendDirectIO).
|
|
569
687
|
*/
|
|
570
688
|
fuseOptions?: Record<string, unknown>;
|
|
689
|
+
/**
|
|
690
|
+
* Which kernel interface serves the mount: 'fuse' (default) or 'fskit'.
|
|
691
|
+
* 'fskit' routes through macFUSE 5.x's FSKit backend (no kernel
|
|
692
|
+
* extension); macOS-only, mounts under /Volumes, and every mounted
|
|
693
|
+
* resource must report exact sizes. See backend.ts for the guards.
|
|
694
|
+
*/
|
|
695
|
+
backend?: MountBackend;
|
|
571
696
|
}
|
|
572
697
|
declare function mount(ws: Workspace$1, options?: MountOptions): Promise<FuseHandle>;
|
|
573
698
|
declare function mountBackground(ws: Workspace$1, options?: MountOptions): Promise<FuseHandle>;
|
|
@@ -591,65 +716,149 @@ interface FuseAttr {
|
|
|
591
716
|
uid: number;
|
|
592
717
|
gid: number;
|
|
593
718
|
}
|
|
594
|
-
interface
|
|
719
|
+
interface Handle {
|
|
720
|
+
path: string;
|
|
721
|
+
data?: Uint8Array;
|
|
722
|
+
writeBuf?: [number, Uint8Array][];
|
|
723
|
+
}
|
|
724
|
+
interface PrefetchEntry {
|
|
725
|
+
data: Uint8Array;
|
|
726
|
+
expires: number;
|
|
727
|
+
}
|
|
728
|
+
interface MountCoreOptions {
|
|
595
729
|
rootPrefix?: string;
|
|
596
730
|
/**
|
|
597
|
-
* Bind every
|
|
731
|
+
* Bind every op to this session's mount grants. The kernel-tier
|
|
598
732
|
* primitive: bind-mount the tree into a container and the narrowing
|
|
599
733
|
* travels with it. Enforcement happens inside dispatch/Ops via the
|
|
600
734
|
* session context, so binding at the op entry point is sufficient.
|
|
601
735
|
*/
|
|
602
736
|
session?: Session;
|
|
603
737
|
}
|
|
604
|
-
|
|
605
|
-
|
|
738
|
+
/**
|
|
739
|
+
* Protocol-neutral mount logic shared by every kernel adapter.
|
|
740
|
+
*
|
|
741
|
+
* Everything here is expressed in POSIX terms (attribute records, ordinary
|
|
742
|
+
* thrown errors) and imports nothing from `@zkochan/fuse-native`, so it is
|
|
743
|
+
* reusable by a non-FUSE adapter and unit-testable without a kernel.
|
|
744
|
+
*
|
|
745
|
+
* The division of labour: this class decides *what* the filesystem
|
|
746
|
+
* contains, an adapter decides *how* to say it to a particular kernel
|
|
747
|
+
* interface. Adapters translate the errors thrown here into their own
|
|
748
|
+
* error codes with `classifyErrno`. Mirrors Python's `MountCore`.
|
|
749
|
+
*
|
|
750
|
+
* Every op goes through `ws.fs`, which delegates to the dispatcher, so
|
|
751
|
+
* a mount walks the same door as a shell line (mount modes, policies,
|
|
752
|
+
* cache, invalidation) and every op it runs lands in `ws.records` for
|
|
753
|
+
* `drainOps`. Reaching `ws.dispatch` from here instead would skip the
|
|
754
|
+
* record; reaching a backend directly would skip the door.
|
|
755
|
+
*/
|
|
756
|
+
declare class MountCore {
|
|
757
|
+
readonly ops: Ops;
|
|
758
|
+
readonly session: Session | null;
|
|
606
759
|
private readonly now;
|
|
607
760
|
private readonly root;
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
private readonly prefetchCache;
|
|
761
|
+
readonly handles: FileTable<Handle>;
|
|
762
|
+
readonly xattrs: Map<string, Map<string, Buffer<ArrayBufferLike>>>;
|
|
763
|
+
readonly prefetchCache: Map<string, PrefetchEntry>;
|
|
612
764
|
private readonly prefetchInflight;
|
|
613
|
-
private nextFh;
|
|
614
765
|
private readonly uid;
|
|
615
766
|
private readonly gid;
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
private fileStat;
|
|
767
|
+
constructor(ops: Ops, options?: MountCoreOptions);
|
|
768
|
+
resolve(path: string): string;
|
|
769
|
+
dirStat(): FuseAttr;
|
|
770
|
+
fileStat(size: number): FuseAttr;
|
|
621
771
|
/**
|
|
622
|
-
* Fold merged stat attributes into
|
|
772
|
+
* Fold merged stat attributes into an attr record. The workspace stat
|
|
623
773
|
* already carries the namespace overlay (chmod bits, chown ids, touched
|
|
624
774
|
* mtime), so honoring these fields here is what makes metadata ops
|
|
625
|
-
* visible
|
|
626
|
-
* numeric ids and there is no user db to map against.
|
|
775
|
+
* visible through a mount. String uid/gid (names) are skipped: the kernel
|
|
776
|
+
* wants numeric ids and there is no user db to map against.
|
|
627
777
|
*/
|
|
628
|
-
|
|
778
|
+
applyStatAttrs(entry: FuseAttr, s: FileStat): FuseAttr;
|
|
629
779
|
/**
|
|
630
|
-
* The target to present for a namespace link at a
|
|
780
|
+
* The target to present for a namespace link at a mount path, or null
|
|
631
781
|
* when not a link. Relative targets are stored verbatim and returned
|
|
632
782
|
* as-is. Absolute targets name virtual paths, so they are rewritten
|
|
633
783
|
* relative to the link's directory: returned raw, the kernel would
|
|
634
784
|
* resolve them against the host root and escape the mountpoint.
|
|
635
785
|
*/
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
private cachedSize;
|
|
641
|
-
private cachedData;
|
|
786
|
+
linkTarget(path: string): string | null;
|
|
787
|
+
linkStat(target: string): FuseAttr;
|
|
788
|
+
cachedSize(path: string): number | null;
|
|
789
|
+
cachedData(path: string): Uint8Array | null;
|
|
642
790
|
/**
|
|
643
791
|
* Fetch bytes for a size-unknown file and cache them so the open → read →
|
|
644
792
|
* fstat burst (and subsequent stats within the TTL) reuse the same fetch.
|
|
645
793
|
* With getattr reporting 0 pre-open, this hydration is what lets fgetattr
|
|
646
794
|
* answer with the real byte length after open (mirrors Python's
|
|
647
|
-
* `
|
|
795
|
+
* `prefetch_read`).
|
|
648
796
|
*/
|
|
649
|
-
|
|
650
|
-
/** Drain and return accumulated op records (mirrors Python's
|
|
797
|
+
prefetch(path: string): Promise<Uint8Array | null>;
|
|
798
|
+
/** Drain and return accumulated op records (mirrors Python's drainOps). */
|
|
651
799
|
drainOps(): OpRecord[];
|
|
652
800
|
private writeFile;
|
|
801
|
+
/**
|
|
802
|
+
* Merge buffered writes over the raw base and persist the result.
|
|
803
|
+
* The base is read raw so a flush never stores a rendered view back
|
|
804
|
+
* into the mount.
|
|
805
|
+
*/
|
|
806
|
+
private applyWrites;
|
|
807
|
+
getattr(path: string): Promise<FuseAttr>;
|
|
808
|
+
/** Attributes through an open handle, or path-based when not hydrated. */
|
|
809
|
+
fgetattr(path: string, fd: number): Promise<FuseAttr>;
|
|
810
|
+
readdir(path: string): Promise<string[]>;
|
|
811
|
+
read(path: string, fd: number, pos: number, len: number): Promise<Uint8Array>;
|
|
812
|
+
/** Buffer a write on its handle, or apply it directly when there is none. */
|
|
813
|
+
write(path: string, fd: number, data: Uint8Array, pos: number): Promise<void>;
|
|
814
|
+
create(path: string): Promise<number>;
|
|
815
|
+
mkdir(path: string): Promise<void>;
|
|
816
|
+
readlink(path: string): string;
|
|
817
|
+
/**
|
|
818
|
+
* Create namespace link `dest -> src` (ln -s src dest; libfuse passes
|
|
819
|
+
* the pointee first). Relative sources are stored verbatim (resolved
|
|
820
|
+
* at follow time, exactly like the shell `ln -s`); absolute sources
|
|
821
|
+
* are mapped into virtual space so a scoped mount stores the path it
|
|
822
|
+
* will later follow.
|
|
823
|
+
*/
|
|
824
|
+
symlink(src: string, dest: string): Promise<void>;
|
|
825
|
+
unlink(path: string): Promise<void>;
|
|
826
|
+
rename(src: string, dst: string): Promise<void>;
|
|
827
|
+
rmdir(path: string): Promise<void>;
|
|
828
|
+
truncate(path: string, size: number): Promise<void>;
|
|
829
|
+
statfs(): Record<string, number>;
|
|
830
|
+
setxattr(path: string, name: string, value: Buffer): void;
|
|
831
|
+
getxattr(path: string, name: string): Buffer | undefined;
|
|
832
|
+
listxattr(path: string): string[];
|
|
833
|
+
removexattr(path: string, name: string): void;
|
|
834
|
+
open(path: string): Promise<number>;
|
|
835
|
+
release(fd: number): Promise<void>;
|
|
836
|
+
flush(path: string, fd: number): Promise<void>;
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
interface MirageFSOptions {
|
|
840
|
+
rootPrefix?: string;
|
|
841
|
+
/**
|
|
842
|
+
* Bind every FUSE op to this session's mount grants. The kernel-tier
|
|
843
|
+
* primitive: bind-mount the tree into a container and the narrowing
|
|
844
|
+
* travels with it. Enforcement happens inside dispatch/Ops via the
|
|
845
|
+
* session context, so binding at the op entry point is sufficient.
|
|
846
|
+
*/
|
|
847
|
+
session?: Session;
|
|
848
|
+
}
|
|
849
|
+
/**
|
|
850
|
+
* libfuse adapter over MountCore.
|
|
851
|
+
*
|
|
852
|
+
* Owns exactly the FUSE-specific concerns: the `@zkochan/fuse-native`
|
|
853
|
+
* callback signatures and the translation of mirage-native errors into
|
|
854
|
+
* negative errno codes. All filesystem semantics live in MountCore, so a
|
|
855
|
+
* non-FUSE adapter can reuse them unchanged. Mirrors Python's `MirageFS`.
|
|
856
|
+
*/
|
|
857
|
+
declare class MirageFS {
|
|
858
|
+
readonly core: MountCore;
|
|
859
|
+
constructor(ops: Ops, options?: MirageFSOptions);
|
|
860
|
+
/** Drain and return accumulated op records (mirrors Python's drainOps). */
|
|
861
|
+
drainOps(): OpRecord[];
|
|
653
862
|
ops(): Record<string, unknown>;
|
|
654
863
|
private getattr;
|
|
655
864
|
private fgetattr;
|
|
@@ -659,13 +868,6 @@ declare class MirageFS {
|
|
|
659
868
|
private create;
|
|
660
869
|
private mkdir;
|
|
661
870
|
private readlink;
|
|
662
|
-
/**
|
|
663
|
-
* Create namespace link `dest -> src` (ln -s src dest; libfuse passes
|
|
664
|
-
* the pointee first). Relative sources are stored verbatim (resolved
|
|
665
|
-
* at follow time, exactly like the shell `ln -s`); absolute sources
|
|
666
|
-
* are mapped into virtual space so a scoped mount stores the path it
|
|
667
|
-
* will later follow.
|
|
668
|
-
*/
|
|
669
871
|
private symlink;
|
|
670
872
|
private unlink;
|
|
671
873
|
private rename;
|
|
@@ -680,22 +882,123 @@ declare class MirageFS {
|
|
|
680
882
|
private getxattr;
|
|
681
883
|
private listxattr;
|
|
682
884
|
private removexattr;
|
|
683
|
-
private
|
|
885
|
+
private validate;
|
|
684
886
|
private open;
|
|
685
887
|
private release;
|
|
686
888
|
private flush;
|
|
687
889
|
private fsync;
|
|
688
890
|
}
|
|
689
891
|
|
|
892
|
+
/**
|
|
893
|
+
* Map a mirage-native error onto a positive POSIX errno.
|
|
894
|
+
*
|
|
895
|
+
* Mirrors Python's `mirage.fuse.errors.classify_error` so both languages
|
|
896
|
+
* report the same errno for the same backend failure. The naming lives in
|
|
897
|
+
* core's `classify` (shared with the wasi shim and the monty encoders);
|
|
898
|
+
* this adapter only renders the condition in host numbers. A stamped code
|
|
899
|
+
* outside the vocabulary is passed through in the host's own numbering
|
|
900
|
+
* (Python's raw OSError.errno passthrough), and the message needles are a
|
|
901
|
+
* last resort for unstamped errors, not a classification channel.
|
|
902
|
+
*/
|
|
903
|
+
declare function classifyErrno(err: unknown): number;
|
|
904
|
+
/** Same classification, negated for `@zkochan/fuse-native` callbacks. */
|
|
905
|
+
declare function classifyError(err: unknown): number;
|
|
906
|
+
|
|
907
|
+
/**
|
|
908
|
+
* FSKit mounts only under /Volumes. Anywhere else the mount fails with an
|
|
909
|
+
* opaque driver error, so the rule is enforced up front rather than
|
|
910
|
+
* discovered at run time (github.com/strukto-ai/mirage#82).
|
|
911
|
+
*/
|
|
912
|
+
declare const FSKIT_MOUNT_ROOT = "/Volumes";
|
|
913
|
+
/**
|
|
914
|
+
* Coerce a user-supplied backend name into a MountBackend.
|
|
915
|
+
*
|
|
916
|
+
* Missing means vfs, everywhere: an absent `backend` in YAML, `undefined`
|
|
917
|
+
* here, and the `MountSpecOptions` default all resolve to the same thing.
|
|
918
|
+
* Callers that need a kernel mount say so explicitly rather than relying on
|
|
919
|
+
* this function to reinterpret an absent value.
|
|
920
|
+
*/
|
|
921
|
+
declare function resolveBackend(value?: string | null): MountBackend;
|
|
922
|
+
/** Reject a backend that registers nothing with the kernel. */
|
|
923
|
+
declare function requireKernelBackend(backend: MountBackend): void;
|
|
924
|
+
/**
|
|
925
|
+
* Reject a backend the current platform cannot serve.
|
|
926
|
+
*
|
|
927
|
+
* FSKit works from TypeScript: `fuse.node` links `/usr/local/lib/
|
|
928
|
+
* libfuse.2.dylib` by absolute path (the `libosxfuse.2.dylib` it ships is a
|
|
929
|
+
* stub with that install name), so on a machine with macFUSE 5.x the
|
|
930
|
+
* `backend=fskit` option reaches the same libfuse Python uses. Verified
|
|
931
|
+
* with a live mount; see examples/typescript/fuse/fskit.ts.
|
|
932
|
+
*/
|
|
933
|
+
declare function checkPlatform(backend: MountBackend): void;
|
|
934
|
+
/** Reject a mountpoint the backend cannot mount on. */
|
|
935
|
+
declare function checkMountpoint(backend: MountBackend, mountpoint: string): void;
|
|
936
|
+
/**
|
|
937
|
+
* Mounts under `rootPrefix` whose files cannot be sized without reading
|
|
938
|
+
* them. Mirrors Python's `Ops.unsized_mounts`.
|
|
939
|
+
*/
|
|
940
|
+
declare function unsizedMounts(ws: Workspace$1, rootPrefix?: string): [string, string][];
|
|
941
|
+
/**
|
|
942
|
+
* Warn when an fskit mount will serve size-unknown files as empty.
|
|
943
|
+
*
|
|
944
|
+
* FSKit drives reads from the size the filesystem reports and has no
|
|
945
|
+
* `direct_io` escape hatch, so a resource that cannot size a file without
|
|
946
|
+
* fetching it reports 0, the kernel issues no reads, and every such file
|
|
947
|
+
* comes back empty with exit code 0 (verified on a live fskit mount: the
|
|
948
|
+
* read clamp is pinned at lookup-time size and never refreshed). The mount
|
|
949
|
+
* proceeds anyway: per-backend size push-down is closing this gap, so the
|
|
950
|
+
* degraded mounts are named loudly here rather than refused.
|
|
951
|
+
*/
|
|
952
|
+
declare function checkSizes(backend: MountBackend, ws: Workspace$1, rootPrefix?: string): void;
|
|
953
|
+
/**
|
|
954
|
+
* Resolve a backend for a kernel mount and run every guard it implies.
|
|
955
|
+
*
|
|
956
|
+
* One entry point, so a new mount path cannot pick up fskit support while
|
|
957
|
+
* silently skipping the macOS, /Volumes, or size checks.
|
|
958
|
+
*/
|
|
959
|
+
declare function prepareBackend(value: string | undefined, ws?: Workspace$1, mountpoint?: string, rootPrefix?: string): MountBackend;
|
|
960
|
+
|
|
690
961
|
declare function isMacosMetadata(name: string): boolean;
|
|
691
962
|
|
|
692
963
|
interface S3Config extends S3Config$1 {
|
|
693
964
|
profile?: string;
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
965
|
+
proxy?: string;
|
|
966
|
+
}
|
|
967
|
+
declare const S3ConfigSchema: z.ZodObject<{
|
|
968
|
+
bucket: z.ZodString;
|
|
969
|
+
region: z.ZodOptional<z.ZodString>;
|
|
970
|
+
endpoint: z.ZodOptional<z.ZodString>;
|
|
971
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
972
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
973
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
974
|
+
forcePathStyle: z.ZodOptional<z.ZodBoolean>;
|
|
975
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
976
|
+
presignedUrlProvider: z.ZodOptional<z.ZodCustom<_struktoai_mirage_core.S3BrowserPresignedUrlProvider, _struktoai_mirage_core.S3BrowserPresignedUrlProvider>>;
|
|
977
|
+
httpAgentProvider: z.ZodOptional<z.ZodCustom<_struktoai_mirage_core.S3HttpAgentProvider, _struktoai_mirage_core.S3HttpAgentProvider>>;
|
|
978
|
+
defaultContentType: z.ZodOptional<z.ZodString>;
|
|
979
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
980
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
981
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
982
|
+
}, z.core.$strip>;
|
|
983
|
+
type S3ConfigRedacted = RedactedConfig<ConfigOf<typeof S3ConfigSchema>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'presignedUrlProvider' | 'httpAgentProvider' | 'proxy'>;
|
|
698
984
|
declare function redactConfig(config: S3Config): S3ConfigRedacted;
|
|
985
|
+
/**
|
|
986
|
+
* Translate Python-style snake_case keys (as used in YAML configs and the
|
|
987
|
+
* Python `S3Config`) to the TS-idiomatic camelCase fields. Already-camelCase
|
|
988
|
+
* keys pass through unchanged so user code that constructs `S3Config`
|
|
989
|
+
* directly keeps working.
|
|
990
|
+
*
|
|
991
|
+
* Python ↔ TS mapping:
|
|
992
|
+
* aws_access_key_id ↔ accessKeyId
|
|
993
|
+
* aws_secret_access_key ↔ secretAccessKey
|
|
994
|
+
* aws_session_token ↔ sessionToken
|
|
995
|
+
* aws_profile ↔ profile
|
|
996
|
+
* endpoint_url ↔ endpoint
|
|
997
|
+
* path_style ↔ forcePathStyle
|
|
998
|
+
* timeout (sec, int) ↔ timeoutMs (ms, number — converted ×1000)
|
|
999
|
+
* proxy ↔ proxy
|
|
1000
|
+
*/
|
|
1001
|
+
declare function normalizeS3Config(input: Record<string, unknown>): S3Config;
|
|
699
1002
|
|
|
700
1003
|
interface S3ResourceState {
|
|
701
1004
|
type: string;
|
|
@@ -705,14 +1008,15 @@ declare class S3Resource extends BaseResource implements Resource {
|
|
|
705
1008
|
readonly kind: string;
|
|
706
1009
|
readonly cachesReads: boolean;
|
|
707
1010
|
readonly supportsSnapshot: boolean;
|
|
1011
|
+
readonly sizesAlwaysKnown: boolean;
|
|
708
1012
|
readonly indexTtl: number;
|
|
709
1013
|
readonly prompt: string;
|
|
710
1014
|
readonly config: S3Config;
|
|
711
1015
|
readonly accessor: S3Accessor;
|
|
712
1016
|
readonly opsMap: Record<string, unknown>;
|
|
713
1017
|
constructor(config: S3Config);
|
|
1018
|
+
storageId(): string;
|
|
714
1019
|
open(): Promise<void>;
|
|
715
|
-
close(): Promise<void>;
|
|
716
1020
|
commands(): readonly RegisteredCommand[];
|
|
717
1021
|
ops(): readonly RegisteredOp[];
|
|
718
1022
|
streamPath(p: PathSpec): AsyncIterable<Uint8Array>;
|
|
@@ -736,16 +1040,15 @@ declare class S3Resource extends BaseResource implements Resource {
|
|
|
736
1040
|
loadState(_state: S3ResourceState): Promise<void>;
|
|
737
1041
|
}
|
|
738
1042
|
|
|
739
|
-
|
|
740
|
-
uri:
|
|
741
|
-
database:
|
|
742
|
-
bucket
|
|
743
|
-
keyPrefix
|
|
744
|
-
chunkSizeBytes
|
|
745
|
-
}
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
}
|
|
1043
|
+
declare const GridFSConfigSchema: z.ZodObject<{
|
|
1044
|
+
uri: z.ZodString;
|
|
1045
|
+
database: z.ZodString;
|
|
1046
|
+
bucket: z.ZodOptional<z.ZodString>;
|
|
1047
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1048
|
+
chunkSizeBytes: z.ZodOptional<z.ZodNumber>;
|
|
1049
|
+
}, z.core.$strip>;
|
|
1050
|
+
type GridFSConfig = ConfigOf<typeof GridFSConfigSchema>;
|
|
1051
|
+
type GridFSConfigRedacted = RedactedConfig<GridFSConfig, 'uri'>;
|
|
749
1052
|
/**
|
|
750
1053
|
* Translate Python-style snake_case keys (as used in YAML configs and the
|
|
751
1054
|
* Python `GridFSConfig`) to the TS-idiomatic camelCase fields, and
|
|
@@ -771,6 +1074,7 @@ declare class GridFSResource extends BaseResource implements Resource {
|
|
|
771
1074
|
readonly kind: string;
|
|
772
1075
|
readonly cachesReads: boolean;
|
|
773
1076
|
readonly supportsSnapshot: boolean;
|
|
1077
|
+
readonly sizesAlwaysKnown: boolean;
|
|
774
1078
|
readonly indexTtl: number;
|
|
775
1079
|
readonly prompt: string;
|
|
776
1080
|
readonly config: GridFSConfig;
|
|
@@ -809,6 +1113,7 @@ interface DatabricksVolumeResourceState {
|
|
|
809
1113
|
declare class DatabricksVolumeResource extends BaseResource implements Resource {
|
|
810
1114
|
readonly kind: string;
|
|
811
1115
|
readonly cachesReads: boolean;
|
|
1116
|
+
readonly sizesAlwaysKnown: boolean;
|
|
812
1117
|
readonly indexTtl: number;
|
|
813
1118
|
readonly prompt: string;
|
|
814
1119
|
readonly config: DatabricksVolumeConfig;
|
|
@@ -817,7 +1122,6 @@ declare class DatabricksVolumeResource extends BaseResource implements Resource
|
|
|
817
1122
|
private constructor();
|
|
818
1123
|
static create(config: DatabricksVolumeConfig): Promise<DatabricksVolumeResource>;
|
|
819
1124
|
open(): Promise<void>;
|
|
820
|
-
close(): Promise<void>;
|
|
821
1125
|
commands(): readonly RegisteredCommand[];
|
|
822
1126
|
ops(): readonly RegisteredOp[];
|
|
823
1127
|
streamPath(p: PathSpec): AsyncIterable<Uint8Array>;
|
|
@@ -849,24 +1153,31 @@ declare function loadDatabricksProfile(profile: string): Promise<DatabricksProfi
|
|
|
849
1153
|
declare const GCS_ENDPOINT = "https://storage.googleapis.com";
|
|
850
1154
|
interface GCSConfig {
|
|
851
1155
|
bucket: string;
|
|
852
|
-
accessKeyId
|
|
853
|
-
secretAccessKey
|
|
1156
|
+
accessKeyId?: string;
|
|
1157
|
+
secretAccessKey?: string;
|
|
1158
|
+
sessionToken?: string;
|
|
1159
|
+
profile?: string;
|
|
854
1160
|
endpoint?: string;
|
|
855
1161
|
region?: string;
|
|
856
1162
|
timeoutMs?: number;
|
|
857
1163
|
forcePathStyle?: boolean;
|
|
858
1164
|
keyPrefix?: string;
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
1165
|
+
proxy?: string;
|
|
1166
|
+
}
|
|
1167
|
+
declare const GCSConfigSchema: z.ZodObject<{
|
|
1168
|
+
bucket: z.ZodString;
|
|
1169
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
1170
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
1171
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
1172
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
1173
|
+
endpoint: z.ZodString;
|
|
1174
|
+
region: z.ZodString;
|
|
1175
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1176
|
+
forcePathStyle: z.ZodOptional<z.ZodBoolean>;
|
|
1177
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1178
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1179
|
+
}, z.core.$strip>;
|
|
1180
|
+
type GCSConfigRedacted = RedactedConfig<ConfigOf<typeof GCSConfigSchema>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'>;
|
|
870
1181
|
declare function redactGcsConfig(config: GCSConfig): GCSConfigRedacted;
|
|
871
1182
|
|
|
872
1183
|
interface GCSResourceState {
|
|
@@ -886,28 +1197,35 @@ declare class GCSResource extends S3Resource {
|
|
|
886
1197
|
loadState(_state: GCSResourceState): Promise<void>;
|
|
887
1198
|
}
|
|
888
1199
|
|
|
889
|
-
declare const GCS_PROMPT = "{prefix}\n Remote Google Cloud Storage bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1200
|
+
declare const GCS_PROMPT = "{prefix}\n Remote Google Cloud Storage bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
890
1201
|
|
|
891
1202
|
interface OCIConfig {
|
|
892
1203
|
bucket: string;
|
|
893
1204
|
namespace: string;
|
|
894
1205
|
region: string;
|
|
895
|
-
accessKeyId
|
|
896
|
-
secretAccessKey
|
|
1206
|
+
accessKeyId?: string;
|
|
1207
|
+
secretAccessKey?: string;
|
|
1208
|
+
sessionToken?: string;
|
|
1209
|
+
profile?: string;
|
|
897
1210
|
endpoint?: string;
|
|
898
1211
|
keyPrefix?: string;
|
|
899
1212
|
timeoutMs?: number;
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
1213
|
+
proxy?: string;
|
|
1214
|
+
}
|
|
1215
|
+
declare const OCIConfigSchema: z.ZodObject<{
|
|
1216
|
+
bucket: z.ZodString;
|
|
1217
|
+
namespace: z.ZodString;
|
|
1218
|
+
region: z.ZodString;
|
|
1219
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
1220
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
1221
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
1222
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
1223
|
+
endpoint: z.ZodString;
|
|
1224
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1225
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1226
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1227
|
+
}, z.core.$strip>;
|
|
1228
|
+
type OCIConfigRedacted = RedactedConfig<ConfigOf<typeof OCIConfigSchema>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'>;
|
|
911
1229
|
declare function redactOciConfig(config: OCIConfig): OCIConfigRedacted;
|
|
912
1230
|
|
|
913
1231
|
interface OCIResourceState {
|
|
@@ -931,8 +1249,9 @@ declare const OCI_PROMPT = "{prefix}\n Remote Oracle Cloud Object Storage.\n I
|
|
|
931
1249
|
|
|
932
1250
|
interface R2Config {
|
|
933
1251
|
bucket: string;
|
|
934
|
-
accessKeyId
|
|
935
|
-
secretAccessKey
|
|
1252
|
+
accessKeyId?: string;
|
|
1253
|
+
secretAccessKey?: string;
|
|
1254
|
+
sessionToken?: string;
|
|
936
1255
|
accountId?: string;
|
|
937
1256
|
endpoint?: string;
|
|
938
1257
|
region?: string;
|
|
@@ -940,19 +1259,23 @@ interface R2Config {
|
|
|
940
1259
|
forcePathStyle?: boolean;
|
|
941
1260
|
keyPrefix?: string;
|
|
942
1261
|
timeoutMs?: number;
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
1262
|
+
proxy?: string;
|
|
1263
|
+
}
|
|
1264
|
+
declare const R2ConfigSchema: z.ZodObject<{
|
|
1265
|
+
bucket: z.ZodString;
|
|
1266
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
1267
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
1268
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
1269
|
+
accountId: z.ZodOptional<z.ZodString>;
|
|
1270
|
+
endpoint: z.ZodString;
|
|
1271
|
+
region: z.ZodString;
|
|
1272
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
1273
|
+
forcePathStyle: z.ZodOptional<z.ZodBoolean>;
|
|
1274
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1275
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1276
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1277
|
+
}, z.core.$strip>;
|
|
1278
|
+
type R2ConfigRedacted = RedactedConfig<ConfigOf<typeof R2ConfigSchema>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'>;
|
|
956
1279
|
declare function redactR2Config(config: R2Config): R2ConfigRedacted;
|
|
957
1280
|
|
|
958
1281
|
interface R2ResourceState {
|
|
@@ -972,30 +1295,35 @@ declare class R2Resource extends S3Resource {
|
|
|
972
1295
|
loadState(_state: R2ResourceState): Promise<void>;
|
|
973
1296
|
}
|
|
974
1297
|
|
|
975
|
-
declare const R2_PROMPT = "{prefix}\n Remote Cloudflare R2 bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1298
|
+
declare const R2_PROMPT = "{prefix}\n Remote Cloudflare R2 bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
976
1299
|
|
|
977
1300
|
interface SupabaseConfig {
|
|
978
1301
|
bucket: string;
|
|
979
1302
|
region: string;
|
|
980
|
-
accessKeyId
|
|
981
|
-
secretAccessKey
|
|
1303
|
+
accessKeyId?: string;
|
|
1304
|
+
secretAccessKey?: string;
|
|
982
1305
|
projectRef?: string;
|
|
983
1306
|
endpoint?: string;
|
|
984
1307
|
sessionToken?: string;
|
|
1308
|
+
profile?: string;
|
|
985
1309
|
keyPrefix?: string;
|
|
986
1310
|
timeoutMs?: number;
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
1311
|
+
proxy?: string;
|
|
1312
|
+
}
|
|
1313
|
+
declare const SupabaseConfigSchema: z.ZodObject<{
|
|
1314
|
+
bucket: z.ZodString;
|
|
1315
|
+
region: z.ZodString;
|
|
1316
|
+
projectRef: z.ZodOptional<z.ZodString>;
|
|
1317
|
+
endpoint: z.ZodString;
|
|
1318
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
1319
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
1320
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
1321
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
1322
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1323
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1324
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1325
|
+
}, z.core.$strip>;
|
|
1326
|
+
type SupabaseConfigRedacted = RedactedConfig<ConfigOf<typeof SupabaseConfigSchema>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'>;
|
|
999
1327
|
declare function resolvedSupabaseEndpoint(config: SupabaseConfig): string;
|
|
1000
1328
|
declare function redactSupabaseConfig(config: SupabaseConfig): SupabaseConfigRedacted;
|
|
1001
1329
|
|
|
@@ -1027,13 +1355,14 @@ interface HfBucketsConfig {
|
|
|
1027
1355
|
timeoutMs?: number;
|
|
1028
1356
|
keyPrefix?: string;
|
|
1029
1357
|
}
|
|
1030
|
-
|
|
1031
|
-
bucket:
|
|
1032
|
-
token
|
|
1033
|
-
endpoint:
|
|
1034
|
-
timeoutMs
|
|
1035
|
-
keyPrefix
|
|
1036
|
-
}
|
|
1358
|
+
declare const HfBucketsConfigSchema: z.ZodObject<{
|
|
1359
|
+
bucket: z.ZodString;
|
|
1360
|
+
token: z.ZodOptional<z.ZodString>;
|
|
1361
|
+
endpoint: z.ZodString;
|
|
1362
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1363
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1364
|
+
}, z.core.$strip>;
|
|
1365
|
+
type HfBucketsConfigRedacted = RedactedConfig<ConfigOf<typeof HfBucketsConfigSchema>, 'token'>;
|
|
1037
1366
|
declare function redactHfBucketsConfig(config: HfBucketsConfig): HfBucketsConfigRedacted;
|
|
1038
1367
|
declare function normalizeHfBucketsConfig(input: Record<string, unknown>): HfBucketsConfig;
|
|
1039
1368
|
interface HfRepoConfig {
|
|
@@ -1044,14 +1373,15 @@ interface HfRepoConfig {
|
|
|
1044
1373
|
keyPrefix?: string;
|
|
1045
1374
|
revision?: string;
|
|
1046
1375
|
}
|
|
1047
|
-
|
|
1048
|
-
repoId:
|
|
1049
|
-
token
|
|
1050
|
-
endpoint:
|
|
1051
|
-
timeoutMs
|
|
1052
|
-
keyPrefix
|
|
1053
|
-
revision
|
|
1054
|
-
}
|
|
1376
|
+
declare const HfRepoConfigSchema: z.ZodObject<{
|
|
1377
|
+
repoId: z.ZodString;
|
|
1378
|
+
token: z.ZodOptional<z.ZodString>;
|
|
1379
|
+
endpoint: z.ZodString;
|
|
1380
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1381
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1382
|
+
revision: z.ZodOptional<z.ZodString>;
|
|
1383
|
+
}, z.core.$strip>;
|
|
1384
|
+
type HfRepoConfigRedacted = RedactedConfig<ConfigOf<typeof HfRepoConfigSchema>, 'token'>;
|
|
1055
1385
|
declare function redactHfRepoConfig(config: HfRepoConfig): HfRepoConfigRedacted;
|
|
1056
1386
|
declare function normalizeHfRepoConfig(input: Record<string, unknown>): HfRepoConfig;
|
|
1057
1387
|
|
|
@@ -1094,10 +1424,10 @@ declare abstract class HfResource extends BaseResource implements Resource {
|
|
|
1094
1424
|
abstract readonly prompt: string;
|
|
1095
1425
|
abstract readonly accessor: HfAccessor;
|
|
1096
1426
|
readonly cachesReads: boolean;
|
|
1427
|
+
readonly sizesAlwaysKnown: boolean;
|
|
1097
1428
|
readonly supportsSnapshot: boolean;
|
|
1098
1429
|
readonly opsMap: Record<string, unknown>;
|
|
1099
1430
|
open(): Promise<void>;
|
|
1100
|
-
close(): Promise<void>;
|
|
1101
1431
|
commands(): readonly RegisteredCommand[];
|
|
1102
1432
|
ops(): readonly RegisteredOp[];
|
|
1103
1433
|
streamPath(p: PathSpec): AsyncIterable<Uint8Array>;
|
|
@@ -1183,27 +1513,56 @@ declare const HF_COMMANDS: readonly RegisteredCommand[];
|
|
|
1183
1513
|
|
|
1184
1514
|
declare const HF_OPS: readonly RegisteredOp[];
|
|
1185
1515
|
|
|
1186
|
-
|
|
1516
|
+
/**
|
|
1517
|
+
* Shared shape for the S3-compatible providers.
|
|
1518
|
+
*
|
|
1519
|
+
* Every alias is the same credentials plus one endpoint rule, so the
|
|
1520
|
+
* fields, the zod schema that drives redaction, the snake_case mapping and
|
|
1521
|
+
* the conversion to S3Config live here once. A provider declares only its
|
|
1522
|
+
* endpoint rule and whatever it genuinely adds. Mirrors Python's
|
|
1523
|
+
* `mirage/resource/s3_alias.py`.
|
|
1524
|
+
*
|
|
1525
|
+
* Only `bucket` and whatever the endpoint genuinely needs are required.
|
|
1526
|
+
* Credentials are optional because `S3Config` leaves them optional too, so
|
|
1527
|
+
* omitting them falls through to the usual AWS resolution order: `profile`,
|
|
1528
|
+
* then the `AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY` environment
|
|
1529
|
+
* variables, then the shared credentials file, then an instance role.
|
|
1530
|
+
* `sessionToken` and `profile` live here rather than on the one provider
|
|
1531
|
+
* that first needed them, so every alias accepts them.
|
|
1532
|
+
*/
|
|
1533
|
+
interface S3AliasConfig {
|
|
1187
1534
|
bucket: string;
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1535
|
+
accessKeyId?: string;
|
|
1536
|
+
secretAccessKey?: string;
|
|
1537
|
+
sessionToken?: string;
|
|
1538
|
+
profile?: string;
|
|
1191
1539
|
region?: string;
|
|
1540
|
+
endpoint?: string;
|
|
1192
1541
|
forcePathStyle?: boolean;
|
|
1193
1542
|
keyPrefix?: string;
|
|
1194
1543
|
timeoutMs?: number;
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1544
|
+
proxy?: string;
|
|
1545
|
+
}
|
|
1546
|
+
declare const ALIAS_SCHEMA: z.ZodObject<{
|
|
1547
|
+
bucket: z.ZodString;
|
|
1548
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
1549
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
1550
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
1551
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
1552
|
+
region: z.ZodString;
|
|
1553
|
+
endpoint: z.ZodString;
|
|
1554
|
+
forcePathStyle: z.ZodOptional<z.ZodBoolean>;
|
|
1555
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1556
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1557
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1558
|
+
}, z.core.$strip>;
|
|
1559
|
+
type S3AliasConfigRedacted = RedactedConfig<ConfigOf<typeof ALIAS_SCHEMA>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'>;
|
|
1560
|
+
|
|
1561
|
+
interface MinIOConfig extends S3AliasConfig {
|
|
1198
1562
|
endpoint: string;
|
|
1199
|
-
accessKeyId: string;
|
|
1200
|
-
secretAccessKey: string;
|
|
1201
|
-
region: string;
|
|
1202
|
-
forcePathStyle: boolean;
|
|
1203
|
-
keyPrefix?: string;
|
|
1204
|
-
timeoutMs?: number;
|
|
1205
1563
|
}
|
|
1206
|
-
|
|
1564
|
+
type MinIOConfigRedacted = S3AliasConfigRedacted;
|
|
1565
|
+
declare const redactMinIOConfig: (config: MinIOConfig) => S3AliasConfigRedacted;
|
|
1207
1566
|
|
|
1208
1567
|
interface MinIOResourceState {
|
|
1209
1568
|
type: string;
|
|
@@ -1222,29 +1581,13 @@ declare class MinIOResource extends S3Resource {
|
|
|
1222
1581
|
loadState(_state: MinIOResourceState): Promise<void>;
|
|
1223
1582
|
}
|
|
1224
1583
|
|
|
1225
|
-
declare const MINIO_PROMPT = "{prefix}\n Remote MinIO bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1584
|
+
declare const MINIO_PROMPT = "{prefix}\n Remote MinIO bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1226
1585
|
|
|
1227
|
-
interface SeaweedFSConfig {
|
|
1228
|
-
bucket: string;
|
|
1586
|
+
interface SeaweedFSConfig extends S3AliasConfig {
|
|
1229
1587
|
endpoint: string;
|
|
1230
|
-
accessKeyId: string;
|
|
1231
|
-
secretAccessKey: string;
|
|
1232
|
-
region?: string;
|
|
1233
|
-
forcePathStyle?: boolean;
|
|
1234
|
-
keyPrefix?: string;
|
|
1235
|
-
timeoutMs?: number;
|
|
1236
1588
|
}
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
endpoint: string;
|
|
1240
|
-
accessKeyId: string;
|
|
1241
|
-
secretAccessKey: string;
|
|
1242
|
-
region: string;
|
|
1243
|
-
forcePathStyle: boolean;
|
|
1244
|
-
keyPrefix?: string;
|
|
1245
|
-
timeoutMs?: number;
|
|
1246
|
-
}
|
|
1247
|
-
declare function redactSeaweedFSConfig(config: SeaweedFSConfig): SeaweedFSConfigRedacted;
|
|
1589
|
+
type SeaweedFSConfigRedacted = S3AliasConfigRedacted;
|
|
1590
|
+
declare const redactSeaweedFSConfig: (config: SeaweedFSConfig) => S3AliasConfigRedacted;
|
|
1248
1591
|
|
|
1249
1592
|
interface SeaweedFSResourceState {
|
|
1250
1593
|
type: string;
|
|
@@ -1263,29 +1606,13 @@ declare class SeaweedFSResource extends S3Resource {
|
|
|
1263
1606
|
loadState(_state: SeaweedFSResourceState): Promise<void>;
|
|
1264
1607
|
}
|
|
1265
1608
|
|
|
1266
|
-
declare const SEAWEEDFS_PROMPT = "{prefix}\n Remote SeaweedFS bucket (S3-compatible gateway).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1609
|
+
declare const SEAWEEDFS_PROMPT = "{prefix}\n Remote SeaweedFS bucket (S3-compatible gateway).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1267
1610
|
|
|
1268
|
-
interface CephConfig {
|
|
1269
|
-
bucket: string;
|
|
1270
|
-
endpoint: string;
|
|
1271
|
-
accessKeyId: string;
|
|
1272
|
-
secretAccessKey: string;
|
|
1273
|
-
region?: string;
|
|
1274
|
-
forcePathStyle?: boolean;
|
|
1275
|
-
keyPrefix?: string;
|
|
1276
|
-
timeoutMs?: number;
|
|
1277
|
-
}
|
|
1278
|
-
interface CephConfigRedacted {
|
|
1279
|
-
bucket: string;
|
|
1611
|
+
interface CephConfig extends S3AliasConfig {
|
|
1280
1612
|
endpoint: string;
|
|
1281
|
-
accessKeyId: string;
|
|
1282
|
-
secretAccessKey: string;
|
|
1283
|
-
region: string;
|
|
1284
|
-
forcePathStyle: boolean;
|
|
1285
|
-
keyPrefix?: string;
|
|
1286
|
-
timeoutMs?: number;
|
|
1287
1613
|
}
|
|
1288
|
-
|
|
1614
|
+
type CephConfigRedacted = S3AliasConfigRedacted;
|
|
1615
|
+
declare const redactCephConfig: (config: CephConfig) => S3AliasConfigRedacted;
|
|
1289
1616
|
|
|
1290
1617
|
interface CephResourceState {
|
|
1291
1618
|
type: string;
|
|
@@ -1304,28 +1631,35 @@ declare class CephResource extends S3Resource {
|
|
|
1304
1631
|
loadState(_state: CephResourceState): Promise<void>;
|
|
1305
1632
|
}
|
|
1306
1633
|
|
|
1307
|
-
declare const CEPH_PROMPT = "{prefix}\n Remote Ceph Rados Gateway bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1634
|
+
declare const CEPH_PROMPT = "{prefix}\n Remote Ceph Rados Gateway bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1308
1635
|
|
|
1309
1636
|
interface WasabiConfig {
|
|
1310
1637
|
bucket: string;
|
|
1311
|
-
accessKeyId
|
|
1312
|
-
secretAccessKey
|
|
1638
|
+
accessKeyId?: string;
|
|
1639
|
+
secretAccessKey?: string;
|
|
1640
|
+
sessionToken?: string;
|
|
1641
|
+
profile?: string;
|
|
1313
1642
|
region?: string;
|
|
1314
1643
|
endpoint?: string;
|
|
1315
1644
|
forcePathStyle?: boolean;
|
|
1316
1645
|
keyPrefix?: string;
|
|
1317
1646
|
timeoutMs?: number;
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1647
|
+
proxy?: string;
|
|
1648
|
+
}
|
|
1649
|
+
declare const WasabiConfigSchema: z.ZodObject<{
|
|
1650
|
+
bucket: z.ZodString;
|
|
1651
|
+
accessKeyId: z.ZodOptional<z.ZodString>;
|
|
1652
|
+
secretAccessKey: z.ZodOptional<z.ZodString>;
|
|
1653
|
+
sessionToken: z.ZodOptional<z.ZodString>;
|
|
1654
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
1655
|
+
region: z.ZodString;
|
|
1656
|
+
endpoint: z.ZodString;
|
|
1657
|
+
forcePathStyle: z.ZodOptional<z.ZodBoolean>;
|
|
1658
|
+
keyPrefix: z.ZodOptional<z.ZodString>;
|
|
1659
|
+
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
1660
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1661
|
+
}, z.core.$strip>;
|
|
1662
|
+
type WasabiConfigRedacted = RedactedConfig<ConfigOf<typeof WasabiConfigSchema>, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'>;
|
|
1329
1663
|
declare function resolvedWasabiEndpoint(config: WasabiConfig): string;
|
|
1330
1664
|
declare function redactWasabiConfig(config: WasabiConfig): WasabiConfigRedacted;
|
|
1331
1665
|
|
|
@@ -1346,30 +1680,14 @@ declare class WasabiResource extends S3Resource {
|
|
|
1346
1680
|
loadState(_state: WasabiResourceState): Promise<void>;
|
|
1347
1681
|
}
|
|
1348
1682
|
|
|
1349
|
-
declare const WASABI_PROMPT = "{prefix}\n Remote Wasabi bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1683
|
+
declare const WASABI_PROMPT = "{prefix}\n Remote Wasabi bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1350
1684
|
|
|
1351
|
-
interface BackblazeConfig {
|
|
1352
|
-
bucket: string;
|
|
1353
|
-
accessKeyId: string;
|
|
1354
|
-
secretAccessKey: string;
|
|
1685
|
+
interface BackblazeConfig extends S3AliasConfig {
|
|
1355
1686
|
region: string;
|
|
1356
|
-
endpoint?: string;
|
|
1357
|
-
forcePathStyle?: boolean;
|
|
1358
|
-
keyPrefix?: string;
|
|
1359
|
-
timeoutMs?: number;
|
|
1360
|
-
}
|
|
1361
|
-
interface BackblazeConfigRedacted {
|
|
1362
|
-
bucket: string;
|
|
1363
|
-
accessKeyId: string;
|
|
1364
|
-
secretAccessKey: string;
|
|
1365
|
-
region: string;
|
|
1366
|
-
endpoint: string;
|
|
1367
|
-
forcePathStyle?: boolean;
|
|
1368
|
-
keyPrefix?: string;
|
|
1369
|
-
timeoutMs?: number;
|
|
1370
1687
|
}
|
|
1371
|
-
|
|
1372
|
-
declare
|
|
1688
|
+
type BackblazeConfigRedacted = S3AliasConfigRedacted;
|
|
1689
|
+
declare const resolvedBackblazeEndpoint: (config: BackblazeConfig) => string;
|
|
1690
|
+
declare const redactBackblazeConfig: (config: BackblazeConfig) => S3AliasConfigRedacted;
|
|
1373
1691
|
|
|
1374
1692
|
interface BackblazeResourceState {
|
|
1375
1693
|
type: string;
|
|
@@ -1388,30 +1706,14 @@ declare class BackblazeResource extends S3Resource {
|
|
|
1388
1706
|
loadState(_state: BackblazeResourceState): Promise<void>;
|
|
1389
1707
|
}
|
|
1390
1708
|
|
|
1391
|
-
declare const BACKBLAZE_PROMPT = "{prefix}\n Remote Backblaze B2 bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1709
|
+
declare const BACKBLAZE_PROMPT = "{prefix}\n Remote Backblaze B2 bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1392
1710
|
|
|
1393
|
-
interface DigitalOceanConfig {
|
|
1394
|
-
bucket: string;
|
|
1395
|
-
accessKeyId: string;
|
|
1396
|
-
secretAccessKey: string;
|
|
1711
|
+
interface DigitalOceanConfig extends S3AliasConfig {
|
|
1397
1712
|
region: string;
|
|
1398
|
-
endpoint?: string;
|
|
1399
|
-
forcePathStyle?: boolean;
|
|
1400
|
-
keyPrefix?: string;
|
|
1401
|
-
timeoutMs?: number;
|
|
1402
1713
|
}
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
secretAccessKey: string;
|
|
1407
|
-
region: string;
|
|
1408
|
-
endpoint: string;
|
|
1409
|
-
forcePathStyle?: boolean;
|
|
1410
|
-
keyPrefix?: string;
|
|
1411
|
-
timeoutMs?: number;
|
|
1412
|
-
}
|
|
1413
|
-
declare function resolvedDigitalOceanEndpoint(config: DigitalOceanConfig): string;
|
|
1414
|
-
declare function redactDigitalOceanConfig(config: DigitalOceanConfig): DigitalOceanConfigRedacted;
|
|
1714
|
+
type DigitalOceanConfigRedacted = S3AliasConfigRedacted;
|
|
1715
|
+
declare const resolvedDigitalOceanEndpoint: (config: DigitalOceanConfig) => string;
|
|
1716
|
+
declare const redactDigitalOceanConfig: (config: DigitalOceanConfig) => S3AliasConfigRedacted;
|
|
1415
1717
|
|
|
1416
1718
|
interface DigitalOceanResourceState {
|
|
1417
1719
|
type: string;
|
|
@@ -1430,30 +1732,14 @@ declare class DigitalOceanResource extends S3Resource {
|
|
|
1430
1732
|
loadState(_state: DigitalOceanResourceState): Promise<void>;
|
|
1431
1733
|
}
|
|
1432
1734
|
|
|
1433
|
-
declare const DIGITALOCEAN_PROMPT = "{prefix}\n Remote DigitalOcean Spaces bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1735
|
+
declare const DIGITALOCEAN_PROMPT = "{prefix}\n Remote DigitalOcean Spaces bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1434
1736
|
|
|
1435
|
-
interface TencentConfig {
|
|
1436
|
-
bucket: string;
|
|
1437
|
-
accessKeyId: string;
|
|
1438
|
-
secretAccessKey: string;
|
|
1439
|
-
region: string;
|
|
1440
|
-
endpoint?: string;
|
|
1441
|
-
forcePathStyle?: boolean;
|
|
1442
|
-
keyPrefix?: string;
|
|
1443
|
-
timeoutMs?: number;
|
|
1444
|
-
}
|
|
1445
|
-
interface TencentConfigRedacted {
|
|
1446
|
-
bucket: string;
|
|
1447
|
-
accessKeyId: string;
|
|
1448
|
-
secretAccessKey: string;
|
|
1737
|
+
interface TencentConfig extends S3AliasConfig {
|
|
1449
1738
|
region: string;
|
|
1450
|
-
endpoint: string;
|
|
1451
|
-
forcePathStyle?: boolean;
|
|
1452
|
-
keyPrefix?: string;
|
|
1453
|
-
timeoutMs?: number;
|
|
1454
1739
|
}
|
|
1455
|
-
|
|
1456
|
-
declare
|
|
1740
|
+
type TencentConfigRedacted = S3AliasConfigRedacted;
|
|
1741
|
+
declare const resolvedTencentEndpoint: (config: TencentConfig) => string;
|
|
1742
|
+
declare const redactTencentConfig: (config: TencentConfig) => S3AliasConfigRedacted;
|
|
1457
1743
|
|
|
1458
1744
|
interface TencentResourceState {
|
|
1459
1745
|
type: string;
|
|
@@ -1472,30 +1758,14 @@ declare class TencentResource extends S3Resource {
|
|
|
1472
1758
|
loadState(_state: TencentResourceState): Promise<void>;
|
|
1473
1759
|
}
|
|
1474
1760
|
|
|
1475
|
-
declare const TENCENT_PROMPT = "{prefix}\n Remote Tencent Cloud COS bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1761
|
+
declare const TENCENT_PROMPT = "{prefix}\n Remote Tencent Cloud COS bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1476
1762
|
|
|
1477
|
-
interface AliyunConfig {
|
|
1478
|
-
bucket: string;
|
|
1479
|
-
accessKeyId: string;
|
|
1480
|
-
secretAccessKey: string;
|
|
1763
|
+
interface AliyunConfig extends S3AliasConfig {
|
|
1481
1764
|
region: string;
|
|
1482
|
-
endpoint?: string;
|
|
1483
|
-
forcePathStyle?: boolean;
|
|
1484
|
-
keyPrefix?: string;
|
|
1485
|
-
timeoutMs?: number;
|
|
1486
1765
|
}
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
secretAccessKey: string;
|
|
1491
|
-
region: string;
|
|
1492
|
-
endpoint: string;
|
|
1493
|
-
forcePathStyle?: boolean;
|
|
1494
|
-
keyPrefix?: string;
|
|
1495
|
-
timeoutMs?: number;
|
|
1496
|
-
}
|
|
1497
|
-
declare function resolvedAliyunEndpoint(config: AliyunConfig): string;
|
|
1498
|
-
declare function redactAliyunConfig(config: AliyunConfig): AliyunConfigRedacted;
|
|
1766
|
+
type AliyunConfigRedacted = S3AliasConfigRedacted;
|
|
1767
|
+
declare const resolvedAliyunEndpoint: (config: AliyunConfig) => string;
|
|
1768
|
+
declare const redactAliyunConfig: (config: AliyunConfig) => S3AliasConfigRedacted;
|
|
1499
1769
|
|
|
1500
1770
|
interface AliyunResourceState {
|
|
1501
1771
|
type: string;
|
|
@@ -1514,30 +1784,14 @@ declare class AliyunResource extends S3Resource {
|
|
|
1514
1784
|
loadState(_state: AliyunResourceState): Promise<void>;
|
|
1515
1785
|
}
|
|
1516
1786
|
|
|
1517
|
-
declare const ALIYUN_PROMPT = "{prefix}\n Remote Alibaba Cloud OSS bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1787
|
+
declare const ALIYUN_PROMPT = "{prefix}\n Remote Alibaba Cloud OSS bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1518
1788
|
|
|
1519
|
-
interface ScalewayConfig {
|
|
1520
|
-
bucket: string;
|
|
1521
|
-
accessKeyId: string;
|
|
1522
|
-
secretAccessKey: string;
|
|
1789
|
+
interface ScalewayConfig extends S3AliasConfig {
|
|
1523
1790
|
region: string;
|
|
1524
|
-
endpoint?: string;
|
|
1525
|
-
forcePathStyle?: boolean;
|
|
1526
|
-
keyPrefix?: string;
|
|
1527
|
-
timeoutMs?: number;
|
|
1528
1791
|
}
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
secretAccessKey: string;
|
|
1533
|
-
region: string;
|
|
1534
|
-
endpoint: string;
|
|
1535
|
-
forcePathStyle?: boolean;
|
|
1536
|
-
keyPrefix?: string;
|
|
1537
|
-
timeoutMs?: number;
|
|
1538
|
-
}
|
|
1539
|
-
declare function resolvedScalewayEndpoint(config: ScalewayConfig): string;
|
|
1540
|
-
declare function redactScalewayConfig(config: ScalewayConfig): ScalewayConfigRedacted;
|
|
1792
|
+
type ScalewayConfigRedacted = S3AliasConfigRedacted;
|
|
1793
|
+
declare const resolvedScalewayEndpoint: (config: ScalewayConfig) => string;
|
|
1794
|
+
declare const redactScalewayConfig: (config: ScalewayConfig) => S3AliasConfigRedacted;
|
|
1541
1795
|
|
|
1542
1796
|
interface ScalewayResourceState {
|
|
1543
1797
|
type: string;
|
|
@@ -1556,30 +1810,14 @@ declare class ScalewayResource extends S3Resource {
|
|
|
1556
1810
|
loadState(_state: ScalewayResourceState): Promise<void>;
|
|
1557
1811
|
}
|
|
1558
1812
|
|
|
1559
|
-
declare const SCALEWAY_PROMPT = "{prefix}\n Remote Scaleway Object Storage bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1813
|
+
declare const SCALEWAY_PROMPT = "{prefix}\n Remote Scaleway Object Storage bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1560
1814
|
|
|
1561
|
-
interface QingStorConfig {
|
|
1562
|
-
bucket: string;
|
|
1563
|
-
accessKeyId: string;
|
|
1564
|
-
secretAccessKey: string;
|
|
1815
|
+
interface QingStorConfig extends S3AliasConfig {
|
|
1565
1816
|
region: string;
|
|
1566
|
-
endpoint?: string;
|
|
1567
|
-
forcePathStyle?: boolean;
|
|
1568
|
-
keyPrefix?: string;
|
|
1569
|
-
timeoutMs?: number;
|
|
1570
|
-
}
|
|
1571
|
-
interface QingStorConfigRedacted {
|
|
1572
|
-
bucket: string;
|
|
1573
|
-
accessKeyId: string;
|
|
1574
|
-
secretAccessKey: string;
|
|
1575
|
-
region: string;
|
|
1576
|
-
endpoint: string;
|
|
1577
|
-
forcePathStyle?: boolean;
|
|
1578
|
-
keyPrefix?: string;
|
|
1579
|
-
timeoutMs?: number;
|
|
1580
1817
|
}
|
|
1581
|
-
|
|
1582
|
-
declare
|
|
1818
|
+
type QingStorConfigRedacted = S3AliasConfigRedacted;
|
|
1819
|
+
declare const resolvedQingStorEndpoint: (config: QingStorConfig) => string;
|
|
1820
|
+
declare const redactQingStorConfig: (config: QingStorConfig) => S3AliasConfigRedacted;
|
|
1583
1821
|
|
|
1584
1822
|
interface QingStorResourceState {
|
|
1585
1823
|
type: string;
|
|
@@ -1598,7 +1836,7 @@ declare class QingStorResource extends S3Resource {
|
|
|
1598
1836
|
loadState(_state: QingStorResourceState): Promise<void>;
|
|
1599
1837
|
}
|
|
1600
1838
|
|
|
1601
|
-
declare const QINGSTOR_PROMPT = "{prefix}\n Remote QingStor bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat
|
|
1839
|
+
declare const QINGSTOR_PROMPT = "{prefix}\n Remote QingStor bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.";
|
|
1602
1840
|
|
|
1603
1841
|
interface PgPoolLike {
|
|
1604
1842
|
query: (sql: string, params?: readonly unknown[]) => Promise<{
|
|
@@ -1741,6 +1979,7 @@ declare class LanceDBStore implements LanceDriver {
|
|
|
1741
1979
|
private table;
|
|
1742
1980
|
listTables(): Promise<string[]>;
|
|
1743
1981
|
distinct(table: string, column: string, filters: Record<string, string>, limit: number): Promise<string[]>;
|
|
1982
|
+
tableColumns(table: string): Promise<string[]>;
|
|
1744
1983
|
rowsMatching(table: string, filters: Record<string, string>, columns: string[], limit: number): Promise<LanceRow[]>;
|
|
1745
1984
|
rowRecord(table: string, idColumn: string, rowId: string): Promise<LanceRow | null>;
|
|
1746
1985
|
search(table: string, query: string, limit: number): Promise<LanceRow[]>;
|
|
@@ -1753,6 +1992,7 @@ interface LanceDBResourceOptions {
|
|
|
1753
1992
|
declare class LanceDBResource extends BaseResource implements Resource {
|
|
1754
1993
|
readonly kind: string;
|
|
1755
1994
|
readonly cachesReads: boolean;
|
|
1995
|
+
readonly sizesAlwaysKnown: boolean;
|
|
1756
1996
|
readonly indexTtl: number;
|
|
1757
1997
|
readonly prompt: string;
|
|
1758
1998
|
readonly config: LanceDBConfigResolved;
|
|
@@ -1768,19 +2008,6 @@ declare class LanceDBResource extends BaseResource implements Resource {
|
|
|
1768
2008
|
stat(p: PathSpec): Promise<FileStat>;
|
|
1769
2009
|
}
|
|
1770
2010
|
|
|
1771
|
-
interface SlackConfig {
|
|
1772
|
-
token: string;
|
|
1773
|
-
searchToken?: string;
|
|
1774
|
-
baseUrl?: string;
|
|
1775
|
-
}
|
|
1776
|
-
interface SlackConfigRedacted {
|
|
1777
|
-
token: '<REDACTED>';
|
|
1778
|
-
searchToken?: '<REDACTED>';
|
|
1779
|
-
baseUrl?: string;
|
|
1780
|
-
}
|
|
1781
|
-
declare function redactSlackConfig(config: SlackConfig): SlackConfigRedacted;
|
|
1782
|
-
declare function normalizeSlackConfig(input: Record<string, unknown>): SlackConfig;
|
|
1783
|
-
|
|
1784
2011
|
interface SlackResourceState {
|
|
1785
2012
|
type: string;
|
|
1786
2013
|
config: SlackConfigRedacted;
|
|
@@ -1788,6 +2015,7 @@ interface SlackResourceState {
|
|
|
1788
2015
|
declare class SlackResource extends BaseResource implements Resource {
|
|
1789
2016
|
readonly kind: string;
|
|
1790
2017
|
readonly cachesReads: boolean;
|
|
2018
|
+
readonly sizesAlwaysKnown: boolean;
|
|
1791
2019
|
readonly indexTtl: number;
|
|
1792
2020
|
readonly prompt: string;
|
|
1793
2021
|
readonly writePrompt: string;
|
|
@@ -1795,7 +2023,6 @@ declare class SlackResource extends BaseResource implements Resource {
|
|
|
1795
2023
|
readonly accessor: SlackAccessor;
|
|
1796
2024
|
constructor(config: SlackConfig);
|
|
1797
2025
|
open(): Promise<void>;
|
|
1798
|
-
close(): Promise<void>;
|
|
1799
2026
|
commands(): readonly RegisteredCommand[];
|
|
1800
2027
|
ops(): readonly RegisteredOp[];
|
|
1801
2028
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -1806,30 +2033,20 @@ declare class SlackResource extends BaseResource implements Resource {
|
|
|
1806
2033
|
loadState(_state: SlackResourceState): Promise<void>;
|
|
1807
2034
|
}
|
|
1808
2035
|
|
|
1809
|
-
|
|
1810
|
-
host:
|
|
1811
|
-
hostname
|
|
1812
|
-
port
|
|
1813
|
-
username
|
|
1814
|
-
password
|
|
1815
|
-
identityFile
|
|
1816
|
-
passphrase
|
|
1817
|
-
root
|
|
1818
|
-
timeout
|
|
1819
|
-
knownHosts
|
|
1820
|
-
}
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
hostname?: string;
|
|
1824
|
-
port?: number;
|
|
1825
|
-
username?: string;
|
|
1826
|
-
password?: '<REDACTED>';
|
|
1827
|
-
identityFile?: string;
|
|
1828
|
-
passphrase?: '<REDACTED>';
|
|
1829
|
-
root?: string;
|
|
1830
|
-
timeout?: number;
|
|
1831
|
-
knownHosts?: string;
|
|
1832
|
-
}
|
|
2036
|
+
declare const SSHConfigSchema: z.ZodObject<{
|
|
2037
|
+
host: z.ZodString;
|
|
2038
|
+
hostname: z.ZodOptional<z.ZodString>;
|
|
2039
|
+
port: z.ZodOptional<z.ZodNumber>;
|
|
2040
|
+
username: z.ZodOptional<z.ZodString>;
|
|
2041
|
+
password: z.ZodOptional<z.ZodString>;
|
|
2042
|
+
identityFile: z.ZodOptional<z.ZodString>;
|
|
2043
|
+
passphrase: z.ZodOptional<z.ZodString>;
|
|
2044
|
+
root: z.ZodOptional<z.ZodString>;
|
|
2045
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
2046
|
+
knownHosts: z.ZodOptional<z.ZodString>;
|
|
2047
|
+
}, z.core.$strip>;
|
|
2048
|
+
type SSHConfig = ConfigOf<typeof SSHConfigSchema>;
|
|
2049
|
+
type SSHConfigRedacted = RedactedConfig<SSHConfig, 'password' | 'passphrase'>;
|
|
1833
2050
|
declare function redactSshConfig(config: SSHConfig): SSHConfigRedacted;
|
|
1834
2051
|
declare function normalizeSshConfig(input: Record<string, unknown>): SSHConfig;
|
|
1835
2052
|
|
|
@@ -1851,6 +2068,7 @@ interface SSHResourceState {
|
|
|
1851
2068
|
declare class SSHResource extends BaseResource implements Resource {
|
|
1852
2069
|
readonly kind: "ssh";
|
|
1853
2070
|
readonly cachesReads: boolean;
|
|
2071
|
+
readonly sizesAlwaysKnown: boolean;
|
|
1854
2072
|
readonly indexTtl: number;
|
|
1855
2073
|
readonly prompt = "{prefix}\n Remote filesystem via SSH/SFTP.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, stat, mkdir, touch, cp, mv, rm, tee.";
|
|
1856
2074
|
readonly config: SSHConfig;
|
|
@@ -1897,9 +2115,7 @@ interface NextcloudConfig {
|
|
|
1897
2115
|
verifySsl?: boolean;
|
|
1898
2116
|
timeout?: number;
|
|
1899
2117
|
}
|
|
1900
|
-
|
|
1901
|
-
password?: '<REDACTED>';
|
|
1902
|
-
}
|
|
2118
|
+
type NextcloudConfigRedacted = RedactedConfig<NextcloudConfig, 'password'>;
|
|
1903
2119
|
declare function normalizeNextcloudConfig(config: Record<string, unknown>): NextcloudConfig;
|
|
1904
2120
|
declare function redactNextcloudConfig(config: NextcloudConfig): NextcloudConfigRedacted;
|
|
1905
2121
|
|
|
@@ -1920,13 +2136,13 @@ declare class NextcloudResource extends BaseResource implements Resource {
|
|
|
1920
2136
|
readonly config: NextcloudConfig;
|
|
1921
2137
|
readonly kind: "nextcloud";
|
|
1922
2138
|
readonly cachesReads = true;
|
|
2139
|
+
readonly sizesAlwaysKnown: boolean;
|
|
1923
2140
|
readonly supportsSnapshot = true;
|
|
1924
2141
|
readonly prompt = "You have access to files stored in Nextcloud.";
|
|
1925
2142
|
readonly accessor: NextcloudAccessor;
|
|
1926
2143
|
readonly opsMap: Record<string, unknown>;
|
|
1927
2144
|
constructor(config: NextcloudConfig);
|
|
1928
2145
|
open(): Promise<void>;
|
|
1929
|
-
close(): Promise<void>;
|
|
1930
2146
|
commands(): readonly RegisteredCommand[];
|
|
1931
2147
|
ops(): readonly RegisteredOp[];
|
|
1932
2148
|
streamPath(path: PathSpec): AsyncIterable<Uint8Array>;
|
|
@@ -1946,6 +2162,7 @@ declare class NextcloudResource extends BaseResource implements Resource {
|
|
|
1946
2162
|
du(path: PathSpec): Promise<number>;
|
|
1947
2163
|
find(path: PathSpec, options?: FindOptions): Promise<string[]>;
|
|
1948
2164
|
glob(paths: readonly PathSpec[], prefix?: string): Promise<PathSpec[]>;
|
|
2165
|
+
deltaHook(): DeltaHook;
|
|
1949
2166
|
getState(): Promise<NextcloudResourceState>;
|
|
1950
2167
|
loadState(_state: NextcloudResourceState): Promise<void>;
|
|
1951
2168
|
}
|
|
@@ -1956,14 +2173,12 @@ declare const NEXTCLOUD_COMMANDS: readonly RegisteredCommand[];
|
|
|
1956
2173
|
|
|
1957
2174
|
declare const NEXTCLOUD_OPS: readonly RegisteredOp[];
|
|
1958
2175
|
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
token: '<REDACTED>';
|
|
2176
|
+
declare class NextcloudWalk {
|
|
2177
|
+
private readonly accessor;
|
|
2178
|
+
constructor(accessor: NextcloudAccessor);
|
|
2179
|
+
walk(root: PathSpec): AsyncGenerator<WalkEntry>;
|
|
1964
2180
|
}
|
|
1965
|
-
declare function
|
|
1966
|
-
declare function normalizeDiscordConfig(input: Record<string, unknown>): DiscordConfig;
|
|
2181
|
+
declare function buildDeltaHook(accessor: NextcloudAccessor): DeltaHook;
|
|
1967
2182
|
|
|
1968
2183
|
interface DiscordResourceState {
|
|
1969
2184
|
type: string;
|
|
@@ -1972,6 +2187,7 @@ interface DiscordResourceState {
|
|
|
1972
2187
|
declare class DiscordResource extends BaseResource implements Resource {
|
|
1973
2188
|
readonly kind: string;
|
|
1974
2189
|
readonly cachesReads: boolean;
|
|
2190
|
+
readonly sizesAlwaysKnown: boolean;
|
|
1975
2191
|
readonly indexTtl: number;
|
|
1976
2192
|
readonly prompt: string;
|
|
1977
2193
|
readonly writePrompt: string;
|
|
@@ -1979,7 +2195,6 @@ declare class DiscordResource extends BaseResource implements Resource {
|
|
|
1979
2195
|
readonly accessor: DiscordAccessor;
|
|
1980
2196
|
constructor(config: DiscordConfig);
|
|
1981
2197
|
open(): Promise<void>;
|
|
1982
|
-
close(): Promise<void>;
|
|
1983
2198
|
commands(): readonly RegisteredCommand[];
|
|
1984
2199
|
ops(): readonly RegisteredOp[];
|
|
1985
2200
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -1990,20 +2205,15 @@ declare class DiscordResource extends BaseResource implements Resource {
|
|
|
1990
2205
|
loadState(_state: DiscordResourceState): Promise<void>;
|
|
1991
2206
|
}
|
|
1992
2207
|
|
|
1993
|
-
|
|
1994
|
-
apiKey:
|
|
1995
|
-
apiToken:
|
|
1996
|
-
workspaceId
|
|
1997
|
-
boardIds
|
|
1998
|
-
baseUrl
|
|
1999
|
-
}
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
apiToken: '<REDACTED>';
|
|
2003
|
-
workspaceId?: string;
|
|
2004
|
-
boardIds?: readonly string[];
|
|
2005
|
-
baseUrl?: string;
|
|
2006
|
-
}
|
|
2208
|
+
declare const TrelloConfigSchema: z.ZodObject<{
|
|
2209
|
+
apiKey: z.ZodString;
|
|
2210
|
+
apiToken: z.ZodString;
|
|
2211
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
2212
|
+
boardIds: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
2213
|
+
baseUrl: z.ZodOptional<z.ZodString>;
|
|
2214
|
+
}, z.core.$strip>;
|
|
2215
|
+
type TrelloConfig = ConfigOf<typeof TrelloConfigSchema>;
|
|
2216
|
+
type TrelloConfigRedacted = RedactedConfig<TrelloConfig, 'apiKey' | 'apiToken'>;
|
|
2007
2217
|
declare function redactTrelloConfig(config: TrelloConfig): TrelloConfigRedacted;
|
|
2008
2218
|
declare function normalizeTrelloConfig(input: Record<string, unknown>): TrelloConfig;
|
|
2009
2219
|
|
|
@@ -2021,7 +2231,6 @@ declare class TrelloResource extends BaseResource implements Resource {
|
|
|
2021
2231
|
readonly accessor: TrelloAccessor;
|
|
2022
2232
|
constructor(config: TrelloConfig);
|
|
2023
2233
|
open(): Promise<void>;
|
|
2024
|
-
close(): Promise<void>;
|
|
2025
2234
|
commands(): readonly RegisteredCommand[];
|
|
2026
2235
|
ops(): readonly RegisteredOp[];
|
|
2027
2236
|
private filter;
|
|
@@ -2033,21 +2242,6 @@ declare class TrelloResource extends BaseResource implements Resource {
|
|
|
2033
2242
|
loadState(_state: TrelloResourceState): Promise<void>;
|
|
2034
2243
|
}
|
|
2035
2244
|
|
|
2036
|
-
interface LinearConfig {
|
|
2037
|
-
apiKey: string;
|
|
2038
|
-
workspace?: string;
|
|
2039
|
-
teamIds?: readonly string[];
|
|
2040
|
-
baseUrl?: string;
|
|
2041
|
-
}
|
|
2042
|
-
interface LinearConfigRedacted {
|
|
2043
|
-
apiKey: '<REDACTED>';
|
|
2044
|
-
workspace?: string;
|
|
2045
|
-
teamIds?: readonly string[];
|
|
2046
|
-
baseUrl?: string;
|
|
2047
|
-
}
|
|
2048
|
-
declare function redactLinearConfig(config: LinearConfig): LinearConfigRedacted;
|
|
2049
|
-
declare function normalizeLinearConfig(input: Record<string, unknown>): LinearConfig;
|
|
2050
|
-
|
|
2051
2245
|
interface LinearResourceState {
|
|
2052
2246
|
type: string;
|
|
2053
2247
|
config: LinearConfigRedacted;
|
|
@@ -2055,6 +2249,7 @@ interface LinearResourceState {
|
|
|
2055
2249
|
declare class LinearResource extends BaseResource implements Resource {
|
|
2056
2250
|
readonly kind: string;
|
|
2057
2251
|
readonly cachesReads: boolean;
|
|
2252
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2058
2253
|
readonly indexTtl: number;
|
|
2059
2254
|
readonly prompt: string;
|
|
2060
2255
|
readonly writePrompt: string;
|
|
@@ -2062,7 +2257,6 @@ declare class LinearResource extends BaseResource implements Resource {
|
|
|
2062
2257
|
readonly accessor: LinearAccessor;
|
|
2063
2258
|
constructor(config: LinearConfig);
|
|
2064
2259
|
open(): Promise<void>;
|
|
2065
|
-
close(): Promise<void>;
|
|
2066
2260
|
commands(): readonly RegisteredCommand[];
|
|
2067
2261
|
ops(): readonly RegisteredOp[];
|
|
2068
2262
|
private filter;
|
|
@@ -2074,17 +2268,6 @@ declare class LinearResource extends BaseResource implements Resource {
|
|
|
2074
2268
|
loadState(_state: LinearResourceState): Promise<void>;
|
|
2075
2269
|
}
|
|
2076
2270
|
|
|
2077
|
-
interface NotionConfig {
|
|
2078
|
-
apiKey: string;
|
|
2079
|
-
baseUrl?: string;
|
|
2080
|
-
}
|
|
2081
|
-
interface NotionConfigRedacted {
|
|
2082
|
-
apiKey: '<REDACTED>';
|
|
2083
|
-
baseUrl?: string;
|
|
2084
|
-
}
|
|
2085
|
-
declare function redactNotionConfig(config: NotionConfig): NotionConfigRedacted;
|
|
2086
|
-
declare function normalizeNotionConfig(input: Record<string, unknown>): NotionConfig;
|
|
2087
|
-
|
|
2088
2271
|
interface NotionResourceState {
|
|
2089
2272
|
type: string;
|
|
2090
2273
|
config: NotionConfigRedacted;
|
|
@@ -2099,7 +2282,6 @@ declare class NotionResource extends BaseResource implements Resource {
|
|
|
2099
2282
|
readonly accessor: NotionAccessor;
|
|
2100
2283
|
constructor(config: NotionConfig);
|
|
2101
2284
|
open(): Promise<void>;
|
|
2102
|
-
close(): Promise<void>;
|
|
2103
2285
|
commands(): readonly RegisteredCommand[];
|
|
2104
2286
|
ops(): readonly RegisteredOp[];
|
|
2105
2287
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2110,22 +2292,16 @@ declare class NotionResource extends BaseResource implements Resource {
|
|
|
2110
2292
|
loadState(_state: NotionResourceState): Promise<void>;
|
|
2111
2293
|
}
|
|
2112
2294
|
|
|
2113
|
-
|
|
2114
|
-
publicKey:
|
|
2115
|
-
secretKey:
|
|
2116
|
-
host
|
|
2117
|
-
defaultTraceLimit
|
|
2118
|
-
defaultSearchLimit
|
|
2119
|
-
defaultFromTimestamp
|
|
2120
|
-
}
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
secretKey: '<REDACTED>';
|
|
2124
|
-
host?: string;
|
|
2125
|
-
defaultTraceLimit?: number;
|
|
2126
|
-
defaultSearchLimit?: number;
|
|
2127
|
-
defaultFromTimestamp?: string;
|
|
2128
|
-
}
|
|
2295
|
+
declare const LangfuseConfigSchema: z.ZodObject<{
|
|
2296
|
+
publicKey: z.ZodString;
|
|
2297
|
+
secretKey: z.ZodString;
|
|
2298
|
+
host: z.ZodOptional<z.ZodString>;
|
|
2299
|
+
defaultTraceLimit: z.ZodOptional<z.ZodNumber>;
|
|
2300
|
+
defaultSearchLimit: z.ZodOptional<z.ZodNumber>;
|
|
2301
|
+
defaultFromTimestamp: z.ZodOptional<z.ZodString>;
|
|
2302
|
+
}, z.core.$strip>;
|
|
2303
|
+
type LangfuseConfig = ConfigOf<typeof LangfuseConfigSchema>;
|
|
2304
|
+
type LangfuseConfigRedacted = RedactedConfig<LangfuseConfig, 'secretKey'>;
|
|
2129
2305
|
declare function redactLangfuseConfig(config: LangfuseConfig): LangfuseConfigRedacted;
|
|
2130
2306
|
declare function normalizeLangfuseConfig(input: Record<string, unknown>): LangfuseConfig;
|
|
2131
2307
|
|
|
@@ -2142,7 +2318,6 @@ declare class LangfuseResource extends BaseResource implements Resource {
|
|
|
2142
2318
|
readonly accessor: LangfuseAccessor;
|
|
2143
2319
|
constructor(config: LangfuseConfig);
|
|
2144
2320
|
open(): Promise<void>;
|
|
2145
|
-
close(): Promise<void>;
|
|
2146
2321
|
commands(): readonly RegisteredCommand[];
|
|
2147
2322
|
ops(): readonly RegisteredOp[];
|
|
2148
2323
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2153,20 +2328,49 @@ declare class LangfuseResource extends BaseResource implements Resource {
|
|
|
2153
2328
|
loadState(_state: LangfuseResourceState): Promise<void>;
|
|
2154
2329
|
}
|
|
2155
2330
|
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
}
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2331
|
+
declare const JaegerConfigSchema: z.ZodObject<{
|
|
2332
|
+
host: z.ZodOptional<z.ZodString>;
|
|
2333
|
+
defaultTraceLimit: z.ZodOptional<z.ZodNumber>;
|
|
2334
|
+
defaultFromTimestamp: z.ZodOptional<z.ZodString>;
|
|
2335
|
+
defaultToTimestamp: z.ZodOptional<z.ZodString>;
|
|
2336
|
+
requestTimeout: z.ZodOptional<z.ZodNumber>;
|
|
2337
|
+
}, z.core.$strip>;
|
|
2338
|
+
type JaegerConfig = ConfigOf<typeof JaegerConfigSchema>;
|
|
2339
|
+
type JaegerConfigRedacted = JaegerConfig;
|
|
2340
|
+
|
|
2341
|
+
interface JaegerResourceState {
|
|
2342
|
+
type: string;
|
|
2343
|
+
config: JaegerConfigRedacted;
|
|
2169
2344
|
}
|
|
2345
|
+
declare class JaegerResource extends BaseResource implements Resource {
|
|
2346
|
+
readonly kind: string;
|
|
2347
|
+
readonly cachesReads: boolean;
|
|
2348
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2349
|
+
readonly indexTtl: number;
|
|
2350
|
+
readonly prompt: string;
|
|
2351
|
+
readonly config: JaegerConfig;
|
|
2352
|
+
readonly accessor: JaegerAccessor;
|
|
2353
|
+
constructor(config: JaegerConfig);
|
|
2354
|
+
open(): Promise<void>;
|
|
2355
|
+
commands(): readonly RegisteredCommand[];
|
|
2356
|
+
ops(): readonly RegisteredOp[];
|
|
2357
|
+
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
2358
|
+
readdir(p: PathSpec): Promise<string[]>;
|
|
2359
|
+
stat(p: PathSpec): Promise<FileStat>;
|
|
2360
|
+
glob(paths: readonly PathSpec[], prefix?: string): Promise<PathSpec[]>;
|
|
2361
|
+
getState(): Promise<JaegerResourceState>;
|
|
2362
|
+
loadState(_state: JaegerResourceState): Promise<void>;
|
|
2363
|
+
}
|
|
2364
|
+
|
|
2365
|
+
declare const GitHubConfigSchema: z.ZodObject<{
|
|
2366
|
+
token: z.ZodString;
|
|
2367
|
+
owner: z.ZodString;
|
|
2368
|
+
repo: z.ZodString;
|
|
2369
|
+
ref: z.ZodOptional<z.ZodString>;
|
|
2370
|
+
baseUrl: z.ZodOptional<z.ZodString>;
|
|
2371
|
+
}, z.core.$strip>;
|
|
2372
|
+
type GitHubConfig = ConfigOf<typeof GitHubConfigSchema>;
|
|
2373
|
+
type GitHubConfigRedacted = RedactedConfig<GitHubConfig, 'token'>;
|
|
2170
2374
|
declare function redactGitHubConfig(config: GitHubConfig): GitHubConfigRedacted;
|
|
2171
2375
|
declare function normalizeGitHubConfig(input: Record<string, unknown>): GitHubConfig;
|
|
2172
2376
|
|
|
@@ -2179,6 +2383,7 @@ interface GitHubResourceState {
|
|
|
2179
2383
|
declare class GitHubResource extends BaseResource implements Resource {
|
|
2180
2384
|
readonly kind: string;
|
|
2181
2385
|
readonly cachesReads: boolean;
|
|
2386
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2182
2387
|
readonly supportsSnapshot: boolean;
|
|
2183
2388
|
readonly indexTtl: number;
|
|
2184
2389
|
readonly config: GitHubConfig;
|
|
@@ -2186,7 +2391,6 @@ declare class GitHubResource extends BaseResource implements Resource {
|
|
|
2186
2391
|
private constructor();
|
|
2187
2392
|
static create(config: GitHubConfig): Promise<GitHubResource>;
|
|
2188
2393
|
open(): Promise<void>;
|
|
2189
|
-
close(): Promise<void>;
|
|
2190
2394
|
commands(): readonly RegisteredCommand[];
|
|
2191
2395
|
ops(): readonly RegisteredOp[];
|
|
2192
2396
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2197,22 +2401,16 @@ declare class GitHubResource extends BaseResource implements Resource {
|
|
|
2197
2401
|
loadState(_state: GitHubResourceState): Promise<void>;
|
|
2198
2402
|
}
|
|
2199
2403
|
|
|
2200
|
-
|
|
2201
|
-
token:
|
|
2202
|
-
owner:
|
|
2203
|
-
repo:
|
|
2204
|
-
days
|
|
2205
|
-
maxRuns
|
|
2206
|
-
baseUrl
|
|
2207
|
-
}
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
owner: string;
|
|
2211
|
-
repo: string;
|
|
2212
|
-
days?: number;
|
|
2213
|
-
maxRuns?: number;
|
|
2214
|
-
baseUrl?: string;
|
|
2215
|
-
}
|
|
2404
|
+
declare const GitHubCIConfigSchema: z.ZodObject<{
|
|
2405
|
+
token: z.ZodString;
|
|
2406
|
+
owner: z.ZodString;
|
|
2407
|
+
repo: z.ZodString;
|
|
2408
|
+
days: z.ZodOptional<z.ZodNumber>;
|
|
2409
|
+
maxRuns: z.ZodOptional<z.ZodNumber>;
|
|
2410
|
+
baseUrl: z.ZodOptional<z.ZodString>;
|
|
2411
|
+
}, z.core.$strip>;
|
|
2412
|
+
type GitHubCIConfig = ConfigOf<typeof GitHubCIConfigSchema>;
|
|
2413
|
+
type GitHubCIConfigRedacted = RedactedConfig<GitHubCIConfig, 'token'>;
|
|
2216
2414
|
declare function redactGitHubCIConfig(config: GitHubCIConfig): GitHubCIConfigRedacted;
|
|
2217
2415
|
declare function normalizeGitHubCIConfig(input: Record<string, unknown>): GitHubCIConfig;
|
|
2218
2416
|
|
|
@@ -2229,7 +2427,6 @@ declare class GitHubCIResource extends BaseResource implements Resource {
|
|
|
2229
2427
|
readonly accessor: GitHubCIAccessor;
|
|
2230
2428
|
constructor(config: GitHubCIConfig);
|
|
2231
2429
|
open(): Promise<void>;
|
|
2232
|
-
close(): Promise<void>;
|
|
2233
2430
|
commands(): readonly RegisteredCommand[];
|
|
2234
2431
|
ops(): readonly RegisteredOp[];
|
|
2235
2432
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2240,26 +2437,9 @@ declare class GitHubCIResource extends BaseResource implements Resource {
|
|
|
2240
2437
|
loadState(_state: GitHubCIResourceState): Promise<void>;
|
|
2241
2438
|
}
|
|
2242
2439
|
|
|
2243
|
-
interface GDocsConfig {
|
|
2244
|
-
clientId: string;
|
|
2245
|
-
clientSecret: string;
|
|
2246
|
-
refreshToken: string;
|
|
2247
|
-
refreshFn?: (refreshToken: string) => Promise<{
|
|
2248
|
-
accessToken: string;
|
|
2249
|
-
expiresIn: number;
|
|
2250
|
-
}>;
|
|
2251
|
-
}
|
|
2252
|
-
interface GDocsConfigRedacted {
|
|
2253
|
-
clientId: string;
|
|
2254
|
-
clientSecret: '<REDACTED>';
|
|
2255
|
-
refreshToken: '<REDACTED>';
|
|
2256
|
-
}
|
|
2257
|
-
declare function redactGDocsConfig(config: GDocsConfig): GDocsConfigRedacted;
|
|
2258
|
-
declare function normalizeGDocsConfig(input: Record<string, unknown>): GDocsConfig;
|
|
2259
|
-
|
|
2260
2440
|
interface GDocsResourceState {
|
|
2261
2441
|
type: string;
|
|
2262
|
-
config:
|
|
2442
|
+
config: GoogleConfigRedacted;
|
|
2263
2443
|
}
|
|
2264
2444
|
declare class GDocsResource extends BaseResource implements Resource {
|
|
2265
2445
|
readonly kind: string;
|
|
@@ -2267,11 +2447,10 @@ declare class GDocsResource extends BaseResource implements Resource {
|
|
|
2267
2447
|
readonly indexTtl: number;
|
|
2268
2448
|
readonly prompt: string;
|
|
2269
2449
|
readonly writePrompt: string;
|
|
2270
|
-
readonly config:
|
|
2450
|
+
readonly config: GoogleConfig;
|
|
2271
2451
|
readonly accessor: GDocsAccessor;
|
|
2272
|
-
constructor(config:
|
|
2452
|
+
constructor(config: GoogleConfig);
|
|
2273
2453
|
open(): Promise<void>;
|
|
2274
|
-
close(): Promise<void>;
|
|
2275
2454
|
commands(): readonly RegisteredCommand[];
|
|
2276
2455
|
ops(): readonly RegisteredOp[];
|
|
2277
2456
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2282,26 +2461,9 @@ declare class GDocsResource extends BaseResource implements Resource {
|
|
|
2282
2461
|
loadState(_state: GDocsResourceState): Promise<void>;
|
|
2283
2462
|
}
|
|
2284
2463
|
|
|
2285
|
-
interface GSheetsConfig {
|
|
2286
|
-
clientId: string;
|
|
2287
|
-
clientSecret: string;
|
|
2288
|
-
refreshToken: string;
|
|
2289
|
-
refreshFn?: (refreshToken: string) => Promise<{
|
|
2290
|
-
accessToken: string;
|
|
2291
|
-
expiresIn: number;
|
|
2292
|
-
}>;
|
|
2293
|
-
}
|
|
2294
|
-
interface GSheetsConfigRedacted {
|
|
2295
|
-
clientId: string;
|
|
2296
|
-
clientSecret: '<REDACTED>';
|
|
2297
|
-
refreshToken: '<REDACTED>';
|
|
2298
|
-
}
|
|
2299
|
-
declare function redactGSheetsConfig(config: GSheetsConfig): GSheetsConfigRedacted;
|
|
2300
|
-
declare function normalizeGSheetsConfig(input: Record<string, unknown>): GSheetsConfig;
|
|
2301
|
-
|
|
2302
2464
|
interface GSheetsResourceState {
|
|
2303
2465
|
type: string;
|
|
2304
|
-
config:
|
|
2466
|
+
config: GoogleConfigRedacted;
|
|
2305
2467
|
}
|
|
2306
2468
|
declare class GSheetsResource extends BaseResource implements Resource {
|
|
2307
2469
|
readonly kind: string;
|
|
@@ -2309,11 +2471,10 @@ declare class GSheetsResource extends BaseResource implements Resource {
|
|
|
2309
2471
|
readonly indexTtl: number;
|
|
2310
2472
|
readonly prompt: string;
|
|
2311
2473
|
readonly writePrompt: string;
|
|
2312
|
-
readonly config:
|
|
2474
|
+
readonly config: GoogleConfig;
|
|
2313
2475
|
readonly accessor: GSheetsAccessor;
|
|
2314
|
-
constructor(config:
|
|
2476
|
+
constructor(config: GoogleConfig);
|
|
2315
2477
|
open(): Promise<void>;
|
|
2316
|
-
close(): Promise<void>;
|
|
2317
2478
|
commands(): readonly RegisteredCommand[];
|
|
2318
2479
|
ops(): readonly RegisteredOp[];
|
|
2319
2480
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2324,26 +2485,9 @@ declare class GSheetsResource extends BaseResource implements Resource {
|
|
|
2324
2485
|
loadState(_state: GSheetsResourceState): Promise<void>;
|
|
2325
2486
|
}
|
|
2326
2487
|
|
|
2327
|
-
interface GSlidesConfig {
|
|
2328
|
-
clientId: string;
|
|
2329
|
-
clientSecret: string;
|
|
2330
|
-
refreshToken: string;
|
|
2331
|
-
refreshFn?: (refreshToken: string) => Promise<{
|
|
2332
|
-
accessToken: string;
|
|
2333
|
-
expiresIn: number;
|
|
2334
|
-
}>;
|
|
2335
|
-
}
|
|
2336
|
-
interface GSlidesConfigRedacted {
|
|
2337
|
-
clientId: string;
|
|
2338
|
-
clientSecret: '<REDACTED>';
|
|
2339
|
-
refreshToken: '<REDACTED>';
|
|
2340
|
-
}
|
|
2341
|
-
declare function redactGSlidesConfig(config: GSlidesConfig): GSlidesConfigRedacted;
|
|
2342
|
-
declare function normalizeGSlidesConfig(input: Record<string, unknown>): GSlidesConfig;
|
|
2343
|
-
|
|
2344
2488
|
interface GSlidesResourceState {
|
|
2345
2489
|
type: string;
|
|
2346
|
-
config:
|
|
2490
|
+
config: GoogleConfigRedacted;
|
|
2347
2491
|
}
|
|
2348
2492
|
declare class GSlidesResource extends BaseResource implements Resource {
|
|
2349
2493
|
readonly kind: string;
|
|
@@ -2351,11 +2495,10 @@ declare class GSlidesResource extends BaseResource implements Resource {
|
|
|
2351
2495
|
readonly indexTtl: number;
|
|
2352
2496
|
readonly prompt: string;
|
|
2353
2497
|
readonly writePrompt: string;
|
|
2354
|
-
readonly config:
|
|
2498
|
+
readonly config: GoogleConfig;
|
|
2355
2499
|
readonly accessor: GSlidesAccessor;
|
|
2356
|
-
constructor(config:
|
|
2500
|
+
constructor(config: GoogleConfig);
|
|
2357
2501
|
open(): Promise<void>;
|
|
2358
|
-
close(): Promise<void>;
|
|
2359
2502
|
commands(): readonly RegisteredCommand[];
|
|
2360
2503
|
ops(): readonly RegisteredOp[];
|
|
2361
2504
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2366,27 +2509,9 @@ declare class GSlidesResource extends BaseResource implements Resource {
|
|
|
2366
2509
|
loadState(_state: GSlidesResourceState): Promise<void>;
|
|
2367
2510
|
}
|
|
2368
2511
|
|
|
2369
|
-
interface GDriveConfig {
|
|
2370
|
-
clientId: string;
|
|
2371
|
-
clientSecret: string;
|
|
2372
|
-
refreshToken: string;
|
|
2373
|
-
refreshFn?: (refreshToken: string) => Promise<{
|
|
2374
|
-
accessToken: string;
|
|
2375
|
-
expiresIn: number;
|
|
2376
|
-
}>;
|
|
2377
|
-
folderId?: string;
|
|
2378
|
-
}
|
|
2379
|
-
interface GDriveConfigRedacted {
|
|
2380
|
-
clientId: string;
|
|
2381
|
-
clientSecret: '<REDACTED>';
|
|
2382
|
-
refreshToken: '<REDACTED>';
|
|
2383
|
-
}
|
|
2384
|
-
declare function redactGDriveConfig(config: GDriveConfig): GDriveConfigRedacted;
|
|
2385
|
-
declare function normalizeGDriveConfig(input: Record<string, unknown>): GDriveConfig;
|
|
2386
|
-
|
|
2387
2512
|
interface GDriveResourceState {
|
|
2388
2513
|
type: string;
|
|
2389
|
-
config:
|
|
2514
|
+
config: GoogleConfigRedacted;
|
|
2390
2515
|
}
|
|
2391
2516
|
declare class GDriveResource extends BaseResource implements Resource {
|
|
2392
2517
|
readonly kind: string;
|
|
@@ -2394,11 +2519,10 @@ declare class GDriveResource extends BaseResource implements Resource {
|
|
|
2394
2519
|
readonly supportsSnapshot: boolean;
|
|
2395
2520
|
readonly indexTtl: number;
|
|
2396
2521
|
readonly prompt: string;
|
|
2397
|
-
readonly config:
|
|
2522
|
+
readonly config: GoogleConfig;
|
|
2398
2523
|
readonly accessor: GDriveAccessor;
|
|
2399
|
-
constructor(config:
|
|
2524
|
+
constructor(config: GoogleConfig);
|
|
2400
2525
|
open(): Promise<void>;
|
|
2401
|
-
close(): Promise<void>;
|
|
2402
2526
|
commands(): readonly RegisteredCommand[];
|
|
2403
2527
|
ops(): readonly RegisteredOp[];
|
|
2404
2528
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2421,14 +2545,15 @@ interface DropboxConfig {
|
|
|
2421
2545
|
expiresIn: number;
|
|
2422
2546
|
}>;
|
|
2423
2547
|
}
|
|
2424
|
-
|
|
2425
|
-
clientId:
|
|
2426
|
-
clientSecret:
|
|
2427
|
-
refreshToken:
|
|
2428
|
-
rootPath
|
|
2429
|
-
contentSearch
|
|
2430
|
-
endpoint
|
|
2431
|
-
}
|
|
2548
|
+
declare const DropboxConfigSchema: z.ZodObject<{
|
|
2549
|
+
clientId: z.ZodString;
|
|
2550
|
+
clientSecret: z.ZodString;
|
|
2551
|
+
refreshToken: z.ZodString;
|
|
2552
|
+
rootPath: z.ZodOptional<z.ZodString>;
|
|
2553
|
+
contentSearch: z.ZodOptional<z.ZodBoolean>;
|
|
2554
|
+
endpoint: z.ZodOptional<z.ZodString>;
|
|
2555
|
+
}, z.core.$strip>;
|
|
2556
|
+
type DropboxConfigRedacted = RedactedConfig<ConfigOf<typeof DropboxConfigSchema>, 'clientSecret' | 'refreshToken'>;
|
|
2432
2557
|
declare function redactDropboxConfig(config: DropboxConfig): DropboxConfigRedacted;
|
|
2433
2558
|
declare function normalizeDropboxConfig(input: Record<string, unknown>): DropboxConfig;
|
|
2434
2559
|
|
|
@@ -2439,13 +2564,13 @@ interface DropboxResourceState {
|
|
|
2439
2564
|
declare class DropboxResource extends BaseResource implements Resource {
|
|
2440
2565
|
readonly kind: string;
|
|
2441
2566
|
readonly cachesReads: boolean;
|
|
2567
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2442
2568
|
readonly indexTtl: number;
|
|
2443
2569
|
readonly prompt: string;
|
|
2444
2570
|
readonly config: DropboxConfig;
|
|
2445
2571
|
readonly accessor: DropboxAccessor;
|
|
2446
2572
|
constructor(config: DropboxConfig);
|
|
2447
2573
|
open(): Promise<void>;
|
|
2448
|
-
close(): Promise<void>;
|
|
2449
2574
|
commands(): readonly RegisteredCommand[];
|
|
2450
2575
|
ops(): readonly RegisteredOp[];
|
|
2451
2576
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2472,15 +2597,17 @@ interface BoxConfig {
|
|
|
2472
2597
|
}>;
|
|
2473
2598
|
onRefreshTokenRotated?: (newRefreshToken: string) => void | Promise<void>;
|
|
2474
2599
|
}
|
|
2475
|
-
|
|
2476
|
-
endpoint
|
|
2477
|
-
rootFolderId
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
|
|
2483
|
-
|
|
2600
|
+
declare const BoxConfigSchema: z.ZodObject<{
|
|
2601
|
+
endpoint: z.ZodOptional<z.ZodString>;
|
|
2602
|
+
rootFolderId: z.ZodOptional<z.ZodString>;
|
|
2603
|
+
contentSearch: z.ZodOptional<z.ZodBoolean>;
|
|
2604
|
+
clientId: z.ZodOptional<z.ZodString>;
|
|
2605
|
+
clientSecret: z.ZodOptional<z.ZodString>;
|
|
2606
|
+
refreshToken: z.ZodOptional<z.ZodString>;
|
|
2607
|
+
enterpriseId: z.ZodOptional<z.ZodString>;
|
|
2608
|
+
accessToken: z.ZodOptional<z.ZodString>;
|
|
2609
|
+
}, z.core.$strip>;
|
|
2610
|
+
type BoxConfigRedacted = RedactedConfig<ConfigOf<typeof BoxConfigSchema>, 'clientSecret' | 'refreshToken' | 'accessToken'>;
|
|
2484
2611
|
declare function redactBoxConfig(config: BoxConfig): BoxConfigRedacted;
|
|
2485
2612
|
declare function normalizeBoxConfig(input: Record<string, unknown>): BoxConfig;
|
|
2486
2613
|
|
|
@@ -2491,13 +2618,13 @@ interface BoxResourceState {
|
|
|
2491
2618
|
declare class BoxResource extends BaseResource implements Resource {
|
|
2492
2619
|
readonly kind: string;
|
|
2493
2620
|
readonly cachesReads: boolean;
|
|
2621
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2494
2622
|
readonly indexTtl: number;
|
|
2495
2623
|
readonly prompt: string;
|
|
2496
2624
|
readonly config: BoxConfig;
|
|
2497
2625
|
readonly accessor: BoxAccessor;
|
|
2498
2626
|
constructor(config: BoxConfig);
|
|
2499
2627
|
open(): Promise<void>;
|
|
2500
|
-
close(): Promise<void>;
|
|
2501
2628
|
commands(): readonly RegisteredCommand[];
|
|
2502
2629
|
ops(): readonly RegisteredOp[];
|
|
2503
2630
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2515,6 +2642,7 @@ interface GmailResourceState {
|
|
|
2515
2642
|
declare class GmailResource extends BaseResource implements Resource {
|
|
2516
2643
|
readonly kind: string;
|
|
2517
2644
|
readonly cachesReads: boolean;
|
|
2645
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2518
2646
|
readonly indexTtl: number;
|
|
2519
2647
|
readonly prompt: string;
|
|
2520
2648
|
readonly writePrompt: string;
|
|
@@ -2522,7 +2650,6 @@ declare class GmailResource extends BaseResource implements Resource {
|
|
|
2522
2650
|
readonly accessor: GmailAccessor;
|
|
2523
2651
|
constructor(config: GoogleConfig);
|
|
2524
2652
|
open(): Promise<void>;
|
|
2525
|
-
close(): Promise<void>;
|
|
2526
2653
|
commands(): readonly RegisteredCommand[];
|
|
2527
2654
|
ops(): readonly RegisteredOp[];
|
|
2528
2655
|
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
@@ -2533,30 +2660,46 @@ declare class GmailResource extends BaseResource implements Resource {
|
|
|
2533
2660
|
loadState(_state: GmailResourceState): Promise<void>;
|
|
2534
2661
|
}
|
|
2535
2662
|
|
|
2536
|
-
interface
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
smtpHost: string;
|
|
2540
|
-
smtpPort: number;
|
|
2541
|
-
username: string;
|
|
2542
|
-
password: string;
|
|
2543
|
-
useSsl: boolean;
|
|
2544
|
-
maxMessages: number;
|
|
2545
|
-
}
|
|
2546
|
-
interface EmailConfigRedacted extends Omit<EmailConfig, 'password'> {
|
|
2547
|
-
password: '<REDACTED>';
|
|
2663
|
+
interface GCalResourceState {
|
|
2664
|
+
type: string;
|
|
2665
|
+
config: GoogleConfigRedacted;
|
|
2548
2666
|
}
|
|
2667
|
+
declare class GCalResource extends BaseResource implements Resource {
|
|
2668
|
+
readonly kind: string;
|
|
2669
|
+
readonly cachesReads: boolean;
|
|
2670
|
+
readonly indexTtl: number;
|
|
2671
|
+
readonly prompt: string;
|
|
2672
|
+
readonly writePrompt: string;
|
|
2673
|
+
readonly config: GoogleConfig;
|
|
2674
|
+
readonly accessor: GCalAccessor;
|
|
2675
|
+
constructor(config: GoogleConfig);
|
|
2676
|
+
open(): Promise<void>;
|
|
2677
|
+
commands(): readonly RegisteredCommand[];
|
|
2678
|
+
ops(): readonly RegisteredOp[];
|
|
2679
|
+
readFile(p: PathSpec): Promise<Uint8Array>;
|
|
2680
|
+
readdir(p: PathSpec): Promise<string[]>;
|
|
2681
|
+
stat(p: PathSpec): Promise<FileStat>;
|
|
2682
|
+
glob(paths: readonly PathSpec[], prefix?: string): Promise<PathSpec[]>;
|
|
2683
|
+
getState(): Promise<GCalResourceState>;
|
|
2684
|
+
loadState(_state: GCalResourceState): Promise<void>;
|
|
2685
|
+
}
|
|
2686
|
+
|
|
2687
|
+
declare const EmailConfigSchema: z.ZodObject<{
|
|
2688
|
+
imapHost: z.ZodString;
|
|
2689
|
+
imapPort: z.ZodDefault<z.ZodNumber>;
|
|
2690
|
+
smtpHost: z.ZodString;
|
|
2691
|
+
smtpPort: z.ZodDefault<z.ZodNumber>;
|
|
2692
|
+
username: z.ZodString;
|
|
2693
|
+
password: z.ZodString;
|
|
2694
|
+
useSsl: z.ZodDefault<z.ZodBoolean>;
|
|
2695
|
+
maxMessages: z.ZodDefault<z.ZodNumber>;
|
|
2696
|
+
saveCopy: z.ZodDefault<z.ZodBoolean>;
|
|
2697
|
+
sentFolder: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
2698
|
+
}, z.core.$strip>;
|
|
2699
|
+
type EmailConfig = ConfigOf<typeof EmailConfigSchema>;
|
|
2700
|
+
type EmailConfigRedacted = RedactedConfig<EmailConfig, 'password'>;
|
|
2549
2701
|
declare function redactEmailConfig(config: EmailConfig): EmailConfigRedacted;
|
|
2550
|
-
|
|
2551
|
-
imapHost: string;
|
|
2552
|
-
imapPort?: number;
|
|
2553
|
-
smtpHost: string;
|
|
2554
|
-
smtpPort?: number;
|
|
2555
|
-
username: string;
|
|
2556
|
-
password: string;
|
|
2557
|
-
useSsl?: boolean;
|
|
2558
|
-
maxMessages?: number;
|
|
2559
|
-
}
|
|
2702
|
+
type EmailConfigInput = z.input<typeof EmailConfigSchema>;
|
|
2560
2703
|
declare function buildEmailConfig(input: EmailConfigInput): EmailConfig;
|
|
2561
2704
|
declare function normalizeEmailConfig(input: Record<string, unknown>): EmailConfig;
|
|
2562
2705
|
|
|
@@ -2575,6 +2718,7 @@ interface EmailResourceState {
|
|
|
2575
2718
|
declare class EmailResource extends BaseResource implements Resource {
|
|
2576
2719
|
readonly kind: string;
|
|
2577
2720
|
readonly cachesReads: boolean;
|
|
2721
|
+
readonly sizesAlwaysKnown: boolean;
|
|
2578
2722
|
readonly indexTtl: number;
|
|
2579
2723
|
readonly prompt: string;
|
|
2580
2724
|
readonly config: EmailConfig;
|
|
@@ -2592,13 +2736,106 @@ declare class EmailResource extends BaseResource implements Resource {
|
|
|
2592
2736
|
loadState(_state: EmailResourceState): Promise<void>;
|
|
2593
2737
|
}
|
|
2594
2738
|
|
|
2595
|
-
declare const EMAIL_PROMPT = "{prefix}\n <folder>/\n <yyyy-mm-dd>/\n <subject>__<uid>.email.json\n <subject>__<uid>/ # if attachments exist\n <attachment-filename>\n Folders include: INBOX, Sent, Drafts, etc. cat shows email as JSON.\n\n
|
|
2596
|
-
declare const EMAIL_WRITE_PROMPT = "
|
|
2739
|
+
declare const EMAIL_PROMPT = "{prefix}\n <folder>/\n <yyyy-mm-dd>/\n <subject>__<uid>.email.json\n <subject>__<uid>/ # if attachments exist\n <attachment-filename>\n Folders include: INBOX, Sent, Drafts, etc. cat shows email as JSON.\n\n To act on mail (list/read/send/reply/forward), use the himalaya CLI\n if installed: himalaya --help";
|
|
2740
|
+
declare const EMAIL_WRITE_PROMPT = " Sending mail goes through the himalaya CLI if installed:\n himalaya message send --to \"to@email.com\" --subject \"Hi\" --body \"...\"";
|
|
2597
2741
|
|
|
2598
2742
|
declare const EMAIL_COMMANDS: readonly RegisteredCommand[];
|
|
2599
2743
|
|
|
2744
|
+
declare const HIMALAYA: CLISpec;
|
|
2745
|
+
|
|
2600
2746
|
declare const EMAIL_OPS: readonly RegisteredOp[];
|
|
2601
2747
|
|
|
2748
|
+
/**
|
|
2749
|
+
* Run Python code on a host interpreter as a subprocess.
|
|
2750
|
+
*
|
|
2751
|
+
* Each run spawns `<interpreter> -c <code>`; the code sees the host
|
|
2752
|
+
* filesystem and environment, not the workspace mounts. Mirrors the
|
|
2753
|
+
* python LocalRuntime: the interpreter defaults to `python3` on PATH
|
|
2754
|
+
* (node has no embedded python, unlike the python package which
|
|
2755
|
+
* defaults to its own interpreter); point the config `home` or the
|
|
2756
|
+
* MIRAGE_LOCAL_HOME environment variable at another binary, e.g. a
|
|
2757
|
+
* project venv whose packages the code needs.
|
|
2758
|
+
*/
|
|
2759
|
+
declare class LocalRuntime extends PythonRuntime {
|
|
2760
|
+
readonly name = "local";
|
|
2761
|
+
readonly reach = "process";
|
|
2762
|
+
private readonly python;
|
|
2763
|
+
private readonly children;
|
|
2764
|
+
constructor(options?: RuntimeOptions);
|
|
2765
|
+
run(args: RunArgs): Promise<RunResult>;
|
|
2766
|
+
close(): Promise<void>;
|
|
2767
|
+
}
|
|
2768
|
+
|
|
2769
|
+
/** How to reach the user's live E2B sandbox. */
|
|
2770
|
+
interface E2BConfig extends SandboxConfig {
|
|
2771
|
+
/**
|
|
2772
|
+
* Id of a sandbox you created (`e2b sandbox spawn` or the SDK),
|
|
2773
|
+
* booted from a template with fuse3 and mirage installed.
|
|
2774
|
+
*/
|
|
2775
|
+
sandboxId: string;
|
|
2776
|
+
/** E2B credential; absent reads E2B_API_KEY. */
|
|
2777
|
+
apiKey?: string;
|
|
2778
|
+
}
|
|
2779
|
+
declare const E2B_CONFIG_KEYS: readonly string[];
|
|
2780
|
+
|
|
2781
|
+
type E2bSdk = typeof e2bSdk;
|
|
2782
|
+
/**
|
|
2783
|
+
* An E2B sandbox the user runs as a whole-line runtime.
|
|
2784
|
+
*
|
|
2785
|
+
* You create the sandbox yourself (`e2b sandbox spawn` or the SDK);
|
|
2786
|
+
* mirage only connects by `sandboxId` and execs lines. `apiKey` falls
|
|
2787
|
+
* back to E2B_API_KEY. E2B's exec reports stdout and stderr
|
|
2788
|
+
* separately, so both stream back real; it takes no stdin, so piped
|
|
2789
|
+
* bytes are uploaded and redirected in.
|
|
2790
|
+
*/
|
|
2791
|
+
declare class E2BRuntime extends RemoteSandbox<E2BConfig> {
|
|
2792
|
+
readonly name = "e2b";
|
|
2793
|
+
private sdk;
|
|
2794
|
+
private sandbox;
|
|
2795
|
+
constructor(options?: RuntimeOptions<E2BConfig> | Record<string, unknown>);
|
|
2796
|
+
protected loadSdk(): Promise<E2bSdk>;
|
|
2797
|
+
private ensureSdk;
|
|
2798
|
+
private apiParams;
|
|
2799
|
+
connect(): Promise<void>;
|
|
2800
|
+
execLine(line: string, stdin: Uint8Array | null, env: Record<string, string>, cwd: string): Promise<RunResult>;
|
|
2801
|
+
private upload;
|
|
2802
|
+
}
|
|
2803
|
+
|
|
2804
|
+
/** How to reach the user's running container. */
|
|
2805
|
+
interface DockerConfig extends SandboxConfig {
|
|
2806
|
+
/**
|
|
2807
|
+
* Id or name of a running container. You start it yourself
|
|
2808
|
+
* (`docker run -d ... sleep infinity`); live FUSE mounts need
|
|
2809
|
+
* `--cap-add SYS_ADMIN --device /dev/fuse` and an image with mirage
|
|
2810
|
+
* installed.
|
|
2811
|
+
*/
|
|
2812
|
+
container: string;
|
|
2813
|
+
}
|
|
2814
|
+
declare const DOCKER_CONFIG_KEYS: readonly string[];
|
|
2815
|
+
|
|
2816
|
+
interface DockerResult {
|
|
2817
|
+
stdout: Uint8Array;
|
|
2818
|
+
stderr: Uint8Array;
|
|
2819
|
+
code: number;
|
|
2820
|
+
}
|
|
2821
|
+
/**
|
|
2822
|
+
* A container the user runs as a whole-line runtime.
|
|
2823
|
+
*
|
|
2824
|
+
* You start the container yourself; mirage only connects to it and
|
|
2825
|
+
* execs lines. The docker CLI is the transport (Docker Desktop,
|
|
2826
|
+
* colima, or a podman alias all work), so there is no SDK dependency
|
|
2827
|
+
* and no daemon socket wiring; each line is one `docker exec -i` with
|
|
2828
|
+
* the merged environment, the rebased cwd, real stdin, and separated
|
|
2829
|
+
* stderr.
|
|
2830
|
+
*/
|
|
2831
|
+
declare class DockerRuntime extends RemoteSandbox<DockerConfig> {
|
|
2832
|
+
readonly name = "docker";
|
|
2833
|
+
constructor(options?: RuntimeOptions<DockerConfig> | Record<string, unknown>);
|
|
2834
|
+
protected docker(args: string[], stdin?: Uint8Array | null): Promise<DockerResult>;
|
|
2835
|
+
connect(): Promise<void>;
|
|
2836
|
+
execLine(line: string, stdin: Uint8Array | null, env: Record<string, string>, cwd: string): Promise<RunResult>;
|
|
2837
|
+
}
|
|
2838
|
+
|
|
2602
2839
|
/**
|
|
2603
2840
|
* Construct a resource by registry name. Mirrors Python's
|
|
2604
2841
|
* `mirage.resource.registry.build_resource`.
|
|
@@ -2614,23 +2851,74 @@ declare const EMAIL_OPS: readonly RegisteredOp[];
|
|
|
2614
2851
|
*/
|
|
2615
2852
|
type ResourceFactory = (config: Record<string, unknown>) => Promise<Resource>;
|
|
2616
2853
|
/**
|
|
2617
|
-
* Look up
|
|
2618
|
-
*
|
|
2854
|
+
* Look up every constructible name: builtins plus whatever `register()`
|
|
2855
|
+
* has added.
|
|
2619
2856
|
*/
|
|
2620
2857
|
declare function knownResources(): string[];
|
|
2621
2858
|
/**
|
|
2622
|
-
* Register a custom resource factory under `name`.
|
|
2623
|
-
*
|
|
2859
|
+
* Register a custom resource factory under `name`. Builtin names cannot
|
|
2860
|
+
* be shadowed; re-registering a custom name replaces it. Mirrors
|
|
2861
|
+
* Python's `mirage.resource.registry.register_resource`, which keeps
|
|
2862
|
+
* builtins in REGISTRY and custom entries in a separate _CUSTOM dict so
|
|
2863
|
+
* a plugin cannot replace the builtin `s3` factory.
|
|
2624
2864
|
*/
|
|
2625
2865
|
declare function register(name: string, factory: ResourceFactory): void;
|
|
2626
2866
|
/**
|
|
2627
|
-
* Build a resource instance by registry name.
|
|
2628
|
-
* unknown.
|
|
2867
|
+
* Build a resource instance by registry name. Builtins win over custom
|
|
2868
|
+
* registrations. Throws if the name is unknown.
|
|
2629
2869
|
*/
|
|
2630
2870
|
declare function buildResource(name: string, config?: Record<string, unknown>): Promise<Resource>;
|
|
2631
2871
|
|
|
2872
|
+
/**
|
|
2873
|
+
* Extensions Node will import from disk. Python's twin tests for a
|
|
2874
|
+
* single one (`.py`) because it has one module language; here `.ts` and
|
|
2875
|
+
* `.mts` ride on Node's own type stripping, which is strip-only: a file
|
|
2876
|
+
* using `enum`, a parameter property, a runtime `namespace` or a legacy
|
|
2877
|
+
* decorator is refused at load with ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX.
|
|
2878
|
+
* `.mjs` is the spelling with no caveats.
|
|
2879
|
+
*/
|
|
2880
|
+
declare const MODULE_SUFFIXES: string[];
|
|
2881
|
+
/**
|
|
2882
|
+
* True when a ref's source is a file on disk rather than a package
|
|
2883
|
+
* specifier Node resolves for itself.
|
|
2884
|
+
*
|
|
2885
|
+
* This is Node's own rule, deliberately NOT Python's. Python's twin asks
|
|
2886
|
+
* `"/" in source`, which is sound there because a module dotpath is
|
|
2887
|
+
* dotted, so a slash can only mean a path. In Node a bare specifier
|
|
2888
|
+
* carries slashes all the time (`@scope/pkg`, `pkg/subpath`), so the
|
|
2889
|
+
* same test would rebase an installed package under the config
|
|
2890
|
+
* directory and then report it as a missing file. A path is what Node
|
|
2891
|
+
* calls a path: relative (`./`, `../`) or absolute. The one addition is
|
|
2892
|
+
* a bare filename carrying a module suffix (`tool.mjs`), which mirrors
|
|
2893
|
+
* the convenience Python allows for `tool.py`; it is restricted to
|
|
2894
|
+
* sources with no slash so that `pkg/dist/index.js` stays a subpath
|
|
2895
|
+
* export, and `./dist/index.js` says path by saying so.
|
|
2896
|
+
*
|
|
2897
|
+
* The config loader's `absolutizeCliRef` calls this same function, so
|
|
2898
|
+
* the two cannot disagree about what a path is.
|
|
2899
|
+
*/
|
|
2900
|
+
declare function isModulePath(source: string): boolean;
|
|
2901
|
+
/** Split a `source:exportName` ref on its last colon. */
|
|
2902
|
+
declare function splitRef(spec: string): [string, string];
|
|
2903
|
+
/**
|
|
2904
|
+
* Load a module export from a `source:exportName` reference.
|
|
2905
|
+
*
|
|
2906
|
+
* Two forms, auto-detected the way Python's `load_attr` detects them:
|
|
2907
|
+
* a file (`"./my_cli.mjs:TALLY"`) or a package specifier
|
|
2908
|
+
* (`"my-package/clis:JIRA"`). Only a missing file is reworded; every
|
|
2909
|
+
* other load failure propagates with Node's own diagnostic, because a
|
|
2910
|
+
* syntax error in the user's file is the message they need to read.
|
|
2911
|
+
*
|
|
2912
|
+
* A CommonJS file resolves through `default` as well as through named
|
|
2913
|
+
* exports, since cjs-module-lexer only detects some assignment shapes
|
|
2914
|
+
* and `module.exports = { TALLY }` is one it can miss.
|
|
2915
|
+
*/
|
|
2916
|
+
declare function loadAttr(spec: string): Promise<unknown>;
|
|
2917
|
+
|
|
2632
2918
|
declare const DISK_COMMANDS: readonly RegisteredCommand[];
|
|
2633
2919
|
|
|
2634
2920
|
declare const REDIS_COMMANDS: readonly RegisteredCommand[];
|
|
2635
2921
|
|
|
2636
|
-
|
|
2922
|
+
declare const GRIDFS_COMMANDS: readonly RegisteredCommand[];
|
|
2923
|
+
|
|
2924
|
+
export { ALIYUN_PROMPT, type AliyunConfig, type AliyunConfigRedacted, AliyunResource, type AliyunResourceState, BACKBLAZE_PROMPT, type BackblazeConfig, type BackblazeConfigRedacted, BackblazeResource, type BackblazeResourceState, type BoxConfig, type BoxConfigRedacted, BoxResource, type BoxResourceState, CEPH_PROMPT, type CephConfig, type CephConfigRedacted, CephResource, type CephResourceState, DAYTONA_CONFIG_KEYS, DEFAULT_STATE_ROOT, DIGITALOCEAN_PROMPT, DISK_COMMANDS, DISK_OPS, DISK_PROMPT, DOCKER_CONFIG_KEYS, type DatabricksProfile, DatabricksVolumeResource, type DatabricksVolumeResourceState, type DaytonaConfig, DaytonaRuntime, type DigitalOceanConfig, type DigitalOceanConfigRedacted, DigitalOceanResource, type DigitalOceanResourceState, DiscordResource, type DiscordResourceState, DiskNamespaceStore, DiskObserverStore, DiskRecordClient, DiskResource, type DiskResourceOptions, type DiskResourceState, DiskSessionStore, DiskWorkspaceStateStore, type DiskWorkspaceStateStoreOptions, type DockerConfig, DockerRuntime, type DropboxConfig, type DropboxConfigRedacted, DropboxResource, type DropboxResourceState, type E2BConfig, E2BRuntime, E2B_CONFIG_KEYS, EMAIL_COMMANDS, EMAIL_OPS, EMAIL_PROMPT, EMAIL_WRITE_PROMPT, EmailAccessor, type EmailConfig, type EmailConfigInput, type EmailConfigRedacted, EmailResource, type EmailResourceState, FSKIT_MOUNT_ROOT, type FuseAttr, type FuseHandle, FuseManager, type MountOptions as FuseMountOptions, type GCSConfig, type GCSConfigRedacted, GCSResource, type GCSResourceState, GCS_ENDPOINT, GCS_PROMPT, GCalResource, type GCalResourceState, GDocsResource, type GDocsResourceState, GDriveResource, type GDriveResourceState, GRIDFS_COMMANDS, GSheetsResource, type GSheetsResourceState, GSlidesResource, type GSlidesResourceState, type GitHubCIConfig, type GitHubCIConfigRedacted, GitHubCIResource, type GitHubCIResourceState, type GitHubConfig, type GitHubConfigRedacted, GitHubResource, type GitHubResourceState, GmailResource, type GmailResourceState, GridFSAccessor, type GridFSConfig, type GridFSConfigRedacted, GridFSResource, type GridFSResourceState, HF_BUCKETS_PROMPT, HF_COMMANDS, HF_DATASETS_PROMPT, HF_ENDPOINT, HF_MODELS_PROMPT, HF_OPS, HF_RESOURCES, HF_SPACES_PROMPT, HIMALAYA, HfAccessor, HfBucketsAccessor, type HfBucketsConfig, type HfBucketsConfigRedacted, HfBucketsResource, type HfBucketsResourceState, HfDatasetsAccessor, HfDatasetsResource, type HfDatasetsResourceState, HfModelsAccessor, type HfModelsConfig, type HfModelsConfigRedacted, HfModelsResource, type HfModelsResourceState, type HfRepoConfig, type HfRepoConfigRedacted, HfSpacesAccessor, HfSpacesResource, type HfSpacesResourceState, JaegerResource, type JaegerResourceState, LanceDBResource, type LanceDBResourceOptions, LanceDBStore, type LangfuseConfig, type LangfuseConfigRedacted, LangfuseResource, type LangfuseResourceState, LinearResource, type LinearResourceState, LocalRuntime, MINIO_PROMPT, MODULE_SUFFIXES, type MinIOConfig, type MinIOConfigRedacted, MinIOResource, type MinIOResourceState, MirageFS, type MirageFSOptions, MongoDBResource, type MongoDBResourceOptions, MongoDBStore, Mount, MountCore, type MountCoreOptions, type MountSpecOptions, NEXTCLOUD_COMMANDS, NEXTCLOUD_OPS, NEXTCLOUD_PROMPT, NextcloudAccessor, type NextcloudConfig, type NextcloudConfigRedacted, NextcloudResource, type NextcloudResourceState, NextcloudWalk, type NodeWorkspaceOptions, NotionResource, type NotionResourceState, type OCIConfig, type OCIConfigRedacted, OCIResource, type OCIResourceState, OCI_PROMPT, PostgresResource, type PostgresResourceOptions, PostgresStore, QINGSTOR_PROMPT, type QingStorConfig, type QingStorConfigRedacted, QingStorResource, type QingStorResourceState, type R2Config, type R2ConfigRedacted, R2Resource, type R2ResourceState, R2_PROMPT, REDIS_COMMANDS, REDIS_OPS, REDIS_PROMPT, RedisAccessor, RedisConsoleStore, type RedisConsoleStoreOptions, type RedisFileCacheOptions, RedisFileCacheStore, RedisNamespaceStore, type RedisNamespaceStoreOptions, RedisObserverStore, type RedisObserverStoreOptions, RedisResource, type RedisResourceLike, type RedisResourceOptions, type RedisResourceState, RedisSessionStore, type RedisSessionStoreOptions, RedisStore, type RedisStoreOptions, RedisWorkspaceStateStore, type RedisWorkspaceStateStoreOptions, type ResourceFactory, type S3Config, type S3ConfigRedacted, S3Resource, type S3ResourceState, SCALEWAY_PROMPT, SEAWEEDFS_PROMPT, SSHAccessor, type SSHConfig, type SSHConfigRedacted, SSHResource, type SSHResourceState, SSH_COMMANDS, SSH_OPS, SSH_PROMPT, SUPABASE_PROMPT, type ScalewayConfig, type ScalewayConfigRedacted, ScalewayResource, type ScalewayResourceState, type SeaweedFSConfig, type SeaweedFSConfigRedacted, SeaweedFSResource, type SeaweedFSResourceState, SlackResource, type SlackResourceState, type SupabaseConfig, type SupabaseConfigRedacted, SupabaseResource, type SupabaseResourceState, TENCENT_PROMPT, type TencentConfig, type TencentConfigRedacted, TencentResource, type TencentResourceState, type TrelloConfig, type TrelloConfigRedacted, TrelloResource, type TrelloResourceState, WASABI_PROMPT, type WasabiConfig, type WasabiConfigRedacted, WasabiResource, type WasabiResourceState, Workspace, assertHfRepoId, buildEmailConfig, buildDeltaHook as buildNextcloudDeltaHook, buildResource, checkMountpoint, checkPlatform, checkSizes, classifyErrno, classifyError, fileReadProvision, mount as fuseMount, mountBackground as fuseMountBackground, headTailProvision, isMacosMetadata, isModulePath, knownResources, loadAttr, loadDatabricksProfile, metadataProvision, normalizeBoxConfig, normalizeDropboxConfig, normalizeEmailConfig, normalizeGitHubCIConfig, normalizeGitHubConfig, normalizeGridFSConfig, normalizeHfBucketsConfig, normalizeHfModelsConfig, normalizeHfRepoConfig, normalizeLangfuseConfig, normalizeNextcloudConfig, normalizeS3Config, normalizeSshConfig, normalizeTrelloConfig, parseDatabricksCfg, patchNodeFs, prepareBackend, redactAliyunConfig, redactBackblazeConfig, redactBoxConfig, redactCephConfig, redactDigitalOceanConfig, redactDropboxConfig, redactEmailConfig, redactGcsConfig, redactGitHubCIConfig, redactGitHubConfig, redactHfBucketsConfig, redactHfModelsConfig, redactHfRepoConfig, redactLangfuseConfig, redactMinIOConfig, redactNextcloudConfig, redactOciConfig, redactQingStorConfig, redactR2Config, redactConfig as redactS3Config, redactScalewayConfig, redactSeaweedFSConfig, redactSshConfig, redactSupabaseConfig, redactTencentConfig, redactTrelloConfig, redactWasabiConfig, register as registerResourceFactory, requireKernelBackend, resolveBackend, resolvedAliyunEndpoint, resolvedBackblazeEndpoint, resolvedDigitalOceanEndpoint, resolvedQingStorEndpoint, resolvedScalewayEndpoint, resolvedSupabaseEndpoint, resolvedTencentEndpoint, resolvedWasabiEndpoint, splitRef, unsizedMounts };
|