phala 1.1.21 → 1.1.22-beta.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/dist/api/index.js CHANGED
@@ -1,44 +1,44 @@
1
1
  import { createRequire } from 'module';const require = createRequire(import.meta.url);
2
- var Lr=Object.create;var Bt=Object.defineProperty;var Ur=Object.getOwnPropertyDescriptor;var zr=Object.getOwnPropertyNames;var Fr=Object.getPrototypeOf,Dr=Object.prototype.hasOwnProperty;var St=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var rt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Vr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of zr(t))!Dr.call(e,s)&&s!==n&&Bt(e,s,{get:()=>t[s],enumerable:!(r=Ur(t,s))||r.enumerable});return e};var Mr=(e,t,n)=>(n=e!=null?Lr(Fr(e)):{},Vr(t||!e||!e.__esModule?Bt(n,"default",{value:e,enumerable:!0}):n,e));var Jt=rt((du,Wt)=>{var De=1e3,Ve=De*60,Me=Ve*60,Le=Me*24,Kr=Le*7,Hr=Le*365.25;Wt.exports=function(e,t){t=t||{};var n=typeof e;if(n==="string"&&e.length>0)return Gr(e);if(n==="number"&&isFinite(e))return t.long?Wr(e):Br(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Gr(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var n=parseFloat(t[1]),r=(t[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return n*Hr;case"weeks":case"week":case"w":return n*Kr;case"days":case"day":case"d":return n*Le;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Me;case"minutes":case"minute":case"mins":case"min":case"m":return n*Ve;case"seconds":case"second":case"secs":case"sec":case"s":return n*De;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function Br(e){var t=Math.abs(e);return t>=Le?Math.round(e/Le)+"d":t>=Me?Math.round(e/Me)+"h":t>=Ve?Math.round(e/Ve)+"m":t>=De?Math.round(e/De)+"s":e+"ms"}function Wr(e){var t=Math.abs(e);return t>=Le?lt(e,t,Le,"day"):t>=Me?lt(e,t,Me,"hour"):t>=Ve?lt(e,t,Ve,"minute"):t>=De?lt(e,t,De,"second"):e+" ms"}function lt(e,t,n,r){var s=t>=n*1.5;return Math.round(e/n)+" "+r+(s?"s":"")}});var Et=rt((mu,Xt)=>{function Jr(e){n.debug=n,n.default=n,n.coerce=u,n.disable=o,n.enable=s,n.enabled=a,n.humanize=Jt(),n.destroy=f,Object.keys(e).forEach(d=>{n[d]=e[d]}),n.names=[],n.skips=[],n.formatters={};function t(d){let m=0;for(let h=0;h<d.length;h++)m=(m<<5)-m+d.charCodeAt(h),m|=0;return n.colors[Math.abs(m)%n.colors.length]}n.selectColor=t;function n(d){let m,h=null,_,S;function I(...O){if(!I.enabled)return;let se=I,ge=Number(new Date),Pe=ge-(m||ge);se.diff=Pe,se.prev=m,se.curr=ge,m=ge,O[0]=n.coerce(O[0]),typeof O[0]!="string"&&O.unshift("%O");let ke=0;O[0]=O[0].replace(/%([a-zA-Z%])/g,(Fe,ct)=>{if(Fe==="%%")return"%";ke++;let Gt=n.formatters[ct];if(typeof Gt=="function"){let Nr=O[ke];Fe=Gt.call(se,Nr),O.splice(ke,1),ke--}return Fe}),n.formatArgs.call(se,O),(se.log||n.log).apply(se,O)}return I.namespace=d,I.useColors=n.useColors(),I.color=n.selectColor(d),I.extend=r,I.destroy=n.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(_!==n.namespaces&&(_=n.namespaces,S=n.enabled(d)),S),set:O=>{h=O}}),typeof n.init=="function"&&n.init(I),I}function r(d,m){let h=n(this.namespace+(typeof m>"u"?":":m)+d);return h.log=this.log,h}function s(d){n.save(d),n.namespaces=d,n.names=[],n.skips=[];let m=(typeof d=="string"?d:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let h of m)h[0]==="-"?n.skips.push(h.slice(1)):n.names.push(h)}function i(d,m){let h=0,_=0,S=-1,I=0;for(;h<d.length;)if(_<m.length&&(m[_]===d[h]||m[_]==="*"))m[_]==="*"?(S=_,I=h,_++):(h++,_++);else if(S!==-1)_=S+1,I++,h=I;else return!1;for(;_<m.length&&m[_]==="*";)_++;return _===m.length}function o(){let d=[...n.names,...n.skips.map(m=>"-"+m)].join(",");return n.enable(""),d}function a(d){for(let m of n.skips)if(i(d,m))return!1;for(let m of n.names)if(i(d,m))return!0;return!1}function u(d){return d instanceof Error?d.stack||d.message:d}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return n.enable(n.load()),n}Xt.exports=Jr});var Zt=rt((ce,ut)=>{ce.formatArgs=Zr;ce.save=Qr;ce.load=Yr;ce.useColors=Xr;ce.storage=es();ce.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();ce.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Xr(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Zr(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+ut.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let n=0,r=0;e[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(n++,s==="%c"&&(r=n))}),e.splice(r,0,t)}ce.log=console.debug||console.log||(()=>{});function Qr(e){try{e?ce.storage.setItem("debug",e):ce.storage.removeItem("debug")}catch{}}function Yr(){let e;try{e=ce.storage.getItem("debug")||ce.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function es(){try{return localStorage}catch{}}ut.exports=Et()(ce);var{formatters:ts}=ut.exports;ts.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Yt=rt((W,dt)=>{var ns=St("tty"),pt=St("util");W.init=ls;W.log=as;W.formatArgs=ss;W.save=is;W.load=cs;W.useColors=rs;W.destroy=pt.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");W.colors=[6,2,3,4,5,1];try{let e=St("supports-color");e&&(e.stderr||e).level>=2&&(W.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}W.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let n=t.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),r=process.env[t];return/^(yes|on|true|enabled)$/i.test(r)?r=!0:/^(no|off|false|disabled)$/i.test(r)?r=!1:r==="null"?r=null:r=Number(r),e[n]=r,e},{});function rs(){return"colors"in W.inspectOpts?!!W.inspectOpts.colors:ns.isatty(process.stderr.fd)}function ss(e){let{namespace:t,useColors:n}=this;if(n){let r=this.color,s="\x1B[3"+(r<8?r:"8;5;"+r),i=` ${s};1m${t} \x1B[0m`;e[0]=i+e[0].split(`
2
+ var Lr=Object.create;var Wt=Object.defineProperty;var Ur=Object.getOwnPropertyDescriptor;var zr=Object.getOwnPropertyNames;var Fr=Object.getPrototypeOf,Dr=Object.prototype.hasOwnProperty;var At=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var ot=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Vr=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of zr(t))!Dr.call(e,s)&&s!==n&&Wt(e,s,{get:()=>t[s],enumerable:!(r=Ur(t,s))||r.enumerable});return e};var Kr=(e,t,n)=>(n=e!=null?Lr(Fr(e)):{},Vr(t||!e||!e.__esModule?Wt(n,"default",{value:e,enumerable:!0}):n,e));var Xt=ot((du,Jt)=>{var Ve=1e3,Ke=Ve*60,Me=Ke*60,Ue=Me*24,Mr=Ue*7,Hr=Ue*365.25;Jt.exports=function(e,t){t=t||{};var n=typeof e;if(n==="string"&&e.length>0)return Gr(e);if(n==="number"&&isFinite(e))return t.long?Wr(e):Br(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Gr(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var n=parseFloat(t[1]),r=(t[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return n*Hr;case"weeks":case"week":case"w":return n*Mr;case"days":case"day":case"d":return n*Ue;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Me;case"minutes":case"minute":case"mins":case"min":case"m":return n*Ke;case"seconds":case"second":case"secs":case"sec":case"s":return n*Ve;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function Br(e){var t=Math.abs(e);return t>=Ue?Math.round(e/Ue)+"d":t>=Me?Math.round(e/Me)+"h":t>=Ke?Math.round(e/Ke)+"m":t>=Ve?Math.round(e/Ve)+"s":e+"ms"}function Wr(e){var t=Math.abs(e);return t>=Ue?dt(e,t,Ue,"day"):t>=Me?dt(e,t,Me,"hour"):t>=Ke?dt(e,t,Ke,"minute"):t>=Ve?dt(e,t,Ve,"second"):e+" ms"}function dt(e,t,n,r){var s=t>=n*1.5;return Math.round(e/n)+" "+r+(s?"s":"")}});var Rt=ot((mu,Zt)=>{function Jr(e){n.debug=n,n.default=n,n.coerce=u,n.disable=o,n.enable=s,n.enabled=a,n.humanize=Xt(),n.destroy=f,Object.keys(e).forEach(d=>{n[d]=e[d]}),n.names=[],n.skips=[],n.formatters={};function t(d){let m=0;for(let h=0;h<d.length;h++)m=(m<<5)-m+d.charCodeAt(h),m|=0;return n.colors[Math.abs(m)%n.colors.length]}n.selectColor=t;function n(d){let m,h=null,I,ie;function H(...L){if(!H.enabled)return;let $=H,S=Number(new Date),M=S-(m||S);$.diff=M,$.prev=m,$.curr=S,m=S,L[0]=n.coerce(L[0]),typeof L[0]!="string"&&L.unshift("%O");let oe=0;L[0]=L[0].replace(/%([a-zA-Z%])/g,(Pe,De)=>{if(Pe==="%%")return"%";oe++;let ut=n.formatters[De];if(typeof ut=="function"){let pt=L[oe];Pe=ut.call($,pt),L.splice(oe,1),oe--}return Pe}),n.formatArgs.call($,L),($.log||n.log).apply($,L)}return H.namespace=d,H.useColors=n.useColors(),H.color=n.selectColor(d),H.extend=r,H.destroy=n.destroy,Object.defineProperty(H,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(I!==n.namespaces&&(I=n.namespaces,ie=n.enabled(d)),ie),set:L=>{h=L}}),typeof n.init=="function"&&n.init(H),H}function r(d,m){let h=n(this.namespace+(typeof m>"u"?":":m)+d);return h.log=this.log,h}function s(d){n.save(d),n.namespaces=d,n.names=[],n.skips=[];let m=(typeof d=="string"?d:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let h of m)h[0]==="-"?n.skips.push(h.slice(1)):n.names.push(h)}function i(d,m){let h=0,I=0,ie=-1,H=0;for(;h<d.length;)if(I<m.length&&(m[I]===d[h]||m[I]==="*"))m[I]==="*"?(ie=I,H=h,I++):(h++,I++);else if(ie!==-1)I=ie+1,H++,h=H;else return!1;for(;I<m.length&&m[I]==="*";)I++;return I===m.length}function o(){let d=[...n.names,...n.skips.map(m=>"-"+m)].join(",");return n.enable(""),d}function a(d){for(let m of n.skips)if(i(d,m))return!1;for(let m of n.names)if(i(d,m))return!0;return!1}function u(d){return d instanceof Error?d.stack||d.message:d}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return n.enable(n.load()),n}Zt.exports=Jr});var Qt=ot((pe,mt)=>{pe.formatArgs=Zr;pe.save=Qr;pe.load=Yr;pe.useColors=Xr;pe.storage=es();pe.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();pe.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Xr(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Zr(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+mt.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let n=0,r=0;e[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(n++,s==="%c"&&(r=n))}),e.splice(r,0,t)}pe.log=console.debug||console.log||(()=>{});function Qr(e){try{e?pe.storage.setItem("debug",e):pe.storage.removeItem("debug")}catch{}}function Yr(){let e;try{e=pe.storage.getItem("debug")||pe.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function es(){try{return localStorage}catch{}}mt.exports=Rt()(pe);var{formatters:ts}=mt.exports;ts.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var en=ot((X,gt)=>{var ns=At("tty"),ft=At("util");X.init=ls;X.log=as;X.formatArgs=ss;X.save=is;X.load=cs;X.useColors=rs;X.destroy=ft.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");X.colors=[6,2,3,4,5,1];try{let e=At("supports-color");e&&(e.stderr||e).level>=2&&(X.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}X.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let n=t.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),r=process.env[t];return/^(yes|on|true|enabled)$/i.test(r)?r=!0:/^(no|off|false|disabled)$/i.test(r)?r=!1:r==="null"?r=null:r=Number(r),e[n]=r,e},{});function rs(){return"colors"in X.inspectOpts?!!X.inspectOpts.colors:ns.isatty(process.stderr.fd)}function ss(e){let{namespace:t,useColors:n}=this;if(n){let r=this.color,s="\x1B[3"+(r<8?r:"8;5;"+r),i=` ${s};1m${t} \x1B[0m`;e[0]=i+e[0].split(`
3
3
  `).join(`
4
- `+i),e.push(s+"m+"+dt.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=os()+t+" "+e[0]}function os(){return W.inspectOpts.hideDate?"":new Date().toISOString()+" "}function as(...e){return process.stderr.write(pt.formatWithOptions(W.inspectOpts,...e)+`
5
- `)}function is(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function cs(){return process.env.DEBUG}function ls(e){e.inspectOpts={};let t=Object.keys(W.inspectOpts);for(let n=0;n<t.length;n++)e.inspectOpts[t[n]]=W.inspectOpts[t[n]]}dt.exports=Et()(W);var{formatters:Qt}=dt.exports;Qt.o=function(e){return this.inspectOpts.colors=this.useColors,pt.inspect(e,this.inspectOpts).split(`
6
- `).map(t=>t.trim()).join(" ")};Qt.O=function(e){return this.inspectOpts.colors=this.useColors,pt.inspect(e,this.inspectOpts)}});var en=rt((fu,At)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?At.exports=Zt():At.exports=Yt()});var bn=Mr(en(),1);import{ofetch as us}from"ofetch";function tn(e){return{all:e=e||new Map,on:function(t,n){var r=e.get(t);r?r.push(n):e.set(t,[n])},off:function(t,n){var r=e.get(t);r&&(n?r.splice(r.indexOf(n)>>>0,1):e.set(t,[]))},emit:function(t,n){var r=e.get(t);r&&r.slice().map(function(s){s(n)}),(r=e.get("*"))&&r.slice().map(function(s){s(t,n)})}}}import{z as J}from"zod";import{z as $}from"zod";import{z as qe}from"zod";import{z as k}from"zod";import{z as l}from"zod";import{z as p}from"zod";import{z as xe}from"zod";import{anvil as sn,base as on,mainnet as an}from"viem/chains";import{z as b}from"zod";import{z as M}from"zod";import{z as B}from"zod";import{z as He}from"zod";import{z as Ge}from"zod";import{z as g}from"zod";import{z as x}from"zod";import{z as w}from"zod";import zo from"crypto";import{z as he}from"zod";import{z as _e}from"zod";import{z as Y}from"zod";import{z as ee}from"zod";import{z as te}from"zod";import{z as _a}from"zod";import{z as Be}from"zod";import{z as me}from"zod";import{z as ln}from"zod";import{z as Re}from"zod";import{z as Ie}from"zod";import{z as ae}from"zod";import{z as un}from"zod";import{z as at}from"zod";import{z as Ye}from"zod";import{z as ze}from"zod";import{z as j}from"zod";import{z as bi}from"zod";import{z as _i}from"zod";import{z as T}from"zod";import{z as Ae}from"zod";import{z as Oi}from"zod";import{z as V}from"zod";import{z as y}from"zod";import{z as Te}from"zod";import{z as It}from"zod";import{z as X}from"zod";import{z as ir}from"zod";import{z as Se}from"zod";import{z as le}from"zod";import{z as $e}from"zod";import{z as xt}from"zod";import{z as Pt}from"zod";import{z as Ue}from"zod";import{z as Q}from"zod";import{z as N}from"zod";import{z as C}from"zod";import{z as L}from"zod";import{z as R}from"zod";import{z as K}from"zod";import{createPublicClient as Fp,createWalletClient as Dp,http as Vp,parseEventLogs as Mp,parseEther as Kp}from"viem";import{privateKeyToAccount as Gp}from"viem/accounts";import{x25519 as bu}from"@noble/curves/ed25519";import{keccak256 as Xp,toBytes as Zp,toHex as Qp}from"viem";import{isHex as ed}from"viem";import{createPublicClient as nd,createWalletClient as rd,http as sd,custom as od}from"viem";import{privateKeyToAccount as id}from"viem/accounts";import{z as U}from"zod";import{createPublicClient as dd,createWalletClient as md,http as fd,parseEventLogs as gd,parseEther as hd}from"viem";import{privateKeyToAccount as vd}from"viem/accounts";import{z}from"zod";import{createPublicClient as kd,createWalletClient as Sd,http as Ed,parseEther as Ad}from"viem";import{privateKeyToAccount as Id}from"viem/accounts";import{z as F}from"zod";import{createPublicClient as qd,createWalletClient as $d,http as Od,parseEther as Nd}from"viem";import{privateKeyToAccount as Ud}from"viem/accounts";import{z as D}from"zod";import{createPublicClient as Md,createWalletClient as Kd,http as Hd,parseEther as Gd}from"viem";import{privateKeyToAccount as Wd}from"viem/accounts";import{z as We}from"zod";import{createPublicClient as Yd,http as em}from"viem";import{createPublicClient as rm,http as sm}from"viem";import{createPublicClient as am,http as im}from"viem";import{createPublicClient as lm,http as um}from"viem";import{z as Je}from"zod";import{z as we}from"zod";import{z as mn}from"zod";import{z as Xe}from"zod";import{z as A}from"zod";import{z as bt}from"zod";import{z as et}from"zod";import{z as de}from"zod";import{z as H}from"zod";import{z as P}from"zod";import{z as st}from"zod";import{z as vl}from"zod";import{z as Z}from"zod";import{z as Ze}from"zod";import{z as ne}from"zod";import{z as pe}from"zod";import{z as fn}from"zod";import{z as gn}from"zod";import{z as Ee}from"zod";import{z as G}from"zod";import{z as mt}from"zod";import{z as ft}from"zod";import{z as oe}from"zod";import{z as E}from"zod";import{secp256k1 as wu}from"@noble/curves/secp256k1";var ps=J.object({detail:J.union([J.string(),J.array(J.object({msg:J.string(),type:J.string().optional(),ctx:J.record(J.unknown()).optional(),loc:J.array(J.union([J.string(),J.number()])).optional(),input:J.unknown().optional()}).passthrough()),J.record(J.unknown())]).optional(),type:J.string().optional(),code:J.string().optional()});function ds(e){if(!e||typeof e!="object")return;let t=e.request_id;return typeof t=="string"?t:void 0}function ms(e){return e?.headers?.get("X-Request-ID")??void 0}function nn(e){if(typeof e!="string")return;let t=e.trim().toUpperCase();return t.length>0?t:void 0}var fe=class extends Error{constructor(e,t){super(e),this.name=this.constructor.name,this.status=t.status,this.statusText=t.statusText,this.detail=t.detail,this.requestId=t.requestId,this.request=t.request,this.requestMethod=t.requestMethod,this.data=t.data,this.code=t.code,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},gt=class ot extends fe{constructor(t,n){super(t,{status:n?.status??0,statusText:n?.statusText??"Unknown Error",detail:n?.detail||t,requestId:n?.requestId,request:n?.request,requestMethod:n?.requestMethod,data:n?.data,code:n?.code}),this.name="RequestError",this.isRequestError=!0,this.data=n?.data,this.request=n?.request,this.requestMethod=n?.requestMethod,this.response=n?.response,this.type=n?.type}static fromFetchError(t){let n=ds(t.data),r=ms(t.response),s=n??r,i=nn(t.options?.method),o=ps.safeParse(t.data);if(o.success){let u=o.data.detail??(t.data&&typeof t.data=="object"&&"error_code"in t.data?t.data:void 0);return new ot(t.message,{status:t.status??void 0,statusText:t.statusText??void 0,data:t.data,request:t.request??void 0,requestMethod:i,response:t.response??void 0,detail:u,code:o.data.code??void 0,type:o.data.type??void 0,requestId:s})}if(t.cause?.name==="TimeoutError"||t.message?.includes("[TimeoutError]")){let u="Request timed out. The server did not respond in time.";return new ot(u,{status:0,statusText:"Request Timeout",data:t.data,request:t.request??void 0,requestMethod:i,response:t.response??void 0,detail:u,code:"TIMEOUT",requestId:s})}return new ot(t.message,{status:t.status??void 0,statusText:t.statusText??void 0,data:t.data,request:t.request??void 0,requestMethod:i,response:t.response??void 0,detail:t.data?.detail||t.message||"Unknown API error",code:t.status?.toString()??void 0,requestId:s})}static fromError(t,n,r){return new ot(t.message,{request:n??void 0,requestMethod:nn(r),detail:t.message})}},fs=class extends fe{constructor(e,t){super(e,t),this.isValidationError=!0,this.validationErrors=t.validationErrors}},gs=class extends fe{constructor(){super(...arguments),this.isAuthError=!0}},vn=class extends fe{constructor(){super(...arguments),this.isBusinessError=!0}},hs=class extends fe{constructor(){super(...arguments),this.isServerError=!0}},bs=class extends fe{constructor(){super(...arguments),this.isUnknownError=!0}};function vs(e){if(!e||!Array.isArray(e))return"unknown";let t=e.filter(n=>typeof n=="string"?!["body","query","path","header"].includes(n):!0);return t.length>0?t.join("."):"unknown"}function yn(e){if(!Array.isArray(e))return{errors:[],message:typeof e=="string"?e:"Validation error"};let t=e.map((s,i)=>{let o=vs(s.loc),a=o;return o==="unknown"&&s.type&&(a=s.type==="missing"?"required field":s.type),{field:a,message:s.msg,type:s.type,context:s.ctx}}),n=t.length,r=n===1?`Validation failed: ${t[0].message}`:`Validation failed (${n} issue${n>1?"s":""})`;return{errors:t,message:r}}function ys(e){return e===422?"validation":e===401||e===403?"auth":e>=400&&e<500?"business":e>=500?"server":"unknown"}function _s(e,t,n){if(e===422&&Array.isArray(t)){let{message:r}=yn(t);return r}if(typeof t=="string")return t;if(t&&typeof t=="object"&&"message"in t){let r=t.message;if(typeof r=="string")return r}return n}function ws(e){let t=e.status??0,n=e.statusText??"Unknown Error",r=e.detail,s=Cs(r);if(s)return new _n(s.message,{status:t,statusText:n,detail:r,requestId:s.request_id??e.requestId,request:e.request,requestMethod:e.requestMethod,data:e.data,errorCode:s.error_code,structuredDetails:s.details,suggestions:s.suggestions,links:s.links});let i=ys(t),o=_s(t,r,e.message),a={status:t,statusText:n,detail:r,requestId:e.requestId,request:e.request,requestMethod:e.requestMethod,data:e.data,code:e.code};if(i==="validation"&&Array.isArray(r)){let{errors:u}=yn(r);return new fs(o,{...a,validationErrors:u})}return i==="auth"?new gs(o,a):i==="business"?new vn(o,a):i==="server"?new hs(o,a):new bs(o,a)}var _n=class extends vn{constructor(e,t){super(e,t),this.isResourceError=!0,this.errorCode=t.errorCode,this.structuredDetails=t.structuredDetails,this.suggestions=t.suggestions,this.links=t.links}};function Cs(e){if(!e||typeof e!="object")return null;let t=e;return t.error_code&&typeof t.error_code=="string"&&t.message&&typeof t.message=="string"?{error_code:t.error_code,message:t.message,request_id:typeof t.request_id=="string"?t.request_id:void 0,details:t.details,suggestions:t.suggestions,links:t.links}:null}var vt=["2025-10-28","2026-01-21","2026-05-22","2026-06-23"],ks="2026-06-23",Ke=(0,bn.default)("phala::api-client");function Ss(e){return Object.entries(e).map(([t,n])=>` -H "${t}: ${n}"`).join(`
7
- `)}function Es(e){return e?` -d '${(typeof e=="string"?e:JSON.stringify(e,null,2)).replace(/'/g,"\\'")}'`:""}function rn(e,t,n,r){let s=[];n.forEach((a,u)=>{s.push(`${u}: ${a}`)});let i=s.join(`
4
+ `+i),e.push(s+"m+"+gt.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=os()+t+" "+e[0]}function os(){return X.inspectOpts.hideDate?"":new Date().toISOString()+" "}function as(...e){return process.stderr.write(ft.formatWithOptions(X.inspectOpts,...e)+`
5
+ `)}function is(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function cs(){return process.env.DEBUG}function ls(e){e.inspectOpts={};let t=Object.keys(X.inspectOpts);for(let n=0;n<t.length;n++)e.inspectOpts[t[n]]=X.inspectOpts[t[n]]}gt.exports=Rt()(X);var{formatters:Yt}=gt.exports;Yt.o=function(e){return this.inspectOpts.colors=this.useColors,ft.inspect(e,this.inspectOpts).split(`
6
+ `).map(t=>t.trim()).join(" ")};Yt.O=function(e){return this.inspectOpts.colors=this.useColors,ft.inspect(e,this.inspectOpts)}});var tn=ot((fu,It)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?It.exports=Qt():It.exports=en()});var vn=Kr(tn(),1);import{ofetch as us}from"ofetch";function nn(e){return{all:e=e||new Map,on:function(t,n){var r=e.get(t);r?r.push(n):e.set(t,[n])},off:function(t,n){var r=e.get(t);r&&(n?r.splice(r.indexOf(n)>>>0,1):e.set(t,[]))},emit:function(t,n){var r=e.get(t);r&&r.slice().map(function(s){s(n)}),(r=e.get("*"))&&r.slice().map(function(s){s(t,n)})}}}import{z as Z}from"zod";import{z as q}from"zod";import{z as $e}from"zod";import{z as C}from"zod";import{z as l}from"zod";import{z as p}from"zod";import{z as je}from"zod";import{anvil as on,base as an,mainnet as cn}from"viem/chains";import{z as b}from"zod";import{z as K}from"zod";import{z as J}from"zod";import{z as Ge}from"zod";import{z as Be}from"zod";import{z as g}from"zod";import{z as R}from"zod";import{z as _}from"zod";import zo from"crypto";import{z as ve}from"zod";import{z as ke}from"zod";import{z as te}from"zod";import{z as ne}from"zod";import{z as re}from"zod";import{z as _a}from"zod";import{z as We}from"zod";import{z as he}from"zod";import{z as un}from"zod";import{z as xe}from"zod";import{z as Te}from"zod";import{z as le}from"zod";import{z as pn}from"zod";import{z as ct}from"zod";import{z as et}from"zod";import{z as Fe}from"zod";import{z as P}from"zod";import{z as bi}from"zod";import{z as _i}from"zod";import{z as x}from"zod";import{z as Ie}from"zod";import{z as Oi}from"zod";import{z as V}from"zod";import{z as y}from"zod";import{z as qe}from"zod";import{z as Tt}from"zod";import{z as Q}from"zod";import{z as cr}from"zod";import{z as Ae}from"zod";import{z as de}from"zod";import{z as Oe}from"zod";import{z as Pt}from"zod";import{z as qt}from"zod";import{z as ze}from"zod";import{z as ee}from"zod";import{z as O}from"zod";import{z as w}from"zod";import{z as N}from"zod";import{z as A}from"zod";import{z as G}from"zod";import{createPublicClient as Fp,createWalletClient as Dp,http as Vp,parseEventLogs as Kp,parseEther as Mp}from"viem";import{privateKeyToAccount as Gp}from"viem/accounts";import{x25519 as bu}from"@noble/curves/ed25519";import{keccak256 as Xp,toBytes as Zp,toHex as Qp}from"viem";import{isHex as ed}from"viem";import{createPublicClient as nd,createWalletClient as rd,http as sd,custom as od}from"viem";import{privateKeyToAccount as id}from"viem/accounts";import{z as U}from"zod";import{createPublicClient as dd,createWalletClient as md,http as fd,parseEventLogs as gd,parseEther as hd}from"viem";import{privateKeyToAccount as vd}from"viem/accounts";import{z}from"zod";import{createPublicClient as kd,createWalletClient as Sd,http as Ed,parseEther as Ad}from"viem";import{privateKeyToAccount as Id}from"viem/accounts";import{z as F}from"zod";import{createPublicClient as qd,createWalletClient as $d,http as Od,parseEther as Nd}from"viem";import{privateKeyToAccount as Ud}from"viem/accounts";import{z as D}from"zod";import{createPublicClient as Kd,createWalletClient as Md,http as Hd,parseEther as Gd}from"viem";import{privateKeyToAccount as Wd}from"viem/accounts";import{z as Je}from"zod";import{createPublicClient as Yd,http as em}from"viem";import{createPublicClient as rm,http as sm}from"viem";import{createPublicClient as am,http as im}from"viem";import{createPublicClient as lm,http as um}from"viem";import{z as Xe}from"zod";import{z as Se}from"zod";import{z as fn}from"zod";import{z as Ze}from"zod";import{z as E}from"zod";import{z as _t}from"zod";import{z as tt}from"zod";import{z as ge}from"zod";import{z as B}from"zod";import{z as T}from"zod";import{z as at}from"zod";import{z as vl}from"zod";import{z as Y}from"zod";import{z as Qe}from"zod";import{z as se}from"zod";import{z as fe}from"zod";import{z as gn}from"zod";import{z as hn}from"zod";import{z as Re}from"zod";import{z as W}from"zod";import{z as ht}from"zod";import{z as bt}from"zod";import{z as ce}from"zod";import{z as k}from"zod";import{secp256k1 as wu}from"@noble/curves/secp256k1";var ps=Z.object({detail:Z.union([Z.string(),Z.array(Z.object({msg:Z.string(),type:Z.string().optional(),ctx:Z.record(Z.unknown()).optional(),loc:Z.array(Z.union([Z.string(),Z.number()])).optional(),input:Z.unknown().optional()}).passthrough()),Z.record(Z.unknown())]).optional(),type:Z.string().optional(),code:Z.string().optional()});function ds(e){if(!e||typeof e!="object")return;let t=e.request_id;return typeof t=="string"?t:void 0}function ms(e){return e?.headers?.get("X-Request-ID")??void 0}function rn(e){if(typeof e!="string")return;let t=e.trim().toUpperCase();return t.length>0?t:void 0}var be=class extends Error{constructor(e,t){super(e),this.name=this.constructor.name,this.status=t.status,this.statusText=t.statusText,this.detail=t.detail,this.requestId=t.requestId,this.request=t.request,this.requestMethod=t.requestMethod,this.data=t.data,this.code=t.code,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},vt=class it extends be{constructor(t,n){super(t,{status:n?.status??0,statusText:n?.statusText??"Unknown Error",detail:n?.detail||t,requestId:n?.requestId,request:n?.request,requestMethod:n?.requestMethod,data:n?.data,code:n?.code}),this.name="RequestError",this.isRequestError=!0,this.data=n?.data,this.request=n?.request,this.requestMethod=n?.requestMethod,this.response=n?.response,this.type=n?.type}static fromFetchError(t){let n=ds(t.data),r=ms(t.response),s=n??r,i=rn(t.options?.method),o=ps.safeParse(t.data);if(o.success){let u=o.data.detail??(t.data&&typeof t.data=="object"&&"error_code"in t.data?t.data:void 0);return new it(t.message,{status:t.status??void 0,statusText:t.statusText??void 0,data:t.data,request:t.request??void 0,requestMethod:i,response:t.response??void 0,detail:u,code:o.data.code??void 0,type:o.data.type??void 0,requestId:s})}if(t.cause?.name==="TimeoutError"||t.message?.includes("[TimeoutError]")){let u="Request timed out. The server did not respond in time.";return new it(u,{status:0,statusText:"Request Timeout",data:t.data,request:t.request??void 0,requestMethod:i,response:t.response??void 0,detail:u,code:"TIMEOUT",requestId:s})}return new it(t.message,{status:t.status??void 0,statusText:t.statusText??void 0,data:t.data,request:t.request??void 0,requestMethod:i,response:t.response??void 0,detail:t.data?.detail||t.message||"Unknown API error",code:t.status?.toString()??void 0,requestId:s})}static fromError(t,n,r){return new it(t.message,{request:n??void 0,requestMethod:rn(r),detail:t.message})}},fs=class extends be{constructor(e,t){super(e,t),this.isValidationError=!0,this.validationErrors=t.validationErrors}},gs=class extends be{constructor(){super(...arguments),this.isAuthError=!0}},yn=class extends be{constructor(){super(...arguments),this.isBusinessError=!0}},hs=class extends be{constructor(){super(...arguments),this.isServerError=!0}},bs=class extends be{constructor(){super(...arguments),this.isUnknownError=!0}};function vs(e){if(!e||!Array.isArray(e))return"unknown";let t=e.filter(n=>typeof n=="string"?!["body","query","path","header"].includes(n):!0);return t.length>0?t.join("."):"unknown"}function _n(e){if(!Array.isArray(e))return{errors:[],message:typeof e=="string"?e:"Validation error"};let t=e.map((s,i)=>{let o=vs(s.loc),a=o;return o==="unknown"&&s.type&&(a=s.type==="missing"?"required field":s.type),{field:a,message:s.msg,type:s.type,context:s.ctx}}),n=t.length,r=n===1?`Validation failed: ${t[0].message}`:`Validation failed (${n} issue${n>1?"s":""})`;return{errors:t,message:r}}function ys(e){return e===422?"validation":e===401||e===403?"auth":e>=400&&e<500?"business":e>=500?"server":"unknown"}function _s(e,t,n){if(e===422&&Array.isArray(t)){let{message:r}=_n(t);return r}if(typeof t=="string")return t;if(t&&typeof t=="object"&&"message"in t){let r=t.message;if(typeof r=="string")return r}return n}function ws(e){let t=e.status??0,n=e.statusText??"Unknown Error",r=e.detail,s=Cs(r);if(s)return new wn(s.message,{status:t,statusText:n,detail:r,requestId:s.request_id??e.requestId,request:e.request,requestMethod:e.requestMethod,data:e.data,errorCode:s.error_code,structuredDetails:s.details,suggestions:s.suggestions,links:s.links});let i=ys(t),o=_s(t,r,e.message),a={status:t,statusText:n,detail:r,requestId:e.requestId,request:e.request,requestMethod:e.requestMethod,data:e.data,code:e.code};if(i==="validation"&&Array.isArray(r)){let{errors:u}=_n(r);return new fs(o,{...a,validationErrors:u})}return i==="auth"?new gs(o,a):i==="business"?new yn(o,a):i==="server"?new hs(o,a):new bs(o,a)}var wn=class extends yn{constructor(e,t){super(e,t),this.isResourceError=!0,this.errorCode=t.errorCode,this.structuredDetails=t.structuredDetails,this.suggestions=t.suggestions,this.links=t.links}};function Cs(e){if(!e||typeof e!="object")return null;let t=e;return t.error_code&&typeof t.error_code=="string"&&t.message&&typeof t.message=="string"?{error_code:t.error_code,message:t.message,request_id:typeof t.request_id=="string"?t.request_id:void 0,details:t.details,suggestions:t.suggestions,links:t.links}:null}var wt=["2025-10-28","2026-01-21","2026-05-22","2026-06-23"],ks="2026-06-23",He=(0,vn.default)("phala::api-client");function Ss(e){return Object.entries(e).map(([t,n])=>` -H "${t}: ${n}"`).join(`
7
+ `)}function Es(e){return e?` -d '${(typeof e=="string"?e:JSON.stringify(e,null,2)).replace(/'/g,"\\'")}'`:""}function sn(e,t,n,r){let s=[];n.forEach((a,u)=>{s.push(`${u}: ${a}`)});let i=s.join(`
8
8
  `),o=typeof r=="string"?r:JSON.stringify(r,null,2);return[`< HTTP/1.1 ${e} ${t}`,i?`< ${i.replace(/\n/g,`
9
9
  < `)}`:"","",o].filter(Boolean).join(`
10
- `)}var As=class wn{constructor(t={}){this.emitter=tn();let n=t.apiKey||process?.env?.PHALA_CLOUD_API_KEY,r=t.baseURL||process?.env?.PHALA_CLOUD_API_PREFIX||"https://cloud-api.phala.com/api/v1",s=t.version&&vt.includes(t.version)?t.version:ks;this.config={...t,apiKey:n,baseURL:r,version:s};let{apiKey:i,baseURL:o,timeout:a,headers:u,useCookieAuth:f,onResponseError:d,...m}=this.config,h={"X-Phala-Version":s,"Content-Type":"application/json"};u&&typeof u=="object"&&Object.entries(u).forEach(([_,S])=>{typeof S=="string"&&(h[_]=S)}),!f&&i&&(h["X-API-Key"]=i),this.fetchInstance=us.create({baseURL:o,timeout:a||6e4,headers:h,...f?{credentials:"include"}:{},...m,onRequest({request:_,options:S}){if(S.body instanceof FormData){let I=S.headers;I instanceof Headers?I.delete("content-type"):I&&typeof I=="object"&&!Array.isArray(I)&&(delete I["Content-Type"],delete I["content-type"])}if(Ke.enabled){let I=S.method||"GET",O=typeof _=="string"?_:_.url,se=O.startsWith("http")?O:`${o}${O}`,ge={};S.headers&&typeof S.headers=="object"&&Object.entries(S.headers).forEach(([ke,je])=>{typeof je=="string"&&(ge[ke]=je)});let Pe=[`> curl -X ${I} "${se}"`,Ss(ge),S.body?Es(S.body):""].filter(Boolean).join(`
11
- `);Ke(`
10
+ `)}var As=class Cn{constructor(t={}){this.emitter=nn();let n=t.apiKey||process?.env?.PHALA_CLOUD_API_KEY,r=t.bearerToken||process?.env?.PHALA_OIDC_TOKEN,s=t.workspace||process?.env?.PHALA_CLOUD_WORKSPACE,i=t.baseURL||process?.env?.PHALA_CLOUD_API_PREFIX||"https://cloud-api.phala.com/api/v1",o=t.version&&wt.includes(t.version)?t.version:ks;this.config={...t,apiKey:n,bearerToken:r,workspace:s,baseURL:i,version:o};let{apiKey:a,bearerToken:u,workspace:f,baseURL:d,timeout:m,headers:h,useCookieAuth:I,onResponseError:ie,...H}=this.config,L={"X-Phala-Version":o,"Content-Type":"application/json"};h&&typeof h=="object"&&Object.entries(h).forEach(([$,S])=>{typeof S=="string"&&(L[$]=S)}),!I&&a?L["X-API-Key"]=a:!I&&u&&(L.Authorization=`Bearer ${u}`),f&&typeof f=="string"&&f.trim().length>0&&(L["X-Phala-Workspace"]=f.trim()),this.fetchInstance=us.create({baseURL:d,timeout:m||6e4,headers:L,...I?{credentials:"include"}:{},...H,onRequest({request:$,options:S}){if(S.body instanceof FormData){let M=S.headers;M instanceof Headers?M.delete("content-type"):M&&typeof M=="object"&&!Array.isArray(M)&&(delete M["Content-Type"],delete M["content-type"])}if(He.enabled){let M=S.method||"GET",oe=typeof $=="string"?$:$.url,Ce=oe.startsWith("http")?oe:`${d}${oe}`,Pe={};S.headers&&typeof S.headers=="object"&&Object.entries(S.headers).forEach(([ut,pt])=>{typeof pt=="string"&&(Pe[ut]=pt)});let De=[`> curl -X ${M} "${Ce}"`,Ss(Pe),S.body?Es(S.body):""].filter(Boolean).join(`
11
+ `);He(`
12
12
  === REQUEST ===
13
13
  %s
14
- `,Pe)}},onResponse({request:_,response:S,options:I}){if(Ke.enabled){let O=I.method||"GET",se=typeof _=="string"?_:_.url;Ke(`
14
+ `,De)}},onResponse({request:$,response:S,options:M}){if(He.enabled){let oe=M.method||"GET",Ce=typeof $=="string"?$:$.url;He(`
15
15
  === RESPONSE [%s %s] (%dms) ===
16
16
  %s
17
- `,O,se,S.headers.get("x-response-time")||"?",rn(S.status,S.statusText,S.headers,S._data))}},onResponseError:({request:_,response:S,options:I})=>{if(Ke.enabled){console.warn(`HTTP ${S.status}: ${S.url}`);let O=I.method||"GET",se=typeof _=="string"?_:_.url;Ke(`
17
+ `,oe,Ce,S.headers.get("x-response-time")||"?",sn(S.status,S.statusText,S.headers,S._data))}},onResponseError:({request:$,response:S,options:M})=>{if(He.enabled){console.warn(`HTTP ${S.status}: ${S.url}`);let oe=M.method||"GET",Ce=typeof $=="string"?$:$.url;He(`
18
18
  === ERROR RESPONSE [%s %s] ===
19
19
  %s
20
- `,O,se,rn(S.status,S.statusText,S.headers,S._data))}d&&d({request:_,response:S,options:I})}})}get raw(){return this.fetchInstance}on(t,n){this.emitter.on(t,n)}off(t,n){this.emitter.off(t,n)}once(t,n){let r=s=>{n(s),this.emitter.off(t,r)};this.emitter.on(t,r)}async request(t,n){try{let r=n?.method||"GET";return await this.fetchInstance(t,{...n,method:r})}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}async requestFull(t,n){try{let r=n?.method||"GET",s=await this.fetchInstance.raw(t,{...n,method:r,ignoreResponseError:!0});return{status:s.status,statusText:s.statusText,headers:s.headers,data:s._data,ok:s.ok}}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}async get(t,n){try{return await this.fetchInstance(t,{...n,method:"GET"})}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}buildRequestOptions(t,n,r){let s={...r,method:t,body:n};if(n instanceof FormData){let i=s.headers;s.headers={...i,"Content-Type":""}}return s}async post(t,n,r){try{return await this.fetchInstance(t,this.buildRequestOptions("POST",n,r))}catch(s){let i=this.convertToRequestError(s);throw this.emitError(i)}}async put(t,n,r){try{return await this.fetchInstance(t,this.buildRequestOptions("PUT",n,r))}catch(s){let i=this.convertToRequestError(s);throw this.emitError(i)}}async patch(t,n,r){try{return await this.fetchInstance(t,this.buildRequestOptions("PATCH",n,r))}catch(s){let i=this.convertToRequestError(s);throw this.emitError(i)}}async delete(t,n){try{return await this.fetchInstance(t,{...n,method:"DELETE"})}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}convertToRequestError(t){return t&&typeof t=="object"&&"data"in t?gt.fromFetchError(t):t instanceof Error?gt.fromError(t):new gt("Unknown error occurred",{detail:"Unknown error occurred"})}emitError(t){let n=ws(t);return this.emitter.emit("error",n),n}async safeRequest(t){try{return{success:!0,data:await t()}}catch(n){if(n instanceof fe)return{success:!1,error:n};let r=this.convertToRequestError(n);return this.emitError(r),{success:!1,error:r}}}async safeGet(t,n){return this.safeRequest(()=>this.get(t,n))}async safePost(t,n,r){return this.safeRequest(()=>this.post(t,n,r))}async safePut(t,n,r){return this.safeRequest(()=>this.put(t,n,r))}async safePatch(t,n,r){return this.safeRequest(()=>this.patch(t,n,r))}async safeDelete(t,n){return this.safeRequest(()=>this.delete(t,n))}async safeRequestMethod(t,n){return this.safeRequest(()=>this.request(t,n))}async safeRequestFull(t,n){return this.safeRequest(()=>this.requestFull(t,n))}withVersion(t){return new wn({...this.config,version:t})}extend(t){let n=typeof t=="function"?t(this):t,r=Object.create(this);for(let[s,i]of Object.entries(n))typeof i=="function"&&(r[s]=(...o)=>i(this,...o));return r}};function Rs(e={}){return new As(e)}var Is=$.object({username:$.string(),email:$.string(),role:$.enum(["admin","user"]),avatar:$.string(),email_verified:$.boolean(),totp_enabled:$.boolean(),has_backup_codes:$.boolean(),flag_has_password:$.boolean()}).passthrough(),xs=$.object({id:$.string(),name:$.string(),slug:$.string().nullable(),tier:$.string(),role:$.string(),avatar:$.string().nullable().optional()}).passthrough(),Ts=$.object({balance:$.string().or($.number()),granted_balance:$.string().or($.number()),is_post_paid:$.boolean(),outstanding_amount:$.string().or($.number()).nullable()}).passthrough(),Ps=$.object({user:Is,workspace:xs,credits:Ts}).passthrough(),js=qe.object({username:qe.string(),email:qe.string(),credits:qe.number(),granted_credits:qe.number(),avatar:qe.string(),team_name:qe.string(),team_tier:qe.string()}).passthrough();function qs(e){return e==="2025-10-28"?js:Ps}async function Cn(e,t){let n=await e.get("/auth/me");return t?.schema===!1?n:(t?.schema||qs(e.config.version)).parse(n)}async function $s(e,t){try{return{success:!0,data:await Cn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var kn={[an.id]:an,[on.id]:on,[sn.id]:sn},Os=xe.object({id:xe.string(),slug:xe.string().nullable(),url:xe.string(),version:xe.string(),chain_id:xe.number().nullable(),kms_contract_address:xe.string().nullable().transform(e=>e),gateway_app_id:xe.string().nullable().transform(e=>e),k256_pubkey:xe.string().nullable().optional()}).passthrough(),be=Os.transform(e=>{if(e.chain_id!=null){let t=kn[e.chain_id];if(t)return{...e,chain:t}}return e}),Sn=p.union([p.number(),p.string()]),Ns=p.object({id:p.string(),name:p.string(),status:p.string(),uptime:p.string(),app_url:p.string().nullable(),app_id:p.string(),instance_id:p.string().nullable(),configuration:p.any().optional(),exited_at:p.string().nullable(),boot_progress:p.string().nullable(),boot_error:p.string().nullable(),shutdown_progress:p.string().nullable(),image_version:p.string().nullable()}),Ls=p.object({id:Sn,username:p.string()}),En=p.object({id:p.number(),name:p.string(),region_identifier:p.string().nullable().optional()}),jt=p.object({vcpu:p.number(),memory:p.number(),disk_size:p.number(),gpu_count:p.number().default(0)}),qt=p.object({app:p.string(),instance:p.string()}),Us=p.object({hosted:Ns,name:p.string(),managed_user:Ls.nullable(),node:En.nullable(),listed:p.boolean().default(!1),status:p.string(),in_progress:p.boolean().default(!1),dapp_dashboard_url:p.string().nullable(),syslog_endpoint:p.string().nullable(),allow_upgrade:p.boolean().default(!1),project_id:p.string().nullable(),project_type:p.string().nullable(),billing_period:p.string().nullable(),kms_info:be.nullable(),vcpu:p.number().nullable(),memory:p.number().nullable(),disk_size:p.number().nullable(),gateway_domain:p.string().nullable(),public_urls:p.array(qt),machine_info:jt.nullable().optional(),updated_at:p.string().nullable().optional()}),An=p.object({id:Sn,name:p.string(),status:p.string(),in_progress:p.boolean().optional().default(!1),teepod_id:p.number().nullable(),teepod:En.optional().nullable(),app_id:p.string(),vm_uuid:p.string().nullable(),instance_id:p.string().nullable(),vcpu:p.number(),memory:p.number(),disk_size:p.number(),base_image:p.string().nullable(),encrypted_env_pubkey:p.string().nullable(),listed:p.boolean().optional().default(!1),project_id:p.string().optional().nullable(),project_type:p.string().optional().nullable(),instance_type:p.string().optional().nullable(),public_sysinfo:p.boolean().optional().default(!1),public_logs:p.boolean().optional().default(!1),managed_env:p.boolean().optional().default(!1),dapp_dashboard_url:p.string().optional().nullable(),syslog_endpoint:p.string().optional().nullable(),kms_info:be.optional().nullable(),contract_address:p.string().optional().nullable(),deployer_address:p.string().optional().nullable(),scheduled_delete_at:p.string().optional().nullable(),public_urls:p.array(qt).optional().default([]),gateway_domain:p.string().optional().nullable(),machine_info:jt.optional().nullable(),updated_at:p.string().optional().nullable()}),zs=p.object({items:p.array(Us),total:p.number(),page:p.number(),page_size:p.number(),pages:p.number()}),Fs=l.enum(["skip","hourly","monthly"]),Ds=l.enum(["phala","ethereum","base","legacy"]),$t=l.object({object_type:l.literal("user"),id:l.string().nullable().optional(),username:l.string().nullable().optional(),avatar_url:l.string().nullable().optional()}),Ot=l.object({object_type:l.literal("workspace"),id:l.string(),name:l.string(),slug:l.string().nullable().optional(),avatar_url:l.string().nullable().optional()}),Vs=l.object({instance_type:l.string().nullable().optional(),vcpu:l.number().int().nullable().optional(),memory_in_gb:l.number().nullable().optional(),disk_in_gb:l.number().int().nullable().optional(),gpus:l.number().int().nullable().optional(),compute_billing_price:l.string().nullable().optional(),billing_period:Fs.nullable().optional()}),Ms=l.object({total:l.string().nullable().optional(),compute:l.string().nullable().optional(),disk:l.string().nullable().optional()}),Ks=l.object({order_id:l.string(),status:l.string(),pricing_plan:l.string().nullable().optional(),commitment_days:l.number().int().nullable().optional(),auto_renew:l.boolean().optional().default(!1),expires_at:l.string().nullable().optional(),renewal_in_progress:l.boolean().optional().default(!1),renewal_next_attempt_at:l.string().nullable().optional(),agreed_hourly_rate:l.string().nullable().optional(),hourly_billing_start_time:l.string().nullable().optional(),activated_at:l.string().nullable().optional(),completed_at:l.string().nullable().optional(),cancelled_at:l.string().nullable().optional(),decoupled_at:l.string().nullable().optional(),sku_code:l.string().nullable().optional(),sku_display_name:l.string().nullable().optional()}),Hs=l.object({name:l.string().nullable().optional(),version:l.string().nullable().optional(),is_dev:l.boolean().nullable().optional(),os_image_hash:l.string().nullable().optional()}),Gs=l.object({chain_id:l.number().int().nullable().optional(),dstack_kms_address:l.string().nullable().optional(),dstack_app_address:l.string().nullable().optional(),deployer_address:l.string().nullable().optional(),rpc_endpoint:l.string().nullable().optional(),encrypted_env_pubkey:l.string().nullable().optional()}),Bs=Gs.transform(e=>{if(e.chain_id!=null){let t=kn[e.chain_id];if(t)return{...e,chain:t}}return e}),Ws=l.object({target:l.string().nullable().optional(),started_at:l.string().nullable().optional(),correlation_id:l.string().nullable().optional()}),Js=l.object({base_domain:l.string().nullable().optional(),cname:l.string().nullable().optional()}),Xs=l.object({serial:l.string().nullable().optional(),stdout:l.string().nullable().optional(),stderr:l.string().nullable().optional(),container_log_base:l.string().nullable().optional()}),Rn=l.object({device_id:l.string(),algorithm_version:l.string(),enabled:l.boolean()}),In=l.object({object_type:l.literal("node"),id:l.number().int().nullable().optional(),name:l.string().nullable().optional(),region:l.string().nullable().optional(),device_id:l.string().nullable().optional(),device_ids:l.array(Rn).default([]),ppid:l.string().nullable().optional(),status:l.string().nullable().optional(),version:l.string().nullable().optional()});var it=l.object({id:l.string(),name:l.string(),app_id:l.string().nullable().optional(),vm_uuid:l.string().nullable().optional(),instance_id:l.string().nullable().optional(),resource:Vs,node_info:In.nullable().optional(),os:Hs.nullable().optional(),kms_type:Ds.nullable().optional(),kms_info:Bs.nullable().optional(),status:l.string(),in_progress:l.boolean().optional().default(!1),progress:Ws.nullable().optional(),compose_hash:l.string().nullable().optional(),docker_compose_hash:l.string().nullable().optional(),pre_launch_script_hash:l.string().nullable().optional(),gateway:Js,logs:Xs.optional().default({}),services:l.array(l.record(l.any())).optional().default([]),endpoints:l.array(qt).nullable().optional(),public_logs:l.boolean().optional(),public_sysinfo:l.boolean().optional(),public_tcbinfo:l.boolean().optional(),gateway_enabled:l.boolean().optional(),secure_time:l.boolean().optional(),managed_env:l.boolean().optional().default(!1),listed:l.boolean().optional().default(!1),storage_fs:l.string().optional(),workspace:Ot.nullable().optional(),creator:$t.nullable().optional(),created_at:l.string().nullable().optional(),deleted_at:l.string().nullable().optional(),project_type:l.string().nullable().optional(),hourly_rate:Ms.nullable().optional(),billing_interval:l.string().nullable().optional(),gpu_rental_order:Ks.nullable().optional()}),ht=it.extend({id:l.string()}),Zs=it.extend({compose_file:l.union([l.record(l.any()),l.string()]).nullable().optional()}),Qs=ht.extend({compose_file:l.union([l.record(l.any()),l.string()]).nullable().optional()}),xn=l.object({items:l.array(it),total:l.number(),page:l.number(),page_size:l.number(),pages:l.number()}),Ys=xn.extend({items:l.array(ht)});function Tn(e){if(e?.schema!==void 0&&e?.schema!==!1&&(typeof e.schema!="object"||e.schema===null||!("parse"in e.schema)||typeof e.schema.parse!="function"))throw new Error("Invalid schema: must be a Zod schema object, false, or undefined")}function Pn(e){if(e?.schema!==void 0&&e?.schema!==!1&&(typeof e.schema!="object"||e.schema===null||!("parse"in e.schema)||typeof e.schema.parse!="function"))return{success:!1,error:{name:"ZodError",message:"Invalid schema: must be a Zod schema object, false, or undefined",issues:[{code:"invalid_type",expected:"object",received:typeof e.schema,path:["schema"],message:"Invalid schema: must be a Zod schema object, false, or undefined"}]}}}function Nt(e,t){function n(o,a){return r(o,a)}async function r(o,a){Tn(a);let u=await t(o);return a?.schema===!1?u:(a?.schema||e).parse(u)}function s(o,a){return i(o,a)}async function i(o,a){let u=Pn(a);if(u)return u;let f=await(async()=>{try{return{success:!0,data:await t(o)}}catch(m){return m&&typeof m=="object"&&"status"in m?{success:!1,error:m}:m&&typeof m=="object"&&"issues"in m?{success:!1,error:m}:{success:!1,error:{name:"Error",message:m instanceof Error?m.message:String(m)}}}})();return f.success?a?.schema===!1?{success:!0,data:f.data}:(a?.schema||e).safeParse(f.data):f}return{action:n,safeAction:s}}function v(e,t){function n(o,...a){let[u,f]=a;return r(o,u,f)}async function r(o,a,u){Tn(u);let f=await t(o,a);return u?.schema===!1?f:(u?.schema||e).parse(f)}function s(o,...a){let[u,f]=a;return i(o,u,f)}async function i(o,a,u){let f=Pn(u);if(f)return f;let d=await(async()=>{try{return{success:!0,data:await t(o,a)}}catch(h){return h&&typeof h=="object"&&"status"in h?{success:!1,error:h}:h&&typeof h=="object"&&"issues"in h?{success:!1,error:h}:{success:!1,error:{name:"Error",message:h instanceof Error?h.message:String(h)}}}})();return d.success?u?.schema===!1?{success:!0,data:d.data}:(u?.schema||e).safeParse(d.data):d}return{action:n,safeAction:s}}var eo=k.object({name:k.string(),is_dev:k.boolean(),version:k.union([k.tuple([k.number(),k.number(),k.number()]),k.tuple([k.number(),k.number(),k.number(),k.number()])]),os_image_hash:k.string().nullable().optional()}).passthrough(),jn=k.object({teepod_id:k.number(),name:k.string(),listed:k.boolean(),resource_score:k.number(),remaining_vcpu:k.number(),remaining_memory:k.number(),remaining_cvm_slots:k.number(),images:k.array(eo),support_onchain_kms:k.boolean().optional(),fmspc:k.string().nullable().optional(),device_id:k.string().nullable().optional(),device_ids:k.array(Rn).default([]),region_identifier:k.string().nullable().optional(),default_kms:k.string().nullable().optional(),kms_list:k.array(k.string()).default([])}).passthrough(),qn=k.object({max_instances:k.number().nullable().optional(),max_vcpu:k.number().nullable().optional(),max_memory:k.number().nullable().optional(),max_disk:k.number().nullable().optional()}).passthrough(),to=k.object({tier:k.string(),capacity:qn,nodes:k.array(jn),kms_list:k.array(be)}).passthrough(),{action:no,safeAction:ro}=Nt(to,async e=>await e.get("/teepods/available")),tt=b.union([b.number(),b.string()]),nt=b.string(),so=b.object({has_reserved_gpus:b.boolean(),reserved_gpu_count:b.number(),has_public_gpus:b.boolean(),public_gpu_count:b.number()}).passthrough(),$n=b.object({id:tt,slug:b.string().nullable().optional(),url:b.string(),version:b.string().nullable().optional(),kms_type:b.string(),chain_id:b.number().nullable().optional(),kms_contract_id:tt.nullable().optional(),kms_contract_address:b.string().nullable().optional(),gateway_app_id:b.string().nullable().optional(),supported_os_images:b.array(b.string()).default([])}).passthrough(),On=b.object({teepod_id:b.number(),kms_id:tt,kms_type:b.string(),kms_contract_id:tt.nullable().optional(),kms_contract_address:b.string().nullable().optional(),supported_os_images:b.array(b.string()).default([])}).passthrough(),Nn=b.object({id:tt,teepod_id:b.number().nullable().optional(),kms_contract_id:tt,rpc_url:b.string().nullable().optional(),domain_suffix:b.string().nullable().optional(),enabled:b.boolean()}).passthrough(),oo=$n.extend({id:nt,kms_contract_id:nt.nullable().optional()}),ao=On.extend({kms_id:nt,kms_contract_id:nt.nullable().optional()}),io=Nn.extend({id:nt,kms_contract_id:nt}),co=b.object({id:b.string(),name:b.string(),vcpu:b.number(),memory_mb:b.number(),default_disk_size_gb:b.number(),requires_gpu:b.boolean(),requires_gpu_count:b.number(),family:b.string().nullable().optional(),display_order:b.number().nullable().optional()}).passthrough(),Ln=b.object({tier:b.string(),capacity:qn,nodes:b.array(jn),kms_nodes:b.array($n),node_kms_relations:b.array(On),gateway_nodes:b.array(Nn),instance_types:b.array(co),gpu_availability:so}).passthrough(),lo=Ln.extend({kms_nodes:b.array(oo),node_kms_relations:b.array(ao),gateway_nodes:b.array(io)});function Un(e){return e==="2026-01-21"?Ln:lo}async function uo(e,t){let n=await e.get("/teepods/cvm-create-resources");return t?.schema===!1?n:(t?.schema||Un(e.config.version)).parse(n)}async function po(e,t){try{let n=await e.get("/teepods/cvm-create-resources");return t?.schema===!1?{success:!0,data:n}:{success:!0,data:(t?.schema||Un(e.config.version)).parse(n)}}catch(n){return{success:!1,error:n}}}var zn=M.object({id:M.string(),name:M.string(),description:M.string(),vcpu:M.number(),memory_mb:M.number(),hourly_rate:M.string(),requires_gpu:M.boolean(),default_disk_size_gb:M.number().default(20),family:M.string().nullable()}).passthrough(),mo=M.object({name:M.string(),items:M.array(zn),total:M.number()}).strict(),fo=M.object({result:M.array(mo)}).strict(),go=M.object({items:M.array(zn),total:M.number(),family:M.string()}).strict(),ho=M.object({family:M.string()}).strict(),{action:bo,safeAction:vo}=v(fo,async e=>await e.get("/instance-types")),{action:yo,safeAction:_o}=v(go,async(e,t)=>{let n=ho.parse(t);return await e.get(`/instance-types/${n.family}`)}),Fn=B.object({id:B.string(),name:B.string(),slug:B.string().nullable(),avatar_url:B.string().nullable().optional(),description:B.string().nullable().optional(),tier:B.string(),role:B.string(),is_default:B.boolean(),created_at:B.string(),confidential_models_enabled:B.boolean().optional(),billing_status:B.enum(["active","suspended","abandoned"]).default("active"),suspended_at:B.string().nullable().optional()}).passthrough(),wo=B.object({has_more:B.boolean(),next_cursor:B.string().nullable(),total:B.number().nullable()}).passthrough(),Co=B.object({data:B.array(Fn),pagination:wo}).passthrough(),{action:ko,safeAction:So}=v(Co,async(e,t)=>{let n=new URLSearchParams;t?.cursor&&n.append("cursor",t.cursor),t?.limit&&n.append("limit",t.limit.toString());let r=n.toString()?`/workspaces?${n.toString()}`:"/workspaces";return await e.get(r)}),{action:Eo,safeAction:Ao}=v(Fn,async(e,t)=>await e.get(`/workspaces/${t}`));function Dn(e){return typeof e!="string"||e.length<5||e.length>63?!1:/^[a-zA-Z](?!.*--)([a-zA-Z0-9-]*[a-zA-Z0-9])?$/.test(e)}var re=He.object({id:He.string().optional(),uuid:He.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i,"Invalid UUID format").optional(),app_id:He.string().optional(),instance_id:He.string().optional(),name:He.string().refine(Dn,{message:"Name must be 5-63 characters, start with letter, and contain only letters/numbers/hyphens"}).optional()}),ue=e=>e.refine(t=>{let n=t;return!!(n.id||n.uuid||n.app_id||n.instance_id||n.name)},{message:"One of id, uuid, app_id, instance_id, or name must be provided"}),Ro=ue(re),q=Ro.transform(e=>{let t;if(e.id)t=e.id;else if(e.uuid)t=e.uuid;else if(e.app_id)t=e.app_id;else if(e.instance_id)t=e.instance_id;else{if(e.name)return{cvmId:e.name};throw new Error("No valid identifier provided")}let n=/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i,r=/^[0-9a-f]{40}$/i,s;return n.test(t)?s=t.replace(/-/g,""):r.test(t)?s=`app_${t}`:s=t,{cvmId:s}}),Io=q;function xo(e){return e==="2025-10-28"?An:e==="2026-01-21"?Zs:Qs}async function Vn(e,t){let{cvmId:n}=Io.parse(t),r=await e.get(`/cvms/${n}`);return xo(e.config.version).parse(r)}async function yt(e,t){try{return{success:!0,data:await Vn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var To=Ge.object({page:Ge.number().int().min(1).optional(),page_size:Ge.number().int().min(1).optional(),family:Ge.enum(["all","cpu","gpu"]).optional(),instance_types:Ge.array(Ge.string()).optional()}).strict();function Po(e){return e==="2025-10-28"?zs:e==="2026-01-21"?xn:Ys}async function Mn(e,t){let n=To.parse(t??{}),r=await e.get("/cvms/paginated",{params:n});return Po(e.config.version).parse(r)}async function Lt(e,t){try{return{success:!0,data:await Mn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var cn=200*1024;function Kn(e,t,n){let r=new TextEncoder,s=e?r.encode(e).byteLength:0,i=t?r.encode(t).byteLength:0,o=s+i;if(o>cn){let a=cn/1024,u=Math.ceil(o/1024);n.addIssue({code:x.ZodIssueCode.custom,message:`Combined size of docker_compose_file and pre_launch_script must not exceed ${a}KB (current: ${u}KB)`})}}var Hn=x.object({allowed_envs:x.array(x.string()).optional(),docker_compose_file:x.string(),features:x.array(x.string()).optional(),name:x.string().optional(),manifest_version:x.number().optional(),runner:x.string().optional(),kms_enabled:x.boolean().optional(),gateway_enabled:x.boolean().optional(),tproxy_enabled:x.boolean().optional(),local_key_provider_enabled:x.boolean().optional(),key_provider:x.enum(["none","kms","local","tpm"]).optional(),key_provider_id:x.string().optional(),public_logs:x.boolean().optional(),public_sysinfo:x.boolean().optional(),public_tcbinfo:x.boolean().optional(),no_instance_id:x.boolean().optional(),secure_time:x.boolean().optional(),port_policy:x.object({ports:x.array(x.object({port:x.number().int().min(1).max(65535),pp:x.boolean()})),restrict_mode:x.boolean()}).optional(),storage_fs:x.enum(["ext4","zfs"]).optional(),swap_size:x.string().optional(),pre_launch_script:x.string().optional(),env_pubkey:x.string().optional(),salt:x.string().optional().nullable()}).passthrough().superRefine((e,t)=>{Kn(e.docker_compose_file,e.pre_launch_script,t)}),jo=g.object({app_id:g.string().nullable().optional(),app_env_encrypt_pubkey:g.string().nullable().optional(),compose_hash:g.string(),kms_info:be.nullable().optional(),fmspc:g.string().nullable().optional(),device_id:g.string().nullable().optional(),os_image_hash:g.string().nullable().optional(),instance_type:g.string().nullable().optional(),teepod_id:g.number().nullable().optional(),node_id:g.number().nullable().optional(),kms_id:g.string().nullable().optional(),kms_contract_id:g.union([g.string(),g.number()]).nullable().optional()}).passthrough().transform(e=>{if("teepod_id"in e&&e.teepod_id!==void 0){let{teepod_id:t,...n}=e;return{...n,node_id:t}}return e}),Rt="Name must be 5-63 characters, start with letter, and contain only letters/numbers/hyphens",qo=g.object({node_id:g.number().optional(),teepod_id:g.number().optional(),region:g.string().optional(),name:g.string().min(5,Rt).max(63,Rt).refine(e=>Dn(e),Rt),instance_type:g.string().optional(),image:g.string().optional(),vcpu:g.number().optional(),memory:g.number().optional(),disk_size:g.number().optional(),compose_file:g.object({allowed_envs:g.array(g.string()).optional(),pre_launch_script:g.string().optional(),docker_compose_file:g.string().optional(),name:g.string().optional().default(""),kms_enabled:g.boolean().optional(),gateway_enabled:g.boolean().optional(),tproxy_enabled:g.boolean().optional(),local_key_provider_enabled:g.boolean().optional(),key_provider:g.enum(["none","kms","local","tpm"]).optional(),key_provider_id:g.string().optional(),public_logs:g.boolean().optional(),public_sysinfo:g.boolean().optional(),public_tcbinfo:g.boolean().optional(),no_instance_id:g.boolean().optional(),secure_time:g.boolean().optional(),storage_fs:g.enum(["ext4","zfs"]).optional(),swap_size:g.string().optional(),port_policy:g.object({ports:g.array(g.object({port:g.number(),pp:g.boolean()})),restrict_mode:g.boolean()}).optional()}).passthrough().superRefine((e,t)=>{Kn(e.docker_compose_file,e.pre_launch_script,t)}),listed:g.boolean().optional(),kms_id:g.string().optional(),kms:g.enum(["PHALA","ETHEREUM","BASE"]).optional(),kms_contract:g.string().optional(),kms_contract_id:g.union([g.string(),g.number()]).optional(),key_provider_mode:g.enum(["kms","local"]).optional(),skip_gateway:g.boolean().optional(),env_keys:g.array(g.string()).optional(),nonce:g.number().optional(),app_id:g.string().optional()}).passthrough().transform(e=>!e.instance_type&&!e.vcpu&&!e.memory?{...e,instance_type:"tdx.small"}:e);function $o(e){if(!e.compose_file)return e;let t={...e.compose_file};return typeof t.gateway_enabled=="boolean"&&typeof t.tproxy_enabled=="boolean"?delete t.tproxy_enabled:typeof t.tproxy_enabled=="boolean"&&typeof t.gateway_enabled>"u"&&(t.gateway_enabled=t.tproxy_enabled,delete t.tproxy_enabled,(typeof window<"u"?window.console:globalThis.console)&&console.warn("[phala/cloud] tproxy_enabled is deprecated, please use gateway_enabled instead. See docs for migration.")),{...e,compose_file:t}}var{action:Oo,safeAction:No}=v(jo,async(e,t)=>{let n=qo.parse(t),r=$o(n);return typeof r.teepod_id=="number"&&typeof r.node_id!="number"&&console.warn("[phala/cloud] teepod_id is deprecated, please use node_id instead."),await e.post("/cvms/provision",r)}),Gn=w.object({name:w.string(),status:w.string(),teepod_id:w.number(),teepod:w.object({id:w.number(),name:w.string()}).nullable(),app_id:w.string().nullable(),vm_uuid:w.string().nullable(),instance_id:w.string().nullable(),app_url:w.string().nullable().default(null),base_image:w.string().nullable(),vcpu:w.number(),memory:w.number(),disk_size:w.number(),manifest_version:w.number().nullable().default(2),version:w.string().nullable().default("1.0.0"),runner:w.string().nullable().default("docker-compose"),docker_compose_file:w.string().nullable(),features:w.array(w.string()).nullable().default(["kms","tproxy-net"]),created_at:w.string(),encrypted_env_pubkey:w.string().nullable().optional(),app_auth_contract_address:w.string().nullable().optional(),deployer_address:w.string().nullable().optional()}).passthrough(),Bn=Gn.extend({id:w.number(),user_id:w.number().nullable()}),Wn=Gn.extend({id:w.string(),user_id:w.string().nullable()}),Hu=w.union([Bn,Wn]);var Gu=w.object({encrypted_env:w.string().optional().nullable(),app_id:w.string(),compose_hash:w.string(),kms_id:w.string().optional(),kms_contract_id:w.union([w.string(),w.number()]).optional(),contract_address:w.string().optional(),deployer_address:w.string().optional(),env_keys:w.array(w.string()).optional().nullable()}).passthrough();function Lo(e){return e==="2026-01-21"?Bn:Wn}async function Jn(e,t){let n=await e.post("/cvms",t);return Lo(e.config.version).parse(n)}async function Uo(e,t){try{return{success:!0,data:await Jn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}function Tt(e){return e==null?e:Array.isArray(e)?e.map(Tt):e&&typeof e=="object"&&e.constructor===Object?Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return t[n]=Tt(r),t},{}):e}function Xn(e){let t={...e};return t.runner==="bash"&&"docker_compose_file"in t?delete t.docker_compose_file:t.runner==="docker-compose"&&"bash_script"in t&&delete t.bash_script,"pre_launch_script"in t&&!t.pre_launch_script&&delete t.pre_launch_script,t}function Zn(e){let t=Tt(e),n=JSON.stringify(t,null,4);return n=n.replace(/": /g,'":'),n}function Fo(e){let t=Xn(e),n=Zn(t);return zo.createHash("sha256").update(n,"utf8").digest("hex")}function Do(e){let t=e;return{...e,getHash:()=>Fo(t),toString:()=>Zn(Xn(t))}}var Vo=Hn.transform(e=>Do(e)),Mo=q,{action:Ko,safeAction:Ho}=v(Vo,async(e,t)=>{let{cvmId:n}=Mo.parse(t);return await e.get(`/cvms/${n}/compose_file`)}),Go=he.object({id:he.string().optional(),uuid:he.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),app_id:he.string().refine(e=>!e.startsWith("app_")&&e.length===40,"app_id should be 40 characters without prefix").transform(e=>e.startsWith("app_")?e:`app_${e}`).optional(),instance_id:he.string().refine(e=>!e.startsWith("instance_")&&e.length===40,"instance_id should be 40 characters without prefix").transform(e=>e.startsWith("instance_")?e:`instance_${e}`).optional(),app_compose:Hn,update_env_vars:he.boolean().optional().nullable()}).refine(e=>!!(e.id||e.uuid||e.app_id||e.instance_id),"One of id, uuid, app_id, or instance_id must be provided").transform(e=>({cvmId:e.id||e.uuid||e.app_id||e.instance_id,request:{...e.app_compose,update_env_vars:e.update_env_vars},_raw:e})),Bo=he.object({app_id:he.string().nullable(),device_id:he.string().nullable(),compose_hash:he.string(),kms_info:be.nullable().optional(),compose_hash_registered:he.boolean().optional().default(!1),compose_unchanged:he.boolean().optional().default(!1)}).passthrough(),{action:Wo,safeAction:Jo}=v(Bo,async(e,t)=>{let n=Go.parse(t);return await e.post(`/cvms/${n.cvmId}/compose_file/provision`,n.request)}),Xo=_e.object({id:_e.string().optional(),uuid:_e.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),app_id:_e.string().refine(e=>!e.startsWith("app_")&&e.length===40,"app_id should be 40 characters without prefix").transform(e=>e.startsWith("app_")?e:`app_${e}`).optional(),instance_id:_e.string().refine(e=>!e.startsWith("instance_")&&e.length===40,"instance_id should be 40 characters without prefix").transform(e=>e.startsWith("instance_")?e:`instance_${e}`).optional(),compose_hash:_e.string().min(1,"Compose hash is required"),encrypted_env:_e.string().optional(),env_keys:_e.array(_e.string()).optional(),update_env_vars:_e.boolean().optional().nullable()}).refine(e=>!!(e.id||e.uuid||e.app_id||e.instance_id),"One of id, uuid, app_id, or instance_id must be provided").transform(e=>({cvmId:e.id||e.uuid||e.app_id||e.instance_id,compose_hash:e.compose_hash,encrypted_env:e.encrypted_env,env_keys:e.env_keys,update_env_vars:e.update_env_vars??void 0,_raw:e})),Zo=_e.any().transform(()=>{}),{action:Qo,safeAction:Yo}=v(Zo,async(e,t)=>{let n=Xo.parse(t);return await e.patch(`/cvms/${n.cvmId}/compose_file`,{compose_hash:n.compose_hash,encrypted_env:n.encrypted_env,env_keys:n.env_keys,update_env_vars:n.update_env_vars})}),ea=ue(re.extend({encrypted_env:Y.string().describe("Encrypted environment variables (hex string)"),env_keys:Y.array(Y.string()).optional().describe("List of allowed environment variable keys"),compose_hash:Y.string().optional().describe("Compose hash for verification (Phase 2, required when env_keys changes)"),transaction_hash:Y.string().optional().describe("On-chain transaction hash for verification (Phase 2, required when env_keys changes)")})).transform(e=>{let{cvmId:t}=q.parse(e);return{cvmId:t,request:{encrypted_env:e.encrypted_env,env_keys:e.env_keys,compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),ta=Y.object({status:Y.literal("in_progress"),message:Y.string(),correlation_id:Y.string(),allowed_envs_changed:Y.boolean()}),na=Y.object({status:Y.literal("precondition_required"),message:Y.string(),compose_hash:Y.string(),app_id:Y.string(),device_id:Y.string(),kms_info:be}),ra=Y.union([ta,na]),{action:sa,safeAction:oa}=v(ra,async(e,t)=>{let n=ea.parse(t);try{return await e.patch(`/cvms/${n.cvmId}/envs`,n.request)}catch(r){if(r instanceof fe&&r.status===465){let s=r.detail;if(s&&typeof s=="object"){let i=s,o=i.details;if(o&&Array.isArray(o)){let a=new Map(o.map(h=>[h.field,h.value])),u=a.get("compose_hash"),f=a.get("app_id"),d=a.get("device_id"),m=a.get("kms_info");if(u&&f)return{status:"precondition_required",message:i.message||"Compose hash verification required",compose_hash:u,app_id:f,device_id:d||"",kms_info:m}}}}throw r}}),aa=ue(re.extend({docker_compose_file:ee.string().describe("Docker Compose YAML content"),compose_hash:ee.string().optional().describe("Compose hash for verification (Phase 2, contract-owned KMS only)"),transaction_hash:ee.string().optional().describe("On-chain transaction hash for verification (Phase 2, contract-owned KMS only)")})).transform(e=>{let{cvmId:t}=q.parse(e);return{cvmId:t,request:{docker_compose_file:e.docker_compose_file,compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),ia=ee.object({status:ee.literal("in_progress"),message:ee.string(),correlation_id:ee.string()}),ca=ee.object({status:ee.literal("precondition_required"),message:ee.string(),compose_hash:ee.string(),app_id:ee.string(),device_id:ee.string(),kms_info:be}),la=ee.object({status:ee.literal("no_change"),message:ee.string()}),ua=ee.union([ia,ca,la]),{action:pa,safeAction:da}=v(ua,async(e,t)=>{let n=aa.parse(t),r={"Content-Type":"text/yaml"};n.request.compose_hash&&(r["X-Compose-Hash"]=n.request.compose_hash),n.request.transaction_hash&&(r["X-Transaction-Hash"]=n.request.transaction_hash);try{return await e.patch(`/cvms/${n.cvmId}/docker-compose`,n.request.docker_compose_file,{headers:r})}catch(s){if(s instanceof fe&&s.status===465){let i=s.detail;if(i&&typeof i=="object"){let o=i,a=o.details;if(a&&Array.isArray(a)){let u=new Map(a.map(_=>[_.field,_.value])),f=u.get("compose_hash"),d=u.get("app_id"),m=u.get("device_id"),h=u.get("kms_info");if(f&&d)return{status:"precondition_required",message:o.message||"Compose hash verification required",compose_hash:f,app_id:d,device_id:m||"",kms_info:h}}}}throw s}}),ma=ue(re.extend({pre_launch_script:te.string().describe("Pre-launch script content (shell script)"),compose_hash:te.string().optional().describe("Compose hash for verification (Phase 2, contract-owned KMS only)"),transaction_hash:te.string().optional().describe("On-chain transaction hash for verification (Phase 2, contract-owned KMS only)")})).transform(e=>{let{cvmId:t}=q.parse(e);return{cvmId:t,request:{pre_launch_script:e.pre_launch_script,compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),fa=te.object({status:te.literal("in_progress"),message:te.string(),correlation_id:te.string()}),ga=te.object({status:te.literal("precondition_required"),message:te.string(),compose_hash:te.string(),app_id:te.string(),device_id:te.string(),kms_info:be}),ha=te.object({status:te.literal("no_change"),message:te.string()}),ba=te.union([fa,ga,ha]),{action:va,safeAction:ya}=v(ba,async(e,t)=>{let n=ma.parse(t),r={"Content-Type":"text/plain"};n.request.compose_hash&&(r["X-Compose-Hash"]=n.request.compose_hash),n.request.transaction_hash&&(r["X-Transaction-Hash"]=n.request.transaction_hash);try{return await e.patch(`/cvms/${n.cvmId}/pre-launch-script`,n.request.pre_launch_script,{headers:r})}catch(s){if(s instanceof fe&&s.status===465){let i=s.detail;if(i&&typeof i=="object"){let o=i,a=o.details;if(a&&Array.isArray(a)){let u=new Map(a.map(_=>[_.field,_.value])),f=u.get("compose_hash"),d=u.get("app_id"),m=u.get("device_id"),h=u.get("kms_info");if(f&&d)return{status:"precondition_required",message:o.message||"Compose hash verification required",compose_hash:f,app_id:d,device_id:m||"",kms_info:h}}}}throw s}}),wa=q,{action:Ca,safeAction:ka}=v(_a.string(),async(e,t)=>{let{cvmId:n}=wa.parse(t);return await e.get(`/cvms/${n}/pre-launch-script`)}),Sa=q,Ea=Be.object({current_hash:Be.string().nullable(),latest_official_hash:Be.string(),is_official:Be.boolean(),is_latest:Be.boolean(),can_upgrade:Be.boolean()}),{action:Aa,safeAction:Ra}=v(Ea,async(e,t)=>{let{cvmId:n}=Sa.parse(t);return await e.get(`/cvms/${n}/pre-launch-script/upgrade-status`)}),Ia=ue(re.extend({compose_hash:me.string().optional().describe("Compose hash for verification (Phase 2, contract-owned KMS only)"),transaction_hash:me.string().optional().describe("On-chain transaction hash for verification (Phase 2, contract-owned KMS only)")})).transform(e=>{let{cvmId:t}=q.parse(e);return{cvmId:t,request:{compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),xa=me.object({status:me.literal("in_progress"),message:me.string(),correlation_id:me.string()}),Ta=me.object({status:me.literal("precondition_required"),message:me.string(),compose_hash:me.string(),app_id:me.string(),device_id:me.string(),kms_info:be}),Pa=me.union([xa,Ta]),{action:ja,safeAction:qa}=v(Pa,async(e,t)=>{let n=Ia.parse(t),r={};n.request.compose_hash&&(r["X-Compose-Hash"]=n.request.compose_hash),n.request.transaction_hash&&(r["X-Transaction-Hash"]=n.request.transaction_hash);try{return await e.post(`/cvms/${n.cvmId}/pre-launch-script/upgrade-to-latest-official`,void 0,{headers:r})}catch(s){if(s instanceof fe&&s.status===465){let i=s.detail;if(i&&typeof i=="object"){let o=i,a=o.details;if(a&&Array.isArray(a)){let u=new Map(a.map(_=>[_.field,_.value])),f=u.get("compose_hash"),d=u.get("app_id"),m=u.get("device_id"),h=u.get("kms_info");if(f&&d)return{status:"precondition_required",message:o.message||"Compose hash verification required",compose_hash:f,app_id:d,device_id:m||"",kms_info:h}}}}throw s}}),$a=ln.object({kms_id:ln.string().min(1,"KMS ID is required")}),{action:Oa,safeAction:Na}=v(be,async(e,t)=>{let n=$a.parse(t);return await e.get(`/kms/${n.kms_id}`,{headers:{"X-Phala-Version":"2026-05-22"}})}),La=Re.object({page:Re.number().int().min(1).optional(),page_size:Re.number().int().min(1).optional(),is_onchain:Re.boolean().optional()}).strict(),Ua=Re.object({items:Re.array(be),total:Re.number(),page:Re.number(),page_size:Re.number(),pages:Re.number()}).strict(),{action:za,safeAction:Fa}=v(Ua,async(e,t)=>{let n=La.parse(t??{});return await e.get("/kms",{params:n,headers:{"X-Phala-Version":"2026-05-22"}})}),Qn=ae.object({id:ae.string(),slug:ae.string().nullable(),label:ae.string().nullable(),contract_address:ae.string(),chain_id:ae.number(),k256_pubkey:ae.string().nullable(),ca_pubkey:ae.string().nullable(),node_count:ae.number()}).passthrough(),Da=ae.object({id:ae.string(),slug:ae.string().nullable(),url:ae.string(),version:ae.string(),kms_type:ae.string()}).passthrough(),Va="2026-06-23",Ma=Ie.object({page:Ie.number().int().min(1).optional(),page_size:Ie.number().int().min(1).optional(),is_onchain:Ie.boolean().optional()}).strict(),Ka=Ie.object({items:Ie.array(Qn),total:Ie.number(),page:Ie.number(),page_size:Ie.number(),pages:Ie.number()}).strict(),{action:Ha,safeAction:Ga}=v(Ka,async(e,t)=>{let n=Ma.parse(t??{});return await e.get("/kms",{params:n,headers:{"X-Phala-Version":Va}})}),Ba="2026-06-23",Wa=un.object({slug:un.string().min(1,"KMS contract slug is required")}).strict(),{action:Ja,safeAction:Xa}=v(Qn,async(e,t)=>{let{slug:n}=Wa.parse(t);return await e.get(`/kms/${n}`,{headers:{"X-Phala-Version":Ba}})}),Za="2026-06-23",Qa=at.object({slug:at.string().min(1,"KMS contract slug is required")}).strict(),Ya=at.object({items:at.array(Da),total:at.number()}).strict(),{action:ei,safeAction:ti}=v(Ya,async(e,t)=>{let{slug:n}=Qa.parse(t);return await e.get(`/kms/${n}/nodes`,{headers:{"X-Phala-Version":Za}})}),ni=Ye.object({kms:Ye.string().min(1,"KMS ID or slug is required"),app_id:Ye.string().refine(e=>e.length===40||e.startsWith("0x")&&e.length===42,"App ID must be exactly 40 characters or 42 characters with 0x prefix")}).strict(),ri=Ye.object({public_key:Ye.string(),signature:Ye.string()}).strict(),{action:si,safeAction:oi}=v(ri,async(e,t)=>{let n=ni.parse(t);return await e.get(`/kms/${n.kms}/pubkey/${n.app_id}`)}),ai=ze.object({counts:ze.number().int().min(1).max(20).optional().default(1)}).strict(),ii=ze.object({app_ids:ze.array(ze.object({app_id:ze.string(),nonce:ze.number().int().min(0)}))}).strict(),{action:ci,safeAction:li}=v(ii,async(e,t)=>{let n=ai.parse(t??{}),r=new URLSearchParams;return r.append("counts",n.counts.toString()),await e.get(`/kms/phala/next_app_id?${r.toString()}`)}),Yn=j.object({name:j.string(),status:j.string(),teepod_id:j.number(),teepod:j.object({id:j.number(),name:j.string(),region_identifier:j.string().nullable().optional()}).optional().nullable(),app_id:j.string(),vm_uuid:j.string().nullable(),instance_id:j.string().nullable(),app_url:j.string().optional().nullable(),base_image:j.string().optional().nullable(),vcpu:j.number(),memory:j.number(),disk_size:j.number(),manifest_version:j.number().optional().nullable(),version:j.string().optional().nullable(),runner:j.string().optional().nullable(),docker_compose_file:j.string().optional().nullable(),features:j.array(j.string()).optional().nullable(),created_at:j.string(),encrypted_env_pubkey:j.string().nullable()}),er=Yn.extend({id:j.number(),user_id:j.number().optional().nullable()}),Ut=Yn.extend({id:j.string(),user_id:j.string().optional().nullable()}),pp=j.union([er,Ut]),ui=Ut;function _t(e){return e==="2026-01-21"?er:Ut}var pi=q;async function tr(e,t){let{cvmId:n}=pi.parse(t),r=await e.post(`/cvms/${n}/start`);return _t(e.config.version).parse(r)}async function di(e,t){try{return{success:!0,data:await tr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var mi=q;async function nr(e,t){let{cvmId:n}=mi.parse(t),r=await e.post(`/cvms/${n}/stop`);return _t(e.config.version).parse(r)}async function fi(e,t){try{return{success:!0,data:await nr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var gi=q;async function rr(e,t){let{cvmId:n}=gi.parse(t),r=await e.post(`/cvms/${n}/shutdown`);return _t(e.config.version).parse(r)}async function hi(e,t){try{return{success:!0,data:await rr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var vi=ue(re.extend({force:bi.boolean().optional()}));async function sr(e,t){let n=vi.parse(t),{cvmId:r}=q.parse(n),{force:s=!1}=n,i=await e.post(`/cvms/${r}/restart`,{force:s});return _t(e.config.version).parse(i)}async function yi(e,t){try{return{success:!0,data:await sr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var wi=q,{action:Ci,safeAction:ki}=v(_i.void(),async(e,t)=>{let{cvmId:n}=wi.parse(t);await e.delete(`/cvms/${n}`)}),Si=T.object({name:T.string(),mount_point:T.string(),total_size:T.number(),free_size:T.number()}),Ei=T.object({os_name:T.string(),os_version:T.string(),kernel_version:T.string(),cpu_model:T.string(),num_cpus:T.number(),total_memory:T.number(),available_memory:T.number(),used_memory:T.number(),free_memory:T.number(),total_swap:T.number(),used_swap:T.number(),free_swap:T.number(),uptime:T.number(),loadavg_one:T.number(),loadavg_five:T.number(),loadavg_fifteen:T.number(),disks:T.array(Si)}),Ai=T.object({is_online:T.boolean(),is_public:T.boolean().default(!1),error:T.string().nullable(),sysinfo:Ei.nullable(),status:T.string().nullable(),in_progress:T.boolean().default(!1),boot_progress:T.string().nullable(),boot_error:T.string().nullable()}),Ri=q,{action:Ii,safeAction:xi}=v(Ai,async(e,t)=>{let{cvmId:n}=Ri.parse(t);return await e.get(`/cvms/${n}/stats`)}),Ti=Ae.object({app:Ae.string(),instance:Ae.string()}),Pi=Ae.object({is_online:Ae.boolean(),is_public:Ae.boolean().default(!0),error:Ae.string().nullable(),internal_ip:Ae.string().nullable(),latest_handshake:Ae.string().nullable(),public_urls:Ae.array(Ti).nullable()}),ji=q,{action:qi,safeAction:$i}=v(Pi,async(e,t)=>{let{cvmId:n}=ji.parse(t);return await e.get(`/cvms/${n}/network`)}),Ni=q,{action:Li,safeAction:Ui}=v(Oi.string(),async(e,t)=>{let{cvmId:n}=Ni.parse(t);return await e.get(`/cvms/${n}/docker-compose.yml`)}),zi=V.object({id:V.string(),names:V.array(V.string()),image:V.string(),image_id:V.string(),command:V.string().nullable().optional(),created:V.number(),state:V.string(),status:V.string(),log_endpoint:V.string().nullable()}),Fi=V.object({is_online:V.boolean(),is_public:V.boolean().default(!0),error:V.string().nullable(),docker_compose_file:V.string().nullable(),manifest_version:V.number().nullable(),version:V.string().nullable(),runner:V.string().nullable(),features:V.array(V.string()).nullable(),containers:V.array(zi).nullable()}),Di=q,{action:Vi,safeAction:Mi}=v(Fi,async(e,t)=>{let{cvmId:n}=Di.parse(t);return await e.get(`/cvms/${n}/composition`)}),Ki=y.object({common_name:y.string().nullable(),organization:y.string().nullable(),country:y.string().nullable(),state:y.string().nullable(),locality:y.string().nullable()}),Hi=y.object({common_name:y.string().nullable(),organization:y.string().nullable(),country:y.string().nullable()}),or=y.object({subject:Ki,issuer:Hi,serial_number:y.string(),not_before:y.string(),not_after:y.string(),version:y.string(),fingerprint:y.string(),signature_algorithm:y.string(),sans:y.array(y.string()).nullable(),is_ca:y.boolean(),position_in_chain:y.number().nullable(),quote:y.string().nullable(),app_id:y.string().nullable().optional(),cert_usage:y.string().nullable().optional()}),Gi=y.object({imr:y.number(),event_type:y.number(),digest:y.string(),event:y.string(),event_payload:y.string()}),ar=y.object({mrtd:y.string(),rootfs_hash:y.string().nullable().optional(),rtmr0:y.string(),rtmr1:y.string(),rtmr2:y.string(),rtmr3:y.string(),event_log:y.array(Gi),app_compose:y.string()}),Bi=y.object({name:y.string().nullable(),is_online:y.boolean(),is_public:y.boolean().default(!0),error:y.string().nullable(),app_certificates:y.array(or).nullable(),tcb_info:ar.nullable(),compose_file:y.string().nullable()}),Wi=q,{action:Ji,safeAction:Xi}=v(Bi,async(e,t)=>{let{cvmId:n}=Wi.parse(t);return await e.get(`/cvms/${n}/attestation`)}),Zi=ue(re.extend({vcpu:Te.number().optional(),memory:Te.number().optional(),disk_size:Te.number().optional(),instance_type:Te.string().optional(),allow_restart:Te.boolean().optional()})),Qi=Te.object({message:Te.string(),correlation_id:Te.string(),status:Te.string()}),{action:Yi,safeAction:ec}=v(Qi,async(e,t)=>{let n=Zi.parse(t),{cvmId:r}=q.parse(n),{...s}=n;return await e.patch(`/cvms/${r}`,s)}),tc=ue(re.extend({public_sysinfo:It.boolean(),public_logs:It.boolean(),public_tcbinfo:It.boolean().optional()})),{action:nc,safeAction:rc}=v(An,async(e,t)=>{let n=tc.parse(t),{cvmId:r}=q.parse(n),{public_sysinfo:s,public_logs:i,public_tcbinfo:o}=n;return await e.patch(`/cvms/${r}/visibility`,{public_sysinfo:s,public_logs:i,public_tcbinfo:o})}),pn=X.object({name:X.string(),slug:X.string(),os_image_hash:X.string().nullable(),is_current:X.boolean(),enabled:X.boolean()}),sc=X.object({version:X.union([X.tuple([X.number(),X.number(),X.number(),X.number()]),X.tuple([X.number(),X.number(),X.number()])]),prod:pn.nullable(),dev:pn.nullable()}),oc=X.array(sc),ac=q,{action:ic,safeAction:cc}=v(oc,async(e,t)=>{let{cvmId:n}=ac.parse(t);return await e.get(`/cvms/${n}/available-os-images`)}),lc=ue(re.extend({os_image_name:ir.string().min(1,"OS image name is required")})),{action:uc,safeAction:pc}=v(ir.void(),async(e,t)=>{let n=lc.parse(t),{cvmId:r}=q.parse(n),{os_image_name:s}=n;await e.patch(`/cvms/${r}/os-image`,{os_image_name:s})}),dc=Se.object({id:Se.string().optional(),instance_id:Se.string().optional(),name:Se.string(),status:Se.string(),uptime:Se.string().optional(),exited_at:Se.string().optional(),boot_progress:Se.string().optional(),boot_error:Se.string().optional(),shutdown_progress:Se.string().optional()}),mc=q,{action:fc,safeAction:gc}=v(dc,async(e,t)=>{let{cvmId:n}=mc.parse(t);return await e.get(`/cvms/${n}/state`)}),cr=le.object({id:le.string(),user_id:le.string(),name:le.string(),public_key:le.string(),fingerprint:le.string(),key_type:le.string(),source:le.string(),key_metadata:le.record(le.unknown()).nullable().optional(),last_synced_at:le.string().nullable().optional(),created_at:le.string(),updated_at:le.string()}),hc=le.array(cr);async function lr(e){let t=await e.get("/user/ssh-keys");return hc.parse(t)}async function bc(e){try{return{success:!0,data:await lr(e)}}catch(t){return t&&typeof t=="object"&&("status"in t||"issues"in t)?{success:!1,error:t}:{success:!1,error:{name:"Error",message:t instanceof Error?t.message:String(t)}}}}var vc=$e.object({github_username:$e.string().min(1)}),yc=$e.object({github_username:$e.string(),keys_added:$e.number().int(),keys_skipped:$e.number().int(),errors:$e.array($e.string()).default([])}),{action:_c,safeAction:wc}=v(yc,async(e,t)=>{let{github_username:n}=vc.parse(t);return await e.post("/user/ssh-keys/github-profile",{github_username:n})}),Cc=xt.object({name:xt.string().min(1),public_key:xt.string().min(1)}),{action:kc,safeAction:Sc}=v(cr,async(e,t)=>{let{name:n,public_key:r}=Cc.parse(t);return await e.post("/user/ssh-keys",{name:n,public_key:r})}),Ec=Pt.object({keyId:Pt.string().min(1)}),{action:Ac,safeAction:Rc}=v(Pt.void(),async(e,t)=>{let{keyId:n}=Ec.parse(t);await e.delete(`/user/ssh-keys/${n}`)}),Ic=Ue.object({synced_count:Ue.number().int(),keys_added:Ue.number().int(),keys_updated:Ue.number().int(),keys_removed:Ue.number().int(),errors:Ue.array(Ue.string()).default([])}),{action:xc,safeAction:Tc}=Nt(Ic,async e=>await e.post("/user/ssh-keys/github-sync",{})),Pc=Q.object({name:Q.string(),slug:Q.string(),version:Q.string(),os_image_hash:Q.string().nullable(),is_dev:Q.boolean(),requires_gpu:Q.boolean()}).passthrough(),jc=Q.object({page:Q.number().int().min(1).optional(),page_size:Q.number().int().min(1).optional(),is_dev:Q.boolean().optional()}).strict(),qc=Q.object({items:Q.array(Pc),total:Q.number(),page:Q.number(),page_size:Q.number(),pages:Q.number()}).passthrough(),{action:$c,safeAction:Oc}=v(qc,async(e,t)=>{let n=jc.parse(t??{});return await e.get("/os-images",{params:n})}),Nc=N.object({device_id:N.string(),node_name:N.string().nullable().optional(),on_chain_allowed:N.boolean().nullable()}).passthrough(),Lc=N.object({name:N.string(),version:N.string(),os_image_hash:N.string().nullable(),on_chain_allowed:N.boolean().nullable()}).passthrough(),Uc=N.object({contract_address:N.string(),chain_id:N.number(),chain_name:N.string(),k256_pubkey:N.string().nullable().optional(),ca_pubkey:N.string().nullable().optional(),gateway_contract_address:N.string().nullable().optional(),devices:N.array(Nc),os_images:N.array(Lc)}).passthrough(),zc=N.object({chain_name:N.string(),chain_id:N.number(),contracts:N.array(Uc)}).passthrough(),Fc=N.object({chain:N.string()}).strict(),{action:Dc,safeAction:Vc}=v(zc,async(e,t)=>{let{chain:n}=Fc.parse(t);return await e.get(`/kms/on-chain/${n}`)});function ur(e={}){let t=Rs(e),n={getCurrentUser:Cn,safeGetCurrentUser:$s,getAvailableNodes:no,safeGetAvailableNodes:ro,getCvmCreateResources:uo,safeGetCvmCreateResources:po,listAllInstanceTypeFamilies:bo,safeListAllInstanceTypeFamilies:vo,listFamilyInstanceTypes:yo,safeListFamilyInstanceTypes:_o,listWorkspaces:ko,safeListWorkspaces:So,getWorkspace:Eo,safeGetWorkspace:Ao,getCvmInfo:Vn,safeGetCvmInfo:yt,getCvmList:Mn,safeGetCvmList:Lt,provisionCvm:Oo,safeProvisionCvm:No,commitCvmProvision:Jn,safeCommitCvmProvision:Uo,getCvmComposeFile:Ko,safeGetCvmComposeFile:Ho,provisionCvmComposeFileUpdate:Wo,safeProvisionCvmComposeFileUpdate:Jo,commitCvmComposeFileUpdate:Qo,safeCommitCvmComposeFileUpdate:Yo,updateCvmEnvs:sa,safeUpdateCvmEnvs:oa,updateDockerCompose:pa,safeUpdateDockerCompose:da,updatePreLaunchScript:va,safeUpdatePreLaunchScript:ya,getCvmPreLaunchScript:Ca,safeGetCvmPreLaunchScript:ka,getPreLaunchScriptUpgradeStatus:Aa,safeGetPreLaunchScriptUpgradeStatus:Ra,upgradePreLaunchScript:ja,safeUpgradePreLaunchScript:qa,startCvm:tr,safeStartCvm:di,stopCvm:nr,safeStopCvm:fi,shutdownCvm:rr,safeShutdownCvm:hi,restartCvm:sr,safeRestartCvm:yi,deleteCvm:Ci,safeDeleteCvm:ki,getCvmStats:Ii,safeGetCvmStats:xi,getCvmNetwork:qi,safeGetCvmNetwork:$i,getCvmDockerCompose:Li,safeGetCvmDockerCompose:Ui,getCvmContainersStats:Vi,safeGetCvmContainersStats:Mi,getCvmAttestation:Ji,safeGetCvmAttestation:Xi,updateCvmResources:Yi,safeUpdateCvmResources:ec,updateCvmVisibility:nc,safeUpdateCvmVisibility:rc,getAvailableOsImages:ic,safeGetAvailableOsImages:cc,updateOsImage:uc,safeUpdateOsImage:pc,getKmsInfo:Oa,safeGetKmsInfo:Na,getKmsList:za,safeGetKmsList:Fa,listKmsContracts:Ha,safeListKmsContracts:Ga,getKmsContract:Ja,safeGetKmsContract:Xa,listKmsContractNodes:ei,safeListKmsContractNodes:ti,getAppEnvEncryptPubKey:si,safeGetAppEnvEncryptPubKey:oi,nextAppIds:ci,safeNextAppIds:li,getCvmState:fc,safeGetCvmState:gc,listSshKeys:lr,safeListSshKeys:bc,importGithubProfileSshKeys:_c,safeImportGithubProfileSshKeys:wc,createSshKey:kc,safeCreateSshKey:Sc,deleteSshKey:Ac,safeDeleteSshKey:Rc,syncGithubSshKeys:xc,safeSyncGithubSshKeys:Tc,getOsImages:$c,safeGetOsImages:Oc,getKmsOnChainDetail:Dc,safeGetKmsOnChainDetail:Vc};return t.extend(n)}var dn=C.object({vm_uuid:C.string().nullable(),app_id:C.string(),name:C.string().default(""),status:C.string(),vcpu:C.number().int(),memory:C.number().int(),disk_size:C.number().int(),teepod_id:C.number().int(),teepod_name:C.string(),region_identifier:C.string().nullable().optional(),kms_type:C.string().nullable().optional(),instance_type:C.string().nullable().optional(),listed:C.boolean().nullable().optional(),base_image:C.string().nullable().optional(),kms_slug:C.string().nullable().optional(),kms_id:C.string().nullable().optional(),kms_contract_id:C.string().nullable().optional(),instance_id:C.string().nullable().optional(),machine_info:jt.nullable().optional(),updated_at:C.string().nullable().optional()}),Mc=C.object({display_name:C.string().nullable().optional(),avatar_url:C.string().nullable().optional(),description:C.string().nullable().optional(),custom_domain:C.string().nullable().optional()}),Kc=C.object({id:C.string(),name:C.string(),app_id:C.string(),app_provision_type:C.string().nullable().optional(),app_icon_url:C.string().nullable().optional(),created_at:C.string(),kms_type:C.string(),profile:Mc.nullable().optional(),current_cvm:dn.nullable().optional(),cvms:C.array(dn).default([]),cvm_count:C.number().int().default(0)}),Hc=Kc,jp=C.object({dstack_apps:C.array(Hc),page:C.number().int(),page_size:C.number().int(),total:C.number().int(),total_pages:C.number().int()}),pr=L.object({id:L.string(),name:L.string(),app_id:L.string(),app_provision_type:L.string().nullable().optional(),app_icon_url:L.string().nullable().optional(),created_at:L.string(),kms_type:L.string(),profile:L.object({display_name:L.string().nullable().optional(),avatar_url:L.string().nullable().optional(),description:L.string().nullable().optional(),custom_domain:L.string().nullable().optional()}).nullable().optional(),current_cvm:it.nullable().optional(),cvms:L.array(it).default([]),cvm_count:L.number().int().default(0)}),Gc=pr.extend({current_cvm:ht.nullable().optional(),cvms:L.array(ht).default([])}),Bc=pr,Wc=Gc,Jc=L.object({dstack_apps:L.array(Bc),page:L.number().int(),page_size:L.number().int(),total:L.number().int(),total_pages:L.number().int()}),$p=Jc.extend({dstack_apps:L.array(Wc)}),dr=R.object({object_type:R.literal("cvm"),id:R.string().nullable().optional(),name:R.string().nullable().optional(),app_id:R.string().nullable().optional(),vm_uuid:R.string().nullable().optional()}),Xc=R.object({revision_id:R.string(),app_id:R.string(),vm_uuid:R.string(),compose_hash:R.string(),created_at:R.string(),trace_id:R.string().nullable().optional(),operation_type:R.string(),triggered_by:$t.nullable().optional(),cvm:dr.nullable().optional(),workspace:Ot.nullable().optional()}),Np=R.object({revision_id:R.string(),app_id:R.string(),vm_uuid:R.string(),compose_hash:R.string(),compose_file:R.union([R.record(R.any()),R.string()]).nullable().optional(),encrypted_env:R.string(),user_config:R.string(),created_at:R.string(),trace_id:R.string().nullable().optional(),operation_type:R.string(),triggered_by:$t.nullable().optional(),cvm:dr.nullable().optional(),workspace:Ot.nullable().optional()}),Lp=R.object({revisions:R.array(Xc),total:R.number().int(),page:R.number().int(),page_size:R.number().int(),total_pages:R.number().int()});var Zc=K.object({chain:K.unknown().optional(),rpcUrl:K.string().optional(),kmsContractAddress:K.string(),privateKey:K.string().optional(),walletClient:K.unknown().optional(),publicClient:K.unknown().optional(),allowAnyDevice:K.boolean().optional().default(!1),deviceId:K.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),composeHash:K.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),disableUpgrades:K.boolean().optional().default(!1),skipPrerequisiteChecks:K.boolean().optional().default(!1),minBalance:K.string().optional()}).passthrough(),cd=Zc.refine(e=>{let t=!!e.privateKey,n=!!e.walletClient;return t!==n},{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>{let t=!!e.publicClient,n=!!e.walletClient,r=!!e.chain;return t&&n?!0:r},{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),ld=K.object({appId:K.string(),appAuthAddress:K.string(),deployer:K.string(),transactionHash:K.string(),blockNumber:K.bigint().optional(),gasUsed:K.bigint().optional()}).passthrough();var yd=U.object({chain:U.unknown().optional(),rpcUrl:U.string().optional(),appId:U.string(),composeHash:U.string(),privateKey:U.string().optional(),walletClient:U.unknown().optional(),publicClient:U.unknown().optional(),skipPrerequisiteChecks:U.boolean().optional().default(!1),minBalance:U.string().optional(),timeout:U.number().optional().default(12e4),retryOptions:U.unknown().optional(),signal:U.unknown().optional(),onTransactionStateChange:U.function().optional(),onTransactionSubmitted:U.function().optional(),onTransactionConfirmed:U.function().optional()}).passthrough().refine(e=>{let t=!!e.privateKey,n=!!e.walletClient;return t!==n},{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>{let t=!!e.publicClient,n=!!e.walletClient,r=!!e.chain;return t&&n?!0:r},{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),_d=U.object({composeHash:U.string(),appId:U.string(),transactionHash:U.string(),blockNumber:U.bigint().optional(),gasUsed:U.bigint().optional()}).passthrough();var xd=z.object({chain:z.unknown().optional(),rpcUrl:z.string().optional(),appAddress:z.string(),deviceId:z.string(),privateKey:z.string().optional(),walletClient:z.unknown().optional(),publicClient:z.unknown().optional(),skipPrerequisiteChecks:z.boolean().optional().default(!1),minBalance:z.string().optional(),timeout:z.number().optional().default(12e4),retryOptions:z.unknown().optional(),signal:z.unknown().optional(),onTransactionStateChange:z.function().optional(),onTransactionSubmitted:z.function().optional(),onTransactionConfirmed:z.function().optional()}).passthrough().refine(e=>!!e.privateKey!=!!e.walletClient,{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>e.publicClient&&e.walletClient?!0:!!e.chain,{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),Td=z.object({appAddress:z.string(),deviceId:z.string(),transactionHash:z.string(),blockNumber:z.bigint().optional(),gasUsed:z.bigint().optional()}).passthrough();var zd=F.object({chain:F.unknown().optional(),rpcUrl:F.string().optional(),appAddress:F.string(),deviceId:F.string(),privateKey:F.string().optional(),walletClient:F.unknown().optional(),publicClient:F.unknown().optional(),skipPrerequisiteChecks:F.boolean().optional().default(!1),minBalance:F.string().optional(),timeout:F.number().optional().default(12e4),retryOptions:F.unknown().optional(),signal:F.unknown().optional(),onTransactionStateChange:F.function().optional(),onTransactionSubmitted:F.function().optional(),onTransactionConfirmed:F.function().optional()}).passthrough().refine(e=>!!e.privateKey!=!!e.walletClient,{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>e.publicClient&&e.walletClient?!0:!!e.chain,{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),Fd=F.object({appAddress:F.string(),deviceId:F.string(),transactionHash:F.string(),blockNumber:F.bigint().optional(),gasUsed:F.bigint().optional()}).passthrough();var Jd=D.object({chain:D.unknown().optional(),rpcUrl:D.string().optional(),appAddress:D.string(),allow:D.boolean(),privateKey:D.string().optional(),walletClient:D.unknown().optional(),publicClient:D.unknown().optional(),skipPrerequisiteChecks:D.boolean().optional().default(!1),minBalance:D.string().optional(),timeout:D.number().optional().default(12e4),retryOptions:D.unknown().optional(),signal:D.unknown().optional(),onTransactionStateChange:D.function().optional(),onTransactionSubmitted:D.function().optional(),onTransactionConfirmed:D.function().optional()}).passthrough().refine(e=>!!e.privateKey!=!!e.walletClient,{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>e.publicClient&&e.walletClient?!0:!!e.chain,{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),Xd=D.object({appAddress:D.string(),allow:D.boolean(),transactionHash:D.string(),blockNumber:D.bigint().optional(),gasUsed:D.bigint().optional()}).passthrough();var tm=We.object({appAddress:We.string(),owner:We.string(),allowAnyDevice:We.boolean(),devices:We.array(We.string())});var Qc=In;var Yc=Je.object({items:Je.array(Qc),total:Je.number(),page:Je.number(),page_size:Je.number(),pages:Je.number()}).passthrough(),{action:dm,safeAction:mm}=v(Yc,async(e,t)=>{let{teamSlug:n,page:r,pageSize:s}=t,i=new URLSearchParams;r!==void 0&&i.append("page",r.toString()),s!==void 0&&i.append("page_size",s.toString());let o=i.toString()?`/workspaces/${n}/nodes?${i.toString()}`:`/workspaces/${n}/nodes`;return await e.get(o)}),Qe=we.object({limit:we.number(),remaining:we.number()}).passthrough(),el=we.object({vm_slots:Qe,vcpu:Qe,memory_mb:Qe,disk_gb:Qe}).passthrough(),tl=we.object({gpus:Qe,in_use:we.number(),misconfigured:we.number()}).passthrough(),nl=we.object({team_slug:we.string(),tier:we.string(),quotas:el,reserved_nodes:Qe,reserved_gpu:tl,as_of:we.string()}).passthrough(),{action:gm,safeAction:hm}=v(nl,async(e,t)=>await e.get(`/workspaces/${t.teamSlug}/quotas`)),vm=ue(re.extend({node_id:mn.number().optional(),os_image:mn.string().min(1).optional()}));var _m=Xe.object({target:Xe.string().describe("Target status to wait for (e.g., 'running', 'stopped')"),interval:Xe.number().min(5).max(30).default(5).describe("Polling interval in seconds"),timeout:Xe.number().min(10).max(600).default(300).describe("Timeout per attempt in seconds"),maxRetries:Xe.number().min(0).default(Number.POSITIVE_INFINITY).describe("Maximum number of retry attempts (Infinity for unlimited)"),retryDelay:Xe.number().min(0).default(5e3).describe("Delay between retries in milliseconds")});var rl=ue(re.extend({docker_compose_file:A.string().optional(),pre_launch_script:A.string().optional(),allowed_envs:A.array(A.string()).optional(),public_logs:A.boolean().optional(),public_sysinfo:A.boolean().optional(),public_tcbinfo:A.boolean().optional(),encrypted_env:A.string().optional(),user_config:A.string().optional(),gpus:A.object({count:A.number(),product_name:A.string().optional()}).optional(),vcpu:A.number().optional(),memory:A.number().optional(),disk_size:A.number().optional(),image:A.string().optional(),shutdown_timeout:A.number().optional(),allow_force_stop:A.boolean().optional(),prepareOnly:A.boolean().optional()})),sl=A.object({requiresOnChainHash:A.literal(!1),correlationId:A.string()}),ol=A.object({requiresOnChainHash:A.literal(!0),composeHash:A.string(),appId:A.string(),deviceId:A.string(),kmsInfo:be,commitToken:A.string().optional(),commitUrl:A.string().optional(),apiCommitUrl:A.string().optional(),onchainStatus:A.object({compose_hash_allowed:A.boolean(),device_id_allowed:A.boolean(),is_allowed:A.boolean()}).optional()}),al=A.discriminatedUnion("requiresOnChainHash",[sl,ol]);function il(e){let t={};if(!e||typeof e!="object")return t;let r=e.details;if(!Array.isArray(r))return t;for(let s of r)s&&typeof s=="object"&&"field"in s&&"value"in s&&(t[s.field]=s.value);return t}var{action:Cm,safeAction:km}=v(al,async(e,t)=>{let n=rl.parse(t),{cvmId:r}=q.parse(n),{id:s,uuid:i,app_id:o,instance_id:a,name:u,prepareOnly:f,...d}=n;try{return{requiresOnChainHash:!1,correlationId:(f?await e.patch(`/cvms/${r}`,d,{headers:{"X-Prepare-Only":"true"}}):await e.patch(`/cvms/${r}`,d)).correlation_id}}catch(m){if(m instanceof fe&&m.status===465){let h=il(m.detail);return{requiresOnChainHash:!0,composeHash:h.compose_hash,appId:String(h.app_id),deviceId:h.device_id,kmsInfo:h.kms_info,commitToken:h.commit_token,commitUrl:h.commit_url,apiCommitUrl:h.api_commit_url,onchainStatus:h.onchain_status}}throw m}}),cl=ue(re.extend({composeHash:bt.string().describe("Compose hash from patchCvm Phase 1 response"),transactionHash:bt.string().describe("Transaction hash proving on-chain registration")})),ll=bt.object({correlationId:bt.string()}),{action:Em,safeAction:Am}=v(ll,async(e,t)=>{let n=cl.parse(t),{cvmId:r}=q.parse(n);return{correlationId:(await e.patch(`/cvms/${r}`,{},{headers:{"X-Compose-Hash":n.composeHash,"X-Transaction-Hash":n.transactionHash}})).correlation_id}}),ul=ue(re.extend({token:et.string().describe("One-time commit token from prepare-only flow"),composeHash:et.string().describe("Compose hash from Phase 1 response"),transactionHash:et.string().describe("Transaction hash proving on-chain registration")})),pl=et.object({correlationId:et.string(),status:et.string()}),{action:Im,safeAction:xm}=v(pl,async(e,t)=>{let n=ul.parse(t),{cvmId:r}=q.parse(n),s=await e.post(`/cvms/${r}/commit-update`,{token:n.token,compose_hash:n.composeHash,transaction_hash:n.transactionHash});return{correlationId:s.correlation_id,status:s.status}}),mr=de.object({identifier:de.string(),status:de.enum(["updated","unchanged","skipped","conflict","error"]),old_instance_id:de.string().nullable().optional(),new_instance_id:de.string().nullable().optional(),source:de.enum(["teepod_state","teepod_info","gateway","none"]),verified_with_gateway:de.boolean(),reason:de.string().nullable().optional()}),zt=mr.extend({cvm_id:de.number().nullable()}),Ft=mr.extend({cvm_id:de.string().nullable()}),Pm=de.union([zt,Ft]);var jm=ue(re.extend({overwrite:de.boolean().optional(),dry_run:de.boolean().optional()}));var $m=H.object({cvm_ids:H.array(H.string()).optional(),running_only:H.boolean().optional(),missing_only:H.boolean().optional(),overwrite:H.boolean().optional(),limit:H.number().int().min(1).max(500).optional(),dry_run:H.boolean().optional()}).strict(),Dt=H.object({total:H.number().int(),scanned:H.number().int(),updated:H.number().int(),unchanged:H.number().int(),skipped:H.number().int(),conflicts:H.number().int(),errors:H.number().int()}),Om=Dt.extend({items:H.array(zt)}),Nm=Dt.extend({items:H.array(Ft)}),Lm=Dt.extend({items:H.array(H.union([zt,Ft]))});var dl=P.object({cpu_percent:P.number().nullable().optional(),memory_used_bytes:P.number().nullable().optional(),memory_total_bytes:P.number().nullable().optional(),disk_used_bytes:P.number().nullable().optional(),disk_total_bytes:P.number().nullable().optional(),egress_bytes:P.number().nullable().optional()}),ml=P.object({vm_uuid:P.string(),status:P.string(),uptime:P.string().nullable().optional(),in_progress:P.boolean(),boot_progress:P.string().nullable().optional(),boot_error:P.string().nullable().optional(),shutdown_progress:P.string().nullable().optional(),events:P.array(P.object({event:P.string(),body:P.string(),timestamp:P.number()})).default([]),operation:P.object({type:P.string().nullable().optional(),phase:P.string().nullable().optional(),started_at:P.string().nullable().optional(),correlation_id:P.string().nullable().optional()}).nullable().optional(),resource_usage:dl.nullable().optional()}),fl=P.record(P.string(),ml),gl=P.object({vmUuids:P.array(P.string())}),{action:zm,safeAction:Fm}=v(fl,async(e,t)=>{let{vmUuids:n}=gl.parse(t);return await e.post("/status/batch",{vm_uuids:n})}),hl=st.object({hostname:st.string().nullable().optional(),ssh_authorized_keys:st.array(st.string()).default([]),default_gateway_domain:st.string().nullable().optional()}),bl=q,{action:Vm,safeAction:Mm}=v(hl,async(e,t)=>{let{cvmId:n}=bl.parse(t);return await e.get(`/cvms/${n}/user_config`)}),{action:Hm,safeAction:yl}=Nt(vl.void(),async e=>{await e.delete("/tokens/self")}),fr=Z.object({app_contract_address:Z.string(),compose_hash:Z.string(),device_id:Z.string(),compose_hash_allowed:Z.boolean(),allow_any_device:Z.boolean(),device_id_allowed:Z.boolean().nullable().optional(),is_allowed:Z.boolean(),error:Z.string().nullable().optional()}),gr=fr.extend({cvm_id:Z.number().optional()}),Vt=fr.extend({cvm_id:Z.string().optional()}),Bm=Z.union([gr,Vt]),_l=Vt,Wm=Z.object({cvmId:Z.string().min(1),compose_hash:Z.string().optional(),node_id:Z.number().optional(),device_id:Z.string().optional()});var wl=Ze.object({appId:Ze.string().min(1),compose_hash:Ze.string(),node_id:Ze.number().optional(),device_id:Ze.string().optional(),chain_id:Ze.number().optional()}),{action:Xm,safeAction:Zm}=v(_l,async(e,t)=>{let{appId:n,...r}=wl.parse(t);return await e.post(`/apps/${n}/is-allowed`,r)}),hr=ne.object({is_onchain:ne.boolean(),total:ne.number().default(0),allowed_count:ne.number().default(0),denied_count:ne.number().default(0),error_count:ne.number().default(0)}),Cl=hr.extend({results:ne.array(gr.extend({cvm_id:ne.number()})).default([]),skipped_cvm_ids:ne.array(ne.number()).default([])}),kl=hr.extend({results:ne.array(Vt.extend({cvm_id:ne.string()})).default([]),skipped_cvm_ids:ne.array(ne.string()).default([])}),Ym=ne.union([Cl,kl]);var ef=ne.object({appId:ne.string().min(1)});var nf=pe.object({page:pe.number().int().min(1).optional(),page_size:pe.number().int().min(1).max(100).optional(),search:pe.string().optional(),status:pe.array(pe.string()).optional(),listed:pe.boolean().optional(),base_image:pe.string().optional(),instance_type:pe.string().optional(),kms_slug:pe.string().optional(),kms_type:pe.string().optional(),node:pe.string().optional(),region:pe.string().optional()}).strict();var sf=fn.object({appId:fn.string().min(1)}).strict();var af=gn.object({appId:gn.string().min(1)}).strict();var Sl=Ee.object({appId:Ee.string().min(1),name:Ee.string().optional(),node_id:Ee.number().optional(),docker_compose_file:Ee.string().optional(),pre_launch_script:Ee.string().optional(),encrypted_env:Ee.string().optional(),compose_hash:Ee.string().optional(),token:Ee.string().optional(),transaction_hash:Ee.string().optional()}).strict(),{action:lf,safeAction:uf}=v(ui,async(e,t)=>{let n=Sl.parse(t),{appId:r,...s}=n;return await e.post(`/apps/${r}/instances`,s)}),br=G.object({device_id:G.string(),node_name:G.string().nullable(),allowed_onchain:G.boolean(),status:G.string()}),vr=br.extend({cvm_ids:G.array(G.number())}),yr=br.extend({cvm_ids:G.array(G.string())}),_r=G.object({is_onchain_kms:G.boolean(),allow_any_device:G.boolean().nullable().optional(),chain_id:G.number().nullable().optional(),app_contract_address:G.string().nullable().optional()}),El=_r.extend({devices:G.array(vr).optional().default([])}),Al=_r.extend({devices:G.array(yr).optional().default([])}),df=G.union([vr,yr]),mf=G.union([El,Al]);var ff=G.object({appId:G.string().min(1)}).strict();var hf=mt.object({appId:mt.string().min(1),page:mt.number().int().min(1).optional(),page_size:mt.number().int().min(1).max(1e3).optional()}).strict();var vf=ft.object({appId:ft.string().min(1),revisionId:ft.string().min(1),rawComposeFile:ft.boolean().optional()}).strict();var _f=oe.object({statuses:oe.array(oe.string()),image_versions:oe.array(oe.string()),instance_types:oe.array(oe.string()),kms_slugs:oe.array(oe.string()),kms_types:oe.array(oe.string()),regions:oe.array(oe.string()),nodes:oe.array(oe.string())});var Rl=E.object({contract_address:E.string(),chain_id:E.number().nullable(),version:E.string(),url:E.string(),gateway_app_id:E.string().nullable(),gateway_app_url:E.string(),kms_type:E.string()}),hn=E.object({app_id:E.string().optional(),instance_id:E.string().optional(),app_name:E.string().optional(),device_id:E.string().optional()}).passthrough().nullable(),Il=E.object({vm_uuid:E.string().nullable().optional(),name:E.string().optional(),instance_id:E.string().nullable().optional(),status:E.string().optional(),image_version:E.string().nullable().optional(),quote:E.string().nullable().optional(),ppid:E.string().optional(),ppid_sha256:E.string().nullable().optional(),device_id:E.string().optional(),fmspc:E.string().nullable().optional(),tee_tcb_svn:E.string().nullable().optional(),mr_config_id:E.string().nullable().optional(),cpusvn:E.string().nullable().optional(),pcesvn:E.number().nullable().optional(),tcb_info:ar.nullable().optional(),app_certificates:E.array(or).nullable().optional(),compose_file:E.string().nullable().optional(),error:E.string().nullable().optional()}),xl=E.object({app_id:E.string(),contract_address:E.string(),kms_info:Rl,instances:E.array(Il),kms_guest_agent_info:hn,gateway_guest_agent_info:hn,qemu_version:E.string().nullable()}),Tl=E.object({appId:E.string().min(1)}).strict(),{action:Cf,safeAction:kf}=v(xl,async(e,t)=>{let{appId:n}=Tl.parse(t);return await e.get(`/apps/${n}/attestations`)});var Pl;function wr(){return Pl}import Nl from"path";import Mt from"fs-extra";import Ll from"@iarna/toml";import{z as ve}from"zod";import ie from"chalk";import ql from"ora";var jl=!1;function Ce(){return jl}function $l(e,t){let n=e.split(/\s+/),r=[],s="";for(let i of n){let o=s.length===0?i:`${s} ${i}`;o.length<=t?s=o:(s.length>0&&r.push(s),s=i)}return s.length>0&&r.push(s),r}function Ol(e,t){if(e.length<=t)return[e];let n=[],r=0;for(;r<e.length;)n.push(e.slice(r,r+t)),r+=t;return n}function Cr(e,t){let n=[];for(let r of e.split(`
21
- `)){if(r.length<=t){n.push(r);continue}if(r.indexOf(" ")===-1){n.push(...Ol(r,t));continue}let s=$l(r,t);n.push(...s)}if(n.length===0){let r=e.trim();n.push(r)}return n}var Oe={error:(e,...t)=>{Ce()||(process.stderr.write(`${ie.red("\u2717")} ${ie.red(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
22
- `))},warn:(e,...t)=>{Ce()||(process.stderr.write(`${ie.yellow("\u26A0")} ${ie.yellow(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
23
- `))},info:(e,...t)=>{Ce()||(process.stderr.write(`${ie.blue("\u2139")} ${ie.blue(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
24
- `))},success:(e,...t)=>{Ce()||(process.stderr.write(`${ie.green("\u2713")} ${ie.green(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
25
- `))},debug:(e,...t)=>{Ce()||process.env.DEBUG&&(process.stderr.write(`${ie.gray("\u{1F50D}")} ${ie.gray(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
26
- `))},table:(e,t)=>{if(!Ce()){if(e.length===0){console.log(ie.yellow("No data to display"));return}if(t){let n;typeof t[0]=="string"?n=t.map(o=>({key:o,header:o})):n=t;let r={};for(let o of n){let a=o.header||String(o.key);r[String(o.key)]=a.length}for(let o of e)for(let a of n){let u=String(typeof a.key=="string"&&!(a.key in o)?"":o[String(a.key)]??"");r[String(a.key)]=Math.max(r[String(a.key)],u.length)}let s=[];for(let o of n){let a=o.header||String(o.key);s.push(ie.bold(a.padEnd(r[String(o.key)])))}console.log(s.join(" "));let i=[];for(let o of n)i.push("-".repeat(r[String(o.key)]));console.log(i.join(" "));for(let o of e){let a=[];for(let u of n){let f=String(typeof u.key=="string"&&!(u.key in o)?"":o[String(u.key)]??"");a.push(f.padEnd(r[String(u.key)]))}console.log(a.join(" "))}}else{let n=e[0],r=Object.keys(n),s={};for(let a of r)s[a]=a.length;for(let a of e)for(let u of r){let f=String(a[u]??"");s[u]=Math.max(s[u],f.length)}let i=[];for(let a of r)i.push(ie.bold(a.padEnd(s[a])));console.log(i.join(" "));let o=[];for(let a of r)o.push("-".repeat(s[a]));console.log(o.join(" "));for(let a of e){let u=[];for(let f of r){let d=String(a[f]??"");u.push(d.padEnd(s[f]))}console.log(u.join(" "))}}}},keyValueTable:(e,t)=>{if(Ce())return;let{borderStyle:n="single",keyColor:r=ie.blue,valueColor:s=ie.white,maxWidth:i=process.stdout.columns||80}=t||{},a={single:{topLeft:"\u250C",topRight:"\u2510",bottomLeft:"\u2514",bottomRight:"\u2518",horizontal:"\u2500",vertical:"\u2502",cross:"\u253C",leftT:"\u251C",rightT:"\u2524"},double:{topLeft:"\u2554",topRight:"\u2557",bottomLeft:"\u255A",bottomRight:"\u255D",horizontal:"\u2550",vertical:"\u2551",cross:"\u256C",leftT:"\u2560",rightT:"\u2563"},rounded:{topLeft:"\u256D",topRight:"\u256E",bottomLeft:"\u2570",bottomRight:"\u256F",horizontal:"\u2500",vertical:"\u2502",cross:"\u253C",leftT:"\u251C",rightT:"\u2524"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomLeft:"\u2517",bottomRight:"\u251B",horizontal:"\u2501",vertical:"\u2503",cross:"\u254B",leftT:"\u2523",rightT:"\u252B"},none:{topLeft:"",topRight:"",bottomLeft:"",bottomRight:"",horizontal:"",vertical:"",cross:"",leftT:"",rightT:""}}[n],u=0,f=0;for(let[S,I]of Object.entries(e)){u=Math.max(u,S.length);let O=String(I??"");f=Math.max(f,O.length)}let d=4,m=1,h=i-d-m;if(u+f>h){let S=u/(u+f);u=Math.floor(h*S),f=h-u}let _=u+f+d+m;n!=="none"&&console.log(a.topLeft+a.horizontal.repeat(_-2)+a.topRight);for(let[S,I]of Object.entries(e)){let O=S,se=String(I??""),ge=Cr(O,u),Pe=Cr(se,f),ke=Math.max(ge.length,Pe.length);for(;ge.length<ke;)ge.push("");for(;Pe.length<ke;)Pe.push("");for(let je=0;je<ke;je++){let Fe=ge[je].padEnd(u),ct=Pe[je].padEnd(f);console.log(n!=="none"?`${a.vertical} ${r(Fe)} ${a.vertical} ${s(ct)} ${a.vertical}`:`${r(Fe)} : ${s(ct)}`)}}n!=="none"&&console.log(a.bottomLeft+a.horizontal.repeat(_-2)+a.bottomRight)},break:()=>{Ce()||process.stderr.write(`
27
- `)},startSpinner:e=>{if(Ce())return{stop:()=>{}};let t=ql(e).start();return{stop:(n=!0,r)=>{r&&(t.text=r),n?t.succeed():t.fail()}}},logDetailedError(e,t){if(Ce())return;let n=t?`[${t}] `:"",r=(o,a)=>{let u,f=typeof a=="string"?a:void 0;if(typeof o=="string"&&(u=o),o instanceof URL&&(u=o.toString()),typeof Request<"u"&&o instanceof Request&&(u=o.url,f??=o.method),!u)return;let d=f?.trim().toUpperCase();return d?`${d} ${u}`:u},s=o=>o!==null&&typeof o=="object"&&("status"in o||"detail"in o||"requestId"in o);if((o=>o!==null&&typeof o=="object"&&"issues"in o&&Array.isArray(o.issues))(e)){process.stderr.write(`${n}Validation error: ${JSON.stringify(e.issues)}
20
+ `,oe,Ce,sn(S.status,S.statusText,S.headers,S._data))}ie&&ie({request:$,response:S,options:M})}})}get raw(){return this.fetchInstance}on(t,n){this.emitter.on(t,n)}off(t,n){this.emitter.off(t,n)}once(t,n){let r=s=>{n(s),this.emitter.off(t,r)};this.emitter.on(t,r)}async request(t,n){try{let r=n?.method||"GET";return await this.fetchInstance(t,{...n,method:r})}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}async requestFull(t,n){try{let r=n?.method||"GET",s=await this.fetchInstance.raw(t,{...n,method:r,ignoreResponseError:!0});return{status:s.status,statusText:s.statusText,headers:s.headers,data:s._data,ok:s.ok}}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}async get(t,n){try{return await this.fetchInstance(t,{...n,method:"GET"})}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}buildRequestOptions(t,n,r){let s={...r,method:t,body:n};if(n instanceof FormData){let i=s.headers;s.headers={...i,"Content-Type":""}}return s}async post(t,n,r){try{return await this.fetchInstance(t,this.buildRequestOptions("POST",n,r))}catch(s){let i=this.convertToRequestError(s);throw this.emitError(i)}}async put(t,n,r){try{return await this.fetchInstance(t,this.buildRequestOptions("PUT",n,r))}catch(s){let i=this.convertToRequestError(s);throw this.emitError(i)}}async patch(t,n,r){try{return await this.fetchInstance(t,this.buildRequestOptions("PATCH",n,r))}catch(s){let i=this.convertToRequestError(s);throw this.emitError(i)}}async delete(t,n){try{return await this.fetchInstance(t,{...n,method:"DELETE"})}catch(r){let s=this.convertToRequestError(r);throw this.emitError(s)}}convertToRequestError(t){return t&&typeof t=="object"&&"data"in t?vt.fromFetchError(t):t instanceof Error?vt.fromError(t):new vt("Unknown error occurred",{detail:"Unknown error occurred"})}emitError(t){let n=ws(t);return this.emitter.emit("error",n),n}async safeRequest(t){try{return{success:!0,data:await t()}}catch(n){if(n instanceof be)return{success:!1,error:n};let r=this.convertToRequestError(n);return this.emitError(r),{success:!1,error:r}}}async safeGet(t,n){return this.safeRequest(()=>this.get(t,n))}async safePost(t,n,r){return this.safeRequest(()=>this.post(t,n,r))}async safePut(t,n,r){return this.safeRequest(()=>this.put(t,n,r))}async safePatch(t,n,r){return this.safeRequest(()=>this.patch(t,n,r))}async safeDelete(t,n){return this.safeRequest(()=>this.delete(t,n))}async safeRequestMethod(t,n){return this.safeRequest(()=>this.request(t,n))}async safeRequestFull(t,n){return this.safeRequest(()=>this.requestFull(t,n))}withVersion(t){return new Cn({...this.config,version:t})}extend(t){let n=typeof t=="function"?t(this):t,r=Object.create(this);for(let[s,i]of Object.entries(n))typeof i=="function"&&(r[s]=(...o)=>i(this,...o));return r}};function Rs(e={}){return new As(e)}var Is=q.object({username:q.string(),email:q.string(),role:q.enum(["admin","user"]),avatar:q.string(),email_verified:q.boolean(),totp_enabled:q.boolean(),has_backup_codes:q.boolean(),flag_has_password:q.boolean()}).passthrough(),xs=q.object({id:q.string(),name:q.string(),slug:q.string().nullable(),tier:q.string(),role:q.string(),avatar:q.string().nullable().optional()}).passthrough(),Ts=q.object({balance:q.string().or(q.number()),granted_balance:q.string().or(q.number()),is_post_paid:q.boolean(),outstanding_amount:q.string().or(q.number()).nullable()}).passthrough(),Ps=q.object({user:Is,workspace:xs,credits:Ts}).passthrough(),js=$e.object({username:$e.string(),email:$e.string(),credits:$e.number(),granted_credits:$e.number(),avatar:$e.string(),team_name:$e.string(),team_tier:$e.string()}).passthrough();function qs(e){return e==="2025-10-28"?js:Ps}async function kn(e,t){let n=await e.get("/auth/me");return t?.schema===!1?n:(t?.schema||qs(e.config.version)).parse(n)}async function $s(e,t){try{return{success:!0,data:await kn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var Sn={[cn.id]:cn,[an.id]:an,[on.id]:on},Os=je.object({id:je.string(),slug:je.string().nullable(),url:je.string(),version:je.string(),chain_id:je.number().nullable(),kms_contract_address:je.string().nullable().transform(e=>e),gateway_app_id:je.string().nullable().transform(e=>e),k256_pubkey:je.string().nullable().optional()}).passthrough(),ye=Os.transform(e=>{if(e.chain_id!=null){let t=Sn[e.chain_id];if(t)return{...e,chain:t}}return e}),En=p.union([p.number(),p.string()]),Ns=p.object({id:p.string(),name:p.string(),status:p.string(),uptime:p.string(),app_url:p.string().nullable(),app_id:p.string(),instance_id:p.string().nullable(),configuration:p.any().optional(),exited_at:p.string().nullable(),boot_progress:p.string().nullable(),boot_error:p.string().nullable(),shutdown_progress:p.string().nullable(),image_version:p.string().nullable()}),Ls=p.object({id:En,username:p.string()}),An=p.object({id:p.number(),name:p.string(),region_identifier:p.string().nullable().optional()}),$t=p.object({vcpu:p.number(),memory:p.number(),disk_size:p.number(),gpu_count:p.number().default(0)}),Ot=p.object({app:p.string(),instance:p.string()}),Us=p.object({hosted:Ns,name:p.string(),managed_user:Ls.nullable(),node:An.nullable(),listed:p.boolean().default(!1),status:p.string(),in_progress:p.boolean().default(!1),dapp_dashboard_url:p.string().nullable(),syslog_endpoint:p.string().nullable(),allow_upgrade:p.boolean().default(!1),project_id:p.string().nullable(),project_type:p.string().nullable(),billing_period:p.string().nullable(),kms_info:ye.nullable(),vcpu:p.number().nullable(),memory:p.number().nullable(),disk_size:p.number().nullable(),gateway_domain:p.string().nullable(),public_urls:p.array(Ot),machine_info:$t.nullable().optional(),updated_at:p.string().nullable().optional()}),Rn=p.object({id:En,name:p.string(),status:p.string(),in_progress:p.boolean().optional().default(!1),teepod_id:p.number().nullable(),teepod:An.optional().nullable(),app_id:p.string(),vm_uuid:p.string().nullable(),instance_id:p.string().nullable(),vcpu:p.number(),memory:p.number(),disk_size:p.number(),base_image:p.string().nullable(),encrypted_env_pubkey:p.string().nullable(),listed:p.boolean().optional().default(!1),project_id:p.string().optional().nullable(),project_type:p.string().optional().nullable(),instance_type:p.string().optional().nullable(),public_sysinfo:p.boolean().optional().default(!1),public_logs:p.boolean().optional().default(!1),managed_env:p.boolean().optional().default(!1),dapp_dashboard_url:p.string().optional().nullable(),syslog_endpoint:p.string().optional().nullable(),kms_info:ye.optional().nullable(),contract_address:p.string().optional().nullable(),deployer_address:p.string().optional().nullable(),scheduled_delete_at:p.string().optional().nullable(),public_urls:p.array(Ot).optional().default([]),gateway_domain:p.string().optional().nullable(),machine_info:$t.optional().nullable(),updated_at:p.string().optional().nullable()}),zs=p.object({items:p.array(Us),total:p.number(),page:p.number(),page_size:p.number(),pages:p.number()}),Fs=l.enum(["skip","hourly","monthly"]),Ds=l.enum(["phala","ethereum","base","legacy"]),Nt=l.object({object_type:l.literal("user"),id:l.string().nullable().optional(),username:l.string().nullable().optional(),avatar_url:l.string().nullable().optional()}),Lt=l.object({object_type:l.literal("workspace"),id:l.string(),name:l.string(),slug:l.string().nullable().optional(),avatar_url:l.string().nullable().optional()}),Vs=l.object({instance_type:l.string().nullable().optional(),vcpu:l.number().int().nullable().optional(),memory_in_gb:l.number().nullable().optional(),disk_in_gb:l.number().int().nullable().optional(),gpus:l.number().int().nullable().optional(),compute_billing_price:l.string().nullable().optional(),billing_period:Fs.nullable().optional()}),Ks=l.object({total:l.string().nullable().optional(),compute:l.string().nullable().optional(),disk:l.string().nullable().optional()}),Ms=l.object({order_id:l.string(),status:l.string(),pricing_plan:l.string().nullable().optional(),commitment_days:l.number().int().nullable().optional(),auto_renew:l.boolean().optional().default(!1),expires_at:l.string().nullable().optional(),renewal_in_progress:l.boolean().optional().default(!1),renewal_next_attempt_at:l.string().nullable().optional(),agreed_hourly_rate:l.string().nullable().optional(),hourly_billing_start_time:l.string().nullable().optional(),activated_at:l.string().nullable().optional(),completed_at:l.string().nullable().optional(),cancelled_at:l.string().nullable().optional(),decoupled_at:l.string().nullable().optional(),sku_code:l.string().nullable().optional(),sku_display_name:l.string().nullable().optional()}),Hs=l.object({name:l.string().nullable().optional(),version:l.string().nullable().optional(),is_dev:l.boolean().nullable().optional(),os_image_hash:l.string().nullable().optional()}),Gs=l.object({chain_id:l.number().int().nullable().optional(),dstack_kms_address:l.string().nullable().optional(),dstack_app_address:l.string().nullable().optional(),deployer_address:l.string().nullable().optional(),rpc_endpoint:l.string().nullable().optional(),encrypted_env_pubkey:l.string().nullable().optional()}),Bs=Gs.transform(e=>{if(e.chain_id!=null){let t=Sn[e.chain_id];if(t)return{...e,chain:t}}return e}),Ws=l.object({target:l.string().nullable().optional(),started_at:l.string().nullable().optional(),correlation_id:l.string().nullable().optional()}),Js=l.object({base_domain:l.string().nullable().optional(),cname:l.string().nullable().optional()}),Xs=l.object({serial:l.string().nullable().optional(),stdout:l.string().nullable().optional(),stderr:l.string().nullable().optional(),container_log_base:l.string().nullable().optional()}),In=l.object({device_id:l.string(),algorithm_version:l.string(),enabled:l.boolean()}),xn=l.object({object_type:l.literal("node"),id:l.number().int().nullable().optional(),name:l.string().nullable().optional(),region:l.string().nullable().optional(),device_id:l.string().nullable().optional(),device_ids:l.array(In).default([]),ppid:l.string().nullable().optional(),status:l.string().nullable().optional(),version:l.string().nullable().optional()});var lt=l.object({id:l.string(),name:l.string(),app_id:l.string().nullable().optional(),vm_uuid:l.string().nullable().optional(),instance_id:l.string().nullable().optional(),resource:Vs,node_info:xn.nullable().optional(),os:Hs.nullable().optional(),kms_type:Ds.nullable().optional(),kms_info:Bs.nullable().optional(),status:l.string(),in_progress:l.boolean().optional().default(!1),progress:Ws.nullable().optional(),compose_hash:l.string().nullable().optional(),docker_compose_hash:l.string().nullable().optional(),pre_launch_script_hash:l.string().nullable().optional(),gateway:Js,logs:Xs.optional().default({}),services:l.array(l.record(l.any())).optional().default([]),endpoints:l.array(Ot).nullable().optional(),public_logs:l.boolean().optional(),public_sysinfo:l.boolean().optional(),public_tcbinfo:l.boolean().optional(),gateway_enabled:l.boolean().optional(),secure_time:l.boolean().optional(),managed_env:l.boolean().optional().default(!1),listed:l.boolean().optional().default(!1),storage_fs:l.string().optional(),workspace:Lt.nullable().optional(),creator:Nt.nullable().optional(),created_at:l.string().nullable().optional(),deleted_at:l.string().nullable().optional(),project_type:l.string().nullable().optional(),hourly_rate:Ks.nullable().optional(),billing_interval:l.string().nullable().optional(),gpu_rental_order:Ms.nullable().optional()}),yt=lt.extend({id:l.string()}),Zs=lt.extend({compose_file:l.union([l.record(l.any()),l.string()]).nullable().optional()}),Qs=yt.extend({compose_file:l.union([l.record(l.any()),l.string()]).nullable().optional()}),Tn=l.object({items:l.array(lt),total:l.number(),page:l.number(),page_size:l.number(),pages:l.number()}),Ys=Tn.extend({items:l.array(yt)});function Pn(e){if(e?.schema!==void 0&&e?.schema!==!1&&(typeof e.schema!="object"||e.schema===null||!("parse"in e.schema)||typeof e.schema.parse!="function"))throw new Error("Invalid schema: must be a Zod schema object, false, or undefined")}function jn(e){if(e?.schema!==void 0&&e?.schema!==!1&&(typeof e.schema!="object"||e.schema===null||!("parse"in e.schema)||typeof e.schema.parse!="function"))return{success:!1,error:{name:"ZodError",message:"Invalid schema: must be a Zod schema object, false, or undefined",issues:[{code:"invalid_type",expected:"object",received:typeof e.schema,path:["schema"],message:"Invalid schema: must be a Zod schema object, false, or undefined"}]}}}function Ut(e,t){function n(o,a){return r(o,a)}async function r(o,a){Pn(a);let u=await t(o);return a?.schema===!1?u:(a?.schema||e).parse(u)}function s(o,a){return i(o,a)}async function i(o,a){let u=jn(a);if(u)return u;let f=await(async()=>{try{return{success:!0,data:await t(o)}}catch(m){return m&&typeof m=="object"&&"status"in m?{success:!1,error:m}:m&&typeof m=="object"&&"issues"in m?{success:!1,error:m}:{success:!1,error:{name:"Error",message:m instanceof Error?m.message:String(m)}}}})();return f.success?a?.schema===!1?{success:!0,data:f.data}:(a?.schema||e).safeParse(f.data):f}return{action:n,safeAction:s}}function v(e,t){function n(o,...a){let[u,f]=a;return r(o,u,f)}async function r(o,a,u){Pn(u);let f=await t(o,a);return u?.schema===!1?f:(u?.schema||e).parse(f)}function s(o,...a){let[u,f]=a;return i(o,u,f)}async function i(o,a,u){let f=jn(u);if(f)return f;let d=await(async()=>{try{return{success:!0,data:await t(o,a)}}catch(h){return h&&typeof h=="object"&&"status"in h?{success:!1,error:h}:h&&typeof h=="object"&&"issues"in h?{success:!1,error:h}:{success:!1,error:{name:"Error",message:h instanceof Error?h.message:String(h)}}}})();return d.success?u?.schema===!1?{success:!0,data:d.data}:(u?.schema||e).safeParse(d.data):d}return{action:n,safeAction:s}}var eo=C.object({name:C.string(),is_dev:C.boolean(),version:C.union([C.tuple([C.number(),C.number(),C.number()]),C.tuple([C.number(),C.number(),C.number(),C.number()])]),os_image_hash:C.string().nullable().optional()}).passthrough(),qn=C.object({teepod_id:C.number(),name:C.string(),listed:C.boolean(),resource_score:C.number(),remaining_vcpu:C.number(),remaining_memory:C.number(),remaining_cvm_slots:C.number(),images:C.array(eo),support_onchain_kms:C.boolean().optional(),fmspc:C.string().nullable().optional(),device_id:C.string().nullable().optional(),device_ids:C.array(In).default([]),region_identifier:C.string().nullable().optional(),default_kms:C.string().nullable().optional(),kms_list:C.array(C.string()).default([])}).passthrough(),$n=C.object({max_instances:C.number().nullable().optional(),max_vcpu:C.number().nullable().optional(),max_memory:C.number().nullable().optional(),max_disk:C.number().nullable().optional()}).passthrough(),to=C.object({tier:C.string(),capacity:$n,nodes:C.array(qn),kms_list:C.array(ye)}).passthrough(),{action:no,safeAction:ro}=Ut(to,async e=>await e.get("/teepods/available")),nt=b.union([b.number(),b.string()]),rt=b.string(),so=b.object({has_reserved_gpus:b.boolean(),reserved_gpu_count:b.number(),has_public_gpus:b.boolean(),public_gpu_count:b.number()}).passthrough(),On=b.object({id:nt,slug:b.string().nullable().optional(),url:b.string(),version:b.string().nullable().optional(),kms_type:b.string(),chain_id:b.number().nullable().optional(),kms_contract_id:nt.nullable().optional(),kms_contract_address:b.string().nullable().optional(),gateway_app_id:b.string().nullable().optional(),supported_os_images:b.array(b.string()).default([])}).passthrough(),Nn=b.object({teepod_id:b.number(),kms_id:nt,kms_type:b.string(),kms_contract_id:nt.nullable().optional(),kms_contract_address:b.string().nullable().optional(),supported_os_images:b.array(b.string()).default([])}).passthrough(),Ln=b.object({id:nt,teepod_id:b.number().nullable().optional(),kms_contract_id:nt,rpc_url:b.string().nullable().optional(),domain_suffix:b.string().nullable().optional(),enabled:b.boolean()}).passthrough(),oo=On.extend({id:rt,kms_contract_id:rt.nullable().optional()}),ao=Nn.extend({kms_id:rt,kms_contract_id:rt.nullable().optional()}),io=Ln.extend({id:rt,kms_contract_id:rt}),co=b.object({id:b.string(),name:b.string(),vcpu:b.number(),memory_mb:b.number(),default_disk_size_gb:b.number(),requires_gpu:b.boolean(),requires_gpu_count:b.number(),family:b.string().nullable().optional(),display_order:b.number().nullable().optional()}).passthrough(),Un=b.object({tier:b.string(),capacity:$n,nodes:b.array(qn),kms_nodes:b.array(On),node_kms_relations:b.array(Nn),gateway_nodes:b.array(Ln),instance_types:b.array(co),gpu_availability:so}).passthrough(),lo=Un.extend({kms_nodes:b.array(oo),node_kms_relations:b.array(ao),gateway_nodes:b.array(io)});function zn(e){return e==="2026-01-21"?Un:lo}async function uo(e,t){let n=await e.get("/teepods/cvm-create-resources");return t?.schema===!1?n:(t?.schema||zn(e.config.version)).parse(n)}async function po(e,t){try{let n=await e.get("/teepods/cvm-create-resources");return t?.schema===!1?{success:!0,data:n}:{success:!0,data:(t?.schema||zn(e.config.version)).parse(n)}}catch(n){return{success:!1,error:n}}}var Fn=K.object({id:K.string(),name:K.string(),description:K.string(),vcpu:K.number(),memory_mb:K.number(),hourly_rate:K.string(),requires_gpu:K.boolean(),default_disk_size_gb:K.number().default(20),family:K.string().nullable()}).passthrough(),mo=K.object({name:K.string(),items:K.array(Fn),total:K.number()}).strict(),fo=K.object({result:K.array(mo)}).strict(),go=K.object({items:K.array(Fn),total:K.number(),family:K.string()}).strict(),ho=K.object({family:K.string()}).strict(),{action:bo,safeAction:vo}=v(fo,async e=>await e.get("/instance-types")),{action:yo,safeAction:_o}=v(go,async(e,t)=>{let n=ho.parse(t);return await e.get(`/instance-types/${n.family}`)}),Dn=J.object({id:J.string(),name:J.string(),slug:J.string().nullable(),avatar_url:J.string().nullable().optional(),description:J.string().nullable().optional(),tier:J.string(),role:J.string(),is_default:J.boolean(),created_at:J.string(),confidential_models_enabled:J.boolean().optional(),billing_status:J.enum(["active","suspended","abandoned"]).default("active"),suspended_at:J.string().nullable().optional()}).passthrough(),wo=J.object({has_more:J.boolean(),next_cursor:J.string().nullable(),total:J.number().nullable()}).passthrough(),Co=J.object({data:J.array(Dn),pagination:wo}).passthrough(),{action:ko,safeAction:So}=v(Co,async(e,t)=>{let n=new URLSearchParams;t?.cursor&&n.append("cursor",t.cursor),t?.limit&&n.append("limit",t.limit.toString());let r=n.toString()?`/workspaces?${n.toString()}`:"/workspaces";return await e.get(r)}),{action:Eo,safeAction:Ao}=v(Dn,async(e,t)=>await e.get(`/workspaces/${t}`));function Vn(e){return typeof e!="string"||e.length<5||e.length>63?!1:/^[a-zA-Z](?!.*--)([a-zA-Z0-9-]*[a-zA-Z0-9])?$/.test(e)}var ae=Ge.object({id:Ge.string().optional(),uuid:Ge.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i,"Invalid UUID format").optional(),app_id:Ge.string().optional(),instance_id:Ge.string().optional(),name:Ge.string().refine(Vn,{message:"Name must be 5-63 characters, start with letter, and contain only letters/numbers/hyphens"}).optional()}),me=e=>e.refine(t=>{let n=t;return!!(n.id||n.uuid||n.app_id||n.instance_id||n.name)},{message:"One of id, uuid, app_id, instance_id, or name must be provided"}),Ro=me(ae),j=Ro.transform(e=>{let t;if(e.id)t=e.id;else if(e.uuid)t=e.uuid;else if(e.app_id)t=e.app_id;else if(e.instance_id)t=e.instance_id;else{if(e.name)return{cvmId:e.name};throw new Error("No valid identifier provided")}let n=/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i,r=/^[0-9a-f]{40}$/i,s;return n.test(t)?s=t.replace(/-/g,""):r.test(t)?s=`app_${t}`:s=t,{cvmId:s}}),Io=j;function xo(e){return e==="2025-10-28"?Rn:e==="2026-01-21"?Zs:Qs}async function Kn(e,t){let{cvmId:n}=Io.parse(t),r=await e.get(`/cvms/${n}`);return xo(e.config.version).parse(r)}async function Ct(e,t){try{return{success:!0,data:await Kn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var To=Be.object({page:Be.number().int().min(1).optional(),page_size:Be.number().int().min(1).optional(),family:Be.enum(["all","cpu","gpu"]).optional(),instance_types:Be.array(Be.string()).optional()}).strict();function Po(e){return e==="2025-10-28"?zs:e==="2026-01-21"?Tn:Ys}async function Mn(e,t){let n=To.parse(t??{}),r=await e.get("/cvms/paginated",{params:n});return Po(e.config.version).parse(r)}async function zt(e,t){try{return{success:!0,data:await Mn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var ln=200*1024;function Hn(e,t,n){let r=new TextEncoder,s=e?r.encode(e).byteLength:0,i=t?r.encode(t).byteLength:0,o=s+i;if(o>ln){let a=ln/1024,u=Math.ceil(o/1024);n.addIssue({code:R.ZodIssueCode.custom,message:`Combined size of docker_compose_file and pre_launch_script must not exceed ${a}KB (current: ${u}KB)`})}}var Gn=R.object({allowed_envs:R.array(R.string()).optional(),docker_compose_file:R.string(),features:R.array(R.string()).optional(),name:R.string().optional(),manifest_version:R.number().optional(),runner:R.string().optional(),kms_enabled:R.boolean().optional(),gateway_enabled:R.boolean().optional(),tproxy_enabled:R.boolean().optional(),local_key_provider_enabled:R.boolean().optional(),key_provider:R.enum(["none","kms","local","tpm"]).optional(),key_provider_id:R.string().optional(),public_logs:R.boolean().optional(),public_sysinfo:R.boolean().optional(),public_tcbinfo:R.boolean().optional(),no_instance_id:R.boolean().optional(),secure_time:R.boolean().optional(),port_policy:R.object({ports:R.array(R.object({port:R.number().int().min(1).max(65535),pp:R.boolean()})),restrict_mode:R.boolean()}).optional(),storage_fs:R.enum(["ext4","zfs"]).optional(),swap_size:R.string().optional(),pre_launch_script:R.string().optional(),env_pubkey:R.string().optional(),salt:R.string().optional().nullable()}).passthrough().superRefine((e,t)=>{Hn(e.docker_compose_file,e.pre_launch_script,t)}),jo=g.object({app_id:g.string().nullable().optional(),app_env_encrypt_pubkey:g.string().nullable().optional(),compose_hash:g.string(),kms_info:ye.nullable().optional(),fmspc:g.string().nullable().optional(),device_id:g.string().nullable().optional(),os_image_hash:g.string().nullable().optional(),instance_type:g.string().nullable().optional(),teepod_id:g.number().nullable().optional(),node_id:g.number().nullable().optional(),kms_id:g.string().nullable().optional(),kms_contract_id:g.union([g.string(),g.number()]).nullable().optional()}).passthrough().transform(e=>{if("teepod_id"in e&&e.teepod_id!==void 0){let{teepod_id:t,...n}=e;return{...n,node_id:t}}return e}),xt="Name must be 5-63 characters, start with letter, and contain only letters/numbers/hyphens",qo=g.object({node_id:g.number().optional(),teepod_id:g.number().optional(),region:g.string().optional(),name:g.string().min(5,xt).max(63,xt).refine(e=>Vn(e),xt),instance_type:g.string().optional(),image:g.string().optional(),vcpu:g.number().optional(),memory:g.number().optional(),disk_size:g.number().optional(),compose_file:g.object({allowed_envs:g.array(g.string()).optional(),pre_launch_script:g.string().optional(),docker_compose_file:g.string().optional(),name:g.string().optional().default(""),kms_enabled:g.boolean().optional(),gateway_enabled:g.boolean().optional(),tproxy_enabled:g.boolean().optional(),local_key_provider_enabled:g.boolean().optional(),key_provider:g.enum(["none","kms","local","tpm"]).optional(),key_provider_id:g.string().optional(),public_logs:g.boolean().optional(),public_sysinfo:g.boolean().optional(),public_tcbinfo:g.boolean().optional(),no_instance_id:g.boolean().optional(),secure_time:g.boolean().optional(),storage_fs:g.enum(["ext4","zfs"]).optional(),swap_size:g.string().optional(),port_policy:g.object({ports:g.array(g.object({port:g.number(),pp:g.boolean()})),restrict_mode:g.boolean()}).optional()}).passthrough().superRefine((e,t)=>{Hn(e.docker_compose_file,e.pre_launch_script,t)}),listed:g.boolean().optional(),kms_id:g.string().optional(),kms:g.enum(["PHALA","ETHEREUM","BASE"]).optional(),kms_contract:g.string().optional(),kms_contract_id:g.union([g.string(),g.number()]).optional(),key_provider_mode:g.enum(["kms","local"]).optional(),skip_gateway:g.boolean().optional(),env_keys:g.array(g.string()).optional(),nonce:g.number().optional(),app_id:g.string().optional()}).passthrough().transform(e=>!e.instance_type&&!e.vcpu&&!e.memory?{...e,instance_type:"tdx.small"}:e);function $o(e){if(!e.compose_file)return e;let t={...e.compose_file};return typeof t.gateway_enabled=="boolean"&&typeof t.tproxy_enabled=="boolean"?delete t.tproxy_enabled:typeof t.tproxy_enabled=="boolean"&&typeof t.gateway_enabled>"u"&&(t.gateway_enabled=t.tproxy_enabled,delete t.tproxy_enabled,(typeof window<"u"?window.console:globalThis.console)&&console.warn("[phala/cloud] tproxy_enabled is deprecated, please use gateway_enabled instead. See docs for migration.")),{...e,compose_file:t}}var{action:Oo,safeAction:No}=v(jo,async(e,t)=>{let n=qo.parse(t),r=$o(n);return typeof r.teepod_id=="number"&&typeof r.node_id!="number"&&console.warn("[phala/cloud] teepod_id is deprecated, please use node_id instead."),await e.post("/cvms/provision",r)}),Bn=_.object({name:_.string(),status:_.string(),teepod_id:_.number(),teepod:_.object({id:_.number(),name:_.string()}).nullable(),app_id:_.string().nullable(),vm_uuid:_.string().nullable(),instance_id:_.string().nullable(),app_url:_.string().nullable().default(null),base_image:_.string().nullable(),vcpu:_.number(),memory:_.number(),disk_size:_.number(),manifest_version:_.number().nullable().default(2),version:_.string().nullable().default("1.0.0"),runner:_.string().nullable().default("docker-compose"),docker_compose_file:_.string().nullable(),features:_.array(_.string()).nullable().default(["kms","tproxy-net"]),created_at:_.string(),encrypted_env_pubkey:_.string().nullable().optional(),app_auth_contract_address:_.string().nullable().optional(),deployer_address:_.string().nullable().optional()}).passthrough(),Wn=Bn.extend({id:_.number(),user_id:_.number().nullable()}),Jn=Bn.extend({id:_.string(),user_id:_.string().nullable()}),Hu=_.union([Wn,Jn]);var Gu=_.object({encrypted_env:_.string().optional().nullable(),app_id:_.string(),compose_hash:_.string(),kms_id:_.string().optional(),kms_contract_id:_.union([_.string(),_.number()]).optional(),contract_address:_.string().optional(),deployer_address:_.string().optional(),env_keys:_.array(_.string()).optional().nullable()}).passthrough();function Lo(e){return e==="2026-01-21"?Wn:Jn}async function Xn(e,t){let n=await e.post("/cvms",t);return Lo(e.config.version).parse(n)}async function Uo(e,t){try{return{success:!0,data:await Xn(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}function jt(e){return e==null?e:Array.isArray(e)?e.map(jt):e&&typeof e=="object"&&e.constructor===Object?Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return t[n]=jt(r),t},{}):e}function Zn(e){let t={...e};return t.runner==="bash"&&"docker_compose_file"in t?delete t.docker_compose_file:t.runner==="docker-compose"&&"bash_script"in t&&delete t.bash_script,"pre_launch_script"in t&&!t.pre_launch_script&&delete t.pre_launch_script,t}function Qn(e){let t=jt(e),n=JSON.stringify(t,null,4);return n=n.replace(/": /g,'":'),n}function Fo(e){let t=Zn(e),n=Qn(t);return zo.createHash("sha256").update(n,"utf8").digest("hex")}function Do(e){let t=e;return{...e,getHash:()=>Fo(t),toString:()=>Qn(Zn(t))}}var Vo=Gn.transform(e=>Do(e)),Ko=j,{action:Mo,safeAction:Ho}=v(Vo,async(e,t)=>{let{cvmId:n}=Ko.parse(t);return await e.get(`/cvms/${n}/compose_file`)}),Go=ve.object({id:ve.string().optional(),uuid:ve.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),app_id:ve.string().refine(e=>!e.startsWith("app_")&&e.length===40,"app_id should be 40 characters without prefix").transform(e=>e.startsWith("app_")?e:`app_${e}`).optional(),instance_id:ve.string().refine(e=>!e.startsWith("instance_")&&e.length===40,"instance_id should be 40 characters without prefix").transform(e=>e.startsWith("instance_")?e:`instance_${e}`).optional(),app_compose:Gn,update_env_vars:ve.boolean().optional().nullable()}).refine(e=>!!(e.id||e.uuid||e.app_id||e.instance_id),"One of id, uuid, app_id, or instance_id must be provided").transform(e=>({cvmId:e.id||e.uuid||e.app_id||e.instance_id,request:{...e.app_compose,update_env_vars:e.update_env_vars},_raw:e})),Bo=ve.object({app_id:ve.string().nullable(),device_id:ve.string().nullable(),compose_hash:ve.string(),kms_info:ye.nullable().optional(),compose_hash_registered:ve.boolean().optional().default(!1),compose_unchanged:ve.boolean().optional().default(!1)}).passthrough(),{action:Wo,safeAction:Jo}=v(Bo,async(e,t)=>{let n=Go.parse(t);return await e.post(`/cvms/${n.cvmId}/compose_file/provision`,n.request)}),Xo=ke.object({id:ke.string().optional(),uuid:ke.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),app_id:ke.string().refine(e=>!e.startsWith("app_")&&e.length===40,"app_id should be 40 characters without prefix").transform(e=>e.startsWith("app_")?e:`app_${e}`).optional(),instance_id:ke.string().refine(e=>!e.startsWith("instance_")&&e.length===40,"instance_id should be 40 characters without prefix").transform(e=>e.startsWith("instance_")?e:`instance_${e}`).optional(),compose_hash:ke.string().min(1,"Compose hash is required"),encrypted_env:ke.string().optional(),env_keys:ke.array(ke.string()).optional(),update_env_vars:ke.boolean().optional().nullable()}).refine(e=>!!(e.id||e.uuid||e.app_id||e.instance_id),"One of id, uuid, app_id, or instance_id must be provided").transform(e=>({cvmId:e.id||e.uuid||e.app_id||e.instance_id,compose_hash:e.compose_hash,encrypted_env:e.encrypted_env,env_keys:e.env_keys,update_env_vars:e.update_env_vars??void 0,_raw:e})),Zo=ke.any().transform(()=>{}),{action:Qo,safeAction:Yo}=v(Zo,async(e,t)=>{let n=Xo.parse(t);return await e.patch(`/cvms/${n.cvmId}/compose_file`,{compose_hash:n.compose_hash,encrypted_env:n.encrypted_env,env_keys:n.env_keys,update_env_vars:n.update_env_vars})}),ea=me(ae.extend({encrypted_env:te.string().describe("Encrypted environment variables (hex string)"),env_keys:te.array(te.string()).optional().describe("List of allowed environment variable keys"),compose_hash:te.string().optional().describe("Compose hash for verification (Phase 2, required when env_keys changes)"),transaction_hash:te.string().optional().describe("On-chain transaction hash for verification (Phase 2, required when env_keys changes)")})).transform(e=>{let{cvmId:t}=j.parse(e);return{cvmId:t,request:{encrypted_env:e.encrypted_env,env_keys:e.env_keys,compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),ta=te.object({status:te.literal("in_progress"),message:te.string(),correlation_id:te.string(),allowed_envs_changed:te.boolean()}),na=te.object({status:te.literal("precondition_required"),message:te.string(),compose_hash:te.string(),app_id:te.string(),device_id:te.string(),kms_info:ye}),ra=te.union([ta,na]),{action:sa,safeAction:oa}=v(ra,async(e,t)=>{let n=ea.parse(t);try{return await e.patch(`/cvms/${n.cvmId}/envs`,n.request)}catch(r){if(r instanceof be&&r.status===465){let s=r.detail;if(s&&typeof s=="object"){let i=s,o=i.details;if(o&&Array.isArray(o)){let a=new Map(o.map(h=>[h.field,h.value])),u=a.get("compose_hash"),f=a.get("app_id"),d=a.get("device_id"),m=a.get("kms_info");if(u&&f)return{status:"precondition_required",message:i.message||"Compose hash verification required",compose_hash:u,app_id:f,device_id:d||"",kms_info:m}}}}throw r}}),aa=me(ae.extend({docker_compose_file:ne.string().describe("Docker Compose YAML content"),compose_hash:ne.string().optional().describe("Compose hash for verification (Phase 2, contract-owned KMS only)"),transaction_hash:ne.string().optional().describe("On-chain transaction hash for verification (Phase 2, contract-owned KMS only)")})).transform(e=>{let{cvmId:t}=j.parse(e);return{cvmId:t,request:{docker_compose_file:e.docker_compose_file,compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),ia=ne.object({status:ne.literal("in_progress"),message:ne.string(),correlation_id:ne.string()}),ca=ne.object({status:ne.literal("precondition_required"),message:ne.string(),compose_hash:ne.string(),app_id:ne.string(),device_id:ne.string(),kms_info:ye}),la=ne.object({status:ne.literal("no_change"),message:ne.string()}),ua=ne.union([ia,ca,la]),{action:pa,safeAction:da}=v(ua,async(e,t)=>{let n=aa.parse(t),r={"Content-Type":"text/yaml"};n.request.compose_hash&&(r["X-Compose-Hash"]=n.request.compose_hash),n.request.transaction_hash&&(r["X-Transaction-Hash"]=n.request.transaction_hash);try{return await e.patch(`/cvms/${n.cvmId}/docker-compose`,n.request.docker_compose_file,{headers:r})}catch(s){if(s instanceof be&&s.status===465){let i=s.detail;if(i&&typeof i=="object"){let o=i,a=o.details;if(a&&Array.isArray(a)){let u=new Map(a.map(I=>[I.field,I.value])),f=u.get("compose_hash"),d=u.get("app_id"),m=u.get("device_id"),h=u.get("kms_info");if(f&&d)return{status:"precondition_required",message:o.message||"Compose hash verification required",compose_hash:f,app_id:d,device_id:m||"",kms_info:h}}}}throw s}}),ma=me(ae.extend({pre_launch_script:re.string().describe("Pre-launch script content (shell script)"),compose_hash:re.string().optional().describe("Compose hash for verification (Phase 2, contract-owned KMS only)"),transaction_hash:re.string().optional().describe("On-chain transaction hash for verification (Phase 2, contract-owned KMS only)")})).transform(e=>{let{cvmId:t}=j.parse(e);return{cvmId:t,request:{pre_launch_script:e.pre_launch_script,compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),fa=re.object({status:re.literal("in_progress"),message:re.string(),correlation_id:re.string()}),ga=re.object({status:re.literal("precondition_required"),message:re.string(),compose_hash:re.string(),app_id:re.string(),device_id:re.string(),kms_info:ye}),ha=re.object({status:re.literal("no_change"),message:re.string()}),ba=re.union([fa,ga,ha]),{action:va,safeAction:ya}=v(ba,async(e,t)=>{let n=ma.parse(t),r={"Content-Type":"text/plain"};n.request.compose_hash&&(r["X-Compose-Hash"]=n.request.compose_hash),n.request.transaction_hash&&(r["X-Transaction-Hash"]=n.request.transaction_hash);try{return await e.patch(`/cvms/${n.cvmId}/pre-launch-script`,n.request.pre_launch_script,{headers:r})}catch(s){if(s instanceof be&&s.status===465){let i=s.detail;if(i&&typeof i=="object"){let o=i,a=o.details;if(a&&Array.isArray(a)){let u=new Map(a.map(I=>[I.field,I.value])),f=u.get("compose_hash"),d=u.get("app_id"),m=u.get("device_id"),h=u.get("kms_info");if(f&&d)return{status:"precondition_required",message:o.message||"Compose hash verification required",compose_hash:f,app_id:d,device_id:m||"",kms_info:h}}}}throw s}}),wa=j,{action:Ca,safeAction:ka}=v(_a.string(),async(e,t)=>{let{cvmId:n}=wa.parse(t);return await e.get(`/cvms/${n}/pre-launch-script`)}),Sa=j,Ea=We.object({current_hash:We.string().nullable(),latest_official_hash:We.string(),is_official:We.boolean(),is_latest:We.boolean(),can_upgrade:We.boolean()}),{action:Aa,safeAction:Ra}=v(Ea,async(e,t)=>{let{cvmId:n}=Sa.parse(t);return await e.get(`/cvms/${n}/pre-launch-script/upgrade-status`)}),Ia=me(ae.extend({compose_hash:he.string().optional().describe("Compose hash for verification (Phase 2, contract-owned KMS only)"),transaction_hash:he.string().optional().describe("On-chain transaction hash for verification (Phase 2, contract-owned KMS only)")})).transform(e=>{let{cvmId:t}=j.parse(e);return{cvmId:t,request:{compose_hash:e.compose_hash,transaction_hash:e.transaction_hash},_raw:e}}),xa=he.object({status:he.literal("in_progress"),message:he.string(),correlation_id:he.string()}),Ta=he.object({status:he.literal("precondition_required"),message:he.string(),compose_hash:he.string(),app_id:he.string(),device_id:he.string(),kms_info:ye}),Pa=he.union([xa,Ta]),{action:ja,safeAction:qa}=v(Pa,async(e,t)=>{let n=Ia.parse(t),r={};n.request.compose_hash&&(r["X-Compose-Hash"]=n.request.compose_hash),n.request.transaction_hash&&(r["X-Transaction-Hash"]=n.request.transaction_hash);try{return await e.post(`/cvms/${n.cvmId}/pre-launch-script/upgrade-to-latest-official`,void 0,{headers:r})}catch(s){if(s instanceof be&&s.status===465){let i=s.detail;if(i&&typeof i=="object"){let o=i,a=o.details;if(a&&Array.isArray(a)){let u=new Map(a.map(I=>[I.field,I.value])),f=u.get("compose_hash"),d=u.get("app_id"),m=u.get("device_id"),h=u.get("kms_info");if(f&&d)return{status:"precondition_required",message:o.message||"Compose hash verification required",compose_hash:f,app_id:d,device_id:m||"",kms_info:h}}}}throw s}}),$a=un.object({kms_id:un.string().min(1,"KMS ID is required")}),{action:Oa,safeAction:Na}=v(ye,async(e,t)=>{let n=$a.parse(t);return await e.get(`/kms/${n.kms_id}`,{headers:{"X-Phala-Version":"2026-05-22"}})}),La=xe.object({page:xe.number().int().min(1).optional(),page_size:xe.number().int().min(1).optional(),is_onchain:xe.boolean().optional()}).strict(),Ua=xe.object({items:xe.array(ye),total:xe.number(),page:xe.number(),page_size:xe.number(),pages:xe.number()}).strict(),{action:za,safeAction:Fa}=v(Ua,async(e,t)=>{let n=La.parse(t??{});return await e.get("/kms",{params:n,headers:{"X-Phala-Version":"2026-05-22"}})}),Yn=le.object({id:le.string(),slug:le.string().nullable(),label:le.string().nullable(),contract_address:le.string(),chain_id:le.number(),k256_pubkey:le.string().nullable(),ca_pubkey:le.string().nullable(),node_count:le.number()}).passthrough(),Da=le.object({id:le.string(),slug:le.string().nullable(),url:le.string(),version:le.string(),kms_type:le.string()}).passthrough(),Va="2026-06-23",Ka=Te.object({page:Te.number().int().min(1).optional(),page_size:Te.number().int().min(1).optional(),is_onchain:Te.boolean().optional()}).strict(),Ma=Te.object({items:Te.array(Yn),total:Te.number(),page:Te.number(),page_size:Te.number(),pages:Te.number()}).strict(),{action:Ha,safeAction:Ga}=v(Ma,async(e,t)=>{let n=Ka.parse(t??{});return await e.get("/kms",{params:n,headers:{"X-Phala-Version":Va}})}),Ba="2026-06-23",Wa=pn.object({slug:pn.string().min(1,"KMS contract slug is required")}).strict(),{action:Ja,safeAction:Xa}=v(Yn,async(e,t)=>{let{slug:n}=Wa.parse(t);return await e.get(`/kms/${n}`,{headers:{"X-Phala-Version":Ba}})}),Za="2026-06-23",Qa=ct.object({slug:ct.string().min(1,"KMS contract slug is required")}).strict(),Ya=ct.object({items:ct.array(Da),total:ct.number()}).strict(),{action:ei,safeAction:ti}=v(Ya,async(e,t)=>{let{slug:n}=Qa.parse(t);return await e.get(`/kms/${n}/nodes`,{headers:{"X-Phala-Version":Za}})}),ni=et.object({kms:et.string().min(1,"KMS ID or slug is required"),app_id:et.string().refine(e=>e.length===40||e.startsWith("0x")&&e.length===42,"App ID must be exactly 40 characters or 42 characters with 0x prefix")}).strict(),ri=et.object({public_key:et.string(),signature:et.string()}).strict(),{action:si,safeAction:oi}=v(ri,async(e,t)=>{let n=ni.parse(t);return await e.get(`/kms/${n.kms}/pubkey/${n.app_id}`)}),ai=Fe.object({counts:Fe.number().int().min(1).max(20).optional().default(1)}).strict(),ii=Fe.object({app_ids:Fe.array(Fe.object({app_id:Fe.string(),nonce:Fe.number().int().min(0)}))}).strict(),{action:ci,safeAction:li}=v(ii,async(e,t)=>{let n=ai.parse(t??{}),r=new URLSearchParams;return r.append("counts",n.counts.toString()),await e.get(`/kms/phala/next_app_id?${r.toString()}`)}),er=P.object({name:P.string(),status:P.string(),teepod_id:P.number(),teepod:P.object({id:P.number(),name:P.string(),region_identifier:P.string().nullable().optional()}).optional().nullable(),app_id:P.string(),vm_uuid:P.string().nullable(),instance_id:P.string().nullable(),app_url:P.string().optional().nullable(),base_image:P.string().optional().nullable(),vcpu:P.number(),memory:P.number(),disk_size:P.number(),manifest_version:P.number().optional().nullable(),version:P.string().optional().nullable(),runner:P.string().optional().nullable(),docker_compose_file:P.string().optional().nullable(),features:P.array(P.string()).optional().nullable(),created_at:P.string(),encrypted_env_pubkey:P.string().nullable()}),tr=er.extend({id:P.number(),user_id:P.number().optional().nullable()}),Ft=er.extend({id:P.string(),user_id:P.string().optional().nullable()}),pp=P.union([tr,Ft]),ui=Ft;function kt(e){return e==="2026-01-21"?tr:Ft}var pi=j;async function nr(e,t){let{cvmId:n}=pi.parse(t),r=await e.post(`/cvms/${n}/start`);return kt(e.config.version).parse(r)}async function di(e,t){try{return{success:!0,data:await nr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var mi=j;async function rr(e,t){let{cvmId:n}=mi.parse(t),r=await e.post(`/cvms/${n}/stop`);return kt(e.config.version).parse(r)}async function fi(e,t){try{return{success:!0,data:await rr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var gi=j;async function sr(e,t){let{cvmId:n}=gi.parse(t),r=await e.post(`/cvms/${n}/shutdown`);return kt(e.config.version).parse(r)}async function hi(e,t){try{return{success:!0,data:await sr(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var vi=me(ae.extend({force:bi.boolean().optional()}));async function or(e,t){let n=vi.parse(t),{cvmId:r}=j.parse(n),{force:s=!1}=n,i=await e.post(`/cvms/${r}/restart`,{force:s});return kt(e.config.version).parse(i)}async function yi(e,t){try{return{success:!0,data:await or(e,t)}}catch(n){return n&&typeof n=="object"&&("status"in n||"issues"in n)?{success:!1,error:n}:{success:!1,error:{name:"Error",message:n instanceof Error?n.message:String(n)}}}}var wi=j,{action:Ci,safeAction:ki}=v(_i.void(),async(e,t)=>{let{cvmId:n}=wi.parse(t);await e.delete(`/cvms/${n}`)}),Si=x.object({name:x.string(),mount_point:x.string(),total_size:x.number(),free_size:x.number()}),Ei=x.object({os_name:x.string(),os_version:x.string(),kernel_version:x.string(),cpu_model:x.string(),num_cpus:x.number(),total_memory:x.number(),available_memory:x.number(),used_memory:x.number(),free_memory:x.number(),total_swap:x.number(),used_swap:x.number(),free_swap:x.number(),uptime:x.number(),loadavg_one:x.number(),loadavg_five:x.number(),loadavg_fifteen:x.number(),disks:x.array(Si)}),Ai=x.object({is_online:x.boolean(),is_public:x.boolean().default(!1),error:x.string().nullable(),sysinfo:Ei.nullable(),status:x.string().nullable(),in_progress:x.boolean().default(!1),boot_progress:x.string().nullable(),boot_error:x.string().nullable()}),Ri=j,{action:Ii,safeAction:xi}=v(Ai,async(e,t)=>{let{cvmId:n}=Ri.parse(t);return await e.get(`/cvms/${n}/stats`)}),Ti=Ie.object({app:Ie.string(),instance:Ie.string()}),Pi=Ie.object({is_online:Ie.boolean(),is_public:Ie.boolean().default(!0),error:Ie.string().nullable(),internal_ip:Ie.string().nullable(),latest_handshake:Ie.string().nullable(),public_urls:Ie.array(Ti).nullable()}),ji=j,{action:qi,safeAction:$i}=v(Pi,async(e,t)=>{let{cvmId:n}=ji.parse(t);return await e.get(`/cvms/${n}/network`)}),Ni=j,{action:Li,safeAction:Ui}=v(Oi.string(),async(e,t)=>{let{cvmId:n}=Ni.parse(t);return await e.get(`/cvms/${n}/docker-compose.yml`)}),zi=V.object({id:V.string(),names:V.array(V.string()),image:V.string(),image_id:V.string(),command:V.string().nullable().optional(),created:V.number(),state:V.string(),status:V.string(),log_endpoint:V.string().nullable()}),Fi=V.object({is_online:V.boolean(),is_public:V.boolean().default(!0),error:V.string().nullable(),docker_compose_file:V.string().nullable(),manifest_version:V.number().nullable(),version:V.string().nullable(),runner:V.string().nullable(),features:V.array(V.string()).nullable(),containers:V.array(zi).nullable()}),Di=j,{action:Vi,safeAction:Ki}=v(Fi,async(e,t)=>{let{cvmId:n}=Di.parse(t);return await e.get(`/cvms/${n}/composition`)}),Mi=y.object({common_name:y.string().nullable(),organization:y.string().nullable(),country:y.string().nullable(),state:y.string().nullable(),locality:y.string().nullable()}),Hi=y.object({common_name:y.string().nullable(),organization:y.string().nullable(),country:y.string().nullable()}),ar=y.object({subject:Mi,issuer:Hi,serial_number:y.string(),not_before:y.string(),not_after:y.string(),version:y.string(),fingerprint:y.string(),signature_algorithm:y.string(),sans:y.array(y.string()).nullable(),is_ca:y.boolean(),position_in_chain:y.number().nullable(),quote:y.string().nullable(),app_id:y.string().nullable().optional(),cert_usage:y.string().nullable().optional()}),Gi=y.object({imr:y.number(),event_type:y.number(),digest:y.string(),event:y.string(),event_payload:y.string()}),ir=y.object({mrtd:y.string(),rootfs_hash:y.string().nullable().optional(),rtmr0:y.string(),rtmr1:y.string(),rtmr2:y.string(),rtmr3:y.string(),event_log:y.array(Gi),app_compose:y.string()}),Bi=y.object({name:y.string().nullable(),is_online:y.boolean(),is_public:y.boolean().default(!0),error:y.string().nullable(),app_certificates:y.array(ar).nullable(),tcb_info:ir.nullable(),compose_file:y.string().nullable()}),Wi=j,{action:Ji,safeAction:Xi}=v(Bi,async(e,t)=>{let{cvmId:n}=Wi.parse(t);return await e.get(`/cvms/${n}/attestation`)}),Zi=me(ae.extend({vcpu:qe.number().optional(),memory:qe.number().optional(),disk_size:qe.number().optional(),instance_type:qe.string().optional(),allow_restart:qe.boolean().optional()})),Qi=qe.object({message:qe.string(),correlation_id:qe.string(),status:qe.string()}),{action:Yi,safeAction:ec}=v(Qi,async(e,t)=>{let n=Zi.parse(t),{cvmId:r}=j.parse(n),{...s}=n;return await e.patch(`/cvms/${r}`,s)}),tc=me(ae.extend({public_sysinfo:Tt.boolean(),public_logs:Tt.boolean(),public_tcbinfo:Tt.boolean().optional()})),{action:nc,safeAction:rc}=v(Rn,async(e,t)=>{let n=tc.parse(t),{cvmId:r}=j.parse(n),{public_sysinfo:s,public_logs:i,public_tcbinfo:o}=n;return await e.patch(`/cvms/${r}/visibility`,{public_sysinfo:s,public_logs:i,public_tcbinfo:o})}),dn=Q.object({name:Q.string(),slug:Q.string(),os_image_hash:Q.string().nullable(),is_current:Q.boolean(),enabled:Q.boolean()}),sc=Q.object({version:Q.union([Q.tuple([Q.number(),Q.number(),Q.number(),Q.number()]),Q.tuple([Q.number(),Q.number(),Q.number()])]),prod:dn.nullable(),dev:dn.nullable()}),oc=Q.array(sc),ac=j,{action:ic,safeAction:cc}=v(oc,async(e,t)=>{let{cvmId:n}=ac.parse(t);return await e.get(`/cvms/${n}/available-os-images`)}),lc=me(ae.extend({os_image_name:cr.string().min(1,"OS image name is required")})),{action:uc,safeAction:pc}=v(cr.void(),async(e,t)=>{let n=lc.parse(t),{cvmId:r}=j.parse(n),{os_image_name:s}=n;await e.patch(`/cvms/${r}/os-image`,{os_image_name:s})}),dc=Ae.object({id:Ae.string().optional(),instance_id:Ae.string().optional(),name:Ae.string(),status:Ae.string(),uptime:Ae.string().optional(),exited_at:Ae.string().optional(),boot_progress:Ae.string().optional(),boot_error:Ae.string().optional(),shutdown_progress:Ae.string().optional()}),mc=j,{action:fc,safeAction:gc}=v(dc,async(e,t)=>{let{cvmId:n}=mc.parse(t);return await e.get(`/cvms/${n}/state`)}),lr=de.object({id:de.string(),user_id:de.string(),name:de.string(),public_key:de.string(),fingerprint:de.string(),key_type:de.string(),source:de.string(),key_metadata:de.record(de.unknown()).nullable().optional(),last_synced_at:de.string().nullable().optional(),created_at:de.string(),updated_at:de.string()}),hc=de.array(lr);async function ur(e){let t=await e.get("/user/ssh-keys");return hc.parse(t)}async function bc(e){try{return{success:!0,data:await ur(e)}}catch(t){return t&&typeof t=="object"&&("status"in t||"issues"in t)?{success:!1,error:t}:{success:!1,error:{name:"Error",message:t instanceof Error?t.message:String(t)}}}}var vc=Oe.object({github_username:Oe.string().min(1)}),yc=Oe.object({github_username:Oe.string(),keys_added:Oe.number().int(),keys_skipped:Oe.number().int(),errors:Oe.array(Oe.string()).default([])}),{action:_c,safeAction:wc}=v(yc,async(e,t)=>{let{github_username:n}=vc.parse(t);return await e.post("/user/ssh-keys/github-profile",{github_username:n})}),Cc=Pt.object({name:Pt.string().min(1),public_key:Pt.string().min(1)}),{action:kc,safeAction:Sc}=v(lr,async(e,t)=>{let{name:n,public_key:r}=Cc.parse(t);return await e.post("/user/ssh-keys",{name:n,public_key:r})}),Ec=qt.object({keyId:qt.string().min(1)}),{action:Ac,safeAction:Rc}=v(qt.void(),async(e,t)=>{let{keyId:n}=Ec.parse(t);await e.delete(`/user/ssh-keys/${n}`)}),Ic=ze.object({synced_count:ze.number().int(),keys_added:ze.number().int(),keys_updated:ze.number().int(),keys_removed:ze.number().int(),errors:ze.array(ze.string()).default([])}),{action:xc,safeAction:Tc}=Ut(Ic,async e=>await e.post("/user/ssh-keys/github-sync",{})),Pc=ee.object({name:ee.string(),slug:ee.string(),version:ee.string(),os_image_hash:ee.string().nullable(),is_dev:ee.boolean(),requires_gpu:ee.boolean()}).passthrough(),jc=ee.object({page:ee.number().int().min(1).optional(),page_size:ee.number().int().min(1).optional(),is_dev:ee.boolean().optional()}).strict(),qc=ee.object({items:ee.array(Pc),total:ee.number(),page:ee.number(),page_size:ee.number(),pages:ee.number()}).passthrough(),{action:$c,safeAction:Oc}=v(qc,async(e,t)=>{let n=jc.parse(t??{});return await e.get("/os-images",{params:n})}),Nc=O.object({device_id:O.string(),node_name:O.string().nullable().optional(),on_chain_allowed:O.boolean().nullable()}).passthrough(),Lc=O.object({name:O.string(),version:O.string(),os_image_hash:O.string().nullable(),on_chain_allowed:O.boolean().nullable()}).passthrough(),Uc=O.object({contract_address:O.string(),chain_id:O.number(),chain_name:O.string(),k256_pubkey:O.string().nullable().optional(),ca_pubkey:O.string().nullable().optional(),gateway_contract_address:O.string().nullable().optional(),devices:O.array(Nc),os_images:O.array(Lc)}).passthrough(),zc=O.object({chain_name:O.string(),chain_id:O.number(),contracts:O.array(Uc)}).passthrough(),Fc=O.object({chain:O.string()}).strict(),{action:Dc,safeAction:Vc}=v(zc,async(e,t)=>{let{chain:n}=Fc.parse(t);return await e.get(`/kms/on-chain/${n}`)});function pr(e={}){let t=Rs(e),n={getCurrentUser:kn,safeGetCurrentUser:$s,getAvailableNodes:no,safeGetAvailableNodes:ro,getCvmCreateResources:uo,safeGetCvmCreateResources:po,listAllInstanceTypeFamilies:bo,safeListAllInstanceTypeFamilies:vo,listFamilyInstanceTypes:yo,safeListFamilyInstanceTypes:_o,listWorkspaces:ko,safeListWorkspaces:So,getWorkspace:Eo,safeGetWorkspace:Ao,getCvmInfo:Kn,safeGetCvmInfo:Ct,getCvmList:Mn,safeGetCvmList:zt,provisionCvm:Oo,safeProvisionCvm:No,commitCvmProvision:Xn,safeCommitCvmProvision:Uo,getCvmComposeFile:Mo,safeGetCvmComposeFile:Ho,provisionCvmComposeFileUpdate:Wo,safeProvisionCvmComposeFileUpdate:Jo,commitCvmComposeFileUpdate:Qo,safeCommitCvmComposeFileUpdate:Yo,updateCvmEnvs:sa,safeUpdateCvmEnvs:oa,updateDockerCompose:pa,safeUpdateDockerCompose:da,updatePreLaunchScript:va,safeUpdatePreLaunchScript:ya,getCvmPreLaunchScript:Ca,safeGetCvmPreLaunchScript:ka,getPreLaunchScriptUpgradeStatus:Aa,safeGetPreLaunchScriptUpgradeStatus:Ra,upgradePreLaunchScript:ja,safeUpgradePreLaunchScript:qa,startCvm:nr,safeStartCvm:di,stopCvm:rr,safeStopCvm:fi,shutdownCvm:sr,safeShutdownCvm:hi,restartCvm:or,safeRestartCvm:yi,deleteCvm:Ci,safeDeleteCvm:ki,getCvmStats:Ii,safeGetCvmStats:xi,getCvmNetwork:qi,safeGetCvmNetwork:$i,getCvmDockerCompose:Li,safeGetCvmDockerCompose:Ui,getCvmContainersStats:Vi,safeGetCvmContainersStats:Ki,getCvmAttestation:Ji,safeGetCvmAttestation:Xi,updateCvmResources:Yi,safeUpdateCvmResources:ec,updateCvmVisibility:nc,safeUpdateCvmVisibility:rc,getAvailableOsImages:ic,safeGetAvailableOsImages:cc,updateOsImage:uc,safeUpdateOsImage:pc,getKmsInfo:Oa,safeGetKmsInfo:Na,getKmsList:za,safeGetKmsList:Fa,listKmsContracts:Ha,safeListKmsContracts:Ga,getKmsContract:Ja,safeGetKmsContract:Xa,listKmsContractNodes:ei,safeListKmsContractNodes:ti,getAppEnvEncryptPubKey:si,safeGetAppEnvEncryptPubKey:oi,nextAppIds:ci,safeNextAppIds:li,getCvmState:fc,safeGetCvmState:gc,listSshKeys:ur,safeListSshKeys:bc,importGithubProfileSshKeys:_c,safeImportGithubProfileSshKeys:wc,createSshKey:kc,safeCreateSshKey:Sc,deleteSshKey:Ac,safeDeleteSshKey:Rc,syncGithubSshKeys:xc,safeSyncGithubSshKeys:Tc,getOsImages:$c,safeGetOsImages:Oc,getKmsOnChainDetail:Dc,safeGetKmsOnChainDetail:Vc};return t.extend(n)}var mn=w.object({vm_uuid:w.string().nullable(),app_id:w.string(),name:w.string().default(""),status:w.string(),vcpu:w.number().int(),memory:w.number().int(),disk_size:w.number().int(),teepod_id:w.number().int(),teepod_name:w.string(),region_identifier:w.string().nullable().optional(),kms_type:w.string().nullable().optional(),instance_type:w.string().nullable().optional(),listed:w.boolean().nullable().optional(),base_image:w.string().nullable().optional(),kms_slug:w.string().nullable().optional(),kms_id:w.string().nullable().optional(),kms_contract_id:w.string().nullable().optional(),instance_id:w.string().nullable().optional(),machine_info:$t.nullable().optional(),updated_at:w.string().nullable().optional()}),Kc=w.object({display_name:w.string().nullable().optional(),avatar_url:w.string().nullable().optional(),description:w.string().nullable().optional(),custom_domain:w.string().nullable().optional()}),Mc=w.object({id:w.string(),name:w.string(),app_id:w.string(),app_provision_type:w.string().nullable().optional(),app_icon_url:w.string().nullable().optional(),created_at:w.string(),kms_type:w.string(),profile:Kc.nullable().optional(),current_cvm:mn.nullable().optional(),cvms:w.array(mn).default([]),cvm_count:w.number().int().default(0)}),Hc=Mc,jp=w.object({dstack_apps:w.array(Hc),page:w.number().int(),page_size:w.number().int(),total:w.number().int(),total_pages:w.number().int()}),dr=N.object({id:N.string(),name:N.string(),app_id:N.string(),app_provision_type:N.string().nullable().optional(),app_icon_url:N.string().nullable().optional(),created_at:N.string(),kms_type:N.string(),profile:N.object({display_name:N.string().nullable().optional(),avatar_url:N.string().nullable().optional(),description:N.string().nullable().optional(),custom_domain:N.string().nullable().optional()}).nullable().optional(),current_cvm:lt.nullable().optional(),cvms:N.array(lt).default([]),cvm_count:N.number().int().default(0)}),Gc=dr.extend({current_cvm:yt.nullable().optional(),cvms:N.array(yt).default([])}),Bc=dr,Wc=Gc,Jc=N.object({dstack_apps:N.array(Bc),page:N.number().int(),page_size:N.number().int(),total:N.number().int(),total_pages:N.number().int()}),$p=Jc.extend({dstack_apps:N.array(Wc)}),mr=A.object({object_type:A.literal("cvm"),id:A.string().nullable().optional(),name:A.string().nullable().optional(),app_id:A.string().nullable().optional(),vm_uuid:A.string().nullable().optional()}),Xc=A.object({revision_id:A.string(),app_id:A.string(),vm_uuid:A.string(),compose_hash:A.string(),created_at:A.string(),trace_id:A.string().nullable().optional(),operation_type:A.string(),triggered_by:Nt.nullable().optional(),cvm:mr.nullable().optional(),workspace:Lt.nullable().optional()}),Np=A.object({revision_id:A.string(),app_id:A.string(),vm_uuid:A.string(),compose_hash:A.string(),compose_file:A.union([A.record(A.any()),A.string()]).nullable().optional(),encrypted_env:A.string(),user_config:A.string(),created_at:A.string(),trace_id:A.string().nullable().optional(),operation_type:A.string(),triggered_by:Nt.nullable().optional(),cvm:mr.nullable().optional(),workspace:Lt.nullable().optional()}),Lp=A.object({revisions:A.array(Xc),total:A.number().int(),page:A.number().int(),page_size:A.number().int(),total_pages:A.number().int()});var Zc=G.object({chain:G.unknown().optional(),rpcUrl:G.string().optional(),kmsContractAddress:G.string(),privateKey:G.string().optional(),walletClient:G.unknown().optional(),publicClient:G.unknown().optional(),allowAnyDevice:G.boolean().optional().default(!1),deviceId:G.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),composeHash:G.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),disableUpgrades:G.boolean().optional().default(!1),skipPrerequisiteChecks:G.boolean().optional().default(!1),minBalance:G.string().optional()}).passthrough(),cd=Zc.refine(e=>{let t=!!e.privateKey,n=!!e.walletClient;return t!==n},{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>{let t=!!e.publicClient,n=!!e.walletClient,r=!!e.chain;return t&&n?!0:r},{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),ld=G.object({appId:G.string(),appAuthAddress:G.string(),deployer:G.string(),transactionHash:G.string(),blockNumber:G.bigint().optional(),gasUsed:G.bigint().optional()}).passthrough();var yd=U.object({chain:U.unknown().optional(),rpcUrl:U.string().optional(),appId:U.string(),composeHash:U.string(),privateKey:U.string().optional(),walletClient:U.unknown().optional(),publicClient:U.unknown().optional(),skipPrerequisiteChecks:U.boolean().optional().default(!1),minBalance:U.string().optional(),timeout:U.number().optional().default(12e4),retryOptions:U.unknown().optional(),signal:U.unknown().optional(),onTransactionStateChange:U.function().optional(),onTransactionSubmitted:U.function().optional(),onTransactionConfirmed:U.function().optional()}).passthrough().refine(e=>{let t=!!e.privateKey,n=!!e.walletClient;return t!==n},{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>{let t=!!e.publicClient,n=!!e.walletClient,r=!!e.chain;return t&&n?!0:r},{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),_d=U.object({composeHash:U.string(),appId:U.string(),transactionHash:U.string(),blockNumber:U.bigint().optional(),gasUsed:U.bigint().optional()}).passthrough();var xd=z.object({chain:z.unknown().optional(),rpcUrl:z.string().optional(),appAddress:z.string(),deviceId:z.string(),privateKey:z.string().optional(),walletClient:z.unknown().optional(),publicClient:z.unknown().optional(),skipPrerequisiteChecks:z.boolean().optional().default(!1),minBalance:z.string().optional(),timeout:z.number().optional().default(12e4),retryOptions:z.unknown().optional(),signal:z.unknown().optional(),onTransactionStateChange:z.function().optional(),onTransactionSubmitted:z.function().optional(),onTransactionConfirmed:z.function().optional()}).passthrough().refine(e=>!!e.privateKey!=!!e.walletClient,{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>e.publicClient&&e.walletClient?!0:!!e.chain,{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),Td=z.object({appAddress:z.string(),deviceId:z.string(),transactionHash:z.string(),blockNumber:z.bigint().optional(),gasUsed:z.bigint().optional()}).passthrough();var zd=F.object({chain:F.unknown().optional(),rpcUrl:F.string().optional(),appAddress:F.string(),deviceId:F.string(),privateKey:F.string().optional(),walletClient:F.unknown().optional(),publicClient:F.unknown().optional(),skipPrerequisiteChecks:F.boolean().optional().default(!1),minBalance:F.string().optional(),timeout:F.number().optional().default(12e4),retryOptions:F.unknown().optional(),signal:F.unknown().optional(),onTransactionStateChange:F.function().optional(),onTransactionSubmitted:F.function().optional(),onTransactionConfirmed:F.function().optional()}).passthrough().refine(e=>!!e.privateKey!=!!e.walletClient,{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>e.publicClient&&e.walletClient?!0:!!e.chain,{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),Fd=F.object({appAddress:F.string(),deviceId:F.string(),transactionHash:F.string(),blockNumber:F.bigint().optional(),gasUsed:F.bigint().optional()}).passthrough();var Jd=D.object({chain:D.unknown().optional(),rpcUrl:D.string().optional(),appAddress:D.string(),allow:D.boolean(),privateKey:D.string().optional(),walletClient:D.unknown().optional(),publicClient:D.unknown().optional(),skipPrerequisiteChecks:D.boolean().optional().default(!1),minBalance:D.string().optional(),timeout:D.number().optional().default(12e4),retryOptions:D.unknown().optional(),signal:D.unknown().optional(),onTransactionStateChange:D.function().optional(),onTransactionSubmitted:D.function().optional(),onTransactionConfirmed:D.function().optional()}).passthrough().refine(e=>!!e.privateKey!=!!e.walletClient,{message:"Either 'privateKey' or 'walletClient' must be provided, but not both",path:["privateKey","walletClient"]}).refine(e=>e.publicClient&&e.walletClient?!0:!!e.chain,{message:"Chain is required when publicClient or walletClient is not provided",path:["chain"]}),Xd=D.object({appAddress:D.string(),allow:D.boolean(),transactionHash:D.string(),blockNumber:D.bigint().optional(),gasUsed:D.bigint().optional()}).passthrough();var tm=Je.object({appAddress:Je.string(),owner:Je.string(),allowAnyDevice:Je.boolean(),devices:Je.array(Je.string())});var Qc=xn;var Yc=Xe.object({items:Xe.array(Qc),total:Xe.number(),page:Xe.number(),page_size:Xe.number(),pages:Xe.number()}).passthrough(),{action:dm,safeAction:mm}=v(Yc,async(e,t)=>{let{teamSlug:n,page:r,pageSize:s}=t,i=new URLSearchParams;r!==void 0&&i.append("page",r.toString()),s!==void 0&&i.append("page_size",s.toString());let o=i.toString()?`/workspaces/${n}/nodes?${i.toString()}`:`/workspaces/${n}/nodes`;return await e.get(o)}),Ye=Se.object({limit:Se.number(),remaining:Se.number()}).passthrough(),el=Se.object({vm_slots:Ye,vcpu:Ye,memory_mb:Ye,disk_gb:Ye}).passthrough(),tl=Se.object({gpus:Ye,in_use:Se.number(),misconfigured:Se.number()}).passthrough(),nl=Se.object({team_slug:Se.string(),tier:Se.string(),quotas:el,reserved_nodes:Ye,reserved_gpu:tl,as_of:Se.string()}).passthrough(),{action:gm,safeAction:hm}=v(nl,async(e,t)=>await e.get(`/workspaces/${t.teamSlug}/quotas`)),vm=me(ae.extend({node_id:fn.number().optional(),os_image:fn.string().min(1).optional()}));var _m=Ze.object({target:Ze.string().describe("Target status to wait for (e.g., 'running', 'stopped')"),interval:Ze.number().min(5).max(30).default(5).describe("Polling interval in seconds"),timeout:Ze.number().min(10).max(600).default(300).describe("Timeout per attempt in seconds"),maxRetries:Ze.number().min(0).default(Number.POSITIVE_INFINITY).describe("Maximum number of retry attempts (Infinity for unlimited)"),retryDelay:Ze.number().min(0).default(5e3).describe("Delay between retries in milliseconds")});var rl=me(ae.extend({docker_compose_file:E.string().optional(),pre_launch_script:E.string().optional(),allowed_envs:E.array(E.string()).optional(),public_logs:E.boolean().optional(),public_sysinfo:E.boolean().optional(),public_tcbinfo:E.boolean().optional(),encrypted_env:E.string().optional(),user_config:E.string().optional(),gpus:E.object({count:E.number(),product_name:E.string().optional()}).optional(),vcpu:E.number().optional(),memory:E.number().optional(),disk_size:E.number().optional(),image:E.string().optional(),shutdown_timeout:E.number().optional(),allow_force_stop:E.boolean().optional(),prepareOnly:E.boolean().optional()})),sl=E.object({requiresOnChainHash:E.literal(!1),correlationId:E.string()}),ol=E.object({requiresOnChainHash:E.literal(!0),composeHash:E.string(),appId:E.string(),deviceId:E.string(),kmsInfo:ye,commitToken:E.string().optional(),commitUrl:E.string().optional(),apiCommitUrl:E.string().optional(),onchainStatus:E.object({compose_hash_allowed:E.boolean(),device_id_allowed:E.boolean(),is_allowed:E.boolean()}).optional()}),al=E.discriminatedUnion("requiresOnChainHash",[sl,ol]);function il(e){let t={};if(!e||typeof e!="object")return t;let r=e.details;if(!Array.isArray(r))return t;for(let s of r)s&&typeof s=="object"&&"field"in s&&"value"in s&&(t[s.field]=s.value);return t}var{action:Cm,safeAction:km}=v(al,async(e,t)=>{let n=rl.parse(t),{cvmId:r}=j.parse(n),{id:s,uuid:i,app_id:o,instance_id:a,name:u,prepareOnly:f,...d}=n;try{return{requiresOnChainHash:!1,correlationId:(f?await e.patch(`/cvms/${r}`,d,{headers:{"X-Prepare-Only":"true"}}):await e.patch(`/cvms/${r}`,d)).correlation_id}}catch(m){if(m instanceof be&&m.status===465){let h=il(m.detail);return{requiresOnChainHash:!0,composeHash:h.compose_hash,appId:String(h.app_id),deviceId:h.device_id,kmsInfo:h.kms_info,commitToken:h.commit_token,commitUrl:h.commit_url,apiCommitUrl:h.api_commit_url,onchainStatus:h.onchain_status}}throw m}}),cl=me(ae.extend({composeHash:_t.string().describe("Compose hash from patchCvm Phase 1 response"),transactionHash:_t.string().describe("Transaction hash proving on-chain registration")})),ll=_t.object({correlationId:_t.string()}),{action:Em,safeAction:Am}=v(ll,async(e,t)=>{let n=cl.parse(t),{cvmId:r}=j.parse(n);return{correlationId:(await e.patch(`/cvms/${r}`,{},{headers:{"X-Compose-Hash":n.composeHash,"X-Transaction-Hash":n.transactionHash}})).correlation_id}}),ul=me(ae.extend({token:tt.string().describe("One-time commit token from prepare-only flow"),composeHash:tt.string().describe("Compose hash from Phase 1 response"),transactionHash:tt.string().describe("Transaction hash proving on-chain registration")})),pl=tt.object({correlationId:tt.string(),status:tt.string()}),{action:Im,safeAction:xm}=v(pl,async(e,t)=>{let n=ul.parse(t),{cvmId:r}=j.parse(n),s=await e.post(`/cvms/${r}/commit-update`,{token:n.token,compose_hash:n.composeHash,transaction_hash:n.transactionHash});return{correlationId:s.correlation_id,status:s.status}}),fr=ge.object({identifier:ge.string(),status:ge.enum(["updated","unchanged","skipped","conflict","error"]),old_instance_id:ge.string().nullable().optional(),new_instance_id:ge.string().nullable().optional(),source:ge.enum(["teepod_state","teepod_info","gateway","none"]),verified_with_gateway:ge.boolean(),reason:ge.string().nullable().optional()}),Dt=fr.extend({cvm_id:ge.number().nullable()}),Vt=fr.extend({cvm_id:ge.string().nullable()}),Pm=ge.union([Dt,Vt]);var jm=me(ae.extend({overwrite:ge.boolean().optional(),dry_run:ge.boolean().optional()}));var $m=B.object({cvm_ids:B.array(B.string()).optional(),running_only:B.boolean().optional(),missing_only:B.boolean().optional(),overwrite:B.boolean().optional(),limit:B.number().int().min(1).max(500).optional(),dry_run:B.boolean().optional()}).strict(),Kt=B.object({total:B.number().int(),scanned:B.number().int(),updated:B.number().int(),unchanged:B.number().int(),skipped:B.number().int(),conflicts:B.number().int(),errors:B.number().int()}),Om=Kt.extend({items:B.array(Dt)}),Nm=Kt.extend({items:B.array(Vt)}),Lm=Kt.extend({items:B.array(B.union([Dt,Vt]))});var dl=T.object({cpu_percent:T.number().nullable().optional(),memory_used_bytes:T.number().nullable().optional(),memory_total_bytes:T.number().nullable().optional(),disk_used_bytes:T.number().nullable().optional(),disk_total_bytes:T.number().nullable().optional(),egress_bytes:T.number().nullable().optional()}),ml=T.object({vm_uuid:T.string(),status:T.string(),uptime:T.string().nullable().optional(),in_progress:T.boolean(),boot_progress:T.string().nullable().optional(),boot_error:T.string().nullable().optional(),shutdown_progress:T.string().nullable().optional(),events:T.array(T.object({event:T.string(),body:T.string(),timestamp:T.number()})).default([]),operation:T.object({type:T.string().nullable().optional(),phase:T.string().nullable().optional(),started_at:T.string().nullable().optional(),correlation_id:T.string().nullable().optional()}).nullable().optional(),resource_usage:dl.nullable().optional()}),fl=T.record(T.string(),ml),gl=T.object({vmUuids:T.array(T.string())}),{action:zm,safeAction:Fm}=v(fl,async(e,t)=>{let{vmUuids:n}=gl.parse(t);return await e.post("/status/batch",{vm_uuids:n})}),hl=at.object({hostname:at.string().nullable().optional(),ssh_authorized_keys:at.array(at.string()).default([]),default_gateway_domain:at.string().nullable().optional()}),bl=j,{action:Vm,safeAction:Km}=v(hl,async(e,t)=>{let{cvmId:n}=bl.parse(t);return await e.get(`/cvms/${n}/user_config`)}),{action:Hm,safeAction:yl}=Ut(vl.void(),async e=>{await e.delete("/tokens/self")}),gr=Y.object({app_contract_address:Y.string(),compose_hash:Y.string(),device_id:Y.string(),compose_hash_allowed:Y.boolean(),allow_any_device:Y.boolean(),device_id_allowed:Y.boolean().nullable().optional(),is_allowed:Y.boolean(),error:Y.string().nullable().optional()}),hr=gr.extend({cvm_id:Y.number().optional()}),Mt=gr.extend({cvm_id:Y.string().optional()}),Bm=Y.union([hr,Mt]),_l=Mt,Wm=Y.object({cvmId:Y.string().min(1),compose_hash:Y.string().optional(),node_id:Y.number().optional(),device_id:Y.string().optional()});var wl=Qe.object({appId:Qe.string().min(1),compose_hash:Qe.string(),node_id:Qe.number().optional(),device_id:Qe.string().optional(),chain_id:Qe.number().optional()}),{action:Xm,safeAction:Zm}=v(_l,async(e,t)=>{let{appId:n,...r}=wl.parse(t);return await e.post(`/apps/${n}/is-allowed`,r)}),br=se.object({is_onchain:se.boolean(),total:se.number().default(0),allowed_count:se.number().default(0),denied_count:se.number().default(0),error_count:se.number().default(0)}),Cl=br.extend({results:se.array(hr.extend({cvm_id:se.number()})).default([]),skipped_cvm_ids:se.array(se.number()).default([])}),kl=br.extend({results:se.array(Mt.extend({cvm_id:se.string()})).default([]),skipped_cvm_ids:se.array(se.string()).default([])}),Ym=se.union([Cl,kl]);var ef=se.object({appId:se.string().min(1)});var nf=fe.object({page:fe.number().int().min(1).optional(),page_size:fe.number().int().min(1).max(100).optional(),search:fe.string().optional(),status:fe.array(fe.string()).optional(),listed:fe.boolean().optional(),base_image:fe.string().optional(),instance_type:fe.string().optional(),kms_slug:fe.string().optional(),kms_type:fe.string().optional(),node:fe.string().optional(),region:fe.string().optional()}).strict();var sf=gn.object({appId:gn.string().min(1)}).strict();var af=hn.object({appId:hn.string().min(1)}).strict();var Sl=Re.object({appId:Re.string().min(1),name:Re.string().optional(),node_id:Re.number().optional(),docker_compose_file:Re.string().optional(),pre_launch_script:Re.string().optional(),encrypted_env:Re.string().optional(),compose_hash:Re.string().optional(),token:Re.string().optional(),transaction_hash:Re.string().optional()}).strict(),{action:lf,safeAction:uf}=v(ui,async(e,t)=>{let n=Sl.parse(t),{appId:r,...s}=n;return await e.post(`/apps/${r}/instances`,s)}),vr=W.object({device_id:W.string(),node_name:W.string().nullable(),allowed_onchain:W.boolean(),status:W.string()}),yr=vr.extend({cvm_ids:W.array(W.number())}),_r=vr.extend({cvm_ids:W.array(W.string())}),wr=W.object({is_onchain_kms:W.boolean(),allow_any_device:W.boolean().nullable().optional(),chain_id:W.number().nullable().optional(),app_contract_address:W.string().nullable().optional()}),El=wr.extend({devices:W.array(yr).optional().default([])}),Al=wr.extend({devices:W.array(_r).optional().default([])}),df=W.union([yr,_r]),mf=W.union([El,Al]);var ff=W.object({appId:W.string().min(1)}).strict();var hf=ht.object({appId:ht.string().min(1),page:ht.number().int().min(1).optional(),page_size:ht.number().int().min(1).max(1e3).optional()}).strict();var vf=bt.object({appId:bt.string().min(1),revisionId:bt.string().min(1),rawComposeFile:bt.boolean().optional()}).strict();var _f=ce.object({statuses:ce.array(ce.string()),image_versions:ce.array(ce.string()),instance_types:ce.array(ce.string()),kms_slugs:ce.array(ce.string()),kms_types:ce.array(ce.string()),regions:ce.array(ce.string()),nodes:ce.array(ce.string())});var Rl=k.object({contract_address:k.string(),chain_id:k.number().nullable(),version:k.string(),url:k.string(),gateway_app_id:k.string().nullable(),gateway_app_url:k.string(),kms_type:k.string()}),bn=k.object({app_id:k.string().optional(),instance_id:k.string().optional(),app_name:k.string().optional(),device_id:k.string().optional()}).passthrough().nullable(),Il=k.object({vm_uuid:k.string().nullable().optional(),name:k.string().optional(),instance_id:k.string().nullable().optional(),status:k.string().optional(),image_version:k.string().nullable().optional(),quote:k.string().nullable().optional(),ppid:k.string().optional(),ppid_sha256:k.string().nullable().optional(),device_id:k.string().optional(),fmspc:k.string().nullable().optional(),tee_tcb_svn:k.string().nullable().optional(),mr_config_id:k.string().nullable().optional(),cpusvn:k.string().nullable().optional(),pcesvn:k.number().nullable().optional(),tcb_info:ir.nullable().optional(),app_certificates:k.array(ar).nullable().optional(),compose_file:k.string().nullable().optional(),error:k.string().nullable().optional()}),xl=k.object({app_id:k.string(),contract_address:k.string(),kms_info:Rl,instances:k.array(Il),kms_guest_agent_info:bn,gateway_guest_agent_info:bn,qemu_version:k.string().nullable()}),Tl=k.object({appId:k.string().min(1)}).strict(),{action:Cf,safeAction:kf}=v(xl,async(e,t)=>{let{appId:n}=Tl.parse(t);return await e.get(`/apps/${n}/attestations`)});var Pl;function Cr(){return Pl}import Nl from"path";import Ht from"fs-extra";import Ll from"@iarna/toml";import{z as _e}from"zod";import ue from"chalk";import ql from"ora";var jl=!1;function Ee(){return jl}function $l(e,t){let n=e.split(/\s+/),r=[],s="";for(let i of n){let o=s.length===0?i:`${s} ${i}`;o.length<=t?s=o:(s.length>0&&r.push(s),s=i)}return s.length>0&&r.push(s),r}function Ol(e,t){if(e.length<=t)return[e];let n=[],r=0;for(;r<e.length;)n.push(e.slice(r,r+t)),r+=t;return n}function kr(e,t){let n=[];for(let r of e.split(`
21
+ `)){if(r.length<=t){n.push(r);continue}if(r.indexOf(" ")===-1){n.push(...Ol(r,t));continue}let s=$l(r,t);n.push(...s)}if(n.length===0){let r=e.trim();n.push(r)}return n}var Ne={error:(e,...t)=>{Ee()||(process.stderr.write(`${ue.red("\u2717")} ${ue.red(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
22
+ `))},warn:(e,...t)=>{Ee()||(process.stderr.write(`${ue.yellow("\u26A0")} ${ue.yellow(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
23
+ `))},info:(e,...t)=>{Ee()||(process.stderr.write(`${ue.blue("\u2139")} ${ue.blue(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
24
+ `))},success:(e,...t)=>{Ee()||(process.stderr.write(`${ue.green("\u2713")} ${ue.green(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
25
+ `))},debug:(e,...t)=>{Ee()||process.env.DEBUG&&(process.stderr.write(`${ue.gray("\u{1F50D}")} ${ue.gray(e)}`),t.length>0&&process.stderr.write(` ${t.map(String).join(" ")}`),process.stderr.write(`
26
+ `))},table:(e,t)=>{if(!Ee()){if(e.length===0){console.log(ue.yellow("No data to display"));return}if(t){let n;typeof t[0]=="string"?n=t.map(o=>({key:o,header:o})):n=t;let r={};for(let o of n){let a=o.header||String(o.key);r[String(o.key)]=a.length}for(let o of e)for(let a of n){let u=String(typeof a.key=="string"&&!(a.key in o)?"":o[String(a.key)]??"");r[String(a.key)]=Math.max(r[String(a.key)],u.length)}let s=[];for(let o of n){let a=o.header||String(o.key);s.push(ue.bold(a.padEnd(r[String(o.key)])))}console.log(s.join(" "));let i=[];for(let o of n)i.push("-".repeat(r[String(o.key)]));console.log(i.join(" "));for(let o of e){let a=[];for(let u of n){let f=String(typeof u.key=="string"&&!(u.key in o)?"":o[String(u.key)]??"");a.push(f.padEnd(r[String(u.key)]))}console.log(a.join(" "))}}else{let n=e[0],r=Object.keys(n),s={};for(let a of r)s[a]=a.length;for(let a of e)for(let u of r){let f=String(a[u]??"");s[u]=Math.max(s[u],f.length)}let i=[];for(let a of r)i.push(ue.bold(a.padEnd(s[a])));console.log(i.join(" "));let o=[];for(let a of r)o.push("-".repeat(s[a]));console.log(o.join(" "));for(let a of e){let u=[];for(let f of r){let d=String(a[f]??"");u.push(d.padEnd(s[f]))}console.log(u.join(" "))}}}},keyValueTable:(e,t)=>{if(Ee())return;let{borderStyle:n="single",keyColor:r=ue.blue,valueColor:s=ue.white,maxWidth:i=process.stdout.columns||80}=t||{},a={single:{topLeft:"\u250C",topRight:"\u2510",bottomLeft:"\u2514",bottomRight:"\u2518",horizontal:"\u2500",vertical:"\u2502",cross:"\u253C",leftT:"\u251C",rightT:"\u2524"},double:{topLeft:"\u2554",topRight:"\u2557",bottomLeft:"\u255A",bottomRight:"\u255D",horizontal:"\u2550",vertical:"\u2551",cross:"\u256C",leftT:"\u2560",rightT:"\u2563"},rounded:{topLeft:"\u256D",topRight:"\u256E",bottomLeft:"\u2570",bottomRight:"\u256F",horizontal:"\u2500",vertical:"\u2502",cross:"\u253C",leftT:"\u251C",rightT:"\u2524"},bold:{topLeft:"\u250F",topRight:"\u2513",bottomLeft:"\u2517",bottomRight:"\u251B",horizontal:"\u2501",vertical:"\u2503",cross:"\u254B",leftT:"\u2523",rightT:"\u252B"},none:{topLeft:"",topRight:"",bottomLeft:"",bottomRight:"",horizontal:"",vertical:"",cross:"",leftT:"",rightT:""}}[n],u=0,f=0;for(let[ie,H]of Object.entries(e)){u=Math.max(u,ie.length);let L=String(H??"");f=Math.max(f,L.length)}let d=4,m=1,h=i-d-m;if(u+f>h){let ie=u/(u+f);u=Math.floor(h*ie),f=h-u}let I=u+f+d+m;n!=="none"&&console.log(a.topLeft+a.horizontal.repeat(I-2)+a.topRight);for(let[ie,H]of Object.entries(e)){let L=ie,$=String(H??""),S=kr(L,u),M=kr($,f),oe=Math.max(S.length,M.length);for(;S.length<oe;)S.push("");for(;M.length<oe;)M.push("");for(let Ce=0;Ce<oe;Ce++){let Pe=S[Ce].padEnd(u),De=M[Ce].padEnd(f);console.log(n!=="none"?`${a.vertical} ${r(Pe)} ${a.vertical} ${s(De)} ${a.vertical}`:`${r(Pe)} : ${s(De)}`)}}n!=="none"&&console.log(a.bottomLeft+a.horizontal.repeat(I-2)+a.bottomRight)},break:()=>{Ee()||process.stderr.write(`
27
+ `)},startSpinner:e=>{if(Ee())return{stop:()=>{}};let t=ql(e).start();return{stop:(n=!0,r)=>{r&&(t.text=r),n?t.succeed():t.fail()}}},logDetailedError(e,t){if(Ee())return;let n=t?`[${t}] `:"",r=(o,a)=>{let u,f=typeof a=="string"?a:void 0;if(typeof o=="string"&&(u=o),o instanceof URL&&(u=o.toString()),typeof Request<"u"&&o instanceof Request&&(u=o.url,f??=o.method),!u)return;let d=f?.trim().toUpperCase();return d?`${d} ${u}`:u},s=o=>o!==null&&typeof o=="object"&&("status"in o||"detail"in o||"requestId"in o);if((o=>o!==null&&typeof o=="object"&&"issues"in o&&Array.isArray(o.issues))(e)){process.stderr.write(`${n}Validation error: ${JSON.stringify(e.issues)}
28
28
  `);return}if(s(e)){let o=[],a=r(e.request,e.requestMethod);if(a&&o.push(`${n}Request: ${a}`),typeof e.status=="number"&&e.status>0){let u=e.statusText??"";o.push(`${n}HTTP ${e.status}${u?` ${u}`:""}`)}typeof e.requestId=="string"&&e.requestId.length>0&&o.push(`${n}Request ID: ${e.requestId}`),e.data!==void 0&&e.data!==null&&o.push(JSON.stringify(e.data,null,2)),o.length>0&&process.stderr.write(`${o.join(`
29
29
  `)}
30
30
  `);return}e instanceof Error?process.stderr.write(`${n}${e.message}
31
31
  `):process.stderr.write(`${n}${String(e)}
32
- `)}};var Ul=re.extend({profile:ve.string().optional(),api_version:ve.enum(vt).optional(),gateway_domain:ve.string().optional(),gateway_port:ve.number().int().positive().optional(),compose_file:ve.string().optional(),env_file:ve.string().optional(),public_logs:ve.boolean().optional(),public_sysinfo:ve.boolean().optional(),public_tcbinfo:ve.boolean().optional(),secure_time:ve.boolean().optional(),listed:ve.boolean().optional()}),Kt="phala.toml";function kr(){return Nl.join(process.cwd(),Kt)}function zl(){return Mt.existsSync(kr())}function Fl(){let e=kr();if(!Mt.existsSync(e))throw new Error(`Project configuration file not found: ${Kt}
33
- Run 'phala init' to create one.`);try{let t=Mt.readFileSync(e,"utf8"),n=Ll.parse(t),r=Ul.parse(n);if(r.id||r.uuid||r.app_id||r.instance_id||r.name){let{cvmId:s}=q.parse(r);return{...r,cvm_id:s}}return r}catch(t){if(t instanceof ve.ZodError){let n=t.issues.map(r=>` - ${r.path.join(".")}: ${r.message}`).join(`
32
+ `)}};var Ul=ae.extend({profile:_e.string().optional(),api_version:_e.enum(wt).optional(),gateway_domain:_e.string().optional(),gateway_port:_e.number().int().positive().optional(),compose_file:_e.string().optional(),env_file:_e.string().optional(),public_logs:_e.boolean().optional(),public_sysinfo:_e.boolean().optional(),public_tcbinfo:_e.boolean().optional(),secure_time:_e.boolean().optional(),listed:_e.boolean().optional()}),Gt="phala.toml";function Sr(){return Nl.join(process.cwd(),Gt)}function zl(){return Ht.existsSync(Sr())}function Fl(){let e=Sr();if(!Ht.existsSync(e))throw new Error(`Project configuration file not found: ${Gt}
33
+ Run 'phala init' to create one.`);try{let t=Ht.readFileSync(e,"utf8"),n=Ll.parse(t),r=Ul.parse(n);if(r.id||r.uuid||r.app_id||r.instance_id||r.name){let{cvmId:s}=j.parse(r);return{...r,cvm_id:s}}return r}catch(t){if(t instanceof _e.ZodError){let n=t.issues.map(r=>` - ${r.path.join(".")}: ${r.message}`).join(`
34
34
  `);throw new Error(`Invalid project configuration:
35
- ${n}`)}throw new Error(`Failed to parse ${Kt}: ${t instanceof Error?t.message:String(t)}`)}}function Sr(){return zl()?Fl():{}}import Er from"fs";import Dl from"os";import Rr from"path";var Ar="https://cloud-api.phala.com/api/v1";function Vl(){let e=process.env.PHALA_CLOUD_DIR;return typeof e=="string"&&e.trim().length>0?e:Rr.join(Dl.homedir(),".phala-cloud")}function Ml(){return Rr.join(Vl(),"credentials.json")}function wt(e){return typeof e=="string"&&e.trim().length>0}function Kl(e){let t=e.trim();return t.length===0?"default":t}function Hl(){try{let e=Ml();if(!Er.existsSync(e))return null;let t=Er.readFileSync(e,"utf8"),n=JSON.parse(t);if(!n||typeof n!="object")return null;let r=n;return r.schema_version!==1||!wt(r.current_profile)||!r.profiles||typeof r.profiles!="object"?null:r}catch(e){return Oe.error("Failed to read credentials file:",e),null}}function Ir(e){let t=Hl(),n=Kl(e.profile||e.projectProfile||t?.current_profile||"default"),r=n;if(t&&!t.profiles[r]){let f=Object.entries(t.profiles).find(([,d])=>d?.workspace?.slug===n);if(f)r=f[0];else{let d=Object.entries(t.profiles).find(([,m])=>m?.workspace?.name===n);d&&(r=d[0])}}let s=e.env.PHALA_CLOUD_API_PREFIX,i=t?.profiles?.[r]?.api_prefix,o=(s&&s.trim().length>0?s:i&&i.trim().length>0?i:Ar)??Ar,a=s?"env":i?"file":"default";if(wt(e.apiToken))return{apiKey:e.apiToken,baseURL:o,profileName:r,tokenSource:"flag",apiPrefixSource:a};if(wt(e.env.PHALA_CLOUD_API_KEY))return{apiKey:e.env.PHALA_CLOUD_API_KEY,baseURL:o,profileName:r,tokenSource:"env",apiPrefixSource:a};let u=t?.profiles?.[r]?.token;return wt(u)?{apiKey:u,baseURL:o,profileName:r,tokenSource:"file",apiPrefixSource:a}:{apiKey:null,baseURL:o,profileName:r,tokenSource:"none",apiPrefixSource:a}}import{readFileSync as Gl}from"fs";import{dirname as Bl,join as xr}from"path";import{fileURLToPath as Wl}from"url";function Jl(){let e=Bl(Wl(import.meta.url)),t=[xr(e,"../../package.json"),xr(e,"../package.json")];for(let n of t)try{let r=JSON.parse(Gl(n,"utf-8"));if(r.version)return r.version}catch{}return"unknown"}var Xl=Jl(),Tr=`phala-cli/${Xl}`;var Zl="2026-06-23",Ql=60;function Yl(e){return e?.globalOptions?.timeout??Ql}function eu(){return{env:process.env,projectConfig:Sr()}}function tu(e,t){let n=e??eu();return Ir({env:n.env,apiToken:t?.apiToken??n.globalOptions?.apiToken,profile:t?.profile??n.globalOptions?.profile,projectProfile:n.projectConfig.profile})}async function ye(e,t){let n=tu(e,t),r=wr()??Zl,s=Yl(e);return ur({apiKey:n.apiKey??void 0,baseURL:n.baseURL,version:r,timeout:s*1e3,headers:{"User-Agent":Tr}})}import{z as c}from"zod";var nu=c.object({password:c.string(),registry:c.string().nullable(),username:c.string()}),fg=c.object({docker_compose_file:c.string(),docker_config:nu.optional().nullable(),features:c.array(c.string()),kms_enabled:c.boolean(),manifest_version:c.number(),name:c.string(),public_logs:c.boolean(),public_sysinfo:c.boolean(),runner:c.string().optional(),salt:c.string().nullable().optional(),tproxy_enabled:c.boolean(),version:c.string().optional()}).passthrough(),gg=c.object({key:c.string(),value:c.string()}),Pr=c.object({is_online:c.boolean(),is_public:c.boolean(),error:c.string().nullable(),internal_ip:c.string(),latest_handshake:c.string(),public_urls:c.array(c.object({app:c.string(),instance:c.string()}))}),jr=c.object({id:c.string(),name:c.string(),status:c.string(),teepod_id:c.number(),teepod:c.object({id:c.number(),name:c.string()}),user_id:c.string().nullable().optional(),app_id:c.string(),vm_uuid:c.string().nullable().optional(),instance_id:c.string().nullable().optional(),app_url:c.string().nullable().optional(),base_image:c.string().nullable().optional(),vcpu:c.number(),memory:c.number(),disk_size:c.number(),manifest_version:c.number().nullable().optional(),version:c.string().nullable().optional(),runner:c.string().nullable().optional(),docker_compose_file:c.string().nullable().optional(),features:c.array(c.string()).nullable().optional(),created_at:c.string(),encrypted_env_pubkey:c.string().nullable().optional()}),qr=c.object({is_online:c.boolean(),is_public:c.boolean(),error:c.string().nullable(),app_certificates:c.array(c.object({subject:c.object({common_name:c.string().nullable(),organization:c.string().nullable(),country:c.string().nullable(),state:c.string().nullable().optional(),locality:c.string().nullable().optional()}),issuer:c.object({common_name:c.string().nullable(),organization:c.string().nullable(),country:c.string().nullable()}),serial_number:c.string(),not_before:c.string(),not_after:c.string(),version:c.string(),fingerprint:c.string(),signature_algorithm:c.string(),sans:c.string().nullable(),is_ca:c.boolean(),position_in_chain:c.number(),quote:c.string().nullable()})).nullable(),tcb_info:c.object({mrtd:c.string(),rootfs_hash:c.string(),rtmr0:c.string(),rtmr1:c.string(),rtmr2:c.string(),rtmr3:c.string(),event_log:c.array(c.object({imr:c.number(),event_type:c.number(),digest:c.string(),event:c.string(),event_payload:c.string()}))}).nullable(),compose_file:c.string().nullable()}),ru=c.object({name:c.string(),description:c.string().optional(),version:c.array(c.number()).optional(),is_dev:c.boolean().optional(),os_image_hash:c.string().nullable().optional(),rootfs_hash:c.string().optional(),shared_ro:c.boolean().optional(),cmdline:c.string().optional(),kernel:c.string().optional(),initrd:c.string().optional(),hda:c.string().nullable().optional(),rootfs:c.string().optional(),bios:c.string().optional()}),hg=c.object({teepod_id:c.number().nullable(),id:c.number().optional(),name:c.string(),listed:c.boolean().optional(),resource_score:c.number().optional(),remaining_vcpu:c.number().optional(),remaining_memory:c.number().optional(),remaining_cvm_slots:c.number().optional(),images:c.array(ru).optional(),region_identifier:c.string().optional(),dedicated_for_team_id:c.number().nullable().optional(),support_onchain_kms:c.boolean().optional(),fmspc:c.string().nullable().optional(),device_id:c.string().nullable().optional()});import su from"inquirer";async function kg(e){let t=await ye(),n=e.replace(/^app_/,""),r=await yt(t,{app_id:n});if(!r.success)throw new Error(r.error.message);return r.data}async function Sg(e){let t=await ye(),n=e.replace(/^app_/,""),r=await t.get(`cvms/app_${n}/network`);return Pr.parse(r)}async function Eg(){let e=Oe.startSpinner("Fetching available CVMs"),t=await ye(),n=await Lt(t);if(e.stop(!0),!n.success){Oe.error(`Failed to fetch CVMs: ${n.error.message}`);return}let{items:r}=n.data;if(r.length===0){Oe.info("No CVMs found for your account");return}let s=r.map(o=>({name:`${o.name} (${o.app_id??o.id}) - ${o.status}`,value:o.app_id??o.id})),{selectedCvm:i}=await su.prompt([{type:"list",name:"selectedCvm",message:"Select a CVM:",choices:s}]);return i}async function Ag(e){let t=await ye(),n=e.replace(/^app_/,""),r=await t.get(`cvms/app_${n}/attestation`);try{return qr.parse(r)}catch(s){return Oe.debug(`Validation error: ${s instanceof Error?s.message:String(s)}`),{is_online:!!r?.is_online,is_public:!!r?.is_public,error:typeof r?.error=="string"?r.error:null,app_certificates:Array.isArray(r?.app_certificates)?r.app_certificates:null,tcb_info:r?.tcb_info||null,compose_file:typeof r?.compose_file=="string"?r.compose_file:null}}}async function Rg(e,t,n){let r=await ye(),s=e.replace(/^app_/,""),i=await r.post(`apps/${s}/cvms/${t}/replicas`,n);return jr.parse(i)}async function Ig(e,t,n,r,s){let i=await ye(),o=e.replace(/^app_/,""),a={};if(t!==void 0&&(a.vcpu=t),n!==void 0&&(a.memory=n),r!==void 0&&(a.disk_size=r),s!==void 0&&(a.allow_restart=s),Object.keys(a).length===0)throw new Error("At least one resource parameter must be provided");return await i.patch(`cvms/app_${o}`,a),!0}async function xg(e,t){let n=await ye(),r=e.replace(/^app_/,"");return await n.put(`cvms/app_${r}/compose`,t)}async function Tg(){return await(await ye()).get("teepods/cvm-create-resources")}function Ne(e,t){let n=[];t.since&&n.push(`since=${encodeURIComponent(t.since)}`),t.until&&n.push(`until=${encodeURIComponent(t.until)}`),t.follow&&n.push("follow"),t.text&&n.push("text"),t.bare&&n.push("bare"),t.tail!==void 0&&(n.push(`tail=${t.tail}`),n.push(`lines=${t.tail}`)),t.timestamps&&n.push("timestamps"),(t.ansi??!0)&&n.push("ansi");let r=e.includes("?")?"&":"?";return e+r+n.join("&")}async function $r(e,t){let n=e.body?.getReader();if(!n)throw new Error("No response body available for streaming");let r=new TextDecoder;for(;;){let{done:s,value:i}=await n.read();if(s)break;t(r.decode(i,{stream:!0}))}}function ou(e){return!e||/\s/.test(e)||e.length%4!==0?!1:/^[A-Za-z0-9+/]+={0,2}$/.test(e)}function au(e){if(!ou(e))return e;try{return Buffer.from(e,"base64").toString("utf-8")}catch{return e}}function Ct(e){let t=e.trim();if(!t)return null;try{let n=JSON.parse(t);return typeof n.message!="string"?null:{channel:n.channel==="stderr"?"stderr":"stdout",message:au(n.message)}}catch{return null}}function iu(e){let t=e.split(/\r?\n/),n=[];for(let r of t){if(!r.trim())continue;let s=Ct(r);if(s){n.push(s);continue}n.push({channel:"stdout",message:`${r}
36
- `})}return n}function cu(e){let t=e.split(/\r?\n/),n="";for(let r of t){let s=Ct(r);if(s){n+=s.message;continue}r.trim()&&(n+=`${r}
37
- `)}return n}async function lu(e,t){let n=e.body?.getReader();if(!n)throw new Error("No response body available for streaming");let r=new TextDecoder,s="",i="unknown",o=a=>{let u=Ct(a);if(u){t(u.message);return}a.trim()&&t(`${a}
35
+ ${n}`)}throw new Error(`Failed to parse ${Gt}: ${t instanceof Error?t.message:String(t)}`)}}function Er(){return zl()?Fl():{}}import Ar from"fs";import Dl from"os";import Ir from"path";var Rr="https://cloud-api.phala.com/api/v1";function Vl(){let e=process.env.PHALA_CLOUD_DIR;return typeof e=="string"&&e.trim().length>0?e:Ir.join(Dl.homedir(),".phala-cloud")}function Kl(){return Ir.join(Vl(),"credentials.json")}function st(e){return typeof e=="string"&&e.trim().length>0}function Ml(e){let t=e.trim();return t.length===0?"default":t}function Hl(){try{let e=Kl();if(!Ar.existsSync(e))return null;let t=Ar.readFileSync(e,"utf8"),n=JSON.parse(t);if(!n||typeof n!="object")return null;let r=n;return r.schema_version!==1||!st(r.current_profile)||!r.profiles||typeof r.profiles!="object"?null:r}catch(e){return Ne.error("Failed to read credentials file:",e),null}}function xr(e){let t=Hl(),n=Ml(e.profile||e.projectProfile||t?.current_profile||"default"),r=n;if(t&&!t.profiles[r]){let d=Object.entries(t.profiles).find(([,m])=>m?.workspace?.slug===n);if(d)r=d[0];else{let m=Object.entries(t.profiles).find(([,h])=>h?.workspace?.name===n);m&&(r=m[0])}}let s=e.env.PHALA_CLOUD_API_PREFIX,i=t?.profiles?.[r]?.api_prefix,o=(s&&s.trim().length>0?s:i&&i.trim().length>0?i:Rr)??Rr,a=s?"env":i?"file":"default",u=st(e.env.PHALA_CLOUD_WORKSPACE)?e.env.PHALA_CLOUD_WORKSPACE.trim():null;if(st(e.apiToken))return{apiKey:e.apiToken,bearerToken:null,workspace:u,baseURL:o,profileName:r,tokenSource:"flag",apiPrefixSource:a};if(st(e.env.PHALA_CLOUD_API_KEY))return{apiKey:e.env.PHALA_CLOUD_API_KEY,bearerToken:null,workspace:u,baseURL:o,profileName:r,tokenSource:"env",apiPrefixSource:a};let f=t?.profiles?.[r]?.token;return st(f)?{apiKey:f,bearerToken:null,workspace:u,baseURL:o,profileName:r,tokenSource:"file",apiPrefixSource:a}:st(e.env.PHALA_OIDC_TOKEN)?{apiKey:null,bearerToken:e.env.PHALA_OIDC_TOKEN,workspace:u,baseURL:o,profileName:r,tokenSource:"oidc_env",apiPrefixSource:a}:{apiKey:null,bearerToken:null,workspace:u,baseURL:o,profileName:r,tokenSource:"none",apiPrefixSource:a}}import{readFileSync as Gl}from"fs";import{dirname as Bl,join as Tr}from"path";import{fileURLToPath as Wl}from"url";function Jl(){let e=Bl(Wl(import.meta.url)),t=[Tr(e,"../../package.json"),Tr(e,"../package.json")];for(let n of t)try{let r=JSON.parse(Gl(n,"utf-8"));if(r.version)return r.version}catch{}return"unknown"}var Xl=Jl(),Pr=`phala-cli/${Xl}`;var Zl="2026-06-23",Ql=60;function Yl(e){return e?.globalOptions?.timeout??Ql}function eu(){return{env:process.env,projectConfig:Er()}}function tu(e,t){let n=e??eu();return xr({env:n.env,apiToken:t?.apiToken??n.globalOptions?.apiToken,profile:t?.profile??n.globalOptions?.profile,projectProfile:n.projectConfig.profile})}async function we(e,t){let n=tu(e,t),r=Cr()??Zl,s=Yl(e);return pr({apiKey:n.apiKey??void 0,bearerToken:n.bearerToken??void 0,workspace:n.workspace??void 0,baseURL:n.baseURL,version:r,timeout:s*1e3,headers:{"User-Agent":Pr}})}import{z as c}from"zod";var nu=c.object({password:c.string(),registry:c.string().nullable(),username:c.string()}),fg=c.object({docker_compose_file:c.string(),docker_config:nu.optional().nullable(),features:c.array(c.string()),kms_enabled:c.boolean(),manifest_version:c.number(),name:c.string(),public_logs:c.boolean(),public_sysinfo:c.boolean(),runner:c.string().optional(),salt:c.string().nullable().optional(),tproxy_enabled:c.boolean(),version:c.string().optional()}).passthrough(),gg=c.object({key:c.string(),value:c.string()}),jr=c.object({is_online:c.boolean(),is_public:c.boolean(),error:c.string().nullable(),internal_ip:c.string(),latest_handshake:c.string(),public_urls:c.array(c.object({app:c.string(),instance:c.string()}))}),qr=c.object({id:c.string(),name:c.string(),status:c.string(),teepod_id:c.number(),teepod:c.object({id:c.number(),name:c.string()}),user_id:c.string().nullable().optional(),app_id:c.string(),vm_uuid:c.string().nullable().optional(),instance_id:c.string().nullable().optional(),app_url:c.string().nullable().optional(),base_image:c.string().nullable().optional(),vcpu:c.number(),memory:c.number(),disk_size:c.number(),manifest_version:c.number().nullable().optional(),version:c.string().nullable().optional(),runner:c.string().nullable().optional(),docker_compose_file:c.string().nullable().optional(),features:c.array(c.string()).nullable().optional(),created_at:c.string(),encrypted_env_pubkey:c.string().nullable().optional()}),$r=c.object({is_online:c.boolean(),is_public:c.boolean(),error:c.string().nullable(),app_certificates:c.array(c.object({subject:c.object({common_name:c.string().nullable(),organization:c.string().nullable(),country:c.string().nullable(),state:c.string().nullable().optional(),locality:c.string().nullable().optional()}),issuer:c.object({common_name:c.string().nullable(),organization:c.string().nullable(),country:c.string().nullable()}),serial_number:c.string(),not_before:c.string(),not_after:c.string(),version:c.string(),fingerprint:c.string(),signature_algorithm:c.string(),sans:c.string().nullable(),is_ca:c.boolean(),position_in_chain:c.number(),quote:c.string().nullable()})).nullable(),tcb_info:c.object({mrtd:c.string(),rootfs_hash:c.string(),rtmr0:c.string(),rtmr1:c.string(),rtmr2:c.string(),rtmr3:c.string(),event_log:c.array(c.object({imr:c.number(),event_type:c.number(),digest:c.string(),event:c.string(),event_payload:c.string()}))}).nullable(),compose_file:c.string().nullable()}),ru=c.object({name:c.string(),description:c.string().optional(),version:c.array(c.number()).optional(),is_dev:c.boolean().optional(),os_image_hash:c.string().nullable().optional(),rootfs_hash:c.string().optional(),shared_ro:c.boolean().optional(),cmdline:c.string().optional(),kernel:c.string().optional(),initrd:c.string().optional(),hda:c.string().nullable().optional(),rootfs:c.string().optional(),bios:c.string().optional()}),hg=c.object({teepod_id:c.number().nullable(),id:c.number().optional(),name:c.string(),listed:c.boolean().optional(),resource_score:c.number().optional(),remaining_vcpu:c.number().optional(),remaining_memory:c.number().optional(),remaining_cvm_slots:c.number().optional(),images:c.array(ru).optional(),region_identifier:c.string().optional(),dedicated_for_team_id:c.number().nullable().optional(),support_onchain_kms:c.boolean().optional(),fmspc:c.string().nullable().optional(),device_id:c.string().nullable().optional()});import su from"inquirer";async function kg(e){let t=await we(),n=e.replace(/^app_/,""),r=await Ct(t,{app_id:n});if(!r.success)throw new Error(r.error.message);return r.data}async function Sg(e){let t=await we(),n=e.replace(/^app_/,""),r=await t.get(`cvms/app_${n}/network`);return jr.parse(r)}async function Eg(){let e=Ne.startSpinner("Fetching available CVMs"),t=await we(),n=await zt(t);if(e.stop(!0),!n.success){Ne.error(`Failed to fetch CVMs: ${n.error.message}`);return}let{items:r}=n.data;if(r.length===0){Ne.info("No CVMs found for your account");return}let s=r.map(o=>({name:`${o.name} (${o.app_id??o.id}) - ${o.status}`,value:o.app_id??o.id})),{selectedCvm:i}=await su.prompt([{type:"list",name:"selectedCvm",message:"Select a CVM:",choices:s}]);return i}async function Ag(e){let t=await we(),n=e.replace(/^app_/,""),r=await t.get(`cvms/app_${n}/attestation`);try{return $r.parse(r)}catch(s){return Ne.debug(`Validation error: ${s instanceof Error?s.message:String(s)}`),{is_online:!!r?.is_online,is_public:!!r?.is_public,error:typeof r?.error=="string"?r.error:null,app_certificates:Array.isArray(r?.app_certificates)?r.app_certificates:null,tcb_info:r?.tcb_info||null,compose_file:typeof r?.compose_file=="string"?r.compose_file:null}}}async function Rg(e,t,n){let r=await we(),s=e.replace(/^app_/,""),i=await r.post(`apps/${s}/cvms/${t}/replicas`,n);return qr.parse(i)}async function Ig(e,t,n,r,s){let i=await we(),o=e.replace(/^app_/,""),a={};if(t!==void 0&&(a.vcpu=t),n!==void 0&&(a.memory=n),r!==void 0&&(a.disk_size=r),s!==void 0&&(a.allow_restart=s),Object.keys(a).length===0)throw new Error("At least one resource parameter must be provided");return await i.patch(`cvms/app_${o}`,a),!0}async function xg(e,t){let n=await we(),r=e.replace(/^app_/,"");return await n.put(`cvms/app_${r}/compose`,t)}async function Tg(){return await(await we()).get("teepods/cvm-create-resources")}function Le(e,t){let n=[];t.since&&n.push(`since=${encodeURIComponent(t.since)}`),t.until&&n.push(`until=${encodeURIComponent(t.until)}`),t.follow&&n.push("follow"),t.text&&n.push("text"),t.bare&&n.push("bare"),t.tail!==void 0&&(n.push(`tail=${t.tail}`),n.push(`lines=${t.tail}`)),t.timestamps&&n.push("timestamps"),(t.ansi??!0)&&n.push("ansi");let r=e.includes("?")?"&":"?";return e+r+n.join("&")}async function Or(e,t){let n=e.body?.getReader();if(!n)throw new Error("No response body available for streaming");let r=new TextDecoder;for(;;){let{done:s,value:i}=await n.read();if(s)break;t(r.decode(i,{stream:!0}))}}function ou(e){return!e||/\s/.test(e)||e.length%4!==0?!1:/^[A-Za-z0-9+/]+={0,2}$/.test(e)}function au(e){if(!ou(e))return e;try{return Buffer.from(e,"base64").toString("utf-8")}catch{return e}}function St(e){let t=e.trim();if(!t)return null;try{let n=JSON.parse(t);return typeof n.message!="string"?null:{channel:n.channel==="stderr"?"stderr":"stdout",message:au(n.message)}}catch{return null}}function iu(e){let t=e.split(/\r?\n/),n=[];for(let r of t){if(!r.trim())continue;let s=St(r);if(s){n.push(s);continue}n.push({channel:"stdout",message:`${r}
36
+ `})}return n}function cu(e){let t=e.split(/\r?\n/),n="";for(let r of t){let s=St(r);if(s){n+=s.message;continue}r.trim()&&(n+=`${r}
37
+ `)}return n}async function lu(e,t){let n=e.body?.getReader();if(!n)throw new Error("No response body available for streaming");let r=new TextDecoder,s="",i="unknown",o=a=>{let u=St(a);if(u){t(u.message);return}a.trim()&&t(`${a}
38
38
  `)};for(;;){let{done:a,value:u}=await n.read();if(a)break;let f=r.decode(u,{stream:!0});if(i==="raw"){t(f);continue}if(s+=f,i==="unknown")if(s.trimStart().startsWith("{"))i="structured";else{i="raw",t(s),s="";continue}let d=s.indexOf(`
39
39
  `);for(;d>=0;){let m=s.slice(0,d);s=s.slice(d+1),o(m),d=s.indexOf(`
40
- `)}}i==="structured"&&s.trim()?o(s):i==="raw"&&s&&t(s)}async function uu(e,t){let n=e.body?.getReader();if(!n)throw new Error("No response body available for streaming");let r=new TextDecoder,s="",i="unknown",o=a=>{let u=Ct(a);if(u){t(u);return}a.trim()&&t({channel:"stdout",message:`${a}
40
+ `)}}i==="structured"&&s.trim()?o(s):i==="raw"&&s&&t(s)}async function uu(e,t){let n=e.body?.getReader();if(!n)throw new Error("No response body available for streaming");let r=new TextDecoder,s="",i="unknown",o=a=>{let u=St(a);if(u){t(u);return}a.trim()&&t({channel:"stdout",message:`${a}
41
41
  `})};for(;;){let{done:a,value:u}=await n.read();if(a)break;let f=r.decode(u,{stream:!0});if(i==="raw"){t({channel:"stdout",message:f});continue}if(s+=f,i==="unknown")if(s.trimStart().startsWith("{"))i="structured";else{i="raw",t({channel:"stdout",message:s}),s="";continue}let d=s.indexOf(`
42
42
  `);for(;d>=0;){let m=s.slice(0,d);s=s.slice(d+1),o(m),d=s.indexOf(`
43
- `)}}i==="structured"&&s.trim()?o(s):i==="raw"&&s&&t({channel:"stdout",message:s})}async function Ht(e,t){let r=await(await ye()).get(`cvms/${e}`,{headers:{"X-Phala-Version":"2025-10-28"}});if(!r.syslog_endpoint)throw new Error(`No syslog endpoint available for CVM '${e}'`);return`${r.syslog_endpoint}&ch=${t}`}async function Or(e){return Ht(e,"serial")}async function kt(e,t,n=!0){let s=await(await ye()).get(`cvms/${e}/composition`);if(!s.containers?.length)throw new Error(`No containers found for CVM '${e}'`);let i=s.containers;if(t&&(i=i.filter(a=>a.names.some(f=>f===t||f===`/${t}`)?!0:n?a.id.startsWith(t):!1),!i.length))throw new Error(`Container '${t}' not found in CVM '${e}'`);let o=i.find(a=>a.log_endpoint);if(!o?.log_endpoint)throw new Error(`No log endpoints available for CVM '${e}'`);return o.log_endpoint}async function Pg(e,t={}){let n=await Or(e),r=Ne(n,t),s=await fetch(r);if(!s.ok)throw new Error(`Failed to fetch serial logs: ${s.status} ${s.statusText}`);return s.text()}async function jg(e,t={}){let n=await kt(e,t.container,t.matchContainerIdPrefix??!0),r=t.text??!0,s=t.bare??!0,i=Ne(n,{...t,text:r,bare:s}),o=await fetch(i);if(!o.ok)throw new Error(`Failed to fetch container logs: ${o.status} ${o.statusText}`);let a=await o.text();return a.trimStart().startsWith("{")?cu(a):a}async function qg(e,t={}){let n=await kt(e,t.container,t.matchContainerIdPrefix??!0),r=Ne(n,{...t,text:!1,bare:!1}),s=await fetch(r);if(!s.ok)throw new Error(`Failed to fetch container logs: ${s.status} ${s.statusText}`);let i=await s.text();return i.trimStart().startsWith("{")?iu(i):[{channel:"stdout",message:i}]}async function $g(e,t,n={},r){let s=await kt(e,n.container,n.matchContainerIdPrefix??!0),i=Ne(s,{...n,follow:!0,text:!1,bare:!1}),o=await fetch(i,{signal:r});if(!o.ok)throw new Error(`Failed to stream container logs: ${o.status} ${o.statusText}`);await uu(o,t)}async function Og(e,t,n={},r){let s=await Or(e),i=Ne(s,{...n,follow:!0}),o=await fetch(i,{signal:r});if(!o.ok)throw new Error(`Failed to stream serial logs: ${o.status} ${o.statusText}`);await $r(o,t)}async function Ng(e,t,n={},r){let s=await kt(e,n.container,n.matchContainerIdPrefix??!0),i=n.text??!0,o=n.bare??!0,a=Ne(s,{...n,follow:!0,text:i,bare:o}),u=await fetch(a,{signal:r});if(!u.ok)throw new Error(`Failed to stream container logs: ${u.status} ${u.statusText}`);await lu(u,t)}async function Lg(e,t,n={}){let r=await Ht(e,t),s=Ne(r,n),i=await fetch(s);if(!i.ok)throw new Error(`Failed to fetch CVM ${t} logs: ${i.status} ${i.statusText}`);return i.text()}async function Ug(e,t,n,r={},s){let i=await Ht(e,t),o=Ne(i,{...r,follow:!0}),a=await fetch(o,{signal:s});if(!a.ok)throw new Error(`Failed to stream CVM ${t} logs: ${a.status} ${a.statusText}`);await $r(a,n)}async function zg(e){let t=await ye(),n=e.replace(/^app_/,""),r=await yt(t,{app_id:n});if(!r.success)throw new Error(r.error.message);return r.data.status}export{fg as composeFileSchema,qr as cvmAttestationResponseSchema,nu as dockerConfigSchema,gg as encryptedEnvItemSchema,jg as fetchContainerLogs,qg as fetchContainerLogsEntries,Lg as fetchCvmChannelLogs,Pg as fetchSerialLogs,Ag as getCvmAttestation,kg as getCvmByAppId,Tg as getCvmCreateResources,Ht as getCvmLogEndpoint,Sg as getCvmNetwork,Pr as getCvmNetworkResponseSchema,zg as getCvmStatus,ru as imageSchema,Rg as replicateCvm,jr as replicateCvmResponseSchema,Ig as resizeCvm,Eg as selectCvm,Ng as streamContainerLogs,$g as streamContainerLogsEntries,Ug as streamCvmChannelLogs,Og as streamSerialLogs,hg as teepodSchema,xg as upgradeCvm};
43
+ `)}}i==="structured"&&s.trim()?o(s):i==="raw"&&s&&t({channel:"stdout",message:s})}async function Bt(e,t){let r=await(await we()).get(`cvms/${e}`,{headers:{"X-Phala-Version":"2025-10-28"}});if(!r.syslog_endpoint)throw new Error(`No syslog endpoint available for CVM '${e}'`);return`${r.syslog_endpoint}&ch=${t}`}async function Nr(e){return Bt(e,"serial")}async function Et(e,t,n=!0){let s=await(await we()).get(`cvms/${e}/composition`);if(!s.containers?.length)throw new Error(`No containers found for CVM '${e}'`);let i=s.containers;if(t&&(i=i.filter(a=>a.names.some(f=>f===t||f===`/${t}`)?!0:n?a.id.startsWith(t):!1),!i.length))throw new Error(`Container '${t}' not found in CVM '${e}'`);let o=i.find(a=>a.log_endpoint);if(!o?.log_endpoint)throw new Error(`No log endpoints available for CVM '${e}'`);return o.log_endpoint}async function Pg(e,t={}){let n=await Nr(e),r=Le(n,t),s=await fetch(r);if(!s.ok)throw new Error(`Failed to fetch serial logs: ${s.status} ${s.statusText}`);return s.text()}async function jg(e,t={}){let n=await Et(e,t.container,t.matchContainerIdPrefix??!0),r=t.text??!0,s=t.bare??!0,i=Le(n,{...t,text:r,bare:s}),o=await fetch(i);if(!o.ok)throw new Error(`Failed to fetch container logs: ${o.status} ${o.statusText}`);let a=await o.text();return a.trimStart().startsWith("{")?cu(a):a}async function qg(e,t={}){let n=await Et(e,t.container,t.matchContainerIdPrefix??!0),r=Le(n,{...t,text:!1,bare:!1}),s=await fetch(r);if(!s.ok)throw new Error(`Failed to fetch container logs: ${s.status} ${s.statusText}`);let i=await s.text();return i.trimStart().startsWith("{")?iu(i):[{channel:"stdout",message:i}]}async function $g(e,t,n={},r){let s=await Et(e,n.container,n.matchContainerIdPrefix??!0),i=Le(s,{...n,follow:!0,text:!1,bare:!1}),o=await fetch(i,{signal:r});if(!o.ok)throw new Error(`Failed to stream container logs: ${o.status} ${o.statusText}`);await uu(o,t)}async function Og(e,t,n={},r){let s=await Nr(e),i=Le(s,{...n,follow:!0}),o=await fetch(i,{signal:r});if(!o.ok)throw new Error(`Failed to stream serial logs: ${o.status} ${o.statusText}`);await Or(o,t)}async function Ng(e,t,n={},r){let s=await Et(e,n.container,n.matchContainerIdPrefix??!0),i=n.text??!0,o=n.bare??!0,a=Le(s,{...n,follow:!0,text:i,bare:o}),u=await fetch(a,{signal:r});if(!u.ok)throw new Error(`Failed to stream container logs: ${u.status} ${u.statusText}`);await lu(u,t)}async function Lg(e,t,n={}){let r=await Bt(e,t),s=Le(r,n),i=await fetch(s);if(!i.ok)throw new Error(`Failed to fetch CVM ${t} logs: ${i.status} ${i.statusText}`);return i.text()}async function Ug(e,t,n,r={},s){let i=await Bt(e,t),o=Le(i,{...r,follow:!0}),a=await fetch(o,{signal:s});if(!a.ok)throw new Error(`Failed to stream CVM ${t} logs: ${a.status} ${a.statusText}`);await Or(a,n)}async function zg(e){let t=await we(),n=e.replace(/^app_/,""),r=await Ct(t,{app_id:n});if(!r.success)throw new Error(r.error.message);return r.data.status}export{fg as composeFileSchema,$r as cvmAttestationResponseSchema,nu as dockerConfigSchema,gg as encryptedEnvItemSchema,jg as fetchContainerLogs,qg as fetchContainerLogsEntries,Lg as fetchCvmChannelLogs,Pg as fetchSerialLogs,Ag as getCvmAttestation,kg as getCvmByAppId,Tg as getCvmCreateResources,Bt as getCvmLogEndpoint,Sg as getCvmNetwork,jr as getCvmNetworkResponseSchema,zg as getCvmStatus,ru as imageSchema,Rg as replicateCvm,qr as replicateCvmResponseSchema,Ig as resizeCvm,Eg as selectCvm,Ng as streamContainerLogs,$g as streamContainerLogsEntries,Ug as streamCvmChannelLogs,Og as streamSerialLogs,hg as teepodSchema,xg as upgradeCvm};
44
44
  //# sourceMappingURL=index.js.map