noskills 4.5.1 → 4.5.2

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.
Files changed (91) hide show
  1. package/chunks/{ajan-bridge-T5M4DPDT.js → ajan-bridge-BNPC757J.js} +1 -1
  2. package/chunks/{anthropic-TS7EMQML.js → anthropic-ZKOMTKX2.js} +1 -1
  3. package/chunks/{approve-HEW3VFYH.js → approve-3TKOHYHH.js} +1 -1
  4. package/chunks/{ask-AXHTCVD6.js → ask-UB26SBWQ.js} +1 -1
  5. package/chunks/{block-VN76CXZW.js → block-Q4WAIX7X.js} +1 -1
  6. package/chunks/{cancel-7WRAST62.js → cancel-DY76ADX4.js} +1 -1
  7. package/chunks/{chunk-4PF2MT7S.js → chunk-34RPTI4K.js} +7 -7
  8. package/chunks/chunk-3JTDWOAJ.js +2 -0
  9. package/chunks/{chunk-GQTHILPL.js → chunk-5FX4EBFY.js} +1 -1
  10. package/chunks/chunk-5OTECUN7.js +1 -0
  11. package/chunks/{chunk-6YSS6PEL.js → chunk-7PBHRFOZ.js} +1 -1
  12. package/chunks/{chunk-7GC46XEU.js → chunk-AB3N327V.js} +1 -1
  13. package/chunks/{chunk-KMLNG3EC.js → chunk-BYPCI5VU.js} +1 -1
  14. package/chunks/{chunk-QKWJ72HI.js → chunk-CKIZYL4O.js} +1 -1
  15. package/chunks/{chunk-S4MUTKHT.js → chunk-DYCGJ4RY.js} +1 -1
  16. package/chunks/{chunk-UE56BMAW.js → chunk-EVJYA7S3.js} +1 -1
  17. package/chunks/{chunk-LN4NDYT6.js → chunk-FYFUEK4U.js} +1 -1
  18. package/chunks/chunk-GNMOE7H3.js +48 -0
  19. package/chunks/chunk-HB62UGZI.js +2 -0
  20. package/chunks/{chunk-EIMBEXUJ.js → chunk-IM73MYMS.js} +1 -1
  21. package/chunks/{chunk-KM64FL2X.js → chunk-J25XTDQQ.js} +1 -1
  22. package/chunks/{chunk-JL3MAFYQ.js → chunk-LGQEWL5X.js} +1 -1
  23. package/chunks/{chunk-5DZHAHXW.js → chunk-LKZZ4JN5.js} +1 -1
  24. package/chunks/{chunk-DBKXMYLF.js → chunk-NPWXEWRN.js} +1 -1
  25. package/chunks/{chunk-PKEQKXZW.js → chunk-ONJVI5AZ.js} +1 -1
  26. package/chunks/{chunk-EIGFDYGQ.js → chunk-OP4XAIGW.js} +1 -1
  27. package/chunks/{chunk-W4TQLLUK.js → chunk-T6NZVA6P.js} +1 -1
  28. package/chunks/{chunk-5PBNUBBY.js → chunk-TCSIXKUD.js} +1 -1
  29. package/chunks/{chunk-KRKOWSYW.js → chunk-WDKWHGJU.js} +5 -7
  30. package/chunks/{chunk-PRQ5CRIG.js → chunk-XDPATEP5.js} +1 -1
  31. package/chunks/{chunk-CML74SNT.js → chunk-Y45DQJSS.js} +1 -1
  32. package/chunks/{chunk-RAQY37P6.js → chunk-YUTDPPXX.js} +1 -1
  33. package/chunks/claude-code-OQJIUKZP.js +1 -0
  34. package/chunks/{concern-QSENGU6C.js → concern-UIGVWDFS.js} +1 -1
  35. package/chunks/{config-S3UXTJN2.js → config-72Z4PIJN.js} +1 -1
  36. package/chunks/{decision-ledger-GY2W6VWL.js → decision-ledger-5IPPTRT7.js} +1 -1
  37. package/chunks/{delegate-WKXIER7E.js → delegate-OV6NY434.js} +1 -1
  38. package/chunks/{diagrams-A7W2EBYV.js → diagrams-OX4FBDGP.js} +1 -1
  39. package/chunks/{done-WR3UFYJT.js → done-V54GSSTY.js} +1 -1
  40. package/chunks/{followup-5EGZEF5Q.js → followup-NL7EPIGF.js} +1 -1
  41. package/chunks/{free-KJQHRYZA.js → free-KD344KRL.js} +1 -1
  42. package/chunks/{gemini-IWP24T63.js → gemini-23EOEXSF.js} +1 -1
  43. package/chunks/{init-437SU6XH.js → init-WDRNFT57.js} +1 -1
  44. package/chunks/{invoke-hook-LMCWNF65.js → invoke-hook-I3NTD36Q.js} +1 -1
  45. package/chunks/kiro-TPAAIMY6.js +1 -0
  46. package/chunks/{learn-ZTYKBZER.js → learn-WBWNJEB2.js} +1 -1
  47. package/chunks/{ledger-FOOPJ2UO.js → ledger-QYK252DV.js} +1 -1
  48. package/chunks/{list-HNGIOVBK.js → list-WO6RS7JX.js} +1 -1
  49. package/chunks/{manager-2MOLEJ4Q.js → manager-ZSPRC5R4.js} +1 -1
  50. package/chunks/{mod-AJIRKRAH.js → mod-B6LBGYON.js} +1 -1
  51. package/chunks/{mod-6EZYRKWV.js → mod-MMHDQRNF.js} +1 -1
  52. package/chunks/{mod-7X5TKHKC.js → mod-RBGAMGZA.js} +1 -1
  53. package/chunks/{mod-TGOMO3CJ.js → mod-SV4VELMH.js} +1 -1
  54. package/chunks/{next-Y6FOPM4Z.js → next-QXCLZ7P3.js} +1 -1
  55. package/chunks/node-2XIHQ2M4.js +1 -0
  56. package/chunks/node-BXYZKSJY.js +15 -0
  57. package/chunks/node-DMUOWFGA.js +69 -0
  58. package/chunks/ollama-MXRDGQDF.js +1 -0
  59. package/chunks/openai-LE47IWMQ.js +30 -0
  60. package/chunks/{openai-YES2XJDU.js → openai-MSJF4B6H.js} +1 -1
  61. package/chunks/opencode-ZDHKR2P6.js +1 -0
  62. package/chunks/{pack-KUT53Z24.js → pack-NS64WU6M.js} +1 -1
  63. package/chunks/{plan-export-PG2BVRQZ.js → plan-export-HECAF7D4.js} +1 -1
  64. package/chunks/{purge-JGNJNEET.js → purge-PSQNN42H.js} +1 -1
  65. package/chunks/{reopen-RPDXN3CF.js → reopen-L37M5XUI.js} +1 -1
  66. package/chunks/{reset-RBCQO2RF.js → reset-OOTZXW6Q.js} +1 -1
  67. package/chunks/{review-VMS5MYOV.js → review-QLD6WSOB.js} +1 -1
  68. package/chunks/{rule-IB4VKSBC.js → rule-OOANQBHB.js} +1 -1
  69. package/chunks/{run-62PWXVII.js → run-YHCIRY7Z.js} +1 -1
  70. package/chunks/{sdk-FR7Z4YSC.js → sdk-OQIHH3OY.js} +1 -1
  71. package/chunks/{session-Q43KMFL2.js → session-OWWDH7KA.js} +1 -1
  72. package/chunks/{spec-4RKLPOEM.js → spec-O7F525UN.js} +1 -1
  73. package/chunks/{status-OGLFEFF7.js → status-SZZXY7V3.js} +1 -1
  74. package/chunks/{sync-H35O5DN5.js → sync-3RYRGTEA.js} +1 -1
  75. package/chunks/{validate-JX7UTAK5.js → validate-UZD6JBSG.js} +1 -1
  76. package/chunks/{vertexai-WF5CKMYI.js → vertexai-CVCRCO24.js} +1 -1
  77. package/chunks/{watch-SOZDHLSC.js → watch-5DNM646U.js} +1 -1
  78. package/chunks/{web-3VGRM3W4.js → web-662LNB3K.js} +1 -1
  79. package/chunks/{wontfix-RBOGLLWJ.js → wontfix-UDCTLHNB.js} +1 -1
  80. package/noskills.js +1 -1
  81. package/package.json +1 -1
  82. package/chunks/chunk-3ZJ3UGQL.js +0 -48
  83. package/chunks/chunk-575Y3OEG.js +0 -1
  84. package/chunks/chunk-IGDFEGCH.js +0 -2
  85. package/chunks/claude-code-DIWRQKZA.js +0 -1
  86. package/chunks/kiro-THWCXS5L.js +0 -1
  87. package/chunks/node-AZK2C657.js +0 -12
  88. package/chunks/node-GQQ42DT2.js +0 -68
  89. package/chunks/ollama-2KAMCXVL.js +0 -1
  90. package/chunks/openai-HHE35TAX.js +0 -31
  91. package/chunks/opencode-S4M7WJTO.js +0 -1
@@ -0,0 +1,69 @@
1
+ import{a as J,c as H,e as Tt}from"./chunk-HISXAZ4Y.js";var hc=H((rD,pc)=>{function Ye(t,e){typeof e=="boolean"&&(e={forever:e}),this._originalTimeouts=JSON.parse(JSON.stringify(t)),this._timeouts=t,this._options=e||{},this._maxRetryTime=e&&e.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}pc.exports=Ye;Ye.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)};Ye.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null};Ye.prototype.retry=function(t){if(this._timeout&&clearTimeout(this._timeout),!t)return!1;var e=new Date().getTime();if(t&&e-this._operationStart>=this._maxRetryTime)return this._errors.push(t),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(t);var n=this._timeouts.shift();if(n===void 0)if(this._cachedTimeouts)this._errors.splice(0,this._errors.length-1),n=this._cachedTimeouts.slice(-1);else return!1;var r=this;return this._timer=setTimeout(function(){r._attempts++,r._operationTimeoutCb&&(r._timeout=setTimeout(function(){r._operationTimeoutCb(r._attempts)},r._operationTimeout),r._options.unref&&r._timeout.unref()),r._fn(r._attempts)},n),this._options.unref&&this._timer.unref(),!0};Ye.prototype.attempt=function(t,e){this._fn=t,e&&(e.timeout&&(this._operationTimeout=e.timeout),e.cb&&(this._operationTimeoutCb=e.cb));var n=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){n._operationTimeoutCb()},n._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};Ye.prototype.try=function(t){console.log("Using RetryOperation.try() is deprecated"),this.attempt(t)};Ye.prototype.start=function(t){console.log("Using RetryOperation.start() is deprecated"),this.attempt(t)};Ye.prototype.start=Ye.prototype.try;Ye.prototype.errors=function(){return this._errors};Ye.prototype.attempts=function(){return this._attempts};Ye.prototype.mainError=function(){if(this._errors.length===0)return null;for(var t={},e=null,n=0,r=0;r<this._errors.length;r++){var i=this._errors[r],o=i.message,a=(t[o]||0)+1;t[o]=a,a>=n&&(e=i,n=a)}return e}});var mc=H(sn=>{var Ny=hc();sn.operation=function(t){var e=sn.timeouts(t);return new Ny(e,{forever:t&&(t.forever||t.retries===1/0),unref:t&&t.unref,maxRetryTime:t&&t.maxRetryTime})};sn.timeouts=function(t){if(t instanceof Array)return[].concat(t);var e={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var n in t)e[n]=t[n];if(e.minTimeout>e.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var r=[],i=0;i<e.retries;i++)r.push(this.createTimeout(i,e));return t&&t.forever&&!r.length&&r.push(this.createTimeout(i,e)),r.sort(function(o,a){return o-a}),r};sn.createTimeout=function(t,e){var n=e.randomize?Math.random()+1:1,r=Math.round(n*Math.max(e.minTimeout,1)*Math.pow(e.factor,t));return r=Math.min(r,e.maxTimeout),r};sn.wrap=function(t,e,n){if(e instanceof Array&&(n=e,e=null),!n){n=[];for(var r in t)typeof t[r]=="function"&&n.push(r)}for(var i=0;i<n.length;i++){var o=n[i],a=t[o];t[o]=function(c){var d=sn.operation(e),f=Array.prototype.slice.call(arguments,1),p=f.pop();f.push(function(h){d.retry(h)||(h&&(arguments[0]=d.mainError()),p.apply(this,arguments))}),d.attempt(function(){c.apply(t,f)})}.bind(t,a),t[o].options=e}}});var _c=H((oD,gc)=>{gc.exports=mc()});var Ec=H((sD,Hr)=>{"use strict";var xy=_c(),ky=["Failed to fetch","NetworkError when attempting to fetch resource.","The Internet connection appears to be offline.","Network request failed"],Br=class extends Error{constructor(e){super(),e instanceof Error?(this.originalError=e,{message:e}=e):(this.originalError=new Error(e),this.originalError.stack=this.stack),this.name="AbortError",this.message=e}},Dy=(t,e,n)=>{let r=n.retries-(e-1);return t.attemptNumber=e,t.retriesLeft=r,t},My=t=>ky.includes(t),yc=(t,e)=>new Promise((n,r)=>{e={onFailedAttempt:()=>{},retries:10,...e};let i=xy.operation(e);i.attempt(async o=>{try{n(await t(o))}catch(a){if(!(a instanceof Error)){r(new TypeError(`Non-error was thrown: "${a}". You should only throw errors.`));return}if(a instanceof Br)i.stop(),r(a.originalError);else if(a instanceof TypeError&&!My(a.message))i.stop(),r(a);else{Dy(a,o,e);try{await e.onFailedAttempt(a)}catch(u){r(u);return}i.retry(a)||r(i.mainError())}}})});Hr.exports=yc;Hr.exports.default=yc;Hr.exports.AbortError=Br});var Xo=H((aD,Rc)=>{"use strict";var Vr=Object.prototype.hasOwnProperty,wc=Object.prototype.toString,vc=Object.defineProperty,Tc=Object.getOwnPropertyDescriptor,Ac=function(e){return typeof Array.isArray=="function"?Array.isArray(e):wc.call(e)==="[object Array]"},Cc=function(e){if(!e||wc.call(e)!=="[object Object]")return!1;var n=Vr.call(e,"constructor"),r=e.constructor&&e.constructor.prototype&&Vr.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!n&&!r)return!1;var i;for(i in e);return typeof i>"u"||Vr.call(e,i)},Sc=function(e,n){vc&&n.name==="__proto__"?vc(e,n.name,{enumerable:!0,configurable:!0,value:n.newValue,writable:!0}):e[n.name]=n.newValue},Ic=function(e,n){if(n==="__proto__")if(Vr.call(e,n)){if(Tc)return Tc(e,n).value}else return;return e[n]};Rc.exports=function t(){var e,n,r,i,o,a,u=arguments[0],c=1,d=arguments.length,f=!1;for(typeof u=="boolean"&&(f=u,u=arguments[1]||{},c=2),(u==null||typeof u!="object"&&typeof u!="function")&&(u={});c<d;++c)if(e=arguments[c],e!=null)for(n in e)r=Ic(u,n),i=Ic(e,n),u!==i&&(f&&i&&(Cc(i)||(o=Ac(i)))?(o?(o=!1,a=r&&Ac(r)?r:[]):a=r&&Cc(r)?r:{},Sc(u,{name:n,newValue:t(f,a,i)})):typeof i<"u"&&Sc(u,{name:n,newValue:i}));return u}});var Pc=H((lD,by)=>{by.exports={name:"gaxios",version:"7.3.1",description:"A simple common HTTP client specifically for Google APIs and services.",main:"build/cjs/src/index.js",types:"build/cjs/src/index.d.ts",files:["build/"],exports:{".":{import:{types:"./build/esm/src/index.d.ts",default:"./build/esm/src/index.js"},require:{types:"./build/cjs/src/index.d.ts",default:"./build/cjs/src/index.js"}}},scripts:{lint:"gts check --no-inline-config",test:"c8 mocha build/esm/test","presystem-test":"npm run compile","system-test":"mocha build/esm/system-test --timeout 80000",compile:"tsc -b ./tsconfig.json ./tsconfig.cjs.json && node utils/enable-esm.mjs",fix:"gts fix",prepare:"npm run compile",pretest:"npm run compile",webpack:"webpack","prebrowser-test":"npm run compile","browser-test":"node build/browser-test/browser-test-runner.js",docs:"jsdoc -c .jsdoc.js","samples-test":"cd samples/ && npm link ../ && npm test && cd ../",prelint:"cd samples; npm link ../; npm install",clean:"gts clean"},repository:{type:"git",directory:"core/packages/gaxios",url:"https://github.com/googleapis/google-cloud-node.git"},keywords:["google"],engines:{node:">=18"},author:"Google, LLC",license:"Apache-2.0",devDependencies:{"@babel/plugin-proposal-private-methods":"^7.18.6","@types/cors":"^2.8.6","@types/express":"^5.0.0","@types/extend":"^3.0.1","@types/mocha":"^10.0.10","@types/multiparty":"4.2.1","@types/mv":"^2.1.0","@types/ncp":"^2.0.8","@types/node":"^24.0.0","@types/sinon":"^21.0.0","@types/tmp":"^0.2.6",assert:"^2.0.0",browserify:"^17.0.0",c8:"^10.1.3",cors:"^2.8.5",express:"^5.0.0",gts:"^6.0.2","is-docker":"^3.0.0",jsdoc:"^4.0.4","jsdoc-fresh":"^5.0.0","jsdoc-region-tag":"^4.0.0",karma:"^6.0.0","karma-chrome-launcher":"^3.0.0","karma-coverage":"^2.0.0","karma-firefox-launcher":"^2.0.0","karma-mocha":"^2.0.0","karma-remap-coverage":"^0.1.5","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.0",mocha:"^11.1.0",multiparty:"^4.2.1",mv:"^2.1.1",ncp:"^2.0.0",nock:"14.0.5","null-loader":"^4.0.1","pack-n-play":"^4.0.0",puppeteer:"^24.0.0",sinon:"21.0.3","stream-browserify":"^3.0.0",tmp:"0.2.7","ts-loader":"^9.5.2",typescript:"5.8.3","undici-types":"^7.24.1",webpack:"^5.97.1","webpack-cli":"^6.0.1"},dependencies:{extend:"^3.0.2","https-proxy-agent":"^7.0.1","node-fetch":"^3.3.2"},homepage:"https://github.com/googleapis/google-cloud-node/tree/main/core/packages/gaxios"}});var xc=H((uD,Nc)=>{"use strict";var Uy=Pc();Nc.exports={pkg:Uy}});var Ko=H(ze=>{"use strict";var Dc=ze&&ze.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ze,"__esModule",{value:!0});ze.GaxiosError=ze.GAXIOS_ERROR_SYMBOL=void 0;ze.defaultErrorRedactor=Mc;var kc=Dc(Xo()),Gy=Dc(xc()),Jo=Gy.default.pkg;ze.GAXIOS_ERROR_SYMBOL=Symbol.for(`${Jo.name}-gaxios-error`);var Wo=class t extends Error{config;response;code;status;error;[ze.GAXIOS_ERROR_SYMBOL]=Jo.version;static[Symbol.hasInstance](e){return e&&typeof e=="object"&&ze.GAXIOS_ERROR_SYMBOL in e&&e[ze.GAXIOS_ERROR_SYMBOL]===Jo.version?!0:Function.prototype[Symbol.hasInstance].call(t,e)}constructor(e,n,r,i){if(super(e,{cause:i}),this.config=n,this.response=r,this.error=i instanceof Error?i:void 0,this.config=(0,kc.default)(!0,{},n),this.response&&(this.response.config=(0,kc.default)(!0,{},this.response.config)),this.response){try{this.response.data=Ly(this.config.responseType,this.response?.bodyUsed?this.response?.data:void 0)}catch{}this.status=this.response.status}i instanceof DOMException?this.code=i.name:i&&typeof i=="object"&&"code"in i&&(typeof i.code=="string"||typeof i.code=="number")&&(this.code=i.code)}static extractAPIErrorFromResponse(e,n="The request failed"){let r=n;if(typeof e.data=="string"&&(r=e.data),e.data&&typeof e.data=="object"&&"error"in e.data&&e.data.error&&!e.ok){if(typeof e.data.error=="string")return{message:e.data.error,code:e.status,status:e.statusText};if(typeof e.data.error=="object"){r="message"in e.data.error&&typeof e.data.error.message=="string"?e.data.error.message:r;let i="status"in e.data.error&&typeof e.data.error.status=="string"?e.data.error.status:e.statusText,o="code"in e.data.error&&typeof e.data.error.code=="number"?e.data.error.code:e.status;if("errors"in e.data.error&&Array.isArray(e.data.error.errors)){let a=[];for(let u of e.data.error.errors)typeof u=="object"&&"message"in u&&typeof u.message=="string"&&a.push(u.message);return Object.assign({message:a.join(`
2
+ `)||r,code:o,status:i},e.data.error)}return Object.assign({message:r,code:o,status:i},e.data.error)}}return{message:r,code:e.status,status:e.statusText}}};ze.GaxiosError=Wo;function Ly(t,e){switch(t){case"stream":return e;case"json":return JSON.parse(JSON.stringify(e));case"arraybuffer":return JSON.parse(Buffer.from(e).toString("utf8"));case"blob":return JSON.parse(e.text());default:return e}}function Mc(t){let e="<<REDACTED> - See `errorRedactor` option in `gaxios` for configuration>.";function n(o){o&&o.forEach((a,u)=>{(/^authentication$/i.test(u)||/^authorization$/i.test(u)||/secret/i.test(u))&&o.set(u,e)})}function r(o,a){if(typeof o=="object"&&o!==null&&typeof o[a]=="string"){let u=o[a];(/grant_type=/i.test(u)||/assertion=/i.test(u)||/secret/i.test(u))&&(o[a]=e)}}function i(o){!o||typeof o!="object"||(o instanceof FormData||o instanceof URLSearchParams||"forEach"in o&&"set"in o?o.forEach((a,u)=>{(["grant_type","assertion"].includes(u)||/secret/.test(u))&&o.set(u,e)}):("grant_type"in o&&(o.grant_type=e),"assertion"in o&&(o.assertion=e),"client_secret"in o&&(o.client_secret=e)))}return t.config&&(n(t.config.headers),r(t.config,"data"),i(t.config.data),r(t.config,"body"),i(t.config.body),t.config.url.searchParams.has("token")&&t.config.url.searchParams.set("token",e),t.config.url.searchParams.has("client_secret")&&t.config.url.searchParams.set("client_secret",e)),t.response&&(Mc({config:t.response.config}),n(t.response.headers),t.response.bodyUsed&&(r(t.response,"data"),i(t.response.data))),t}});var Uc=H(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.getRetryConfig=Oy;async function Oy(t){let e=bc(t);if(!t||!t.config||!e&&!t.config.retry)return{shouldRetry:!1};e=e||{},e.currentRetryAttempt=e.currentRetryAttempt||0,e.retry=e.retry===void 0||e.retry===null?3:e.retry,e.httpMethodsToRetry=e.httpMethodsToRetry||["GET","HEAD","PUT","OPTIONS","DELETE"],e.noResponseRetries=e.noResponseRetries===void 0||e.noResponseRetries===null?2:e.noResponseRetries,e.retryDelayMultiplier=e.retryDelayMultiplier?e.retryDelayMultiplier:2,e.timeOfFirstRequest=e.timeOfFirstRequest?e.timeOfFirstRequest:Date.now(),e.totalTimeout=e.totalTimeout?e.totalTimeout:Number.MAX_SAFE_INTEGER,e.maxRetryDelay=e.maxRetryDelay?e.maxRetryDelay:Number.MAX_SAFE_INTEGER;let n=[[100,199],[408,408],[429,429],[500,599]];if(e.statusCodesToRetry=e.statusCodesToRetry||n,t.config.retryConfig=e,!await(e.shouldRetry||qy)(t))return{shouldRetry:!1,config:t.config};let i=Fy(e);t.config.retryConfig.currentRetryAttempt+=1;let o=e.retryBackoff?e.retryBackoff(t,i):new Promise(a=>{setTimeout(a,i)});return e.onRetryAttempt&&await e.onRetryAttempt(t),await o,{shouldRetry:!0,config:t.config}}function qy(t){let e=bc(t);if(t.config.signal?.aborted&&t.code!=="TimeoutError"||t.code==="AbortError"||!e||e.retry===0||!t.response&&(e.currentRetryAttempt||0)>=e.noResponseRetries||!e.httpMethodsToRetry||!e.httpMethodsToRetry.includes(t.config.method?.toUpperCase()||"GET"))return!1;if(t.response&&t.response.status){let n=!1;for(let[r,i]of e.statusCodesToRetry){let o=t.response.status;if(o>=r&&o<=i){n=!0;break}}if(!n)return!1}return e.currentRetryAttempt=e.currentRetryAttempt||0,!(e.currentRetryAttempt>=e.retry)}function bc(t){if(t&&t.config&&t.config.retryConfig)return t.config.retryConfig}function Fy(t){let n=(t.currentRetryAttempt?0:t.retryDelay??100)+(Math.pow(t.retryDelayMultiplier,t.currentRetryAttempt)-1)/2*1e3,r=t.totalTimeout-(Date.now()-t.timeOfFirstRequest);return Math.min(n,r,t.maxRetryDelay)}});var Qo=H($r=>{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.GaxiosInterceptorManager=void 0;var zo=class extends Set{};$r.GaxiosInterceptorManager=zo});var Oc=H(An=>{"use strict";var By=An&&An.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Tn;Object.defineProperty(An,"__esModule",{value:!0});An.Gaxios=void 0;var Hy=By(Xo()),Vy=J("https"),an=Ko(),$y=Uc(),Gc=J("stream"),Lc=Qo(),Xy=async()=>globalThis.crypto?.randomUUID()||(await import("crypto")).randomUUID(),Jy=204,Xr=class{agentCache=new Map;defaults;interceptors;constructor(e){this.defaults=e||{},this.interceptors={request:new Lc.GaxiosInterceptorManager,response:new Lc.GaxiosInterceptorManager}}fetch(...e){let n=e[0],r=e[1],i,o=new Headers;return typeof n=="string"?i=new URL(n):n instanceof URL?i=n:n&&n.url&&(i=new URL(n.url)),n&&typeof n=="object"&&"headers"in n&&Tn.mergeHeaders(o,n.headers),r&&Tn.mergeHeaders(o,new Headers(r.headers)),typeof n=="object"&&!(n instanceof URL)?this.request({...r,...n,headers:o,url:i}):this.request({...r,headers:o,url:i})}async request(e={}){let n=await this.#r(e);return n=await this.#t(n),this.#n(this._request(n))}async _defaultAdapter(e){let n=e.fetchImplementation||this.defaults.fetchImplementation||await Tn.#l(),r={...e};delete r.data;let i=await n(e.url,r),o=await this.getResponseData(e,i);return Object.getOwnPropertyDescriptor(i,"data")?.configurable||Object.defineProperties(i,{data:{configurable:!0,writable:!0,enumerable:!0,value:o}}),Object.assign(i,{config:e,data:o})}async _request(e){try{let n;if(e.adapter?n=await e.adapter(e,this._defaultAdapter.bind(this)):n=await this._defaultAdapter(e),!e.validateStatus(n.status)){if(e.responseType==="stream"){let i=[];for await(let o of n.data)i.push(o);n.data=Buffer.concat(i.map(o=>typeof o=="string"?Buffer.from(o):o)).toString("utf8")}let r=an.GaxiosError.extractAPIErrorFromResponse(n,`Request failed with status code ${n.status}`);throw new an.GaxiosError(r?.message,e,n,r)}return n}catch(n){let r;n instanceof an.GaxiosError?r=n:n instanceof Error?r=new an.GaxiosError(n.message,e,void 0,n):r=new an.GaxiosError("Unexpected Gaxios Error",e,void 0,n);let{shouldRetry:i,config:o}=await(0,$y.getRetryConfig)(r);if(i&&o)return r.config.retryConfig.currentRetryAttempt=o.retryConfig.currentRetryAttempt,e.retryConfig=r.config?.retryConfig,this.#i(e),this._request(e);throw e.errorRedactor&&e.errorRedactor(r),r}}async getResponseData(e,n){if(n.status===Jy)return"";if(e.maxContentLength&&n.headers.has("content-length")&&e.maxContentLength<Number.parseInt(n.headers?.get("content-length")||""))throw new an.GaxiosError("Response's `Content-Length` is over the limit.",e,Object.assign(n,{config:e}));switch(e.responseType){case"stream":return n.body;case"json":{let r=await n.text();try{return JSON.parse(r)}catch{return r}}case"arraybuffer":return n.arrayBuffer();case"blob":return n.blob();case"text":return n.text();default:return this.getResponseDataFromContentType(n)}}#e(e,n=[]){let r=new URL(e),i=[...n],o=(process.env.NO_PROXY??process.env.no_proxy)?.split(",")||[];for(let a of o)i.push(a.trim());for(let a of i)if(a instanceof RegExp){if(a.test(r.toString()))return!1}else if(a instanceof URL){if(a.origin===r.origin)return!1}else if(a.startsWith("*.")||a.startsWith(".")){let u=a.replace(/^\*\./,".");if(r.hostname.endsWith(u))return!1}else if(a===r.origin||a===r.hostname||a===r.href)return!1;return!0}async#t(e){let n=Promise.resolve(e);for(let r of this.interceptors.request.values())r&&(n=n.then(r.resolved,r.rejected));return n}async#n(e){let n=Promise.resolve(e);for(let r of this.interceptors.response.values())r&&(n=n.then(r.resolved,r.rejected));return n}async#r(e){let n=new Headers(this.defaults.headers);Tn.mergeHeaders(n,e.headers);let r=(0,Hy.default)(!0,{},this.defaults,e);if(!r.url)throw new Error("URL is required.");if(r.baseURL&&(r.url=new URL(r.url,r.baseURL)),r.url=new URL(r.url),r.params)if(r.paramsSerializer){let a=r.paramsSerializer(r.params);a.startsWith("?")&&(a=a.slice(1));let u=r.url.toString().includes("?")?"&":"?";r.url=r.url+u+a}else{let a=r.url instanceof URL?r.url:new URL(r.url);for(let[u,c]of new URLSearchParams(r.params))a.searchParams.append(u,c);r.url=a}typeof e.maxContentLength=="number"&&(r.size=e.maxContentLength),typeof e.maxRedirects=="number"&&(r.follow=e.maxRedirects);let i=typeof r.data=="string"||r.data instanceof ArrayBuffer||r.data instanceof Blob||globalThis.File&&r.data instanceof File||r.data instanceof FormData||r.data instanceof Gc.Readable||r.data instanceof ReadableStream||r.data instanceof String||r.data instanceof URLSearchParams||ArrayBuffer.isView(r.data)||["Blob","File","FormData"].includes(r.data?.constructor?.name||"");if(r.multipart?.length){let a=await Xy();n.set("content-type",`multipart/related; boundary=${a}`),r.body=Gc.Readable.from(this.getMultipartRequest(r.multipart,a))}else i?r.body=r.data:typeof r.data=="object"?n.get("Content-Type")==="application/x-www-form-urlencoded"?r.body=r.paramsSerializer?r.paramsSerializer(r.data):new URLSearchParams(r.data):(n.has("content-type")||n.set("content-type","application/json"),r.body=JSON.stringify(r.data)):r.data&&(r.body=r.data);r.validateStatus=r.validateStatus||this.validateStatus,r.responseType=r.responseType||"unknown",!n.has("accept")&&r.responseType==="json"&&n.set("accept","application/json");let o=r.proxy||process?.env?.HTTPS_PROXY||process?.env?.https_proxy||process?.env?.HTTP_PROXY||process?.env?.http_proxy;if(!r.agent)if(o&&this.#e(r.url,r.noProxy)){let a=await Tn.#a();this.agentCache.has(o)?r.agent=this.agentCache.get(o):(r.agent=new a(o,{cert:r.cert,key:r.key}),this.agentCache.set(o,r.agent))}else r.cert&&r.key&&(this.agentCache.has(r.key)?r.agent=this.agentCache.get(r.key):(r.agent=new Vy.Agent({cert:r.cert,key:r.key}),this.agentCache.set(r.key,r.agent)));return typeof r.errorRedactor!="function"&&r.errorRedactor!==!1&&(r.errorRedactor=an.defaultErrorRedactor),r.body&&!("duplex"in r)&&(r.duplex="half"),this.#i(r),Object.assign(r,{headers:n,url:r.url instanceof URL?r.url:new URL(r.url)})}#i(e){if(e.timeout){let n=AbortSignal.timeout(e.timeout);e.signal&&!e.signal.aborted?e.signal=AbortSignal.any([e.signal,n]):e.signal=n}}validateStatus(e){return e>=200&&e<300}async getResponseDataFromContentType(e){let n=e.headers.get("Content-Type");if(n===null)return e.text();if(n=n.toLowerCase(),n.includes("application/json")){let r=await e.text();try{r=JSON.parse(r)}catch{}return r}else return n.match(/^text\//)?e.text():e.blob()}async*getMultipartRequest(e,n){let r=`--${n}--`;for(let i of e){let o=i.headers.get("Content-Type")||"application/octet-stream";yield`--${n}\r
3
+ Content-Type: ${o}\r
4
+ \r
5
+ `,typeof i.content=="string"?yield i.content:yield*i.content,yield`\r
6
+ `}yield r}static#o;static#s;static async#a(){return this.#o||=(await import("./dist-3MH5UCQU.js")).HttpsProxyAgent,this.#o}static async#l(){let e=typeof window<"u"&&!!window;return this.#s||=e?window.fetch:(await import("./src-HXQVVTGQ.js")).default,this.#s}static mergeHeaders(e,...n){e=e instanceof Headers?e:new Headers(e);for(let r of n)(r instanceof Headers?r:new Headers(r)).forEach((o,a)=>{a==="set-cookie"?e.append(a,o):e.set(a,o)});return e}};An.Gaxios=Xr;Tn=Xr});var Me=H(Le=>{"use strict";var Wy=Le&&Le.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),Ky=Le&&Le.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&Wy(e,t,n)};Object.defineProperty(Le,"__esModule",{value:!0});Le.instance=Le.Gaxios=Le.GaxiosError=void 0;Le.request=zy;var qc=Oc();Object.defineProperty(Le,"Gaxios",{enumerable:!0,get:function(){return qc.Gaxios}});var Yy=Ko();Object.defineProperty(Le,"GaxiosError",{enumerable:!0,get:function(){return Yy.GaxiosError}});Ky(Qo(),Le);Le.instance=new qc.Gaxios;async function zy(t){return Le.instance.request(t)}});var Zo=H((Fc,Jr)=>{(function(t){"use strict";var e,n=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,r=Math.ceil,i=Math.floor,o="[BigNumber Error] ",a=o+"Number primitive has more than 15 significant digits: ",u=1e14,c=14,d=9007199254740991,f=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],p=1e7,h=1e9;function g(w){var k,O,B,N=V.prototype={constructor:V,toString:null,valueOf:null},q=new V(1),$=20,z=4,ne=-7,M=21,Q=-1e7,te=1e7,ve=!1,Ne=1,Ce=0,xe={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},Fe="0123456789abcdefghijklmnopqrstuvwxyz",Fo=!0;function V(v,S){var I,U,P,D,L,R,x,G,b=this;if(!(b instanceof V))return new V(v,S);if(S==null){if(v&&v._isBigNumber===!0){b.s=v.s,!v.c||v.e>te?b.c=b.e=null:v.e<Q?b.c=[b.e=0]:(b.e=v.e,b.c=v.c.slice());return}if((R=typeof v=="number")&&v*0==0){if(b.s=1/v<0?(v=-v,-1):1,v===~~v){for(D=0,L=v;L>=10;L/=10,D++);D>te?b.c=b.e=null:(b.e=D,b.c=[v]);return}G=String(v)}else{if(!n.test(G=String(v)))return B(b,G,R);b.s=G.charCodeAt(0)==45?(G=G.slice(1),-1):1}(D=G.indexOf("."))>-1&&(G=G.replace(".","")),(L=G.search(/e/i))>0?(D<0&&(D=L),D+=+G.slice(L+1),G=G.substring(0,L)):D<0&&(D=G.length)}else{if(y(S,2,Fe.length,"Base"),S==10&&Fo)return b=new V(v),We(b,$+b.e+1,z);if(G=String(v),R=typeof v=="number"){if(v*0!=0)return B(b,G,R,S);if(b.s=1/v<0?(G=G.slice(1),-1):1,V.DEBUG&&G.replace(/^0\.0*|\./,"").length>15)throw Error(a+v)}else b.s=G.charCodeAt(0)===45?(G=G.slice(1),-1):1;for(I=Fe.slice(0,S),D=L=0,x=G.length;L<x;L++)if(I.indexOf(U=G.charAt(L))<0){if(U=="."){if(L>D){D=x;continue}}else if(!P&&(G==G.toUpperCase()&&(G=G.toLowerCase())||G==G.toLowerCase()&&(G=G.toUpperCase()))){P=!0,L=-1,D=0;continue}return B(b,String(v),R,S)}R=!1,G=O(G,S,10,b.s),(D=G.indexOf("."))>-1?G=G.replace(".",""):D=G.length}for(L=0;G.charCodeAt(L)===48;L++);for(x=G.length;G.charCodeAt(--x)===48;);if(G=G.slice(L,++x)){if(x-=L,R&&V.DEBUG&&x>15&&(v>d||v!==i(v)))throw Error(a+b.s*v);if((D=D-L-1)>te)b.c=b.e=null;else if(D<Q)b.c=[b.e=0];else{if(b.e=D,b.c=[],L=(D+1)%c,D<0&&(L+=c),L<x){for(L&&b.c.push(+G.slice(0,L)),x-=c;L<x;)b.c.push(+G.slice(L,L+=c));L=c-(G=G.slice(L)).length}else L-=x;for(;L--;G+="0");b.c.push(+G)}}else b.c=[b.e=0]}V.clone=g,V.ROUND_UP=0,V.ROUND_DOWN=1,V.ROUND_CEIL=2,V.ROUND_FLOOR=3,V.ROUND_HALF_UP=4,V.ROUND_HALF_DOWN=5,V.ROUND_HALF_EVEN=6,V.ROUND_HALF_CEIL=7,V.ROUND_HALF_FLOOR=8,V.EUCLID=9,V.config=V.set=function(v){var S,I;if(v!=null)if(typeof v=="object"){if(v.hasOwnProperty(S="DECIMAL_PLACES")&&(I=v[S],y(I,0,h,S),$=I),v.hasOwnProperty(S="ROUNDING_MODE")&&(I=v[S],y(I,0,8,S),z=I),v.hasOwnProperty(S="EXPONENTIAL_AT")&&(I=v[S],I&&I.pop?(y(I[0],-h,0,S),y(I[1],0,h,S),ne=I[0],M=I[1]):(y(I,-h,h,S),ne=-(M=I<0?-I:I))),v.hasOwnProperty(S="RANGE"))if(I=v[S],I&&I.pop)y(I[0],-h,-1,S),y(I[1],1,h,S),Q=I[0],te=I[1];else if(y(I,-h,h,S),I)Q=-(te=I<0?-I:I);else throw Error(o+S+" cannot be zero: "+I);if(v.hasOwnProperty(S="CRYPTO"))if(I=v[S],I===!!I)if(I)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))ve=I;else throw ve=!I,Error(o+"crypto unavailable");else ve=I;else throw Error(o+S+" not true or false: "+I);if(v.hasOwnProperty(S="MODULO_MODE")&&(I=v[S],y(I,0,9,S),Ne=I),v.hasOwnProperty(S="POW_PRECISION")&&(I=v[S],y(I,0,h,S),Ce=I),v.hasOwnProperty(S="FORMAT"))if(I=v[S],typeof I=="object")xe=I;else throw Error(o+S+" not an object: "+I);if(v.hasOwnProperty(S="ALPHABET"))if(I=v[S],typeof I=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(I))Fo=I.slice(0,10)=="0123456789",Fe=I;else throw Error(o+S+" invalid: "+I)}else throw Error(o+"Object expected: "+v);return{DECIMAL_PLACES:$,ROUNDING_MODE:z,EXPONENTIAL_AT:[ne,M],RANGE:[Q,te],CRYPTO:ve,MODULO_MODE:Ne,POW_PRECISION:Ce,FORMAT:xe,ALPHABET:Fe}},V.isBigNumber=function(v){if(!v||v._isBigNumber!==!0)return!1;if(!V.DEBUG)return!0;var S,I,U=v.c,P=v.e,D=v.s;e:if({}.toString.call(U)=="[object Array]"){if((D===1||D===-1)&&P>=-h&&P<=h&&P===i(P)){if(U[0]===0){if(P===0&&U.length===1)return!0;break e}if(S=(P+1)%c,S<1&&(S+=c),String(U[0]).length==S){for(S=0;S<U.length;S++)if(I=U[S],I<0||I>=u||I!==i(I))break e;if(I!==0)return!0}}}else if(U===null&&P===null&&(D===null||D===1||D===-1))return!0;throw Error(o+"Invalid BigNumber: "+v)},V.maximum=V.max=function(){return fc(arguments,-1)},V.minimum=V.min=function(){return fc(arguments,1)},V.random=(function(){var v=9007199254740992,S=Math.random()*v&2097151?function(){return i(Math.random()*v)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(I){var U,P,D,L,R,x=0,G=[],b=new V(q);if(I==null?I=$:y(I,0,h),L=r(I/c),ve)if(crypto.getRandomValues){for(U=crypto.getRandomValues(new Uint32Array(L*=2));x<L;)R=U[x]*131072+(U[x+1]>>>11),R>=9e15?(P=crypto.getRandomValues(new Uint32Array(2)),U[x]=P[0],U[x+1]=P[1]):(G.push(R%1e14),x+=2);x=L/2}else if(crypto.randomBytes){for(U=crypto.randomBytes(L*=7);x<L;)R=(U[x]&31)*281474976710656+U[x+1]*1099511627776+U[x+2]*4294967296+U[x+3]*16777216+(U[x+4]<<16)+(U[x+5]<<8)+U[x+6],R>=9e15?crypto.randomBytes(7).copy(U,x):(G.push(R%1e14),x+=7);x=L/7}else throw ve=!1,Error(o+"crypto unavailable");if(!ve)for(;x<L;)R=S(),R<9e15&&(G[x++]=R%1e14);for(L=G[--x],I%=c,L&&I&&(R=f[c-I],G[x]=i(L/R)*R);G[x]===0;G.pop(),x--);if(x<0)G=[D=0];else{for(D=-1;G[0]===0;G.splice(0,1),D-=c);for(x=1,R=G[0];R>=10;R/=10,x++);x<c&&(D-=c-x)}return b.e=D,b.c=G,b}})(),V.sum=function(){for(var v=1,S=arguments,I=new V(S[0]);v<S.length;)I=I.plus(S[v++]);return I},O=(function(){var v="0123456789";function S(I,U,P,D){for(var L,R=[0],x,G=0,b=I.length;G<b;){for(x=R.length;x--;R[x]*=U);for(R[0]+=D.indexOf(I.charAt(G++)),L=0;L<R.length;L++)R[L]>P-1&&(R[L+1]==null&&(R[L+1]=0),R[L+1]+=R[L]/P|0,R[L]%=P)}return R.reverse()}return function(I,U,P,D,L){var R,x,G,b,F,Z,j,pe,Se=I.indexOf("."),Pe=$,ae=z;for(Se>=0&&(b=Ce,Ce=0,I=I.replace(".",""),pe=new V(U),Z=pe.pow(I.length-Se),Ce=b,pe.c=S(C(m(Z.c),Z.e,"0"),10,P,v),pe.e=pe.c.length),j=S(I,U,P,L?(R=Fe,v):(R=v,Fe)),G=b=j.length;j[--b]==0;j.pop());if(!j[0])return R.charAt(0);if(Se<0?--G:(Z.c=j,Z.e=G,Z.s=D,Z=k(Z,pe,Pe,ae,P),j=Z.c,F=Z.r,G=Z.e),x=G+Pe+1,Se=j[x],b=P/2,F=F||x<0||j[x+1]!=null,F=ae<4?(Se!=null||F)&&(ae==0||ae==(Z.s<0?3:2)):Se>b||Se==b&&(ae==4||F||ae==6&&j[x-1]&1||ae==(Z.s<0?8:7)),x<1||!j[0])I=F?C(R.charAt(1),-Pe,R.charAt(0)):R.charAt(0);else{if(j.length=x,F)for(--P;++j[--x]>P;)j[x]=0,x||(++G,j=[1].concat(j));for(b=j.length;!j[--b];);for(Se=0,I="";Se<=b;I+=R.charAt(j[Se++]));I=C(I,G,R.charAt(0))}return I}})(),k=(function(){function v(U,P,D){var L,R,x,G,b=0,F=U.length,Z=P%p,j=P/p|0;for(U=U.slice();F--;)x=U[F]%p,G=U[F]/p|0,L=j*x+G*Z,R=Z*x+L%p*p+b,b=(R/D|0)+(L/p|0)+j*G,U[F]=R%D;return b&&(U=[b].concat(U)),U}function S(U,P,D,L){var R,x;if(D!=L)x=D>L?1:-1;else for(R=x=0;R<D;R++)if(U[R]!=P[R]){x=U[R]>P[R]?1:-1;break}return x}function I(U,P,D,L){for(var R=0;D--;)U[D]-=R,R=U[D]<P[D]?1:0,U[D]=R*L+U[D]-P[D];for(;!U[0]&&U.length>1;U.splice(0,1));}return function(U,P,D,L,R){var x,G,b,F,Z,j,pe,Se,Pe,ae,_e,be,Fr,Vo,$o,vt,ar,Ke=U.s==P.s?1:-1,Ge=U.c,Ie=P.c;if(!Ge||!Ge[0]||!Ie||!Ie[0])return new V(!U.s||!P.s||(Ge?Ie&&Ge[0]==Ie[0]:!Ie)?NaN:Ge&&Ge[0]==0||!Ie?Ke*0:Ke/0);for(Se=new V(Ke),Pe=Se.c=[],G=U.e-P.e,Ke=D+G+1,R||(R=u,G=_(U.e/c)-_(P.e/c),Ke=Ke/c|0),b=0;Ie[b]==(Ge[b]||0);b++);if(Ie[b]>(Ge[b]||0)&&G--,Ke<0)Pe.push(1),F=!0;else{for(Vo=Ge.length,vt=Ie.length,b=0,Ke+=2,Z=i(R/(Ie[0]+1)),Z>1&&(Ie=v(Ie,Z,R),Ge=v(Ge,Z,R),vt=Ie.length,Vo=Ge.length),Fr=vt,ae=Ge.slice(0,vt),_e=ae.length;_e<vt;ae[_e++]=0);ar=Ie.slice(),ar=[0].concat(ar),$o=Ie[0],Ie[1]>=R/2&&$o++;do{if(Z=0,x=S(Ie,ae,vt,_e),x<0){if(be=ae[0],vt!=_e&&(be=be*R+(ae[1]||0)),Z=i(be/$o),Z>1)for(Z>=R&&(Z=R-1),j=v(Ie,Z,R),pe=j.length,_e=ae.length;S(j,ae,pe,_e)==1;)Z--,I(j,vt<pe?ar:Ie,pe,R),pe=j.length,x=1;else Z==0&&(x=Z=1),j=Ie.slice(),pe=j.length;if(pe<_e&&(j=[0].concat(j)),I(ae,j,_e,R),_e=ae.length,x==-1)for(;S(Ie,ae,vt,_e)<1;)Z++,I(ae,vt<_e?ar:Ie,_e,R),_e=ae.length}else x===0&&(Z++,ae=[0]);Pe[b++]=Z,ae[0]?ae[_e++]=Ge[Fr]||0:(ae=[Ge[Fr]],_e=1)}while((Fr++<Vo||ae[0]!=null)&&Ke--);F=ae[0]!=null,Pe[0]||Pe.splice(0,1)}if(R==u){for(b=1,Ke=Pe[0];Ke>=10;Ke/=10,b++);We(Se,D+(Se.e=b+G*c-1)+1,L,F)}else Se.e=G,Se.r=+F;return Se}})();function Bo(v,S,I,U){var P,D,L,R,x;if(I==null?I=z:y(I,0,8),!v.c)return v.toString();if(P=v.c[0],L=v.e,S==null)x=m(v.c),x=U==1||U==2&&(L<=ne||L>=M)?T(x,L):C(x,L,"0");else if(v=We(new V(v),S,I),D=v.e,x=m(v.c),R=x.length,U==1||U==2&&(S<=D||D<=ne)){for(;R<S;x+="0",R++);x=T(x,D)}else if(S-=L+(U===2&&D>L),x=C(x,D,"0"),D+1>R){if(--S>0)for(x+=".";S--;x+="0");}else if(S+=D-R,S>0)for(D+1==R&&(x+=".");S--;x+="0");return v.s<0&&P?"-"+x:x}function fc(v,S){for(var I,U,P=1,D=new V(v[0]);P<v.length;P++)U=new V(v[P]),(!U.s||(I=E(D,U))===S||I===0&&D.s===S)&&(D=U);return D}function Ho(v,S,I){for(var U=1,P=S.length;!S[--P];S.pop());for(P=S[0];P>=10;P/=10,U++);return(I=U+I*c-1)>te?v.c=v.e=null:I<Q?v.c=[v.e=0]:(v.e=I,v.c=S),v}B=(function(){var v=/^(-?)0([xbo])(?=\w[\w.]*$)/i,S=/^([^.]+)\.$/,I=/^\.([^.]+)$/,U=/^-?(Infinity|NaN)$/,P=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(D,L,R,x){var G,b=R?L:L.replace(P,"");if(U.test(b))D.s=isNaN(b)?null:b<0?-1:1;else{if(!R&&(b=b.replace(v,function(F,Z,j){return G=(j=j.toLowerCase())=="x"?16:j=="b"?2:8,!x||x==G?Z:F}),x&&(G=x,b=b.replace(S,"$1").replace(I,"0.$1")),L!=b))return new V(b,G);if(V.DEBUG)throw Error(o+"Not a"+(x?" base "+x:"")+" number: "+L);D.s=null}D.c=D.e=null}})();function We(v,S,I,U){var P,D,L,R,x,G,b,F=v.c,Z=f;if(F){e:{for(P=1,R=F[0];R>=10;R/=10,P++);if(D=S-P,D<0)D+=c,L=S,x=F[G=0],b=i(x/Z[P-L-1]%10);else if(G=r((D+1)/c),G>=F.length)if(U){for(;F.length<=G;F.push(0));x=b=0,P=1,D%=c,L=D-c+1}else break e;else{for(x=R=F[G],P=1;R>=10;R/=10,P++);D%=c,L=D-c+P,b=L<0?0:i(x/Z[P-L-1]%10)}if(U=U||S<0||F[G+1]!=null||(L<0?x:x%Z[P-L-1]),U=I<4?(b||U)&&(I==0||I==(v.s<0?3:2)):b>5||b==5&&(I==4||U||I==6&&(D>0?L>0?x/Z[P-L]:0:F[G-1])%10&1||I==(v.s<0?8:7)),S<1||!F[0])return F.length=0,U?(S-=v.e+1,F[0]=Z[(c-S%c)%c],v.e=-S||0):F[0]=v.e=0,v;if(D==0?(F.length=G,R=1,G--):(F.length=G+1,R=Z[c-D],F[G]=L>0?i(x/Z[P-L]%Z[L])*R:0),U)for(;;)if(G==0){for(D=1,L=F[0];L>=10;L/=10,D++);for(L=F[0]+=R,R=1;L>=10;L/=10,R++);D!=R&&(v.e++,F[0]==u&&(F[0]=1));break}else{if(F[G]+=R,F[G]!=u)break;F[G--]=0,R=1}for(D=F.length;F[--D]===0;F.pop());}v.e>te?v.c=v.e=null:v.e<Q&&(v.c=[v.e=0])}return v}function xt(v){var S,I=v.e;return I===null?v.toString():(S=m(v.c),S=I<=ne||I>=M?T(S,I):C(S,I,"0"),v.s<0?"-"+S:S)}return N.absoluteValue=N.abs=function(){var v=new V(this);return v.s<0&&(v.s=1),v},N.comparedTo=function(v,S){return E(this,new V(v,S))},N.decimalPlaces=N.dp=function(v,S){var I,U,P,D=this;if(v!=null)return y(v,0,h),S==null?S=z:y(S,0,8),We(new V(D),v+D.e+1,S);if(!(I=D.c))return null;if(U=((P=I.length-1)-_(this.e/c))*c,P=I[P])for(;P%10==0;P/=10,U--);return U<0&&(U=0),U},N.dividedBy=N.div=function(v,S){return k(this,new V(v,S),$,z)},N.dividedToIntegerBy=N.idiv=function(v,S){return k(this,new V(v,S),0,1)},N.exponentiatedBy=N.pow=function(v,S){var I,U,P,D,L,R,x,G,b,F=this;if(v=new V(v),v.c&&!v.isInteger())throw Error(o+"Exponent not an integer: "+xt(v));if(S!=null&&(S=new V(S)),R=v.e>14,!F.c||!F.c[0]||F.c[0]==1&&!F.e&&F.c.length==1||!v.c||!v.c[0])return b=new V(Math.pow(+xt(F),R?v.s*(2-A(v)):+xt(v))),S?b.mod(S):b;if(x=v.s<0,S){if(S.c?!S.c[0]:!S.s)return new V(NaN);U=!x&&F.isInteger()&&S.isInteger(),U&&(F=F.mod(S))}else{if(v.e>9&&(F.e>0||F.e<-1||(F.e==0?F.c[0]>1||R&&F.c[1]>=24e7:F.c[0]<8e13||R&&F.c[0]<=9999975e7)))return D=F.s<0&&A(v)?-0:0,F.e>-1&&(D=1/D),new V(x?1/D:D);Ce&&(D=r(Ce/c+2))}for(R?(I=new V(.5),x&&(v.s=1),G=A(v)):(P=Math.abs(+xt(v)),G=P%2),b=new V(q);;){if(G){if(b=b.times(F),!b.c)break;D?b.c.length>D&&(b.c.length=D):U&&(b=b.mod(S))}if(P){if(P=i(P/2),P===0)break;G=P%2}else if(v=v.times(I),We(v,v.e+1,1),v.e>14)G=A(v);else{if(P=+xt(v),P===0)break;G=P%2}F=F.times(F),D?F.c&&F.c.length>D&&(F.c.length=D):U&&(F=F.mod(S))}return U?b:(x&&(b=q.div(b)),S?b.mod(S):D?We(b,Ce,z,L):b)},N.integerValue=function(v){var S=new V(this);return v==null?v=z:y(v,0,8),We(S,S.e+1,v)},N.isEqualTo=N.eq=function(v,S){return E(this,new V(v,S))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(v,S){return E(this,new V(v,S))>0},N.isGreaterThanOrEqualTo=N.gte=function(v,S){return(S=E(this,new V(v,S)))===1||S===0},N.isInteger=function(){return!!this.c&&_(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(v,S){return E(this,new V(v,S))<0},N.isLessThanOrEqualTo=N.lte=function(v,S){return(S=E(this,new V(v,S)))===-1||S===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(v,S){var I,U,P,D,L=this,R=L.s;if(v=new V(v,S),S=v.s,!R||!S)return new V(NaN);if(R!=S)return v.s=-S,L.plus(v);var x=L.e/c,G=v.e/c,b=L.c,F=v.c;if(!x||!G){if(!b||!F)return b?(v.s=-S,v):new V(F?L:NaN);if(!b[0]||!F[0])return F[0]?(v.s=-S,v):new V(b[0]?L:z==3?-0:0)}if(x=_(x),G=_(G),b=b.slice(),R=x-G){for((D=R<0)?(R=-R,P=b):(G=x,P=F),P.reverse(),S=R;S--;P.push(0));P.reverse()}else for(U=(D=(R=b.length)<(S=F.length))?R:S,R=S=0;S<U;S++)if(b[S]!=F[S]){D=b[S]<F[S];break}if(D&&(P=b,b=F,F=P,v.s=-v.s),S=(U=F.length)-(I=b.length),S>0)for(;S--;b[I++]=0);for(S=u-1;U>R;){if(b[--U]<F[U]){for(I=U;I&&!b[--I];b[I]=S);--b[I],b[U]+=u}b[U]-=F[U]}for(;b[0]==0;b.splice(0,1),--G);return b[0]?Ho(v,b,G):(v.s=z==3?-1:1,v.c=[v.e=0],v)},N.modulo=N.mod=function(v,S){var I,U,P=this;return v=new V(v,S),!P.c||!v.s||v.c&&!v.c[0]?new V(NaN):!v.c||P.c&&!P.c[0]?new V(P):(Ne==9?(U=v.s,v.s=1,I=k(P,v,0,3),v.s=U,I.s*=U):I=k(P,v,0,Ne),v=P.minus(I.times(v)),!v.c[0]&&Ne==1&&(v.s=P.s),v)},N.multipliedBy=N.times=function(v,S){var I,U,P,D,L,R,x,G,b,F,Z,j,pe,Se,Pe,ae=this,_e=ae.c,be=(v=new V(v,S)).c;if(!_e||!be||!_e[0]||!be[0])return!ae.s||!v.s||_e&&!_e[0]&&!be||be&&!be[0]&&!_e?v.c=v.e=v.s=null:(v.s*=ae.s,!_e||!be?v.c=v.e=null:(v.c=[0],v.e=0)),v;for(U=_(ae.e/c)+_(v.e/c),v.s*=ae.s,x=_e.length,F=be.length,x<F&&(pe=_e,_e=be,be=pe,P=x,x=F,F=P),P=x+F,pe=[];P--;pe.push(0));for(Se=u,Pe=p,P=F;--P>=0;){for(I=0,Z=be[P]%Pe,j=be[P]/Pe|0,L=x,D=P+L;D>P;)G=_e[--L]%Pe,b=_e[L]/Pe|0,R=j*G+b*Z,G=Z*G+R%Pe*Pe+pe[D]+I,I=(G/Se|0)+(R/Pe|0)+j*b,pe[D--]=G%Se;pe[D]=I}return I?++U:pe.splice(0,1),Ho(v,pe,U)},N.negated=function(){var v=new V(this);return v.s=-v.s||null,v},N.plus=function(v,S){var I,U=this,P=U.s;if(v=new V(v,S),S=v.s,!P||!S)return new V(NaN);if(P!=S)return v.s=-S,U.minus(v);var D=U.e/c,L=v.e/c,R=U.c,x=v.c;if(!D||!L){if(!R||!x)return new V(P/0);if(!R[0]||!x[0])return x[0]?v:new V(R[0]?U:P*0)}if(D=_(D),L=_(L),R=R.slice(),P=D-L){for(P>0?(L=D,I=x):(P=-P,I=R),I.reverse();P--;I.push(0));I.reverse()}for(P=R.length,S=x.length,P-S<0&&(I=x,x=R,R=I,S=P),P=0;S;)P=(R[--S]=R[S]+x[S]+P)/u|0,R[S]=u===R[S]?0:R[S]%u;return P&&(R=[P].concat(R),++L),Ho(v,R,L)},N.precision=N.sd=function(v,S){var I,U,P,D=this;if(v!=null&&v!==!!v)return y(v,1,h),S==null?S=z:y(S,0,8),We(new V(D),v,S);if(!(I=D.c))return null;if(P=I.length-1,U=P*c+1,P=I[P]){for(;P%10==0;P/=10,U--);for(P=I[0];P>=10;P/=10,U++);}return v&&D.e+1>U&&(U=D.e+1),U},N.shiftedBy=function(v){return y(v,-d,d),this.times("1e"+v)},N.squareRoot=N.sqrt=function(){var v,S,I,U,P,D=this,L=D.c,R=D.s,x=D.e,G=$+4,b=new V("0.5");if(R!==1||!L||!L[0])return new V(!R||R<0&&(!L||L[0])?NaN:L?D:1/0);if(R=Math.sqrt(+xt(D)),R==0||R==1/0?(S=m(L),(S.length+x)%2==0&&(S+="0"),R=Math.sqrt(+S),x=_((x+1)/2)-(x<0||x%2),R==1/0?S="5e"+x:(S=R.toExponential(),S=S.slice(0,S.indexOf("e")+1)+x),I=new V(S)):I=new V(R+""),I.c[0]){for(x=I.e,R=x+G,R<3&&(R=0);;)if(P=I,I=b.times(P.plus(k(D,P,G,1))),m(P.c).slice(0,R)===(S=m(I.c)).slice(0,R))if(I.e<x&&--R,S=S.slice(R-3,R+1),S=="9999"||!U&&S=="4999"){if(!U&&(We(P,P.e+$+2,0),P.times(P).eq(D))){I=P;break}G+=4,R+=4,U=1}else{(!+S||!+S.slice(1)&&S.charAt(0)=="5")&&(We(I,I.e+$+2,1),v=!I.times(I).eq(D));break}}return We(I,I.e+$+1,z,v)},N.toExponential=function(v,S){return v!=null&&(y(v,0,h),v++),Bo(this,v,S,1)},N.toFixed=function(v,S){return v!=null&&(y(v,0,h),v=v+this.e+1),Bo(this,v,S)},N.toFormat=function(v,S,I){var U,P=this;if(I==null)v!=null&&S&&typeof S=="object"?(I=S,S=null):v&&typeof v=="object"?(I=v,v=S=null):I=xe;else if(typeof I!="object")throw Error(o+"Argument not an object: "+I);if(U=P.toFixed(v,S),P.c){var D,L=U.split("."),R=+I.groupSize,x=+I.secondaryGroupSize,G=I.groupSeparator||"",b=L[0],F=L[1],Z=P.s<0,j=Z?b.slice(1):b,pe=j.length;if(x&&(D=R,R=x,x=D,pe-=D),R>0&&pe>0){for(D=pe%R||R,b=j.substr(0,D);D<pe;D+=R)b+=G+j.substr(D,R);x>0&&(b+=G+j.slice(D)),Z&&(b="-"+b)}U=F?b+(I.decimalSeparator||"")+((x=+I.fractionGroupSize)?F.replace(new RegExp("\\d{"+x+"}\\B","g"),"$&"+(I.fractionGroupSeparator||"")):F):b}return(I.prefix||"")+U+(I.suffix||"")},N.toFraction=function(v){var S,I,U,P,D,L,R,x,G,b,F,Z,j=this,pe=j.c;if(v!=null&&(R=new V(v),!R.isInteger()&&(R.c||R.s!==1)||R.lt(q)))throw Error(o+"Argument "+(R.isInteger()?"out of range: ":"not an integer: ")+xt(R));if(!pe)return new V(j);for(S=new V(q),G=I=new V(q),U=x=new V(q),Z=m(pe),D=S.e=Z.length-j.e-1,S.c[0]=f[(L=D%c)<0?c+L:L],v=!v||R.comparedTo(S)>0?D>0?S:G:R,L=te,te=1/0,R=new V(Z),x.c[0]=0;b=k(R,S,0,1),P=I.plus(b.times(U)),P.comparedTo(v)!=1;)I=U,U=P,G=x.plus(b.times(P=G)),x=P,S=R.minus(b.times(P=S)),R=P;return P=k(v.minus(I),U,0,1),x=x.plus(P.times(G)),I=I.plus(P.times(U)),x.s=G.s=j.s,D=D*2,F=k(G,U,D,z).minus(j).abs().comparedTo(k(x,I,D,z).minus(j).abs())<1?[G,U]:[x,I],te=L,F},N.toNumber=function(){return+xt(this)},N.toPrecision=function(v,S){return v!=null&&y(v,1,h),Bo(this,v,S,2)},N.toString=function(v){var S,I=this,U=I.s,P=I.e;return P===null?U?(S="Infinity",U<0&&(S="-"+S)):S="NaN":(v==null?S=P<=ne||P>=M?T(m(I.c),P):C(m(I.c),P,"0"):v===10&&Fo?(I=We(new V(I),$+P+1,z),S=C(m(I.c),I.e,"0")):(y(v,2,Fe.length,"Base"),S=O(C(m(I.c),P,"0"),10,v,U,!0)),U<0&&I.c[0]&&(S="-"+S)),S},N.valueOf=N.toJSON=function(){return xt(this)},N._isBigNumber=!0,w!=null&&V.set(w),V}function _(w){var k=w|0;return w>0||w===k?k:k-1}function m(w){for(var k,O,B=1,N=w.length,q=w[0]+"";B<N;){for(k=w[B++]+"",O=c-k.length;O--;k="0"+k);q+=k}for(N=q.length;q.charCodeAt(--N)===48;);return q.slice(0,N+1||1)}function E(w,k){var O,B,N=w.c,q=k.c,$=w.s,z=k.s,ne=w.e,M=k.e;if(!$||!z)return null;if(O=N&&!N[0],B=q&&!q[0],O||B)return O?B?0:-z:$;if($!=z)return $;if(O=$<0,B=ne==M,!N||!q)return B?0:!N^O?1:-1;if(!B)return ne>M^O?1:-1;for(z=(ne=N.length)<(M=q.length)?ne:M,$=0;$<z;$++)if(N[$]!=q[$])return N[$]>q[$]^O?1:-1;return ne==M?0:ne>M^O?1:-1}function y(w,k,O,B){if(w<k||w>O||w!==i(w))throw Error(o+(B||"Argument")+(typeof w=="number"?w<k||w>O?" out of range: ":" not an integer: ":" not a primitive number: ")+String(w))}function A(w){var k=w.c.length-1;return _(w.e/c)==k&&w.c[k]%2!=0}function T(w,k){return(w.length>1?w.charAt(0)+"."+w.slice(1):w)+(k<0?"e":"e+")+k}function C(w,k,O){var B,N;if(k<0){for(N=O+".";++k;N+=O);w=N+w}else if(B=w.length,++k>B){for(N=O,k-=B;--k;N+=O);w+=N}else k<B&&(w=w.slice(0,k)+"."+w.slice(k));return w}e=g(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof Jr<"u"&&Jr.exports?Jr.exports=e:(t||(t=typeof self<"u"&&self?self:window),t.BigNumber=e)})(Fc)});var $c=H((mD,Vc)=>{var Bc=Zo(),Hc=Vc.exports;(function(){"use strict";function t(d){return d<10?"0"+d:d}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r,i,o={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function u(d){return n.lastIndex=0,n.test(d)?'"'+d.replace(n,function(f){var p=o[f];return typeof p=="string"?p:"\\u"+("0000"+f.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+d+'"'}function c(d,f){var p,h,g,_,m=r,E,y=f[d],A=y!=null&&(y instanceof Bc||Bc.isBigNumber(y));switch(y&&typeof y=="object"&&typeof y.toJSON=="function"&&(y=y.toJSON(d)),typeof a=="function"&&(y=a.call(f,d,y)),typeof y){case"string":return A?y:u(y);case"number":return isFinite(y)?String(y):"null";case"boolean":case"null":case"bigint":return String(y);case"object":if(!y)return"null";if(r+=i,E=[],Object.prototype.toString.apply(y)==="[object Array]"){for(_=y.length,p=0;p<_;p+=1)E[p]=c(p,y)||"null";return g=E.length===0?"[]":r?`[
7
+ `+r+E.join(`,
8
+ `+r)+`
9
+ `+m+"]":"["+E.join(",")+"]",r=m,g}if(a&&typeof a=="object")for(_=a.length,p=0;p<_;p+=1)typeof a[p]=="string"&&(h=a[p],g=c(h,y),g&&E.push(u(h)+(r?": ":":")+g));else Object.keys(y).forEach(function(T){var C=c(T,y);C&&E.push(u(T)+(r?": ":":")+C)});return g=E.length===0?"{}":r?`{
10
+ `+r+E.join(`,
11
+ `+r)+`
12
+ `+m+"}":"{"+E.join(",")+"}",r=m,g}}typeof Hc.stringify!="function"&&(Hc.stringify=function(d,f,p){var h;if(r="",i="",typeof p=="number")for(h=0;h<p;h+=1)i+=" ";else typeof p=="string"&&(i=p);if(a=f,f&&typeof f!="function"&&(typeof f!="object"||typeof f.length!="number"))throw new Error("JSON.stringify");return c("",{"":d})})})()});var Jc=H((gD,Xc)=>{var Wr=null,Qy=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,Zy=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,jy=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var n,r,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
13
+ `,r:"\r",t:" "},o,a=function(m){throw{name:"SyntaxError",message:m,at:n,text:o}},u=function(m){return m&&m!==r&&a("Expected '"+m+"' instead of '"+r+"'"),r=o.charAt(n),n+=1,r},c=function(){var m,E="";for(r==="-"&&(E="-",u("-"));r>="0"&&r<="9";)E+=r,u();if(r===".")for(E+=".";u()&&r>="0"&&r<="9";)E+=r;if(r==="e"||r==="E")for(E+=r,u(),(r==="-"||r==="+")&&(E+=r,u());r>="0"&&r<="9";)E+=r,u();if(m=+E,!isFinite(m))a("Bad number");else return Wr==null&&(Wr=Zo()),E.length>15?e.storeAsString?E:e.useNativeBigInt?BigInt(E):new Wr(E):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(m):new Wr(m):m},d=function(){var m,E,y="",A;if(r==='"')for(var T=n;u();){if(r==='"')return n-1>T&&(y+=o.substring(T,n-1)),u(),y;if(r==="\\"){if(n-1>T&&(y+=o.substring(T,n-1)),u(),r==="u"){for(A=0,E=0;E<4&&(m=parseInt(u(),16),!!isFinite(m));E+=1)A=A*16+m;y+=String.fromCharCode(A)}else if(typeof i[r]=="string")y+=i[r];else break;T=n}}a("Bad string")},f=function(){for(;r&&r<=" ";)u()},p=function(){switch(r){case"t":return u("t"),u("r"),u("u"),u("e"),!0;case"f":return u("f"),u("a"),u("l"),u("s"),u("e"),!1;case"n":return u("n"),u("u"),u("l"),u("l"),null}a("Unexpected '"+r+"'")},h,g=function(){var m=[];if(r==="["){if(u("["),f(),r==="]")return u("]"),m;for(;r;){if(m.push(h()),f(),r==="]")return u("]"),m;u(","),f()}}a("Bad array")},_=function(){var m,E=Object.create(null);if(r==="{"){if(u("{"),f(),r==="}")return u("}"),E;for(;r;){if(m=d(),f(),u(":"),e.strict===!0&&Object.hasOwnProperty.call(E,m)&&a('Duplicate key "'+m+'"'),Qy.test(m)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?h():E[m]=h():Zy.test(m)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?h():E[m]=h():E[m]=h(),f(),r==="}")return u("}"),E;u(","),f()}}a("Bad object")};return h=function(){switch(f(),r){case"{":return _();case"[":return g();case'"':return d();case"-":return c();default:return r>="0"&&r<="9"?c():p()}},function(m,E){var y;return o=m+"",n=0,r=" ",y=h(),f(),r&&a("Syntax error"),typeof E=="function"?(function A(T,C){var w,k,O=T[C];return O&&typeof O=="object"&&Object.keys(O).forEach(function(B){k=A(O,B),k!==void 0?O[B]=k:delete O[B]}),E.call(T,C,O)})({"":y},""):y}};Xc.exports=jy});var Yc=H((_D,Kr)=>{var Wc=$c().stringify,Kc=Jc();Kr.exports=function(t){return{parse:Kc(t),stringify:Wc}};Kr.exports.parse=Kc();Kr.exports.stringify=Wc});var jo=H(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});at.GCE_LINUX_BIOS_PATHS=void 0;at.isGoogleCloudServerless=Zc;at.isGoogleComputeEngineLinux=jc;at.isGoogleComputeEngineMACAddress=ed;at.isGoogleComputeEngine=td;at.detectGCPResidency=tE;var zc=J("fs"),Qc=J("os");at.GCE_LINUX_BIOS_PATHS={BIOS_DATE:"/sys/class/dmi/id/bios_date",BIOS_VENDOR:"/sys/class/dmi/id/bios_vendor"};var eE=/^42:01/;function Zc(){return!!(process.env.CLOUD_RUN_JOB||process.env.FUNCTION_NAME||process.env.K_SERVICE)}function jc(){if((0,Qc.platform)()!=="linux")return!1;try{(0,zc.statSync)(at.GCE_LINUX_BIOS_PATHS.BIOS_DATE);let t=(0,zc.readFileSync)(at.GCE_LINUX_BIOS_PATHS.BIOS_VENDOR,"utf8");return/Google/.test(t)}catch{return!1}}function ed(){let t=(0,Qc.networkInterfaces)();for(let e of Object.values(t))if(e){for(let{mac:n}of e)if(eE.test(n))return!0}return!1}function td(){return jc()||ed()}function tE(){return Zc()||td()}});var nd=H(zr=>{"use strict";Object.defineProperty(zr,"__esModule",{value:!0});zr.Colours=void 0;var Yr=class t{static enabled=!1;static reset="";static bright="";static dim="";static red="";static green="";static yellow="";static blue="";static magenta="";static cyan="";static white="";static grey="";static isEnabled(e){return e&&e.isTTY&&(typeof e.getColorDepth=="function"?e.getColorDepth()>2:!0)}static refresh(){t.enabled=t.isEnabled(process?.stderr),this.enabled?(t.reset="\x1B[0m",t.bright="\x1B[1m",t.dim="\x1B[2m",t.red="\x1B[31m",t.green="\x1B[32m",t.yellow="\x1B[33m",t.blue="\x1B[34m",t.magenta="\x1B[35m",t.cyan="\x1B[36m",t.white="\x1B[37m",t.grey="\x1B[90m"):(t.reset="",t.bright="",t.dim="",t.red="",t.green="",t.yellow="",t.blue="",t.magenta="",t.cyan="",t.white="",t.grey="")}};zr.Colours=Yr;Yr.refresh()});var id=H(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.LogSeverity=void 0;var rd;(function(t){t.DEFAULT="DEFAULT",t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR"})(rd||(Qr.LogSeverity=rd={}))});var ld=H(Ee=>{"use strict";var nE=Ee&&Ee.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),rE=Ee&&Ee.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),od=Ee&&Ee.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var r=[];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[r.length]=i);return r},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var r=t(e),i=0;i<r.length;i++)r[i]!=="default"&&nE(n,e,r[i]);return rE(n,e),n}})();Object.defineProperty(Ee,"__esModule",{value:!0});Ee.env=Ee.DebugLogBackendBase=Ee.placeholder=Ee.AdhocDebugLogger=void 0;Ee.getNodeBackend=ts;Ee.getDebugBackend=oE;Ee.getStructuredBackend=sE;Ee.setBackend=aE;Ee.log=ad;var iE=J("events"),lr=od(J("process")),sd=od(J("util")),Be=nd(),kt=id(),ur=class extends iE.EventEmitter{namespace;upstream;func;constructor(e,n){super(),this.namespace=e,this.upstream=n,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(r,i)=>this.on(r,i)}),this.func.debug=(...r)=>this.invokeSeverity(kt.LogSeverity.DEBUG,...r),this.func.info=(...r)=>this.invokeSeverity(kt.LogSeverity.INFO,...r),this.func.warn=(...r)=>this.invokeSeverity(kt.LogSeverity.WARNING,...r),this.func.error=(...r)=>this.invokeSeverity(kt.LogSeverity.ERROR,...r),this.func.sublog=r=>ad(r,this.func)}invoke(e,...n){if(this.upstream)try{this.upstream(e,...n)}catch{}try{this.emit("log",e,n)}catch{}}invokeSeverity(e,...n){this.invoke({severity:e},...n)}};Ee.AdhocDebugLogger=ur;Ee.placeholder=new ur("",()=>{}).func;var Cn=class{cached=new Map;filters=[];filtersSet=!1;constructor(){let e=lr.env[Ee.env.nodeEnables]??"*";e==="all"&&(e="*"),this.filters=e.split(",")}log(e,n,...r){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let i=this.cached.get(e);i||(i=this.makeLogger(e),this.cached.set(e,i)),i(n,...r)}catch(i){console.error(i)}}};Ee.DebugLogBackendBase=Cn;var es=class extends Cn{enabledRegexp=/.*/g;isEnabled(e){return this.enabledRegexp.test(e)}makeLogger(e){return this.enabledRegexp.test(e)?(n,...r)=>{let i=`${Be.Colours.green}${e}${Be.Colours.reset}`,o=`${Be.Colours.yellow}${lr.pid}${Be.Colours.reset}`,a;switch(n.severity){case kt.LogSeverity.ERROR:a=`${Be.Colours.red}${n.severity}${Be.Colours.reset}`;break;case kt.LogSeverity.INFO:a=`${Be.Colours.magenta}${n.severity}${Be.Colours.reset}`;break;case kt.LogSeverity.WARNING:a=`${Be.Colours.yellow}${n.severity}${Be.Colours.reset}`;break;default:a=n.severity??kt.LogSeverity.DEFAULT;break}let u=sd.formatWithOptions({colors:Be.Colours.enabled},...r),c=Object.assign({},n);delete c.severity;let d=Object.getOwnPropertyNames(c).length?JSON.stringify(c):"",f=d?`${Be.Colours.grey}${d}${Be.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",o,i,a,u,d?` ${f}`:"")}:()=>{}}setFilters(){let n=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=new RegExp(`^${n}$`,"i")}};function ts(){return new es}var ns=class extends Cn{debugPkg;constructor(e){super(),this.debugPkg=e}makeLogger(e){let n=this.debugPkg(e);return(r,...i)=>{n(i[0],...i.slice(1))}}setFilters(){let e=lr.env.NODE_DEBUG??"";lr.env.NODE_DEBUG=`${e}${e?",":""}${this.filters.join(",")}`}};function oE(t){return new ns(t)}var rs=class extends Cn{upstream;constructor(e){super(),this.upstream=e??void 0}makeLogger(e){let n=this.upstream?.makeLogger(e);return(r,...i)=>{let o=r.severity??kt.LogSeverity.INFO,a=Object.assign({severity:o,message:sd.format(...i)},r),u=JSON.stringify(a);n?n(r,u):console.log("%s",u)}}setFilters(){this.upstream?.setFilters()}};function sE(t){return new rs(t)}Ee.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};var is=new Map,lt;function aE(t){lt=t,is.clear()}function ad(t,e){if(!lt&&!lr.env[Ee.env.nodeEnables]||!t)return Ee.placeholder;e&&(t=`${e.instance.namespace}:${t}`);let n=is.get(t);if(n)return n.func;if(lt===null)return Ee.placeholder;lt===void 0&&(lt=ts());let r=(()=>{let i;return new ur(t,(a,...u)=>{if(i!==lt){if(lt===null)return;lt===void 0&&(lt=ts()),i=lt}lt?.log(t,a,...u)})})();return is.set(t,r),r.func}});var ud=H(ln=>{"use strict";var lE=ln&&ln.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),uE=ln&&ln.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&lE(e,t,n)};Object.defineProperty(ln,"__esModule",{value:!0});uE(ld(),ln)});var dr=H(ee=>{"use strict";var dd=ee&&ee.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),cE=ee&&ee.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),dE=ee&&ee.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var r=[];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[r.length]=i);return r},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var r=t(e),i=0;i<r.length;i++)r[i]!=="default"&&dd(n,e,r[i]);return cE(n,e),n}})(),fE=ee&&ee.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&dd(e,t,n)};Object.defineProperty(ee,"__esModule",{value:!0});ee.gcpResidencyCache=ee.METADATA_SERVER_DETECTION=ee.HEADERS=ee.HEADER_VALUE=ee.HEADER_NAME=ee.SECONDARY_HOST_ADDRESS=ee.HOST_ADDRESS=ee.BASE_PATH=void 0;ee.instance=yE;ee.project=EE;ee.universe=vE;ee.bulk=TE;ee.isAvailable=CE;ee.resetIsAvailableCache=SE;ee.getGCPResidency=as;ee.setGCPResidency=fd;ee.requestTimeout=pd;var os=Me(),pE=Yc(),hE=jo(),mE=dE(ud());ee.BASE_PATH="/computeMetadata/v1";ee.HOST_ADDRESS="http://169.254.169.254";ee.SECONDARY_HOST_ADDRESS="http://metadata.google.internal.";ee.HEADER_NAME="Metadata-Flavor";ee.HEADER_VALUE="Google";ee.HEADERS=Object.freeze({[ee.HEADER_NAME]:ee.HEADER_VALUE});var cd=mE.log("gcp-metadata");ee.METADATA_SERVER_DETECTION=Object.freeze({"assume-present":"don't try to ping the metadata server, but assume it's present",none:"don't try to ping the metadata server, but don't try to use it either","bios-only":"treat the result of a BIOS probe as canonical (don't fall back to pinging)","ping-only":"skip the BIOS probe, and go straight to pinging"});function ss(t){return t||(t=process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST||ee.HOST_ADDRESS),/^https?:\/\//.test(t)||(t=`http://${t}`),new URL(ee.BASE_PATH,t).href}function gE(t){Object.keys(t).forEach(e=>{switch(e){case"params":case"property":case"headers":break;case"qs":throw new Error("'qs' is not a valid configuration option. Please use 'params' instead.");default:throw new Error(`'${e}' is not a valid configuration option.`)}})}async function cr(t,e={},n=3,r=!1){let i=new Headers(ee.HEADERS),o="",a={};if(typeof t=="object"){let p=t;new Headers(p.headers).forEach((h,g)=>i.set(g,h)),o=p.metadataKey,a=p.params||a,n=p.noResponseRetries||n,r=p.fastFail||r}else o=t;typeof e=="string"?o+=`/${e}`:(gE(e),e.property&&(o+=`/${e.property}`),new Headers(e.headers).forEach((p,h)=>i.set(h,p)),a=e.params||a);let u=r?_E:os.request,c={url:`${ss()}/${o}`,headers:i,retryConfig:{noResponseRetries:n},params:a,responseType:"text",timeout:pd()};cd.info("instance request %j",c);let d=await u(c);cd.info("instance metadata is %s",d.data);let f=d.headers.get(ee.HEADER_NAME);if(f!==ee.HEADER_VALUE)throw new RangeError(`Invalid response from metadata service: incorrect ${ee.HEADER_NAME} header. Expected '${ee.HEADER_VALUE}', got ${f?`'${f}'`:"no header"}`);if(typeof d.data=="string")try{return pE.parse(d.data)}catch{}return d.data}async function _E(t){let e={...t,url:t.url?.toString().replace(ss(),ss(ee.SECONDARY_HOST_ADDRESS))},n=(0,os.request)(t),r=(0,os.request)(e);return Promise.any([n,r])}function yE(t){return cr("instance",t)}function EE(t){return cr("project",t)}function vE(t){return cr("universe",t)}async function TE(t){let e={};return await Promise.all(t.map(n=>(async()=>{let r=await cr(n),i=n.metadataKey;e[i]=r})())),e}function AE(){return process.env.DETECT_GCP_RETRIES?Number(process.env.DETECT_GCP_RETRIES):0}var Zr;async function CE(){if(process.env.METADATA_SERVER_DETECTION){let t=process.env.METADATA_SERVER_DETECTION.trim().toLocaleLowerCase();if(!(t in ee.METADATA_SERVER_DETECTION))throw new RangeError(`Unknown \`METADATA_SERVER_DETECTION\` env variable. Got \`${t}\`, but it should be \`${Object.keys(ee.METADATA_SERVER_DETECTION).join("`, `")}\`, or unset`);switch(t){case"assume-present":return!0;case"none":return!1;case"bios-only":return as();case"ping-only":}}try{return Zr===void 0&&(Zr=cr("instance",void 0,AE(),!(process.env.GCE_METADATA_IP||process.env.GCE_METADATA_HOST))),await Zr,!0}catch(t){let e=t;if(process.env.DEBUG_AUTH&&console.info(e),e.type==="request-timeout"||e.response&&e.response.status===404)return!1;if(!(e.response&&e.response.status===404)&&(!e.code||!["EHOSTDOWN","EHOSTUNREACH","ENETUNREACH","ENOENT","ENOTFOUND","ECONNREFUSED"].includes(e.code.toString()))){let n="UNKNOWN";e.code&&(n=e.code.toString()),process.emitWarning(`received unexpected error = ${e.message} code = ${n}`,"MetadataLookupWarning")}return!1}}function SE(){Zr=void 0}ee.gcpResidencyCache=null;function as(){return ee.gcpResidencyCache===null&&fd(),ee.gcpResidencyCache}function fd(t=null){ee.gcpResidencyCache=t!==null?t:(0,hE.detectGCPResidency)()}function pd(){return as()?0:3e3}fE(jo(),ee)});var gd=H(jr=>{"use strict";jr.byteLength=wE;jr.toByteArray=PE;jr.fromByteArray=kE;var At=[],Qe=[],IE=typeof Uint8Array<"u"?Uint8Array:Array,ls="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(un=0,hd=ls.length;un<hd;++un)At[un]=ls[un],Qe[ls.charCodeAt(un)]=un;var un,hd;Qe[45]=62;Qe[95]=63;function md(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");n===-1&&(n=e);var r=n===e?0:4-n%4;return[n,r]}function wE(t){var e=md(t),n=e[0],r=e[1];return(n+r)*3/4-r}function RE(t,e,n){return(e+n)*3/4-n}function PE(t){var e,n=md(t),r=n[0],i=n[1],o=new IE(RE(t,r,i)),a=0,u=i>0?r-4:r,c;for(c=0;c<u;c+=4)e=Qe[t.charCodeAt(c)]<<18|Qe[t.charCodeAt(c+1)]<<12|Qe[t.charCodeAt(c+2)]<<6|Qe[t.charCodeAt(c+3)],o[a++]=e>>16&255,o[a++]=e>>8&255,o[a++]=e&255;return i===2&&(e=Qe[t.charCodeAt(c)]<<2|Qe[t.charCodeAt(c+1)]>>4,o[a++]=e&255),i===1&&(e=Qe[t.charCodeAt(c)]<<10|Qe[t.charCodeAt(c+1)]<<4|Qe[t.charCodeAt(c+2)]>>2,o[a++]=e>>8&255,o[a++]=e&255),o}function NE(t){return At[t>>18&63]+At[t>>12&63]+At[t>>6&63]+At[t&63]}function xE(t,e,n){for(var r,i=[],o=e;o<n;o+=3)r=(t[o]<<16&16711680)+(t[o+1]<<8&65280)+(t[o+2]&255),i.push(NE(r));return i.join("")}function kE(t){for(var e,n=t.length,r=n%3,i=[],o=16383,a=0,u=n-r;a<u;a+=o)i.push(xE(t,a,a+o>u?u:a+o));return r===1?(e=t[n-1],i.push(At[e>>2]+At[e<<4&63]+"==")):r===2&&(e=(t[n-2]<<8)+t[n-1],i.push(At[e>>10]+At[e>>4&63]+At[e<<2&63]+"=")),i.join("")}});var cs=H(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.fromArrayBufferToHex=DE;function DE(t){return Array.from(new Uint8Array(t)).map(n=>n.toString(16).padStart(2,"0")).join("")}});var _d=H(ei=>{"use strict";Object.defineProperty(ei,"__esModule",{value:!0});ei.BrowserCrypto=void 0;var Sn=gd(),ME=cs(),ds=class t{constructor(){if(typeof window>"u"||window.crypto===void 0||window.crypto.subtle===void 0)throw new Error("SubtleCrypto not found. Make sure it's an https:// website.")}async sha256DigestBase64(e){let n=new TextEncoder().encode(e),r=await window.crypto.subtle.digest("SHA-256",n);return Sn.fromByteArray(new Uint8Array(r))}randomBytesBase64(e){let n=new Uint8Array(e);return window.crypto.getRandomValues(n),Sn.fromByteArray(n)}static padBase64(e){for(;e.length%4!==0;)e+="=";return e}async verify(e,n,r){let i={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},o=new TextEncoder().encode(n),a=Sn.toByteArray(t.padBase64(r)),u=await window.crypto.subtle.importKey("jwk",e,i,!0,["verify"]);return await window.crypto.subtle.verify(i,u,Buffer.from(a),o)}async sign(e,n){let r={name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},i=new TextEncoder().encode(n),o=await window.crypto.subtle.importKey("jwk",e,r,!0,["sign"]),a=await window.crypto.subtle.sign(r,o,i);return Sn.fromByteArray(new Uint8Array(a))}decodeBase64StringUtf8(e){let n=Sn.toByteArray(t.padBase64(e));return new TextDecoder().decode(n)}encodeBase64StringUtf8(e){let n=new TextEncoder().encode(e);return Sn.fromByteArray(n)}async sha256DigestHex(e){let n=new TextEncoder().encode(e),r=await window.crypto.subtle.digest("SHA-256",n);return(0,ME.fromArrayBufferToHex)(r)}async signWithHmacSha256(e,n){let r=typeof e=="string"?e:String.fromCharCode(...new Uint16Array(e)),i=new TextEncoder,o=await window.crypto.subtle.importKey("raw",i.encode(r),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return window.crypto.subtle.sign("HMAC",o,i.encode(n))}};ei.BrowserCrypto=ds});var yd=H(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.NodeCrypto=void 0;var In=J("crypto"),fs=class{async sha256DigestBase64(e){return In.createHash("sha256").update(e).digest("base64")}randomBytesBase64(e){return In.randomBytes(e).toString("base64")}async verify(e,n,r){let i=In.createVerify("RSA-SHA256");return i.update(n),i.end(),i.verify(e,r,"base64")}async sign(e,n){let r=In.createSign("RSA-SHA256");return r.update(n),r.end(),r.sign(e,"base64")}decodeBase64StringUtf8(e){return Buffer.from(e,"base64").toString("utf-8")}encodeBase64StringUtf8(e){return Buffer.from(e,"utf-8").toString("base64")}async sha256DigestHex(e){return In.createHash("sha256").update(e).digest("hex")}async signWithHmacSha256(e,n){let r=typeof e=="string"?e:UE(e);return bE(In.createHmac("sha256",r).update(n).digest())}};ti.NodeCrypto=fs;function bE(t){let e=new ArrayBuffer(t.length),n=new Uint8Array(e);for(let r=0;r<t.length;++r)n[r]=t[r];return e}function UE(t){return Buffer.from(t)}});var fr=H(Dt=>{"use strict";var GE=Dt&&Dt.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),LE=Dt&&Dt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&GE(e,t,n)};Object.defineProperty(Dt,"__esModule",{value:!0});Dt.createCrypto=FE;Dt.hasBrowserCrypto=Ed;var OE=_d(),qE=yd();LE(cs(),Dt);function FE(){return Ed()?new OE.BrowserCrypto:new qE.NodeCrypto}function Ed(){return typeof window<"u"&&typeof window.crypto<"u"&&typeof window.crypto.subtle<"u"}});var wn=H((ps,Td)=>{var ni=J("buffer"),Ct=ni.Buffer;function vd(t,e){for(var n in t)e[n]=t[n]}Ct.from&&Ct.alloc&&Ct.allocUnsafe&&Ct.allocUnsafeSlow?Td.exports=ni:(vd(ni,ps),ps.Buffer=cn);function cn(t,e,n){return Ct(t,e,n)}cn.prototype=Object.create(Ct.prototype);vd(Ct,cn);cn.from=function(t,e,n){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Ct(t,e,n)};cn.alloc=function(t,e,n){if(typeof t!="number")throw new TypeError("Argument must be a number");var r=Ct(t);return e!==void 0?typeof n=="string"?r.fill(e,n):r.fill(e):r.fill(0),r};cn.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Ct(t)};cn.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ni.SlowBuffer(t)}});var Cd=H((ND,Ad)=>{"use strict";function hs(t){var e=(t/8|0)+(t%8===0?0:1);return e}var BE={ES256:hs(256),ES384:hs(384),ES512:hs(521)};function HE(t){var e=BE[t];if(e)return e;throw new Error('Unknown algorithm "'+t+'"')}Ad.exports=HE});var ms=H((xD,Nd)=>{"use strict";var ri=wn().Buffer,Id=Cd(),ii=128,wd=0,VE=32,$E=16,XE=2,Rd=$E|VE|wd<<6,oi=XE|wd<<6;function JE(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Pd(t){if(ri.isBuffer(t))return t;if(typeof t=="string")return ri.from(t,"base64");throw new TypeError("ECDSA signature must be a Base64 string or a Buffer")}function WE(t,e){t=Pd(t);var n=Id(e),r=n+1,i=t.length,o=0;if(t[o++]!==Rd)throw new Error('Could not find expected "seq"');var a=t[o++];if(a===(ii|1)&&(a=t[o++]),i-o<a)throw new Error('"seq" specified length of "'+a+'", only "'+(i-o)+'" remaining');if(t[o++]!==oi)throw new Error('Could not find expected "int" for "r"');var u=t[o++];if(i-o-2<u)throw new Error('"r" specified length of "'+u+'", only "'+(i-o-2)+'" available');if(r<u)throw new Error('"r" specified length of "'+u+'", max of "'+r+'" is acceptable');var c=o;if(o+=u,t[o++]!==oi)throw new Error('Could not find expected "int" for "s"');var d=t[o++];if(i-o!==d)throw new Error('"s" specified length of "'+d+'", expected "'+(i-o)+'"');if(r<d)throw new Error('"s" specified length of "'+d+'", max of "'+r+'" is acceptable');var f=o;if(o+=d,o!==i)throw new Error('Expected to consume entire buffer, but "'+(i-o)+'" bytes remain');var p=n-u,h=n-d,g=ri.allocUnsafe(p+u+h+d);for(o=0;o<p;++o)g[o]=0;t.copy(g,o,c+Math.max(-p,0),c+u),o=n;for(var _=o;o<_+h;++o)g[o]=0;return t.copy(g,o,f+Math.max(-h,0),f+d),g=g.toString("base64"),g=JE(g),g}function Sd(t,e,n){for(var r=0;e+r<n&&t[e+r]===0;)++r;var i=t[e+r]>=ii;return i&&--r,r}function KE(t,e){t=Pd(t);var n=Id(e),r=t.length;if(r!==n*2)throw new TypeError('"'+e+'" signatures must be "'+n*2+'" bytes, saw "'+r+'"');var i=Sd(t,0,n),o=Sd(t,n,t.length),a=n-i,u=n-o,c=2+a+1+1+u,d=c<ii,f=ri.allocUnsafe((d?2:3)+c),p=0;return f[p++]=Rd,d?f[p++]=c:(f[p++]=ii|1,f[p++]=c&255),f[p++]=oi,f[p++]=a,i<0?(f[p++]=0,p+=t.copy(f,p,0,n)):p+=t.copy(f,p,i,n),f[p++]=oi,f[p++]=u,o<0?(f[p++]=0,t.copy(f,p,n)):t.copy(f,p,n+o),f}Nd.exports={derToJose:WE,joseToDer:KE}});var ut=H(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.LRUCache=void 0;Mt.snakeToCamel=kd;Mt.originalOrCamelOptions=ZE;Mt.removeUndefinedValuesInObject=jE;Mt.isValidFile=ev;Mt.getWellKnownCertificateConfigFileLocation=tv;var YE=J("fs"),zE=J("os"),gs=J("path"),QE="certificate_config.json",xd="gcloud";function kd(t){return t.replace(/([_][^_])/g,e=>e.slice(1).toUpperCase())}function ZE(t){function e(n){let r=t||{};return r[n]??r[kd(n)]}return{get:e}}var _s=class{capacity;#e=new Map;maxAge;constructor(e){this.capacity=e.capacity,this.maxAge=e.maxAge}#t(e,n){this.#e.delete(e),this.#e.set(e,{value:n,lastAccessed:Date.now()})}set(e,n){this.#t(e,n),this.#n()}get(e){let n=this.#e.get(e);if(n)return this.#t(e,n.value),this.#n(),n.value}#n(){let e=this.maxAge?Date.now()-this.maxAge:0,n=this.#e.entries().next();for(;!n.done&&(this.#e.size>this.capacity||n.value[1].lastAccessed<e);)this.#e.delete(n.value[0]),n=this.#e.entries().next()}};Mt.LRUCache=_s;function jE(t){return Object.entries(t).forEach(([e,n])=>{(n===void 0||n==="undefined")&&delete t[e]}),t}async function ev(t){try{return(await YE.promises.lstat(t)).isFile()}catch{return!1}}function tv(){let t=process.env.CLOUDSDK_CONFIG||(nv()?gs.join(process.env.APPDATA||"",xd):gs.join(process.env.HOME||"",".config",xd));return gs.join(t,QE)}function nv(){return zE.platform().startsWith("win")}});var Dd=H(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.Colours=void 0;var Ue=class t{static isEnabled(e){return e&&e.isTTY&&(typeof e.getColorDepth=="function"?e.getColorDepth()>2:!0)}static refresh(){t.enabled=t.isEnabled(process==null?void 0:process.stderr),this.enabled?(t.reset="\x1B[0m",t.bright="\x1B[1m",t.dim="\x1B[2m",t.red="\x1B[31m",t.green="\x1B[32m",t.yellow="\x1B[33m",t.blue="\x1B[34m",t.magenta="\x1B[35m",t.cyan="\x1B[36m",t.white="\x1B[37m",t.grey="\x1B[90m"):(t.reset="",t.bright="",t.dim="",t.red="",t.green="",t.yellow="",t.blue="",t.magenta="",t.cyan="",t.white="",t.grey="")}};si.Colours=Ue;Ue.enabled=!1;Ue.reset="";Ue.bright="";Ue.dim="";Ue.red="";Ue.green="";Ue.yellow="";Ue.blue="";Ue.magenta="";Ue.cyan="";Ue.white="";Ue.grey="";Ue.refresh()});var Gd=H(ye=>{"use strict";var rv=ye&&ye.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),iv=ye&&ye.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Md=ye&&ye.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var r=[];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[r.length]=i);return r},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var r=t(e),i=0;i<r.length;i++)r[i]!=="default"&&rv(n,e,r[i]);return iv(n,e),n}})();Object.defineProperty(ye,"__esModule",{value:!0});ye.env=ye.DebugLogBackendBase=ye.placeholder=ye.AdhocDebugLogger=ye.LogSeverity=void 0;ye.getNodeBackend=Es;ye.getDebugBackend=sv;ye.getStructuredBackend=av;ye.setBackend=lv;ye.log=Ud;var ov=J("events"),pr=Md(J("process")),bd=Md(J("util")),He=Dd(),ct;(function(t){t.DEFAULT="DEFAULT",t.DEBUG="DEBUG",t.INFO="INFO",t.WARNING="WARNING",t.ERROR="ERROR"})(ct||(ye.LogSeverity=ct={}));var hr=class extends ov.EventEmitter{constructor(e,n){super(),this.namespace=e,this.upstream=n,this.func=Object.assign(this.invoke.bind(this),{instance:this,on:(r,i)=>this.on(r,i)}),this.func.debug=(...r)=>this.invokeSeverity(ct.DEBUG,...r),this.func.info=(...r)=>this.invokeSeverity(ct.INFO,...r),this.func.warn=(...r)=>this.invokeSeverity(ct.WARNING,...r),this.func.error=(...r)=>this.invokeSeverity(ct.ERROR,...r),this.func.sublog=r=>Ud(r,this.func)}invoke(e,...n){if(this.upstream)try{this.upstream(e,...n)}catch{}try{this.emit("log",e,n)}catch{}}invokeSeverity(e,...n){this.invoke({severity:e},...n)}};ye.AdhocDebugLogger=hr;ye.placeholder=new hr("",()=>{}).func;var Rn=class{constructor(){var e;this.cached=new Map,this.filters=[],this.filtersSet=!1;let n=(e=pr.env[ye.env.nodeEnables])!==null&&e!==void 0?e:"*";n==="all"&&(n="*"),this.filters=n.split(",")}log(e,n,...r){try{this.filtersSet||(this.setFilters(),this.filtersSet=!0);let i=this.cached.get(e);i||(i=this.makeLogger(e),this.cached.set(e,i)),i(n,...r)}catch(i){console.error(i)}}};ye.DebugLogBackendBase=Rn;var ys=class extends Rn{constructor(){super(...arguments),this.enabledRegexp=/.*/g}isEnabled(e){return this.enabledRegexp.test(e)}makeLogger(e){return this.enabledRegexp.test(e)?(n,...r)=>{var i;let o=`${He.Colours.green}${e}${He.Colours.reset}`,a=`${He.Colours.yellow}${pr.pid}${He.Colours.reset}`,u;switch(n.severity){case ct.ERROR:u=`${He.Colours.red}${n.severity}${He.Colours.reset}`;break;case ct.INFO:u=`${He.Colours.magenta}${n.severity}${He.Colours.reset}`;break;case ct.WARNING:u=`${He.Colours.yellow}${n.severity}${He.Colours.reset}`;break;default:u=(i=n.severity)!==null&&i!==void 0?i:ct.DEFAULT;break}let c=bd.formatWithOptions({colors:He.Colours.enabled},...r),d=Object.assign({},n);delete d.severity;let f=Object.getOwnPropertyNames(d).length?JSON.stringify(d):"",p=f?`${He.Colours.grey}${f}${He.Colours.reset}`:"";console.error("%s [%s|%s] %s%s",a,o,u,c,f?` ${p}`:"")}:()=>{}}setFilters(){let n=this.filters.join(",").replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^");this.enabledRegexp=new RegExp(`^${n}$`,"i")}};function Es(){return new ys}var vs=class extends Rn{constructor(e){super(),this.debugPkg=e}makeLogger(e){let n=this.debugPkg(e);return(r,...i)=>{n(i[0],...i.slice(1))}}setFilters(){var e;let n=(e=pr.env.NODE_DEBUG)!==null&&e!==void 0?e:"";pr.env.NODE_DEBUG=`${n}${n?",":""}${this.filters.join(",")}`}};function sv(t){return new vs(t)}var Ts=class extends Rn{constructor(e){var n;super(),this.upstream=(n=e)!==null&&n!==void 0?n:void 0}makeLogger(e){var n;let r=(n=this.upstream)===null||n===void 0?void 0:n.makeLogger(e);return(i,...o)=>{var a;let u=(a=i.severity)!==null&&a!==void 0?a:ct.INFO,c=Object.assign({severity:u,message:bd.format(...o)},i),d=JSON.stringify(c);r?r(i,d):console.log("%s",d)}}setFilters(){var e;(e=this.upstream)===null||e===void 0||e.setFilters()}};function av(t){return new Ts(t)}ye.env={nodeEnables:"GOOGLE_SDK_NODE_LOGGING"};var As=new Map,Ve;function lv(t){Ve=t,As.clear()}function Ud(t,e){if(!Ve&&!pr.env[ye.env.nodeEnables]||!t)return ye.placeholder;e&&(t=`${e.instance.namespace}:${t}`);let n=As.get(t);if(n)return n.func;if(Ve===null)return ye.placeholder;Ve===void 0&&(Ve=Es());let r=(()=>{let i;return new hr(t,(a,...u)=>{if(i!==Ve){if(Ve===null)return;Ve===void 0&&(Ve=Es()),i=Ve}Ve?.log(t,a,...u)})})();return As.set(t,r),r.func}});var Ld=H(dn=>{"use strict";var uv=dn&&dn.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),cv=dn&&dn.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&uv(e,t,n)};Object.defineProperty(dn,"__esModule",{value:!0});cv(Gd(),dn)});var Od=H((UD,dv)=>{dv.exports={name:"google-auth-library",version:"10.9.1",author:"Google Inc.",description:"Google APIs Authentication Client Library for Node.js",engines:{node:">=18"},main:"./build/src/index.js",types:"./build/src/index.d.ts",repository:{type:"git",directory:"core/packages/google-auth-library-nodejs",url:"https://github.com/googleapis/google-cloud-node.git"},keywords:["google","api","google apis","client","client library"],dependencies:{"base64-js":"^1.3.0","ecdsa-sig-formatter":"^1.0.11",gaxios:"^7.1.4","gcp-metadata":"8.1.2","google-logging-utils":"1.1.3",jws:"^4.0.0"},devDependencies:{"@types/base64-js":"^1.2.5","@types/jws":"^3.1.0","@types/mocha":"^10.0.10","@types/mv":"^2.1.0","@types/ncp":"^2.0.8","@types/node":"^24.0.0","@types/sinon":"^21.0.0","assert-rejects":"^1.0.0",c8:"^10.1.3",codecov:"^3.8.3",gts:"^6.0.2","is-docker":"^3.0.0",jsdoc:"^4.0.4","jsdoc-fresh":"^5.0.0","jsdoc-region-tag":"^4.0.0",karma:"^6.0.0","karma-chrome-launcher":"^3.0.0","karma-coverage":"^2.0.0","karma-firefox-launcher":"^2.0.0","karma-mocha":"^2.0.0","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.1",keypair:"^1.0.4",mocha:"^11.1.0",mv:"^2.1.1",ncp:"^2.0.0",nock:"^14.0.5","null-loader":"^4.0.1",puppeteer:"^24.0.0",sinon:"21.0.3","ts-loader":"^9.5.2",typescript:"5.8.3",webpack:"^5.97.1","webpack-cli":"^6.0.1"},files:["build/src","!build/src/**/*.map"],scripts:{test:"c8 mocha build/test",clean:"gts clean",prepare:"npm run compile",lint:"gts check --no-inline-config",compile:"tsc -p .",fix:"gts fix",pretest:"npm run compile -- --sourceMap",docs:"jsdoc -c .jsdoc.js","samples-setup":"cd samples/ && npm link ../ && npm run setup && cd ../","samples-test":"cd samples/ && npm link ../ && npm test && cd ../","system-test":"mocha build/system-test --timeout 60000","presystem-test":"npm run compile -- --sourceMap",webpack:"webpack","browser-test":"karma start",prelint:"cd samples; npm link ../; npm install"},license:"Apache-2.0",homepage:"https://github.com/googleapis/google-cloud-node/tree/main/core/packages/google-auth-library-nodejs"}});var Cs=H(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.USER_AGENT=Vt.PRODUCT_NAME=Vt.pkg=void 0;var qd=Od();Vt.pkg=qd;var Fd="google-api-nodejs-client";Vt.PRODUCT_NAME=Fd;var fv=`${Fd}/${qd.version}`;Vt.USER_AGENT=fv});var $e=H(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.AuthClient=dt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=dt.DEFAULT_UNIVERSE=void 0;var pv=J("events"),Ss=Me(),hv=ut(),mv=Ld(),Is=Cs();dt.DEFAULT_UNIVERSE="googleapis.com";dt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS=300*1e3;var ws=class t extends pv.EventEmitter{apiKey;projectId;quotaProjectId;transporter;credentials={};eagerRefreshThresholdMillis=dt.DEFAULT_EAGER_REFRESH_THRESHOLD_MILLIS;forceRefreshOnFailure=!1;universeDomain=dt.DEFAULT_UNIVERSE;static RequestMethodNameSymbol=Symbol("request method name");static RequestLogIdSymbol=Symbol("request log id");constructor(e={}){super();let n=(0,hv.originalOrCamelOptions)(e);this.apiKey=e.apiKey,this.projectId=n.get("project_id")??null,this.quotaProjectId=n.get("quota_project_id"),this.credentials=n.get("credentials")??{},this.universeDomain=n.get("universe_domain")??dt.DEFAULT_UNIVERSE,this.transporter=e.transporter??new Ss.Gaxios(e.transporterOptions),n.get("useAuthRequestParameters")!==!1&&(this.transporter.interceptors.request.add(t.DEFAULT_REQUEST_INTERCEPTOR),this.transporter.interceptors.response.add(t.DEFAULT_RESPONSE_INTERCEPTOR)),e.eagerRefreshThresholdMillis&&(this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis),this.forceRefreshOnFailure=e.forceRefreshOnFailure??!1}fetch(...e){let n=e[0],r=e[1],i,o=new Headers;return typeof n=="string"?i=new URL(n):n instanceof URL?i=n:n&&n.url&&(i=new URL(n.url)),n&&typeof n=="object"&&"headers"in n&&Ss.Gaxios.mergeHeaders(o,n.headers),r&&Ss.Gaxios.mergeHeaders(o,new Headers(r.headers)),typeof n=="object"&&!(n instanceof URL)?this.request({...r,...n,headers:o,url:i}):this.request({...r,headers:o,url:i})}setCredentials(e){this.credentials=e}addSharedMetadataHeaders(e){return!e.has("x-goog-user-project")&&this.quotaProjectId&&e.set("x-goog-user-project",this.quotaProjectId),e}addUserProjectAndAuthHeaders(e,n){let r=n.get("x-goog-user-project"),i=n.get("authorization");return r&&e.set("x-goog-user-project",r),i&&e.set("authorization",i),e}static log=(0,mv.log)("auth");static DEFAULT_REQUEST_INTERCEPTOR={resolved:async e=>{if(!e.headers.has("x-goog-api-client")){let r=process.version.replace(/^v/,"");e.headers.set("x-goog-api-client",`gl-node/${r}`)}let n=e.headers.get("User-Agent");n?n.includes(`${Is.PRODUCT_NAME}/`)||e.headers.set("User-Agent",`${n} ${Is.USER_AGENT}`):e.headers.set("User-Agent",Is.USER_AGENT);try{let r=e,i=r[t.RequestMethodNameSymbol],o=`${Math.floor(Math.random()*1e3)}`;r[t.RequestLogIdSymbol]=o;let a={url:e.url,headers:e.headers};i?t.log.info("%s [%s] request %j",i,o,a):t.log.info("[%s] request %j",o,a)}catch{}return e}};static DEFAULT_RESPONSE_INTERCEPTOR={resolved:async e=>{try{let n=e.config,r=n[t.RequestMethodNameSymbol],i=n[t.RequestLogIdSymbol];r?t.log.info("%s [%s] response %j",r,i,e.data):t.log.info("[%s] response %j",i,e.data)}catch{}return e},rejected:async e=>{try{let n=e.config,r=n[t.RequestMethodNameSymbol],i=n[t.RequestLogIdSymbol];r?t.log.info("%s [%s] error %j",r,i,e.response?.data):t.log.error("[%s] error %j",i,e.response?.data)}catch{}throw e}};static setMethodName(e,n){try{let r=e;r[t.RequestMethodNameSymbol]=n}catch{}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};dt.AuthClient=ws});var Ps=H(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.LoginTicket=void 0;var Rs=class{envelope;payload;constructor(e,n){this.envelope=e,this.payload=n}getEnvelope(){return this.envelope}getPayload(){return this.payload}getUserId(){let e=this.getPayload();return e&&e.sub?e.sub:null}getAttributes(){return{envelope:this.getEnvelope(),payload:this.getPayload()}}};ai.LoginTicket=Rs});var $t=H(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});St.OAuth2Client=St.ClientAuthentication=St.CertificateFormat=St.CodeChallengeMethod=void 0;var Bd=Me(),gv=J("querystring"),_v=J("stream"),yv=ms(),Hd=ut(),Ns=fr(),Pn=$e(),Ev=Ps(),Vd;(function(t){t.Plain="plain",t.S256="S256"})(Vd||(St.CodeChallengeMethod=Vd={}));var bt;(function(t){t.PEM="PEM",t.JWK="JWK"})(bt||(St.CertificateFormat=bt={}));var mr;(function(t){t.ClientSecretPost="ClientSecretPost",t.ClientSecretBasic="ClientSecretBasic",t.None="None"})(mr||(St.ClientAuthentication=mr={}));var xs=class t extends Pn.AuthClient{redirectUri;certificateCache={};certificateExpiry=null;certificateCacheFormat=bt.PEM;refreshTokenPromises=new Map;endpoints;issuers;clientAuthentication;_clientId;_clientSecret;refreshHandler;constructor(e={},n,r){super(typeof e=="object"?e:{}),typeof e!="object"&&(e={clientId:e,clientSecret:n,redirectUri:r}),this._clientId=e.clientId||e.client_id,this._clientSecret=e.clientSecret||e.client_secret,this.redirectUri=e.redirectUri||e.redirect_uris?.[0],this.endpoints={tokenInfoUrl:"https://oauth2.googleapis.com/tokeninfo",oauth2AuthBaseUrl:"https://accounts.google.com/o/oauth2/v2/auth",oauth2TokenUrl:"https://oauth2.googleapis.com/token",oauth2RevokeUrl:"https://oauth2.googleapis.com/revoke",oauth2FederatedSignonPemCertsUrl:"https://www.googleapis.com/oauth2/v1/certs",oauth2FederatedSignonJwkCertsUrl:"https://www.googleapis.com/oauth2/v3/certs",oauth2IapPublicKeyUrl:"https://www.gstatic.com/iap/verify/public_key",...e.endpoints},this.clientAuthentication=e.clientAuthentication||mr.ClientSecretPost,this.issuers=e.issuers||["accounts.google.com","https://accounts.google.com",this.universeDomain]}static GOOGLE_TOKEN_INFO_URL="https://oauth2.googleapis.com/tokeninfo";static CLOCK_SKEW_SECS_=300;static DEFAULT_MAX_TOKEN_LIFETIME_SECS_=86400;generateAuthUrl(e={}){if(e.code_challenge_method&&!e.code_challenge)throw new Error("If a code_challenge_method is provided, code_challenge must be included.");return e.response_type=e.response_type||"code",e.client_id=e.client_id||this._clientId,e.redirect_uri=e.redirect_uri||this.redirectUri,Array.isArray(e.scope)&&(e.scope=e.scope.join(" ")),this.endpoints.oauth2AuthBaseUrl.toString()+"?"+gv.stringify(e)}generateCodeVerifier(){throw new Error("generateCodeVerifier is removed, please use generateCodeVerifierAsync instead.")}async generateCodeVerifierAsync(){let e=(0,Ns.createCrypto)(),r=e.randomBytesBase64(96).replace(/\+/g,"~").replace(/=/g,"_").replace(/\//g,"-"),o=(await e.sha256DigestBase64(r)).split("=")[0].replace(/\+/g,"-").replace(/\//g,"_");return{codeVerifier:r,codeChallenge:o}}getToken(e,n){let r=typeof e=="string"?{code:e}:e;if(n)this.getTokenAsync(r).then(i=>n(null,i.tokens,i.res),i=>n(i,null,i.response));else return this.getTokenAsync(r)}async getTokenAsync(e){let n=this.endpoints.oauth2TokenUrl.toString(),r=new Headers,i={client_id:e.client_id||this._clientId,code_verifier:e.codeVerifier,code:e.code,grant_type:"authorization_code",redirect_uri:e.redirect_uri||this.redirectUri};if(this.clientAuthentication===mr.ClientSecretBasic){let c=Buffer.from(`${this._clientId}:${this._clientSecret}`);r.set("authorization",`Basic ${c.toString("base64")}`)}this.clientAuthentication===mr.ClientSecretPost&&(i.client_secret=this._clientSecret);let o={...t.RETRY_CONFIG,method:"POST",url:n,data:new URLSearchParams((0,Hd.removeUndefinedValuesInObject)(i)),headers:r};Pn.AuthClient.setMethodName(o,"getTokenAsync");let a=await this.transporter.request(o),u=a.data;return a.data&&a.data.expires_in&&(u.expiry_date=new Date().getTime()+a.data.expires_in*1e3,delete u.expires_in),this.emit("tokens",u),{tokens:u,res:a}}async refreshToken(e){if(!e)return this.refreshTokenNoCache(e);if(this.refreshTokenPromises.has(e))return this.refreshTokenPromises.get(e);let n=this.refreshTokenNoCache(e).then(r=>(this.refreshTokenPromises.delete(e),r),r=>{throw this.refreshTokenPromises.delete(e),r});return this.refreshTokenPromises.set(e,n),n}async refreshTokenNoCache(e){if(!e)throw new Error("No refresh token is set.");let n=this.endpoints.oauth2TokenUrl.toString(),r={refresh_token:e,client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token"},i;try{let a={...t.RETRY_CONFIG,method:"POST",url:n,data:new URLSearchParams((0,Hd.removeUndefinedValuesInObject)(r))};Pn.AuthClient.setMethodName(a,"refreshTokenNoCache"),i=await this.transporter.request(a)}catch(a){throw a instanceof Bd.GaxiosError&&a.message==="invalid_grant"&&a.response?.data&&/ReAuth/i.test(a.response.data.error_description)&&(a.message=JSON.stringify(a.response.data)),a}let o=i.data;return i.data&&i.data.expires_in&&(o.expiry_date=new Date().getTime()+i.data.expires_in*1e3,delete o.expires_in),this.emit("tokens",o),{tokens:o,res:i}}refreshAccessToken(e){if(e)this.refreshAccessTokenAsync().then(n=>e(null,n.credentials,n.res),e);else return this.refreshAccessTokenAsync()}async refreshAccessTokenAsync(){let e=await this.refreshToken(this.credentials.refresh_token),n=e.tokens;return n.refresh_token=this.credentials.refresh_token,this.credentials=n,{credentials:this.credentials,res:e.res}}getAccessToken(e){if(e)this.getAccessTokenAsync().then(n=>e(null,n.token,n.res),e);else return this.getAccessTokenAsync()}async getAccessTokenAsync(){if(!this.credentials.access_token||this.isTokenExpiring()){if(!this.credentials.refresh_token)if(this.refreshHandler){let r=await this.processAndValidateRefreshHandler();if(r?.access_token)return this.setCredentials(r),{token:this.credentials.access_token}}else throw new Error("No refresh token or refresh handler callback is set.");let n=await this.refreshAccessTokenAsync();if(!n.credentials||n.credentials&&!n.credentials.access_token)throw new Error("Could not refresh access token.");return{token:n.credentials.access_token,res:n.res}}else return{token:this.credentials.access_token}}async getRequestHeaders(e){return(await this.getRequestMetadataAsync(e)).headers}async getRequestMetadataAsync(e){let n=this.credentials;if(!n.access_token&&!n.refresh_token&&!this.apiKey&&!this.refreshHandler)throw new Error("No access, refresh token, API key or refresh handler callback is set.");if(n.access_token&&!this.isTokenExpiring()){n.token_type=n.token_type||"Bearer";let u=new Headers({authorization:n.token_type+" "+n.access_token});return{headers:this.addSharedMetadataHeaders(u)}}if(this.refreshHandler){let u=await this.processAndValidateRefreshHandler();if(u?.access_token){this.setCredentials(u);let c=new Headers({authorization:"Bearer "+this.credentials.access_token});return{headers:this.addSharedMetadataHeaders(c)}}}if(this.apiKey)return{headers:new Headers({"X-Goog-Api-Key":this.apiKey})};let r=null,i=null;try{r=await this.refreshToken(n.refresh_token),i=r.tokens}catch(u){let c=u;throw c.response&&(c.response.status===403||c.response.status===404)&&(c.message=`Could not refresh access token: ${c.message}`),c}let o=this.credentials;o.token_type=o.token_type||"Bearer",i.refresh_token=o.refresh_token,this.credentials=i;let a=new Headers({authorization:o.token_type+" "+i.access_token});return{headers:this.addSharedMetadataHeaders(a),res:r.res}}static getRevokeTokenUrl(e){return new t().getRevokeTokenURL(e).toString()}getRevokeTokenURL(e){let n=new URL(this.endpoints.oauth2RevokeUrl);return n.searchParams.append("token",e),n}revokeToken(e,n){let r={...t.RETRY_CONFIG,url:this.getRevokeTokenURL(e).toString(),method:"POST"};if(Pn.AuthClient.setMethodName(r,"revokeToken"),n)this.transporter.request(r).then(i=>n(null,i),n);else return this.transporter.request(r)}revokeCredentials(e){if(e)this.revokeCredentialsAsync().then(n=>e(null,n),e);else return this.revokeCredentialsAsync()}async revokeCredentialsAsync(){let e=this.credentials.access_token;if(this.credentials={},e)return this.revokeToken(e);throw new Error("No access token to revoke.")}request(e,n){if(n)this.requestAsync(e).then(r=>n(null,r),r=>n(r,r.response));else return this.requestAsync(e)}async requestAsync(e,n=!1){try{let r=await this.getRequestMetadataAsync();return e.headers=Bd.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,r.headers),this.apiKey&&e.headers.set("X-Goog-Api-Key",this.apiKey),await this.transporter.request(e)}catch(r){let i=r.response;if(i){let o=i.status,a=this.credentials&&this.credentials.access_token&&this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure),u=this.credentials&&this.credentials.access_token&&!this.credentials.refresh_token&&(!this.credentials.expiry_date||this.forceRefreshOnFailure)&&this.refreshHandler,c=i.config.data instanceof _v.Readable,d=o===401||o===403;if(!n&&d&&!c&&a)return await this.refreshAccessTokenAsync(),this.requestAsync(e,!0);if(!n&&d&&!c&&u){let f=await this.processAndValidateRefreshHandler();return f?.access_token&&this.setCredentials(f),this.requestAsync(e,!0)}}throw r}}verifyIdToken(e,n){if(n&&typeof n!="function")throw new Error("This method accepts an options object as the first parameter, which includes the idToken, audience, and maxExpiry.");if(n)this.verifyIdTokenAsync(e).then(r=>n(null,r),n);else return this.verifyIdTokenAsync(e)}async verifyIdTokenAsync(e){if(!e.idToken)throw new Error("The verifyIdToken method requires an ID Token");let n=await this.getFederatedSignonCertsAsync();return await this.verifySignedJwtWithCertsAsync(e.idToken,n.certs,e.audience,this.issuers,e.maxExpiry)}async getTokenInfo(e){let{data:n}=await this.transporter.request({...t.RETRY_CONFIG,method:"POST",headers:{"content-type":"application/x-www-form-urlencoded;charset=UTF-8",authorization:`Bearer ${e}`},url:this.endpoints.tokenInfoUrl.toString()}),r=Object.assign({expiry_date:new Date().getTime()+n.expires_in*1e3,scopes:n.scope.split(" ")},n);return delete r.expires_in,delete r.scope,r}getFederatedSignonCerts(e){if(e)this.getFederatedSignonCertsAsync().then(n=>e(null,n.certs,n.res),e);else return this.getFederatedSignonCertsAsync()}async getFederatedSignonCertsAsync(){let e=new Date().getTime(),n=(0,Ns.hasBrowserCrypto)()?bt.JWK:bt.PEM;if(this.certificateExpiry&&e<this.certificateExpiry.getTime()&&this.certificateCacheFormat===n)return{certs:this.certificateCache,format:n};let r,i;switch(n){case bt.PEM:i=this.endpoints.oauth2FederatedSignonPemCertsUrl.toString();break;case bt.JWK:i=this.endpoints.oauth2FederatedSignonJwkCertsUrl.toString();break;default:throw new Error(`Unsupported certificate format ${n}`)}try{let d={...t.RETRY_CONFIG,url:i};Pn.AuthClient.setMethodName(d,"getFederatedSignonCertsAsync"),r=await this.transporter.request(d)}catch(d){throw d instanceof Error&&(d.message=`Failed to retrieve verification certificates: ${d.message}`),d}let o=r?.headers.get("cache-control"),a=-1;if(o){let d=/max-age=(?<maxAge>[0-9]+)/.exec(o)?.groups?.maxAge;d&&(a=Number(d)*1e3)}let u={};switch(n){case bt.PEM:u=r.data;break;case bt.JWK:for(let d of r.data.keys)u[d.kid]=d;break;default:throw new Error(`Unsupported certificate format ${n}`)}let c=new Date;return this.certificateExpiry=a===-1?null:new Date(c.getTime()+a),this.certificateCache=u,this.certificateCacheFormat=n,{certs:u,format:n,res:r}}getIapPublicKeys(e){if(e)this.getIapPublicKeysAsync().then(n=>e(null,n.pubkeys,n.res),e);else return this.getIapPublicKeysAsync()}async getIapPublicKeysAsync(){let e,n=this.endpoints.oauth2IapPublicKeyUrl.toString();try{let r={...t.RETRY_CONFIG,url:n};Pn.AuthClient.setMethodName(r,"getIapPublicKeysAsync"),e=await this.transporter.request(r)}catch(r){throw r instanceof Error&&(r.message=`Failed to retrieve verification certificates: ${r.message}`),r}return{pubkeys:e.data,res:e}}verifySignedJwtWithCerts(){throw new Error("verifySignedJwtWithCerts is removed, please use verifySignedJwtWithCertsAsync instead.")}async verifySignedJwtWithCertsAsync(e,n,r,i,o){let a=(0,Ns.createCrypto)();o||(o=t.DEFAULT_MAX_TOKEN_LIFETIME_SECS_);let u=e.split(".");if(u.length!==3)throw new Error("Wrong number of segments in token: "+e);let c=u[0]+"."+u[1],d=u[2],f,p;try{f=JSON.parse(a.decodeBase64StringUtf8(u[0]))}catch(T){throw T instanceof Error&&(T.message=`Can't parse token envelope: ${u[0]}': ${T.message}`),T}if(!f)throw new Error("Can't parse token envelope: "+u[0]);try{p=JSON.parse(a.decodeBase64StringUtf8(u[1]))}catch(T){throw T instanceof Error&&(T.message=`Can't parse token payload '${u[0]}`),T}if(!p)throw new Error("Can't parse token payload: "+u[1]);if(!Object.prototype.hasOwnProperty.call(n,f.kid))throw new Error("No pem found for envelope: "+JSON.stringify(f));let h=n[f.kid];if(f.alg==="ES256"&&(d=yv.joseToDer(d,"ES256").toString("base64")),!await a.verify(h,c,d))throw new Error("Invalid token signature: "+e);if(!p.iat)throw new Error("No issue time in token: "+JSON.stringify(p));if(!p.exp)throw new Error("No expiration time in token: "+JSON.stringify(p));let _=Number(p.iat);if(isNaN(_))throw new Error("iat field using invalid format");let m=Number(p.exp);if(isNaN(m))throw new Error("exp field using invalid format");let E=new Date().getTime()/1e3;if(m>=E+o)throw new Error("Expiration time too far in future: "+JSON.stringify(p));let y=_-t.CLOCK_SKEW_SECS_,A=m+t.CLOCK_SKEW_SECS_;if(E<y)throw new Error("Token used too early, "+E+" < "+y+": "+JSON.stringify(p));if(E>A)throw new Error("Token used too late, "+E+" > "+A+": "+JSON.stringify(p));if(i&&i.indexOf(p.iss)<0)throw new Error("Invalid issuer, expected one of ["+i+"], but got "+p.iss);if(typeof r<"u"&&r!==null){let T=p.aud,C=!1;if(r.constructor===Array?C=r.indexOf(T)>-1:C=T===r,!C)throw new Error("Wrong recipient, payload audience != requiredAudience")}return new Ev.LoginTicket(f,p)}async processAndValidateRefreshHandler(){if(this.refreshHandler){let e=await this.refreshHandler();if(!e.access_token)throw new Error("No access token is returned by the refreshHandler callback.");return e}}isTokenExpiring(){let e=this.credentials.expiry_date;return e?e<=new Date().getTime()+this.eagerRefreshThresholdMillis:!1}};St.OAuth2Client=xs});var Ds=H(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.Compute=void 0;var vv=Me(),$d=dr(),Tv=$t(),ks=class extends Tv.OAuth2Client{serviceAccountEmail;scopes;constructor(e={}){super(e),this.credentials={expiry_date:1,refresh_token:"compute-placeholder"},this.serviceAccountEmail=e.serviceAccountEmail||"default",this.scopes=Array.isArray(e.scopes)?e.scopes:e.scopes?[e.scopes]:[]}async refreshTokenNoCache(){let e=`service-accounts/${this.serviceAccountEmail}/token`,n;try{let i={property:e};this.scopes.length>0&&(i.params={scopes:this.scopes.join(",")}),n=await $d.instance(i)}catch(i){throw i instanceof vv.GaxiosError&&(i.message=`Could not refresh access token: ${i.message}`,this.wrapError(i)),i}let r=n;return n&&n.expires_in&&(r.expiry_date=new Date().getTime()+n.expires_in*1e3,delete r.expires_in),this.emit("tokens",r),{tokens:r,res:null}}async fetchIdToken(e){let n=`service-accounts/${this.serviceAccountEmail}/identity?format=full&audience=${e}`,r;try{let i={property:n};r=await $d.instance(i)}catch(i){throw i instanceof Error&&(i.message=`Could not fetch ID token: ${i.message}`),i}return r}wrapError(e){let n=e.response;n&&n.status&&(e.status=n.status,n.status===403?e.message="A Forbidden error was returned while attempting to retrieve an access token for the Compute Engine built-in service account. This may be because the Compute Engine instance does not have the correct permission scopes specified: "+e.message:n.status===404&&(e.message="A Not Found error was returned while attempting to retrieve an accesstoken for the Compute Engine built-in service account. This may be because the Compute Engine instance does not have any permission scopes specified: "+e.message))}};li.Compute=ks});var bs=H(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.IdTokenClient=void 0;var Av=$t(),Ms=class extends Av.OAuth2Client{targetAudience;idTokenProvider;constructor(e){super(e),this.targetAudience=e.targetAudience,this.idTokenProvider=e.idTokenProvider}async getRequestMetadataAsync(){if(!this.credentials.id_token||!this.credentials.expiry_date||this.isTokenExpiring()){let n=await this.idTokenProvider.fetchIdToken(this.targetAudience);this.credentials={id_token:n,expiry_date:this.getIdTokenExpiryDate(n)}}return{headers:new Headers({authorization:"Bearer "+this.credentials.id_token})}}getIdTokenExpiryDate(e){let n=e.split(".")[1];if(n)return JSON.parse(Buffer.from(n,"base64").toString("ascii")).exp*1e3}};ui.IdTokenClient=Ms});var Us=H(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.GCPEnv=void 0;Nn.clear=Cv;Nn.getEnv=Sv;var Xd=dr(),It;(function(t){t.APP_ENGINE="APP_ENGINE",t.KUBERNETES_ENGINE="KUBERNETES_ENGINE",t.CLOUD_FUNCTIONS="CLOUD_FUNCTIONS",t.COMPUTE_ENGINE="COMPUTE_ENGINE",t.CLOUD_RUN="CLOUD_RUN",t.CLOUD_RUN_JOBS="CLOUD_RUN_JOBS",t.NONE="NONE"})(It||(Nn.GCPEnv=It={}));var gr;function Cv(){gr=void 0}async function Sv(){return gr||(gr=Iv(),gr)}async function Iv(){let t=It.NONE;return wv()?t=It.APP_ENGINE:Rv()?t=It.CLOUD_FUNCTIONS:await kv()?await xv()?t=It.KUBERNETES_ENGINE:Pv()?t=It.CLOUD_RUN:Nv()?t=It.CLOUD_RUN_JOBS:t=It.COMPUTE_ENGINE:t=It.NONE,t}function wv(){return!!(process.env.GAE_SERVICE||process.env.GAE_MODULE_NAME)}function Rv(){return!!(process.env.FUNCTION_NAME||process.env.FUNCTION_TARGET)}function Pv(){return!!process.env.K_CONFIGURATION}function Nv(){return!!process.env.CLOUD_RUN_JOB}async function xv(){try{return await Xd.instance("attributes/cluster-name"),!0}catch{return!1}}async function kv(){return Xd.isAvailable()}});var Gs=H((VD,Jd)=>{var ci=wn().Buffer,Dv=J("stream"),Mv=J("util");function di(t){if(this.buffer=null,this.writable=!0,this.readable=!0,!t)return this.buffer=ci.alloc(0),this;if(typeof t.pipe=="function")return this.buffer=ci.alloc(0),t.pipe(this),this;if(t.length||typeof t=="object")return this.buffer=t,this.writable=!1,process.nextTick(function(){this.emit("end",t),this.readable=!1,this.emit("close")}.bind(this)),this;throw new TypeError("Unexpected data type ("+typeof t+")")}Mv.inherits(di,Dv);di.prototype.write=function(e){this.buffer=ci.concat([this.buffer,ci.from(e)]),this.emit("data",e)};di.prototype.end=function(e){e&&this.write(e),this.emit("end",e),this.emit("close"),this.writable=!1,this.readable=!1};Jd.exports=di});var Kd=H(($D,Wd)=>{"use strict";var _r=J("buffer").Buffer,Ls=J("buffer").SlowBuffer;Wd.exports=fi;function fi(t,e){if(!_r.isBuffer(t)||!_r.isBuffer(e)||t.length!==e.length)return!1;for(var n=0,r=0;r<t.length;r++)n|=t[r]^e[r];return n===0}fi.install=function(){_r.prototype.equal=Ls.prototype.equal=function(e){return fi(this,e)}};var bv=_r.prototype.equal,Uv=Ls.prototype.equal;fi.restore=function(){_r.prototype.equal=bv,Ls.prototype.equal=Uv}});var Bs=H((XD,rf)=>{var kn=wn().Buffer,Ze=J("crypto"),zd=ms(),Yd=J("util"),Gv=`"%s" is not a valid algorithm.
14
+ Supported algorithms are:
15
+ "HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".`,yr="secret must be a string or buffer",xn="key must be a string or a buffer",Lv="key must be a string, a buffer or an object",qs=typeof Ze.createPublicKey=="function";qs&&(xn+=" or a KeyObject",yr+="or a KeyObject");function Qd(t){if(!kn.isBuffer(t)&&typeof t!="string"&&(!qs||typeof t!="object"||typeof t.type!="string"||typeof t.asymmetricKeyType!="string"||typeof t.export!="function"))throw ft(xn)}function Zd(t){if(!kn.isBuffer(t)&&typeof t!="string"&&typeof t!="object")throw ft(Lv)}function Ov(t){if(!kn.isBuffer(t)){if(typeof t=="string")return t;if(!qs||typeof t!="object"||t.type!=="secret"||typeof t.export!="function")throw ft(yr)}}function Fs(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function jd(t){t=t.toString();var e=4-t.length%4;if(e!==4)for(var n=0;n<e;++n)t+="=";return t.replace(/\-/g,"+").replace(/_/g,"/")}function ft(t){var e=[].slice.call(arguments,1),n=Yd.format.bind(Yd,t).apply(null,e);return new TypeError(n)}function qv(t){return kn.isBuffer(t)||typeof t=="string"}function Er(t){return qv(t)||(t=JSON.stringify(t)),t}function ef(t){return function(n,r){Ov(r),n=Er(n);var i=Ze.createHmac("sha"+t,r),o=(i.update(n),i.digest("base64"));return Fs(o)}}var Os,Fv="timingSafeEqual"in Ze?function(e,n){return e.byteLength!==n.byteLength?!1:Ze.timingSafeEqual(e,n)}:function(e,n){return Os||(Os=Kd()),Os(e,n)};function Bv(t){return function(n,r,i){var o=ef(t)(n,i);return Fv(kn.from(r),kn.from(o))}}function tf(t){return function(n,r){Zd(r),n=Er(n);var i=Ze.createSign("RSA-SHA"+t),o=(i.update(n),i.sign(r,"base64"));return Fs(o)}}function nf(t){return function(n,r,i){Qd(i),n=Er(n),r=jd(r);var o=Ze.createVerify("RSA-SHA"+t);return o.update(n),o.verify(i,r,"base64")}}function Hv(t){return function(n,r){Zd(r),n=Er(n);var i=Ze.createSign("RSA-SHA"+t),o=(i.update(n),i.sign({key:r,padding:Ze.constants.RSA_PKCS1_PSS_PADDING,saltLength:Ze.constants.RSA_PSS_SALTLEN_DIGEST},"base64"));return Fs(o)}}function Vv(t){return function(n,r,i){Qd(i),n=Er(n),r=jd(r);var o=Ze.createVerify("RSA-SHA"+t);return o.update(n),o.verify({key:i,padding:Ze.constants.RSA_PKCS1_PSS_PADDING,saltLength:Ze.constants.RSA_PSS_SALTLEN_DIGEST},r,"base64")}}function $v(t){var e=tf(t);return function(){var r=e.apply(null,arguments);return r=zd.derToJose(r,"ES"+t),r}}function Xv(t){var e=nf(t);return function(r,i,o){i=zd.joseToDer(i,"ES"+t).toString("base64");var a=e(r,i,o);return a}}function Jv(){return function(){return""}}function Wv(){return function(e,n){return n===""}}rf.exports=function(e){var n={hs:ef,rs:tf,ps:Hv,es:$v,none:Jv},r={hs:Bv,rs:nf,ps:Vv,es:Xv,none:Wv},i=e.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/);if(!i)throw ft(Gv,e);var o=(i[1]||i[3]).toLowerCase(),a=i[2];return{sign:n[o](a),verify:r[o](a)}}});var Hs=H((JD,of)=>{var Kv=J("buffer").Buffer;of.exports=function(e){return typeof e=="string"?e:typeof e=="number"||Kv.isBuffer(e)?e.toString():JSON.stringify(e)}});var df=H((WD,cf)=>{var Yv=wn().Buffer,sf=Gs(),zv=Bs(),Qv=J("stream"),af=Hs(),Vs=J("util");function lf(t,e){return Yv.from(t,e).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Zv(t,e,n){n=n||"utf8";var r=lf(af(t),"binary"),i=lf(af(e),n);return Vs.format("%s.%s",r,i)}function uf(t){var e=t.header,n=t.payload,r=t.secret||t.privateKey,i=t.encoding,o=zv(e.alg),a=Zv(e,n,i),u=o.sign(a,r);return Vs.format("%s.%s",a,u)}function pi(t){var e=t.secret;if(e=e??t.privateKey,e=e??t.key,/^hs/i.test(t.header.alg)===!0&&e==null)throw new TypeError("secret must be a string or buffer or a KeyObject");var n=new sf(e);this.readable=!0,this.header=t.header,this.encoding=t.encoding,this.secret=this.privateKey=this.key=n,this.payload=new sf(t.payload),this.secret.once("close",function(){!this.payload.writable&&this.readable&&this.sign()}.bind(this)),this.payload.once("close",function(){!this.secret.writable&&this.readable&&this.sign()}.bind(this))}Vs.inherits(pi,Qv);pi.prototype.sign=function(){try{var e=uf({header:this.header,payload:this.payload.buffer,secret:this.secret.buffer,encoding:this.encoding});return this.emit("done",e),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(n){this.readable=!1,this.emit("error",n),this.emit("close")}};pi.sign=uf;cf.exports=pi});var Tf=H((KD,vf)=>{var pf=wn().Buffer,ff=Gs(),jv=Bs(),eT=J("stream"),hf=Hs(),tT=J("util"),nT=/^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/;function rT(t){return Object.prototype.toString.call(t)==="[object Object]"}function iT(t){if(rT(t))return t;try{return JSON.parse(t)}catch{return}}function mf(t){var e=t.split(".",1)[0];return iT(pf.from(e,"base64").toString("binary"))}function oT(t){return t.split(".",2).join(".")}function gf(t){return t.split(".")[2]}function sT(t,e){e=e||"utf8";var n=t.split(".")[1];return pf.from(n,"base64").toString(e)}function _f(t){return nT.test(t)&&!!mf(t)}function yf(t,e,n){if(!e){var r=new Error("Missing algorithm parameter for jws.verify");throw r.code="MISSING_ALGORITHM",r}t=hf(t);var i=gf(t),o=oT(t),a=jv(e);return a.verify(o,i,n)}function Ef(t,e){if(e=e||{},t=hf(t),!_f(t))return null;var n=mf(t);if(!n)return null;var r=sT(t);return(n.typ==="JWT"||e.json)&&(r=JSON.parse(r,e.encoding)),{header:n,payload:r,signature:gf(t)}}function Dn(t){t=t||{};var e=t.secret;if(e=e??t.publicKey,e=e??t.key,/^hs/i.test(t.algorithm)===!0&&e==null)throw new TypeError("secret must be a string or buffer or a KeyObject");var n=new ff(e);this.readable=!0,this.algorithm=t.algorithm,this.encoding=t.encoding,this.secret=this.publicKey=this.key=n,this.signature=new ff(t.signature),this.secret.once("close",function(){!this.signature.writable&&this.readable&&this.verify()}.bind(this)),this.signature.once("close",function(){!this.secret.writable&&this.readable&&this.verify()}.bind(this))}tT.inherits(Dn,eT);Dn.prototype.verify=function(){try{var e=yf(this.signature.buffer,this.algorithm,this.key.buffer),n=Ef(this.signature.buffer,this.encoding);return this.emit("done",e,n),this.emit("data",e),this.emit("end"),this.readable=!1,e}catch(r){this.readable=!1,this.emit("error",r),this.emit("close")}};Dn.decode=Ef;Dn.isValid=_f;Dn.verify=yf;vf.exports=Dn});var $s=H(Xt=>{var Af=df(),hi=Tf(),aT=["HS256","HS384","HS512","RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];Xt.ALGORITHMS=aT;Xt.sign=Af.sign;Xt.verify=hi.verify;Xt.decode=hi.decode;Xt.isValid=hi.isValid;Xt.createSign=function(e){return new Af(e)};Xt.createVerify=function(e){return new hi(e)}});var Sf=H(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.buildPayloadForJwsSign=Cf;mi.getJwsSign=dT;var lT=$s(),uT="RS256",cT="https://oauth2.googleapis.com/token";function Cf(t){let e=Math.floor(new Date().getTime()/1e3);return{iss:t.iss,scope:t.scope,aud:cT,exp:e+3600,iat:e,sub:t.sub,...t.additionalClaims}}function dT(t){let e=Cf(t);return(0,lT.sign)({header:{alg:uT},payload:e,secret:t.key})}});var If=H(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.getToken=gT;var fT=Sf(),pT="https://oauth2.googleapis.com/token",hT="urn:ietf:params:oauth:grant-type:jwt-bearer",mT=t=>({method:"POST",url:pT,data:new URLSearchParams({grant_type:hT,assertion:(0,fT.getJwsSign)(t)}),responseType:"json",retryConfig:{httpMethodsToRetry:["POST"]}});async function gT(t){if(!t.transporter)throw new Error("No transporter set.");try{let e=mT(t);return(await t.transporter.request(e)).data}catch(e){let n=e,r=n.response?.data;throw r?.error&&(n.message=`${r.error}: ${r.error_description}`),n}}});var wf=H(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});gi.ErrorWithCode=void 0;var Js=class extends Error{code;constructor(e,n){super(e),this.code=n}};gi.ErrorWithCode=Js});var Zs=H(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.getCredentials=ET;var _T=J("path"),Rf=J("fs"),yT=J("util"),_i=wf(),Pf=Rf.readFile?(0,yT.promisify)(Rf.readFile):async()=>{throw new _i.ErrorWithCode("use key rather than keyFile.","MISSING_CREDENTIALS")},Jt;(function(t){t.JSON=".json",t.DER=".der",t.CRT=".crt",t.PEM=".pem",t.P12=".p12",t.PFX=".pfx"})(Jt||(Jt={}));var Ws=class{keyFilePath;constructor(e){this.keyFilePath=e}async getCredentials(){let e=await Pf(this.keyFilePath,"utf8"),n;try{n=JSON.parse(e)}catch(o){let a=o;throw new Error(`Invalid JSON key file: ${a.message}`)}let r=n.private_key,i=n.client_email;if(!r||!i)throw new _i.ErrorWithCode("private_key and client_email are required.","MISSING_CREDENTIALS");return{privateKey:r,clientEmail:i}}},Ks=class{keyFilePath;constructor(e){this.keyFilePath=e}async getCredentials(){return{privateKey:await Pf(this.keyFilePath,"utf8")}}},Ys=class{async getCredentials(){throw new _i.ErrorWithCode("*.p12 certificates are not supported after v6.1.2. Consider utilizing *.json format or converting *.p12 to *.pem using the OpenSSL CLI.","UNKNOWN_CERTIFICATE_TYPE")}},zs=class{static create(e){switch(_T.extname(e)){case Jt.JSON:return new Ws(e);case Jt.DER:case Jt.CRT:case Jt.PEM:return new Ks(e);case Jt.P12:case Jt.PFX:return new Ys;default:throw new _i.ErrorWithCode("Unknown certificate type. Type is determined based on file extension. Current supported extensions are *.json, and *.pem.","UNKNOWN_CERTIFICATE_TYPE")}}};async function ET(t){return zs.create(t).getCredentials()}});var Nf=H(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.TokenHandler=void 0;var vT=If(),TT=Zs(),js=class{token;tokenExpiresAt;inFlightRequest;tokenOptions;constructor(e){this.tokenOptions=e}async processCredentials(){if(!this.tokenOptions.key&&!this.tokenOptions.keyFile)throw new Error("No key or keyFile set.");if(!this.tokenOptions.key&&this.tokenOptions.keyFile){let e=await(0,TT.getCredentials)(this.tokenOptions.keyFile);this.tokenOptions.key=e.privateKey,this.tokenOptions.email=e.clientEmail}}isTokenExpiring(){if(!this.token||!this.tokenExpiresAt)return!0;let e=new Date().getTime(),n=this.tokenOptions.eagerRefreshThresholdMillis??0;return this.tokenExpiresAt<=e+n}hasExpired(){let e=new Date().getTime();return this.token&&this.tokenExpiresAt?new Date().getTime()>=this.tokenExpiresAt:!0}async getToken(e){if(await this.processCredentials(),this.inFlightRequest&&!e)return this.inFlightRequest;if(this.token&&!this.isTokenExpiring()&&!e)return this.token;try{this.inFlightRequest=(0,vT.getToken)(this.tokenOptions);let n=await this.inFlightRequest;return this.token=n,this.tokenExpiresAt=new Date().getTime()+(n.expires_in??0)*1e3,n}finally{this.inFlightRequest=void 0}}};yi.TokenHandler=js});var xf=H(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.revokeToken=ST;var AT="https://oauth2.googleapis.com/revoke?token=",CT=!0;async function ST(t,e){let n=AT+t;return await e.request({url:n,retry:CT})}});var na=H(Ei=>{"use strict";Object.defineProperty(Ei,"__esModule",{value:!0});Ei.GoogleToken=void 0;var IT=Me(),kf=Nf(),wT=xf(),ta=class{tokenOptions;tokenHandler;constructor(e){this.tokenOptions=e||{},this.tokenOptions.transporter=this.tokenOptions.transporter||{request:n=>(0,IT.request)(n)},this.tokenOptions.iss||(this.tokenOptions.iss=this.tokenOptions.email),typeof this.tokenOptions.scope=="object"&&(this.tokenOptions.scope=this.tokenOptions.scope.join(" ")),this.tokenHandler=new kf.TokenHandler(this.tokenOptions)}get expiresAt(){return this.tokenHandler.tokenExpiresAt}get accessToken(){return this.tokenHandler.token?.access_token}get idToken(){return this.tokenHandler.token?.id_token}get tokenType(){return this.tokenHandler.token?.token_type}get refreshToken(){return this.tokenHandler.token?.refresh_token}hasExpired(){return this.tokenHandler.hasExpired()}isTokenExpiring(){return this.tokenHandler.isTokenExpiring()}getToken(e,n={forceRefresh:!1}){let r;typeof e=="function"?r=e:typeof e=="object"&&(n=e);let i=this.tokenHandler.getToken(n.forceRefresh??!1);return r&&i.then(o=>r(null,o),r),i}revokeToken(e){if(!this.accessToken)return Promise.reject(new Error("No token to revoke."));let n=(0,wT.revokeToken)(this.accessToken,this.tokenOptions.transporter);e&&n.then(()=>e(),e),this.tokenHandler=new kf.TokenHandler(this.tokenOptions)}get googleTokenOptions(){return this.tokenOptions}};Ei.GoogleToken=ta});var ia=H(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.JWTAccess=void 0;var RT=$s(),PT=ut(),Df={alg:"RS256",typ:"JWT"},ra=class t{email;key;keyId;projectId;eagerRefreshThresholdMillis;cache=new PT.LRUCache({capacity:500,maxAge:3600*1e3});constructor(e,n,r,i){this.email=e,this.key=n,this.keyId=r,this.eagerRefreshThresholdMillis=i??300*1e3}getCachedKey(e,n){let r=e;if(n&&Array.isArray(n)&&n.length?r=e?`${e}_${n.join("_")}`:`${n.join("_")}`:typeof n=="string"&&(r=e?`${e}_${n}`:n),!r)throw Error("Scopes or url must be provided");return r}getRequestHeaders(e,n,r){let i=this.getCachedKey(e,r),o=this.cache.get(i),a=Date.now();if(o&&o.expiration-a>this.eagerRefreshThresholdMillis)return new Headers(o.headers);let u=Math.floor(Date.now()/1e3),c=t.getExpirationTime(u),d;if(Array.isArray(r)&&(r=r.join(" ")),r?d={iss:this.email,sub:this.email,scope:r,exp:c,iat:u}:d={iss:this.email,sub:this.email,aud:e,exp:c,iat:u},n){for(let _ in d)if(n[_])throw new Error(`The '${_}' property is not allowed when passing additionalClaims. This claim is included in the JWT by default.`)}let f=this.keyId?{...Df,kid:this.keyId}:Df,p=Object.assign(d,n),h=RT.sign({header:f,payload:p,secret:this.key}),g=new Headers({authorization:`Bearer ${h}`});return this.cache.set(i,{expiration:c*1e3,headers:g}),g}static getExpirationTime(e){return e+3600}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the service account auth settings.");if(!e.client_email)throw new Error("The incoming JSON object does not contain a client_email field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");this.email=e.client_email,this.key=e.private_key,this.keyId=e.private_key_id,this.projectId=e.project_id}fromStream(e,n){if(n)this.fromStreamAsync(e).then(()=>n(),n);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((n,r)=>{e||r(new Error("Must pass in a stream containing the service account auth settings."));let i="";e.setEncoding("utf8").on("data",o=>i+=o).on("error",r).on("end",()=>{try{let o=JSON.parse(i);this.fromJSON(o),n()}catch(o){r(o)}})})}};vi.JWTAccess=ra});var sa=H(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.JWT=void 0;var Mf=na(),NT=Zs(),xT=ia(),kT=$t(),Ti=$e(),oa=class t extends kT.OAuth2Client{email;keyFile;key;keyId;defaultScopes;scopes;scope;subject;gtoken;additionalClaims;useJWTAccessWithScope;defaultServicePath;access;constructor(e={}){super(e),this.email=e.email,this.keyFile=e.keyFile,this.key=e.key,this.keyId=e.keyId,this.scopes=e.scopes,this.subject=e.subject,this.additionalClaims=e.additionalClaims,this.credentials={refresh_token:"jwt-placeholder",expiry_date:1}}createScoped(e){let n=new t(this);return n.scopes=e,n}async getRequestMetadataAsync(e){e=this.defaultServicePath?`https://${this.defaultServicePath}/`:e;let n=!this.hasUserScopes()&&e||this.useJWTAccessWithScope&&this.hasAnyScopes()||this.universeDomain!==Ti.DEFAULT_UNIVERSE;if(this.subject&&this.universeDomain!==Ti.DEFAULT_UNIVERSE)throw new RangeError(`Service Account user is configured for the credential. Domain-wide delegation is not supported in universes other than ${Ti.DEFAULT_UNIVERSE}`);if(!this.apiKey&&n)if(this.additionalClaims&&this.additionalClaims.target_audience){let{tokens:r}=await this.refreshToken();return{headers:this.addSharedMetadataHeaders(new Headers({authorization:`Bearer ${r.id_token}`}))}}else{this.access||(this.access=new xT.JWTAccess(this.email,this.key,this.keyId,this.eagerRefreshThresholdMillis));let r;this.hasUserScopes()?r=this.scopes:e||(r=this.defaultScopes);let i=this.useJWTAccessWithScope||this.universeDomain!==Ti.DEFAULT_UNIVERSE,o=await this.access.getRequestHeaders(e??void 0,this.additionalClaims,i?r:void 0);return{headers:this.addSharedMetadataHeaders(o)}}else return this.hasAnyScopes()||this.apiKey?super.getRequestMetadataAsync(e):{headers:new Headers}}async fetchIdToken(e){let n=new Mf.GoogleToken({iss:this.email,sub:this.subject,scope:this.scopes||this.defaultScopes,keyFile:this.keyFile,key:this.key,additionalClaims:{target_audience:e},transporter:this.transporter});if(await n.getToken({forceRefresh:!0}),!n.idToken)throw new Error("Unknown error: Failed to fetch ID token");return n.idToken}hasUserScopes(){return this.scopes?this.scopes.length>0:!1}hasAnyScopes(){return!!(this.scopes&&this.scopes.length>0||this.defaultScopes&&this.defaultScopes.length>0)}authorize(e){if(e)this.authorizeAsync().then(n=>e(null,n),e);else return this.authorizeAsync()}async authorizeAsync(){let e=await this.refreshToken();if(!e)throw new Error("No result returned");return this.credentials=e.tokens,this.credentials.refresh_token="jwt-placeholder",this.key=this.gtoken.googleTokenOptions?.key,this.email=this.gtoken.googleTokenOptions?.iss,e.tokens}async refreshTokenNoCache(){let e=this.createGToken(),r={access_token:(await e.getToken({forceRefresh:this.isTokenExpiring()})).access_token,token_type:"Bearer",expiry_date:e.expiresAt,id_token:e.idToken};return this.emit("tokens",r),{res:null,tokens:r}}createGToken(){return this.gtoken||(this.gtoken=new Mf.GoogleToken({iss:this.email,sub:this.subject,scope:this.scopes||this.defaultScopes,keyFile:this.keyFile,key:this.key,additionalClaims:this.additionalClaims,transporter:this.transporter})),this.gtoken}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the service account auth settings.");if(!e.client_email)throw new Error("The incoming JSON object does not contain a client_email field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");this.email=e.client_email,this.key=e.private_key,this.keyId=e.private_key_id,this.projectId=e.project_id,this.quotaProjectId=e.quota_project_id,this.universeDomain=e.universe_domain||this.universeDomain}fromStream(e,n){if(n)this.fromStreamAsync(e).then(()=>n(),n);else return this.fromStreamAsync(e)}fromStreamAsync(e){return new Promise((n,r)=>{if(!e)throw new Error("Must pass in a stream containing the service account auth settings.");let i="";e.setEncoding("utf8").on("error",r).on("data",o=>i+=o).on("end",()=>{try{let o=JSON.parse(i);this.fromJSON(o),n()}catch(o){r(o)}})})}fromAPIKey(e){if(typeof e!="string")throw new Error("Must provide an API Key string.");this.apiKey=e}async getCredentials(){if(this.key)return{private_key:this.key,client_email:this.email};if(this.keyFile){let e=this.createGToken(),n=await(0,NT.getCredentials)(this.keyFile);return{private_key:n.privateKey,client_email:n.clientEmail}}throw new Error("A key or a keyFile must be provided to getCredentials.")}};Ai.JWT=oa});var la=H(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.UserRefreshClient=Mn.USER_REFRESH_ACCOUNT_TYPE=void 0;var DT=$t(),MT=$e();Mn.USER_REFRESH_ACCOUNT_TYPE="authorized_user";var aa=class t extends DT.OAuth2Client{_refreshToken;constructor(e,n,r,i,o){let a=e&&typeof e=="object"?e:{clientId:e,clientSecret:n,refreshToken:r,eagerRefreshThresholdMillis:i,forceRefreshOnFailure:o};super(a),this._refreshToken=a.refreshToken,this.credentials.refresh_token=a.refreshToken}async refreshTokenNoCache(){return super.refreshTokenNoCache(this._refreshToken)}async fetchIdToken(e){let n={...t.RETRY_CONFIG,url:this.endpoints.oauth2TokenUrl,method:"POST",data:new URLSearchParams({client_id:this._clientId,client_secret:this._clientSecret,grant_type:"refresh_token",refresh_token:this._refreshToken,target_audience:e}),responseType:"json"};return MT.AuthClient.setMethodName(n,"fetchIdToken"),(await this.transporter.request(n)).data.id_token}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the user refresh token");if(e.type!=="authorized_user")throw new Error('The incoming JSON object does not have the "authorized_user" type');if(!e.client_id)throw new Error("The incoming JSON object does not contain a client_id field");if(!e.client_secret)throw new Error("The incoming JSON object does not contain a client_secret field");if(!e.refresh_token)throw new Error("The incoming JSON object does not contain a refresh_token field");this._clientId=e.client_id,this._clientSecret=e.client_secret,this._refreshToken=e.refresh_token,this.credentials.refresh_token=e.refresh_token,this.quotaProjectId=e.quota_project_id,this.universeDomain=e.universe_domain||this.universeDomain}fromStream(e,n){if(n)this.fromStreamAsync(e).then(()=>n(),n);else return this.fromStreamAsync(e)}async fromStreamAsync(e){return new Promise((n,r)=>{if(!e)return r(new Error("Must pass in a stream containing the user refresh token."));let i="";e.setEncoding("utf8").on("error",r).on("data",o=>i+=o).on("end",()=>{try{let o=JSON.parse(i);return this.fromJSON(o),n()}catch(o){return r(o)}})})}static fromJSON(e){let n=new t;return n.fromJSON(e),n}};Mn.UserRefreshClient=aa});var ca=H(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.Impersonated=bn.IMPERSONATED_ACCOUNT_TYPE=void 0;var bf=$t(),bT=Me(),UT=ut();bn.IMPERSONATED_ACCOUNT_TYPE="impersonated_service_account";var ua=class t extends bf.OAuth2Client{sourceClient;targetPrincipal;targetScopes;delegates;lifetime;endpoint;constructor(e={}){if(super(e),this.credentials={expiry_date:1,refresh_token:"impersonated-placeholder"},this.sourceClient=e.sourceClient??new bf.OAuth2Client,this.targetPrincipal=e.targetPrincipal??"",this.delegates=e.delegates??[],this.targetScopes=e.targetScopes??[],this.lifetime=e.lifetime??3600,!!!(0,UT.originalOrCamelOptions)(e).get("universe_domain"))this.universeDomain=this.sourceClient.universeDomain;else if(this.sourceClient.universeDomain!==this.universeDomain)throw new RangeError(`Universe domain ${this.sourceClient.universeDomain} in source credentials does not match ${this.universeDomain} universe domain set for impersonated credentials.`);this.endpoint=e.endpoint??`https://iamcredentials.${this.universeDomain}`}async sign(e){await this.sourceClient.getAccessToken();let n=`projects/-/serviceAccounts/${this.targetPrincipal}`,r=`${this.endpoint}/v1/${n}:signBlob`,i={delegates:this.delegates,payload:Buffer.from(e).toString("base64")};return(await this.sourceClient.request({...t.RETRY_CONFIG,url:r,data:i,method:"POST"})).data}getTargetPrincipal(){return this.targetPrincipal}async refreshToken(){try{await this.sourceClient.getAccessToken();let e="projects/-/serviceAccounts/"+this.targetPrincipal,n=`${this.endpoint}/v1/${e}:generateAccessToken`,r={delegates:this.delegates,scope:this.targetScopes,lifetime:this.lifetime+"s"},i=await this.sourceClient.request({...t.RETRY_CONFIG,url:n,data:r,method:"POST"}),o=i.data;return this.credentials.access_token=o.accessToken,this.credentials.expiry_date=Date.parse(o.expireTime),{tokens:this.credentials,res:i}}catch(e){if(!(e instanceof Error))throw e;let n=0,r="";throw e instanceof bT.GaxiosError&&(n=e?.response?.data?.error?.status,r=e?.response?.data?.error?.message),n&&r?(e.message=`${n}: unable to impersonate: ${r}`,e):(e.message=`unable to impersonate: ${e}`,e)}}async fetchIdToken(e,n){await this.sourceClient.getAccessToken();let r=`projects/-/serviceAccounts/${this.targetPrincipal}`,i=`${this.endpoint}/v1/${r}:generateIdToken`,o={delegates:this.delegates,audience:e,includeEmail:n?.includeEmail??!0,useEmailAzp:n?.includeEmail??!0};return(await this.sourceClient.request({...t.RETRY_CONFIG,url:i,data:o,method:"POST"})).data.token}};bn.Impersonated=ua});var fa=H(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.OAuthClientAuthHandler=void 0;vr.getErrorFromOAuthErrorResponse=OT;var Un=Me(),GT=fr(),LT=["PUT","POST","PATCH"],da=class{#e=(0,GT.createCrypto)();#t;transporter;constructor(e){e&&"clientId"in e?(this.#t=e,this.transporter=new Un.Gaxios):(this.#t=e?.clientAuthentication,this.transporter=e?.transporter||new Un.Gaxios)}applyClientAuthenticationOptions(e,n){e.headers=Un.Gaxios.mergeHeaders(e.headers),this.injectAuthenticatedHeaders(e,n),n||this.injectAuthenticatedRequestBody(e)}injectAuthenticatedHeaders(e,n){if(n)e.headers=Un.Gaxios.mergeHeaders(e.headers,{authorization:`Bearer ${n}`});else if(this.#t?.confidentialClientType==="basic"){e.headers=Un.Gaxios.mergeHeaders(e.headers);let r=this.#t.clientId,i=this.#t.clientSecret||"",o=this.#e.encodeBase64StringUtf8(`${r}:${i}`);Un.Gaxios.mergeHeaders(e.headers,{authorization:`Basic ${o}`})}}injectAuthenticatedRequestBody(e){if(this.#t?.confidentialClientType==="request-body"){let n=(e.method||"GET").toUpperCase();if(!LT.includes(n))throw new Error(`${n} HTTP method does not support ${this.#t.confidentialClientType} client authentication`);let i=new Headers(e.headers).get("content-type");if(i?.startsWith("application/x-www-form-urlencoded")||e.data instanceof URLSearchParams){let o=new URLSearchParams(e.data??"");o.append("client_id",this.#t.clientId),o.append("client_secret",this.#t.clientSecret||""),e.data=o}else if(i?.startsWith("application/json"))e.data=e.data||{},Object.assign(e.data,{client_id:this.#t.clientId,client_secret:this.#t.clientSecret||""});else throw new Error(`${i} content-types are not supported with ${this.#t.confidentialClientType} client authentication`)}}static get RETRY_CONFIG(){return{retry:!0,retryConfig:{httpMethodsToRetry:["GET","PUT","POST","HEAD","OPTIONS","DELETE"]}}}};vr.OAuthClientAuthHandler=da;function OT(t,e){let n=t.error,r=t.error_description,i=t.error_uri,o=`Error code ${n}`;typeof r<"u"&&(o+=`: ${r}`),typeof i<"u"&&(o+=` - ${i}`);let a=new Error(o);if(e){let u=Object.keys(e);e.stack&&u.push("stack"),u.forEach(c=>{c!=="message"&&Object.defineProperty(a,c,{value:e[c],writable:!1,enumerable:!0})})}return a}});var Si=H(Ci=>{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});Ci.StsCredentials=void 0;var qT=Me(),FT=$e(),Uf=fa(),BT=ut(),pa=class t extends Uf.OAuthClientAuthHandler{#e;constructor(e={tokenExchangeEndpoint:""},n){(typeof e!="object"||e instanceof URL)&&(e={tokenExchangeEndpoint:e,clientAuthentication:n}),super(e),this.#e=e.tokenExchangeEndpoint}async exchangeToken(e,n,r){let i={grant_type:e.grantType,resource:e.resource,audience:e.audience,scope:e.scope?.join(" "),requested_token_type:e.requestedTokenType,subject_token:e.subjectToken,subject_token_type:e.subjectTokenType,actor_token:e.actingParty?.actorToken,actor_token_type:e.actingParty?.actorTokenType,options:r&&JSON.stringify(r)},o={...t.RETRY_CONFIG,url:this.#e.toString(),method:"POST",headers:n,data:new URLSearchParams((0,BT.removeUndefinedValuesInObject)(i)),responseType:"json"};FT.AuthClient.setMethodName(o,"exchangeToken"),this.applyClientAuthenticationOptions(o);try{let a=await this.transporter.request(o),u=a.data;return u.res=a,u}catch(a){throw a instanceof qT.GaxiosError&&a.response?(0,Uf.getErrorFromOAuthErrorResponse)(a.response.data,a):a}}};Ci.StsCredentials=pa});var Wt=H(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.BaseExternalAccountClient=je.CLOUD_RESOURCE_MANAGER=je.EXTERNAL_ACCOUNT_TYPE=je.EXPIRATION_TIME_OFFSET=void 0;var HT=Me(),VT=J("stream"),ha=$e(),$T=Si(),Gf=ut(),XT=Cs(),JT="urn:ietf:params:oauth:grant-type:token-exchange",WT="urn:ietf:params:oauth:token-type:access_token",ma="https://www.googleapis.com/auth/cloud-platform",KT=3600;je.EXPIRATION_TIME_OFFSET=300*1e3;je.EXTERNAL_ACCOUNT_TYPE="external_account";je.CLOUD_RESOURCE_MANAGER="https://cloudresourcemanager.googleapis.com/v1/projects/";var YT="//iam\\.googleapis\\.com/locations/[^/]+/workforcePools/[^/]+/providers/.+",zT="https://sts.{universeDomain}/v1/token",ga=class t extends ha.AuthClient{scopes;projectNumber;audience;subjectTokenType;stsCredential;clientAuth;credentialSourceType;cachedAccessToken;serviceAccountImpersonationUrl;serviceAccountImpersonationLifetime;workforcePoolUserProject;configLifetimeRequested;tokenUrl;cloudResourceManagerURL;supplierContext;#e=null;constructor(e){super(e);let n=(0,Gf.originalOrCamelOptions)(e),r=n.get("type");if(r&&r!==je.EXTERNAL_ACCOUNT_TYPE)throw new Error(`Expected "${je.EXTERNAL_ACCOUNT_TYPE}" type but received "${e.type}"`);let i=n.get("client_id"),o=n.get("client_secret");this.tokenUrl=n.get("token_url")??zT.replace("{universeDomain}",this.universeDomain);let a=n.get("subject_token_type"),u=n.get("workforce_pool_user_project"),c=n.get("service_account_impersonation_url"),d=n.get("service_account_impersonation"),f=(0,Gf.originalOrCamelOptions)(d).get("token_lifetime_seconds");this.cloudResourceManagerURL=new URL(n.get("cloud_resource_manager_url")||`https://cloudresourcemanager.${this.universeDomain}/v1/projects/`),i&&(this.clientAuth={confidentialClientType:"basic",clientId:i,clientSecret:o}),this.stsCredential=new $T.StsCredentials({tokenExchangeEndpoint:this.tokenUrl,clientAuthentication:this.clientAuth}),this.scopes=n.get("scopes")||[ma],this.cachedAccessToken=null,this.audience=n.get("audience"),this.subjectTokenType=a,this.workforcePoolUserProject=u;let p=new RegExp(YT);if(this.workforcePoolUserProject&&!this.audience.match(p))throw new Error("workforcePoolUserProject should not be set for non-workforce pool credentials.");this.serviceAccountImpersonationUrl=c,this.serviceAccountImpersonationLifetime=f,this.serviceAccountImpersonationLifetime?this.configLifetimeRequested=!0:(this.configLifetimeRequested=!1,this.serviceAccountImpersonationLifetime=KT),this.projectNumber=this.getProjectNumber(this.audience),this.supplierContext={audience:this.audience,subjectTokenType:this.subjectTokenType,transporter:this.transporter}}getServiceAccountEmail(){if(this.serviceAccountImpersonationUrl){if(this.serviceAccountImpersonationUrl.length>256)throw new RangeError(`URL is too long: ${this.serviceAccountImpersonationUrl}`);return/serviceAccounts\/(?<email>[^:]+):generateAccessToken$/.exec(this.serviceAccountImpersonationUrl)?.groups?.email||null}return null}setCredentials(e){super.setCredentials(e),this.cachedAccessToken=e}async getAccessToken(){return(!this.cachedAccessToken||this.isExpired(this.cachedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedAccessToken.access_token,res:this.cachedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),n=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(n)}request(e,n){if(n)this.requestAsync(e).then(r=>n(null,r),r=>n(r,r.response));else return this.requestAsync(e)}async getProjectId(){let e=this.projectNumber||this.workforcePoolUserProject;if(this.projectId)return this.projectId;if(e){let n=await this.getRequestHeaders(),r={...t.RETRY_CONFIG,headers:n,url:`${this.cloudResourceManagerURL.toString()}${e}`,responseType:"json"};ha.AuthClient.setMethodName(r,"getProjectId");let i=await this.transporter.request(r);return this.projectId=i.data.projectId,this.projectId}return null}async requestAsync(e,n=!1){let r;try{let i=await this.getRequestHeaders();e.headers=HT.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,i),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let a=o.status,u=o.config.data instanceof VT.Readable;if(!n&&(a===401||a===403)&&!u&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw i}return r}async refreshAccessTokenAsync(){this.#e=this.#e||this.#t();try{return await this.#e}finally{this.#e=null}}async#t(){let e=await this.retrieveSubjectToken(),n={grantType:JT,audience:this.audience,requestedTokenType:WT,subjectToken:e,subjectTokenType:this.subjectTokenType,scope:this.serviceAccountImpersonationUrl?[ma]:this.getScopesArray()},r=!this.clientAuth&&this.workforcePoolUserProject?{userProject:this.workforcePoolUserProject}:void 0,i=new Headers({"x-goog-api-client":this.getMetricsHeaderValue()}),o=await this.stsCredential.exchangeToken(n,i,r);return this.serviceAccountImpersonationUrl?this.cachedAccessToken=await this.getImpersonatedAccessToken(o.access_token):o.expires_in?this.cachedAccessToken={access_token:o.access_token,expiry_date:new Date().getTime()+o.expires_in*1e3,res:o.res}:this.cachedAccessToken={access_token:o.access_token,res:o.res},this.credentials={},Object.assign(this.credentials,this.cachedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedAccessToken.expiry_date,access_token:this.cachedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedAccessToken}getProjectNumber(e){let n=e.match(/\/projects\/([^/]+)/);return n?n[1]:null}async getImpersonatedAccessToken(e){let n={...t.RETRY_CONFIG,url:this.serviceAccountImpersonationUrl,method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},data:{scope:this.getScopesArray(),lifetime:this.serviceAccountImpersonationLifetime+"s"},responseType:"json"};ha.AuthClient.setMethodName(n,"getImpersonatedAccessToken");let r=await this.transporter.request(n),i=r.data;return{access_token:i.accessToken,expiry_date:new Date(i.expireTime).getTime(),res:r}}isExpired(e){let n=new Date().getTime();return e.expiry_date?n>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}getScopesArray(){return typeof this.scopes=="string"?[this.scopes]:this.scopes||[ma]}getMetricsHeaderValue(){let e=process.version.replace(/^v/,""),n=this.serviceAccountImpersonationUrl!==void 0,r=this.credentialSourceType?this.credentialSourceType:"unknown";return`gl-node/${e} auth/${XT.pkg.version} google-byoid-sdk source/${r} sa-impersonation/${n} config-lifetime/${this.configLifetimeRequested}`}getTokenUrl(){return this.tokenUrl}};je.BaseExternalAccountClient=ga});var Lf=H(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.FileSubjectTokenSupplier=void 0;var ya=J("util"),Ea=J("fs"),QT=(0,ya.promisify)(Ea.readFile??(()=>{})),ZT=(0,ya.promisify)(Ea.realpath??(()=>{})),jT=(0,ya.promisify)(Ea.lstat??(()=>{})),_a=class{filePath;formatType;subjectTokenFieldName;constructor(e){this.filePath=e.filePath,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName}async getSubjectToken(){let e=this.filePath;try{if(e=await ZT(e),!(await jT(e)).isFile())throw new Error}catch(i){throw i instanceof Error&&(i.message=`The file at ${e} does not exist, or it is not a file. ${i.message}`),i}let n,r=await QT(e,{encoding:"utf8"});if(this.formatType==="text"?n=r:this.formatType==="json"&&this.subjectTokenFieldName&&(n=JSON.parse(r)[this.subjectTokenFieldName]),!n)throw new Error("Unable to parse the subject_token from the credential_source file");return n}};Ii.FileSubjectTokenSupplier=_a});var Of=H(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.UrlSubjectTokenSupplier=void 0;var e0=$e(),va=class{url;headers;formatType;subjectTokenFieldName;additionalGaxiosOptions;constructor(e){this.url=e.url,this.formatType=e.formatType,this.subjectTokenFieldName=e.subjectTokenFieldName,this.headers=e.headers,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getSubjectToken(e){let n={...this.additionalGaxiosOptions,url:this.url,method:"GET",headers:this.headers,responseType:this.formatType};e0.AuthClient.setMethodName(n,"getSubjectToken");let r;if(this.formatType==="text"?r=(await e.transporter.request(n)).data:this.formatType==="json"&&this.subjectTokenFieldName&&(r=(await e.transporter.request(n)).data[this.subjectTokenFieldName]),!r)throw new Error("Unable to parse the subject_token from the credential_source URL");return r}};wi.UrlSubjectTokenSupplier=va});var qf=H(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.CertificateSubjectTokenSupplier=Xe.InvalidConfigurationError=Xe.CertificateSourceUnavailableError=Xe.CERTIFICATE_CONFIGURATION_ENV_VARIABLE=void 0;var Ri=ut(),Pi=J("fs"),Ni=J("crypto"),t0=J("https");Xe.CERTIFICATE_CONFIGURATION_ENV_VARIABLE="GOOGLE_API_CERTIFICATE_CONFIG";var wt=class extends Error{constructor(e){super(e),this.name="CertificateSourceUnavailableError"}};Xe.CertificateSourceUnavailableError=wt;var et=class extends Error{constructor(e){super(e),this.name="InvalidConfigurationError"}};Xe.InvalidConfigurationError=et;var Ta=class{certificateConfigPath;trustChainPath;cert;key;constructor(e){if(!e.useDefaultCertificateConfig&&!e.certificateConfigLocation)throw new et("Either `useDefaultCertificateConfig` must be true or a `certificateConfigLocation` must be provided.");if(e.useDefaultCertificateConfig&&e.certificateConfigLocation)throw new et("Both `useDefaultCertificateConfig` and `certificateConfigLocation` cannot be provided.");this.trustChainPath=e.trustChainPath,this.certificateConfigPath=e.certificateConfigLocation??""}async createMtlsHttpsAgent(){if(!this.key||!this.cert)throw new et("Cannot create mTLS Agent with missing certificate or key");return new t0.Agent({key:this.key,cert:this.cert})}async getSubjectToken(){this.certificateConfigPath=await this.#e();let{certPath:e,keyPath:n}=await this.#t();return{cert:this.cert,key:this.key}=await this.#n(e,n),await this.#r(this.cert)}async#e(){let e=this.certificateConfigPath;if(e){if(await(0,Ri.isValidFile)(e))return e;throw new wt(`Provided certificate config path is invalid: ${e}`)}let n=process.env[Xe.CERTIFICATE_CONFIGURATION_ENV_VARIABLE];if(n){if(await(0,Ri.isValidFile)(n))return n;throw new wt(`Path from environment variable "${Xe.CERTIFICATE_CONFIGURATION_ENV_VARIABLE}" is invalid: ${n}`)}let r=(0,Ri.getWellKnownCertificateConfigFileLocation)();if(await(0,Ri.isValidFile)(r))return r;throw new wt(`Could not find certificate configuration file. Searched override path, the "${Xe.CERTIFICATE_CONFIGURATION_ENV_VARIABLE}" env var, and the gcloud path (${r}).`)}async#t(){let e=this.certificateConfigPath,n;try{n=await Pi.promises.readFile(e,"utf8")}catch{throw new wt(`Failed to read certificate config file at: ${e}`)}try{let r=JSON.parse(n),i=r?.cert_configs?.workload?.cert_path,o=r?.cert_configs?.workload?.key_path;if(!i||!o)throw new et(`Certificate config file (${e}) is missing required "cert_path" or "key_path" in the workload config.`);return{certPath:i,keyPath:o}}catch(r){throw r instanceof et?r:new et(`Failed to parse certificate config from ${e}: ${r.message}`)}}async#n(e,n){let r,i;try{r=await Pi.promises.readFile(e),new Ni.X509Certificate(r)}catch(o){let a=o instanceof Error?o.message:String(o);throw new wt(`Failed to read certificate file at ${e}: ${a}`)}try{i=await Pi.promises.readFile(n),(0,Ni.createPrivateKey)(i)}catch(o){let a=o instanceof Error?o.message:String(o);throw new wt(`Failed to read private key file at ${n}: ${a}`)}return{cert:r,key:i}}async#r(e){let n=new Ni.X509Certificate(e);if(!this.trustChainPath)return JSON.stringify([n.raw.toString("base64")]);try{let o=((await Pi.promises.readFile(this.trustChainPath,"utf8")).match(/-----BEGIN CERTIFICATE-----[^-]+-----END CERTIFICATE-----/g)??[]).map((c,d)=>{try{return new Ni.X509Certificate(c)}catch(f){let p=f instanceof Error?f.message:String(f);throw new et(`Failed to parse certificate at index ${d} in trust chain file ${this.trustChainPath}: ${p}`)}}),a=o.findIndex(c=>n.raw.equals(c.raw)),u;if(a===-1)u=[n,...o];else if(a===0)u=o;else throw new et(`Leaf certificate exists in the trust chain but is not the first entry (found at index ${a}).`);return JSON.stringify(u.map(c=>c.raw.toString("base64")))}catch(r){if(r instanceof et)throw r;let i=r instanceof Error?r.message:String(r);throw new wt(`Failed to process certificate chain from ${this.trustChainPath}: ${i}`)}}};Xe.CertificateSubjectTokenSupplier=Ta});var Sa=H(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.IdentityPoolClient=void 0;var n0=Wt(),Aa=ut(),r0=Lf(),i0=Of(),Ff=qf(),o0=Si(),Bf=Me(),Ca=class t extends n0.BaseExternalAccountClient{subjectTokenSupplier;constructor(e){super(e);let n=(0,Aa.originalOrCamelOptions)(e),r=n.get("credential_source"),i=n.get("subject_token_supplier");if(!r&&!i)throw new Error("A credential source or subject token supplier must be specified.");if(r&&i)throw new Error("Only one of credential source or subject token supplier can be specified.");if(i)this.subjectTokenSupplier=i,this.credentialSourceType="programmatic";else{let o=(0,Aa.originalOrCamelOptions)(r),a=(0,Aa.originalOrCamelOptions)(o.get("format")),u=a.get("type")||"text",c=a.get("subject_token_field_name");if(u!=="json"&&u!=="text")throw new Error(`Invalid credential_source format "${u}"`);if(u==="json"&&!c)throw new Error("Missing subject_token_field_name for JSON credential_source format");let d=o.get("file"),f=o.get("url"),p=o.get("certificate"),h=o.get("headers");if(d&&f||f&&p||d&&p)throw new Error('No valid Identity Pool "credential_source" provided, must be either file, url, or certificate.');if(d)this.credentialSourceType="file",this.subjectTokenSupplier=new r0.FileSubjectTokenSupplier({filePath:d,formatType:u,subjectTokenFieldName:c});else if(f)this.credentialSourceType="url",this.subjectTokenSupplier=new i0.UrlSubjectTokenSupplier({url:f,formatType:u,subjectTokenFieldName:c,headers:h,additionalGaxiosOptions:t.RETRY_CONFIG});else if(p){this.credentialSourceType="certificate";let g=new Ff.CertificateSubjectTokenSupplier({useDefaultCertificateConfig:p.use_default_certificate_config,certificateConfigLocation:p.certificate_config_location,trustChainPath:p.trust_chain_path});this.subjectTokenSupplier=g}else throw new Error('No valid Identity Pool "credential_source" provided, must be either file, url, or certificate.')}}async retrieveSubjectToken(){let e=await this.subjectTokenSupplier.getSubjectToken(this.supplierContext);if(this.subjectTokenSupplier instanceof Ff.CertificateSubjectTokenSupplier){let n=await this.subjectTokenSupplier.createMtlsHttpsAgent();this.stsCredential=new o0.StsCredentials({tokenExchangeEndpoint:this.getTokenUrl(),clientAuthentication:this.clientAuth,transporter:new Bf.Gaxios({agent:n})}),this.transporter=new Bf.Gaxios({...this.transporter.defaults||{},agent:n})}return e}};xi.IdentityPoolClient=Ca});var wa=H(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.AwsRequestSigner=void 0;var ki=Me(),Vf=fr(),Hf="AWS4-HMAC-SHA256",s0="aws4_request",Ia=class{getCredentials;region;crypto;constructor(e,n){this.getCredentials=e,this.region=n,this.crypto=(0,Vf.createCrypto)()}async getRequestOptions(e){if(!e.url)throw new RangeError('"url" is required in "amzOptions"');let n=typeof e.data=="object"?JSON.stringify(e.data):e.data,r=e.url,i=e.method||"GET",o=e.body||n,a=e.headers,u=await this.getCredentials(),c=new URL(r);if(typeof o!="string"&&o!==void 0)throw new TypeError(`'requestPayload' is expected to be a string if provided. Got: ${o}`);let d=await l0({crypto:this.crypto,host:c.host,canonicalUri:c.pathname,canonicalQuerystring:c.search.slice(1),method:i,region:this.region,securityCredentials:u,requestPayload:o,additionalAmzHeaders:a}),f=ki.Gaxios.mergeHeaders(d.amzDate?{"x-amz-date":d.amzDate}:{},{authorization:d.authorizationHeader,host:c.host},a||{});u.token&&ki.Gaxios.mergeHeaders(f,{"x-amz-security-token":u.token});let p={url:r,method:i,headers:f};return o!==void 0&&(p.body=o),p}};Di.AwsRequestSigner=Ia;async function Tr(t,e,n){return await t.signWithHmacSha256(e,n)}async function a0(t,e,n,r,i){let o=await Tr(t,`AWS4${e}`,n),a=await Tr(t,o,r),u=await Tr(t,a,i);return await Tr(t,u,"aws4_request")}async function l0(t){let e=ki.Gaxios.mergeHeaders(t.additionalAmzHeaders),n=t.requestPayload||"",r=t.host.split(".")[0],i=new Date,o=i.toISOString().replace(/[-:]/g,"").replace(/\.[0-9]+/,""),a=i.toISOString().replace(/[-]/g,"").replace(/T.*/,"");t.securityCredentials.token&&e.set("x-amz-security-token",t.securityCredentials.token);let u=ki.Gaxios.mergeHeaders({host:t.host},e.has("date")?{}:{"x-amz-date":o},e),c="",d=[...u.keys()].sort();d.forEach(A=>{c+=`${A}:${u.get(A)}
16
+ `});let f=d.join(";"),p=await t.crypto.sha256DigestHex(n),h=`${t.method.toUpperCase()}
17
+ ${t.canonicalUri}
18
+ ${t.canonicalQuerystring}
19
+ ${c}
20
+ ${f}
21
+ ${p}`,g=`${a}/${t.region}/${r}/${s0}`,_=`${Hf}
22
+ ${o}
23
+ ${g}
24
+ `+await t.crypto.sha256DigestHex(h),m=await a0(t.crypto,t.securityCredentials.secretAccessKey,a,t.region,r),E=await Tr(t.crypto,m,_),y=`${Hf} Credential=${t.securityCredentials.accessKeyId}/${g}, SignedHeaders=${f}, Signature=${(0,Vf.fromArrayBufferToHex)(E)}`;return{amzDate:e.has("date")?void 0:o,authorizationHeader:y,canonicalQuerystring:t.canonicalQuerystring}}});var $f=H(bi=>{"use strict";Object.defineProperty(bi,"__esModule",{value:!0});bi.DefaultAwsSecurityCredentialsSupplier=void 0;var Mi=$e(),Ra=class{regionUrl;securityCredentialsUrl;imdsV2SessionTokenUrl;additionalGaxiosOptions;constructor(e){this.regionUrl=e.regionUrl,this.securityCredentialsUrl=e.securityCredentialsUrl,this.imdsV2SessionTokenUrl=e.imdsV2SessionTokenUrl,this.additionalGaxiosOptions=e.additionalGaxiosOptions}async getAwsRegion(e){if(this.#r)return this.#r;let n=new Headers;if(!this.#r&&this.imdsV2SessionTokenUrl&&n.set("x-aws-ec2-metadata-token",await this.#e(e.transporter)),!this.regionUrl)throw new RangeError('Unable to determine AWS region due to missing "options.credential_source.region_url"');let r={...this.additionalGaxiosOptions,url:this.regionUrl,method:"GET",responseType:"text",headers:n};Mi.AuthClient.setMethodName(r,"getAwsRegion");let i=await e.transporter.request(r);return i.data.substr(0,i.data.length-1)}async getAwsSecurityCredentials(e){if(this.#i)return this.#i;let n=new Headers;this.imdsV2SessionTokenUrl&&n.set("x-aws-ec2-metadata-token",await this.#e(e.transporter));let r=await this.#t(n,e.transporter),i=await this.#n(r,n,e.transporter);return{accessKeyId:i.AccessKeyId,secretAccessKey:i.SecretAccessKey,token:i.Token}}async#e(e){let n={...this.additionalGaxiosOptions,url:this.imdsV2SessionTokenUrl,method:"PUT",responseType:"text",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"300"}};return Mi.AuthClient.setMethodName(n,"#getImdsV2SessionToken"),(await e.request(n)).data}async#t(e,n){if(!this.securityCredentialsUrl)throw new Error('Unable to determine AWS role name due to missing "options.credential_source.url"');let r={...this.additionalGaxiosOptions,url:this.securityCredentialsUrl,method:"GET",responseType:"text",headers:e};return Mi.AuthClient.setMethodName(r,"#getAwsRoleName"),(await n.request(r)).data}async#n(e,n,r){let i={...this.additionalGaxiosOptions,url:`${this.securityCredentialsUrl}/${e}`,headers:n,responseType:"json"};return Mi.AuthClient.setMethodName(i,"#retrieveAwsSecurityCredentials"),(await r.request(i)).data}get#r(){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||null}get#i(){return process.env.AWS_ACCESS_KEY_ID&&process.env.AWS_SECRET_ACCESS_KEY?{accessKeyId:process.env.AWS_ACCESS_KEY_ID,secretAccessKey:process.env.AWS_SECRET_ACCESS_KEY,token:process.env.AWS_SESSION_TOKEN}:null}};bi.DefaultAwsSecurityCredentialsSupplier=Ra});var Na=H(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.AwsClient=void 0;var u0=wa(),c0=Wt(),d0=$f(),Xf=ut(),f0=Me(),Pa=class t extends c0.BaseExternalAccountClient{environmentId;awsSecurityCredentialsSupplier;regionalCredVerificationUrl;awsRequestSigner;region;static#e="https://sts.{region}.amazonaws.com?Action=GetCallerIdentity&Version=2011-06-15";static AWS_EC2_METADATA_IPV4_ADDRESS="169.254.169.254";static AWS_EC2_METADATA_IPV6_ADDRESS="fd00:ec2::254";constructor(e){super(e);let n=(0,Xf.originalOrCamelOptions)(e),r=n.get("credential_source"),i=n.get("aws_security_credentials_supplier");if(!r&&!i)throw new Error("A credential source or AWS security credentials supplier must be specified.");if(r&&i)throw new Error("Only one of credential source or AWS security credentials supplier can be specified.");if(i)this.awsSecurityCredentialsSupplier=i,this.regionalCredVerificationUrl=t.#e,this.credentialSourceType="programmatic";else{let o=(0,Xf.originalOrCamelOptions)(r);this.environmentId=o.get("environment_id");let a=o.get("region_url"),u=o.get("url"),c=o.get("imdsv2_session_token_url");this.awsSecurityCredentialsSupplier=new d0.DefaultAwsSecurityCredentialsSupplier({regionUrl:a,securityCredentialsUrl:u,imdsV2SessionTokenUrl:c}),this.regionalCredVerificationUrl=o.get("regional_cred_verification_url"),this.credentialSourceType="aws",this.validateEnvironmentId()}this.awsRequestSigner=null,this.region=""}validateEnvironmentId(){let e=this.environmentId?.match(/^(aws)(\d+)$/);if(!e||!this.regionalCredVerificationUrl)throw new Error('No valid AWS "credential_source" provided');if(parseInt(e[2],10)!==1)throw new Error(`aws version "${e[2]}" is not supported in the current build.`)}async retrieveSubjectToken(){this.awsRequestSigner||(this.region=await this.awsSecurityCredentialsSupplier.getAwsRegion(this.supplierContext),this.awsRequestSigner=new u0.AwsRequestSigner(async()=>this.awsSecurityCredentialsSupplier.getAwsSecurityCredentials(this.supplierContext),this.region));let e=await this.awsRequestSigner.getRequestOptions({...t.RETRY_CONFIG,url:this.regionalCredVerificationUrl.replace("{region}",this.region),method:"POST"}),n=[];return f0.Gaxios.mergeHeaders({"x-goog-cloud-target-resource":this.audience},e.headers).forEach((i,o)=>n.push({key:o,value:i})),encodeURIComponent(JSON.stringify({url:e.url,method:e.method,headers:n}))}};Ui.AwsClient=Pa});var ba=H(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.InvalidSubjectTokenError=we.InvalidMessageFieldError=we.InvalidCodeFieldError=we.InvalidTokenTypeFieldError=we.InvalidExpirationTimeFieldError=we.InvalidSuccessFieldError=we.InvalidVersionFieldError=we.ExecutableResponseError=we.ExecutableResponse=void 0;var Gi="urn:ietf:params:oauth:token-type:saml2",xa="urn:ietf:params:oauth:token-type:id_token",ka="urn:ietf:params:oauth:token-type:jwt",Da=class{version;success;expirationTime;tokenType;errorCode;errorMessage;subjectToken;constructor(e){if(!e.version)throw new Li("Executable response must contain a 'version' field.");if(e.success===void 0)throw new Oi("Executable response must contain a 'success' field.");if(this.version=e.version,this.success=e.success,this.success){if(this.expirationTime=e.expiration_time,this.tokenType=e.token_type,this.tokenType!==Gi&&this.tokenType!==xa&&this.tokenType!==ka)throw new qi(`Executable response must contain a 'token_type' field when successful and it must be one of ${xa}, ${ka}, or ${Gi}.`);if(this.tokenType===Gi){if(!e.saml_response)throw new Ar(`Executable response must contain a 'saml_response' field when token_type=${Gi}.`);this.subjectToken=e.saml_response}else{if(!e.id_token)throw new Ar(`Executable response must contain a 'id_token' field when token_type=${xa} or ${ka}.`);this.subjectToken=e.id_token}}else{if(!e.code)throw new Fi("Executable response must contain a 'code' field when unsuccessful.");if(!e.message)throw new Bi("Executable response must contain a 'message' field when unsuccessful.");this.errorCode=e.code,this.errorMessage=e.message}}isValid(){return!this.isExpired()&&this.success}isExpired(){return this.expirationTime!==void 0&&this.expirationTime<Math.round(Date.now()/1e3)}};we.ExecutableResponse=Da;var Rt=class extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype)}};we.ExecutableResponseError=Rt;var Li=class extends Rt{};we.InvalidVersionFieldError=Li;var Oi=class extends Rt{};we.InvalidSuccessFieldError=Oi;var Ma=class extends Rt{};we.InvalidExpirationTimeFieldError=Ma;var qi=class extends Rt{};we.InvalidTokenTypeFieldError=qi;var Fi=class extends Rt{};we.InvalidCodeFieldError=Fi;var Bi=class extends Rt{};we.InvalidMessageFieldError=Bi;var Ar=class extends Rt{};we.InvalidSubjectTokenError=Ar});var La=H(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.PluggableAuthHandler=Gn.ExecutableError=void 0;var fn=ba(),p0=J("child_process"),Ua=J("fs"),Hi=class extends Error{code;constructor(e,n){super(`The executable failed with exit code: ${n} and error message: ${e}.`),this.code=n,Object.setPrototypeOf(this,new.target.prototype)}};Gn.ExecutableError=Hi;var Ga=class t{commandComponents;timeoutMillis;outputFile;constructor(e){if(!e.command)throw new Error("No command provided.");if(this.commandComponents=t.parseCommand(e.command),this.timeoutMillis=e.timeoutMillis,!this.timeoutMillis)throw new Error("No timeoutMillis provided.");this.outputFile=e.outputFile}retrieveResponseFromExecutable(e){return new Promise((n,r)=>{let i=p0.spawn(this.commandComponents[0],this.commandComponents.slice(1),{env:{...process.env,...Object.fromEntries(e)}}),o="";i.stdout.on("data",u=>{o+=u}),i.stderr.on("data",u=>{o+=u});let a=setTimeout(()=>(i.removeAllListeners(),i.kill(),r(new Error("The executable failed to finish within the timeout specified."))),this.timeoutMillis);i.on("close",u=>{if(clearTimeout(a),u===0)try{let c=JSON.parse(o),d=new fn.ExecutableResponse(c);return n(d)}catch(c){return c instanceof fn.ExecutableResponseError?r(c):r(new fn.ExecutableResponseError(`The executable returned an invalid response: ${o}`))}else return r(new Hi(o,u.toString()))})})}async retrieveCachedResponse(){if(!this.outputFile||this.outputFile.length===0)return;let e;try{e=await Ua.promises.realpath(this.outputFile)}catch{return}if(!(await Ua.promises.lstat(e)).isFile())return;let n=await Ua.promises.readFile(e,{encoding:"utf8"});if(n!=="")try{let r=JSON.parse(n);return new fn.ExecutableResponse(r).isValid()?new fn.ExecutableResponse(r):void 0}catch(r){throw r instanceof fn.ExecutableResponseError?r:new fn.ExecutableResponseError(`The output file contained an invalid response: ${n}`)}}static parseCommand(e){let n=e.match(/(?:[^\s"]+|"[^"]*")+/g);if(!n)throw new Error(`Provided command: "${e}" could not be parsed.`);for(let r=0;r<n.length;r++)n[r][0]==='"'&&n[r].slice(-1)==='"'&&(n[r]=n[r].slice(1,-1));return n}};Gn.PluggableAuthHandler=Ga});var qa=H(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.PluggableAuthClient=Ln.ExecutableError=void 0;var h0=Wt(),m0=ba(),Jf=La(),g0=La();Object.defineProperty(Ln,"ExecutableError",{enumerable:!0,get:function(){return g0.ExecutableError}});var _0=30*1e3,Wf=5*1e3,Kf=120*1e3,y0="GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES",Yf=1,Oa=class extends h0.BaseExternalAccountClient{command;timeoutMillis;outputFile;handler;constructor(e){if(super(e),!e.credential_source.executable)throw new Error('No valid Pluggable Auth "credential_source" provided.');if(this.command=e.credential_source.executable.command,!this.command)throw new Error('No valid Pluggable Auth "credential_source" provided.');if(e.credential_source.executable.timeout_millis===void 0)this.timeoutMillis=_0;else if(this.timeoutMillis=e.credential_source.executable.timeout_millis,this.timeoutMillis<Wf||this.timeoutMillis>Kf)throw new Error(`Timeout must be between ${Wf} and ${Kf} milliseconds.`);this.outputFile=e.credential_source.executable.output_file,this.handler=new Jf.PluggableAuthHandler({command:this.command,timeoutMillis:this.timeoutMillis,outputFile:this.outputFile}),this.credentialSourceType="executable"}async retrieveSubjectToken(){if(process.env[y0]!=="1")throw new Error("Pluggable Auth executables need to be explicitly allowed to run by setting the GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES environment Variable to 1.");let e;if(this.outputFile&&(e=await this.handler.retrieveCachedResponse()),!e){let n=new Map;n.set("GOOGLE_EXTERNAL_ACCOUNT_AUDIENCE",this.audience),n.set("GOOGLE_EXTERNAL_ACCOUNT_TOKEN_TYPE",this.subjectTokenType),n.set("GOOGLE_EXTERNAL_ACCOUNT_INTERACTIVE","0"),this.outputFile&&n.set("GOOGLE_EXTERNAL_ACCOUNT_OUTPUT_FILE",this.outputFile);let r=this.getServiceAccountEmail();r&&n.set("GOOGLE_EXTERNAL_ACCOUNT_IMPERSONATED_EMAIL",r),e=await this.handler.retrieveResponseFromExecutable(n)}if(e.version>Yf)throw new Error(`Version of executable is not currently supported, maximum supported version is ${Yf}.`);if(!e.success)throw new Jf.ExecutableError(e.errorMessage,e.errorCode);if(this.outputFile&&!e.expirationTime)throw new m0.InvalidExpirationTimeFieldError("The executable response must contain the `expiration_time` field for successful responses when an output_file has been specified in the configuration.");if(e.isExpired())throw new Error("Executable response is expired.");return e.subjectToken}};Ln.PluggableAuthClient=Oa});var Ba=H(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.ExternalAccountClient=void 0;var E0=Wt(),v0=Sa(),T0=Na(),A0=qa(),Fa=class{constructor(){throw new Error("ExternalAccountClients should be initialized via: ExternalAccountClient.fromJSON(), directly via explicit constructors, eg. new AwsClient(options), new IdentityPoolClient(options), newPluggableAuthClientOptions, or via new GoogleAuth(options).getClient()")}static fromJSON(e){return e&&e.type===E0.EXTERNAL_ACCOUNT_TYPE?e.credential_source?.environment_id?new T0.AwsClient(e):e.credential_source?.executable?new A0.PluggableAuthClient(e):new v0.IdentityPoolClient(e):null}};Vi.ExternalAccountClient=Fa});var $a=H(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.ExternalAccountAuthorizedUserClient=On.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE=void 0;var Qf=$e(),zf=fa(),Zf=Me(),C0=J("stream"),S0=Wt();On.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE="external_account_authorized_user";var I0="https://sts.{universeDomain}/v1/oauthtoken",Ha=class t extends zf.OAuthClientAuthHandler{#e;constructor(e){super(e),this.#e=e.tokenRefreshEndpoint}async refreshToken(e,n){let r={...t.RETRY_CONFIG,url:this.#e,method:"POST",headers:n,data:new URLSearchParams({grant_type:"refresh_token",refresh_token:e}),responseType:"json"};Qf.AuthClient.setMethodName(r,"refreshToken"),this.applyClientAuthenticationOptions(r);try{let i=await this.transporter.request(r),o=i.data;return o.res=i,o}catch(i){throw i instanceof Zf.GaxiosError&&i.response?(0,zf.getErrorFromOAuthErrorResponse)(i.response.data,i):i}}},Va=class extends Qf.AuthClient{cachedAccessToken;externalAccountAuthorizedUserHandler;refreshToken;constructor(e){super(e),e.universe_domain&&(this.universeDomain=e.universe_domain),this.refreshToken=e.refresh_token;let n={confidentialClientType:"basic",clientId:e.client_id,clientSecret:e.client_secret};this.externalAccountAuthorizedUserHandler=new Ha({tokenRefreshEndpoint:e.token_url??I0.replace("{universeDomain}",this.universeDomain),transporter:this.transporter,clientAuthentication:n}),this.cachedAccessToken=null,this.quotaProjectId=e.quota_project_id,typeof e?.eagerRefreshThresholdMillis!="number"?this.eagerRefreshThresholdMillis=S0.EXPIRATION_TIME_OFFSET:this.eagerRefreshThresholdMillis=e.eagerRefreshThresholdMillis,this.forceRefreshOnFailure=!!e?.forceRefreshOnFailure}async getAccessToken(){return(!this.cachedAccessToken||this.isExpired(this.cachedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedAccessToken.access_token,res:this.cachedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),n=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(n)}request(e,n){if(n)this.requestAsync(e).then(r=>n(null,r),r=>n(r,r.response));else return this.requestAsync(e)}async requestAsync(e,n=!1){let r;try{let i=await this.getRequestHeaders();e.headers=Zf.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,i),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let a=o.status,u=o.config.data instanceof C0.Readable;if(!n&&(a===401||a===403)&&!u&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw i}return r}async refreshAccessTokenAsync(){let e=await this.externalAccountAuthorizedUserHandler.refreshToken(this.refreshToken);return this.cachedAccessToken={access_token:e.access_token,expiry_date:new Date().getTime()+e.expires_in*1e3,res:e.res},e.refresh_token!==void 0&&(this.refreshToken=e.refresh_token),this.cachedAccessToken}isExpired(e){let n=new Date().getTime();return e.expiry_date?n>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};On.ExternalAccountAuthorizedUserClient=Va});var Ja=H(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.GdchClient=Kt.GDCH_SERVICE_ACCOUNT_TYPE=void 0;var w0=J("crypto"),R0=J("fs"),P0=J("https"),N0=$t(),x0=3600;Kt.GDCH_SERVICE_ACCOUNT_TYPE="gdch_service_account";var Xa=class t extends N0.OAuth2Client{projectId;privateKeyId;privateKey;serviceIdentityName;tokenServerUri;caCertPath;apiAudience;lifetime;gdchOptions;caAgentPromise;cachedCaCertPath;lastCaCertReadTime=0;CA_CERT_TTL_MS=300*1e3;constructor(e={}){super(e),this.gdchOptions=e,this.projectId=e.projectId||void 0,this.privateKeyId=e.privateKeyId,this.privateKey=e.privateKey,this.serviceIdentityName=e.serviceIdentityName,this.tokenServerUri=e.tokenServerUri,this.caCertPath=e.caCertPath,this.apiAudience=e.apiAudience,this.lifetime=e.lifetime||x0,this.credentials={refresh_token:"gdch-placeholder",expiry_date:1}}createWithGdchAudience(e){if(!e)throw new Error("Audience cannot be null or empty for GDCH service account credentials.");return new t({...this.gdchOptions,projectId:this.projectId,privateKeyId:this.privateKeyId,privateKey:this.privateKey,serviceIdentityName:this.serviceIdentityName,tokenServerUri:this.tokenServerUri,caCertPath:this.caCertPath,lifetime:this.lifetime,apiAudience:e})}fromJSON(e){if(!e)throw new Error("Must pass in a JSON object containing the GDCH credentials settings.");if(e.type!==Kt.GDCH_SERVICE_ACCOUNT_TYPE)throw new Error(`The incoming JSON object does not have the "${Kt.GDCH_SERVICE_ACCOUNT_TYPE}" type`);if(e.format_version!=="1")throw new Error("Only format version 1 is supported.");if(!e.project)throw new Error("The incoming JSON object does not contain a project field");if(!e.private_key_id)throw new Error("The incoming JSON object does not contain a private_key_id field");if(!e.private_key)throw new Error("The incoming JSON object does not contain a private_key field");if(!e.name)throw new Error("The incoming JSON object does not contain a name field");if(!e.token_uri)throw new Error("The incoming JSON object does not contain a token_uri field");this.projectId=e.project,this.privateKeyId=e.private_key_id,this.privateKey=e.private_key,this.serviceIdentityName=e.name,this.tokenServerUri=e.token_uri,this.caCertPath=e.ca_cert_path,this.gdchOptions={...this.gdchOptions,projectId:e.project,privateKeyId:e.private_key_id,privateKey:e.private_key,serviceIdentityName:e.name,tokenServerUri:e.token_uri,caCertPath:e.ca_cert_path}}async refreshTokenNoCache(){if(!this.apiAudience)throw new Error("Audience cannot be null or empty for GDCH service account credentials. Specify the audience by calling createWithGdchAudience.");if(!this.privateKey)throw new Error("Private key is not configured for GDCH credentials.");if(!this.privateKeyId)throw new Error("Private key ID is not configured for GDCH credentials.");if(!this.projectId)throw new Error("Project is not configured for GDCH credentials.");if(!this.serviceIdentityName)throw new Error("Service identity name is not configured for GDCH credentials.");if(!this.tokenServerUri)throw new Error("Token server URI is not configured for GDCH credentials.");let e=this.createAssertion(),n={audience:this.apiAudience,grant_type:"urn:ietf:params:oauth:token-type:token-exchange",requested_token_type:"urn:ietf:params:oauth:token-type:access_token",subject_token:e,subject_token_type:"urn:k8s:params:oauth:token-type:serviceaccount"},r={url:this.tokenServerUri,method:"POST",headers:{"Content-Type":"application/json"},data:n,responseType:"json",timeout:1e4,retry:!0,retryConfig:{httpMethodsToRetry:["POST"],statusCodesToRetry:[[500,599]],noResponseRetries:3}};this.caCertPath&&(r.agent=await this.getCaAgent());try{let i=await this.transporter.request(r),o=i.data;if(!o.access_token)throw new Error("Token response did not contain an access_token.");if(!o.expires_in)throw new Error("Token response did not contain an expires_in field.");let a={access_token:o.access_token,token_type:"STS-Bearer",expiry_date:Date.now()+o.expires_in*1e3};return this.emit("tokens",a),{res:i,tokens:a}}catch(i){if(i&&i.config&&i.config.data)try{if(typeof i.config.data=="string"){let o=JSON.parse(i.config.data);o.subject_token&&(o.subject_token="***REDACTED***",i.config.data=JSON.stringify(o))}else typeof i.config.data=="object"&&i.config.data.subject_token&&(i.config.data.subject_token="***REDACTED***")}catch{}throw i instanceof Error&&(i.message=`Error getting access token for GDCH service account: ${i.message}, iss: ${this.serviceIdentityName}`),i}}createAssertion(){let e={alg:"ES256",typ:"JWT",kid:this.privateKeyId},n=`system:serviceaccount:${this.projectId}:${this.serviceIdentityName}`,r=Math.floor(Date.now()/1e3),i={iss:n,sub:n,iat:r,exp:r+this.lifetime,aud:this.tokenServerUri},o=this.base64UrlEncode(JSON.stringify(e)),a=this.base64UrlEncode(JSON.stringify(i)),u=`${o}.${a}`,c=w0.sign("sha256",Buffer.from(u),{key:this.privateKey,dsaEncoding:"ieee-p1363"}),d=this.base64UrlEncode(c);return`${u}.${d}`}async requestAsync(e,n=!1){if(this.caCertPath&&!e.agent){let r=(e.url||"").toString();!r.includes("googleapis.com")&&!r.includes("google.com")&&(e.agent=await this.getCaAgent())}return super.requestAsync(e,n)}getCaAgent(){if(!this.caCertPath){this.caAgentPromise=void 0,this.cachedCaCertPath=void 0,this.lastCaCertReadTime=0;return}let e=Date.now(),n=e-this.lastCaCertReadTime>this.CA_CERT_TTL_MS;if(this.caAgentPromise&&this.caCertPath===this.cachedCaCertPath&&!n)return this.caAgentPromise;this.cachedCaCertPath=this.caCertPath,this.lastCaCertReadTime=e;let r=this.caCertPath;return this.caAgentPromise=(async()=>{try{let i=await R0.promises.readFile(r);return new P0.Agent({ca:i})}catch(i){throw this.cachedCaCertPath===r&&(this.caAgentPromise=void 0,this.cachedCaCertPath=void 0,this.lastCaCertReadTime=0),i instanceof Error&&(i.message=`Error reading certificate file from CA cert path, value '${r}': ${i.message}`),i}})(),this.caAgentPromise}toJSON(){return{...this,privateKey:this.privateKey?"***REDACTED***":void 0,_clientSecret:this._clientSecret?"***REDACTED***":void 0,apiKey:this.apiKey?"***REDACTED***":void 0,gdchOptions:this.gdchOptions?{...this.gdchOptions,privateKey:this.gdchOptions.privateKey?"***REDACTED***":void 0,clientSecret:this.gdchOptions.clientSecret?"***REDACTED***":void 0,client_secret:this.gdchOptions.client_secret?"***REDACTED***":void 0,apiKey:this.gdchOptions.apiKey?"***REDACTED***":void 0,credentials:this.gdchOptions.credentials?{...this.gdchOptions.credentials,access_token:this.gdchOptions.credentials.access_token?"***REDACTED***":void 0,refresh_token:this.gdchOptions.credentials.refresh_token?"***REDACTED***":void 0}:void 0}:void 0,credentials:{...this.credentials,access_token:this.credentials?.access_token?"***REDACTED***":void 0,refresh_token:this.credentials?.refresh_token?"***REDACTED***":void 0}}}[Symbol.for("nodejs.util.inspect.custom")](){return this.toJSON()}base64UrlEncode(e){return(typeof e=="string"?Buffer.from(e):e).toString("base64url")}};Kt.GdchClient=Xa});var np=H(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.GoogleAuth=pt.GoogleAuthExceptionMessages=void 0;var k0=J("child_process"),Cr=J("fs"),D0=Me(),Sr=dr(),M0=J("os"),$i=J("path"),b0=fr(),U0=Ds(),G0=bs(),L0=Us(),qn=sa(),jf=la(),Fn=ca(),O0=Ba(),Ir=Wt(),Wa=$e(),ep=$a(),Ka=Ja(),tp=ut();pt.GoogleAuthExceptionMessages={API_KEY_WITH_CREDENTIALS:"API Keys and Credentials are mutually exclusive authentication methods and cannot be used together.",NO_PROJECT_ID_FOUND:`Unable to detect a Project Id in the current environment.
25
+ To learn more about authentication and Google APIs, visit:
26
+ https://cloud.google.com/docs/authentication/getting-started`,NO_CREDENTIALS_FOUND:`Unable to find credentials in current environment.
27
+ To learn more about authentication and Google APIs, visit:
28
+ https://cloud.google.com/docs/authentication/getting-started`,NO_ADC_FOUND:"Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started for more information.",NO_UNIVERSE_DOMAIN_FOUND:`Unable to detect a Universe Domain in the current environment.
29
+ To learn more about Universe Domain retrieval, visit:
30
+ https://cloud.google.com/compute/docs/metadata/predefined-metadata-keys`};var Ya=class{checkIsGCE=void 0;useJWTAccessWithScope;defaultServicePath;get isGCE(){return this.checkIsGCE}_findProjectIdPromise;_cachedProjectId;jsonContent=null;apiKey;cachedCredential=null;#e=null;defaultScopes;keyFilename;scopes;clientOptions={};constructor(e={}){if(this._cachedProjectId=e.projectId||null,this.cachedCredential=e.authClient||null,this.keyFilename=e.keyFilename||e.keyFile,this.scopes=e.scopes,this.clientOptions=e.clientOptions||{},this.jsonContent=e.credentials||null,this.apiKey=e.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw new RangeError(pt.GoogleAuthExceptionMessages.API_KEY_WITH_CREDENTIALS);e.universeDomain&&(this.clientOptions.universeDomain=e.universeDomain)}setGapicJWTValues(e){e.defaultServicePath=this.defaultServicePath,e.useJWTAccessWithScope=this.useJWTAccessWithScope,e.defaultScopes=this.defaultScopes}getProjectId(e){if(e)this.getProjectIdAsync().then(n=>e(null,n),e);else return this.getProjectIdAsync()}async getProjectIdOptional(){try{return await this.getProjectId()}catch(e){if(e instanceof Error&&e.message===pt.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;throw e}}async findAndCacheProjectId(){let e=null;if(e||=await this.getProductionProjectId(),e||=await this.getFileProjectId(),e||=await this.getDefaultServiceProjectId(),e||=await this.getGCEProjectId(),e||=await this.getExternalAccountClientProjectId(),e)return this._cachedProjectId=e,e;throw new Error(pt.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){return this._cachedProjectId?this._cachedProjectId:(this._findProjectIdPromise||(this._findProjectIdPromise=this.findAndCacheProjectId()),this._findProjectIdPromise)}async getUniverseDomainFromMetadataServer(){let e;try{e=await Sr.universe("universe-domain"),e||=Wa.DEFAULT_UNIVERSE}catch(n){if(n&&n?.response?.status===404)e=Wa.DEFAULT_UNIVERSE;else throw n}return e}async getUniverseDomain(){let e=(0,tp.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{e??=(await this.getClient()).universeDomain}catch{e??=Wa.DEFAULT_UNIVERSE}return e}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(e={},n){let r;if(typeof e=="function"?n=e:r=e,n)this.getApplicationDefaultAsync(r).then(i=>n(null,i.credential,i.projectId),n);else return this.getApplicationDefaultAsync(r)}async getApplicationDefaultAsync(e={}){if(this.cachedCredential)return await this.#t(this.cachedCredential,null);let n;if(n=await this._tryGetApplicationCredentialsFromEnvironmentVariable(e),n)return n instanceof qn.JWT?n.scopes=this.scopes:n instanceof Ir.BaseExternalAccountClient&&(n.scopes=this.getAnyScopes()),await this.#t(n);if(n=await this._tryGetApplicationCredentialsFromWellKnownFile(e),n)return n instanceof qn.JWT?n.scopes=this.scopes:n instanceof Ir.BaseExternalAccountClient&&(n.scopes=this.getAnyScopes()),await this.#t(n);if(await this._checkIsGCE())return e.scopes=this.getAnyScopes(),await this.#t(new U0.Compute(e));throw new Error(pt.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async#t(e,n=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let r=await this.getProjectIdOptional();return n&&(e.quotaProjectId=n),this.cachedCredential=e,{credential:e,projectId:r}}async _checkIsGCE(){return this.checkIsGCE===void 0&&(this.checkIsGCE=Sr.getGCPResidency()||await Sr.isAvailable()),this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(e){let n=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!n||n.length===0)return null;try{return await this._getApplicationCredentialsFromFilePath(n,e)}catch(r){throw r instanceof Error&&(r.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${r.message}`),r}}async _tryGetApplicationCredentialsFromWellKnownFile(e){let n=process.env.CLOUDSDK_CONFIG;if(!n)if(this._isWindows())process.env.APPDATA&&(n=$i.join(process.env.APPDATA,"gcloud"));else{let o=process.env.HOME;o&&(n=$i.join(o,".config","gcloud"))}if(!n)return null;let r=$i.join(n,"application_default_credentials.json");return Cr.existsSync(r)?await this._getApplicationCredentialsFromFilePath(r,e):null}async _getApplicationCredentialsFromFilePath(e,n={}){if(!e||e.length===0)throw new Error("The file path is invalid.");try{if(e=Cr.realpathSync(e),!Cr.lstatSync(e).isFile())throw new Error}catch(i){throw i instanceof Error&&(i.message=`The file at ${e} does not exist, or it is not a file. ${i.message}`),i}let r=Cr.createReadStream(e);return this.fromStream(r,n)}fromImpersonatedJSON(e){if(!e)throw new Error("Must pass in a JSON object containing an impersonated refresh token");if(e.type!==Fn.IMPERSONATED_ACCOUNT_TYPE)throw new Error(`The incoming JSON object does not have the "${Fn.IMPERSONATED_ACCOUNT_TYPE}" type`);if(!e.source_credentials)throw new Error("The incoming JSON object does not contain a source_credentials field");if(!e.service_account_impersonation_url)throw new Error("The incoming JSON object does not contain a service_account_impersonation_url field");let n=this.fromJSON(e.source_credentials);if(e.service_account_impersonation_url?.length>256)throw new RangeError(`Target principal is too long: ${e.service_account_impersonation_url}`);let r=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(e.service_account_impersonation_url)?.groups?.target;if(!r)throw new RangeError(`Cannot extract target principal from ${e.service_account_impersonation_url}`);let i=(this.scopes||e.scopes||this.defaultScopes)??[];return new Fn.Impersonated({...e,sourceClient:n,targetPrincipal:r,targetScopes:Array.isArray(i)?i:[i]})}fromJSON(e,n={}){let r,i=(0,tp.originalOrCamelOptions)(n).get("universe_domain");return e.type===jf.USER_REFRESH_ACCOUNT_TYPE?(r=new jf.UserRefreshClient(n),r.fromJSON(e)):e.type===Fn.IMPERSONATED_ACCOUNT_TYPE?r=this.fromImpersonatedJSON(e):e.type===Ir.EXTERNAL_ACCOUNT_TYPE?(r=O0.ExternalAccountClient.fromJSON({...e,...n}),r.scopes=this.getAnyScopes()):e.type===ep.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE?r=new ep.ExternalAccountAuthorizedUserClient({...e,...n}):e.type===Ka.GDCH_SERVICE_ACCOUNT_TYPE?(r=new Ka.GdchClient(n),r.fromJSON(e)):(n.scopes=this.scopes,r=new qn.JWT(n),this.setGapicJWTValues(r),r.fromJSON(e)),i&&(r.universeDomain=i),r}_cacheClientFromJSON(e,n){let r=this.fromJSON(e,n);return this.jsonContent=e,this.cachedCredential=r,r}fromStream(e,n={},r){let i={};if(typeof n=="function"?r=n:i=n,r)this.fromStreamAsync(e,i).then(o=>r(null,o),r);else return this.fromStreamAsync(e,i)}fromStreamAsync(e,n){return new Promise((r,i)=>{if(!e)throw new Error("Must pass in a stream containing the Google auth settings.");let o=[];e.setEncoding("utf8").on("error",i).on("data",a=>o.push(a)).on("end",()=>{try{try{let a=JSON.parse(o.join("")),u=this._cacheClientFromJSON(a,n);return r(u)}catch(a){if(!this.keyFilename)throw a;let u=new qn.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=u,this.setGapicJWTValues(u),r(u)}}catch(a){return i(a)}})})}fromAPIKey(e,n={}){return new qn.JWT({...n,apiKey:e})}_isWindows(){let e=M0.platform();return!!(e&&e.length>=3&&e.substring(0,3).toLowerCase()==="win")}async getDefaultServiceProjectId(){return new Promise(e=>{(0,k0.exec)("gcloud config config-helper --format json",(n,r)=>{if(!n&&r)try{let i=JSON.parse(r).configuration.properties.core.project;e(i);return}catch{}e(null)})})}getProductionProjectId(){return process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project}async getFileProjectId(){if(this.cachedCredential)return this.cachedCredential.projectId;if(this.keyFilename){let n=await this.getClient();if(n&&n.projectId)return n.projectId}let e=await this._tryGetApplicationCredentialsFromEnvironmentVariable();return e?e.projectId:null}async getExternalAccountClientProjectId(){return!this.jsonContent||this.jsonContent.type!==Ir.EXTERNAL_ACCOUNT_TYPE?null:await(await this.getClient()).getProjectId()}async getGCEProjectId(){try{return await Sr.project("project-id")}catch{return null}}getCredentials(e){if(e)this.getCredentialsAsync().then(n=>e(null,n),e);else return this.getCredentialsAsync()}async getCredentialsAsync(){let e=await this.getClient();if(e instanceof Fn.Impersonated)return{client_email:e.getTargetPrincipal()};if(e instanceof Ir.BaseExternalAccountClient){let n=e.getServiceAccountEmail();if(n)return{client_email:n,universe_domain:e.universeDomain}}if(this.jsonContent)return{client_email:this.jsonContent.client_email,private_key:this.jsonContent.private_key,universe_domain:this.jsonContent.universe_domain};if(await this._checkIsGCE()){let[n,r]=await Promise.all([Sr.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:n,universe_domain:r}}throw new Error(pt.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;this.#e=this.#e||this.#n();try{let e=await this.#e;if(e instanceof Ka.GdchClient&&!e.apiAudience){let n=this.clientOptions,r=n.apiEndpoint||n.servicePath;if(r){let o=`${r.startsWith("http")?"":"https://"}${r}`.replace(/\/+$/,""),a=e.createWithGdchAudience(o);return this.cachedCredential=a,a}}return e}finally{this.#e=null}}async#n(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);if(this.keyFilename){let e=$i.resolve(this.keyFilename),n=Cr.createReadStream(e);return await this.fromStreamAsync(n,this.clientOptions)}else if(this.apiKey){let e=await this.fromAPIKey(this.apiKey,this.clientOptions);e.scopes=this.scopes;let{credential:n}=await this.#t(e);return n}else{let{credential:e}=await this.getApplicationDefaultAsync(this.clientOptions);return e}}async getIdTokenClient(e){let n=await this.getClient();if(!("fetchIdToken"in n))throw new Error("Cannot fetch ID token in this environment, use GCE or set the GOOGLE_APPLICATION_CREDENTIALS environment variable to a service account credentials JSON file.");return new G0.IdTokenClient({targetAudience:e,idTokenProvider:n})}async getAccessToken(){return(await(await this.getClient()).getAccessToken()).token}async getRequestHeaders(e){return(await this.getClient()).getRequestHeaders(e)}async authorizeRequest(e={}){let n=e.url,i=await(await this.getClient()).getRequestHeaders(n);return e.headers=D0.Gaxios.mergeHeaders(e.headers,i),e}async fetch(...e){return(await this.getClient()).fetch(...e)}async request(e){return(await this.getClient()).request(e)}getEnv(){return(0,L0.getEnv)()}async sign(e,n){let r=await this.getClient(),i=await this.getUniverseDomain();if(n=n||`https://iamcredentials.${i}/v1/projects/-/serviceAccounts/`,r instanceof Fn.Impersonated)return(await r.sign(e)).signedBlob;let o=(0,b0.createCrypto)();if(r instanceof qn.JWT&&r.key)return await o.sign(r.key,e);let a=await this.getCredentials();if(!a.client_email)throw new Error("Cannot sign data without `client_email`.");return this.signBlob(o,a.client_email,e,n)}async signBlob(e,n,r,i){let o=new URL(i+`${n}:signBlob`);return(await this.request({method:"POST",url:o.href,data:{payload:e.encodeBase64StringUtf8(r)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}};pt.GoogleAuth=Ya});var rp=H(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.IAMAuth=void 0;var za=class{selector;token;constructor(e,n){this.selector=e,this.token=n,this.selector=e,this.token=n}getRequestHeaders(){return{"x-goog-iam-authority-selector":this.selector,"x-goog-iam-authorization-token":this.token}}};Xi.IAMAuth=za});var ip=H(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.DownscopedClient=Pt.EXPIRATION_TIME_OFFSET=Pt.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;var q0=Me(),F0=J("stream"),Qa=$e(),B0=Si(),H0="urn:ietf:params:oauth:grant-type:token-exchange",V0="urn:ietf:params:oauth:token-type:access_token",$0="urn:ietf:params:oauth:token-type:access_token";Pt.MAX_ACCESS_BOUNDARY_RULES_COUNT=10;Pt.EXPIRATION_TIME_OFFSET=300*1e3;var Za=class extends Qa.AuthClient{authClient;credentialAccessBoundary;cachedDownscopedAccessToken;stsCredential;constructor(e,n={accessBoundary:{accessBoundaryRules:[]}}){if(super(e instanceof Qa.AuthClient?{}:e),e instanceof Qa.AuthClient?(this.authClient=e,this.credentialAccessBoundary=n):(this.authClient=e.authClient,this.credentialAccessBoundary=e.credentialAccessBoundary),this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length===0)throw new Error("At least one access boundary rule needs to be defined.");if(this.credentialAccessBoundary.accessBoundary.accessBoundaryRules.length>Pt.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw new Error(`The provided access boundary has more than ${Pt.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let r of this.credentialAccessBoundary.accessBoundary.accessBoundaryRules)if(r.availablePermissions.length===0)throw new Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new B0.StsCredentials({tokenExchangeEndpoint:`https://sts.${this.universeDomain}/v1/token`}),this.cachedDownscopedAccessToken=null}setCredentials(e){if(!e.expiry_date)throw new Error("The access token expiry_date field is missing in the provided credentials.");super.setCredentials(e),this.cachedDownscopedAccessToken=e}async getAccessToken(){return(!this.cachedDownscopedAccessToken||this.isExpired(this.cachedDownscopedAccessToken))&&await this.refreshAccessTokenAsync(),{token:this.cachedDownscopedAccessToken.access_token,expirationTime:this.cachedDownscopedAccessToken.expiry_date,res:this.cachedDownscopedAccessToken.res}}async getRequestHeaders(){let e=await this.getAccessToken(),n=new Headers({authorization:`Bearer ${e.token}`});return this.addSharedMetadataHeaders(n)}request(e,n){if(n)this.requestAsync(e).then(r=>n(null,r),r=>n(r,r.response));else return this.requestAsync(e)}async requestAsync(e,n=!1){let r;try{let i=await this.getRequestHeaders();e.headers=q0.Gaxios.mergeHeaders(e.headers),this.addUserProjectAndAuthHeaders(e.headers,i),r=await this.transporter.request(e)}catch(i){let o=i.response;if(o){let a=o.status,u=o.config.data instanceof F0.Readable;if(!n&&(a===401||a===403)&&!u&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(e,!0)}throw i}return r}async refreshAccessTokenAsync(){let e=(await this.authClient.getAccessToken()).token,n={grantType:H0,requestedTokenType:V0,subjectToken:e,subjectTokenType:$0},r=await this.stsCredential.exchangeToken(n,void 0,this.credentialAccessBoundary),i=this.authClient.credentials?.expiry_date||null,o=r.expires_in?new Date().getTime()+r.expires_in*1e3:i;return this.cachedDownscopedAccessToken={access_token:r.access_token,expiry_date:o,res:r.res},this.credentials={},Object.assign(this.credentials,this.cachedDownscopedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedDownscopedAccessToken.expiry_date,access_token:this.cachedDownscopedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedDownscopedAccessToken}isExpired(e){let n=new Date().getTime();return e.expiry_date?n>=e.expiry_date-this.eagerRefreshThresholdMillis:!1}};Pt.DownscopedClient=Za});var op=H(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.PassThroughClient=void 0;var X0=$e(),ja=class extends X0.AuthClient{async request(e){return this.transporter.request(e)}async getAccessToken(){return{}}async getRequestHeaders(){return new Headers}};Ji.PassThroughClient=ja});var dp=H(W=>{"use strict";var J0=W&&W.__createBinding||(Object.create?(function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}):(function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]})),W0=W&&W.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&J0(e,t,n)};Object.defineProperty(W,"__esModule",{value:!0});W.GoogleAuth=W.auth=W.GDCH_SERVICE_ACCOUNT_TYPE=W.GdchClient=W.PassThroughClient=W.ExternalAccountAuthorizedUserClient=W.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE=W.ExecutableError=W.PluggableAuthClient=W.DownscopedClient=W.BaseExternalAccountClient=W.ExternalAccountClient=W.IdentityPoolClient=W.AwsRequestSigner=W.AwsClient=W.UserRefreshClient=W.LoginTicket=W.ClientAuthentication=W.OAuth2Client=W.CodeChallengeMethod=W.Impersonated=W.JWT=W.JWTAccess=W.IdTokenClient=W.IAMAuth=W.GCPEnv=W.Compute=W.DEFAULT_UNIVERSE=W.AuthClient=W.gaxios=W.gcpMetadata=void 0;var sp=np();Object.defineProperty(W,"GoogleAuth",{enumerable:!0,get:function(){return sp.GoogleAuth}});W.gcpMetadata=dr();W.gaxios=Me();var ap=$e();Object.defineProperty(W,"AuthClient",{enumerable:!0,get:function(){return ap.AuthClient}});Object.defineProperty(W,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return ap.DEFAULT_UNIVERSE}});var K0=Ds();Object.defineProperty(W,"Compute",{enumerable:!0,get:function(){return K0.Compute}});var Y0=Us();Object.defineProperty(W,"GCPEnv",{enumerable:!0,get:function(){return Y0.GCPEnv}});var z0=rp();Object.defineProperty(W,"IAMAuth",{enumerable:!0,get:function(){return z0.IAMAuth}});var Q0=bs();Object.defineProperty(W,"IdTokenClient",{enumerable:!0,get:function(){return Q0.IdTokenClient}});var Z0=ia();Object.defineProperty(W,"JWTAccess",{enumerable:!0,get:function(){return Z0.JWTAccess}});var j0=sa();Object.defineProperty(W,"JWT",{enumerable:!0,get:function(){return j0.JWT}});var eA=ca();Object.defineProperty(W,"Impersonated",{enumerable:!0,get:function(){return eA.Impersonated}});var el=$t();Object.defineProperty(W,"CodeChallengeMethod",{enumerable:!0,get:function(){return el.CodeChallengeMethod}});Object.defineProperty(W,"OAuth2Client",{enumerable:!0,get:function(){return el.OAuth2Client}});Object.defineProperty(W,"ClientAuthentication",{enumerable:!0,get:function(){return el.ClientAuthentication}});var tA=Ps();Object.defineProperty(W,"LoginTicket",{enumerable:!0,get:function(){return tA.LoginTicket}});var nA=la();Object.defineProperty(W,"UserRefreshClient",{enumerable:!0,get:function(){return nA.UserRefreshClient}});var rA=Na();Object.defineProperty(W,"AwsClient",{enumerable:!0,get:function(){return rA.AwsClient}});var iA=wa();Object.defineProperty(W,"AwsRequestSigner",{enumerable:!0,get:function(){return iA.AwsRequestSigner}});var oA=Sa();Object.defineProperty(W,"IdentityPoolClient",{enumerable:!0,get:function(){return oA.IdentityPoolClient}});var sA=Ba();Object.defineProperty(W,"ExternalAccountClient",{enumerable:!0,get:function(){return sA.ExternalAccountClient}});var aA=Wt();Object.defineProperty(W,"BaseExternalAccountClient",{enumerable:!0,get:function(){return aA.BaseExternalAccountClient}});var lA=ip();Object.defineProperty(W,"DownscopedClient",{enumerable:!0,get:function(){return lA.DownscopedClient}});var lp=qa();Object.defineProperty(W,"PluggableAuthClient",{enumerable:!0,get:function(){return lp.PluggableAuthClient}});Object.defineProperty(W,"ExecutableError",{enumerable:!0,get:function(){return lp.ExecutableError}});var up=$a();Object.defineProperty(W,"EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE",{enumerable:!0,get:function(){return up.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE}});Object.defineProperty(W,"ExternalAccountAuthorizedUserClient",{enumerable:!0,get:function(){return up.ExternalAccountAuthorizedUserClient}});var uA=op();Object.defineProperty(W,"PassThroughClient",{enumerable:!0,get:function(){return uA.PassThroughClient}});var cp=Ja();Object.defineProperty(W,"GdchClient",{enumerable:!0,get:function(){return cp.GdchClient}});Object.defineProperty(W,"GDCH_SERVICE_ACCOUNT_TYPE",{enumerable:!0,get:function(){return cp.GDCH_SERVICE_ACCOUNT_TYPE}});W0(na(),W);var cA=new sp.GoogleAuth;W.auth=cA});var Ut=H((PM,hp)=>{"use strict";var fp=["nodebuffer","arraybuffer","fragments"],pp=typeof Blob<"u";pp&&fp.push("blob");hp.exports={BINARY_TYPES:fp,CLOSE_TIMEOUT:3e4,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:pp,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var wr=H((NM,Wi)=>{"use strict";var{EMPTY_BUFFER:dA}=Ut(),tl=Buffer[Symbol.species];function fA(t,e){if(t.length===0)return dA;if(t.length===1)return t[0];let n=Buffer.allocUnsafe(e),r=0;for(let i=0;i<t.length;i++){let o=t[i];n.set(o,r),r+=o.length}return r<e?new tl(n.buffer,n.byteOffset,r):n}function mp(t,e,n,r,i){for(let o=0;o<i;o++)n[r+o]=t[o]^e[o&3]}function gp(t,e){for(let n=0;n<t.length;n++)t[n]^=e[n&3]}function pA(t){return t.length===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.length)}function nl(t){if(nl.readOnly=!0,Buffer.isBuffer(t))return t;let e;return t instanceof ArrayBuffer?e=new tl(t):ArrayBuffer.isView(t)?e=new tl(t.buffer,t.byteOffset,t.byteLength):(e=Buffer.from(t),nl.readOnly=!1),e}Wi.exports={concat:fA,mask:mp,toArrayBuffer:pA,toBuffer:nl,unmask:gp};if(!process.env.WS_NO_BUFFER_UTIL)try{let t=J("bufferutil");Wi.exports.mask=function(e,n,r,i,o){o<48?mp(e,n,r,i,o):t.mask(e,n,r,i,o)},Wi.exports.unmask=function(e,n){e.length<32?gp(e,n):t.unmask(e,n)}}catch{}});var Ep=H((xM,yp)=>{"use strict";var _p=Symbol("kDone"),rl=Symbol("kRun"),il=class{constructor(e){this[_p]=()=>{this.pending--,this[rl]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[rl]()}[rl](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[_p])}}};yp.exports=il});var Vn=H((kM,Cp)=>{"use strict";var Rr=J("zlib"),vp=wr(),hA=Ep(),{kStatusCode:Tp}=Ut(),mA=Buffer[Symbol.species],gA=Buffer.from([0,0,255,255]),Yi=Symbol("permessage-deflate"),Gt=Symbol("total-length"),Bn=Symbol("callback"),Yt=Symbol("buffers"),Hn=Symbol("error"),Ki,ol=class{constructor(e){if(this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._maxPayload=this._options.maxPayload|0,this._isServer=!!this._options.isServer,this._deflate=null,this._inflate=null,this.params=null,!Ki){let n=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Ki=new hA(n)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[Bn];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let n=this._options,r=e.find(i=>!(n.serverNoContextTakeover===!1&&i.server_no_context_takeover||i.server_max_window_bits&&(n.serverMaxWindowBits===!1||typeof n.serverMaxWindowBits=="number"&&n.serverMaxWindowBits>i.server_max_window_bits)||typeof n.clientMaxWindowBits=="number"&&(typeof i.client_max_window_bits=="number"?n.clientMaxWindowBits>i.client_max_window_bits:!i.client_max_window_bits)));if(!r)throw new Error("None of the extension offers can be accepted");return n.serverNoContextTakeover&&(r.server_no_context_takeover=!0),n.clientNoContextTakeover&&(r.client_no_context_takeover=!0),typeof n.serverMaxWindowBits=="number"&&(r.server_max_window_bits=n.serverMaxWindowBits),typeof n.clientMaxWindowBits=="number"?r.client_max_window_bits=n.clientMaxWindowBits:(r.client_max_window_bits===!0||n.clientMaxWindowBits===!1)&&delete r.client_max_window_bits,r}acceptAsClient(e){let n=e[0];if(this._options.clientNoContextTakeover===!1&&n.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!n.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(n.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&n.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return n}normalizeParams(e){return e.forEach(n=>{Object.keys(n).forEach(r=>{let i=n[r];if(i.length>1)throw new Error(`Parameter "${r}" must have only a single value`);if(i=i[0],r==="client_max_window_bits"){if(i!==!0){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else if(r==="server_max_window_bits"){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(r==="client_no_context_takeover"||r==="server_no_context_takeover"){if(i!==!0)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else throw new Error(`Unknown parameter "${r}"`);n[r]=i})}),e}decompress(e,n,r){Ki.add(i=>{this._decompress(e,n,(o,a)=>{i(),r(o,a)})})}compress(e,n,r){Ki.add(i=>{this._compress(e,n,(o,a)=>{i(),r(o,a)})})}_decompress(e,n,r){let i=this._isServer?"client":"server";if(!this._inflate){let o=`${i}_max_window_bits`,a=typeof this.params[o]!="number"?Rr.Z_DEFAULT_WINDOWBITS:this.params[o];this._inflate=Rr.createInflateRaw({...this._options.zlibInflateOptions,windowBits:a}),this._inflate[Yi]=this,this._inflate[Gt]=0,this._inflate[Yt]=[],this._inflate.on("error",yA),this._inflate.on("data",Ap)}this._inflate[Bn]=r,this._inflate.write(e),n&&this._inflate.write(gA),this._inflate.flush(()=>{let o=this._inflate[Hn];if(o){this._inflate.close(),this._inflate=null,r(o);return}let a=vp.concat(this._inflate[Yt],this._inflate[Gt]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Gt]=0,this._inflate[Yt]=[],n&&this.params[`${i}_no_context_takeover`]&&this._inflate.reset()),r(null,a)})}_compress(e,n,r){let i=this._isServer?"server":"client";if(!this._deflate){let o=`${i}_max_window_bits`,a=typeof this.params[o]!="number"?Rr.Z_DEFAULT_WINDOWBITS:this.params[o];this._deflate=Rr.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:a}),this._deflate[Gt]=0,this._deflate[Yt]=[],this._deflate.on("data",_A)}this._deflate[Bn]=r,this._deflate.write(e),this._deflate.flush(Rr.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let o=vp.concat(this._deflate[Yt],this._deflate[Gt]);n&&(o=new mA(o.buffer,o.byteOffset,o.length-4)),this._deflate[Bn]=null,this._deflate[Gt]=0,this._deflate[Yt]=[],n&&this.params[`${i}_no_context_takeover`]&&this._deflate.reset(),r(null,o)})}};Cp.exports=ol;function _A(t){this[Yt].push(t),this[Gt]+=t.length}function Ap(t){if(this[Gt]+=t.length,this[Yi]._maxPayload<1||this[Gt]<=this[Yi]._maxPayload){this[Yt].push(t);return}this[Hn]=new RangeError("Max payload size exceeded"),this[Hn].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[Hn][Tp]=1009,this.removeListener("data",Ap),this.reset()}function yA(t){if(this[Yi]._inflate=null,this[Hn]){this[Bn](this[Hn]);return}t[Tp]=1007,this[Bn](t)}});var $n=H((DM,zi)=>{"use strict";var{isUtf8:Sp}=J("buffer"),{hasBlob:EA}=Ut(),vA=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function TA(t){return t>=1e3&&t<=1014&&t!==1004&&t!==1005&&t!==1006||t>=3e3&&t<=4999}function sl(t){let e=t.length,n=0;for(;n<e;)if((t[n]&128)===0)n++;else if((t[n]&224)===192){if(n+1===e||(t[n+1]&192)!==128||(t[n]&254)===192)return!1;n+=2}else if((t[n]&240)===224){if(n+2>=e||(t[n+1]&192)!==128||(t[n+2]&192)!==128||t[n]===224&&(t[n+1]&224)===128||t[n]===237&&(t[n+1]&224)===160)return!1;n+=3}else if((t[n]&248)===240){if(n+3>=e||(t[n+1]&192)!==128||(t[n+2]&192)!==128||(t[n+3]&192)!==128||t[n]===240&&(t[n+1]&240)===128||t[n]===244&&t[n+1]>143||t[n]>244)return!1;n+=4}else return!1;return!0}function AA(t){return EA&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&(t[Symbol.toStringTag]==="Blob"||t[Symbol.toStringTag]==="File")}zi.exports={isBlob:AA,isValidStatusCode:TA,isValidUTF8:sl,tokenChars:vA};if(Sp)zi.exports.isValidUTF8=function(t){return t.length<24?sl(t):Sp(t)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let t=J("utf-8-validate");zi.exports.isValidUTF8=function(e){return e.length<32?sl(e):t(e)}}catch{}});var dl=H((MM,kp)=>{"use strict";var{Writable:CA}=J("stream"),Ip=Vn(),{BINARY_TYPES:SA,EMPTY_BUFFER:wp,kStatusCode:IA,kWebSocket:wA}=Ut(),{concat:al,toArrayBuffer:RA,unmask:PA}=wr(),{isValidStatusCode:NA,isValidUTF8:Rp}=$n(),Qi=Buffer[Symbol.species],tt=0,Pp=1,Np=2,xp=3,ll=4,ul=5,Zi=6,cl=class extends CA{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||SA[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxBufferedChunks=e.maxBufferedChunks|0,this._maxFragments=e.maxFragments|0,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[wA]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._numFragments=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=tt}_write(e,n,r){if(this._opcode===8&&this._state==tt)return r();if(this._maxBufferedChunks>0&&this._buffers.length>=this._maxBufferedChunks){r(this.createError(RangeError,"Too many buffered chunks",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));return}this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(r)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let r=this._buffers[0];return this._buffers[0]=new Qi(r.buffer,r.byteOffset+e,r.length-e),new Qi(r.buffer,r.byteOffset,e)}let n=Buffer.allocUnsafe(e);do{let r=this._buffers[0],i=n.length-e;e>=r.length?n.set(this._buffers.shift(),i):(n.set(new Uint8Array(r.buffer,r.byteOffset,e),i),this._buffers[0]=new Qi(r.buffer,r.byteOffset+e,r.length-e)),e-=r.length}while(e>0);return n}startLoop(e){this._loop=!0;do switch(this._state){case tt:this.getInfo(e);break;case Pp:this.getPayloadLength16(e);break;case Np:this.getPayloadLength64(e);break;case xp:this.getMask();break;case ll:this.getData(e);break;case ul:case Zi:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<2){this._loop=!1;return}let n=this.consume(2);if((n[0]&48)!==0){let i=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(i);return}let r=(n[0]&64)===64;if(r&&!this._extensions[Ip.extensionName]){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._fin=(n[0]&128)===128,this._opcode=n[0]&15,this._payloadLength=n[1]&127,this._opcode===0){if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(!this._fragmented){let i=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let i=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");e(i);return}if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(i);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let i=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");e(i);return}}else{let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");e(i);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(n[1]&128)===128,this._isServer){if(!this._masked){let i=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");e(i);return}}else if(this._masked){let i=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");e(i);return}this._payloadLength===126?this._state=Pp:this._payloadLength===127?this._state=Np:this.haveLength(e)}getPayloadLength16(e){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(e)}getPayloadLength64(e){if(this._bufferedBytes<8){this._loop=!1;return}let n=this.consume(8),r=n.readUInt32BE(0);if(r>Math.pow(2,21)-1){let i=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");e(i);return}this._payloadLength=r*Math.pow(2,32)+n.readUInt32BE(4),this.haveLength(e)}haveLength(e){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)){let n=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");e(n);return}this._masked?this._state=xp:this._state=ll}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=ll}getData(e){let n=wp;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}n=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!==0&&PA(n,this._mask)}if(this._opcode>7){this.controlMessage(n,e);return}if(this._maxFragments>0&&++this._numFragments>this._maxFragments){let r=this.createError(RangeError,"Too many message fragments",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS");e(r);return}if(this._compressed){this._state=ul,this.decompress(n,e);return}n.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(n)),this.dataMessage(e)}decompress(e,n){this._extensions[Ip.extensionName].decompress(e,this._fin,(i,o)=>{if(i)return n(i);if(o.length){if(this._messageLength+=o.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let a=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");n(a);return}this._fragments.push(o)}this.dataMessage(n),this._state===tt&&this.startLoop(n)})}dataMessage(e){if(!this._fin){this._state=tt;return}let n=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._numFragments=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=al(r,n):this._binaryType==="arraybuffer"?i=RA(al(r,n)):this._binaryType==="blob"?i=new Blob(r):i=r,this._allowSynchronousEvents?(this.emit("message",i,!0),this._state=tt):(this._state=Zi,setImmediate(()=>{this.emit("message",i,!0),this._state=tt,this.startLoop(e)}))}else{let i=al(r,n);if(!this._skipUTF8Validation&&!Rp(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");e(o);return}this._state===ul||this._allowSynchronousEvents?(this.emit("message",i,!1),this._state=tt):(this._state=Zi,setImmediate(()=>{this.emit("message",i,!1),this._state=tt,this.startLoop(e)}))}}controlMessage(e,n){if(this._opcode===8){if(e.length===0)this._loop=!1,this.emit("conclude",1005,wp),this.end();else{let r=e.readUInt16BE(0);if(!NA(r)){let o=this.createError(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");n(o);return}let i=new Qi(e.buffer,e.byteOffset+2,e.length-2);if(!this._skipUTF8Validation&&!Rp(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");n(o);return}this._loop=!1,this.emit("conclude",r,i),this.end()}this._state=tt;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",e),this._state=tt):(this._state=Zi,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=tt,this.startLoop(n)}))}createError(e,n,r,i,o){this._loop=!1,this._errored=!0;let a=new e(r?`Invalid WebSocket frame: ${n}`:n);return Error.captureStackTrace(a,this.createError),a.code=o,a[IA]=i,a}};kp.exports=cl});var hl=H((UM,bp)=>{"use strict";var{Duplex:bM}=J("stream"),{randomFillSync:xA}=J("crypto"),{types:{isUint8Array:kA}}=J("util"),Dp=Vn(),{EMPTY_BUFFER:DA,kWebSocket:MA,NOOP:bA}=Ut(),{isBlob:Xn,isValidStatusCode:UA}=$n(),{mask:Mp,toBuffer:pn}=wr(),nt=Symbol("kByteLength"),GA=Buffer.alloc(4),ji=8*1024,hn,Jn=ji,ht=0,LA=1,OA=2,fl=class t{constructor(e,n,r){this._extensions=n||{},r&&(this._generateMask=r,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=ht,this.onerror=bA,this[MA]=void 0}static frame(e,n){let r,i=!1,o=2,a=!1;n.mask&&(r=n.maskBuffer||GA,n.generateMask?n.generateMask(r):(Jn===ji&&(hn===void 0&&(hn=Buffer.alloc(ji)),xA(hn,0,ji),Jn=0),r[0]=hn[Jn++],r[1]=hn[Jn++],r[2]=hn[Jn++],r[3]=hn[Jn++]),a=(r[0]|r[1]|r[2]|r[3])===0,o=6);let u;typeof e=="string"?(!n.mask||a)&&n[nt]!==void 0?u=n[nt]:(e=Buffer.from(e),u=e.length):(u=e.length,i=n.mask&&n.readOnly&&!a);let c=u;u>=65536?(o+=8,c=127):u>125&&(o+=2,c=126);let d=Buffer.allocUnsafe(i?u+o:o);return d[0]=n.fin?n.opcode|128:n.opcode,n.rsv1&&(d[0]|=64),d[1]=c,c===126?d.writeUInt16BE(u,2):c===127&&(d[2]=d[3]=0,d.writeUIntBE(u,4,6)),n.mask?(d[1]|=128,d[o-4]=r[0],d[o-3]=r[1],d[o-2]=r[2],d[o-1]=r[3],a?[d,e]:i?(Mp(e,r,d,o,u),[d]):(Mp(e,r,e,0,u),[d,e])):[d,e]}close(e,n,r,i){let o;if(e===void 0)o=DA;else{if(typeof e!="number"||!UA(e))throw new TypeError("First argument must be a valid error code number");if(n===void 0||!n.length)o=Buffer.allocUnsafe(2),o.writeUInt16BE(e,0);else{let u=Buffer.byteLength(n);if(u>123)throw new RangeError("The message must not be greater than 123 bytes");if(o=Buffer.allocUnsafe(2+u),o.writeUInt16BE(e,0),typeof n=="string")o.write(n,2);else if(kA(n))o.set(n,2);else throw new TypeError("Second argument must be a string or a Uint8Array")}}let a={[nt]:o.length,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._state!==ht?this.enqueue([this.dispatch,o,!1,a,i]):this.sendFrame(t.frame(o,a),i)}ping(e,n,r){let i,o;if(typeof e=="string"?(i=Buffer.byteLength(e),o=!1):Xn(e)?(i=e.size,o=!1):(e=pn(e),i=e.length,o=pn.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[nt]:i,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:9,readOnly:o,rsv1:!1};Xn(e)?this._state!==ht?this.enqueue([this.getBlobData,e,!1,a,r]):this.getBlobData(e,!1,a,r):this._state!==ht?this.enqueue([this.dispatch,e,!1,a,r]):this.sendFrame(t.frame(e,a),r)}pong(e,n,r){let i,o;if(typeof e=="string"?(i=Buffer.byteLength(e),o=!1):Xn(e)?(i=e.size,o=!1):(e=pn(e),i=e.length,o=pn.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[nt]:i,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:10,readOnly:o,rsv1:!1};Xn(e)?this._state!==ht?this.enqueue([this.getBlobData,e,!1,a,r]):this.getBlobData(e,!1,a,r):this._state!==ht?this.enqueue([this.dispatch,e,!1,a,r]):this.sendFrame(t.frame(e,a),r)}send(e,n,r){let i=this._extensions[Dp.extensionName],o=n.binary?2:1,a=n.compress,u,c;typeof e=="string"?(u=Buffer.byteLength(e),c=!1):Xn(e)?(u=e.size,c=!1):(e=pn(e),u=e.length,c=pn.readOnly),this._firstFragment?(this._firstFragment=!1,a&&i&&i.params[i._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(a=u>=i._threshold),this._compress=a):(a=!1,o=0),n.fin&&(this._firstFragment=!0);let d={[nt]:u,fin:n.fin,generateMask:this._generateMask,mask:n.mask,maskBuffer:this._maskBuffer,opcode:o,readOnly:c,rsv1:a};Xn(e)?this._state!==ht?this.enqueue([this.getBlobData,e,this._compress,d,r]):this.getBlobData(e,this._compress,d,r):this._state!==ht?this.enqueue([this.dispatch,e,this._compress,d,r]):this.dispatch(e,this._compress,d,r)}getBlobData(e,n,r,i){this._bufferedBytes+=r[nt],this._state=OA,e.arrayBuffer().then(o=>{if(this._socket.destroyed){let u=new Error("The socket was closed while the blob was being read");process.nextTick(pl,this,u,i);return}this._bufferedBytes-=r[nt];let a=pn(o);n?this.dispatch(a,n,r,i):(this._state=ht,this.sendFrame(t.frame(a,r),i),this.dequeue())}).catch(o=>{process.nextTick(qA,this,o,i)})}dispatch(e,n,r,i){if(!n){this.sendFrame(t.frame(e,r),i);return}let o=this._extensions[Dp.extensionName];this._bufferedBytes+=r[nt],this._state=LA,o.compress(e,r.fin,(a,u)=>{if(this._socket.destroyed){let c=new Error("The socket was closed while data was being compressed");pl(this,c,i);return}this._bufferedBytes-=r[nt],this._state=ht,r.readOnly=!1,this.sendFrame(t.frame(u,r),i),this.dequeue()})}dequeue(){for(;this._state===ht&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][nt],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][nt],this._queue.push(e)}sendFrame(e,n){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],n),this._socket.uncork()):this._socket.write(e[0],n)}};bp.exports=fl;function pl(t,e,n){typeof n=="function"&&n(e);for(let r=0;r<t._queue.length;r++){let i=t._queue[r],o=i[i.length-1];typeof o=="function"&&o(e)}}function qA(t,e,n){pl(t,e,n),t.onerror(e)}});var Vp=H((GM,Hp)=>{"use strict";var{kForOnEventAttribute:Pr,kListener:ml}=Ut(),Up=Symbol("kCode"),Gp=Symbol("kData"),Lp=Symbol("kError"),Op=Symbol("kMessage"),qp=Symbol("kReason"),Wn=Symbol("kTarget"),Fp=Symbol("kType"),Bp=Symbol("kWasClean"),Lt=class{constructor(e){this[Wn]=null,this[Fp]=e}get target(){return this[Wn]}get type(){return this[Fp]}};Object.defineProperty(Lt.prototype,"target",{enumerable:!0});Object.defineProperty(Lt.prototype,"type",{enumerable:!0});var mn=class extends Lt{constructor(e,n={}){super(e),this[Up]=n.code===void 0?0:n.code,this[qp]=n.reason===void 0?"":n.reason,this[Bp]=n.wasClean===void 0?!1:n.wasClean}get code(){return this[Up]}get reason(){return this[qp]}get wasClean(){return this[Bp]}};Object.defineProperty(mn.prototype,"code",{enumerable:!0});Object.defineProperty(mn.prototype,"reason",{enumerable:!0});Object.defineProperty(mn.prototype,"wasClean",{enumerable:!0});var Kn=class extends Lt{constructor(e,n={}){super(e),this[Lp]=n.error===void 0?null:n.error,this[Op]=n.message===void 0?"":n.message}get error(){return this[Lp]}get message(){return this[Op]}};Object.defineProperty(Kn.prototype,"error",{enumerable:!0});Object.defineProperty(Kn.prototype,"message",{enumerable:!0});var Nr=class extends Lt{constructor(e,n={}){super(e),this[Gp]=n.data===void 0?null:n.data}get data(){return this[Gp]}};Object.defineProperty(Nr.prototype,"data",{enumerable:!0});var FA={addEventListener(t,e,n={}){for(let i of this.listeners(t))if(!n[Pr]&&i[ml]===e&&!i[Pr])return;let r;if(t==="message")r=function(o,a){let u=new Nr("message",{data:a?o:o.toString()});u[Wn]=this,eo(e,this,u)};else if(t==="close")r=function(o,a){let u=new mn("close",{code:o,reason:a.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});u[Wn]=this,eo(e,this,u)};else if(t==="error")r=function(o){let a=new Kn("error",{error:o,message:o.message});a[Wn]=this,eo(e,this,a)};else if(t==="open")r=function(){let o=new Lt("open");o[Wn]=this,eo(e,this,o)};else return;r[Pr]=!!n[Pr],r[ml]=e,n.once?this.once(t,r):this.on(t,r)},removeEventListener(t,e){for(let n of this.listeners(t))if(n[ml]===e&&!n[Pr]){this.removeListener(t,n);break}}};Hp.exports={CloseEvent:mn,ErrorEvent:Kn,Event:Lt,EventTarget:FA,MessageEvent:Nr};function eo(t,e,n){typeof t=="object"&&t.handleEvent?t.handleEvent.call(t,n):t.call(e,n)}});var to=H((LM,$p)=>{"use strict";var{tokenChars:xr}=$n();function Nt(t,e,n){t[e]===void 0?t[e]=[n]:t[e].push(n)}function BA(t){let e=Object.create(null),n=Object.create(null),r=!1,i=!1,o=!1,a,u,c=-1,d=-1,f=-1,p=0;for(;p<t.length;p++)if(d=t.charCodeAt(p),a===void 0)if(f===-1&&xr[d]===1)c===-1&&(c=p);else if(p!==0&&(d===32||d===9))f===-1&&c!==-1&&(f=p);else if(d===59||d===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${p}`);f===-1&&(f=p);let g=t.slice(c,f);d===44?(Nt(e,g,n),n=Object.create(null)):a=g,c=f=-1}else throw new SyntaxError(`Unexpected character at index ${p}`);else if(u===void 0)if(f===-1&&xr[d]===1)c===-1&&(c=p);else if(d===32||d===9)f===-1&&c!==-1&&(f=p);else if(d===59||d===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${p}`);f===-1&&(f=p),Nt(n,t.slice(c,f),!0),d===44&&(Nt(e,a,n),n=Object.create(null),a=void 0),c=f=-1}else if(d===61&&c!==-1&&f===-1)u=t.slice(c,p),c=f=-1;else throw new SyntaxError(`Unexpected character at index ${p}`);else if(i){if(xr[d]!==1)throw new SyntaxError(`Unexpected character at index ${p}`);c===-1?c=p:r||(r=!0),i=!1}else if(o)if(xr[d]===1)c===-1&&(c=p);else if(d===34&&c!==-1)o=!1,f=p;else if(d===92)i=!0;else throw new SyntaxError(`Unexpected character at index ${p}`);else if(d===34&&t.charCodeAt(p-1)===61)o=!0;else if(f===-1&&xr[d]===1)c===-1&&(c=p);else if(c!==-1&&(d===32||d===9))f===-1&&(f=p);else if(d===59||d===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${p}`);f===-1&&(f=p);let g=t.slice(c,f);r&&(g=g.replace(/\\/g,""),r=!1),Nt(n,u,g),d===44&&(Nt(e,a,n),n=Object.create(null),a=void 0),u=void 0,c=f=-1}else throw new SyntaxError(`Unexpected character at index ${p}`);if(c===-1||o||d===32||d===9)throw new SyntaxError("Unexpected end of input");f===-1&&(f=p);let h=t.slice(c,f);return a===void 0?Nt(e,h,n):(u===void 0?Nt(n,h,!0):r?Nt(n,u,h.replace(/\\/g,"")):Nt(n,u,h),Nt(e,a,n)),e}function HA(t){return Object.keys(t).map(e=>{let n=t[e];return Array.isArray(n)||(n=[n]),n.map(r=>[e].concat(Object.keys(r).map(i=>{let o=r[i];return Array.isArray(o)||(o=[o]),o.map(a=>a===!0?i:`${i}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")}$p.exports={format:HA,parse:BA}});var oo=H((FM,nh)=>{"use strict";var VA=J("events"),$A=J("https"),XA=J("http"),Wp=J("net"),JA=J("tls"),{randomBytes:WA,createHash:KA}=J("crypto"),{Duplex:OM,Readable:qM}=J("stream"),{URL:gl}=J("url"),zt=Vn(),YA=dl(),zA=hl(),{isBlob:QA}=$n(),{BINARY_TYPES:Xp,CLOSE_TIMEOUT:ZA,EMPTY_BUFFER:no,GUID:jA,kForOnEventAttribute:_l,kListener:eC,kStatusCode:tC,kWebSocket:ke,NOOP:Kp}=Ut(),{EventTarget:{addEventListener:nC,removeEventListener:rC}}=Vp(),{format:iC,parse:oC}=to(),{toBuffer:sC}=wr(),Yp=Symbol("kAborted"),yl=[8,13],Ot=["CONNECTING","OPEN","CLOSING","CLOSED"],aC=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,Ae=class t extends VA{constructor(e,n,r){super(),this._binaryType=Xp[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=no,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=t.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,n===void 0?n=[]:Array.isArray(n)||(typeof n=="object"&&n!==null?(r=n,n=[]):n=[n]),zp(this,e,n,r)):(this._autoPong=r.autoPong,this._closeTimeout=r.closeTimeout,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(e){Xp.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,n,r){let i=new YA({allowSynchronousEvents:r.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxBufferedChunks:r.maxBufferedChunks,maxFragments:r.maxFragments,maxPayload:r.maxPayload,skipUTF8Validation:r.skipUTF8Validation}),o=new zA(e,this._extensions,r.generateMask);this._receiver=i,this._sender=o,this._socket=e,i[ke]=this,o[ke]=this,e[ke]=this,i.on("conclude",cC),i.on("drain",dC),i.on("error",fC),i.on("message",pC),i.on("ping",hC),i.on("pong",mC),o.onerror=gC,e.setTimeout&&e.setTimeout(0),e.setNoDelay&&e.setNoDelay(),n.length>0&&e.unshift(n),e.on("close",jp),e.on("data",io),e.on("end",eh),e.on("error",th),this._readyState=t.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[zt.extensionName]&&this._extensions[zt.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=t.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,n){if(this.readyState!==t.CLOSED){if(this.readyState===t.CONNECTING){Je(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===t.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=t.CLOSING,this._sender.close(e,n,!this._isServer,r=>{r||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),Zp(this)}}pause(){this.readyState===t.CONNECTING||this.readyState===t.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,n,r){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=n=void 0):typeof n=="function"&&(r=n,n=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){El(this,e,r);return}n===void 0&&(n=!this._isServer),this._sender.ping(e||no,n,r)}pong(e,n,r){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=n=void 0):typeof n=="function"&&(r=n,n=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){El(this,e,r);return}n===void 0&&(n=!this._isServer),this._sender.pong(e||no,n,r)}resume(){this.readyState===t.CONNECTING||this.readyState===t.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,n,r){if(this.readyState===t.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof n=="function"&&(r=n,n={}),typeof e=="number"&&(e=e.toString()),this.readyState!==t.OPEN){El(this,e,r);return}let i={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...n};this._extensions[zt.extensionName]||(i.compress=!1),this._sender.send(e||no,i,r)}terminate(){if(this.readyState!==t.CLOSED){if(this.readyState===t.CONNECTING){Je(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=t.CLOSING,this._socket.destroy())}}};Object.defineProperty(Ae,"CONNECTING",{enumerable:!0,value:Ot.indexOf("CONNECTING")});Object.defineProperty(Ae.prototype,"CONNECTING",{enumerable:!0,value:Ot.indexOf("CONNECTING")});Object.defineProperty(Ae,"OPEN",{enumerable:!0,value:Ot.indexOf("OPEN")});Object.defineProperty(Ae.prototype,"OPEN",{enumerable:!0,value:Ot.indexOf("OPEN")});Object.defineProperty(Ae,"CLOSING",{enumerable:!0,value:Ot.indexOf("CLOSING")});Object.defineProperty(Ae.prototype,"CLOSING",{enumerable:!0,value:Ot.indexOf("CLOSING")});Object.defineProperty(Ae,"CLOSED",{enumerable:!0,value:Ot.indexOf("CLOSED")});Object.defineProperty(Ae.prototype,"CLOSED",{enumerable:!0,value:Ot.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(t=>{Object.defineProperty(Ae.prototype,t,{enumerable:!0})});["open","error","close","message"].forEach(t=>{Object.defineProperty(Ae.prototype,`on${t}`,{enumerable:!0,get(){for(let e of this.listeners(t))if(e[_l])return e[eC];return null},set(e){for(let n of this.listeners(t))if(n[_l]){this.removeListener(t,n);break}typeof e=="function"&&this.addEventListener(t,e,{[_l]:!0})}})});Ae.prototype.addEventListener=nC;Ae.prototype.removeEventListener=rC;nh.exports=Ae;function zp(t,e,n,r){let i={allowSynchronousEvents:!0,autoPong:!0,closeTimeout:ZA,protocolVersion:yl[1],maxBufferedChunks:262144,maxFragments:16384,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...r,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(t._autoPong=i.autoPong,t._closeTimeout=i.closeTimeout,!yl.includes(i.protocolVersion))throw new RangeError(`Unsupported protocol version: ${i.protocolVersion} (supported versions: ${yl.join(", ")})`);let o;if(e instanceof gl)o=e;else try{o=new gl(e)}catch{throw new SyntaxError(`Invalid URL: ${e}`)}o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),t._url=o.href;let a=o.protocol==="wss:",u=o.protocol==="ws+unix:",c;if(o.protocol!=="ws:"&&!a&&!u?c=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`:u&&!o.pathname?c="The URL's pathname is empty":o.hash&&(c="The URL contains a fragment identifier"),c){let m=new SyntaxError(c);if(t._redirects===0)throw m;ro(t,m);return}let d=a?443:80,f=WA(16).toString("base64"),p=a?$A.request:XA.request,h=new Set,g;if(i.createConnection=i.createConnection||(a?uC:lC),i.defaultPort=i.defaultPort||d,i.port=o.port||d,i.host=o.hostname.startsWith("[")?o.hostname.slice(1,-1):o.hostname,i.headers={...i.headers,"Sec-WebSocket-Version":i.protocolVersion,"Sec-WebSocket-Key":f,Connection:"Upgrade",Upgrade:"websocket"},i.path=o.pathname+o.search,i.timeout=i.handshakeTimeout,i.perMessageDeflate&&(g=new zt({...i.perMessageDeflate,isServer:!1,maxPayload:i.maxPayload}),i.headers["Sec-WebSocket-Extensions"]=iC({[zt.extensionName]:g.offer()})),n.length){for(let m of n){if(typeof m!="string"||!aC.test(m)||h.has(m))throw new SyntaxError("An invalid or duplicated subprotocol was specified");h.add(m)}i.headers["Sec-WebSocket-Protocol"]=n.join(",")}if(i.origin&&(i.protocolVersion<13?i.headers["Sec-WebSocket-Origin"]=i.origin:i.headers.Origin=i.origin),(o.username||o.password)&&(i.auth=`${o.username}:${o.password}`),u){let m=i.path.split(":");i.socketPath=m[0],i.path=m[1]}let _;if(i.followRedirects){if(t._redirects===0){t._originalIpc=u,t._originalSecure=a,t._originalHostOrSocketPath=u?i.socketPath:o.host;let m=r&&r.headers;if(r={...r,headers:{}},m)for(let[E,y]of Object.entries(m))r.headers[E.toLowerCase()]=y}else if(t.listenerCount("redirect")===0){let m=u?t._originalIpc?i.socketPath===t._originalHostOrSocketPath:!1:t._originalIpc?!1:o.host===t._originalHostOrSocketPath;(!m||t._originalSecure&&!a)&&(delete i.headers.authorization,delete i.headers.cookie,m||delete i.headers.host,i.auth=void 0)}i.auth&&!r.headers.authorization&&(r.headers.authorization="Basic "+Buffer.from(i.auth).toString("base64")),_=t._req=p(i),t._redirects&&t.emit("redirect",t.url,_)}else _=t._req=p(i);i.timeout&&_.on("timeout",()=>{Je(t,_,"Opening handshake has timed out")}),_.on("error",m=>{_===null||_[Yp]||(_=t._req=null,ro(t,m))}),_.on("response",m=>{let E=m.headers.location,y=m.statusCode;if(E&&i.followRedirects&&y>=300&&y<400){if(++t._redirects>i.maxRedirects){Je(t,_,"Maximum redirects exceeded");return}_.abort();let A;try{A=new gl(E,e)}catch{let C=new SyntaxError(`Invalid URL: ${E}`);ro(t,C);return}zp(t,A,n,r)}else t.emit("unexpected-response",_,m)||Je(t,_,`Unexpected server response: ${m.statusCode}`)}),_.on("upgrade",(m,E,y)=>{if(t.emit("upgrade",m),t.readyState!==Ae.CONNECTING)return;_=t._req=null;let A=m.headers.upgrade;if(A===void 0||A.toLowerCase()!=="websocket"){Je(t,E,"Invalid Upgrade header");return}let T=KA("sha1").update(f+jA).digest("base64");if(m.headers["sec-websocket-accept"]!==T){Je(t,E,"Invalid Sec-WebSocket-Accept header");return}let C=m.headers["sec-websocket-protocol"],w;if(C!==void 0?h.size?h.has(C)||(w="Server sent an invalid subprotocol"):w="Server sent a subprotocol but none was requested":h.size&&(w="Server sent no subprotocol"),w){Je(t,E,w);return}C&&(t._protocol=C);let k=m.headers["sec-websocket-extensions"];if(k!==void 0){if(!g){Je(t,E,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let O;try{O=oC(k)}catch{Je(t,E,"Invalid Sec-WebSocket-Extensions header");return}let B=Object.keys(O);if(B.length!==1||B[0]!==zt.extensionName){Je(t,E,"Server indicated an extension that was not requested");return}try{g.accept(O[zt.extensionName])}catch{Je(t,E,"Invalid Sec-WebSocket-Extensions header");return}t._extensions[zt.extensionName]=g}t.setSocket(E,y,{allowSynchronousEvents:i.allowSynchronousEvents,generateMask:i.generateMask,maxBufferedChunks:i.maxBufferedChunks,maxFragments:i.maxFragments,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation})}),i.finishRequest?i.finishRequest(_,t):_.end()}function ro(t,e){t._readyState=Ae.CLOSING,t._errorEmitted=!0,t.emit("error",e),t.emitClose()}function lC(t){return t.path=t.socketPath,Wp.connect(t)}function uC(t){return t.path=void 0,!t.servername&&t.servername!==""&&(t.servername=Wp.isIP(t.host)?"":t.host),JA.connect(t)}function Je(t,e,n){t._readyState=Ae.CLOSING;let r=new Error(n);Error.captureStackTrace(r,Je),e.setHeader?(e[Yp]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(ro,t,r)):(e.destroy(r),e.once("error",t.emit.bind(t,"error")),e.once("close",t.emitClose.bind(t)))}function El(t,e,n){if(e){let r=QA(e)?e.size:sC(e).length;t._socket?t._sender._bufferedBytes+=r:t._bufferedAmount+=r}if(n){let r=new Error(`WebSocket is not open: readyState ${t.readyState} (${Ot[t.readyState]})`);process.nextTick(n,r)}}function cC(t,e){let n=this[ke];n._closeFrameReceived=!0,n._closeMessage=e,n._closeCode=t,n._socket[ke]!==void 0&&(n._socket.removeListener("data",io),process.nextTick(Qp,n._socket),t===1005?n.close():n.close(t,e))}function dC(){let t=this[ke];t.isPaused||t._socket.resume()}function fC(t){let e=this[ke];e._socket[ke]!==void 0&&(e._socket.removeListener("data",io),process.nextTick(Qp,e._socket),e.close(t[tC])),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",t))}function Jp(){this[ke].emitClose()}function pC(t,e){this[ke].emit("message",t,e)}function hC(t){let e=this[ke];e._autoPong&&e.pong(t,!this._isServer,Kp),e.emit("ping",t)}function mC(t){this[ke].emit("pong",t)}function Qp(t){t.resume()}function gC(t){let e=this[ke];e.readyState!==Ae.CLOSED&&(e.readyState===Ae.OPEN&&(e._readyState=Ae.CLOSING,Zp(e)),this._socket.end(),e._errorEmitted||(e._errorEmitted=!0,e.emit("error",t)))}function Zp(t){t._closeTimer=setTimeout(t._socket.destroy.bind(t._socket),t._closeTimeout)}function jp(){let t=this[ke];if(this.removeListener("close",jp),this.removeListener("data",io),this.removeListener("end",eh),t._readyState=Ae.CLOSING,!this._readableState.endEmitted&&!t._closeFrameReceived&&!t._receiver._writableState.errorEmitted&&this._readableState.length!==0){let e=this.read(this._readableState.length);t._receiver.write(e)}t._receiver.end(),this[ke]=void 0,clearTimeout(t._closeTimer),t._receiver._writableState.finished||t._receiver._writableState.errorEmitted?t.emitClose():(t._receiver.on("error",Jp),t._receiver.on("finish",Jp))}function io(t){this[ke]._receiver.write(t)||this.pause()}function eh(){let t=this[ke];t._readyState=Ae.CLOSING,t._receiver.end(),this.end()}function th(){let t=this[ke];this.removeListener("error",th),this.on("error",Kp),t&&(t._readyState=Ae.CLOSING,this.destroy())}});var sh=H((HM,oh)=>{"use strict";var BM=oo(),{Duplex:_C}=J("stream");function rh(t){t.emit("close")}function yC(){!this.destroyed&&this._writableState.finished&&this.destroy()}function ih(t){this.removeListener("error",ih),this.destroy(),this.listenerCount("error")===0&&this.emit("error",t)}function EC(t,e){let n=!0,r=new _C({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return t.on("message",function(o,a){let u=!a&&r._readableState.objectMode?o.toString():o;r.push(u)||t.pause()}),t.once("error",function(o){r.destroyed||(n=!1,r.destroy(o))}),t.once("close",function(){r.destroyed||r.push(null)}),r._destroy=function(i,o){if(t.readyState===t.CLOSED){o(i),process.nextTick(rh,r);return}let a=!1;t.once("error",function(c){a=!0,o(c)}),t.once("close",function(){a||o(i),process.nextTick(rh,r)}),n&&t.terminate()},r._final=function(i){if(t.readyState===t.CONNECTING){t.once("open",function(){r._final(i)});return}t._socket!==null&&(t._socket._writableState.finished?(i(),r._readableState.endEmitted&&r.destroy()):(t._socket.once("finish",function(){i()}),t.close()))},r._read=function(){t.isPaused&&t.resume()},r._write=function(i,o,a){if(t.readyState===t.CONNECTING){t.once("open",function(){r._write(i,o,a)});return}t.send(i,a)},r.on("end",yC),r.on("error",ih),r}oh.exports=EC});var vl=H((VM,ah)=>{"use strict";var{tokenChars:vC}=$n();function TC(t){let e=new Set,n=-1,r=-1,i=0;for(i;i<t.length;i++){let a=t.charCodeAt(i);if(r===-1&&vC[a]===1)n===-1&&(n=i);else if(i!==0&&(a===32||a===9))r===-1&&n!==-1&&(r=i);else if(a===44){if(n===-1)throw new SyntaxError(`Unexpected character at index ${i}`);r===-1&&(r=i);let u=t.slice(n,r);if(e.has(u))throw new SyntaxError(`The "${u}" subprotocol is duplicated`);e.add(u),n=r=-1}else throw new SyntaxError(`Unexpected character at index ${i}`)}if(n===-1||r!==-1)throw new SyntaxError("Unexpected end of input");let o=t.slice(n,i);if(e.has(o))throw new SyntaxError(`The "${o}" subprotocol is duplicated`);return e.add(o),e}ah.exports={parse:TC}});var hh=H((XM,ph)=>{"use strict";var AC=J("events"),so=J("http"),{Duplex:$M}=J("stream"),{createHash:CC}=J("crypto"),lh=to(),gn=Vn(),SC=vl(),IC=oo(),{CLOSE_TIMEOUT:wC,GUID:RC,kWebSocket:PC}=Ut(),NC=/^[+/0-9A-Za-z]{22}==$/,uh=0,ch=1,fh=2,Tl=class extends AC{constructor(e,n){if(super(),e={allowSynchronousEvents:!0,autoPong:!0,maxBufferedChunks:256*1024,maxFragments:16*1024,maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,closeTimeout:wC,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:IC,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=so.createServer((r,i)=>{let o=so.STATUS_CODES[426];i.writeHead(426,{"Content-Length":o.length,"Content-Type":"text/plain"}),i.end(o)}),this._server.listen(e.port,e.host,e.backlog,n)):e.server&&(this._server=e.server),this._server){let r=this.emit.bind(this,"connection");this._removeListeners=xC(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(i,o,a)=>{this.handleUpgrade(i,o,a,r)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=uh}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===fh){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(kr,this);return}if(e&&this.once("close",e),this._state!==ch)if(this._state=ch,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(kr,this):process.nextTick(kr,this);else{let n=this._server;this._removeListeners(),this._removeListeners=this._server=null,n.close(()=>{kr(this)})}}shouldHandle(e){if(this.options.path){let n=e.url.indexOf("?");if((n!==-1?e.url.slice(0,n):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,n,r,i){n.on("error",dh);let o=e.headers["sec-websocket-key"],a=e.headers.upgrade,u=+e.headers["sec-websocket-version"];if(e.method!=="GET"){_n(this,e,n,405,"Invalid HTTP method");return}if(a===void 0||a.toLowerCase()!=="websocket"){_n(this,e,n,400,"Invalid Upgrade header");return}if(o===void 0||!NC.test(o)){_n(this,e,n,400,"Missing or invalid Sec-WebSocket-Key header");return}if(u!==13&&u!==8){_n(this,e,n,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(e)){Dr(n,400);return}let c=e.headers["sec-websocket-protocol"],d=new Set;if(c!==void 0)try{d=SC.parse(c)}catch{_n(this,e,n,400,"Invalid Sec-WebSocket-Protocol header");return}let f=e.headers["sec-websocket-extensions"],p={};if(this.options.perMessageDeflate&&f!==void 0){let h=new gn({...this.options.perMessageDeflate,isServer:!0,maxPayload:this.options.maxPayload});try{let g=lh.parse(f);g[gn.extensionName]&&(h.accept(g[gn.extensionName]),p[gn.extensionName]=h)}catch{_n(this,e,n,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let h={origin:e.headers[`${u===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(h,(g,_,m,E)=>{if(!g)return Dr(n,_||401,m,E);this.completeUpgrade(p,o,d,e,n,r,i)});return}if(!this.options.verifyClient(h))return Dr(n,401)}this.completeUpgrade(p,o,d,e,n,r,i)}completeUpgrade(e,n,r,i,o,a,u){if(!o.readable||!o.writable)return o.destroy();if(o[PC])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>uh)return Dr(o,503);let d=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${CC("sha1").update(n+RC).digest("base64")}`],f=new this.options.WebSocket(null,void 0,this.options);if(r.size){let p=this.options.handleProtocols?this.options.handleProtocols(r,i):r.values().next().value;p&&(d.push(`Sec-WebSocket-Protocol: ${p}`),f._protocol=p)}if(e[gn.extensionName]){let p=e[gn.extensionName].params,h=lh.format({[gn.extensionName]:[p]});d.push(`Sec-WebSocket-Extensions: ${h}`),f._extensions=e}this.emit("headers",d,i),o.write(d.concat(`\r
31
+ `).join(`\r
32
+ `)),o.removeListener("error",dh),f.setSocket(o,a,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxBufferedChunks:this.options.maxBufferedChunks,maxFragments:this.options.maxFragments,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(f),f.on("close",()=>{this.clients.delete(f),this._shouldEmitClose&&!this.clients.size&&process.nextTick(kr,this)})),u(f,i)}};ph.exports=Tl;function xC(t,e){for(let n of Object.keys(e))t.on(n,e[n]);return function(){for(let r of Object.keys(e))t.removeListener(r,e[r])}}function kr(t){t._state=fh,t.emit("close")}function dh(){this.destroy()}function Dr(t,e,n,r){n=n||so.STATUS_CODES[e],r={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(n),...r},t.once("finish",t.destroy),t.end(`HTTP/1.1 ${e} ${so.STATUS_CODES[e]}\r
33
+ `+Object.keys(r).map(i=>`${i}: ${r[i]}`).join(`\r
34
+ `)+`\r
35
+ \r
36
+ `+n)}function _n(t,e,n,r,i,o){if(t.listenerCount("wsClientError")){let a=new Error(i);Error.captureStackTrace(a,_n),t.emit("wsClientError",a,n,e)}else Dr(n,r,i,o)}});var Xg=Tt(Ec(),1),Jg=Tt(dp(),1);import{createWriteStream as qC}from"fs";import*as Go from"fs/promises";import{writeFile as FC}from"fs/promises";import{Readable as BC}from"node:stream";import{finished as HC}from"node:stream/promises";var kC=Tt(sh(),1),DC=Tt(to(),1),MC=Tt(Vn(),1),bC=Tt(dl(),1),UC=Tt(hl(),1),GC=Tt(vl(),1),Al=Tt(oo(),1),LC=Tt(hh(),1);import*as Wg from"path";var Kg,Yg;function zM(t){Kg=t.geminiUrl,Yg=t.vertexUrl}function VC(){return{geminiUrl:Kg,vertexUrl:Yg}}function $C(t,e,n,r){var i,o;if(!t?.baseUrl){let a=VC();return e?(i=a.vertexUrl)!==null&&i!==void 0?i:n:(o=a.geminiUrl)!==null&&o!==void 0?o:r}return t.baseUrl}var mt=class{};function X(t,e){let n=/\{([^}]+)\}/g;return t.replace(n,(r,i)=>{if(Object.prototype.hasOwnProperty.call(e,i)){let o=e[i];return o!=null?String(o):""}else throw new Error(`Key '${i}' not found in valueMap.`)})}function l(t,e,n){for(let o=0;o<e.length-1;o++){let a=e[o];if(a.endsWith("[]")){let u=a.slice(0,-2);if(!(u in t))if(Array.isArray(n))t[u]=Array.from({length:n.length},()=>({}));else throw new Error(`Value must be a list given an array path ${a}`);if(Array.isArray(t[u])){let c=t[u];if(Array.isArray(n))for(let d=0;d<c.length;d++){let f=c[d];l(f,e.slice(o+1),n[d])}else for(let d of c)l(d,e.slice(o+1),n)}return}else if(a.endsWith("[0]")){let u=a.slice(0,-3);u in t||(t[u]=[{}]);let c=t[u];l(c[0],e.slice(o+1),n);return}(!t[a]||typeof t[a]!="object")&&(t[a]={}),t=t[a]}let r=e[e.length-1],i=t[r];if(i!==void 0){if(!n||typeof n=="object"&&Object.keys(n).length===0||n===i)return;if(typeof i=="object"&&typeof n=="object"&&i!==null&&n!==null)Object.assign(i,n);else throw new Error(`Cannot set value for an existing key. Key: ${r}`)}else r==="_self"&&typeof n=="object"&&n!==null&&!Array.isArray(n)?Object.assign(t,n):t[r]=n}function s(t,e,n=void 0){try{if(e.length===1&&e[0]==="_self")return t;for(let r=0;r<e.length;r++){if(typeof t!="object"||t===null)return n;let i=e[r];if(i.endsWith("[]")){let o=i.slice(0,-2);if(o in t){let a=t[o];return Array.isArray(a)?a.map(u=>s(u,e.slice(r+1),n)):n}else return n}else t=t[i]}return t}catch(r){if(r instanceof TypeError)return n;throw r}}function XC(t,e){for(let[n,r]of Object.entries(e)){let i=n.split("."),o=r.split("."),a=new Set,u=-1;for(let c=0;c<i.length;c++)if(i[c]==="*"){u=c;break}if(u!==-1&&o.length>u)for(let c=u;c<o.length;c++){let d=o[c];d!=="*"&&!d.endsWith("[]")&&!d.endsWith("[0]")&&a.add(d)}wl(t,i,o,0,a)}}function wl(t,e,n,r,i){if(r>=e.length||typeof t!="object"||t===null)return;let o=e[r];if(o.endsWith("[]")){let a=o.slice(0,-2),u=t;if(a in u&&Array.isArray(u[a]))for(let c of u[a])wl(c,e,n,r+1,i)}else if(o==="*"){if(typeof t=="object"&&t!==null&&!Array.isArray(t)){let a=t,u=Object.keys(a).filter(d=>!d.startsWith("_")&&!i.has(d)),c={};for(let d of u)c[d]=a[d];for(let[d,f]of Object.entries(c)){let p=[];for(let h of n.slice(r))h==="*"?p.push(d):p.push(h);l(a,p,f)}for(let d of u)delete a[d]}}else{let a=t;o in a&&wl(a[o],e,n,r+1,i)}}function ic(t){if(typeof t!="string")throw new Error("fromImageBytes must be a string");return t}function JC(t){let e={},n=s(t,["operationName"]);n!=null&&l(e,["operationName"],n);let r=s(t,["resourceName"]);return r!=null&&l(e,["_url","resourceName"],r),e}function WC(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["metadata"]);r!=null&&l(e,["metadata"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);o!=null&&l(e,["error"],o);let a=s(t,["response","generateVideoResponse"]);return a!=null&&l(e,["response"],YC(a)),e}function KC(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["metadata"]);r!=null&&l(e,["metadata"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);o!=null&&l(e,["error"],o);let a=s(t,["response"]);return a!=null&&l(e,["response"],zC(a)),e}function YC(t){let e={},n=s(t,["generatedSamples"]);if(n!=null){let o=n;Array.isArray(o)&&(o=o.map(a=>QC(a))),l(e,["generatedVideos"],o)}let r=s(t,["raiMediaFilteredCount"]);r!=null&&l(e,["raiMediaFilteredCount"],r);let i=s(t,["raiMediaFilteredReasons"]);return i!=null&&l(e,["raiMediaFilteredReasons"],i),e}function zC(t){let e={},n=s(t,["videos"]);if(n!=null){let o=n;Array.isArray(o)&&(o=o.map(a=>ZC(a))),l(e,["generatedVideos"],o)}let r=s(t,["raiMediaFilteredCount"]);r!=null&&l(e,["raiMediaFilteredCount"],r);let i=s(t,["raiMediaFilteredReasons"]);return i!=null&&l(e,["raiMediaFilteredReasons"],i),e}function QC(t){let e={},n=s(t,["video"]);return n!=null&&l(e,["video"],iS(n)),e}function ZC(t){let e={},n=s(t,["_self"]);return n!=null&&l(e,["video"],oS(n)),e}function jC(t){let e={},n=s(t,["operationName"]);return n!=null&&l(e,["_url","operationName"],n),e}function eS(t){let e={},n=s(t,["operationName"]);return n!=null&&l(e,["_url","operationName"],n),e}function tS(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["metadata"]);r!=null&&l(e,["metadata"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);o!=null&&l(e,["error"],o);let a=s(t,["response"]);return a!=null&&l(e,["response"],nS(a)),e}function nS(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["parent"]);r!=null&&l(e,["parent"],r);let i=s(t,["documentName"]);return i!=null&&l(e,["documentName"],i),e}function oc(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["metadata"]);r!=null&&l(e,["metadata"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);o!=null&&l(e,["error"],o);let a=s(t,["response"]);return a!=null&&l(e,["response"],rS(a)),e}function rS(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["parent"]);r!=null&&l(e,["parent"],r);let i=s(t,["documentName"]);return i!=null&&l(e,["documentName"],i),e}function iS(t){let e={},n=s(t,["uri"]);n!=null&&l(e,["uri"],n);let r=s(t,["encodedVideo"]);r!=null&&l(e,["videoBytes"],ic(r));let i=s(t,["encoding"]);return i!=null&&l(e,["mimeType"],i),e}function oS(t){let e={},n=s(t,["gcsUri"]);n!=null&&l(e,["uri"],n);let r=s(t,["bytesBase64Encoded"]);r!=null&&l(e,["videoBytes"],ic(r));let i=s(t,["mimeType"]);return i!=null&&l(e,["mimeType"],i),e}var mh;(function(t){t.OUTCOME_UNSPECIFIED="OUTCOME_UNSPECIFIED",t.OUTCOME_OK="OUTCOME_OK",t.OUTCOME_FAILED="OUTCOME_FAILED",t.OUTCOME_DEADLINE_EXCEEDED="OUTCOME_DEADLINE_EXCEEDED"})(mh||(mh={}));var gh;(function(t){t.LANGUAGE_UNSPECIFIED="LANGUAGE_UNSPECIFIED",t.PYTHON="PYTHON"})(gh||(gh={}));var _h;(function(t){t.SCHEDULING_UNSPECIFIED="SCHEDULING_UNSPECIFIED",t.SILENT="SILENT",t.WHEN_IDLE="WHEN_IDLE",t.INTERRUPT="INTERRUPT"})(_h||(_h={}));var Qt;(function(t){t.TYPE_UNSPECIFIED="TYPE_UNSPECIFIED",t.STRING="STRING",t.NUMBER="NUMBER",t.INTEGER="INTEGER",t.BOOLEAN="BOOLEAN",t.ARRAY="ARRAY",t.OBJECT="OBJECT",t.NULL="NULL"})(Qt||(Qt={}));var yh;(function(t){t.AUTH_TYPE_UNSPECIFIED="AUTH_TYPE_UNSPECIFIED",t.NO_AUTH="NO_AUTH",t.API_KEY_AUTH="API_KEY_AUTH",t.HTTP_BASIC_AUTH="HTTP_BASIC_AUTH",t.GOOGLE_SERVICE_ACCOUNT_AUTH="GOOGLE_SERVICE_ACCOUNT_AUTH",t.OAUTH="OAUTH",t.OIDC_AUTH="OIDC_AUTH"})(yh||(yh={}));var Eh;(function(t){t.HTTP_IN_UNSPECIFIED="HTTP_IN_UNSPECIFIED",t.HTTP_IN_QUERY="HTTP_IN_QUERY",t.HTTP_IN_HEADER="HTTP_IN_HEADER",t.HTTP_IN_PATH="HTTP_IN_PATH",t.HTTP_IN_BODY="HTTP_IN_BODY",t.HTTP_IN_COOKIE="HTTP_IN_COOKIE"})(Eh||(Eh={}));var vh;(function(t){t.API_SPEC_UNSPECIFIED="API_SPEC_UNSPECIFIED",t.SIMPLE_SEARCH="SIMPLE_SEARCH",t.ELASTIC_SEARCH="ELASTIC_SEARCH"})(vh||(vh={}));var Th;(function(t){t.ENVIRONMENT_UNSPECIFIED="ENVIRONMENT_UNSPECIFIED",t.ENVIRONMENT_BROWSER="ENVIRONMENT_BROWSER",t.ENVIRONMENT_MOBILE="ENVIRONMENT_MOBILE",t.ENVIRONMENT_DESKTOP="ENVIRONMENT_DESKTOP"})(Th||(Th={}));var Ah;(function(t){t.SAFETY_POLICY_UNSPECIFIED="SAFETY_POLICY_UNSPECIFIED",t.FINANCIAL_TRANSACTIONS="FINANCIAL_TRANSACTIONS",t.SENSITIVE_DATA_MODIFICATION="SENSITIVE_DATA_MODIFICATION",t.COMMUNICATION_TOOL="COMMUNICATION_TOOL",t.ACCOUNT_CREATION="ACCOUNT_CREATION",t.DATA_MODIFICATION="DATA_MODIFICATION",t.USER_CONSENT_MANAGEMENT="USER_CONSENT_MANAGEMENT",t.LEGAL_TERMS_AND_AGREEMENTS="LEGAL_TERMS_AND_AGREEMENTS"})(Ah||(Ah={}));var Ch;(function(t){t.PHISH_BLOCK_THRESHOLD_UNSPECIFIED="PHISH_BLOCK_THRESHOLD_UNSPECIFIED",t.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",t.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",t.BLOCK_HIGH_AND_ABOVE="BLOCK_HIGH_AND_ABOVE",t.BLOCK_HIGHER_AND_ABOVE="BLOCK_HIGHER_AND_ABOVE",t.BLOCK_VERY_HIGH_AND_ABOVE="BLOCK_VERY_HIGH_AND_ABOVE",t.BLOCK_ONLY_EXTREMELY_HIGH="BLOCK_ONLY_EXTREMELY_HIGH"})(Ch||(Ch={}));var Sh;(function(t){t.UNSPECIFIED="UNSPECIFIED",t.BLOCKING="BLOCKING",t.NON_BLOCKING="NON_BLOCKING"})(Sh||(Sh={}));var Ih;(function(t){t.MODE_UNSPECIFIED="MODE_UNSPECIFIED",t.MODE_DYNAMIC="MODE_DYNAMIC"})(Ih||(Ih={}));var wh;(function(t){t.THINKING_LEVEL_UNSPECIFIED="THINKING_LEVEL_UNSPECIFIED",t.MINIMAL="MINIMAL",t.LOW="LOW",t.MEDIUM="MEDIUM",t.HIGH="HIGH"})(wh||(wh={}));var Rh;(function(t){t.DONT_ALLOW="DONT_ALLOW",t.ALLOW_ADULT="ALLOW_ADULT",t.ALLOW_ALL="ALLOW_ALL"})(Rh||(Rh={}));var Ph;(function(t){t.PROMINENT_PEOPLE_UNSPECIFIED="PROMINENT_PEOPLE_UNSPECIFIED",t.ALLOW_PROMINENT_PEOPLE="ALLOW_PROMINENT_PEOPLE",t.BLOCK_PROMINENT_PEOPLE="BLOCK_PROMINENT_PEOPLE"})(Ph||(Ph={}));var Nh;(function(t){t.HARM_CATEGORY_UNSPECIFIED="HARM_CATEGORY_UNSPECIFIED",t.HARM_CATEGORY_HARASSMENT="HARM_CATEGORY_HARASSMENT",t.HARM_CATEGORY_HATE_SPEECH="HARM_CATEGORY_HATE_SPEECH",t.HARM_CATEGORY_SEXUALLY_EXPLICIT="HARM_CATEGORY_SEXUALLY_EXPLICIT",t.HARM_CATEGORY_DANGEROUS_CONTENT="HARM_CATEGORY_DANGEROUS_CONTENT",t.HARM_CATEGORY_CIVIC_INTEGRITY="HARM_CATEGORY_CIVIC_INTEGRITY",t.HARM_CATEGORY_JAILBREAK="HARM_CATEGORY_JAILBREAK",t.HARM_CATEGORY_IMAGE_HATE="HARM_CATEGORY_IMAGE_HATE",t.HARM_CATEGORY_IMAGE_DANGEROUS_CONTENT="HARM_CATEGORY_IMAGE_DANGEROUS_CONTENT",t.HARM_CATEGORY_IMAGE_HARASSMENT="HARM_CATEGORY_IMAGE_HARASSMENT",t.HARM_CATEGORY_IMAGE_SEXUALLY_EXPLICIT="HARM_CATEGORY_IMAGE_SEXUALLY_EXPLICIT"})(Nh||(Nh={}));var xh;(function(t){t.HARM_BLOCK_METHOD_UNSPECIFIED="HARM_BLOCK_METHOD_UNSPECIFIED",t.SEVERITY="SEVERITY",t.PROBABILITY="PROBABILITY"})(xh||(xh={}));var kh;(function(t){t.HARM_BLOCK_THRESHOLD_UNSPECIFIED="HARM_BLOCK_THRESHOLD_UNSPECIFIED",t.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",t.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",t.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",t.BLOCK_NONE="BLOCK_NONE",t.OFF="OFF"})(kh||(kh={}));var Dh;(function(t){t.MODE_UNSPECIFIED="MODE_UNSPECIFIED",t.AUTO="AUTO",t.ANY="ANY",t.NONE="NONE",t.VALIDATED="VALIDATED"})(Dh||(Dh={}));var Mh;(function(t){t.FINISH_REASON_UNSPECIFIED="FINISH_REASON_UNSPECIFIED",t.STOP="STOP",t.MAX_TOKENS="MAX_TOKENS",t.SAFETY="SAFETY",t.RECITATION="RECITATION",t.LANGUAGE="LANGUAGE",t.OTHER="OTHER",t.BLOCKLIST="BLOCKLIST",t.PROHIBITED_CONTENT="PROHIBITED_CONTENT",t.SPII="SPII",t.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",t.IMAGE_SAFETY="IMAGE_SAFETY",t.UNEXPECTED_TOOL_CALL="UNEXPECTED_TOOL_CALL",t.TOO_MANY_TOOL_CALLS="TOO_MANY_TOOL_CALLS",t.IMAGE_PROHIBITED_CONTENT="IMAGE_PROHIBITED_CONTENT",t.NO_IMAGE="NO_IMAGE",t.IMAGE_RECITATION="IMAGE_RECITATION",t.IMAGE_OTHER="IMAGE_OTHER"})(Mh||(Mh={}));var bh;(function(t){t.HARM_PROBABILITY_UNSPECIFIED="HARM_PROBABILITY_UNSPECIFIED",t.NEGLIGIBLE="NEGLIGIBLE",t.LOW="LOW",t.MEDIUM="MEDIUM",t.HIGH="HIGH"})(bh||(bh={}));var Uh;(function(t){t.HARM_SEVERITY_UNSPECIFIED="HARM_SEVERITY_UNSPECIFIED",t.HARM_SEVERITY_NEGLIGIBLE="HARM_SEVERITY_NEGLIGIBLE",t.HARM_SEVERITY_LOW="HARM_SEVERITY_LOW",t.HARM_SEVERITY_MEDIUM="HARM_SEVERITY_MEDIUM",t.HARM_SEVERITY_HIGH="HARM_SEVERITY_HIGH"})(Uh||(Uh={}));var Gh;(function(t){t.URL_RETRIEVAL_STATUS_UNSPECIFIED="URL_RETRIEVAL_STATUS_UNSPECIFIED",t.URL_RETRIEVAL_STATUS_SUCCESS="URL_RETRIEVAL_STATUS_SUCCESS",t.URL_RETRIEVAL_STATUS_ERROR="URL_RETRIEVAL_STATUS_ERROR",t.URL_RETRIEVAL_STATUS_PAYWALL="URL_RETRIEVAL_STATUS_PAYWALL",t.URL_RETRIEVAL_STATUS_UNSAFE="URL_RETRIEVAL_STATUS_UNSAFE"})(Gh||(Gh={}));var Lh;(function(t){t.BLOCKED_REASON_UNSPECIFIED="BLOCKED_REASON_UNSPECIFIED",t.SAFETY="SAFETY",t.OTHER="OTHER",t.BLOCKLIST="BLOCKLIST",t.PROHIBITED_CONTENT="PROHIBITED_CONTENT",t.IMAGE_SAFETY="IMAGE_SAFETY",t.MODEL_ARMOR="MODEL_ARMOR",t.JAILBREAK="JAILBREAK"})(Lh||(Lh={}));var Oh;(function(t){t.TRAFFIC_TYPE_UNSPECIFIED="TRAFFIC_TYPE_UNSPECIFIED",t.ON_DEMAND="ON_DEMAND",t.ON_DEMAND_PRIORITY="ON_DEMAND_PRIORITY",t.ON_DEMAND_FLEX="ON_DEMAND_FLEX",t.PROVISIONED_THROUGHPUT="PROVISIONED_THROUGHPUT"})(Oh||(Oh={}));var qh;(function(t){t.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",t.TEXT="TEXT",t.IMAGE="IMAGE",t.VIDEO="VIDEO",t.AUDIO="AUDIO",t.DOCUMENT="DOCUMENT"})(qh||(qh={}));var Fh;(function(t){t.MODEL_STAGE_UNSPECIFIED="MODEL_STAGE_UNSPECIFIED",t.UNSTABLE_EXPERIMENTAL="UNSTABLE_EXPERIMENTAL",t.EXPERIMENTAL="EXPERIMENTAL",t.PREVIEW="PREVIEW",t.STABLE="STABLE",t.LEGACY="LEGACY",t.DEPRECATED="DEPRECATED",t.RETIRED="RETIRED"})(Fh||(Fh={}));var Bh;(function(t){t.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",t.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",t.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",t.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH"})(Bh||(Bh={}));var ho;(function(t){t.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",t.TEXT="TEXT",t.IMAGE="IMAGE",t.AUDIO="AUDIO",t.VIDEO="VIDEO"})(ho||(ho={}));var Hh;(function(t){t.DELIVERY_UNSPECIFIED="DELIVERY_UNSPECIFIED",t.INLINE="INLINE",t.URI="URI"})(Hh||(Hh={}));var Vh;(function(t){t.ASPECT_RATIO_UNSPECIFIED="ASPECT_RATIO_UNSPECIFIED",t.ASPECT_RATIO_ONE_BY_ONE="ASPECT_RATIO_ONE_BY_ONE",t.ASPECT_RATIO_TWO_BY_THREE="ASPECT_RATIO_TWO_BY_THREE",t.ASPECT_RATIO_THREE_BY_TWO="ASPECT_RATIO_THREE_BY_TWO",t.ASPECT_RATIO_THREE_BY_FOUR="ASPECT_RATIO_THREE_BY_FOUR",t.ASPECT_RATIO_FOUR_BY_THREE="ASPECT_RATIO_FOUR_BY_THREE",t.ASPECT_RATIO_FOUR_BY_FIVE="ASPECT_RATIO_FOUR_BY_FIVE",t.ASPECT_RATIO_FIVE_BY_FOUR="ASPECT_RATIO_FIVE_BY_FOUR",t.ASPECT_RATIO_NINE_BY_SIXTEEN="ASPECT_RATIO_NINE_BY_SIXTEEN",t.ASPECT_RATIO_SIXTEEN_BY_NINE="ASPECT_RATIO_SIXTEEN_BY_NINE",t.ASPECT_RATIO_TWENTY_ONE_BY_NINE="ASPECT_RATIO_TWENTY_ONE_BY_NINE",t.ASPECT_RATIO_ONE_BY_EIGHT="ASPECT_RATIO_ONE_BY_EIGHT",t.ASPECT_RATIO_EIGHT_BY_ONE="ASPECT_RATIO_EIGHT_BY_ONE",t.ASPECT_RATIO_ONE_BY_FOUR="ASPECT_RATIO_ONE_BY_FOUR",t.ASPECT_RATIO_FOUR_BY_ONE="ASPECT_RATIO_FOUR_BY_ONE"})(Vh||(Vh={}));var $h;(function(t){t.IMAGE_SIZE_UNSPECIFIED="IMAGE_SIZE_UNSPECIFIED",t.IMAGE_SIZE_FIVE_TWELVE="IMAGE_SIZE_FIVE_TWELVE",t.IMAGE_SIZE_ONE_K="IMAGE_SIZE_ONE_K",t.IMAGE_SIZE_TWO_K="IMAGE_SIZE_TWO_K",t.IMAGE_SIZE_FOUR_K="IMAGE_SIZE_FOUR_K"})($h||($h={}));var Xh;(function(t){t.TUNING_MODE_UNSPECIFIED="TUNING_MODE_UNSPECIFIED",t.TUNING_MODE_FULL="TUNING_MODE_FULL",t.TUNING_MODE_PEFT_ADAPTER="TUNING_MODE_PEFT_ADAPTER"})(Xh||(Xh={}));var Jh;(function(t){t.ADAPTER_SIZE_UNSPECIFIED="ADAPTER_SIZE_UNSPECIFIED",t.ADAPTER_SIZE_ONE="ADAPTER_SIZE_ONE",t.ADAPTER_SIZE_TWO="ADAPTER_SIZE_TWO",t.ADAPTER_SIZE_FOUR="ADAPTER_SIZE_FOUR",t.ADAPTER_SIZE_EIGHT="ADAPTER_SIZE_EIGHT",t.ADAPTER_SIZE_SIXTEEN="ADAPTER_SIZE_SIXTEEN",t.ADAPTER_SIZE_THIRTY_TWO="ADAPTER_SIZE_THIRTY_TWO"})(Jh||(Jh={}));var Wh;(function(t){t.RESPONSE_PARSE_TYPE_UNSPECIFIED="RESPONSE_PARSE_TYPE_UNSPECIFIED",t.IDENTITY="IDENTITY",t.REGEX_EXTRACT="REGEX_EXTRACT"})(Wh||(Wh={}));var Kh;(function(t){t.MATCH_OPERATION_UNSPECIFIED="MATCH_OPERATION_UNSPECIFIED",t.REGEX_CONTAINS="REGEX_CONTAINS",t.PARTIAL_MATCH="PARTIAL_MATCH",t.EXACT_MATCH="EXACT_MATCH"})(Kh||(Kh={}));var Yh;(function(t){t.REINFORCEMENT_TUNING_THINKING_LEVEL_UNSPECIFIED="REINFORCEMENT_TUNING_THINKING_LEVEL_UNSPECIFIED",t.MINIMAL="MINIMAL",t.HIGH="HIGH"})(Yh||(Yh={}));var Rl;(function(t){t.JOB_STATE_UNSPECIFIED="JOB_STATE_UNSPECIFIED",t.JOB_STATE_QUEUED="JOB_STATE_QUEUED",t.JOB_STATE_PENDING="JOB_STATE_PENDING",t.JOB_STATE_RUNNING="JOB_STATE_RUNNING",t.JOB_STATE_SUCCEEDED="JOB_STATE_SUCCEEDED",t.JOB_STATE_FAILED="JOB_STATE_FAILED",t.JOB_STATE_CANCELLING="JOB_STATE_CANCELLING",t.JOB_STATE_CANCELLED="JOB_STATE_CANCELLED",t.JOB_STATE_PAUSED="JOB_STATE_PAUSED",t.JOB_STATE_EXPIRED="JOB_STATE_EXPIRED",t.JOB_STATE_UPDATING="JOB_STATE_UPDATING",t.JOB_STATE_PARTIALLY_SUCCEEDED="JOB_STATE_PARTIALLY_SUCCEEDED"})(Rl||(Rl={}));var zh;(function(t){t.TUNING_JOB_STATE_UNSPECIFIED="TUNING_JOB_STATE_UNSPECIFIED",t.TUNING_JOB_STATE_WAITING_FOR_QUOTA="TUNING_JOB_STATE_WAITING_FOR_QUOTA",t.TUNING_JOB_STATE_PROCESSING_DATASET="TUNING_JOB_STATE_PROCESSING_DATASET",t.TUNING_JOB_STATE_WAITING_FOR_CAPACITY="TUNING_JOB_STATE_WAITING_FOR_CAPACITY",t.TUNING_JOB_STATE_TUNING="TUNING_JOB_STATE_TUNING",t.TUNING_JOB_STATE_POST_PROCESSING="TUNING_JOB_STATE_POST_PROCESSING"})(zh||(zh={}));var Qh;(function(t){t.AGGREGATION_METRIC_UNSPECIFIED="AGGREGATION_METRIC_UNSPECIFIED",t.AVERAGE="AVERAGE",t.MODE="MODE",t.STANDARD_DEVIATION="STANDARD_DEVIATION",t.VARIANCE="VARIANCE",t.MINIMUM="MINIMUM",t.MAXIMUM="MAXIMUM",t.MEDIAN="MEDIAN",t.PERCENTILE_P90="PERCENTILE_P90",t.PERCENTILE_P95="PERCENTILE_P95",t.PERCENTILE_P99="PERCENTILE_P99"})(Qh||(Qh={}));var Zh;(function(t){t.PAIRWISE_CHOICE_UNSPECIFIED="PAIRWISE_CHOICE_UNSPECIFIED",t.BASELINE="BASELINE",t.CANDIDATE="CANDIDATE",t.TIE="TIE"})(Zh||(Zh={}));var jh;(function(t){t.VIDEO_ORIENTATION_UNSPECIFIED="VIDEO_ORIENTATION_UNSPECIFIED",t.LANDSCAPE="LANDSCAPE",t.PORTRAIT="PORTRAIT"})(jh||(jh={}));var em;(function(t){t.TUNING_SPEED_UNSPECIFIED="TUNING_SPEED_UNSPECIFIED",t.REGULAR="REGULAR",t.FAST="FAST"})(em||(em={}));var tm;(function(t){t.TUNING_TASK_UNSPECIFIED="TUNING_TASK_UNSPECIFIED",t.TUNING_TASK_I2V="TUNING_TASK_I2V",t.TUNING_TASK_T2V="TUNING_TASK_T2V",t.TUNING_TASK_R2V="TUNING_TASK_R2V"})(tm||(tm={}));var nm;(function(t){t.STATE_UNSPECIFIED="STATE_UNSPECIFIED",t.STATE_PENDING="STATE_PENDING",t.STATE_ACTIVE="STATE_ACTIVE",t.STATE_FAILED="STATE_FAILED"})(nm||(nm={}));var rm;(function(t){t.UNSPECIFIED="unspecified",t.FLEX="flex",t.STANDARD="standard",t.PRIORITY="priority"})(rm||(rm={}));var im;(function(t){t.MEDIA_PROCESSING_UNSPECIFIED="MEDIA_PROCESSING_UNSPECIFIED",t.STATIC="STATIC",t.AGENTIC="AGENTIC"})(im||(im={}));var om;(function(t){t.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",t.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",t.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",t.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH",t.MEDIA_RESOLUTION_ULTRA_HIGH="MEDIA_RESOLUTION_ULTRA_HIGH"})(om||(om={}));var sm;(function(t){t.TOOL_TYPE_UNSPECIFIED="TOOL_TYPE_UNSPECIFIED",t.GOOGLE_SEARCH_WEB="GOOGLE_SEARCH_WEB",t.GOOGLE_SEARCH_IMAGE="GOOGLE_SEARCH_IMAGE",t.URL_CONTEXT="URL_CONTEXT",t.GOOGLE_MAPS="GOOGLE_MAPS",t.FILE_SEARCH="FILE_SEARCH",t.MEDIA_PROCESSING="MEDIA_PROCESSING"})(sm||(sm={}));var Pl;(function(t){t.COLLECTION="COLLECTION"})(Pl||(Pl={}));var am;(function(t){t.FEATURE_SELECTION_PREFERENCE_UNSPECIFIED="FEATURE_SELECTION_PREFERENCE_UNSPECIFIED",t.PRIORITIZE_QUALITY="PRIORITIZE_QUALITY",t.BALANCED="BALANCED",t.PRIORITIZE_COST="PRIORITIZE_COST"})(am||(am={}));var mo;(function(t){t.PREDICT="PREDICT",t.EMBED_CONTENT="EMBED_CONTENT"})(mo||(mo={}));var lm;(function(t){t.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",t.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",t.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",t.BLOCK_NONE="BLOCK_NONE"})(lm||(lm={}));var um;(function(t){t.auto="auto",t.en="en",t.ja="ja",t.ko="ko",t.hi="hi",t.zh="zh",t.pt="pt",t.es="es"})(um||(um={}));var cm;(function(t){t.MASK_MODE_DEFAULT="MASK_MODE_DEFAULT",t.MASK_MODE_USER_PROVIDED="MASK_MODE_USER_PROVIDED",t.MASK_MODE_BACKGROUND="MASK_MODE_BACKGROUND",t.MASK_MODE_FOREGROUND="MASK_MODE_FOREGROUND",t.MASK_MODE_SEMANTIC="MASK_MODE_SEMANTIC"})(cm||(cm={}));var dm;(function(t){t.CONTROL_TYPE_DEFAULT="CONTROL_TYPE_DEFAULT",t.CONTROL_TYPE_CANNY="CONTROL_TYPE_CANNY",t.CONTROL_TYPE_SCRIBBLE="CONTROL_TYPE_SCRIBBLE",t.CONTROL_TYPE_FACE_MESH="CONTROL_TYPE_FACE_MESH"})(dm||(dm={}));var fm;(function(t){t.SUBJECT_TYPE_DEFAULT="SUBJECT_TYPE_DEFAULT",t.SUBJECT_TYPE_PERSON="SUBJECT_TYPE_PERSON",t.SUBJECT_TYPE_ANIMAL="SUBJECT_TYPE_ANIMAL",t.SUBJECT_TYPE_PRODUCT="SUBJECT_TYPE_PRODUCT"})(fm||(fm={}));var pm;(function(t){t.EDIT_MODE_DEFAULT="EDIT_MODE_DEFAULT",t.EDIT_MODE_INPAINT_REMOVAL="EDIT_MODE_INPAINT_REMOVAL",t.EDIT_MODE_INPAINT_INSERTION="EDIT_MODE_INPAINT_INSERTION",t.EDIT_MODE_OUTPAINT="EDIT_MODE_OUTPAINT",t.EDIT_MODE_CONTROLLED_EDITING="EDIT_MODE_CONTROLLED_EDITING",t.EDIT_MODE_STYLE="EDIT_MODE_STYLE",t.EDIT_MODE_BGSWAP="EDIT_MODE_BGSWAP",t.EDIT_MODE_PRODUCT_IMAGE="EDIT_MODE_PRODUCT_IMAGE"})(pm||(pm={}));var hm;(function(t){t.FOREGROUND="FOREGROUND",t.BACKGROUND="BACKGROUND",t.PROMPT="PROMPT",t.SEMANTIC="SEMANTIC",t.INTERACTIVE="INTERACTIVE"})(hm||(hm={}));var mm;(function(t){t.ASSET="ASSET",t.STYLE="STYLE"})(mm||(mm={}));var gm;(function(t){t.INSERT="INSERT",t.REMOVE="REMOVE",t.REMOVE_STATIC="REMOVE_STATIC",t.OUTPAINT="OUTPAINT"})(gm||(gm={}));var _m;(function(t){t.OPTIMIZED="OPTIMIZED",t.LOSSLESS="LOSSLESS"})(_m||(_m={}));var ym;(function(t){t.CROP="CROP",t.PAD="PAD"})(ym||(ym={}));var Em;(function(t){t.SUPERVISED_FINE_TUNING="SUPERVISED_FINE_TUNING",t.PREFERENCE_TUNING="PREFERENCE_TUNING",t.DISTILLATION="DISTILLATION",t.REINFORCEMENT_TUNING="REINFORCEMENT_TUNING"})(Em||(Em={}));var vm;(function(t){t.STATE_UNSPECIFIED="STATE_UNSPECIFIED",t.PROCESSING="PROCESSING",t.ACTIVE="ACTIVE",t.FAILED="FAILED"})(vm||(vm={}));var Tm;(function(t){t.SOURCE_UNSPECIFIED="SOURCE_UNSPECIFIED",t.UPLOADED="UPLOADED",t.GENERATED="GENERATED",t.REGISTERED="REGISTERED"})(Tm||(Tm={}));var Am;(function(t){t.TURN_COMPLETE_REASON_UNSPECIFIED="TURN_COMPLETE_REASON_UNSPECIFIED",t.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",t.RESPONSE_REJECTED="RESPONSE_REJECTED",t.NEED_MORE_INPUT="NEED_MORE_INPUT",t.PROHIBITED_INPUT_CONTENT="PROHIBITED_INPUT_CONTENT",t.IMAGE_PROHIBITED_INPUT_CONTENT="IMAGE_PROHIBITED_INPUT_CONTENT",t.INPUT_TEXT_CONTAIN_PROMINENT_PERSON_PROHIBITED="INPUT_TEXT_CONTAIN_PROMINENT_PERSON_PROHIBITED",t.INPUT_IMAGE_CELEBRITY="INPUT_IMAGE_CELEBRITY",t.INPUT_IMAGE_PHOTO_REALISTIC_CHILD_PROHIBITED="INPUT_IMAGE_PHOTO_REALISTIC_CHILD_PROHIBITED",t.INPUT_TEXT_NCII_PROHIBITED="INPUT_TEXT_NCII_PROHIBITED",t.INPUT_OTHER="INPUT_OTHER",t.INPUT_IP_PROHIBITED="INPUT_IP_PROHIBITED",t.BLOCKLIST="BLOCKLIST",t.UNSAFE_PROMPT_FOR_IMAGE_GENERATION="UNSAFE_PROMPT_FOR_IMAGE_GENERATION",t.GENERATED_IMAGE_SAFETY="GENERATED_IMAGE_SAFETY",t.GENERATED_CONTENT_SAFETY="GENERATED_CONTENT_SAFETY",t.GENERATED_AUDIO_SAFETY="GENERATED_AUDIO_SAFETY",t.GENERATED_VIDEO_SAFETY="GENERATED_VIDEO_SAFETY",t.GENERATED_CONTENT_PROHIBITED="GENERATED_CONTENT_PROHIBITED",t.GENERATED_CONTENT_BLOCKLIST="GENERATED_CONTENT_BLOCKLIST",t.GENERATED_IMAGE_PROHIBITED="GENERATED_IMAGE_PROHIBITED",t.GENERATED_IMAGE_CELEBRITY="GENERATED_IMAGE_CELEBRITY",t.GENERATED_IMAGE_PROMINENT_PEOPLE_DETECTED_BY_REWRITER="GENERATED_IMAGE_PROMINENT_PEOPLE_DETECTED_BY_REWRITER",t.GENERATED_IMAGE_IDENTIFIABLE_PEOPLE="GENERATED_IMAGE_IDENTIFIABLE_PEOPLE",t.GENERATED_IMAGE_MINORS="GENERATED_IMAGE_MINORS",t.OUTPUT_IMAGE_IP_PROHIBITED="OUTPUT_IMAGE_IP_PROHIBITED",t.GENERATED_OTHER="GENERATED_OTHER",t.MAX_REGENERATION_REACHED="MAX_REGENERATION_REACHED"})(Am||(Am={}));var Cm;(function(t){t.INTERACTION_STATUS_UNSPECIFIED="INTERACTION_STATUS_UNSPECIFIED",t.IN_PROGRESS="IN_PROGRESS",t.REQUIRES_ACTION="REQUIRES_ACTION",t.IDLE="IDLE"})(Cm||(Cm={}));var Sm;(function(t){t.VAD_SIGNAL_TYPE_UNSPECIFIED="VAD_SIGNAL_TYPE_UNSPECIFIED",t.VAD_SIGNAL_TYPE_SOS="VAD_SIGNAL_TYPE_SOS",t.VAD_SIGNAL_TYPE_EOS="VAD_SIGNAL_TYPE_EOS"})(Sm||(Sm={}));var Im;(function(t){t.TYPE_UNSPECIFIED="TYPE_UNSPECIFIED",t.ACTIVITY_START="ACTIVITY_START",t.ACTIVITY_END="ACTIVITY_END"})(Im||(Im={}));var wm;(function(t){t.START_SENSITIVITY_UNSPECIFIED="START_SENSITIVITY_UNSPECIFIED",t.START_SENSITIVITY_HIGH="START_SENSITIVITY_HIGH",t.START_SENSITIVITY_LOW="START_SENSITIVITY_LOW"})(wm||(wm={}));var Rm;(function(t){t.END_SENSITIVITY_UNSPECIFIED="END_SENSITIVITY_UNSPECIFIED",t.END_SENSITIVITY_HIGH="END_SENSITIVITY_HIGH",t.END_SENSITIVITY_LOW="END_SENSITIVITY_LOW"})(Rm||(Rm={}));var Pm;(function(t){t.ACTIVITY_HANDLING_UNSPECIFIED="ACTIVITY_HANDLING_UNSPECIFIED",t.START_OF_ACTIVITY_INTERRUPTS="START_OF_ACTIVITY_INTERRUPTS",t.NO_INTERRUPTION="NO_INTERRUPTION"})(Pm||(Pm={}));var Nm;(function(t){t.TURN_COVERAGE_UNSPECIFIED="TURN_COVERAGE_UNSPECIFIED",t.TURN_INCLUDES_ONLY_ACTIVITY="TURN_INCLUDES_ONLY_ACTIVITY",t.TURN_INCLUDES_ALL_INPUT="TURN_INCLUDES_ALL_INPUT",t.TURN_INCLUDES_AUDIO_ACTIVITY_AND_ALL_VIDEO="TURN_INCLUDES_AUDIO_ACTIVITY_AND_ALL_VIDEO"})(Nm||(Nm={}));var xm;(function(t){t.MODE_UNSPECIFIED="MODE_UNSPECIFIED",t.VERBATIM="VERBATIM",t.SMART="SMART"})(xm||(xm={}));var km;(function(t){t.SCALE_UNSPECIFIED="SCALE_UNSPECIFIED",t.C_MAJOR_A_MINOR="C_MAJOR_A_MINOR",t.D_FLAT_MAJOR_B_FLAT_MINOR="D_FLAT_MAJOR_B_FLAT_MINOR",t.D_MAJOR_B_MINOR="D_MAJOR_B_MINOR",t.E_FLAT_MAJOR_C_MINOR="E_FLAT_MAJOR_C_MINOR",t.E_MAJOR_D_FLAT_MINOR="E_MAJOR_D_FLAT_MINOR",t.F_MAJOR_D_MINOR="F_MAJOR_D_MINOR",t.G_FLAT_MAJOR_E_FLAT_MINOR="G_FLAT_MAJOR_E_FLAT_MINOR",t.G_MAJOR_E_MINOR="G_MAJOR_E_MINOR",t.A_FLAT_MAJOR_F_MINOR="A_FLAT_MAJOR_F_MINOR",t.A_MAJOR_G_FLAT_MINOR="A_MAJOR_G_FLAT_MINOR",t.B_FLAT_MAJOR_G_MINOR="B_FLAT_MAJOR_G_MINOR",t.B_MAJOR_A_FLAT_MINOR="B_MAJOR_A_FLAT_MINOR"})(km||(km={}));var Dm;(function(t){t.MUSIC_GENERATION_MODE_UNSPECIFIED="MUSIC_GENERATION_MODE_UNSPECIFIED",t.QUALITY="QUALITY",t.DIVERSITY="DIVERSITY",t.VOCALIZATION="VOCALIZATION"})(Dm||(Dm={}));var zn;(function(t){t.PLAYBACK_CONTROL_UNSPECIFIED="PLAYBACK_CONTROL_UNSPECIFIED",t.PLAY="PLAY",t.PAUSE="PAUSE",t.STOP="STOP",t.RESET_CONTEXT="RESET_CONTEXT"})(zn||(zn={}));var Mm=class{},bm=class{},Um=class{},Gm=class{};function QM(t,e){return{inlineData:{data:t,mimeType:e}}}function ZM(t,e){return{fileData:{fileUri:t,mimeType:e}}}var Lm=class{};function jM(t,e,n){return Object.assign({fileData:{fileUri:t,mimeType:e}},n&&{mediaResolution:{level:n}})}function Om(t){return{text:t}}function eb(t,e){return{functionCall:{name:t,args:e}}}function tb(t,e,n,r=[]){return{functionResponse:Object.assign({id:t,name:e,response:n},r.length>0&&{parts:r})}}function nb(t,e,n){return Object.assign({inlineData:{data:t,mimeType:e}},n&&{mediaResolution:{level:n}})}function rb(t,e){return{codeExecutionResult:{outcome:t,output:e}}}function ib(t,e){return{executableCode:{code:t,language:e}}}function qm(t){return typeof t=="object"&&t!==null?"fileData"in t||"text"in t||"functionCall"in t||"functionResponse"in t||"inlineData"in t||"videoMetadata"in t||"codeExecutionResult"in t||"executableCode"in t:!1}function zg(t){let e=[];if(typeof t=="string")e.push(Om(t));else if(qm(t))e.push(t);else if(Array.isArray(t)){if(t.length===0)throw new Error("partOrString cannot be an empty array");for(let n of t)if(typeof n=="string")e.push(Om(n));else if(qm(n))e.push(n);else throw new Error("element in PartUnion must be a Part object or string")}else throw new Error("partOrString must be a Part object, string, or array");return e}function ob(t){return{role:"user",parts:zg(t)}}function sb(t){return{role:"model",parts:zg(t)}}var en=class{constructor(e){let n={};for(let r of e.headers.entries())n[r[0]]=r[1];this.headers=n,this.responseInternal=e}json(){return this.responseInternal.json()}},Fm=class{},Bm=class{},yn=class{get text(){var e,n,r,i,o,a,u,c;if(((i=(r=(n=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||n===void 0?void 0:n.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning text from the first one.");let d="",f=!1,p=[];for(let h of(c=(u=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)!==null&&c!==void 0?c:[]){for(let[g,_]of Object.entries(h))g!=="text"&&g!=="thought"&&g!=="thoughtSignature"&&(_!==null||_!==void 0)&&p.push(g);if(typeof h.text=="string"){if(typeof h.thought=="boolean"&&h.thought)continue;f=!0,d+=h.text}}return p.length>0&&console.warn(`there are non-text parts ${p} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),f?d:void 0}get data(){var e,n,r,i,o,a,u,c;if(((i=(r=(n=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||n===void 0?void 0:n.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning data from the first one.");let d="",f=[];for(let p of(c=(u=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)!==null&&c!==void 0?c:[]){for(let[h,g]of Object.entries(p))h!=="inlineData"&&(g!==null||g!==void 0)&&f.push(h);p.inlineData&&typeof p.inlineData.data=="string"&&(d+=atob(p.inlineData.data))}return f.length>0&&console.warn(`there are non-data parts ${f} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),d.length>0?btoa(d):void 0}get functionCalls(){var e,n,r,i,o,a,u,c;if(((i=(r=(n=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||n===void 0?void 0:n.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning function calls from the first one.");let d=(c=(u=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)===null||c===void 0?void 0:c.filter(f=>f.functionCall).map(f=>f.functionCall).filter(f=>f!==void 0);if(d?.length!==0)return d}get executableCode(){var e,n,r,i,o,a,u,c,d;if(((i=(r=(n=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||n===void 0?void 0:n.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning executable code from the first one.");let f=(c=(u=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)===null||c===void 0?void 0:c.filter(p=>p.executableCode).map(p=>p.executableCode).filter(p=>p!==void 0);if(f?.length!==0)return(d=f?.[0])===null||d===void 0?void 0:d.code}get codeExecutionResult(){var e,n,r,i,o,a,u,c,d;if(((i=(r=(n=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||n===void 0?void 0:n.content)===null||r===void 0?void 0:r.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning code execution result from the first one.");let f=(c=(u=(a=(o=this.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content)===null||u===void 0?void 0:u.parts)===null||c===void 0?void 0:c.filter(p=>p.codeExecutionResult).map(p=>p.codeExecutionResult).filter(p=>p!==void 0);if(f?.length!==0)return(d=f?.[0])===null||d===void 0?void 0:d.output}},go=class{},Nl=class{},xl=class{},kl=class{},Dl=class{},Ml=class{},_o=class{},yo=class{},Hm=class{},Vm=class{},$m=class{},Xm=class{},Jm=class{},Eo=class{},bl=class{},Wm=class{},vo=class t{_fromAPIResponse({apiResponse:e,_isVertexAI:n}){let r=new t,i,o=e;return n?i=KC(o):i=WC(o),Object.assign(r,i),r}},Km=class{},Ym=class{},zm=class{},Ul=class{},To=class{},Gl=class{},Ao=class{},Co=class{},Ll=class{},Ol=class{},ql=class{},Qm=class{},Fl=class t{_fromAPIResponse({apiResponse:e,_isVertexAI:n}){let r=new t,o=tS(e);return Object.assign(r,o),r}},Bl=class{},Hl=class{},Vl=class{},$l=class{},Zm=class{},jm=class{},eg=class{},So=class{},tg=class{},ng=class{toReferenceImageAPI(){return{referenceType:"REFERENCE_TYPE_RAW",referenceImage:this.referenceImage,referenceId:this.referenceId}}},rg=class{toReferenceImageAPI(){return{referenceType:"REFERENCE_TYPE_MASK",referenceImage:this.referenceImage,referenceId:this.referenceId,maskImageConfig:this.config}}},ig=class{toReferenceImageAPI(){return{referenceType:"REFERENCE_TYPE_CONTROL",referenceImage:this.referenceImage,referenceId:this.referenceId,controlImageConfig:this.config}}},og=class{toReferenceImageAPI(){return{referenceType:"REFERENCE_TYPE_STYLE",referenceImage:this.referenceImage,referenceId:this.referenceId,styleImageConfig:this.config}}},sg=class{toReferenceImageAPI(){return{referenceType:"REFERENCE_TYPE_SUBJECT",referenceImage:this.referenceImage,referenceId:this.referenceId,subjectImageConfig:this.config}}},ag=class{toReferenceImageAPI(){return{referenceType:"REFERENCE_TYPE_CONTENT",referenceImage:this.referenceImage,referenceId:this.referenceId}}},Xl=class{get text(){var e,n,r;let i="",o=!1,a=[];for(let u of(r=(n=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||n===void 0?void 0:n.parts)!==null&&r!==void 0?r:[]){for(let[c,d]of Object.entries(u))c!=="text"&&c!=="thought"&&d!==null&&a.push(c);if(typeof u.text=="string"){if(typeof u.thought=="boolean"&&u.thought)continue;o=!0,i+=u.text}}return a.length>0&&console.warn(`there are non-text parts ${a} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),o?i:void 0}get data(){var e,n,r;let i="",o=[];for(let a of(r=(n=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||n===void 0?void 0:n.parts)!==null&&r!==void 0?r:[]){for(let[u,c]of Object.entries(a))u!=="inlineData"&&c!==null&&o.push(u);a.inlineData&&typeof a.inlineData.data=="string"&&(i+=atob(a.inlineData.data))}return o.length>0&&console.warn(`there are non-data parts ${o} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),i.length>0?btoa(i):void 0}},lg=class{},ug=class{constructor(){this.functionResponses=[]}},Jl=class{get audioChunk(){if(this.serverContent&&this.serverContent.audioChunks&&this.serverContent.audioChunks.length>0)return this.serverContent.audioChunks[0]}},cg=class{},Io=class t{_fromAPIResponse({apiResponse:e,_isVertexAI:n}){let r=new t,o=oc(e);return Object.assign(r,o),r}};function he(t,e){if(!e||typeof e!="string")throw new Error("model is required and must be a string");if(e.includes("..")||e.includes("?")||e.includes("&"))throw new Error("invalid model parameter");if(t.isVertexAI()){if(e.startsWith("publishers/")||e.startsWith("projects/")||e.startsWith("models/"))return e;if(e.indexOf("/")>=0){let n=e.split("/",2);return`publishers/${n[0]}/models/${n[1]}`}else return`publishers/google/models/${e}`}else return e.startsWith("models/")||e.startsWith("tunedModels/")?e:`models/${e}`}function Qg(t,e){let n=he(t,e);return n?n.startsWith("publishers/")&&t.isVertexAI()?`projects/${t.getProject()}/locations/${t.getLocation()}/${n}`:n.startsWith("models/")&&t.isVertexAI()?`projects/${t.getProject()}/locations/${t.getLocation()}/publishers/google/${n}`:n:""}function Zg(t){return Array.isArray(t)?t.map(e=>wo(e)):[wo(t)]}function wo(t){if(typeof t=="object"&&t!==null)return t;throw new Error(`Could not parse input as Blob. Unsupported blob type: ${typeof t}`)}function jg(t){let e=wo(t);if(e.mimeType&&e.mimeType.startsWith("image/"))return e;throw new Error(`Unsupported mime type: ${e.mimeType}`)}function e_(t){let e=wo(t);if(e.mimeType&&e.mimeType.startsWith("audio/"))return e;throw new Error(`Unsupported mime type: ${e.mimeType}`)}function dg(t){if(t==null)throw new Error("PartUnion is required");if(typeof t=="object")return t;if(typeof t=="string")return{text:t};throw new Error(`Unsupported part type: ${typeof t}`)}function t_(t){if(t==null||Array.isArray(t)&&t.length===0)throw new Error("PartListUnion is required");return Array.isArray(t)?t.map(e=>dg(e)):[dg(t)]}function Wl(t){return t!=null&&typeof t=="object"&&"parts"in t&&Array.isArray(t.parts)}function fg(t){return t!=null&&typeof t=="object"&&"functionCall"in t}function pg(t){return t!=null&&typeof t=="object"&&"functionResponse"in t}function De(t){if(t==null)throw new Error("ContentUnion is required");return Wl(t)?t:{role:"user",parts:t_(t)}}function sc(t,e){if(!e)return[];if(t.isVertexAI()&&Array.isArray(e))return e.flatMap(n=>{let r=De(n);return r.parts&&r.parts.length>0&&r.parts[0].text!==void 0?[r.parts[0].text]:[]});if(t.isVertexAI()){let n=De(e);return n.parts&&n.parts.length>0&&n.parts[0].text!==void 0?[n.parts[0].text]:[]}return Array.isArray(e)?e.map(n=>De(n)):[De(e)]}function Oe(t){if(t==null||Array.isArray(t)&&t.length===0)throw new Error("contents are required");if(!Array.isArray(t)){if(fg(t)||pg(t))throw new Error("To specify functionCall or functionResponse parts, please wrap them in a Content object, specifying the role for them");return[De(t)]}let e=[],n=[],r=Wl(t[0]);for(let i of t){let o=Wl(i);if(o!=r)throw new Error("Mixing Content and Parts is not supported, please group the parts into a the appropriate Content objects and specify the roles for them");if(o)e.push(i);else{if(fg(i)||pg(i))throw new Error("To specify functionCall or functionResponse parts, please wrap them, and any other parts, in Content objects as appropriate, specifying the role for them");n.push(i)}}return r||e.push({role:"user",parts:t_(n)}),e}function sS(t,e){t.includes("null")&&(e.nullable=!0);let n=t.filter(r=>r!=="null");if(n.length===1)e.type=Object.values(Qt).includes(n[0].toUpperCase())?n[0].toUpperCase():Qt.TYPE_UNSPECIFIED;else{e.anyOf=[];for(let r of n)e.anyOf.push({type:Object.values(Qt).includes(r.toUpperCase())?r.toUpperCase():Qt.TYPE_UNSPECIFIED})}}function Zn(t){let e={},n=["items"],r=["anyOf"],i=["properties"];if(t.type&&t.anyOf)throw new Error("type and anyOf cannot be both populated.");let o=t.anyOf;o!=null&&o.length==2&&(o[0].type==="null"?(e.nullable=!0,t=o[1]):o[1].type==="null"&&(e.nullable=!0,t=o[0])),t.type instanceof Array&&sS(t.type,e);for(let[a,u]of Object.entries(t))if(u!=null)if(a=="type"){if(u==="null")throw new Error("type: null can not be the only possible type for the field.");if(u instanceof Array)continue;e.type=Object.values(Qt).includes(u.toUpperCase())?u.toUpperCase():Qt.TYPE_UNSPECIFIED}else if(n.includes(a))e[a]=Zn(u);else if(r.includes(a)){let c=[];for(let d of u){if(d.type=="null"){e.nullable=!0;continue}c.push(Zn(d))}e[a]=c}else if(i.includes(a)){let c={};for(let[d,f]of Object.entries(u))c[d]=Zn(f);e[a]=c}else{if(a==="additionalProperties")continue;e[a]=u}return e}function ac(t){return Zn(t)}function lc(t){if(typeof t=="object")return t;if(typeof t=="string")return{voiceConfig:{prebuiltVoiceConfig:{voiceName:t}}};throw new Error(`Unsupported speechConfig type: ${typeof t}`)}function uc(t){if("multiSpeakerVoiceConfig"in t)throw new Error("multiSpeakerVoiceConfig is not supported in the live API.");return t}function rr(t){if(t.functionDeclarations)for(let e of t.functionDeclarations)e.parameters&&(Object.keys(e.parameters).includes("$schema")?e.parametersJsonSchema||(e.parametersJsonSchema=e.parameters,delete e.parameters):e.parameters=Zn(e.parameters)),e.response&&(Object.keys(e.response).includes("$schema")?e.responseJsonSchema||(e.responseJsonSchema=e.response,delete e.response):e.response=Zn(e.response));return t}function ir(t){if(t==null)throw new Error("tools is required");if(!Array.isArray(t))throw new Error("tools is required and must be an array of Tools");let e=[];for(let n of t)e.push(n);return e}function aS(t,e,n,r=1){let i=!e.startsWith(`${n}/`)&&e.split("/").length===r;return t.isVertexAI()?e.startsWith("projects/")?e:e.startsWith("locations/")?`projects/${t.getProject()}/${e}`:e.startsWith(`${n}/`)?`projects/${t.getProject()}/locations/${t.getLocation()}/${e}`:i?`projects/${t.getProject()}/locations/${t.getLocation()}/${n}/${e}`:e:i?`${n}/${e}`:e}function Ht(t,e){if(typeof e!="string")throw new Error("name must be a string");return aS(t,e,"cachedContents")}function n_(t){switch(t){case"STATE_UNSPECIFIED":return"JOB_STATE_UNSPECIFIED";case"CREATING":return"JOB_STATE_RUNNING";case"ACTIVE":return"JOB_STATE_SUCCEEDED";case"FAILED":return"JOB_STATE_FAILED";default:return t}}function vn(t){return ic(t)}function lS(t){return t!=null&&typeof t=="object"&&"name"in t}function r_(t){return t!=null&&typeof t=="object"&&"video"in t}function i_(t){return t!=null&&typeof t=="object"&&"uri"in t}function cc(t){var e;let n;if(lS(t)&&(n=t.name),!(i_(t)&&(n=t.uri,n===void 0))&&!(r_(t)&&(n=(e=t.video)===null||e===void 0?void 0:e.uri,n===void 0))){if(typeof t=="string"&&(n=t),n===void 0)throw new Error("Could not extract file name from the provided input.");if(n.startsWith("https://")){let i=n.split("files/")[1].match(/[a-z0-9]+/);if(i===null)throw new Error(`Could not extract file name from URI ${n}`);n=i[0]}else n.startsWith("files/")&&(n=n.split("files/")[1]);return n}}function o_(t,e){let n;return t.isVertexAI()?n=e?"publishers/google/models":"models":n=e?"models":"tunedModels",n}function s_(t){for(let e of["models","tunedModels","publisherModels"])if(uS(t,e))return t[e];return[]}function uS(t,e){return t!==null&&typeof t=="object"&&e in t}function cS(t,e={}){let n=t,r={name:n.name,description:n.description,parametersJsonSchema:n.inputSchema};return n.outputSchema&&(r.responseJsonSchema=n.outputSchema),e.behavior&&(r.behavior=e.behavior),{functionDeclarations:[r]}}function dS(t,e={}){let n=[],r=new Set;for(let i of t){let o=i.name;if(r.has(o))throw new Error(`Duplicate function name ${o} found in MCP tools. Please ensure function names are unique.`);r.add(o);let a=cS(i,e);a.functionDeclarations&&n.push(...a.functionDeclarations)}return{functionDeclarations:n}}function a_(t,e){let n;if(typeof e=="string")if(t.isVertexAI())if(e.startsWith("gs://"))n={format:"jsonl",gcsUri:[e]};else if(e.startsWith("bq://"))n={format:"bigquery",bigqueryUri:e};else if(/^projects\/[^/]+\/locations\/[^/]+\/datasets\/[^/]+$/.test(e))n={format:"vertex-dataset",vertexDatasetName:e};else throw new Error(`Unsupported string source for Vertex AI: ${e}`);else if(e.startsWith("files/"))n={fileName:e};else throw new Error(`Unsupported string source for Gemini API: ${e}`);else if(Array.isArray(e)){if(t.isVertexAI())throw new Error("InlinedRequest[] is not supported in Vertex AI.");n={inlinedRequests:e}}else n=e;let r=[n.gcsUri,n.bigqueryUri,n.vertexDatasetName].filter(Boolean).length,i=[n.inlinedRequests,n.fileName].filter(Boolean).length;if(t.isVertexAI()){if(i>0||r!==1)throw new Error("Exactly one of `gcsUri`, `bigqueryUri`, or `vertexDatasetName` must be set for Vertex AI.")}else if(r>0||i!==1)throw new Error("Exactly one of `inlinedRequests`, `fileName`, must be set for Gemini API.");return n}function fS(t){if(typeof t!="string")return t;let e=t;if(e.startsWith("gs://"))return{format:"jsonl",gcsUri:e};if(e.startsWith("bq://"))return{format:"bigquery",bigqueryUri:e};throw new Error(`Unsupported destination: ${e}`)}function l_(t){if(typeof t!="object"||t===null)return{};let e=t,n=e.inlinedResponses;if(typeof n!="object"||n===null)return t;let i=n.inlinedResponses;if(!Array.isArray(i)||i.length===0)return t;let o=!1;for(let a of i){if(typeof a!="object"||a===null)continue;let c=a.response;if(typeof c!="object"||c===null)continue;if(c.embedding!==void 0){o=!0;break}}return o&&(e.inlinedEmbedContentResponses=e.inlinedResponses,delete e.inlinedResponses),t}function or(t,e){let n=e;if(!t.isVertexAI()){if(/batches\/[^/]+$/.test(n))return n.split("/").pop();throw new Error(`Invalid batch job name: ${n}.`)}if(/^projects\/[^/]+\/locations\/[^/]+\/batchPredictionJobs\/[^/]+$/.test(n))return n.split("/").pop();if(/^\d+$/.test(n))return n;throw new Error(`Invalid batch job name: ${n}.`)}function u_(t){let e=t;return e==="BATCH_STATE_UNSPECIFIED"?"JOB_STATE_UNSPECIFIED":e==="BATCH_STATE_PENDING"?"JOB_STATE_PENDING":e==="BATCH_STATE_RUNNING"?"JOB_STATE_RUNNING":e==="BATCH_STATE_SUCCEEDED"?"JOB_STATE_SUCCEEDED":e==="BATCH_STATE_FAILED"?"JOB_STATE_FAILED":e==="BATCH_STATE_CANCELLED"?"JOB_STATE_CANCELLED":e==="BATCH_STATE_EXPIRED"?"JOB_STATE_EXPIRED":e}function pS(t){return t.includes("gemini")&&t!=="gemini-embedding-001"||t.includes("maas")}function hS(t){let e={},n=s(t,["apiKey"]);if(n!=null&&l(e,["apiKey"],n),s(t,["apiKeyConfig"])!==void 0)throw new Error("apiKeyConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["authType"])!==void 0)throw new Error("authType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["googleServiceAccountConfig"])!==void 0)throw new Error("googleServiceAccountConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["httpBasicAuthConfig"])!==void 0)throw new Error("httpBasicAuthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oauthConfig"])!==void 0)throw new Error("oauthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oidcConfig"])!==void 0)throw new Error("oidcConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function mS(t){let e={},n=s(t,["responsesFile"]);n!=null&&l(e,["fileName"],n);let r=s(t,["inlinedResponses","inlinedResponses"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(a=>YS(a))),l(e,["inlinedResponses"],o)}let i=s(t,["inlinedEmbedContentResponses","inlinedResponses"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["inlinedEmbedContentResponses"],o)}return e}function gS(t){let e={},n=s(t,["predictionsFormat"]);n!=null&&l(e,["format"],n);let r=s(t,["gcsDestination","outputUriPrefix"]);r!=null&&l(e,["gcsUri"],r);let i=s(t,["bigqueryDestination","outputUri"]);i!=null&&l(e,["bigqueryUri"],i);let o=s(t,["vertexMultimodalDatasetDestination"]);return o!=null&&l(e,["vertexDataset"],sI(o)),e}function _S(t){let e={},n=s(t,["format"]);n!=null&&l(e,["predictionsFormat"],n);let r=s(t,["gcsUri"]);r!=null&&l(e,["gcsDestination","outputUriPrefix"],r);let i=s(t,["bigqueryUri"]);i!=null&&l(e,["bigqueryDestination","outputUri"],i);let o=s(t,["vertexDataset"]);if(o!=null&&l(e,["vertexMultimodalDatasetDestination"],aI(o)),s(t,["fileName"])!==void 0)throw new Error("fileName parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["inlinedResponses"])!==void 0)throw new Error("inlinedResponses parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["inlinedEmbedContentResponses"])!==void 0)throw new Error("inlinedEmbedContentResponses parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function fo(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["metadata","displayName"]);r!=null&&l(e,["displayName"],r);let i=s(t,["metadata","state"]);i!=null&&l(e,["state"],u_(i));let o=s(t,["metadata","createTime"]);o!=null&&l(e,["createTime"],o);let a=s(t,["metadata","endTime"]);a!=null&&l(e,["endTime"],a);let u=s(t,["metadata","updateTime"]);u!=null&&l(e,["updateTime"],u);let c=s(t,["metadata","model"]);c!=null&&l(e,["model"],c);let d=s(t,["metadata","output"]);return d!=null&&l(e,["dest"],mS(l_(d))),e}function Kl(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["displayName"]);r!=null&&l(e,["displayName"],r);let i=s(t,["state"]);i!=null&&l(e,["state"],u_(i));let o=s(t,["error"]);o!=null&&l(e,["error"],o);let a=s(t,["createTime"]);a!=null&&l(e,["createTime"],a);let u=s(t,["startTime"]);u!=null&&l(e,["startTime"],u);let c=s(t,["endTime"]);c!=null&&l(e,["endTime"],c);let d=s(t,["updateTime"]);d!=null&&l(e,["updateTime"],d);let f=s(t,["model"]);f!=null&&l(e,["model"],f);let p=s(t,["inputConfig"]);p!=null&&l(e,["src"],yS(p));let h=s(t,["outputConfig"]);h!=null&&l(e,["dest"],gS(l_(h)));let g=s(t,["outputInfo"]);g!=null&&l(e,["outputInfo"],g);let _=s(t,["completionStats"]);return _!=null&&l(e,["completionStats"],_),e}function yS(t){let e={},n=s(t,["instancesFormat"]);n!=null&&l(e,["format"],n);let r=s(t,["gcsSource","uris"]);r!=null&&l(e,["gcsUri"],r);let i=s(t,["bigquerySource","inputUri"]);i!=null&&l(e,["bigqueryUri"],i);let o=s(t,["vertexMultimodalDatasetSource","datasetName"]);return o!=null&&l(e,["vertexDatasetName"],o),e}function ES(t,e){let n={};if(s(e,["format"])!==void 0)throw new Error("format parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(e,["bigqueryUri"])!==void 0)throw new Error("bigqueryUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(e,["vertexDatasetName"])!==void 0)throw new Error("vertexDatasetName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(e,["fileName"]);r!=null&&l(n,["fileName"],r);let i=s(e,["inlinedRequests"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>KS(t,a))),l(n,["requests","requests"],o)}return n}function vS(t){let e={},n=s(t,["format"]);n!=null&&l(e,["instancesFormat"],n);let r=s(t,["gcsUri"]);r!=null&&l(e,["gcsSource","uris"],r);let i=s(t,["bigqueryUri"]);i!=null&&l(e,["bigquerySource","inputUri"],i);let o=s(t,["vertexDatasetName"]);if(o!=null&&l(e,["vertexMultimodalDatasetSource","datasetName"],o),s(t,["fileName"])!==void 0)throw new Error("fileName parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["inlinedRequests"])!==void 0)throw new Error("inlinedRequests parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function TS(t){let e={},n=s(t,["data"]);if(n!=null&&l(e,["data"],n),s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function AS(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],or(t,r)),n}function CS(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],or(t,r)),n}function SS(t){let e={},n=s(t,["content"]);n!=null&&l(e,["content"],n);let r=s(t,["citationMetadata"]);r!=null&&l(e,["citationMetadata"],IS(r));let i=s(t,["tokenCount"]);i!=null&&l(e,["tokenCount"],i);let o=s(t,["finishReason"]);o!=null&&l(e,["finishReason"],o);let a=s(t,["groundingMetadata"]);a!=null&&l(e,["groundingMetadata"],a);let u=s(t,["avgLogprobs"]);u!=null&&l(e,["avgLogprobs"],u);let c=s(t,["index"]);c!=null&&l(e,["index"],c);let d=s(t,["logprobsResult"]);d!=null&&l(e,["logprobsResult"],d);let f=s(t,["safetyRatings"]);if(f!=null){let h=f;Array.isArray(h)&&(h=h.map(g=>g)),l(e,["safetyRatings"],h)}let p=s(t,["urlContextMetadata"]);return p!=null&&l(e,["urlContextMetadata"],p),e}function IS(t){let e={},n=s(t,["citationSources"]);if(n!=null){let r=n;Array.isArray(r)&&(r=r.map(i=>i)),l(e,["citations"],r)}return e}function c_(t){let e={},n=s(t,["parts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(o=>nI(o))),l(e,["parts"],i)}let r=s(t,["role"]);return r!=null&&l(e,["role"],r),e}function wS(t,e){let n={},r=s(t,["displayName"]);if(e!==void 0&&r!=null&&l(e,["batch","displayName"],r),s(t,["dest"])!==void 0)throw new Error("dest parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let i=s(t,["webhookConfig"]);return e!==void 0&&i!=null&&l(e,["batch","webhookConfig"],i),n}function RS(t,e){let n={},r=s(t,["displayName"]);e!==void 0&&r!=null&&l(e,["displayName"],r);let i=s(t,["dest"]);if(e!==void 0&&i!=null&&l(e,["outputConfig"],_S(fS(i))),s(t,["webhookConfig"])!==void 0)throw new Error("webhookConfig parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function hg(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["_url","model"],he(t,r));let i=s(e,["src"]);i!=null&&l(n,["batch","inputConfig"],ES(t,a_(t,i)));let o=s(e,["config"]);return o!=null&&wS(o,n),n}function PS(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["model"],he(t,r));let i=s(e,["src"]);i!=null&&l(n,["inputConfig"],vS(a_(t,i)));let o=s(e,["config"]);return o!=null&&RS(o,n),n}function NS(t,e){let n={},r=s(t,["displayName"]);return e!==void 0&&r!=null&&l(e,["batch","displayName"],r),n}function xS(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["_url","model"],he(t,r));let i=s(e,["src"]);i!=null&&l(n,["batch","inputConfig"],LS(t,i));let o=s(e,["config"]);return o!=null&&NS(o,n),n}function kS(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],or(t,r)),n}function DS(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],or(t,r)),n}function MS(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["name"]);r!=null&&l(e,["name"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);return o!=null&&l(e,["error"],o),e}function bS(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["name"]);r!=null&&l(e,["name"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);return o!=null&&l(e,["error"],o),e}function US(t,e){let n={},r=s(e,["contents"]);if(r!=null){let o=sc(t,r);Array.isArray(o)&&(o=o.map(a=>a)),l(n,["requests[]","request","content"],o)}let i=s(e,["config"]);return i!=null&&(l(n,["_self"],GS(i,n)),XC(n,{"requests[].*":"requests[].request.*"})),n}function GS(t,e){let n={},r=s(t,["taskType"]);e!==void 0&&r!=null&&l(e,["requests[]","taskType"],r);let i=s(t,["title"]);e!==void 0&&i!=null&&l(e,["requests[]","title"],i);let o=s(t,["outputDimensionality"]);if(e!==void 0&&o!=null&&l(e,["requests[]","outputDimensionality"],o),s(t,["mimeType"])!==void 0)throw new Error("mimeType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["documentOcr"])!==void 0)throw new Error("documentOcr parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["audioTrackExtraction"])!==void 0)throw new Error("audioTrackExtraction parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function LS(t,e){let n={},r=s(e,["fileName"]);r!=null&&l(n,["file_name"],r);let i=s(e,["inlinedRequests"]);return i!=null&&l(n,["requests"],US(t,i)),n}function OS(t){let e={};if(s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["fileUri"]);n!=null&&l(e,["fileUri"],n);let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function qS(t){let e={},n=s(t,["args"]);n!=null&&l(e,["args"],n);let r=s(t,["id"]);r!=null&&l(e,["id"],r);let i=s(t,["name"]);if(i!=null&&l(e,["name"],i),s(t,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["willContinue"])!==void 0)throw new Error("willContinue parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function FS(t){let e={},n=s(t,["allowedFunctionNames"]);n!=null&&l(e,["allowedFunctionNames"],n);let r=s(t,["mode"]);if(r!=null&&l(e,["mode"],r),s(t,["streamFunctionCallArguments"])!==void 0)throw new Error("streamFunctionCallArguments parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function BS(t,e,n){let r={},i=s(e,["serviceTier"]);n!==void 0&&i!=null&&l(n,["serviceTier"],i);let o=s(e,["systemInstruction"]);n!==void 0&&o!=null&&l(n,["systemInstruction"],c_(De(o)));let a=s(e,["temperature"]);a!=null&&l(r,["temperature"],a);let u=s(e,["topP"]);u!=null&&l(r,["topP"],u);let c=s(e,["topK"]);c!=null&&l(r,["topK"],c);let d=s(e,["candidateCount"]);d!=null&&l(r,["candidateCount"],d);let f=s(e,["maxOutputTokens"]);f!=null&&l(r,["maxOutputTokens"],f);let p=s(e,["stopSequences"]);p!=null&&l(r,["stopSequences"],p);let h=s(e,["responseLogprobs"]);h!=null&&l(r,["responseLogprobs"],h);let g=s(e,["logprobs"]);g!=null&&l(r,["logprobs"],g);let _=s(e,["presencePenalty"]);_!=null&&l(r,["presencePenalty"],_);let m=s(e,["frequencyPenalty"]);m!=null&&l(r,["frequencyPenalty"],m);let E=s(e,["seed"]);E!=null&&l(r,["seed"],E);let y=s(e,["responseMimeType"]);y!=null&&l(r,["responseMimeType"],y);let A=s(e,["responseSchema"]);A!=null&&l(r,["responseSchema"],ac(A));let T=s(e,["responseJsonSchema"]);if(T!=null&&l(r,["responseJsonSchema"],T),s(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let C=s(e,["safetySettings"]);if(n!==void 0&&C!=null){let Q=C;Array.isArray(Q)&&(Q=Q.map(te=>rI(te))),l(n,["safetySettings"],Q)}let w=s(e,["tools"]);if(n!==void 0&&w!=null){let Q=ir(w);Array.isArray(Q)&&(Q=Q.map(te=>oI(rr(te)))),l(n,["tools"],Q)}let k=s(e,["toolConfig"]);if(n!==void 0&&k!=null&&l(n,["toolConfig"],iI(k)),s(e,["labels"])!==void 0)throw new Error("labels parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let O=s(e,["cachedContent"]);n!==void 0&&O!=null&&l(n,["cachedContent"],Ht(t,O));let B=s(e,["responseModalities"]);B!=null&&l(r,["responseModalities"],B);let N=s(e,["mediaResolution"]);N!=null&&l(r,["mediaResolution"],N);let q=s(e,["speechConfig"]);if(q!=null&&l(r,["speechConfig"],lc(q)),s(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let $=s(e,["thinkingConfig"]);$!=null&&l(r,["thinkingConfig"],$);let z=s(e,["audioTranscriptionConfig"]);z!=null&&l(r,["audioTranscriptionConfig"],z);let ne=s(e,["imageConfig"]);ne!=null&&l(r,["imageConfig"],WS(ne));let M=s(e,["enableEnhancedCivicAnswers"]);if(M!=null&&l(r,["enableEnhancedCivicAnswers"],M),s(e,["modelArmorConfig"])!==void 0)throw new Error("modelArmorConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return r}function HS(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["candidates"]);if(r!=null){let d=r;Array.isArray(d)&&(d=d.map(f=>SS(f))),l(e,["candidates"],d)}let i=s(t,["modelVersion"]);i!=null&&l(e,["modelVersion"],i);let o=s(t,["promptFeedback"]);o!=null&&l(e,["promptFeedback"],o);let a=s(t,["responseId"]);a!=null&&l(e,["responseId"],a);let u=s(t,["usageMetadata"]);u!=null&&l(e,["usageMetadata"],u);let c=s(t,["modelStatus"]);return c!=null&&l(e,["modelStatus"],c),e}function VS(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],or(t,r)),n}function $S(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],or(t,r)),n}function XS(t){let e={},n=s(t,["authConfig"]);n!=null&&l(e,["authConfig"],hS(n));let r=s(t,["enableWidget"]);if(r!=null&&l(e,["enableWidget"],r),s(t,["groundingTypes"])!==void 0)throw new Error("groundingTypes parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function JS(t){let e={};if(s(t,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["searchTypes"]);n!=null&&l(e,["searchTypes"],n);let r=s(t,["timeRangeFilter"]);return r!=null&&l(e,["timeRangeFilter"],r),e}function WS(t){let e={},n=s(t,["aspectRatio"]);n!=null&&l(e,["aspectRatio"],n);let r=s(t,["imageSize"]);if(r!=null&&l(e,["imageSize"],r),s(t,["personGeneration"])!==void 0)throw new Error("personGeneration parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["outputMimeType"])!==void 0)throw new Error("outputMimeType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["outputCompressionQuality"])!==void 0)throw new Error("outputCompressionQuality parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["imageOutputOptions"])!==void 0)throw new Error("imageOutputOptions parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["prominentPeople"])!==void 0)throw new Error("prominentPeople parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function KS(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["request","model"],he(t,r));let i=s(e,["contents"]);if(i!=null){let u=Oe(i);Array.isArray(u)&&(u=u.map(c=>c_(c))),l(n,["request","contents"],u)}let o=s(e,["metadata"]);o!=null&&l(n,["metadata"],o);let a=s(e,["config"]);return a!=null&&l(n,["request","generationConfig"],BS(t,a,s(n,["request"],{}))),n}function YS(t){let e={},n=s(t,["response"]);n!=null&&l(e,["response"],HS(n));let r=s(t,["metadata"]);r!=null&&l(e,["metadata"],r);let i=s(t,["error"]);return i!=null&&l(e,["error"],i),e}function zS(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);if(e!==void 0&&i!=null&&l(e,["_query","pageToken"],i),s(t,["filter"])!==void 0)throw new Error("filter parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function QS(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);e!==void 0&&i!=null&&l(e,["_query","pageToken"],i);let o=s(t,["filter"]);return e!==void 0&&o!=null&&l(e,["_query","filter"],o),n}function ZS(t){let e={},n=s(t,["config"]);return n!=null&&zS(n,e),e}function jS(t){let e={},n=s(t,["config"]);return n!=null&&QS(n,e),e}function eI(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["operations"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>fo(a))),l(e,["batchJobs"],o)}return e}function tI(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["batchPredictionJobs"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>Kl(a))),l(e,["batchJobs"],o)}return e}function nI(t){let e={},n=s(t,["mediaResolution"]);n!=null&&l(e,["mediaResolution"],n);let r=s(t,["toolCall"]);r!=null&&l(e,["toolCall"],r);let i=s(t,["toolResponse"]);i!=null&&l(e,["toolResponse"],i);let o=s(t,["audioTranscription"]);o!=null&&l(e,["audioTranscription"],o);let a=s(t,["codeExecutionResult"]);a!=null&&l(e,["codeExecutionResult"],a);let u=s(t,["executableCode"]);u!=null&&l(e,["executableCode"],u);let c=s(t,["fileData"]);c!=null&&l(e,["fileData"],OS(c));let d=s(t,["functionCall"]);d!=null&&l(e,["functionCall"],qS(d));let f=s(t,["functionResponse"]);f!=null&&l(e,["functionResponse"],f);let p=s(t,["inlineData"]);p!=null&&l(e,["inlineData"],TS(p));let h=s(t,["text"]);h!=null&&l(e,["text"],h);let g=s(t,["thought"]);g!=null&&l(e,["thought"],g);let _=s(t,["thoughtSignature"]);_!=null&&l(e,["thoughtSignature"],_);let m=s(t,["videoMetadata"]);m!=null&&l(e,["videoMetadata"],m);let E=s(t,["partMetadata"]);E!=null&&l(e,["partMetadata"],E);let y=s(t,["mediaProcessing"]);return y!=null&&l(e,["mediaProcessing"],y),e}function rI(t){let e={},n=s(t,["category"]);if(n!=null&&l(e,["category"],n),s(t,["method"])!==void 0)throw new Error("method parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["threshold"]);return r!=null&&l(e,["threshold"],r),e}function iI(t){let e={},n=s(t,["functionCallingConfig"]);n!=null&&l(e,["functionCallingConfig"],FS(n));let r=s(t,["retrievalConfig"]);r!=null&&l(e,["retrievalConfig"],r);let i=s(t,["includeServerSideToolInvocations"]);return i!=null&&l(e,["includeServerSideToolInvocations"],i),e}function oI(t){let e={};if(s(t,["retrieval"])!==void 0)throw new Error("retrieval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["googleMaps"]);n!=null&&l(e,["googleMaps"],XS(n));let r=s(t,["mcpServers"]);if(r!=null){let p=r;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["mcpServers"],p)}let i=s(t,["codeExecution"]);i!=null&&l(e,["codeExecution"],i);let o=s(t,["computerUse"]);if(o!=null&&l(e,["computerUse"],o),s(t,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["exaAiSearch"])!==void 0)throw new Error("exaAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let a=s(t,["functionDeclarations"]);if(a!=null){let p=a;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["functionDeclarations"],p)}let u=s(t,["googleSearch"]);u!=null&&l(e,["googleSearch"],JS(u));let c=s(t,["googleSearchRetrieval"]);if(c!=null&&l(e,["googleSearchRetrieval"],c),s(t,["parallelAiSearch"])!==void 0)throw new Error("parallelAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let d=s(t,["urlContext"]);d!=null&&l(e,["urlContext"],d);let f=s(t,["fileSearch"]);return f!=null&&l(e,["fileSearch"],f),e}function sI(t){let e={},n=s(t,["bigqueryDestination","outputUri"]);n!=null&&l(e,["bigqueryDestination"],n);let r=s(t,["displayName"]);return r!=null&&l(e,["displayName"],r),e}function aI(t){let e={},n=s(t,["bigqueryDestination"]);n!=null&&l(e,["bigqueryDestination","outputUri"],n);let r=s(t,["displayName"]);return r!=null&&l(e,["displayName"],r),e}var Ft;(function(t){t.PAGED_ITEM_BATCH_JOBS="batchJobs",t.PAGED_ITEM_MODELS="models",t.PAGED_ITEM_TUNING_JOBS="tuningJobs",t.PAGED_ITEM_FILES="files",t.PAGED_ITEM_CACHED_CONTENTS="cachedContents",t.PAGED_ITEM_FILE_SEARCH_STORES="fileSearchStores",t.PAGED_ITEM_DOCUMENTS="documents",t.PAGED_ITEM_SKILLS="skills"})(Ft||(Ft={}));var Bt=class{constructor(e,n,r,i){this.pageInternal=[],this.paramsInternal={},this.requestInternal=n,this.init(e,r,i)}init(e,n,r){var i,o;this.nameInternal=e,this.pageInternal=n[this.nameInternal]||[],this.sdkHttpResponseInternal=n?.sdkHttpResponse,this.idxInternal=0;let a={config:{}};!r||Object.keys(r).length===0?a={config:{}}:typeof r=="object"?a=Object.assign({},r):a=r,a.config&&(a.config.pageToken=n.nextPageToken),this.paramsInternal=a,this.pageInternalSize=(o=(i=a.config)===null||i===void 0?void 0:i.pageSize)!==null&&o!==void 0?o:this.pageInternal.length}initNextPage(e){this.init(this.nameInternal,e,this.paramsInternal)}get page(){return this.pageInternal}get name(){return this.nameInternal}get pageSize(){return this.pageInternalSize}get sdkHttpResponse(){return this.sdkHttpResponseInternal}get params(){return this.paramsInternal}get pageLength(){return this.pageInternal.length}getItem(e){return this.pageInternal[e]}[Symbol.asyncIterator](){return{next:async()=>{if(this.idxInternal>=this.pageLength)if(this.hasNextPage())await this.nextPage();else return{value:void 0,done:!0};let e=this.getItem(this.idxInternal);return this.idxInternal+=1,{value:e,done:!1}},return:async()=>({value:void 0,done:!0})}}async nextPage(){if(!this.hasNextPage())throw new Error("No more pages to fetch.");let e=await this.requestInternal(this.params);return this.initNextPage(e),this.page}hasNextPage(){var e;return((e=this.params.config)===null||e===void 0?void 0:e.pageToken)!==void 0}};var Yl=class extends mt{constructor(e){super(),this.apiClient=e,this.list=async(n={})=>new Bt(Ft.PAGED_ITEM_BATCH_JOBS,r=>this.listInternal(r),await this.listInternal(n),n),this.create=async n=>(this.apiClient.isVertexAI()&&(n.config=this.formatDestination(n.src,n.config)),this.createInternal(n)),this.createEmbeddings=async n=>{if(console.warn("batches.createEmbeddings() is experimental and may change without notice."),this.apiClient.isVertexAI())throw new Error("Gemini Enterprise Agent Platform (previously known as Vertex AI) does not support batches.createEmbeddings.");return this.createEmbeddingsInternal(n)}}createInlinedGenerateContentRequest(e){let n=hg(this.apiClient,e),r=n._url,i=X("{model}:batchGenerateContent",r),u=n.batch.inputConfig.requests,c=u.requests,d=[];for(let f of c){let p=Object.assign({},f);if(p.systemInstruction){let h=p.systemInstruction;delete p.systemInstruction;let g=p.request;g.systemInstruction=h,p.request=g}d.push(p)}return u.requests=d,delete n.config,delete n._url,delete n._query,{path:i,body:n}}getGcsUri(e){if(typeof e=="string")return e.startsWith("gs://")?e:void 0;if(!Array.isArray(e)&&e.gcsUri&&e.gcsUri.length>0)return e.gcsUri[0]}getBigqueryUri(e){if(typeof e=="string")return e.startsWith("bq://")?e:void 0;if(!Array.isArray(e))return e.bigqueryUri}formatDestination(e,n){let r=n?Object.assign({},n):{},i=Date.now().toString();if(r.displayName||(r.displayName=`genaiBatchJob_${i}`),r.dest===void 0){let o=this.getGcsUri(e),a=this.getBigqueryUri(e);if(o)o.endsWith(".jsonl")?r.dest=`${o.slice(0,-6)}/dest`:r.dest=`${o}_dest_${i}`;else if(a)r.dest=`${a}_dest_${i}`;else throw new Error("Unsupported source for Gemini Enterprise Agent Platform (previously known as Vertex AI): No GCS or BigQuery URI found.")}return r}async createInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=PS(this.apiClient,e);return u=X("batchPredictionJobs",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>Kl(f))}else{let d=hg(this.apiClient,e);return u=X("{model}:batchGenerateContent",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>fo(f))}}async createEmbeddingsInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=xS(this.apiClient,e);return o=X("{model}:asyncBatchEmbedContent",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>fo(c))}}async get(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=$S(this.apiClient,e);return u=X("batchPredictionJobs/{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>Kl(f))}else{let d=VS(this.apiClient,e);return u=X("batches/{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>fo(f))}}async cancel(e){var n,r,i,o;let a="",u={};if(this.apiClient.isVertexAI()){let c=CS(this.apiClient,e);a=X("batchPredictionJobs/{name}:cancel",c._url),u=c._query,delete c._url,delete c._query,await this.apiClient.request({path:a,queryParams:u,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal})}else{let c=AS(this.apiClient,e);a=X("batches/{name}:cancel",c._url),u=c._query,delete c._url,delete c._query,await this.apiClient.request({path:a,queryParams:u,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal})}}async listInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=jS(e);return u=X("batchPredictionJobs",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=tI(f),h=new So;return Object.assign(h,p),h})}else{let d=ZS(e);return u=X("batches",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=eI(f),h=new So;return Object.assign(h,p),h})}}async delete(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=DS(this.apiClient,e);return u=X("batchPredictionJobs/{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"DELETE",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>bS(f))}else{let d=kS(this.apiClient,e);return u=X("batches/{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>MS(f))}}};function lI(t){let e={},n=s(t,["apiKey"]);if(n!=null&&l(e,["apiKey"],n),s(t,["apiKeyConfig"])!==void 0)throw new Error("apiKeyConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["authType"])!==void 0)throw new Error("authType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["googleServiceAccountConfig"])!==void 0)throw new Error("googleServiceAccountConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["httpBasicAuthConfig"])!==void 0)throw new Error("httpBasicAuthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oauthConfig"])!==void 0)throw new Error("oauthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oidcConfig"])!==void 0)throw new Error("oidcConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function uI(t){let e={},n=s(t,["data"]);if(n!=null&&l(e,["data"],n),s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function cI(t){let e={},n=s(t,["enablePromptInjectionDetection"]);n!=null&&l(e,["enablePromptInjectionDetection"],n);let r=s(t,["environment"]);r!=null&&l(e,["environment"],r);let i=s(t,["excludedPredefinedFunctions"]);if(i!=null&&l(e,["excludedPredefinedFunctions"],i),s(t,["disabledSafetyPolicies"])!==void 0)throw new Error("disabledSafetyPolicies parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function mg(t){let e={},n=s(t,["parts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(o=>MI(o))),l(e,["parts"],i)}let r=s(t,["role"]);return r!=null&&l(e,["role"],r),e}function gg(t){let e={},n=s(t,["parts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(o=>bI(o))),l(e,["parts"],i)}let r=s(t,["role"]);return r!=null&&l(e,["role"],r),e}function dI(t,e){let n={},r=s(t,["ttl"]);e!==void 0&&r!=null&&l(e,["ttl"],r);let i=s(t,["expireTime"]);e!==void 0&&i!=null&&l(e,["expireTime"],i);let o=s(t,["displayName"]);e!==void 0&&o!=null&&l(e,["displayName"],o);let a=s(t,["contents"]);if(e!==void 0&&a!=null){let f=Oe(a);Array.isArray(f)&&(f=f.map(p=>mg(p))),l(e,["contents"],f)}let u=s(t,["systemInstruction"]);e!==void 0&&u!=null&&l(e,["systemInstruction"],mg(De(u)));let c=s(t,["tools"]);if(e!==void 0&&c!=null){let f=c;Array.isArray(f)&&(f=f.map(p=>LI(p))),l(e,["tools"],f)}let d=s(t,["toolConfig"]);if(e!==void 0&&d!=null&&l(e,["toolConfig"],UI(d)),s(t,["kmsKeyName"])!==void 0)throw new Error("kmsKeyName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function fI(t,e){let n={},r=s(t,["ttl"]);e!==void 0&&r!=null&&l(e,["ttl"],r);let i=s(t,["expireTime"]);e!==void 0&&i!=null&&l(e,["expireTime"],i);let o=s(t,["displayName"]);e!==void 0&&o!=null&&l(e,["displayName"],o);let a=s(t,["contents"]);if(e!==void 0&&a!=null){let p=Oe(a);Array.isArray(p)&&(p=p.map(h=>gg(h))),l(e,["contents"],p)}let u=s(t,["systemInstruction"]);e!==void 0&&u!=null&&l(e,["systemInstruction"],gg(De(u)));let c=s(t,["tools"]);if(e!==void 0&&c!=null){let p=c;Array.isArray(p)&&(p=p.map(h=>OI(h))),l(e,["tools"],p)}let d=s(t,["toolConfig"]);e!==void 0&&d!=null&&l(e,["toolConfig"],GI(d));let f=s(t,["kmsKeyName"]);return e!==void 0&&f!=null&&l(e,["encryption_spec","kmsKeyName"],f),n}function pI(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["model"],Qg(t,r));let i=s(e,["config"]);return i!=null&&dI(i,n),n}function hI(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["model"],Qg(t,r));let i=s(e,["config"]);return i!=null&&fI(i,n),n}function mI(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],Ht(t,r)),n}function gI(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],Ht(t,r)),n}function _I(t){let e={},n=s(t,["sdkHttpResponse"]);return n!=null&&l(e,["sdkHttpResponse"],n),e}function yI(t){let e={},n=s(t,["sdkHttpResponse"]);return n!=null&&l(e,["sdkHttpResponse"],n),e}function EI(t){let e={};if(s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["fileUri"]);n!=null&&l(e,["fileUri"],n);let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function vI(t){let e={},n=s(t,["args"]);n!=null&&l(e,["args"],n);let r=s(t,["id"]);r!=null&&l(e,["id"],r);let i=s(t,["name"]);if(i!=null&&l(e,["name"],i),s(t,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["willContinue"])!==void 0)throw new Error("willContinue parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function TI(t){let e={},n=s(t,["allowedFunctionNames"]);n!=null&&l(e,["allowedFunctionNames"],n);let r=s(t,["mode"]);if(r!=null&&l(e,["mode"],r),s(t,["streamFunctionCallArguments"])!==void 0)throw new Error("streamFunctionCallArguments parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function AI(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],Ht(t,r)),n}function CI(t,e){let n={},r=s(e,["name"]);return r!=null&&l(n,["_url","name"],Ht(t,r)),n}function SI(t){let e={},n=s(t,["authConfig"]);n!=null&&l(e,["authConfig"],lI(n));let r=s(t,["enableWidget"]);if(r!=null&&l(e,["enableWidget"],r),s(t,["groundingTypes"])!==void 0)throw new Error("groundingTypes parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function II(t){let e={};if(s(t,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["searchTypes"]);n!=null&&l(e,["searchTypes"],n);let r=s(t,["timeRangeFilter"]);return r!=null&&l(e,["timeRangeFilter"],r),e}function wI(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);return e!==void 0&&i!=null&&l(e,["_query","pageToken"],i),n}function RI(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);return e!==void 0&&i!=null&&l(e,["_query","pageToken"],i),n}function PI(t){let e={},n=s(t,["config"]);return n!=null&&wI(n,e),e}function NI(t){let e={},n=s(t,["config"]);return n!=null&&RI(n,e),e}function xI(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["cachedContents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["cachedContents"],o)}return e}function kI(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["cachedContents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["cachedContents"],o)}return e}function DI(t){let e={};if(s(t,["name"])!==void 0)throw new Error("name parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["streamableHttpTransport"])!==void 0)throw new Error("streamableHttpTransport parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function MI(t){let e={},n=s(t,["mediaResolution"]);n!=null&&l(e,["mediaResolution"],n);let r=s(t,["toolCall"]);r!=null&&l(e,["toolCall"],r);let i=s(t,["toolResponse"]);i!=null&&l(e,["toolResponse"],i);let o=s(t,["audioTranscription"]);o!=null&&l(e,["audioTranscription"],o);let a=s(t,["codeExecutionResult"]);a!=null&&l(e,["codeExecutionResult"],a);let u=s(t,["executableCode"]);u!=null&&l(e,["executableCode"],u);let c=s(t,["fileData"]);c!=null&&l(e,["fileData"],EI(c));let d=s(t,["functionCall"]);d!=null&&l(e,["functionCall"],vI(d));let f=s(t,["functionResponse"]);f!=null&&l(e,["functionResponse"],f);let p=s(t,["inlineData"]);p!=null&&l(e,["inlineData"],uI(p));let h=s(t,["text"]);h!=null&&l(e,["text"],h);let g=s(t,["thought"]);g!=null&&l(e,["thought"],g);let _=s(t,["thoughtSignature"]);_!=null&&l(e,["thoughtSignature"],_);let m=s(t,["videoMetadata"]);m!=null&&l(e,["videoMetadata"],m);let E=s(t,["partMetadata"]);E!=null&&l(e,["partMetadata"],E);let y=s(t,["mediaProcessing"]);return y!=null&&l(e,["mediaProcessing"],y),e}function bI(t){let e={},n=s(t,["mediaResolution"]);if(n!=null&&l(e,["mediaResolution"],n),s(t,["toolCall"])!==void 0)throw new Error("toolCall parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["toolResponse"])!==void 0)throw new Error("toolResponse parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let r=s(t,["audioTranscription"]);r!=null&&l(e,["audioTranscription"],r);let i=s(t,["codeExecutionResult"]);i!=null&&l(e,["codeExecutionResult"],i);let o=s(t,["executableCode"]);o!=null&&l(e,["executableCode"],o);let a=s(t,["fileData"]);a!=null&&l(e,["fileData"],a);let u=s(t,["functionCall"]);u!=null&&l(e,["functionCall"],u);let c=s(t,["functionResponse"]);c!=null&&l(e,["functionResponse"],c);let d=s(t,["inlineData"]);d!=null&&l(e,["inlineData"],d);let f=s(t,["text"]);f!=null&&l(e,["text"],f);let p=s(t,["thought"]);p!=null&&l(e,["thought"],p);let h=s(t,["thoughtSignature"]);h!=null&&l(e,["thoughtSignature"],h);let g=s(t,["videoMetadata"]);if(g!=null&&l(e,["videoMetadata"],g),s(t,["partMetadata"])!==void 0)throw new Error("partMetadata parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let _=s(t,["mediaProcessing"]);return _!=null&&l(e,["mediaProcessing"],_),e}function UI(t){let e={},n=s(t,["functionCallingConfig"]);n!=null&&l(e,["functionCallingConfig"],TI(n));let r=s(t,["retrievalConfig"]);r!=null&&l(e,["retrievalConfig"],r);let i=s(t,["includeServerSideToolInvocations"]);return i!=null&&l(e,["includeServerSideToolInvocations"],i),e}function GI(t){let e={},n=s(t,["functionCallingConfig"]);n!=null&&l(e,["functionCallingConfig"],n);let r=s(t,["retrievalConfig"]);if(r!=null&&l(e,["retrievalConfig"],r),s(t,["includeServerSideToolInvocations"])!==void 0)throw new Error("includeServerSideToolInvocations parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function LI(t){let e={};if(s(t,["retrieval"])!==void 0)throw new Error("retrieval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["googleMaps"]);n!=null&&l(e,["googleMaps"],SI(n));let r=s(t,["mcpServers"]);if(r!=null){let p=r;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["mcpServers"],p)}let i=s(t,["codeExecution"]);i!=null&&l(e,["codeExecution"],i);let o=s(t,["computerUse"]);if(o!=null&&l(e,["computerUse"],o),s(t,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["exaAiSearch"])!==void 0)throw new Error("exaAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let a=s(t,["functionDeclarations"]);if(a!=null){let p=a;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["functionDeclarations"],p)}let u=s(t,["googleSearch"]);u!=null&&l(e,["googleSearch"],II(u));let c=s(t,["googleSearchRetrieval"]);if(c!=null&&l(e,["googleSearchRetrieval"],c),s(t,["parallelAiSearch"])!==void 0)throw new Error("parallelAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let d=s(t,["urlContext"]);d!=null&&l(e,["urlContext"],d);let f=s(t,["fileSearch"]);return f!=null&&l(e,["fileSearch"],f),e}function OI(t){let e={},n=s(t,["retrieval"]);n!=null&&l(e,["retrieval"],n);let r=s(t,["googleMaps"]);r!=null&&l(e,["googleMaps"],r);let i=s(t,["mcpServers"]);if(i!=null){let _=i;Array.isArray(_)&&(_=_.map(m=>DI(m))),l(e,["mcpServers"],_)}let o=s(t,["codeExecution"]);o!=null&&l(e,["codeExecution"],o);let a=s(t,["computerUse"]);a!=null&&l(e,["computerUse"],cI(a));let u=s(t,["enterpriseWebSearch"]);u!=null&&l(e,["enterpriseWebSearch"],u);let c=s(t,["exaAiSearch"]);c!=null&&l(e,["exaAiSearch"],c);let d=s(t,["functionDeclarations"]);if(d!=null){let _=d;Array.isArray(_)&&(_=_.map(m=>m)),l(e,["functionDeclarations"],_)}let f=s(t,["googleSearch"]);f!=null&&l(e,["googleSearch"],f);let p=s(t,["googleSearchRetrieval"]);p!=null&&l(e,["googleSearchRetrieval"],p);let h=s(t,["parallelAiSearch"]);h!=null&&l(e,["parallelAiSearch"],h);let g=s(t,["urlContext"]);if(g!=null&&l(e,["urlContext"],g),s(t,["fileSearch"])!==void 0)throw new Error("fileSearch parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function qI(t,e){let n={},r=s(t,["ttl"]);e!==void 0&&r!=null&&l(e,["ttl"],r);let i=s(t,["expireTime"]);return e!==void 0&&i!=null&&l(e,["expireTime"],i),n}function FI(t,e){let n={},r=s(t,["ttl"]);e!==void 0&&r!=null&&l(e,["ttl"],r);let i=s(t,["expireTime"]);return e!==void 0&&i!=null&&l(e,["expireTime"],i),n}function BI(t,e){let n={},r=s(e,["name"]);r!=null&&l(n,["_url","name"],Ht(t,r));let i=s(e,["config"]);return i!=null&&qI(i,n),n}function HI(t,e){let n={},r=s(e,["name"]);r!=null&&l(n,["_url","name"],Ht(t,r));let i=s(e,["config"]);return i!=null&&FI(i,n),n}var zl=class extends mt{constructor(e){super(),this.apiClient=e,this.list=async(n={})=>new Bt(Ft.PAGED_ITEM_CACHED_CONTENTS,r=>this.listInternal(r),await this.listInternal(n),n)}async create(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=hI(this.apiClient,e);return u=X("cachedContents",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>f)}else{let d=pI(this.apiClient,e);return u=X("cachedContents",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>f)}}async get(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=CI(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>f)}else{let d=AI(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>f)}}async delete(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=gI(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"DELETE",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=yI(f),h=new Ao;return Object.assign(h,p),h})}else{let d=mI(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=_I(f),h=new Ao;return Object.assign(h,p),h})}}async update(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=HI(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"PATCH",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>f)}else{let d=BI(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>f)}}async listInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=NI(e);return u=X("cachedContents",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=kI(f),h=new Co;return Object.assign(h,p),h})}else{let d=PI(e);return u=X("cachedContents",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=xI(f),h=new Co;return Object.assign(h,p),h})}}};function Re(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n}function _g(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Te(t){return this instanceof Te?(this.v=t,this):new Te(t)}function jn(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),i,o=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),u("next"),u("throw"),u("return",a),i[Symbol.asyncIterator]=function(){return this},i;function a(g){return function(_){return Promise.resolve(_).then(g,p)}}function u(g,_){r[g]&&(i[g]=function(m){return new Promise(function(E,y){o.push([g,m,E,y])>1||c(g,m)})},_&&(i[g]=_(i[g])))}function c(g,_){try{d(r[g](_))}catch(m){h(o[0][3],m)}}function d(g){g.value instanceof Te?Promise.resolve(g.value.v).then(f,p):h(o[0][2],g)}function f(g){c("next",g)}function p(g){c("throw",g)}function h(g,_){g(_),o.shift(),o.length&&c(o[0][0],o[0][1])}}function Ur(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof _g=="function"?_g(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=t[o]&&function(a){return new Promise(function(u,c){a=t[o](a),i(u,c,a.done,a.value)})}}function i(o,a,u,c){Promise.resolve(c).then(function(d){o({value:d,done:u})},a)}}function VI(t){var e;if(t.candidates==null||t.candidates.length===0)return!1;let n=(e=t.candidates[0])===null||e===void 0?void 0:e.content;return n===void 0?!1:d_(n)}function d_(t){if(t.parts===void 0||t.parts.length===0)return!1;for(let e of t.parts)if(e===void 0||Object.keys(e).length===0)return!1;return!0}function $I(t){if(t.length!==0){for(let e of t)if(e.role!=="user"&&e.role!=="model")throw new Error(`Role must be user or model, but got ${e.role}.`)}}function yg(t){if(t===void 0||t.length===0)return[];let e=[],n=t.length,r=0;for(;r<n;)if(t[r].role==="user")e.push(t[r]),r++;else{let i=[],o=!0;for(;r<n&&t[r].role==="model";)i.push(t[r]),o&&!d_(t[r])&&(o=!1),r++;o?e.push(...i):e.pop()}return e}var Ql=class{constructor(e,n){this.modelsModule=e,this.apiClient=n}create(e){return new Zl(this.apiClient,this.modelsModule,e.model,e.config,structuredClone(e.history))}},Zl=class{constructor(e,n,r,i={},o=[]){this.apiClient=e,this.modelsModule=n,this.model=r,this.config=i,this.history=o,this.sendPromise=Promise.resolve(),$I(o)}async sendMessage(e){var n;await this.sendPromise;let r=De(e.message),i=this.modelsModule.generateContent({model:this.model,contents:this.getHistory(!0).concat(r),config:(n=e.config)!==null&&n!==void 0?n:this.config});return this.sendPromise=(async()=>{var o,a,u;let c=await i,d=(a=(o=c.candidates)===null||o===void 0?void 0:o[0])===null||a===void 0?void 0:a.content,f=c.automaticFunctionCallingHistory,p=this.getHistory(!0).length,h=[];f!=null&&(h=(u=f.slice(p))!==null&&u!==void 0?u:[]);let g=d?[d]:[];this.recordHistory(r,g,h)})(),await this.sendPromise.catch(()=>{this.sendPromise=Promise.resolve()}),i}async sendMessageStream(e){var n;await this.sendPromise;let r=De(e.message),i=this.modelsModule.generateContentStream({model:this.model,contents:this.getHistory(!0).concat(r),config:(n=e.config)!==null&&n!==void 0?n:this.config});this.sendPromise=i.then(()=>{}).catch(()=>{});let o=await i;return this.processStreamResponse(o,r)}getHistory(e=!1){let n=e?yg(this.history):this.history;return structuredClone(n)}processStreamResponse(e,n){return jn(this,arguments,function*(){var i,o,a,u,c,d;let f=[];try{for(var p=!0,h=Ur(e),g;g=yield Te(h.next()),i=g.done,!i;p=!0){u=g.value,p=!1;let _=u;if(VI(_)){let m=(d=(c=_.candidates)===null||c===void 0?void 0:c[0])===null||d===void 0?void 0:d.content;m!==void 0&&f.push(m)}yield yield Te(_)}}catch(_){o={error:_}}finally{try{!p&&!i&&(a=h.return)&&(yield Te(a.call(h)))}finally{if(o)throw o.error}}this.recordHistory(n,f)})}recordHistory(e,n,r){let i=[];n.length>0&&n.every(o=>o.role!==void 0)?i=n:i.push({role:"model",parts:[]}),r&&r.length>0?this.history.push(...yg(r)):this.history.push(e),this.history.push(...i)}};var Ro=class t extends Error{constructor(e){super(e.message),this.name="ApiError",this.status=e.status,Object.setPrototypeOf(this,t.prototype)}};function XI(t){let e={},n=s(t,["file"]);return n!=null&&l(e,["file"],n),e}function JI(t){let e={},n=s(t,["sdkHttpResponse"]);return n!=null&&l(e,["sdkHttpResponse"],n),e}function WI(t){let e={},n=s(t,["name"]);return n!=null&&l(e,["_url","file"],cc(n)),e}function KI(t){let e={},n=s(t,["sdkHttpResponse"]);return n!=null&&l(e,["sdkHttpResponse"],n),e}function YI(t){let e={},n=s(t,["name"]);return n!=null&&l(e,["_url","file"],cc(n)),e}function zI(t){let e={},n=s(t,["uris"]);return n!=null&&l(e,["uris"],n),e}function QI(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);return e!==void 0&&i!=null&&l(e,["_query","pageToken"],i),n}function ZI(t){let e={},n=s(t,["config"]);return n!=null&&QI(n,e),e}function jI(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["files"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["files"],o)}return e}function ew(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["files"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>o)),l(e,["files"],i)}return e}var tw=class extends mt{constructor(e){super(),this.apiClient=e,this.list=async(n={})=>new Bt(Ft.PAGED_ITEM_FILES,r=>this.listInternal(r),await this.listInternal(n),n)}async upload(e){if(this.apiClient.isVertexAI())throw new Error("Gemini Enterprise Agent Platform (previously known as Vertex AI) does not support uploading files. You can share files through a GCS bucket.");return this.apiClient.uploadFile(e.file,e.config).then(n=>n)}async download(e){await this.apiClient.downloadFile(e)}async registerFiles(e){throw new Error("registerFiles is only supported in Node.js environments.")}async _registerFiles(e){return this.registerFilesInternal(e)}async listInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=ZI(e);return o=X("files",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=jI(c),f=new Bl;return Object.assign(f,d),f})}}async createInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=XI(e);return o=X("upload/v1beta/files",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=JI(c),f=new Hl;return Object.assign(f,d),f})}}async get(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=YI(e);return o=X("files/{file}",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>c)}}async delete(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=WI(e);return o=X("files/{file}",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=KI(c),f=new Vl;return Object.assign(f,d),f})}}async registerFilesInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=zI(e);return o=X("files:register",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=ew(c),f=new $l;return Object.assign(f,d),f})}}};function nw(t){let e={},n=s(t,["apiKey"]);if(n!=null&&l(e,["apiKey"],n),s(t,["apiKeyConfig"])!==void 0)throw new Error("apiKeyConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["authType"])!==void 0)throw new Error("authType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["googleServiceAccountConfig"])!==void 0)throw new Error("googleServiceAccountConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["httpBasicAuthConfig"])!==void 0)throw new Error("httpBasicAuthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oauthConfig"])!==void 0)throw new Error("oauthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oidcConfig"])!==void 0)throw new Error("oidcConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function po(t){let e={},n=s(t,["data"]);if(n!=null&&l(e,["data"],n),s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function rw(t){let e={},n=s(t,["enablePromptInjectionDetection"]);n!=null&&l(e,["enablePromptInjectionDetection"],n);let r=s(t,["environment"]);r!=null&&l(e,["environment"],r);let i=s(t,["excludedPredefinedFunctions"]);if(i!=null&&l(e,["excludedPredefinedFunctions"],i),s(t,["disabledSafetyPolicies"])!==void 0)throw new Error("disabledSafetyPolicies parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function iw(t){let e={},n=s(t,["parts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(o=>Aw(o))),l(e,["parts"],i)}let r=s(t,["role"]);return r!=null&&l(e,["role"],r),e}function ow(t){let e={},n=s(t,["parts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(o=>Cw(o))),l(e,["parts"],i)}let r=s(t,["role"]);return r!=null&&l(e,["role"],r),e}function sw(t){let e={};if(s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["fileUri"]);n!=null&&l(e,["fileUri"],n);let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function aw(t){let e={},n=s(t,["args"]);n!=null&&l(e,["args"],n);let r=s(t,["id"]);r!=null&&l(e,["id"],r);let i=s(t,["name"]);if(i!=null&&l(e,["name"],i),s(t,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["willContinue"])!==void 0)throw new Error("willContinue parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function lw(t){let e={},n=s(t,["modelSelectionConfig"]);n!=null&&l(e,["modelConfig"],n);let r=s(t,["responseJsonSchema"]);r!=null&&l(e,["responseJsonSchema"],r);let i=s(t,["audioTranscriptionConfig"]);i!=null&&l(e,["audioTranscriptionConfig"],i);let o=s(t,["audioTimestamp"]);o!=null&&l(e,["audioTimestamp"],o);let a=s(t,["candidateCount"]);a!=null&&l(e,["candidateCount"],a);let u=s(t,["enableAffectiveDialog"]);u!=null&&l(e,["enableAffectiveDialog"],u);let c=s(t,["frequencyPenalty"]);c!=null&&l(e,["frequencyPenalty"],c);let d=s(t,["logprobs"]);d!=null&&l(e,["logprobs"],d);let f=s(t,["maxOutputTokens"]);f!=null&&l(e,["maxOutputTokens"],f);let p=s(t,["mediaResolution"]);p!=null&&l(e,["mediaResolution"],p);let h=s(t,["presencePenalty"]);h!=null&&l(e,["presencePenalty"],h);let g=s(t,["responseFormat"]);if(g!=null){let q=g;Array.isArray(q)&&(q=q.map($=>$)),l(e,["responseFormat"],q)}let _=s(t,["responseLogprobs"]);_!=null&&l(e,["responseLogprobs"],_);let m=s(t,["responseMimeType"]);m!=null&&l(e,["responseMimeType"],m);let E=s(t,["responseModalities"]);E!=null&&l(e,["responseModalities"],E);let y=s(t,["responseSchema"]);y!=null&&l(e,["responseSchema"],y);let A=s(t,["routingConfig"]);A!=null&&l(e,["routingConfig"],A);let T=s(t,["seed"]);T!=null&&l(e,["seed"],T);let C=s(t,["speechConfig"]);C!=null&&l(e,["speechConfig"],f_(C));let w=s(t,["stopSequences"]);w!=null&&l(e,["stopSequences"],w);let k=s(t,["temperature"]);k!=null&&l(e,["temperature"],k);let O=s(t,["thinkingConfig"]);O!=null&&l(e,["thinkingConfig"],O);let B=s(t,["topK"]);B!=null&&l(e,["topK"],B);let N=s(t,["topP"]);if(N!=null&&l(e,["topP"],N),s(t,["enableEnhancedCivicAnswers"])!==void 0)throw new Error("enableEnhancedCivicAnswers parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["translationConfig"])!==void 0)throw new Error("translationConfig parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function uw(t){let e={},n=s(t,["authConfig"]);n!=null&&l(e,["authConfig"],nw(n));let r=s(t,["enableWidget"]);if(r!=null&&l(e,["enableWidget"],r),s(t,["groundingTypes"])!==void 0)throw new Error("groundingTypes parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function cw(t){let e={};if(s(t,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["searchTypes"]);n!=null&&l(e,["searchTypes"],n);let r=s(t,["timeRangeFilter"]);return r!=null&&l(e,["timeRangeFilter"],r),e}function dw(t,e){let n={},r=s(t,["generationConfig"]);e!==void 0&&r!=null&&l(e,["setup","generationConfig"],r);let i=s(t,["responseModalities"]);e!==void 0&&i!=null&&l(e,["setup","generationConfig","responseModalities"],i);let o=s(t,["temperature"]);e!==void 0&&o!=null&&l(e,["setup","generationConfig","temperature"],o);let a=s(t,["topP"]);e!==void 0&&a!=null&&l(e,["setup","generationConfig","topP"],a);let u=s(t,["topK"]);e!==void 0&&u!=null&&l(e,["setup","generationConfig","topK"],u);let c=s(t,["maxOutputTokens"]);e!==void 0&&c!=null&&l(e,["setup","generationConfig","maxOutputTokens"],c);let d=s(t,["mediaResolution"]);e!==void 0&&d!=null&&l(e,["setup","generationConfig","mediaResolution"],d);let f=s(t,["seed"]);e!==void 0&&f!=null&&l(e,["setup","generationConfig","seed"],f);let p=s(t,["speechConfig"]);e!==void 0&&p!=null&&l(e,["setup","generationConfig","speechConfig"],uc(p));let h=s(t,["thinkingConfig"]);e!==void 0&&h!=null&&l(e,["setup","generationConfig","thinkingConfig"],h);let g=s(t,["enableAffectiveDialog"]);e!==void 0&&g!=null&&l(e,["setup","generationConfig","enableAffectiveDialog"],g);let _=s(t,["systemInstruction"]);e!==void 0&&_!=null&&l(e,["setup","systemInstruction"],iw(De(_)));let m=s(t,["tools"]);if(e!==void 0&&m!=null){let N=ir(m);Array.isArray(N)&&(N=N.map(q=>Pw(rr(q)))),l(e,["setup","tools"],N)}let E=s(t,["sessionResumption"]);e!==void 0&&E!=null&&l(e,["setup","sessionResumption"],ww(E));let y=s(t,["inputAudioTranscription"]);e!==void 0&&y!=null&&l(e,["setup","inputAudioTranscription"],y);let A=s(t,["outputAudioTranscription"]);e!==void 0&&A!=null&&l(e,["setup","outputAudioTranscription"],A);let T=s(t,["realtimeInputConfig"]);e!==void 0&&T!=null&&l(e,["setup","realtimeInputConfig"],T);let C=s(t,["contextWindowCompression"]);e!==void 0&&C!=null&&l(e,["setup","contextWindowCompression"],C);let w=s(t,["proactivity"]);if(e!==void 0&&w!=null&&l(e,["setup","proactivity"],w),s(t,["explicitVadSignal"])!==void 0)throw new Error("explicitVadSignal parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let k=s(t,["avatarConfig"]);e!==void 0&&k!=null&&l(e,["setup","avatarConfig"],k);let O=s(t,["safetySettings"]);if(e!==void 0&&O!=null){let N=O;Array.isArray(N)&&(N=N.map(q=>Iw(q))),l(e,["setup","safetySettings"],N)}let B=s(t,["translationConfig"]);return e!==void 0&&B!=null&&l(e,["setup","generationConfig","translationConfig"],B),n}function fw(t,e){let n={},r=s(t,["generationConfig"]);e!==void 0&&r!=null&&l(e,["setup","generationConfig"],lw(r));let i=s(t,["responseModalities"]);e!==void 0&&i!=null&&l(e,["setup","generationConfig","responseModalities"],i);let o=s(t,["temperature"]);e!==void 0&&o!=null&&l(e,["setup","generationConfig","temperature"],o);let a=s(t,["topP"]);e!==void 0&&a!=null&&l(e,["setup","generationConfig","topP"],a);let u=s(t,["topK"]);e!==void 0&&u!=null&&l(e,["setup","generationConfig","topK"],u);let c=s(t,["maxOutputTokens"]);e!==void 0&&c!=null&&l(e,["setup","generationConfig","maxOutputTokens"],c);let d=s(t,["mediaResolution"]);e!==void 0&&d!=null&&l(e,["setup","generationConfig","mediaResolution"],d);let f=s(t,["seed"]);e!==void 0&&f!=null&&l(e,["setup","generationConfig","seed"],f);let p=s(t,["speechConfig"]);e!==void 0&&p!=null&&l(e,["setup","generationConfig","speechConfig"],f_(uc(p)));let h=s(t,["thinkingConfig"]);e!==void 0&&h!=null&&l(e,["setup","generationConfig","thinkingConfig"],h);let g=s(t,["enableAffectiveDialog"]);e!==void 0&&g!=null&&l(e,["setup","generationConfig","enableAffectiveDialog"],g);let _=s(t,["systemInstruction"]);e!==void 0&&_!=null&&l(e,["setup","systemInstruction"],ow(De(_)));let m=s(t,["tools"]);if(e!==void 0&&m!=null){let q=ir(m);Array.isArray(q)&&(q=q.map($=>Nw(rr($)))),l(e,["setup","tools"],q)}let E=s(t,["sessionResumption"]);e!==void 0&&E!=null&&l(e,["setup","sessionResumption"],E);let y=s(t,["inputAudioTranscription"]);e!==void 0&&y!=null&&l(e,["setup","inputAudioTranscription"],y);let A=s(t,["outputAudioTranscription"]);e!==void 0&&A!=null&&l(e,["setup","outputAudioTranscription"],A);let T=s(t,["realtimeInputConfig"]);e!==void 0&&T!=null&&l(e,["setup","realtimeInputConfig"],T);let C=s(t,["contextWindowCompression"]);e!==void 0&&C!=null&&l(e,["setup","contextWindowCompression"],C);let w=s(t,["proactivity"]);e!==void 0&&w!=null&&l(e,["setup","proactivity"],w);let k=s(t,["explicitVadSignal"]);e!==void 0&&k!=null&&l(e,["setup","explicitVadSignal"],k);let O=s(t,["avatarConfig"]);e!==void 0&&O!=null&&l(e,["setup","avatarConfig"],O);let B=s(t,["safetySettings"]);if(e!==void 0&&B!=null){let q=B;Array.isArray(q)&&(q=q.map($=>$)),l(e,["setup","safetySettings"],q)}let N=s(t,["translationConfig"]);return e!==void 0&&N!=null&&l(e,["setup","generationConfig","translationConfig"],N),n}function pw(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["setup","model"],he(t,r));let i=s(e,["config"]);return i!=null&&l(n,["config"],dw(i,n)),n}function hw(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["setup","model"],he(t,r));let i=s(e,["config"]);return i!=null&&l(n,["config"],fw(i,n)),n}function mw(t){let e={},n=s(t,["musicGenerationConfig"]);return n!=null&&l(e,["musicGenerationConfig"],n),e}function gw(t){let e={},n=s(t,["weightedPrompts"]);if(n!=null){let r=n;Array.isArray(r)&&(r=r.map(i=>i)),l(e,["weightedPrompts"],r)}return e}function _w(t){let e={},n=s(t,["media"]);if(n!=null){let d=Zg(n);Array.isArray(d)&&(d=d.map(f=>po(f))),l(e,["mediaChunks"],d)}let r=s(t,["audio"]);r!=null&&l(e,["audio"],po(e_(r)));let i=s(t,["audioStreamEnd"]);i!=null&&l(e,["audioStreamEnd"],i);let o=s(t,["video"]);o!=null&&l(e,["video"],po(jg(o)));let a=s(t,["text"]);a!=null&&l(e,["text"],a);let u=s(t,["activityStart"]);u!=null&&l(e,["activityStart"],u);let c=s(t,["activityEnd"]);return c!=null&&l(e,["activityEnd"],c),e}function yw(t){let e={},n=s(t,["media"]);if(n!=null){let d=Zg(n);Array.isArray(d)&&(d=d.map(f=>f)),l(e,["mediaChunks"],d)}let r=s(t,["audio"]);r!=null&&l(e,["audio"],e_(r));let i=s(t,["audioStreamEnd"]);i!=null&&l(e,["audioStreamEnd"],i);let o=s(t,["video"]);o!=null&&l(e,["video"],jg(o));let a=s(t,["text"]);a!=null&&l(e,["text"],a);let u=s(t,["activityStart"]);u!=null&&l(e,["activityStart"],u);let c=s(t,["activityEnd"]);return c!=null&&l(e,["activityEnd"],c),e}function Ew(t){let e={},n=s(t,["setupComplete"]);n!=null&&l(e,["setupComplete"],n);let r=s(t,["serverContent"]);r!=null&&l(e,["serverContent"],r);let i=s(t,["toolCall"]);i!=null&&l(e,["toolCall"],i);let o=s(t,["toolCallCancellation"]);o!=null&&l(e,["toolCallCancellation"],o);let a=s(t,["usageMetadata"]);a!=null&&l(e,["usageMetadata"],xw(a));let u=s(t,["goAway"]);u!=null&&l(e,["goAway"],u);let c=s(t,["sessionResumptionUpdate"]);c!=null&&l(e,["sessionResumptionUpdate"],c);let d=s(t,["voiceActivityDetectionSignal"]);d!=null&&l(e,["voiceActivityDetectionSignal"],d);let f=s(t,["voiceActivity"]);return f!=null&&l(e,["voiceActivity"],kw(f)),e}function vw(t){let e={};if(s(t,["name"])!==void 0)throw new Error("name parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["streamableHttpTransport"])!==void 0)throw new Error("streamableHttpTransport parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function Tw(t){let e={},n=s(t,["speakerVoiceConfigs"]);if(n!=null){let r=n;Array.isArray(r)&&(r=r.map(i=>Rw(i))),l(e,["speakerVoiceConfigs"],r)}return e}function Aw(t){let e={},n=s(t,["mediaResolution"]);n!=null&&l(e,["mediaResolution"],n);let r=s(t,["toolCall"]);r!=null&&l(e,["toolCall"],r);let i=s(t,["toolResponse"]);i!=null&&l(e,["toolResponse"],i);let o=s(t,["audioTranscription"]);o!=null&&l(e,["audioTranscription"],o);let a=s(t,["codeExecutionResult"]);a!=null&&l(e,["codeExecutionResult"],a);let u=s(t,["executableCode"]);u!=null&&l(e,["executableCode"],u);let c=s(t,["fileData"]);c!=null&&l(e,["fileData"],sw(c));let d=s(t,["functionCall"]);d!=null&&l(e,["functionCall"],aw(d));let f=s(t,["functionResponse"]);f!=null&&l(e,["functionResponse"],f);let p=s(t,["inlineData"]);p!=null&&l(e,["inlineData"],po(p));let h=s(t,["text"]);h!=null&&l(e,["text"],h);let g=s(t,["thought"]);g!=null&&l(e,["thought"],g);let _=s(t,["thoughtSignature"]);_!=null&&l(e,["thoughtSignature"],_);let m=s(t,["videoMetadata"]);m!=null&&l(e,["videoMetadata"],m);let E=s(t,["partMetadata"]);E!=null&&l(e,["partMetadata"],E);let y=s(t,["mediaProcessing"]);return y!=null&&l(e,["mediaProcessing"],y),e}function Cw(t){let e={},n=s(t,["mediaResolution"]);if(n!=null&&l(e,["mediaResolution"],n),s(t,["toolCall"])!==void 0)throw new Error("toolCall parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["toolResponse"])!==void 0)throw new Error("toolResponse parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let r=s(t,["audioTranscription"]);r!=null&&l(e,["audioTranscription"],r);let i=s(t,["codeExecutionResult"]);i!=null&&l(e,["codeExecutionResult"],i);let o=s(t,["executableCode"]);o!=null&&l(e,["executableCode"],o);let a=s(t,["fileData"]);a!=null&&l(e,["fileData"],a);let u=s(t,["functionCall"]);u!=null&&l(e,["functionCall"],u);let c=s(t,["functionResponse"]);c!=null&&l(e,["functionResponse"],c);let d=s(t,["inlineData"]);d!=null&&l(e,["inlineData"],d);let f=s(t,["text"]);f!=null&&l(e,["text"],f);let p=s(t,["thought"]);p!=null&&l(e,["thought"],p);let h=s(t,["thoughtSignature"]);h!=null&&l(e,["thoughtSignature"],h);let g=s(t,["videoMetadata"]);if(g!=null&&l(e,["videoMetadata"],g),s(t,["partMetadata"])!==void 0)throw new Error("partMetadata parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let _=s(t,["mediaProcessing"]);return _!=null&&l(e,["mediaProcessing"],_),e}function Sw(t){let e={},n=s(t,["mimeType"]);n!=null&&l(e,["mimeType"],n);let r=s(t,["voiceSampleAudio"]);if(r!=null&&l(e,["voiceSampleAudio"],r),s(t,["consentAudio"])!==void 0)throw new Error("consentAudio parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["voiceConsentSignature"])!==void 0)throw new Error("voiceConsentSignature parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function Iw(t){let e={},n=s(t,["category"]);if(n!=null&&l(e,["category"],n),s(t,["method"])!==void 0)throw new Error("method parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["threshold"]);return r!=null&&l(e,["threshold"],r),e}function ww(t){let e={},n=s(t,["handle"]);if(n!=null&&l(e,["handle"],n),s(t,["transparent"])!==void 0)throw new Error("transparent parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function Rw(t){let e={},n=s(t,["speaker"]);n!=null&&l(e,["speaker"],n);let r=s(t,["voiceConfig"]);return r!=null&&l(e,["voiceConfig"],p_(r)),e}function f_(t){let e={},n=s(t,["voiceConfig"]);n!=null&&l(e,["voiceConfig"],p_(n));let r=s(t,["languageCode"]);r!=null&&l(e,["languageCode"],r);let i=s(t,["multiSpeakerVoiceConfig"]);return i!=null&&l(e,["multiSpeakerVoiceConfig"],Tw(i)),e}function Pw(t){let e={};if(s(t,["retrieval"])!==void 0)throw new Error("retrieval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["googleMaps"]);n!=null&&l(e,["googleMaps"],uw(n));let r=s(t,["mcpServers"]);if(r!=null){let p=r;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["mcpServers"],p)}let i=s(t,["codeExecution"]);i!=null&&l(e,["codeExecution"],i);let o=s(t,["computerUse"]);if(o!=null&&l(e,["computerUse"],o),s(t,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["exaAiSearch"])!==void 0)throw new Error("exaAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let a=s(t,["functionDeclarations"]);if(a!=null){let p=a;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["functionDeclarations"],p)}let u=s(t,["googleSearch"]);u!=null&&l(e,["googleSearch"],cw(u));let c=s(t,["googleSearchRetrieval"]);if(c!=null&&l(e,["googleSearchRetrieval"],c),s(t,["parallelAiSearch"])!==void 0)throw new Error("parallelAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let d=s(t,["urlContext"]);d!=null&&l(e,["urlContext"],d);let f=s(t,["fileSearch"]);return f!=null&&l(e,["fileSearch"],f),e}function Nw(t){let e={},n=s(t,["retrieval"]);n!=null&&l(e,["retrieval"],n);let r=s(t,["googleMaps"]);r!=null&&l(e,["googleMaps"],r);let i=s(t,["mcpServers"]);if(i!=null){let _=i;Array.isArray(_)&&(_=_.map(m=>vw(m))),l(e,["mcpServers"],_)}let o=s(t,["codeExecution"]);o!=null&&l(e,["codeExecution"],o);let a=s(t,["computerUse"]);a!=null&&l(e,["computerUse"],rw(a));let u=s(t,["enterpriseWebSearch"]);u!=null&&l(e,["enterpriseWebSearch"],u);let c=s(t,["exaAiSearch"]);c!=null&&l(e,["exaAiSearch"],c);let d=s(t,["functionDeclarations"]);if(d!=null){let _=d;Array.isArray(_)&&(_=_.map(m=>m)),l(e,["functionDeclarations"],_)}let f=s(t,["googleSearch"]);f!=null&&l(e,["googleSearch"],f);let p=s(t,["googleSearchRetrieval"]);p!=null&&l(e,["googleSearchRetrieval"],p);let h=s(t,["parallelAiSearch"]);h!=null&&l(e,["parallelAiSearch"],h);let g=s(t,["urlContext"]);if(g!=null&&l(e,["urlContext"],g),s(t,["fileSearch"])!==void 0)throw new Error("fileSearch parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return e}function xw(t){let e={},n=s(t,["candidatesTokenCount"]);n!=null&&l(e,["responseTokenCount"],n);let r=s(t,["candidatesTokensDetails"]);if(r!=null){let g=r;Array.isArray(g)&&(g=g.map(_=>_)),l(e,["responseTokensDetails"],g)}let i=s(t,["cacheTokensDetails"]);if(i!=null){let g=i;Array.isArray(g)&&(g=g.map(_=>_)),l(e,["cacheTokensDetails"],g)}let o=s(t,["cachedContentTokenCount"]);o!=null&&l(e,["cachedContentTokenCount"],o);let a=s(t,["promptTokenCount"]);a!=null&&l(e,["promptTokenCount"],a);let u=s(t,["promptTokensDetails"]);if(u!=null){let g=u;Array.isArray(g)&&(g=g.map(_=>_)),l(e,["promptTokensDetails"],g)}let c=s(t,["thoughtsTokenCount"]);c!=null&&l(e,["thoughtsTokenCount"],c);let d=s(t,["toolUsePromptTokenCount"]);d!=null&&l(e,["toolUsePromptTokenCount"],d);let f=s(t,["toolUsePromptTokensDetails"]);if(f!=null){let g=f;Array.isArray(g)&&(g=g.map(_=>_)),l(e,["toolUsePromptTokensDetails"],g)}let p=s(t,["totalTokenCount"]);p!=null&&l(e,["totalTokenCount"],p);let h=s(t,["trafficType"]);return h!=null&&l(e,["trafficType"],h),e}function kw(t){let e={},n=s(t,["type"]);n!=null&&l(e,["voiceActivityType"],n);let r=s(t,["audioOffset"]);return r!=null&&l(e,["audioOffset"],r),e}function p_(t){let e={},n=s(t,["replicatedVoiceConfig"]);n!=null&&l(e,["replicatedVoiceConfig"],Sw(n));let r=s(t,["prebuiltVoiceConfig"]);return r!=null&&l(e,["prebuiltVoiceConfig"],r),e}function Dw(t,e){let n={},r=s(t,["apiKey"]);if(r!=null&&l(n,["apiKey"],r),s(t,["apiKeyConfig"])!==void 0)throw new Error("apiKeyConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["authType"])!==void 0)throw new Error("authType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["googleServiceAccountConfig"])!==void 0)throw new Error("googleServiceAccountConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["httpBasicAuthConfig"])!==void 0)throw new Error("httpBasicAuthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oauthConfig"])!==void 0)throw new Error("oauthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oidcConfig"])!==void 0)throw new Error("oidcConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function Mw(t,e){let n={},r=s(t,["data"]);if(r!=null&&l(n,["data"],r),s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let i=s(t,["mimeType"]);return i!=null&&l(n,["mimeType"],i),n}function bw(t,e){let n={},r=s(t,["content"]);r!=null&&l(n,["content"],r);let i=s(t,["citationMetadata"]);i!=null&&l(n,["citationMetadata"],Uw(i));let o=s(t,["tokenCount"]);o!=null&&l(n,["tokenCount"],o);let a=s(t,["finishReason"]);a!=null&&l(n,["finishReason"],a);let u=s(t,["groundingMetadata"]);u!=null&&l(n,["groundingMetadata"],u);let c=s(t,["avgLogprobs"]);c!=null&&l(n,["avgLogprobs"],c);let d=s(t,["index"]);d!=null&&l(n,["index"],d);let f=s(t,["logprobsResult"]);f!=null&&l(n,["logprobsResult"],f);let p=s(t,["safetyRatings"]);if(p!=null){let g=p;Array.isArray(g)&&(g=g.map(_=>_)),l(n,["safetyRatings"],g)}let h=s(t,["urlContextMetadata"]);return h!=null&&l(n,["urlContextMetadata"],h),n}function Uw(t,e){let n={},r=s(t,["citationSources"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>o)),l(n,["citations"],i)}return n}function Gw(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["contents"]);if(o!=null){let a=Oe(o);Array.isArray(a)&&(a=a.map(u=>sr(u))),l(r,["contents"],a)}return r}function Lw(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["tokensInfo"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(n,["tokensInfo"],o)}return n}function Ow(t,e){let n={},r=s(t,["enablePromptInjectionDetection"]);r!=null&&l(n,["enablePromptInjectionDetection"],r);let i=s(t,["environment"]);i!=null&&l(n,["environment"],i);let o=s(t,["excludedPredefinedFunctions"]);if(o!=null&&l(n,["excludedPredefinedFunctions"],o),s(t,["disabledSafetyPolicies"])!==void 0)throw new Error("disabledSafetyPolicies parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function qw(t,e){let n={},r=s(t,["values"]);r!=null&&l(n,["values"],r);let i=s(t,["statistics"]);return i!=null&&l(n,["statistics"],Fw(i)),n}function Fw(t,e){let n={},r=s(t,["truncated"]);r!=null&&l(n,["truncated"],r);let i=s(t,["token_count"]);i!=null&&l(n,["tokenCount"],i);let o=s(t,["tokensDetails"]);if(o!=null){let a=o;Array.isArray(a)&&(a=a.map(u=>u)),l(n,["tokensDetails"],a)}return n}function qr(t,e){let n={},r=s(t,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(a=>XR(a))),l(n,["parts"],o)}let i=s(t,["role"]);return i!=null&&l(n,["role"],i),n}function sr(t,e){let n={},r=s(t,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(a=>JR(a))),l(n,["parts"],o)}let i=s(t,["role"]);return i!=null&&l(n,["role"],i),n}function Bw(t,e){let n={},r=s(t,["controlType"]);r!=null&&l(n,["controlType"],r);let i=s(t,["enableControlImageComputation"]);return i!=null&&l(n,["computeControl"],i),n}function Hw(t,e){let n={};if(s(t,["systemInstruction"])!==void 0)throw new Error("systemInstruction parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["tools"])!==void 0)throw new Error("tools parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["generationConfig"])!==void 0)throw new Error("generationConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function Vw(t,e,n){let r={},i=s(t,["systemInstruction"]);e!==void 0&&i!=null&&l(e,["systemInstruction"],sr(De(i)));let o=s(t,["tools"]);if(e!==void 0&&o!=null){let u=o;Array.isArray(u)&&(u=u.map(c=>__(c))),l(e,["tools"],u)}let a=s(t,["generationConfig"]);return e!==void 0&&a!=null&&l(e,["generationConfig"],NR(a)),r}function $w(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["contents"]);if(o!=null){let u=Oe(o);Array.isArray(u)&&(u=u.map(c=>qr(c))),l(r,["contents"],u)}let a=s(e,["config"]);return a!=null&&Hw(a),r}function Xw(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["contents"]);if(o!=null){let u=Oe(o);Array.isArray(u)&&(u=u.map(c=>sr(c))),l(r,["contents"],u)}let a=s(e,["config"]);return a!=null&&Vw(a,r),r}function Jw(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["totalTokens"]);i!=null&&l(n,["totalTokens"],i);let o=s(t,["cachedContentTokenCount"]);return o!=null&&l(n,["cachedContentTokenCount"],o),n}function Ww(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["totalTokens"]);return i!=null&&l(n,["totalTokens"],i),n}function Kw(t,e,n){let r={},i=s(e,["model"]);return i!=null&&l(r,["_url","name"],he(t,i)),r}function Yw(t,e,n){let r={},i=s(e,["model"]);return i!=null&&l(r,["_url","name"],he(t,i)),r}function zw(t,e){let n={},r=s(t,["sdkHttpResponse"]);return r!=null&&l(n,["sdkHttpResponse"],r),n}function Qw(t,e){let n={},r=s(t,["sdkHttpResponse"]);return r!=null&&l(n,["sdkHttpResponse"],r),n}function Zw(t,e,n){let r={},i=s(t,["outputGcsUri"]);e!==void 0&&i!=null&&l(e,["parameters","storageUri"],i);let o=s(t,["negativePrompt"]);e!==void 0&&o!=null&&l(e,["parameters","negativePrompt"],o);let a=s(t,["numberOfImages"]);e!==void 0&&a!=null&&l(e,["parameters","sampleCount"],a);let u=s(t,["aspectRatio"]);e!==void 0&&u!=null&&l(e,["parameters","aspectRatio"],u);let c=s(t,["guidanceScale"]);e!==void 0&&c!=null&&l(e,["parameters","guidanceScale"],c);let d=s(t,["seed"]);e!==void 0&&d!=null&&l(e,["parameters","seed"],d);let f=s(t,["safetyFilterLevel"]);e!==void 0&&f!=null&&l(e,["parameters","safetySetting"],f);let p=s(t,["personGeneration"]);e!==void 0&&p!=null&&l(e,["parameters","personGeneration"],p);let h=s(t,["includeSafetyAttributes"]);e!==void 0&&h!=null&&l(e,["parameters","includeSafetyAttributes"],h);let g=s(t,["includeRaiReason"]);e!==void 0&&g!=null&&l(e,["parameters","includeRaiReason"],g);let _=s(t,["language"]);e!==void 0&&_!=null&&l(e,["parameters","language"],_);let m=s(t,["outputMimeType"]);e!==void 0&&m!=null&&l(e,["parameters","outputOptions","mimeType"],m);let E=s(t,["outputCompressionQuality"]);e!==void 0&&E!=null&&l(e,["parameters","outputOptions","compressionQuality"],E);let y=s(t,["addWatermark"]);e!==void 0&&y!=null&&l(e,["parameters","addWatermark"],y);let A=s(t,["labels"]);e!==void 0&&A!=null&&l(e,["labels"],A);let T=s(t,["editMode"]);e!==void 0&&T!=null&&l(e,["parameters","editMode"],T);let C=s(t,["baseSteps"]);return e!==void 0&&C!=null&&l(e,["parameters","editConfig","baseSteps"],C),r}function jw(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["prompt"]);o!=null&&l(r,["instances[0]","prompt"],o);let a=s(e,["referenceImages"]);if(a!=null){let c=a;Array.isArray(c)&&(c=c.map(d=>ZR(d))),l(r,["instances[0]","referenceImages"],c)}let u=s(e,["config"]);return u!=null&&Zw(u,r),r}function eR(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["predictions"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>Lo(a))),l(n,["generatedImages"],o)}return n}function tR(t,e,n){let r={},i=s(t,["taskType"]);e!==void 0&&i!=null&&l(e,["requests[]","taskType"],i);let o=s(t,["title"]);e!==void 0&&o!=null&&l(e,["requests[]","title"],o);let a=s(t,["outputDimensionality"]);if(e!==void 0&&a!=null&&l(e,["requests[]","outputDimensionality"],a),s(t,["mimeType"])!==void 0)throw new Error("mimeType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["documentOcr"])!==void 0)throw new Error("documentOcr parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["audioTrackExtraction"])!==void 0)throw new Error("audioTrackExtraction parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return r}function nR(t,e,n){let r={},i=s(n,["embeddingApiType"]);if(i===void 0&&(i="PREDICT"),i==="PREDICT"){let p=s(t,["taskType"]);e!==void 0&&p!=null&&l(e,["instances[]","task_type"],p)}else if(i==="EMBED_CONTENT"){let p=s(t,["taskType"]);e!==void 0&&p!=null&&l(e,["embedContentConfig","taskType"],p)}let o=s(n,["embeddingApiType"]);if(o===void 0&&(o="PREDICT"),o==="PREDICT"){let p=s(t,["title"]);e!==void 0&&p!=null&&l(e,["instances[]","title"],p)}else if(o==="EMBED_CONTENT"){let p=s(t,["title"]);e!==void 0&&p!=null&&l(e,["embedContentConfig","title"],p)}let a=s(n,["embeddingApiType"]);if(a===void 0&&(a="PREDICT"),a==="PREDICT"){let p=s(t,["outputDimensionality"]);e!==void 0&&p!=null&&l(e,["parameters","outputDimensionality"],p)}else if(a==="EMBED_CONTENT"){let p=s(t,["outputDimensionality"]);e!==void 0&&p!=null&&l(e,["embedContentConfig","outputDimensionality"],p)}let u=s(n,["embeddingApiType"]);if(u===void 0&&(u="PREDICT"),u==="PREDICT"){let p=s(t,["mimeType"]);e!==void 0&&p!=null&&l(e,["instances[]","mimeType"],p)}let c=s(n,["embeddingApiType"]);if(c===void 0&&(c="PREDICT"),c==="PREDICT"){let p=s(t,["autoTruncate"]);e!==void 0&&p!=null&&l(e,["parameters","autoTruncate"],p)}else if(c==="EMBED_CONTENT"){let p=s(t,["autoTruncate"]);e!==void 0&&p!=null&&l(e,["embedContentConfig","autoTruncate"],p)}let d=s(n,["embeddingApiType"]);if(d===void 0&&(d="PREDICT"),d==="EMBED_CONTENT"){let p=s(t,["documentOcr"]);e!==void 0&&p!=null&&l(e,["embedContentConfig","documentOcr"],p)}let f=s(n,["embeddingApiType"]);if(f===void 0&&(f="PREDICT"),f==="EMBED_CONTENT"){let p=s(t,["audioTrackExtraction"]);e!==void 0&&p!=null&&l(e,["embedContentConfig","audioTrackExtraction"],p)}return r}function rR(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["contents"]);if(o!=null){let d=sc(t,o);Array.isArray(d)&&(d=d.map(f=>f)),l(r,["requests[]","content"],d)}let a=s(e,["content"]);a!=null&&qr(De(a));let u=s(e,["config"]);u!=null&&tR(u,r);let c=s(e,["model"]);return c!==void 0&&l(r,["requests[]","model"],he(t,c)),r}function iR(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(n,["embeddingApiType"]);if(o===void 0&&(o="PREDICT"),o==="PREDICT"){let c=s(e,["contents"]);if(c!=null){let d=sc(t,c);Array.isArray(d)&&(d=d.map(f=>f)),l(r,["instances[]","content"],d)}}let a=s(n,["embeddingApiType"]);if(a===void 0&&(a="PREDICT"),a==="EMBED_CONTENT"){let c=s(e,["content"]);c!=null&&l(r,["content"],sr(De(c)))}let u=s(e,["config"]);return u!=null&&nR(u,r,n),r}function oR(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["embeddings"]);if(i!=null){let a=i;Array.isArray(a)&&(a=a.map(u=>u)),l(n,["embeddings"],a)}let o=s(t,["metadata"]);return o!=null&&l(n,["metadata"],o),n}function sR(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["predictions[]","embeddings"]);if(i!=null){let a=i;Array.isArray(a)&&(a=a.map(u=>qw(u))),l(n,["embeddings"],a)}let o=s(t,["metadata"]);if(o!=null&&l(n,["metadata"],o),e&&s(e,["embeddingApiType"])==="EMBED_CONTENT"){let a=s(t,["embedding"]),u=s(t,["usageMetadata"]),c=s(t,["truncated"]);if(a){let d={};u&&u.promptTokenCount&&(d.tokenCount=u.promptTokenCount),u&&u.promptTokensDetails&&(d.tokensDetails=u.promptTokensDetails),c&&(d.truncated=c),a.statistics=d,l(n,["embeddings"],[a])}}return n}function aR(t,e){let n={},r=s(t,["endpoint"]);r!=null&&l(n,["name"],r);let i=s(t,["deployedModelId"]);return i!=null&&l(n,["deployedModelId"],i),n}function lR(t,e){let n={};if(s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["fileUri"]);r!=null&&l(n,["fileUri"],r);let i=s(t,["mimeType"]);return i!=null&&l(n,["mimeType"],i),n}function uR(t,e){let n={},r=s(t,["args"]);r!=null&&l(n,["args"],r);let i=s(t,["id"]);i!=null&&l(n,["id"],i);let o=s(t,["name"]);if(o!=null&&l(n,["name"],o),s(t,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["willContinue"])!==void 0)throw new Error("willContinue parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function cR(t,e){let n={},r=s(t,["allowedFunctionNames"]);r!=null&&l(n,["allowedFunctionNames"],r);let i=s(t,["mode"]);if(i!=null&&l(n,["mode"],i),s(t,["streamFunctionCallArguments"])!==void 0)throw new Error("streamFunctionCallArguments parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function dR(t,e,n,r){let i={},o=s(e,["serviceTier"]);n!==void 0&&o!=null&&l(n,["serviceTier"],o);let a=s(e,["systemInstruction"]);n!==void 0&&a!=null&&l(n,["systemInstruction"],qr(De(a)));let u=s(e,["temperature"]);u!=null&&l(i,["temperature"],u);let c=s(e,["topP"]);c!=null&&l(i,["topP"],c);let d=s(e,["topK"]);d!=null&&l(i,["topK"],d);let f=s(e,["candidateCount"]);f!=null&&l(i,["candidateCount"],f);let p=s(e,["maxOutputTokens"]);p!=null&&l(i,["maxOutputTokens"],p);let h=s(e,["stopSequences"]);h!=null&&l(i,["stopSequences"],h);let g=s(e,["responseLogprobs"]);g!=null&&l(i,["responseLogprobs"],g);let _=s(e,["logprobs"]);_!=null&&l(i,["logprobs"],_);let m=s(e,["presencePenalty"]);m!=null&&l(i,["presencePenalty"],m);let E=s(e,["frequencyPenalty"]);E!=null&&l(i,["frequencyPenalty"],E);let y=s(e,["seed"]);y!=null&&l(i,["seed"],y);let A=s(e,["responseMimeType"]);A!=null&&l(i,["responseMimeType"],A);let T=s(e,["responseSchema"]);T!=null&&l(i,["responseSchema"],ac(T));let C=s(e,["responseJsonSchema"]);if(C!=null&&l(i,["responseJsonSchema"],C),s(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let w=s(e,["safetySettings"]);if(n!==void 0&&w!=null){let te=w;Array.isArray(te)&&(te=te.map(ve=>eP(ve))),l(n,["safetySettings"],te)}let k=s(e,["tools"]);if(n!==void 0&&k!=null){let te=ir(k);Array.isArray(te)&&(te=te.map(ve=>uP(rr(ve)))),l(n,["tools"],te)}let O=s(e,["toolConfig"]);if(n!==void 0&&O!=null&&l(n,["toolConfig"],aP(O)),s(e,["labels"])!==void 0)throw new Error("labels parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let B=s(e,["cachedContent"]);n!==void 0&&B!=null&&l(n,["cachedContent"],Ht(t,B));let N=s(e,["responseModalities"]);N!=null&&l(i,["responseModalities"],N);let q=s(e,["mediaResolution"]);q!=null&&l(i,["mediaResolution"],q);let $=s(e,["speechConfig"]);if($!=null&&l(i,["speechConfig"],lc($)),s(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let z=s(e,["thinkingConfig"]);z!=null&&l(i,["thinkingConfig"],z);let ne=s(e,["audioTranscriptionConfig"]);ne!=null&&l(i,["audioTranscriptionConfig"],ne);let M=s(e,["imageConfig"]);M!=null&&l(i,["imageConfig"],bR(M));let Q=s(e,["enableEnhancedCivicAnswers"]);if(Q!=null&&l(i,["enableEnhancedCivicAnswers"],Q),s(e,["modelArmorConfig"])!==void 0)throw new Error("modelArmorConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return i}function fR(t,e,n,r){let i={},o=s(e,["serviceTier"]);n!==void 0&&o!=null&&l(n,["serviceTier"],o);let a=s(e,["systemInstruction"]);n!==void 0&&a!=null&&l(n,["systemInstruction"],sr(De(a)));let u=s(e,["temperature"]);u!=null&&l(i,["temperature"],u);let c=s(e,["topP"]);c!=null&&l(i,["topP"],c);let d=s(e,["topK"]);d!=null&&l(i,["topK"],d);let f=s(e,["candidateCount"]);f!=null&&l(i,["candidateCount"],f);let p=s(e,["maxOutputTokens"]);p!=null&&l(i,["maxOutputTokens"],p);let h=s(e,["stopSequences"]);h!=null&&l(i,["stopSequences"],h);let g=s(e,["responseLogprobs"]);g!=null&&l(i,["responseLogprobs"],g);let _=s(e,["logprobs"]);_!=null&&l(i,["logprobs"],_);let m=s(e,["presencePenalty"]);m!=null&&l(i,["presencePenalty"],m);let E=s(e,["frequencyPenalty"]);E!=null&&l(i,["frequencyPenalty"],E);let y=s(e,["seed"]);y!=null&&l(i,["seed"],y);let A=s(e,["responseMimeType"]);A!=null&&l(i,["responseMimeType"],A);let T=s(e,["responseSchema"]);T!=null&&l(i,["responseSchema"],ac(T));let C=s(e,["responseJsonSchema"]);C!=null&&l(i,["responseJsonSchema"],C);let w=s(e,["routingConfig"]);w!=null&&l(i,["routingConfig"],w);let k=s(e,["modelSelectionConfig"]);k!=null&&l(i,["modelConfig"],k);let O=s(e,["safetySettings"]);if(n!==void 0&&O!=null){let xe=O;Array.isArray(xe)&&(xe=xe.map(Fe=>Fe)),l(n,["safetySettings"],xe)}let B=s(e,["tools"]);if(n!==void 0&&B!=null){let xe=ir(B);Array.isArray(xe)&&(xe=xe.map(Fe=>__(rr(Fe)))),l(n,["tools"],xe)}let N=s(e,["toolConfig"]);n!==void 0&&N!=null&&l(n,["toolConfig"],lP(N));let q=s(e,["labels"]);n!==void 0&&q!=null&&l(n,["labels"],q);let $=s(e,["cachedContent"]);n!==void 0&&$!=null&&l(n,["cachedContent"],Ht(t,$));let z=s(e,["responseModalities"]);z!=null&&l(i,["responseModalities"],z);let ne=s(e,["mediaResolution"]);ne!=null&&l(i,["mediaResolution"],ne);let M=s(e,["speechConfig"]);M!=null&&l(i,["speechConfig"],g_(lc(M)));let Q=s(e,["audioTimestamp"]);Q!=null&&l(i,["audioTimestamp"],Q);let te=s(e,["thinkingConfig"]);te!=null&&l(i,["thinkingConfig"],te);let ve=s(e,["audioTranscriptionConfig"]);ve!=null&&l(i,["audioTranscriptionConfig"],ve);let Ne=s(e,["imageConfig"]);if(Ne!=null&&l(i,["imageConfig"],UR(Ne)),s(e,["enableEnhancedCivicAnswers"])!==void 0)throw new Error("enableEnhancedCivicAnswers parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let Ce=s(e,["modelArmorConfig"]);return n!==void 0&&Ce!=null&&l(n,["modelArmorConfig"],Ce),i}function Eg(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["contents"]);if(o!=null){let u=Oe(o);Array.isArray(u)&&(u=u.map(c=>qr(c))),l(r,["contents"],u)}let a=s(e,["config"]);return a!=null&&l(r,["generationConfig"],dR(t,a,r)),r}function vg(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["contents"]);if(o!=null){let u=Oe(o);Array.isArray(u)&&(u=u.map(c=>sr(c))),l(r,["contents"],u)}let a=s(e,["config"]);return a!=null&&l(r,["generationConfig"],fR(t,a,r)),r}function Tg(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["candidates"]);if(i!=null){let f=i;Array.isArray(f)&&(f=f.map(p=>bw(p))),l(n,["candidates"],f)}let o=s(t,["modelVersion"]);o!=null&&l(n,["modelVersion"],o);let a=s(t,["promptFeedback"]);a!=null&&l(n,["promptFeedback"],a);let u=s(t,["responseId"]);u!=null&&l(n,["responseId"],u);let c=s(t,["usageMetadata"]);c!=null&&l(n,["usageMetadata"],c);let d=s(t,["modelStatus"]);return d!=null&&l(n,["modelStatus"],d),n}function Ag(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["candidates"]);if(i!=null){let f=i;Array.isArray(f)&&(f=f.map(p=>p)),l(n,["candidates"],f)}let o=s(t,["createTime"]);o!=null&&l(n,["createTime"],o);let a=s(t,["modelVersion"]);a!=null&&l(n,["modelVersion"],a);let u=s(t,["promptFeedback"]);u!=null&&l(n,["promptFeedback"],u);let c=s(t,["responseId"]);c!=null&&l(n,["responseId"],c);let d=s(t,["usageMetadata"]);return d!=null&&l(n,["usageMetadata"],d),n}function pR(t,e,n){let r={},i=s(t,["outputGcsUri"]);e!==void 0&&i!=null&&l(e,["parameters","storageUri"],i);let o=s(t,["negativePrompt"]);e!==void 0&&o!=null&&l(e,["parameters","negativePrompt"],o);let a=s(t,["numberOfImages"]);e!==void 0&&a!=null&&l(e,["parameters","sampleCount"],a);let u=s(t,["aspectRatio"]);e!==void 0&&u!=null&&l(e,["parameters","aspectRatio"],u);let c=s(t,["guidanceScale"]);e!==void 0&&c!=null&&l(e,["parameters","guidanceScale"],c);let d=s(t,["seed"]);e!==void 0&&d!=null&&l(e,["parameters","seed"],d);let f=s(t,["safetyFilterLevel"]);e!==void 0&&f!=null&&l(e,["parameters","safetySetting"],f);let p=s(t,["personGeneration"]);e!==void 0&&p!=null&&l(e,["parameters","personGeneration"],p);let h=s(t,["includeSafetyAttributes"]);e!==void 0&&h!=null&&l(e,["parameters","includeSafetyAttributes"],h);let g=s(t,["includeRaiReason"]);e!==void 0&&g!=null&&l(e,["parameters","includeRaiReason"],g);let _=s(t,["language"]);e!==void 0&&_!=null&&l(e,["parameters","language"],_);let m=s(t,["outputMimeType"]);e!==void 0&&m!=null&&l(e,["parameters","outputOptions","mimeType"],m);let E=s(t,["outputCompressionQuality"]);e!==void 0&&E!=null&&l(e,["parameters","outputOptions","compressionQuality"],E);let y=s(t,["addWatermark"]);e!==void 0&&y!=null&&l(e,["parameters","addWatermark"],y);let A=s(t,["labels"]);e!==void 0&&A!=null&&l(e,["labels"],A);let T=s(t,["imageSize"]);e!==void 0&&T!=null&&l(e,["parameters","sampleImageSize"],T);let C=s(t,["enhancePrompt"]);return e!==void 0&&C!=null&&l(e,["parameters","enhancePrompt"],C),r}function hR(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["prompt"]);o!=null&&l(r,["instances[0]","prompt"],o);let a=s(e,["config"]);return a!=null&&pR(a,r),r}function mR(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["predictions"]);if(i!=null){let a=i;Array.isArray(a)&&(a=a.map(u=>Lo(u))),l(n,["generatedImages"],a)}let o=s(t,["positivePromptSafetyAttributes"]);return o!=null&&l(n,["positivePromptSafetyAttributes"],m_(o)),n}function gR(t,e,n){let r={},i=s(t,["numberOfVideos"]);if(e!==void 0&&i!=null&&l(e,["parameters","sampleCount"],i),s(t,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["fps"])!==void 0)throw new Error("fps parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let o=s(t,["durationSeconds"]);if(e!==void 0&&o!=null&&l(e,["parameters","durationSeconds"],o),s(t,["seed"])!==void 0)throw new Error("seed parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let a=s(t,["aspectRatio"]);e!==void 0&&a!=null&&l(e,["parameters","aspectRatio"],a);let u=s(t,["resolution"]);e!==void 0&&u!=null&&l(e,["parameters","resolution"],u);let c=s(t,["personGeneration"]);if(e!==void 0&&c!=null&&l(e,["parameters","personGeneration"],c),s(t,["pubsubTopic"])!==void 0)throw new Error("pubsubTopic parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let d=s(t,["negativePrompt"]);e!==void 0&&d!=null&&l(e,["parameters","negativePrompt"],d);let f=s(t,["enhancePrompt"]);if(e!==void 0&&f!=null&&l(e,["parameters","enhancePrompt"],f),s(t,["generateAudio"])!==void 0)throw new Error("generateAudio parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let p=s(t,["lastFrame"]);e!==void 0&&p!=null&&l(e,["instances[0]","lastFrame"],Oo(p));let h=s(t,["referenceImages"]);if(e!==void 0&&h!=null){let _=h;Array.isArray(_)&&(_=_.map(m=>AP(m))),l(e,["instances[0]","referenceImages"],_)}if(s(t,["mask"])!==void 0)throw new Error("mask parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["compressionQuality"])!==void 0)throw new Error("compressionQuality parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["labels"])!==void 0)throw new Error("labels parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let g=s(t,["webhookConfig"]);if(e!==void 0&&g!=null&&l(e,["webhookConfig"],g),s(t,["resizeMode"])!==void 0)throw new Error("resizeMode parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return r}function _R(t,e,n){let r={},i=s(t,["numberOfVideos"]);e!==void 0&&i!=null&&l(e,["parameters","sampleCount"],i);let o=s(t,["outputGcsUri"]);e!==void 0&&o!=null&&l(e,["parameters","storageUri"],o);let a=s(t,["fps"]);e!==void 0&&a!=null&&l(e,["parameters","fps"],a);let u=s(t,["durationSeconds"]);e!==void 0&&u!=null&&l(e,["parameters","durationSeconds"],u);let c=s(t,["seed"]);e!==void 0&&c!=null&&l(e,["parameters","seed"],c);let d=s(t,["aspectRatio"]);e!==void 0&&d!=null&&l(e,["parameters","aspectRatio"],d);let f=s(t,["resolution"]);e!==void 0&&f!=null&&l(e,["parameters","resolution"],f);let p=s(t,["personGeneration"]);e!==void 0&&p!=null&&l(e,["parameters","personGeneration"],p);let h=s(t,["pubsubTopic"]);e!==void 0&&h!=null&&l(e,["parameters","pubsubTopic"],h);let g=s(t,["negativePrompt"]);e!==void 0&&g!=null&&l(e,["parameters","negativePrompt"],g);let _=s(t,["enhancePrompt"]);e!==void 0&&_!=null&&l(e,["parameters","enhancePrompt"],_);let m=s(t,["generateAudio"]);e!==void 0&&m!=null&&l(e,["parameters","generateAudio"],m);let E=s(t,["lastFrame"]);e!==void 0&&E!=null&&l(e,["instances[0]","lastFrame"],_t(E));let y=s(t,["referenceImages"]);if(e!==void 0&&y!=null){let k=y;Array.isArray(k)&&(k=k.map(O=>CP(O))),l(e,["instances[0]","referenceImages"],k)}let A=s(t,["mask"]);e!==void 0&&A!=null&&l(e,["instances[0]","mask"],TP(A));let T=s(t,["compressionQuality"]);e!==void 0&&T!=null&&l(e,["parameters","compressionQuality"],T);let C=s(t,["labels"]);if(e!==void 0&&C!=null&&l(e,["labels"],C),s(t,["webhookConfig"])!==void 0)throw new Error("webhookConfig parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let w=s(t,["resizeMode"]);return e!==void 0&&w!=null&&l(e,["parameters","resizeMode"],w),r}function yR(t,e){let n={},r=s(t,["name"]);r!=null&&l(n,["name"],r);let i=s(t,["metadata"]);i!=null&&l(n,["metadata"],i);let o=s(t,["done"]);o!=null&&l(n,["done"],o);let a=s(t,["error"]);a!=null&&l(n,["error"],a);let u=s(t,["response","generateVideoResponse"]);return u!=null&&l(n,["response"],AR(u)),n}function ER(t,e){let n={},r=s(t,["name"]);r!=null&&l(n,["name"],r);let i=s(t,["metadata"]);i!=null&&l(n,["metadata"],i);let o=s(t,["done"]);o!=null&&l(n,["done"],o);let a=s(t,["error"]);a!=null&&l(n,["error"],a);let u=s(t,["response"]);return u!=null&&l(n,["response"],CR(u)),n}function vR(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["prompt"]);o!=null&&l(r,["instances[0]","prompt"],o);let a=s(e,["image"]);a!=null&&l(r,["instances[0]","image"],Oo(a));let u=s(e,["video"]);u!=null&&l(r,["instances[0]","video"],y_(u));let c=s(e,["source"]);c!=null&&SR(c,r);let d=s(e,["config"]);return d!=null&&gR(d,r),r}function TR(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["prompt"]);o!=null&&l(r,["instances[0]","prompt"],o);let a=s(e,["image"]);a!=null&&l(r,["instances[0]","image"],_t(a));let u=s(e,["video"]);u!=null&&l(r,["instances[0]","video"],E_(u));let c=s(e,["source"]);c!=null&&IR(c,r);let d=s(e,["config"]);return d!=null&&_R(d,r),r}function AR(t,e){let n={},r=s(t,["generatedSamples"]);if(r!=null){let a=r;Array.isArray(a)&&(a=a.map(u=>RR(u))),l(n,["generatedVideos"],a)}let i=s(t,["raiMediaFilteredCount"]);i!=null&&l(n,["raiMediaFilteredCount"],i);let o=s(t,["raiMediaFilteredReasons"]);return o!=null&&l(n,["raiMediaFilteredReasons"],o),n}function CR(t,e){let n={},r=s(t,["videos"]);if(r!=null){let a=r;Array.isArray(a)&&(a=a.map(u=>PR(u))),l(n,["generatedVideos"],a)}let i=s(t,["raiMediaFilteredCount"]);i!=null&&l(n,["raiMediaFilteredCount"],i);let o=s(t,["raiMediaFilteredReasons"]);return o!=null&&l(n,["raiMediaFilteredReasons"],o),n}function SR(t,e,n){let r={},i=s(t,["prompt"]);e!==void 0&&i!=null&&l(e,["instances[0]","prompt"],i);let o=s(t,["image"]);e!==void 0&&o!=null&&l(e,["instances[0]","image"],Oo(o));let a=s(t,["video"]);return e!==void 0&&a!=null&&l(e,["instances[0]","video"],y_(a)),r}function IR(t,e,n){let r={},i=s(t,["prompt"]);e!==void 0&&i!=null&&l(e,["instances[0]","prompt"],i);let o=s(t,["image"]);e!==void 0&&o!=null&&l(e,["instances[0]","image"],_t(o));let a=s(t,["video"]);return e!==void 0&&a!=null&&l(e,["instances[0]","video"],E_(a)),r}function Lo(t,e){let n={},r=s(t,["_self"]);r!=null&&l(n,["image"],h_(r));let i=s(t,["raiFilteredReason"]);i!=null&&l(n,["raiFilteredReason"],i);let o=s(t,["_self"]);o!=null&&l(n,["safetyAttributes"],m_(o));let a=s(t,["prompt"]);return a!=null&&l(n,["enhancedPrompt"],a),n}function wR(t,e){let n={},r=s(t,["_self"]);r!=null&&l(n,["mask"],h_(r));let i=s(t,["labels"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(n,["labels"],o)}return n}function RR(t,e){let n={},r=s(t,["video"]);return r!=null&&l(n,["video"],EP(r)),n}function PR(t,e){let n={},r=s(t,["_self"]);return r!=null&&l(n,["video"],vP(r)),n}function NR(t,e){let n={},r=s(t,["modelSelectionConfig"]);r!=null&&l(n,["modelConfig"],r);let i=s(t,["responseJsonSchema"]);i!=null&&l(n,["responseJsonSchema"],i);let o=s(t,["audioTranscriptionConfig"]);o!=null&&l(n,["audioTranscriptionConfig"],o);let a=s(t,["audioTimestamp"]);a!=null&&l(n,["audioTimestamp"],a);let u=s(t,["candidateCount"]);u!=null&&l(n,["candidateCount"],u);let c=s(t,["enableAffectiveDialog"]);c!=null&&l(n,["enableAffectiveDialog"],c);let d=s(t,["frequencyPenalty"]);d!=null&&l(n,["frequencyPenalty"],d);let f=s(t,["logprobs"]);f!=null&&l(n,["logprobs"],f);let p=s(t,["maxOutputTokens"]);p!=null&&l(n,["maxOutputTokens"],p);let h=s(t,["mediaResolution"]);h!=null&&l(n,["mediaResolution"],h);let g=s(t,["presencePenalty"]);g!=null&&l(n,["presencePenalty"],g);let _=s(t,["responseFormat"]);if(_!=null){let $=_;Array.isArray($)&&($=$.map(z=>z)),l(n,["responseFormat"],$)}let m=s(t,["responseLogprobs"]);m!=null&&l(n,["responseLogprobs"],m);let E=s(t,["responseMimeType"]);E!=null&&l(n,["responseMimeType"],E);let y=s(t,["responseModalities"]);y!=null&&l(n,["responseModalities"],y);let A=s(t,["responseSchema"]);A!=null&&l(n,["responseSchema"],A);let T=s(t,["routingConfig"]);T!=null&&l(n,["routingConfig"],T);let C=s(t,["seed"]);C!=null&&l(n,["seed"],C);let w=s(t,["speechConfig"]);w!=null&&l(n,["speechConfig"],g_(w));let k=s(t,["stopSequences"]);k!=null&&l(n,["stopSequences"],k);let O=s(t,["temperature"]);O!=null&&l(n,["temperature"],O);let B=s(t,["thinkingConfig"]);B!=null&&l(n,["thinkingConfig"],B);let N=s(t,["topK"]);N!=null&&l(n,["topK"],N);let q=s(t,["topP"]);if(q!=null&&l(n,["topP"],q),s(t,["enableEnhancedCivicAnswers"])!==void 0)throw new Error("enableEnhancedCivicAnswers parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["translationConfig"])!==void 0)throw new Error("translationConfig parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function xR(t,e,n){let r={},i=s(e,["model"]);return i!=null&&l(r,["_url","name"],he(t,i)),r}function kR(t,e,n){let r={},i=s(e,["model"]);return i!=null&&l(r,["_url","name"],he(t,i)),r}function DR(t,e){let n={},r=s(t,["authConfig"]);r!=null&&l(n,["authConfig"],Dw(r));let i=s(t,["enableWidget"]);if(i!=null&&l(n,["enableWidget"],i),s(t,["groundingTypes"])!==void 0)throw new Error("groundingTypes parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function MR(t,e){let n={};if(s(t,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["searchTypes"]);r!=null&&l(n,["searchTypes"],r);let i=s(t,["timeRangeFilter"]);return i!=null&&l(n,["timeRangeFilter"],i),n}function bR(t,e){let n={},r=s(t,["aspectRatio"]);r!=null&&l(n,["aspectRatio"],r);let i=s(t,["imageSize"]);if(i!=null&&l(n,["imageSize"],i),s(t,["personGeneration"])!==void 0)throw new Error("personGeneration parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["outputMimeType"])!==void 0)throw new Error("outputMimeType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["outputCompressionQuality"])!==void 0)throw new Error("outputCompressionQuality parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["imageOutputOptions"])!==void 0)throw new Error("imageOutputOptions parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["prominentPeople"])!==void 0)throw new Error("prominentPeople parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return n}function UR(t,e){let n={},r=s(t,["aspectRatio"]);r!=null&&l(n,["aspectRatio"],r);let i=s(t,["imageSize"]);i!=null&&l(n,["imageSize"],i);let o=s(t,["personGeneration"]);o!=null&&l(n,["personGeneration"],o);let a=s(t,["outputMimeType"]);a!=null&&l(n,["imageOutputOptions","mimeType"],a);let u=s(t,["outputCompressionQuality"]);u!=null&&l(n,["imageOutputOptions","compressionQuality"],u);let c=s(t,["imageOutputOptions"]);c!=null&&l(n,["imageOutputOptions"],c);let d=s(t,["prominentPeople"]);return d!=null&&l(n,["prominentPeople"],d),n}function h_(t,e){let n={},r=s(t,["gcsUri"]);r!=null&&l(n,["gcsUri"],r);let i=s(t,["bytesBase64Encoded"]);i!=null&&l(n,["imageBytes"],vn(i));let o=s(t,["mimeType"]);return o!=null&&l(n,["mimeType"],o),n}function Oo(t,e){let n={};if(s(t,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["imageBytes"]);r!=null&&l(n,["bytesBase64Encoded"],vn(r));let i=s(t,["mimeType"]);return i!=null&&l(n,["mimeType"],i),n}function _t(t,e){let n={},r=s(t,["gcsUri"]);r!=null&&l(n,["gcsUri"],r);let i=s(t,["imageBytes"]);i!=null&&l(n,["bytesBase64Encoded"],vn(i));let o=s(t,["mimeType"]);return o!=null&&l(n,["mimeType"],o),n}function GR(t,e,n,r){let i={},o=s(e,["pageSize"]);n!==void 0&&o!=null&&l(n,["_query","pageSize"],o);let a=s(e,["pageToken"]);n!==void 0&&a!=null&&l(n,["_query","pageToken"],a);let u=s(e,["filter"]);n!==void 0&&u!=null&&l(n,["_query","filter"],u);let c=s(e,["queryBase"]);return n!==void 0&&c!=null&&l(n,["_url","models_url"],o_(t,c)),i}function LR(t,e,n,r){let i={},o=s(e,["pageSize"]);n!==void 0&&o!=null&&l(n,["_query","pageSize"],o);let a=s(e,["pageToken"]);n!==void 0&&a!=null&&l(n,["_query","pageToken"],a);let u=s(e,["filter"]);n!==void 0&&u!=null&&l(n,["_query","filter"],u);let c=s(e,["queryBase"]);return n!==void 0&&c!=null&&l(n,["_url","models_url"],o_(t,c)),i}function OR(t,e,n){let r={},i=s(e,["config"]);return i!=null&&GR(t,i,r),r}function qR(t,e,n){let r={},i=s(e,["config"]);return i!=null&&LR(t,i,r),r}function FR(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["nextPageToken"]);i!=null&&l(n,["nextPageToken"],i);let o=s(t,["_self"]);if(o!=null){let a=s_(o);Array.isArray(a)&&(a=a.map(u=>jl(u))),l(n,["models"],a)}return n}function BR(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["nextPageToken"]);i!=null&&l(n,["nextPageToken"],i);let o=s(t,["_self"]);if(o!=null){let a=s_(o);Array.isArray(a)&&(a=a.map(u=>eu(u))),l(n,["models"],a)}return n}function HR(t,e){let n={},r=s(t,["maskMode"]);r!=null&&l(n,["maskMode"],r);let i=s(t,["segmentationClasses"]);i!=null&&l(n,["maskClasses"],i);let o=s(t,["maskDilation"]);return o!=null&&l(n,["dilation"],o),n}function VR(t,e){let n={};if(s(t,["name"])!==void 0)throw new Error("name parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["streamableHttpTransport"])!==void 0)throw new Error("streamableHttpTransport parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function jl(t,e){let n={},r=s(t,["name"]);r!=null&&l(n,["name"],r);let i=s(t,["displayName"]);i!=null&&l(n,["displayName"],i);let o=s(t,["description"]);o!=null&&l(n,["description"],o);let a=s(t,["version"]);a!=null&&l(n,["version"],a);let u=s(t,["_self"]);u!=null&&l(n,["tunedModelInfo"],cP(u));let c=s(t,["inputTokenLimit"]);c!=null&&l(n,["inputTokenLimit"],c);let d=s(t,["outputTokenLimit"]);d!=null&&l(n,["outputTokenLimit"],d);let f=s(t,["supportedGenerationMethods"]);f!=null&&l(n,["supportedActions"],f);let p=s(t,["temperature"]);p!=null&&l(n,["temperature"],p);let h=s(t,["maxTemperature"]);h!=null&&l(n,["maxTemperature"],h);let g=s(t,["topP"]);g!=null&&l(n,["topP"],g);let _=s(t,["topK"]);_!=null&&l(n,["topK"],_);let m=s(t,["thinking"]);return m!=null&&l(n,["thinking"],m),n}function eu(t,e){let n={},r=s(t,["name"]);r!=null&&l(n,["name"],r);let i=s(t,["displayName"]);i!=null&&l(n,["displayName"],i);let o=s(t,["description"]);o!=null&&l(n,["description"],o);let a=s(t,["versionId"]);a!=null&&l(n,["version"],a);let u=s(t,["deployedModels"]);if(u!=null){let h=u;Array.isArray(h)&&(h=h.map(g=>aR(g))),l(n,["endpoints"],h)}let c=s(t,["labels"]);c!=null&&l(n,["labels"],c);let d=s(t,["_self"]);d!=null&&l(n,["tunedModelInfo"],dP(d));let f=s(t,["defaultCheckpointId"]);f!=null&&l(n,["defaultCheckpointId"],f);let p=s(t,["checkpoints"]);if(p!=null){let h=p;Array.isArray(h)&&(h=h.map(g=>g)),l(n,["checkpoints"],h)}return n}function $R(t,e){let n={},r=s(t,["speakerVoiceConfigs"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>sP(o))),l(n,["speakerVoiceConfigs"],i)}return n}function XR(t,e){let n={},r=s(t,["mediaResolution"]);r!=null&&l(n,["mediaResolution"],r);let i=s(t,["toolCall"]);i!=null&&l(n,["toolCall"],i);let o=s(t,["toolResponse"]);o!=null&&l(n,["toolResponse"],o);let a=s(t,["audioTranscription"]);a!=null&&l(n,["audioTranscription"],a);let u=s(t,["codeExecutionResult"]);u!=null&&l(n,["codeExecutionResult"],u);let c=s(t,["executableCode"]);c!=null&&l(n,["executableCode"],c);let d=s(t,["fileData"]);d!=null&&l(n,["fileData"],lR(d));let f=s(t,["functionCall"]);f!=null&&l(n,["functionCall"],uR(f));let p=s(t,["functionResponse"]);p!=null&&l(n,["functionResponse"],p);let h=s(t,["inlineData"]);h!=null&&l(n,["inlineData"],Mw(h));let g=s(t,["text"]);g!=null&&l(n,["text"],g);let _=s(t,["thought"]);_!=null&&l(n,["thought"],_);let m=s(t,["thoughtSignature"]);m!=null&&l(n,["thoughtSignature"],m);let E=s(t,["videoMetadata"]);E!=null&&l(n,["videoMetadata"],E);let y=s(t,["partMetadata"]);y!=null&&l(n,["partMetadata"],y);let A=s(t,["mediaProcessing"]);return A!=null&&l(n,["mediaProcessing"],A),n}function JR(t,e){let n={},r=s(t,["mediaResolution"]);if(r!=null&&l(n,["mediaResolution"],r),s(t,["toolCall"])!==void 0)throw new Error("toolCall parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["toolResponse"])!==void 0)throw new Error("toolResponse parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let i=s(t,["audioTranscription"]);i!=null&&l(n,["audioTranscription"],i);let o=s(t,["codeExecutionResult"]);o!=null&&l(n,["codeExecutionResult"],o);let a=s(t,["executableCode"]);a!=null&&l(n,["executableCode"],a);let u=s(t,["fileData"]);u!=null&&l(n,["fileData"],u);let c=s(t,["functionCall"]);c!=null&&l(n,["functionCall"],c);let d=s(t,["functionResponse"]);d!=null&&l(n,["functionResponse"],d);let f=s(t,["inlineData"]);f!=null&&l(n,["inlineData"],f);let p=s(t,["text"]);p!=null&&l(n,["text"],p);let h=s(t,["thought"]);h!=null&&l(n,["thought"],h);let g=s(t,["thoughtSignature"]);g!=null&&l(n,["thoughtSignature"],g);let _=s(t,["videoMetadata"]);if(_!=null&&l(n,["videoMetadata"],_),s(t,["partMetadata"])!==void 0)throw new Error("partMetadata parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let m=s(t,["mediaProcessing"]);return m!=null&&l(n,["mediaProcessing"],m),n}function WR(t,e){let n={},r=s(t,["productImage"]);return r!=null&&l(n,["image"],_t(r)),n}function KR(t,e,n){let r={},i=s(t,["numberOfImages"]);e!==void 0&&i!=null&&l(e,["parameters","sampleCount"],i);let o=s(t,["baseSteps"]);e!==void 0&&o!=null&&l(e,["parameters","baseSteps"],o);let a=s(t,["outputGcsUri"]);e!==void 0&&a!=null&&l(e,["parameters","storageUri"],a);let u=s(t,["seed"]);e!==void 0&&u!=null&&l(e,["parameters","seed"],u);let c=s(t,["safetyFilterLevel"]);e!==void 0&&c!=null&&l(e,["parameters","safetySetting"],c);let d=s(t,["personGeneration"]);e!==void 0&&d!=null&&l(e,["parameters","personGeneration"],d);let f=s(t,["addWatermark"]);e!==void 0&&f!=null&&l(e,["parameters","addWatermark"],f);let p=s(t,["outputMimeType"]);e!==void 0&&p!=null&&l(e,["parameters","outputOptions","mimeType"],p);let h=s(t,["outputCompressionQuality"]);e!==void 0&&h!=null&&l(e,["parameters","outputOptions","compressionQuality"],h);let g=s(t,["enhancePrompt"]);e!==void 0&&g!=null&&l(e,["parameters","enhancePrompt"],g);let _=s(t,["labels"]);return e!==void 0&&_!=null&&l(e,["labels"],_),r}function YR(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["source"]);o!=null&&QR(o,r);let a=s(e,["config"]);return a!=null&&KR(a,r),r}function zR(t,e){let n={},r=s(t,["predictions"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>Lo(o))),l(n,["generatedImages"],i)}return n}function QR(t,e,n){let r={},i=s(t,["prompt"]);e!==void 0&&i!=null&&l(e,["instances[0]","prompt"],i);let o=s(t,["personImage"]);e!==void 0&&o!=null&&l(e,["instances[0]","personImage","image"],_t(o));let a=s(t,["productImages"]);if(e!==void 0&&a!=null){let u=a;Array.isArray(u)&&(u=u.map(c=>WR(c))),l(e,["instances[0]","productImages"],u)}return r}function ZR(t,e){let n={},r=s(t,["referenceImage"]);r!=null&&l(n,["referenceImage"],_t(r));let i=s(t,["referenceId"]);i!=null&&l(n,["referenceId"],i);let o=s(t,["referenceType"]);o!=null&&l(n,["referenceType"],o);let a=s(t,["maskImageConfig"]);a!=null&&l(n,["maskImageConfig"],HR(a));let u=s(t,["controlImageConfig"]);u!=null&&l(n,["controlImageConfig"],Bw(u));let c=s(t,["styleImageConfig"]);c!=null&&l(n,["styleImageConfig"],c);let d=s(t,["subjectImageConfig"]);return d!=null&&l(n,["subjectImageConfig"],d),n}function jR(t,e){let n={},r=s(t,["mimeType"]);r!=null&&l(n,["mimeType"],r);let i=s(t,["voiceSampleAudio"]);if(i!=null&&l(n,["voiceSampleAudio"],i),s(t,["consentAudio"])!==void 0)throw new Error("consentAudio parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["voiceConsentSignature"])!==void 0)throw new Error("voiceConsentSignature parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function m_(t,e){let n={},r=s(t,["safetyAttributes","categories"]);r!=null&&l(n,["categories"],r);let i=s(t,["safetyAttributes","scores"]);i!=null&&l(n,["scores"],i);let o=s(t,["contentType"]);return o!=null&&l(n,["contentType"],o),n}function eP(t,e){let n={},r=s(t,["category"]);if(r!=null&&l(n,["category"],r),s(t,["method"])!==void 0)throw new Error("method parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let i=s(t,["threshold"]);return i!=null&&l(n,["threshold"],i),n}function tP(t,e){let n={},r=s(t,["image"]);return r!=null&&l(n,["image"],_t(r)),n}function nP(t,e,n){let r={},i=s(t,["mode"]);e!==void 0&&i!=null&&l(e,["parameters","mode"],i);let o=s(t,["maxPredictions"]);e!==void 0&&o!=null&&l(e,["parameters","maxPredictions"],o);let a=s(t,["confidenceThreshold"]);e!==void 0&&a!=null&&l(e,["parameters","confidenceThreshold"],a);let u=s(t,["maskDilation"]);e!==void 0&&u!=null&&l(e,["parameters","maskDilation"],u);let c=s(t,["binaryColorThreshold"]);e!==void 0&&c!=null&&l(e,["parameters","binaryColorThreshold"],c);let d=s(t,["labels"]);return e!==void 0&&d!=null&&l(e,["labels"],d),r}function rP(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["source"]);o!=null&&oP(o,r);let a=s(e,["config"]);return a!=null&&nP(a,r),r}function iP(t,e){let n={},r=s(t,["predictions"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>wR(o))),l(n,["generatedMasks"],i)}return n}function oP(t,e,n){let r={},i=s(t,["prompt"]);e!==void 0&&i!=null&&l(e,["instances[0]","prompt"],i);let o=s(t,["image"]);e!==void 0&&o!=null&&l(e,["instances[0]","image"],_t(o));let a=s(t,["scribbleImage"]);return e!==void 0&&a!=null&&l(e,["instances[0]","scribble"],tP(a)),r}function sP(t,e){let n={},r=s(t,["speaker"]);r!=null&&l(n,["speaker"],r);let i=s(t,["voiceConfig"]);return i!=null&&l(n,["voiceConfig"],v_(i)),n}function g_(t,e){let n={},r=s(t,["voiceConfig"]);r!=null&&l(n,["voiceConfig"],v_(r));let i=s(t,["languageCode"]);i!=null&&l(n,["languageCode"],i);let o=s(t,["multiSpeakerVoiceConfig"]);return o!=null&&l(n,["multiSpeakerVoiceConfig"],$R(o)),n}function aP(t,e){let n={},r=s(t,["functionCallingConfig"]);r!=null&&l(n,["functionCallingConfig"],cR(r));let i=s(t,["retrievalConfig"]);i!=null&&l(n,["retrievalConfig"],i);let o=s(t,["includeServerSideToolInvocations"]);return o!=null&&l(n,["includeServerSideToolInvocations"],o),n}function lP(t,e){let n={},r=s(t,["functionCallingConfig"]);r!=null&&l(n,["functionCallingConfig"],r);let i=s(t,["retrievalConfig"]);if(i!=null&&l(n,["retrievalConfig"],i),s(t,["includeServerSideToolInvocations"])!==void 0)throw new Error("includeServerSideToolInvocations parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function uP(t,e){let n={};if(s(t,["retrieval"])!==void 0)throw new Error("retrieval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["googleMaps"]);r!=null&&l(n,["googleMaps"],DR(r));let i=s(t,["mcpServers"]);if(i!=null){let h=i;Array.isArray(h)&&(h=h.map(g=>g)),l(n,["mcpServers"],h)}let o=s(t,["codeExecution"]);o!=null&&l(n,["codeExecution"],o);let a=s(t,["computerUse"]);if(a!=null&&l(n,["computerUse"],a),s(t,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["exaAiSearch"])!==void 0)throw new Error("exaAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let u=s(t,["functionDeclarations"]);if(u!=null){let h=u;Array.isArray(h)&&(h=h.map(g=>g)),l(n,["functionDeclarations"],h)}let c=s(t,["googleSearch"]);c!=null&&l(n,["googleSearch"],MR(c));let d=s(t,["googleSearchRetrieval"]);if(d!=null&&l(n,["googleSearchRetrieval"],d),s(t,["parallelAiSearch"])!==void 0)throw new Error("parallelAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let f=s(t,["urlContext"]);f!=null&&l(n,["urlContext"],f);let p=s(t,["fileSearch"]);return p!=null&&l(n,["fileSearch"],p),n}function __(t,e){let n={},r=s(t,["retrieval"]);r!=null&&l(n,["retrieval"],r);let i=s(t,["googleMaps"]);i!=null&&l(n,["googleMaps"],i);let o=s(t,["mcpServers"]);if(o!=null){let m=o;Array.isArray(m)&&(m=m.map(E=>VR(E))),l(n,["mcpServers"],m)}let a=s(t,["codeExecution"]);a!=null&&l(n,["codeExecution"],a);let u=s(t,["computerUse"]);u!=null&&l(n,["computerUse"],Ow(u));let c=s(t,["enterpriseWebSearch"]);c!=null&&l(n,["enterpriseWebSearch"],c);let d=s(t,["exaAiSearch"]);d!=null&&l(n,["exaAiSearch"],d);let f=s(t,["functionDeclarations"]);if(f!=null){let m=f;Array.isArray(m)&&(m=m.map(E=>E)),l(n,["functionDeclarations"],m)}let p=s(t,["googleSearch"]);p!=null&&l(n,["googleSearch"],p);let h=s(t,["googleSearchRetrieval"]);h!=null&&l(n,["googleSearchRetrieval"],h);let g=s(t,["parallelAiSearch"]);g!=null&&l(n,["parallelAiSearch"],g);let _=s(t,["urlContext"]);if(_!=null&&l(n,["urlContext"],_),s(t,["fileSearch"])!==void 0)throw new Error("fileSearch parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return n}function cP(t,e){let n={},r=s(t,["baseModel"]);r!=null&&l(n,["baseModel"],r);let i=s(t,["createTime"]);i!=null&&l(n,["createTime"],i);let o=s(t,["updateTime"]);return o!=null&&l(n,["updateTime"],o),n}function dP(t,e){let n={},r=s(t,["labels","google-vertex-llm-tuning-base-model-id"]);r!=null&&l(n,["baseModel"],r);let i=s(t,["createTime"]);i!=null&&l(n,["createTime"],i);let o=s(t,["updateTime"]);return o!=null&&l(n,["updateTime"],o),n}function fP(t,e,n){let r={},i=s(t,["displayName"]);e!==void 0&&i!=null&&l(e,["displayName"],i);let o=s(t,["description"]);e!==void 0&&o!=null&&l(e,["description"],o);let a=s(t,["defaultCheckpointId"]);return e!==void 0&&a!=null&&l(e,["defaultCheckpointId"],a),r}function pP(t,e,n){let r={},i=s(t,["displayName"]);e!==void 0&&i!=null&&l(e,["displayName"],i);let o=s(t,["description"]);e!==void 0&&o!=null&&l(e,["description"],o);let a=s(t,["defaultCheckpointId"]);return e!==void 0&&a!=null&&l(e,["defaultCheckpointId"],a),r}function hP(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","name"],he(t,i));let o=s(e,["config"]);return o!=null&&fP(o,r),r}function mP(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["config"]);return o!=null&&pP(o,r),r}function gP(t,e,n){let r={},i=s(t,["outputGcsUri"]);e!==void 0&&i!=null&&l(e,["parameters","storageUri"],i);let o=s(t,["safetyFilterLevel"]);e!==void 0&&o!=null&&l(e,["parameters","safetySetting"],o);let a=s(t,["personGeneration"]);e!==void 0&&a!=null&&l(e,["parameters","personGeneration"],a);let u=s(t,["includeRaiReason"]);e!==void 0&&u!=null&&l(e,["parameters","includeRaiReason"],u);let c=s(t,["outputMimeType"]);e!==void 0&&c!=null&&l(e,["parameters","outputOptions","mimeType"],c);let d=s(t,["outputCompressionQuality"]);e!==void 0&&d!=null&&l(e,["parameters","outputOptions","compressionQuality"],d);let f=s(t,["enhanceInputImage"]);e!==void 0&&f!=null&&l(e,["parameters","upscaleConfig","enhanceInputImage"],f);let p=s(t,["imagePreservationFactor"]);e!==void 0&&p!=null&&l(e,["parameters","upscaleConfig","imagePreservationFactor"],p);let h=s(t,["labels"]);e!==void 0&&h!=null&&l(e,["labels"],h);let g=s(t,["numberOfImages"]);e!==void 0&&g!=null&&l(e,["parameters","sampleCount"],g);let _=s(t,["mode"]);return e!==void 0&&_!=null&&l(e,["parameters","mode"],_),r}function _P(t,e,n){let r={},i=s(e,["model"]);i!=null&&l(r,["_url","model"],he(t,i));let o=s(e,["image"]);o!=null&&l(r,["instances[0]","image"],_t(o));let a=s(e,["upscaleFactor"]);a!=null&&l(r,["parameters","upscaleConfig","upscaleFactor"],a);let u=s(e,["config"]);return u!=null&&gP(u,r),r}function yP(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["predictions"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>Lo(a))),l(n,["generatedImages"],o)}return n}function EP(t,e){let n={},r=s(t,["uri"]);r!=null&&l(n,["uri"],r);let i=s(t,["encodedVideo"]);i!=null&&l(n,["videoBytes"],vn(i));let o=s(t,["encoding"]);return o!=null&&l(n,["mimeType"],o),n}function vP(t,e){let n={},r=s(t,["gcsUri"]);r!=null&&l(n,["uri"],r);let i=s(t,["bytesBase64Encoded"]);i!=null&&l(n,["videoBytes"],vn(i));let o=s(t,["mimeType"]);return o!=null&&l(n,["mimeType"],o),n}function TP(t,e){let n={},r=s(t,["image"]);r!=null&&l(n,["_self"],_t(r));let i=s(t,["maskMode"]);return i!=null&&l(n,["maskMode"],i),n}function AP(t,e){let n={},r=s(t,["image"]);r!=null&&l(n,["image"],Oo(r));let i=s(t,["referenceType"]);return i!=null&&l(n,["referenceType"],i),n}function CP(t,e){let n={},r=s(t,["image"]);r!=null&&l(n,["image"],_t(r));let i=s(t,["referenceType"]);return i!=null&&l(n,["referenceType"],i),n}function y_(t,e){let n={},r=s(t,["uri"]);r!=null&&l(n,["uri"],r);let i=s(t,["videoBytes"]);i!=null&&l(n,["encodedVideo"],vn(i));let o=s(t,["mimeType"]);return o!=null&&l(n,["encoding"],o),n}function E_(t,e){let n={},r=s(t,["uri"]);r!=null&&l(n,["gcsUri"],r);let i=s(t,["videoBytes"]);i!=null&&l(n,["bytesBase64Encoded"],vn(i));let o=s(t,["mimeType"]);return o!=null&&l(n,["mimeType"],o),n}function v_(t,e){let n={},r=s(t,["replicatedVoiceConfig"]);r!=null&&l(n,["replicatedVoiceConfig"],jR(r));let i=s(t,["prebuiltVoiceConfig"]);return i!=null&&l(n,["prebuiltVoiceConfig"],i),n}function SP(t,e,n){let r={},i=s(e,["displayName"]);n!==void 0&&i!=null&&l(n,["displayName"],i);let o=s(e,["embeddingModel"]);return n!==void 0&&o!=null&&l(n,["embeddingModel"],he(t,o)),r}function IP(t,e){let n={},r=s(e,["config"]);return r!=null&&SP(t,r,n),n}function wP(t,e){let n={},r=s(t,["force"]);return e!==void 0&&r!=null&&l(e,["_query","force"],r),n}function RP(t){let e={},n=s(t,["name"]);n!=null&&l(e,["_url","name"],n);let r=s(t,["config"]);return r!=null&&wP(r,e),e}function PP(t){let e={},n=s(t,["name"]);return n!=null&&l(e,["_url","name"],n),e}function NP(t,e){let n={},r=s(t,["customMetadata"]);if(e!==void 0&&r!=null){let o=r;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["customMetadata"],o)}let i=s(t,["chunkingConfig"]);return e!==void 0&&i!=null&&l(e,["chunkingConfig"],i),n}function xP(t){let e={},n=s(t,["name"]);n!=null&&l(e,["name"],n);let r=s(t,["metadata"]);r!=null&&l(e,["metadata"],r);let i=s(t,["done"]);i!=null&&l(e,["done"],i);let o=s(t,["error"]);o!=null&&l(e,["error"],o);let a=s(t,["response"]);return a!=null&&l(e,["response"],DP(a)),e}function kP(t){let e={},n=s(t,["fileSearchStoreName"]);n!=null&&l(e,["_url","file_search_store_name"],n);let r=s(t,["fileName"]);r!=null&&l(e,["fileName"],r);let i=s(t,["config"]);return i!=null&&NP(i,e),e}function DP(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["parent"]);r!=null&&l(e,["parent"],r);let i=s(t,["documentName"]);return i!=null&&l(e,["documentName"],i),e}function MP(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);return e!==void 0&&i!=null&&l(e,["_query","pageToken"],i),n}function bP(t){let e={},n=s(t,["config"]);return n!=null&&MP(n,e),e}function UP(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["fileSearchStores"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["fileSearchStores"],o)}return e}function T_(t,e){let n={},r=s(t,["mimeType"]);e!==void 0&&r!=null&&l(e,["mimeType"],r);let i=s(t,["displayName"]);e!==void 0&&i!=null&&l(e,["displayName"],i);let o=s(t,["customMetadata"]);if(e!==void 0&&o!=null){let u=o;Array.isArray(u)&&(u=u.map(c=>c)),l(e,["customMetadata"],u)}let a=s(t,["chunkingConfig"]);return e!==void 0&&a!=null&&l(e,["chunkingConfig"],a),n}function GP(t){let e={},n=s(t,["fileSearchStoreName"]);n!=null&&l(e,["_url","file_search_store_name"],n);let r=s(t,["config"]);return r!=null&&T_(r,e),e}function LP(t){let e={},n=s(t,["sdkHttpResponse"]);return n!=null&&l(e,["sdkHttpResponse"],n),e}var OP="Content-Type",qP="X-Server-Timeout",FP="User-Agent",tu="x-goog-api-client",BP="2.23.0",HP=`google-genai-sdk/${BP}`,VP="v1beta1",$P="v1beta",XP=new Set(["us","eu"]);function JP(t){let n=globalThis[Symbol.for("undici.globalDispatcher.1")];if(n)for(let r of Object.getOwnPropertySymbols(n)){let i=r.description;if(i?.includes("headers timeout")||i?.includes("body timeout")){let o=n[r];typeof o=="number"&&(n[r]=Math.max(o,t))}}}function WP(t,e){let n=()=>{};if(!(t&&t>0)&&!e)return{signal:void 0,dispose:n};let r=new AbortController,i;t&&t>0&&(i=setTimeout(()=>r.abort(),t),i&&typeof i.unref=="function"&&i.unref());let o=()=>r.abort();return e&&(e.aborted?r.abort():e.addEventListener("abort",o)),{signal:r.signal,dispose:()=>{i!==void 0&&clearTimeout(i),e?.removeEventListener("abort",o)}}}var KP=5,YP=1,zP=60,QP=2,ZP=1,jP=[408,429,500,502,503,504],nu=class{constructor(e){var n,r,i;this.clientOptions=Object.assign({},e),this.customBaseUrl=(n=e.httpOptions)===null||n===void 0?void 0:n.baseUrl;let o={};if(this.clientOptions.vertexai){if(!this.clientOptions.location&&!this.clientOptions.apiKey&&!this.customBaseUrl&&(this.clientOptions.location="global"),!(this.clientOptions.project&&this.clientOptions.location||this.clientOptions.apiKey)&&!this.customBaseUrl)throw new Error("Authentication is not set up. Please provide either a project and location, or an API key, or a custom base URL.");let u=e.project&&e.location||!!e.apiKey;this.customBaseUrl&&!u?(o.baseUrl=this.customBaseUrl,this.clientOptions.project=void 0,this.clientOptions.location=void 0):this.clientOptions.apiKey&&!this.clientOptions.project||this.clientOptions.location==="global"?o.baseUrl="https://aiplatform.googleapis.com/":this.clientOptions.project&&this.clientOptions.location&&XP.has(this.clientOptions.location)?o.baseUrl=`https://aiplatform.${this.clientOptions.location}.rep.googleapis.com/`:this.clientOptions.project&&this.clientOptions.location&&(o.baseUrl=`https://${this.clientOptions.location}-aiplatform.googleapis.com/`),o.apiVersion=(r=this.clientOptions.apiVersion)!==null&&r!==void 0?r:VP}else this.clientOptions.apiKey||console.warn("API key should be set when using the Gemini API."),o.apiVersion=(i=this.clientOptions.apiVersion)!==null&&i!==void 0?i:$P,o.baseUrl="https://generativelanguage.googleapis.com/";o.headers=this.getDefaultHeaders(),this.clientOptions.httpOptions=o,e.httpOptions&&(this.clientOptions.httpOptions=this.patchHttpOptions(o,e.httpOptions))}isVertexAI(){var e;return(e=this.clientOptions.vertexai)!==null&&e!==void 0?e:!1}getProject(){return this.clientOptions.project}getLocation(){return this.clientOptions.location}getCustomBaseUrl(){return this.customBaseUrl}async getAuthHeaders(){let e=new Headers;return await this.clientOptions.auth.addAuthHeaders(e),e}getApiVersion(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.apiVersion!==void 0)return this.clientOptions.httpOptions.apiVersion;throw new Error("API version is not set.")}getBaseUrl(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.baseUrl!==void 0)return this.clientOptions.httpOptions.baseUrl;throw new Error("Base URL is not set.")}getRequestUrl(){return this.getRequestUrlInternal(this.clientOptions.httpOptions)}getHeaders(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.headers!==void 0)return this.clientOptions.httpOptions.headers;throw new Error("Headers are not set.")}getFetch(){var e;return(e=this.clientOptions.httpOptions)===null||e===void 0?void 0:e.fetch}getRequestUrlInternal(e){if(!e||e.baseUrl===void 0||e.apiVersion===void 0)throw new Error("HTTP options are not correctly set.");let r=[e.baseUrl.endsWith("/")?e.baseUrl.slice(0,-1):e.baseUrl];return e.apiVersion&&e.apiVersion!==""&&r.push(e.apiVersion),r.join("/")}getBaseResourcePath(){return`projects/${this.clientOptions.project}/locations/${this.clientOptions.location}`}getApiKey(){return this.clientOptions.apiKey}getWebsocketBaseUrl(){let e=this.getBaseUrl(),n=new URL(e);return n.protocol=n.protocol=="http:"?"ws":"wss",n.toString()}setBaseUrl(e){if(this.clientOptions.httpOptions)this.clientOptions.httpOptions.baseUrl=e;else throw new Error("HTTP options are not correctly set.")}constructUrl(e,n,r){let i=[this.getRequestUrlInternal(n)];return r&&i.push(this.getBaseResourcePath()),e!==""&&i.push(e),new URL(`${i.join("/")}`)}shouldPrependVertexProjectPath(e,n){return!(n.baseUrl&&n.baseUrlResourceScope===Pl.COLLECTION||!this.clientOptions.vertexai||!this.clientOptions.project||!this.clientOptions.location||e.path.startsWith("projects/")||e.httpMethod==="GET"&&e.path.startsWith("publishers/google/models"))}async request(e){let n=this.clientOptions.httpOptions;e.httpOptions&&(n=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));let r=this.shouldPrependVertexProjectPath(e,n),i=this.constructUrl(e.path,n,r);if(e.queryParams)for(let[a,u]of Object.entries(e.queryParams))i.searchParams.append(a,String(u));let o={};if(e.httpMethod==="GET"){if(e.body&&e.body!=="{}")throw new Error("Request body should be empty for GET request, but got non empty request body")}else o.body=e.body;return o=await this.includeExtraHttpOptionsToRequestInit(o,n,i.toString()),this.unaryApiCall(i,o,e.httpMethod,n.retryOptions,n.timeout,e.abortSignal,n.fetch)}patchHttpOptions(e,n){let r=JSON.parse(JSON.stringify(e));e.fetch&&(r.fetch=e.fetch);for(let[i,o]of Object.entries(n))typeof o=="object"?r[i]=Object.assign(Object.assign({},r[i]),o):o!==void 0&&(r[i]=o);return r}async requestStream(e){let n=this.clientOptions.httpOptions;e.httpOptions&&(n=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));let r=this.shouldPrependVertexProjectPath(e,n),i=this.constructUrl(e.path,n,r);(!i.searchParams.has("alt")||i.searchParams.get("alt")!=="sse")&&i.searchParams.set("alt","sse");let o={};return o.body=e.body,o=await this.includeExtraHttpOptionsToRequestInit(o,n,i.toString()),this.streamApiCall(i,o,e.httpMethod,n.retryOptions,n.timeout,e.abortSignal,n.fetch)}async includeExtraHttpOptionsToRequestInit(e,n,r){return n?.timeout&&n.timeout>0&&JP(n.timeout),n&&n.extraBody!==null&&eN(e,n.extraBody),e.headers=await this.getHeadersInternal(n,r),e}async unaryApiCall(e,n,r,i,o,a,u){return this.apiCall(e.toString(),Object.assign(Object.assign({},n),{method:r}),i,o,a,u).then(async c=>(await Cl(c),new en(c))).catch(c=>{throw c instanceof Error?c:new Error(`exception ${c} sending request`,{cause:c})})}async streamApiCall(e,n,r,i,o,a,u){return this.apiCall(e.toString(),Object.assign(Object.assign({},n),{method:r}),i,o,a,u).then(async c=>(await Cl(c),this.processStreamResponse(c))).catch(c=>{throw c instanceof Error?c:new Error(`exception ${c} sending request`,{cause:c})})}processStreamResponse(e){return jn(this,arguments,function*(){var r;let i=(r=e?.body)===null||r===void 0?void 0:r.getReader(),o=new TextDecoder("utf-8");if(!i)throw new Error("Response body is empty");try{let a="",u="data:",c=[`
37
+
38
+ `,"\r\r",`\r
39
+ \r
40
+ `];for(;;){let{done:d,value:f}=yield Te(i.read());if(d){if(a.trim().length>0)throw new Error("Incomplete JSON segment at the end");break}let p=o.decode(f,{stream:!0});try{let _=JSON.parse(p);if("error"in _){let m=JSON.parse(JSON.stringify(_.error)),E=m.status,y=m.code,A=`got status: ${E}. ${JSON.stringify(_)}`;if(y>=400&&y<600)throw new Ro({message:A,status:y})}}catch(_){if(_.name==="ApiError")throw _}a+=p;let h=-1,g=0;for(;;){h=-1,g=0;for(let E of c){let y=a.indexOf(E);y!==-1&&(h===-1||y<h)&&(h=y,g=E.length)}if(h===-1)break;let _=a.substring(0,h);a=a.substring(h+g);let m=_.trim();if(m.startsWith(u)){let E=m.substring(u.length).trim();try{let y=new Response(E,{headers:e?.headers,status:e?.status,statusText:e?.statusText});yield yield Te(new en(y))}catch(y){throw new Error(`exception parsing stream chunk ${E}. ${y}`)}}}}}finally{i.releaseLock()}})}async apiCall(e,n,r,i,o,a){var u,c,d,f,p,h;let g=a??fetch,_=(u=r?.httpStatusCodes)!==null&&u!==void 0?u:jP,m=async()=>{let T=WP(i,o),C;try{C=await g(e,Object.assign(Object.assign({},n),{signal:T.signal}))}catch(w){throw T.dispose(),w}if(!r||C.ok||!_.includes(C.status))return C;try{await Cl(C)}finally{T.dispose()}return C};if(!r)return m();let E=Math.max(1,(c=r.attempts)!==null&&c!==void 0?c:KP),y=Math.round(((d=r.initialDelay)!==null&&d!==void 0?d:YP)*1e3),A=Math.max(y,Math.round(((f=r.maxDelay)!==null&&f!==void 0?f:zP)*1e3));return(0,Xg.default)(m,{retries:E-1,factor:(p=r.expBase)!==null&&p!==void 0?p:QP,minTimeout:y,maxTimeout:A,randomize:((h=r.jitter)!==null&&h!==void 0?h:ZP)>0,onFailedAttempt:T=>{var C;if(o?.aborted)throw(C=T.error)!==null&&C!==void 0?C:T}})}getDefaultHeaders(){let e={},n=HP+" "+this.clientOptions.userAgentExtra;return e[FP]=n,e[tu]=n,e[OP]="application/json",e}async getHeadersInternal(e,n){let r=new Headers;if(e&&e.headers)for(let[i,o]of Object.entries(e.headers))r.append(i,o);return e?.timeout&&e.timeout>0&&r.append(qP,String(Math.ceil(e.timeout/1e3))),await this.clientOptions.auth.addAuthHeaders(r,n),r}getFileName(e){var n;let r="";return typeof e=="string"&&(r=e.replace(/[/\\]+$/,""),r=(n=r.split(/[/\\]/).pop())!==null&&n!==void 0?n:""),r}async uploadFile(e,n){var r;let i={};n!=null&&(i.mimeType=n.mimeType,i.name=n.name,i.displayName=n.displayName),i.name&&!i.name.startsWith("files/")&&(i.name=`files/${i.name}`);let o=this.clientOptions.uploader,a=await o.stat(e);i.sizeBytes=String(a.size);let u=(r=n?.mimeType)!==null&&r!==void 0?r:a.type;if(u===void 0||u==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");i.mimeType=u;let c={file:i},d=this.getFileName(e),f=X("upload/v1beta/files",c._url),p=await this.fetchUploadUrl(f,i.sizeBytes,i.mimeType,d,c,n?.httpOptions);return o.upload(e,p,this)}async uploadFileToFileSearchStore(e,n,r){var i;let o=this.clientOptions.uploader,a=await o.stat(n),u=String(a.size),c=(i=r?.mimeType)!==null&&i!==void 0?i:a.type;if(c===void 0||c==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");let d=`upload/v1beta/${e}:uploadToFileSearchStore`,f=this.getFileName(n),p={};r!=null&&T_(r,p);let h=await this.fetchUploadUrl(d,u,c,f,p,r?.httpOptions);return o.uploadToFileSearchStore(n,h,this)}async downloadFile(e){await this.clientOptions.downloader.download(e,this)}async fetchUploadUrl(e,n,r,i,o,a){var u;let c={};a?c=a:c={apiVersion:"",headers:Object.assign({"Content-Type":"application/json","X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${n}`,"X-Goog-Upload-Header-Content-Type":`${r}`},i?{"X-Goog-Upload-File-Name":i}:{})};let d=await this.request({path:e,body:JSON.stringify(o),httpMethod:"POST",httpOptions:c});if(!d||!d?.headers)throw new Error("Server did not return an HttpResponse or the returned HttpResponse did not have headers.");let f=(u=d?.headers)===null||u===void 0?void 0:u["x-goog-upload-url"];if(f===void 0)throw new Error("Failed to get upload url. Server did not return the x-google-upload-url in the headers");return f}};async function Cl(t){var e;if(t===void 0)throw new Error("response is undefined");if(!t.ok){let n=t.status,r;!((e=t.headers.get("content-type"))===null||e===void 0)&&e.includes("application/json")?r=await t.json():r={error:{message:await t.text(),code:t.status,status:t.statusText}};let i=JSON.stringify(r);throw n>=400&&n<600?new Ro({message:i,status:n}):new Error(i)}}function eN(t,e){if(!e||Object.keys(e).length===0)return;if(t.body instanceof Blob){console.warn("includeExtraBodyToRequestInit: extraBody provided but current request body is a Blob. extraBody will be ignored as merging is not supported for Blob bodies.");return}let n={};if(typeof t.body=="string"&&t.body.length>0)try{let o=JSON.parse(t.body);if(typeof o=="object"&&o!==null&&!Array.isArray(o))n=o;else{console.warn("includeExtraBodyToRequestInit: Original request body is valid JSON but not a non-array object. Skip applying extraBody to the request body.");return}}catch{console.warn("includeExtraBodyToRequestInit: Original request body is not valid JSON. Skip applying extraBody to the request body.");return}function r(o,a){let u=Object.assign({},o);for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)){let d=a[c],f=u[c];d&&typeof d=="object"&&!Array.isArray(d)&&f&&typeof f=="object"&&!Array.isArray(f)?u[c]=r(f,d):(f&&d&&typeof f!=typeof d&&console.warn(`includeExtraBodyToRequestInit:deepMerge: Type mismatch for key "${c}". Original type: ${typeof f}, New type: ${typeof d}. Overwriting.`),u[c]=d)}return u}let i=r(n,e);t.body=JSON.stringify(i)}var tN="mcp_used/unknown",A_=!1;function C_(t){for(let e of t)if(nN(e)||typeof e=="object"&&"inputSchema"in e)return!0;return A_}function S_(t){var e;let n=(e=t[tu])!==null&&e!==void 0?e:"";t[tu]=(n+` ${tN}`).trimStart()}function nN(t){return t!==null&&typeof t=="object"&&t instanceof Gr}function rN(t){return jn(this,arguments,function*(n,r=100){let i,o=0;for(;o<r;){let a=yield Te(n.listTools({cursor:i}));for(let u of a.tools)yield yield Te(u),o++;if(!a.nextCursor)break;i=a.nextCursor}})}var Gr=class t{constructor(e=[],n){this.mcpTools=[],this.functionNameToMcpClient={},this.mcpClients=e,this.config=n}static create(e,n){return new t(e,n)}async initialize(){var e,n,r,i;if(this.mcpTools.length>0)return;let o={},a=[];for(let f of this.mcpClients)try{for(var u=!0,c=(n=void 0,Ur(rN(f))),d;d=await c.next(),e=d.done,!e;u=!0){i=d.value,u=!1;let p=i;a.push(p);let h=p.name;if(o[h])throw new Error(`Duplicate function name ${h} found in MCP tools. Please ensure function names are unique.`);o[h]=f}}catch(p){n={error:p}}finally{try{!u&&!e&&(r=c.return)&&await r.call(c)}finally{if(n)throw n.error}}this.mcpTools=a,this.functionNameToMcpClient=o}async tool(){return await this.initialize(),dS(this.mcpTools,this.config)}async callTool(e){await this.initialize();let n=[];for(let r of e)if(r.name in this.functionNameToMcpClient){let i=this.functionNameToMcpClient[r.name],o;this.config.timeout&&(o={timeout:this.config.timeout});let a=await i.callTool({name:r.name,arguments:r.args},void 0,o);n.push({functionResponse:{name:r.name,response:a.isError?{error:a}:a}})}return n}};function iN(t){return t!==null&&typeof t=="object"&&"listTools"in t&&typeof t.listTools=="function"}function lb(...t){if(A_=!0,t.length===0)throw new Error("No MCP clients provided");let e=t[t.length-1];return iN(e)?Gr.create(t,{}):Gr.create(t.slice(0,t.length-1),e)}async function oN(t,e,n){let r=new Jl,i;n.data instanceof Blob?i=JSON.parse(await n.data.text()):i=JSON.parse(n.data),Object.assign(r,i),e(r)}var ru=class{constructor(e,n,r){this.apiClient=e,this.auth=n,this.webSocketFactory=r}async connect(e){var n,r;if(this.apiClient.isVertexAI())throw new Error("Live music is not supported for Vertex AI.");console.warn("Live music generation is experimental and may change in future versions.");let i=this.apiClient.getWebsocketBaseUrl(),o=this.apiClient.getApiVersion(),a=aN(this.apiClient.getDefaultHeaders()),u=this.apiClient.getApiKey(),c=`${i}/ws/google.ai.generativelanguage.${o}.GenerativeService.BidiGenerateMusic?key=${u}`,d=()=>{},f=new Promise(T=>{d=T}),p=e.callbacks,h=function(){d({})},g=this.apiClient,_={onopen:h,onmessage:T=>{oN(g,p.onmessage,T)},onerror:(n=p?.onerror)!==null&&n!==void 0?n:function(T){},onclose:(r=p?.onclose)!==null&&r!==void 0?r:function(T){}},m=this.webSocketFactory.create(c,sN(a),_);m.connect(),await f;let A={setup:{model:he(this.apiClient,e.model)}};return m.send(JSON.stringify(A)),new iu(m,this.apiClient)}},iu=class{constructor(e,n){this.conn=e,this.apiClient=n}async setWeightedPrompts(e){if(!e.weightedPrompts||Object.keys(e.weightedPrompts).length===0)throw new Error("Weighted prompts must be set and contain at least one entry.");let n=gw(e);this.conn.send(JSON.stringify({clientContent:n}))}async setMusicGenerationConfig(e){e.musicGenerationConfig||(e.musicGenerationConfig={});let n=mw(e);this.conn.send(JSON.stringify(n))}sendPlaybackControl(e){let n={playbackControl:e};this.conn.send(JSON.stringify(n))}play(){this.sendPlaybackControl(zn.PLAY)}pause(){this.sendPlaybackControl(zn.PAUSE)}stop(){this.sendPlaybackControl(zn.STOP)}resetContext(){this.sendPlaybackControl(zn.RESET_CONTEXT)}close(){this.conn.close()}};function sN(t){let e={};return t.forEach((n,r)=>{e[r]=n}),e}function aN(t){let e=new Headers;for(let[n,r]of Object.entries(t))e.append(n,r);return e}var lN="FunctionResponse request must have an `id` field from the response of a ToolCall.FunctionalCalls in Google AI.";async function uN(t,e,n){let r=new Xl,i;n.data instanceof Blob?i=await n.data.text():n.data instanceof ArrayBuffer?i=new TextDecoder().decode(n.data):i=n.data;let o=JSON.parse(i);if(t.isVertexAI()){let a=Ew(o);Object.assign(r,a)}else Object.assign(r,o);e(r)}var ou=class{constructor(e,n,r){this.apiClient=e,this.auth=n,this.webSocketFactory=r,this.music=new ru(this.apiClient,this.auth,this.webSocketFactory)}async connect(e){var n,r,i,o,a,u;if(e.config&&e.config.httpOptions)throw new Error("The Live module does not support httpOptions at request-level in LiveConnectConfig yet. Please use the client-level httpOptions configuration instead.");let c=this.apiClient.getWebsocketBaseUrl(),d=this.apiClient.getApiVersion(),f,p=this.apiClient.getHeaders();e.config&&e.config.tools&&C_(e.config.tools)&&S_(p);let h=fN(p);if(this.apiClient.isVertexAI()){let M=this.apiClient.getProject(),Q=this.apiClient.getLocation(),te=this.apiClient.getApiKey(),ve=!!M&&!!Q||!!te;this.apiClient.getCustomBaseUrl()&&!ve?f=c:(f=`${c}/ws/google.cloud.aiplatform.${d}.LlmBidiService/BidiGenerateContent`,await this.auth.addAuthHeaders(h,f))}else{let M=this.apiClient.getApiKey(),Q="BidiGenerateContent",te="key";M?.startsWith("auth_tokens/")&&(console.warn("Warning: Ephemeral token support is experimental and may change in future versions."),d!=="v1alpha"&&console.warn("Warning: The SDK's ephemeral token support is in v1alpha only. Please use const ai = new GoogleGenAI({apiKey: token.name, httpOptions: { apiVersion: 'v1alpha' }}); before session connection."),Q="BidiGenerateContentConstrained",te="access_token"),f=`${c}/ws/google.ai.generativelanguage.${d}.GenerativeService.${Q}?${te}=${M}`}let g=()=>{},_=new Promise(M=>{g=M}),m=e.callbacks,E=function(){var M;(M=m?.onopen)===null||M===void 0||M.call(m),g({})},y=this.apiClient,A=!1,T=[],C=()=>{},w=new Promise(M=>{C=M}),k={onopen:E,onmessage:M=>{uN(y,Q=>{Q.setupComplete&&!ne.setupComplete&&(ne.setupComplete=Q.setupComplete,C({})),A?m.onmessage(Q):T.push(Q)},M)},onerror:(n=m?.onerror)!==null&&n!==void 0?n:function(M){},onclose:(r=m?.onclose)!==null&&r!==void 0?r:function(M){}},O=this.webSocketFactory.create(f,dN(h),k);O.connect(),await _;let B=he(this.apiClient,e.model);if(this.apiClient.isVertexAI()&&B.startsWith("publishers/")){let M=this.apiClient.getProject(),Q=this.apiClient.getLocation();M&&Q&&(B=`projects/${M}/locations/${Q}/`+B)}let N={};this.apiClient.isVertexAI()&&((i=e.config)===null||i===void 0?void 0:i.responseModalities)===void 0&&(e.config===void 0?e.config={responseModalities:[ho.AUDIO]}:e.config.responseModalities=[ho.AUDIO]),!((o=e.config)===null||o===void 0)&&o.generationConfig&&console.warn("Setting `LiveConnectConfig.generation_config` is deprecated, please set the fields on `LiveConnectConfig` directly. It will be removed in the next major version (not before 7/31/2026).");let q=(u=(a=e.config)===null||a===void 0?void 0:a.tools)!==null&&u!==void 0?u:[],$=[];for(let M of q)if(this.isCallableTool(M)){let Q=M;$.push(await Q.tool())}else $.push(M);$.length>0&&(e.config.tools=$);let z={model:B,config:e.config,callbacks:e.callbacks};this.apiClient.isVertexAI()?N=hw(this.apiClient,z):N=pw(this.apiClient,z),delete N.config;let ne=new su(O,this.apiClient);O.send(JSON.stringify(N)),await w,A=!0;for(let M of T)m.onmessage(M);return ne}isCallableTool(e){return"callTool"in e&&typeof e.callTool=="function"}},cN={turnComplete:!0},su=class{constructor(e,n){this.conn=e,this.apiClient=n}tLiveClientContent(e,n){if(n.turns!==null&&n.turns!==void 0){let r=[];try{r=Oe(n.turns),e.isVertexAI()||(r=r.map(i=>qr(i)))}catch{throw new Error(`Failed to parse client content "turns", type: '${typeof n.turns}'`)}return{clientContent:{turns:r,turnComplete:n.turnComplete}}}return{clientContent:{turnComplete:n.turnComplete}}}tLiveClienttToolResponse(e,n){let r=[];if(n.functionResponses==null)throw new Error("functionResponses is required.");if(Array.isArray(n.functionResponses)?r=n.functionResponses:r=[n.functionResponses],r.length===0)throw new Error("functionResponses is required.");for(let o of r){if(typeof o!="object"||o===null||!("name"in o)||!("response"in o))throw new Error(`Could not parse function response, type '${typeof o}'.`);if(!e.isVertexAI()&&!("id"in o))throw new Error(lN)}return{toolResponse:{functionResponses:r}}}sendClientContent(e){e=Object.assign(Object.assign({},cN),e);let n=this.tLiveClientContent(this.apiClient,e);this.conn.send(JSON.stringify(n))}sendRealtimeInput(e){let n={};this.apiClient.isVertexAI()?n={realtimeInput:yw(e)}:n={realtimeInput:_w(e)},this.conn.send(JSON.stringify(n))}sendToolResponse(e){if(e.functionResponses==null)throw new Error("Tool response parameters are required.");let n=this.tLiveClienttToolResponse(this.apiClient,e);this.conn.send(JSON.stringify(n))}close(){this.conn.close()}};function dN(t){let e={};return t.forEach((n,r)=>{e[r]=n}),e}function fN(t){let e=new Headers;for(let[n,r]of Object.entries(t))e.append(n,r);return e}var Cg=10;function Sg(t){var e,n,r;if(!((e=t?.automaticFunctionCalling)===null||e===void 0)&&e.disable)return!0;let i=!1;for(let a of(n=t?.tools)!==null&&n!==void 0?n:[])if(er(a)){i=!0;break}if(!i)return!0;let o=(r=t?.automaticFunctionCalling)===null||r===void 0?void 0:r.maximumRemoteCalls;return o&&(o<0||!Number.isInteger(o))||o==0?(console.warn("Invalid maximumRemoteCalls value provided for automatic function calling. Disabled automatic function calling. Please provide a valid integer value greater than 0. maximumRemoteCalls provided:",o),!0):!1}function er(t){return"callTool"in t&&typeof t.callTool=="function"}function pN(t){var e,n,r;return(r=(n=(e=t.config)===null||e===void 0?void 0:e.tools)===null||n===void 0?void 0:n.some(i=>er(i)))!==null&&r!==void 0?r:!1}function Ig(t){var e;let n=[];return!((e=t?.config)===null||e===void 0)&&e.tools&&t.config.tools.forEach((r,i)=>{if(er(r))return;let o=r;o.functionDeclarations&&o.functionDeclarations.length>0&&n.push(i)}),n}function wg(t){var e;return!(!((e=t?.automaticFunctionCalling)===null||e===void 0)&&e.ignoreCallHistory)}var tr=class t extends mt{constructor(e){super(),this.apiClient=e,this.embedContent=async n=>{if(!this.apiClient.isVertexAI())return n.model.includes("gemini-embedding-2")&&(n.contents=Oe(n.contents)),await this.embedContentInternal(n);if(n.model.includes("gemini")&&n.model!=="gemini-embedding-001"||n.model.includes("maas")){let i=Oe(n.contents);if(i.length>1)throw new Error("The embedContent API for this model only supports one content at a time.");let o=Object.assign(Object.assign({},n),{content:i[0],embeddingApiType:mo.EMBED_CONTENT});return await this.embedContentInternal(o)}else{let i=Object.assign(Object.assign({},n),{embeddingApiType:mo.PREDICT});return await this.embedContentInternal(i)}},this.generateContent=async n=>{var r,i,o,a,u;let c=await this.processParamsMaybeAddMcpUsage(n);if(this.maybeMoveToResponseJsonSchema(n),!pN(n)||Sg(n.config))return await this.generateContentInternal(c);let d=Ig(n);if(d.length>0){let m=d.map(E=>`tools[${E}]`).join(", ");throw new Error(`Automatic function calling with CallableTools (or MCP objects) and basic FunctionDeclarations is not yet supported. Incompatible tools found at ${m}.`)}let f,p,h=Oe(c.contents),g=(o=(i=(r=c.config)===null||r===void 0?void 0:r.automaticFunctionCalling)===null||i===void 0?void 0:i.maximumRemoteCalls)!==null&&o!==void 0?o:Cg,_=0;for(;_<g&&(f=await this.generateContentInternal(c),!(!f.functionCalls||f.functionCalls.length===0));){let m=f.candidates[0].content,E=[];for(let y of(u=(a=n.config)===null||a===void 0?void 0:a.tools)!==null&&u!==void 0?u:[])if(er(y)){let T=await y.callTool(f.functionCalls);E.push(...T)}_++,p={role:"user",parts:E},c.contents=Oe(c.contents),c.contents.push(m),c.contents.push(p),wg(c.config)&&(h.push(m),h.push(p))}return wg(c.config)&&(f.automaticFunctionCallingHistory=h),f},this.generateContentStream=async n=>{var r,i,o,a,u;if(this.maybeMoveToResponseJsonSchema(n),Sg(n.config)){let p=await this.processParamsMaybeAddMcpUsage(n);return await this.generateContentStreamInternal(p)}let c=Ig(n);if(c.length>0){let p=c.map(h=>`tools[${h}]`).join(", ");throw new Error(`Incompatible tools found at ${p}. Automatic function calling with CallableTools (or MCP objects) and basic FunctionDeclarations" is not yet supported.`)}let d=(o=(i=(r=n?.config)===null||r===void 0?void 0:r.toolConfig)===null||i===void 0?void 0:i.functionCallingConfig)===null||o===void 0?void 0:o.streamFunctionCallArguments,f=(u=(a=n?.config)===null||a===void 0?void 0:a.automaticFunctionCalling)===null||u===void 0?void 0:u.disable;if(d&&!f)throw new Error("Running in streaming mode with 'streamFunctionCallArguments' enabled, this feature is not compatible with automatic function calling (AFC). Please set 'config.automaticFunctionCalling.disable' to true to disable AFC or leave 'config.toolConfig.functionCallingConfig.streamFunctionCallArguments' to be undefined or set to false to disable streaming function call arguments feature.");return await this.processAfcStream(n)},this.generateImages=async n=>(t.loggedGenerateImagesWarning||(t.loggedGenerateImagesWarning=!0,console.warn("The generateImages method is deprecated and will be removed in the next major release (not before Jan. 1 2027). Please use the generateContent method with image models instead. See https://ai.google.dev/gemini-api/docs/deprecations#imagen-models and https://docs.cloud.google.com/gemini-enterprise-agent-platform/models/capabilities/image-generation#generate-images")),await this.generateImagesInternal(n).then(r=>{var i;let o,a=[];if(r?.generatedImages)for(let c of r.generatedImages)c&&c?.safetyAttributes&&((i=c?.safetyAttributes)===null||i===void 0?void 0:i.contentType)==="Positive Prompt"?o=c?.safetyAttributes:a.push(c);let u;return o?u={generatedImages:a,positivePromptSafetyAttributes:o,sdkHttpResponse:r.sdkHttpResponse}:u={generatedImages:a,sdkHttpResponse:r.sdkHttpResponse},u})),this.list=async n=>{var r;let a={config:Object.assign(Object.assign({},{queryBase:!0}),n?.config)};if(this.apiClient.isVertexAI()&&!a.config.queryBase){if(!((r=a.config)===null||r===void 0)&&r.filter)throw new Error("Filtering tuned models list is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");a.config.filter="labels.tune-type:*"}return new Bt(Ft.PAGED_ITEM_MODELS,u=>this.listInternal(u),await this.listInternal(a),a)},this.editImage=async n=>{t.loggedEditImageWarning||(t.loggedEditImageWarning=!0,console.warn("The editImage method is deprecated and will be removed in the next major release (not before Jan. 1 2027). Please use the generateContent method with image models instead. See https://ai.google.dev/gemini-api/docs/deprecations#imagen-models and https://docs.cloud.google.com/gemini-enterprise-agent-platform/models/capabilities/gemini-edit-images#edit-an-image"));let r={model:n.model,prompt:n.prompt,referenceImages:[],config:n.config};return n.referenceImages&&n.referenceImages&&(r.referenceImages=n.referenceImages.map(i=>i.toReferenceImageAPI())),await this.editImageInternal(r)},this.upscaleImage=async n=>{let r={numberOfImages:1,mode:"upscale"};n.config&&(r=Object.assign(Object.assign({},r),n.config));let i={model:n.model,image:n.image,upscaleFactor:n.upscaleFactor,config:r};return await this.upscaleImageInternal(i)},this.generateVideos=async n=>{var r,i,o,a,u,c;if((n.prompt||n.image||n.video)&&n.source)throw new Error("Source and prompt/image/video are mutually exclusive. Please only use source.");return(n.prompt||n.image||n.video)&&(t.loggedGenerateVideosWarning||(t.loggedGenerateVideosWarning=!0,console.warn("The generateVideos method with prompt/image/video arguments is deprecated and will be removed in a future major release (not before 2026-07-31). Please use the source argument instead."))),this.apiClient.isVertexAI()||(!((r=n.video)===null||r===void 0)&&r.uri&&(!((i=n.video)===null||i===void 0)&&i.videoBytes)?n.video={uri:n.video.uri,mimeType:n.video.mimeType}:!((a=(o=n.source)===null||o===void 0?void 0:o.video)===null||a===void 0)&&a.uri&&(!((c=(u=n.source)===null||u===void 0?void 0:u.video)===null||c===void 0)&&c.videoBytes)&&(n.source.video={uri:n.source.video.uri,mimeType:n.source.video.mimeType})),await this.generateVideosInternal(n)}}maybeMoveToResponseJsonSchema(e){e.config&&e.config.responseSchema&&(e.config.responseJsonSchema||Object.keys(e.config.responseSchema).includes("$schema")&&(e.config.responseJsonSchema=e.config.responseSchema,delete e.config.responseSchema))}async processParamsMaybeAddMcpUsage(e){var n,r,i;let o=(n=e.config)===null||n===void 0?void 0:n.tools;if(!o)return e;let a=await Promise.all(o.map(async c=>er(c)?await c.tool():c)),u={model:e.model,contents:e.contents,config:Object.assign(Object.assign({},e.config),{tools:a})};if(u.config.tools=a,e.config&&e.config.tools&&C_(e.config.tools)){let c=(i=(r=e.config.httpOptions)===null||r===void 0?void 0:r.headers)!==null&&i!==void 0?i:{},d=Object.assign({},c);Object.keys(d).length===0&&(d=this.apiClient.getDefaultHeaders()),S_(d),u.config.httpOptions=Object.assign(Object.assign({},e.config.httpOptions),{headers:d})}return u}async initAfcToolsMap(e){var n,r,i;let o=new Map;for(let a of(r=(n=e.config)===null||n===void 0?void 0:n.tools)!==null&&r!==void 0?r:[])if(er(a)){let u=a,c=await u.tool();for(let d of(i=c.functionDeclarations)!==null&&i!==void 0?i:[]){if(!d.name)throw new Error("Function declaration name is required.");if(o.has(d.name))throw new Error(`Duplicate tool declaration name: ${d.name}`);o.set(d.name,u)}}return o}async processAfcStream(e){var n,r,i;let o=(i=(r=(n=e.config)===null||n===void 0?void 0:n.automaticFunctionCalling)===null||r===void 0?void 0:r.maximumRemoteCalls)!==null&&i!==void 0?i:Cg,a=!1,u=0,c=await this.initAfcToolsMap(e);return(function(d,f,p){return jn(this,arguments,function*(){for(var h,g,_,m,E,y;u<o;){a&&(u++,a=!1);let w=yield Te(d.processParamsMaybeAddMcpUsage(p)),k=yield Te(d.generateContentStreamInternal(w)),O=[],B=[];try{for(var A=!0,T=(g=void 0,Ur(k)),C;C=yield Te(T.next()),h=C.done,!h;A=!0){m=C.value,A=!1;let N=m;if(yield yield Te(N),N.candidates&&(!((E=N.candidates[0])===null||E===void 0)&&E.content)){B.push(N.candidates[0].content);for(let q of(y=N.candidates[0].content.parts)!==null&&y!==void 0?y:[])if(u<o&&q.functionCall){if(!q.functionCall.name)throw new Error("Function call name was not returned by the model.");if(f.has(q.functionCall.name)){let $=yield Te(f.get(q.functionCall.name).callTool([q.functionCall]));O.push(...$)}else throw new Error(`Automatic function calling was requested, but not all the tools the model used implement the CallableTool interface. Available tools: ${f.keys()}, missing tool: ${q.functionCall.name}`)}}}}catch(N){g={error:N}}finally{try{!A&&!h&&(_=T.return)&&(yield Te(_.call(T)))}finally{if(g)throw g.error}}if(O.length>0){a=!0;let N=new yn;N.candidates=[{content:{role:"user",parts:O}}],yield yield Te(N);let q=[];q.push(...B),q.push({role:"user",parts:O});let $=Oe(p.contents).concat(q);p.contents=$}else break}})})(this,c,e)}async generateContentInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=vg(this.apiClient,e);return u=X("{model}:generateContent",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Ag(f),h=new yn;return Object.assign(h,p),h})}else{let d=Eg(this.apiClient,e);return u=X("{model}:generateContent",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Tg(f),h=new yn;return Object.assign(h,p),h})}}async generateContentStreamInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=vg(this.apiClient,e);return u=X("{model}:streamGenerateContent?alt=sse",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.requestStream({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}),a.then(function(p){return jn(this,arguments,function*(){var h,g,_,m;try{for(var E=!0,y=Ur(p),A;A=yield Te(y.next()),h=A.done,!h;E=!0){m=A.value,E=!1;let T=m,C=Ag(yield Te(T.json()),e);C.sdkHttpResponse={headers:T.headers};let w=new yn;Object.assign(w,C),yield yield Te(w)}}catch(T){g={error:T}}finally{try{!E&&!h&&(_=y.return)&&(yield Te(_.call(y)))}finally{if(g)throw g.error}}})})}else{let d=Eg(this.apiClient,e);return u=X("{model}:streamGenerateContent?alt=sse",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.requestStream({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}),a.then(function(p){return jn(this,arguments,function*(){var h,g,_,m;try{for(var E=!0,y=Ur(p),A;A=yield Te(y.next()),h=A.done,!h;E=!0){m=A.value,E=!1;let T=m,C=Tg(yield Te(T.json()),e);C.sdkHttpResponse={headers:T.headers};let w=new yn;Object.assign(w,C),yield yield Te(w)}}catch(T){g={error:T}}finally{try{!E&&!h&&(_=y.return)&&(yield Te(_.call(y)))}finally{if(g)throw g.error}}})})}}async embedContentInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=iR(this.apiClient,e,e),f=pS(e.model)?"{model}:embedContent":"{model}:predict";return u=X(f,d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(p=>p.json().then(h=>{let g=h;return g.sdkHttpResponse={headers:p.headers},g})),a.then(p=>{let h=sR(p,e),g=new go;return Object.assign(g,h),g})}else{let d=rR(this.apiClient,e);return u=X("{model}:batchEmbedContents",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=oR(f),h=new go;return Object.assign(h,p),h})}}async generateImagesInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=hR(this.apiClient,e);return o=X("{model}:predict",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=mR(c),f=new Nl;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async editImageInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=jw(this.apiClient,e);return o=X("{model}:predict",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=eR(c),f=new xl;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async upscaleImageInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=_P(this.apiClient,e);return o=X("{model}:predict",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=yP(c),f=new kl;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async recontextImage(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=YR(this.apiClient,e);return o=X("{model}:predict",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=zR(c),f=new Dl;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async segmentImage(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=rP(this.apiClient,e);return o=X("{model}:predict",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=iP(c),f=new Ml;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async get(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=kR(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>eu(f))}else{let d=xR(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>jl(f))}}async listInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=qR(this.apiClient,e);return u=X("{models_url}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=BR(f),h=new _o;return Object.assign(h,p),h})}else{let d=OR(this.apiClient,e);return u=X("{models_url}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=FR(f),h=new _o;return Object.assign(h,p),h})}}async update(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=mP(this.apiClient,e);return u=X("{model}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"PATCH",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>eu(f))}else{let d=hP(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>jl(f))}}async delete(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=Yw(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"DELETE",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Qw(f),h=new yo;return Object.assign(h,p),h})}else{let d=Kw(this.apiClient,e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=zw(f),h=new yo;return Object.assign(h,p),h})}}async countTokens(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=Xw(this.apiClient,e);return u=X("{model}:countTokens",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Ww(f),h=new Eo;return Object.assign(h,p),h})}else{let d=$w(this.apiClient,e);return u=X("{model}:countTokens",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Jw(f),h=new Eo;return Object.assign(h,p),h})}}async computeTokens(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=Gw(this.apiClient,e);return o=X("{model}:computeTokens",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=Lw(c),f=new bl;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async generateVideosInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=TR(this.apiClient,e);return u=X("{model}:predictLongRunning",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a.then(f=>{let p=ER(f),h=new vo;return Object.assign(h,p),h})}else{let d=vR(this.apiClient,e);return u=X("{model}:predictLongRunning",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a.then(f=>{let p=yR(f),h=new vo;return Object.assign(h,p),h})}}};tr.loggedGenerateImagesWarning=!1;tr.loggedEditImageWarning=!1;tr.loggedGenerateVideosWarning=!1;var au=class extends mt{constructor(e){super(),this.apiClient=e}async getVideosOperation(e){let n=e.operation,r=e.config;if(n.name===void 0||n.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){let i=n.name.split("/operations/")[0],o;r&&"httpOptions"in r&&(o=r.httpOptions);let a=await this.fetchPredictVideosOperationInternal({operationName:n.name,resourceName:i,config:{httpOptions:o}});return n._fromAPIResponse({apiResponse:a,_isVertexAI:!0})}else{let i=await this.getVideosOperationInternal({operationName:n.name,config:r});return n._fromAPIResponse({apiResponse:i,_isVertexAI:!1})}}async get(e){let n=e.operation,r=e.config;if(n.name===void 0||n.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){let i=n.name.split("/operations/")[0],o;r&&"httpOptions"in r&&(o=r.httpOptions);let a=await this.fetchPredictVideosOperationInternal({operationName:n.name,resourceName:i,config:{httpOptions:o}});return n._fromAPIResponse({apiResponse:a,_isVertexAI:!0})}else{let i=await this.getVideosOperationInternal({operationName:n.name,config:r});return n._fromAPIResponse({apiResponse:i,_isVertexAI:!1})}}async getVideosOperationInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=eS(e);return u=X("{operationName}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json()),a}else{let d=jC(e);return u=X("{operationName}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json()),a}}async fetchPredictVideosOperationInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=JC(e);return o=X("{resourceName}:fetchPredictOperation",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}};function hN(t){let e={},n=s(t,["apiKey"]);if(n!=null&&l(e,["apiKey"],n),s(t,["apiKeyConfig"])!==void 0)throw new Error("apiKeyConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["authType"])!==void 0)throw new Error("authType parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["googleServiceAccountConfig"])!==void 0)throw new Error("googleServiceAccountConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["httpBasicAuthConfig"])!==void 0)throw new Error("httpBasicAuthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oauthConfig"])!==void 0)throw new Error("oauthConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["oidcConfig"])!==void 0)throw new Error("oidcConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function mN(t){let e={},n=s(t,["data"]);if(n!=null&&l(e,["data"],n),s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function gN(t){let e={},n=s(t,["parts"]);if(n!=null){let i=n;Array.isArray(i)&&(i=i.map(o=>IN(o))),l(e,["parts"],i)}let r=s(t,["role"]);return r!=null&&l(e,["role"],r),e}function _N(t,e,n){let r={},i=s(e,["expireTime"]);n!==void 0&&i!=null&&l(n,["expireTime"],i);let o=s(e,["newSessionExpireTime"]);n!==void 0&&o!=null&&l(n,["newSessionExpireTime"],o);let a=s(e,["uses"]);n!==void 0&&a!=null&&l(n,["uses"],a);let u=s(e,["liveConnectConstraints"]);n!==void 0&&u!=null&&l(n,["bidiGenerateContentSetup"],SN(t,u));let c=s(e,["lockAdditionalFields"]);return n!==void 0&&c!=null&&l(n,["fieldMask"],c),r}function yN(t,e){let n={},r=s(e,["config"]);return r!=null&&l(n,["config"],_N(t,r,n)),n}function EN(t){let e={};if(s(t,["displayName"])!==void 0)throw new Error("displayName parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["fileUri"]);n!=null&&l(e,["fileUri"],n);let r=s(t,["mimeType"]);return r!=null&&l(e,["mimeType"],r),e}function vN(t){let e={},n=s(t,["args"]);n!=null&&l(e,["args"],n);let r=s(t,["id"]);r!=null&&l(e,["id"],r);let i=s(t,["name"]);if(i!=null&&l(e,["name"],i),s(t,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["willContinue"])!==void 0)throw new Error("willContinue parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function TN(t){let e={},n=s(t,["authConfig"]);n!=null&&l(e,["authConfig"],hN(n));let r=s(t,["enableWidget"]);if(r!=null&&l(e,["enableWidget"],r),s(t,["groundingTypes"])!==void 0)throw new Error("groundingTypes parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function AN(t){let e={};if(s(t,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["searchTypes"]);n!=null&&l(e,["searchTypes"],n);let r=s(t,["timeRangeFilter"]);return r!=null&&l(e,["timeRangeFilter"],r),e}function CN(t,e){let n={},r=s(t,["generationConfig"]);e!==void 0&&r!=null&&l(e,["setup","generationConfig"],r);let i=s(t,["responseModalities"]);e!==void 0&&i!=null&&l(e,["setup","generationConfig","responseModalities"],i);let o=s(t,["temperature"]);e!==void 0&&o!=null&&l(e,["setup","generationConfig","temperature"],o);let a=s(t,["topP"]);e!==void 0&&a!=null&&l(e,["setup","generationConfig","topP"],a);let u=s(t,["topK"]);e!==void 0&&u!=null&&l(e,["setup","generationConfig","topK"],u);let c=s(t,["maxOutputTokens"]);e!==void 0&&c!=null&&l(e,["setup","generationConfig","maxOutputTokens"],c);let d=s(t,["mediaResolution"]);e!==void 0&&d!=null&&l(e,["setup","generationConfig","mediaResolution"],d);let f=s(t,["seed"]);e!==void 0&&f!=null&&l(e,["setup","generationConfig","seed"],f);let p=s(t,["speechConfig"]);e!==void 0&&p!=null&&l(e,["setup","generationConfig","speechConfig"],uc(p));let h=s(t,["thinkingConfig"]);e!==void 0&&h!=null&&l(e,["setup","generationConfig","thinkingConfig"],h);let g=s(t,["enableAffectiveDialog"]);e!==void 0&&g!=null&&l(e,["setup","generationConfig","enableAffectiveDialog"],g);let _=s(t,["systemInstruction"]);e!==void 0&&_!=null&&l(e,["setup","systemInstruction"],gN(De(_)));let m=s(t,["tools"]);if(e!==void 0&&m!=null){let N=ir(m);Array.isArray(N)&&(N=N.map(q=>PN(rr(q)))),l(e,["setup","tools"],N)}let E=s(t,["sessionResumption"]);e!==void 0&&E!=null&&l(e,["setup","sessionResumption"],RN(E));let y=s(t,["inputAudioTranscription"]);e!==void 0&&y!=null&&l(e,["setup","inputAudioTranscription"],y);let A=s(t,["outputAudioTranscription"]);e!==void 0&&A!=null&&l(e,["setup","outputAudioTranscription"],A);let T=s(t,["realtimeInputConfig"]);e!==void 0&&T!=null&&l(e,["setup","realtimeInputConfig"],T);let C=s(t,["contextWindowCompression"]);e!==void 0&&C!=null&&l(e,["setup","contextWindowCompression"],C);let w=s(t,["proactivity"]);if(e!==void 0&&w!=null&&l(e,["setup","proactivity"],w),s(t,["explicitVadSignal"])!==void 0)throw new Error("explicitVadSignal parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let k=s(t,["avatarConfig"]);e!==void 0&&k!=null&&l(e,["setup","avatarConfig"],k);let O=s(t,["safetySettings"]);if(e!==void 0&&O!=null){let N=O;Array.isArray(N)&&(N=N.map(q=>wN(q))),l(e,["setup","safetySettings"],N)}let B=s(t,["translationConfig"]);return e!==void 0&&B!=null&&l(e,["setup","generationConfig","translationConfig"],B),n}function SN(t,e){let n={},r=s(e,["model"]);r!=null&&l(n,["setup","model"],he(t,r));let i=s(e,["config"]);return i!=null&&l(n,["config"],CN(i,n)),n}function IN(t){let e={},n=s(t,["mediaResolution"]);n!=null&&l(e,["mediaResolution"],n);let r=s(t,["toolCall"]);r!=null&&l(e,["toolCall"],r);let i=s(t,["toolResponse"]);i!=null&&l(e,["toolResponse"],i);let o=s(t,["audioTranscription"]);o!=null&&l(e,["audioTranscription"],o);let a=s(t,["codeExecutionResult"]);a!=null&&l(e,["codeExecutionResult"],a);let u=s(t,["executableCode"]);u!=null&&l(e,["executableCode"],u);let c=s(t,["fileData"]);c!=null&&l(e,["fileData"],EN(c));let d=s(t,["functionCall"]);d!=null&&l(e,["functionCall"],vN(d));let f=s(t,["functionResponse"]);f!=null&&l(e,["functionResponse"],f);let p=s(t,["inlineData"]);p!=null&&l(e,["inlineData"],mN(p));let h=s(t,["text"]);h!=null&&l(e,["text"],h);let g=s(t,["thought"]);g!=null&&l(e,["thought"],g);let _=s(t,["thoughtSignature"]);_!=null&&l(e,["thoughtSignature"],_);let m=s(t,["videoMetadata"]);m!=null&&l(e,["videoMetadata"],m);let E=s(t,["partMetadata"]);E!=null&&l(e,["partMetadata"],E);let y=s(t,["mediaProcessing"]);return y!=null&&l(e,["mediaProcessing"],y),e}function wN(t){let e={},n=s(t,["category"]);if(n!=null&&l(e,["category"],n),s(t,["method"])!==void 0)throw new Error("method parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["threshold"]);return r!=null&&l(e,["threshold"],r),e}function RN(t){let e={},n=s(t,["handle"]);if(n!=null&&l(e,["handle"],n),s(t,["transparent"])!==void 0)throw new Error("transparent parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return e}function PN(t){let e={};if(s(t,["retrieval"])!==void 0)throw new Error("retrieval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let n=s(t,["googleMaps"]);n!=null&&l(e,["googleMaps"],TN(n));let r=s(t,["mcpServers"]);if(r!=null){let p=r;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["mcpServers"],p)}let i=s(t,["codeExecution"]);i!=null&&l(e,["codeExecution"],i);let o=s(t,["computerUse"]);if(o!=null&&l(e,["computerUse"],o),s(t,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["exaAiSearch"])!==void 0)throw new Error("exaAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let a=s(t,["functionDeclarations"]);if(a!=null){let p=a;Array.isArray(p)&&(p=p.map(h=>h)),l(e,["functionDeclarations"],p)}let u=s(t,["googleSearch"]);u!=null&&l(e,["googleSearch"],AN(u));let c=s(t,["googleSearchRetrieval"]);if(c!=null&&l(e,["googleSearchRetrieval"],c),s(t,["parallelAiSearch"])!==void 0)throw new Error("parallelAiSearch parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let d=s(t,["urlContext"]);d!=null&&l(e,["urlContext"],d);let f=s(t,["fileSearch"]);return f!=null&&l(e,["fileSearch"],f),e}function NN(t){let e=[];for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)){let r=t[n];if(typeof r=="object"&&r!=null&&Object.keys(r).length>0){let i=Object.keys(r).map(o=>`${n}.${o}`);e.push(...i)}else e.push(n)}return e.join(",")}function xN(t,e){let n=null,r=t.bidiGenerateContentSetup;if(typeof r=="object"&&r!==null&&"setup"in r){let o=r.setup;typeof o=="object"&&o!==null?(t.bidiGenerateContentSetup=o,n=o):delete t.bidiGenerateContentSetup}else r!==void 0&&delete t.bidiGenerateContentSetup;let i=t.fieldMask;if(n){let o=NN(n);if(Array.isArray(e?.lockAdditionalFields)&&e?.lockAdditionalFields.length===0)o?t.fieldMask=o:delete t.fieldMask;else if(e?.lockAdditionalFields&&e.lockAdditionalFields.length>0&&i!==null&&Array.isArray(i)&&i.length>0){let a=["temperature","topK","topP","maxOutputTokens","responseModalities","seed","speechConfig"],u=[];i.length>0&&(u=i.map(d=>a.includes(d)?`generationConfig.${d}`:d));let c=[];o&&c.push(o),u.length>0&&c.push(...u),c.length>0?t.fieldMask=c.join(","):delete t.fieldMask}else delete t.fieldMask}else i!==null&&Array.isArray(i)&&i.length>0?t.fieldMask=i.join(","):delete t.fieldMask;return t}var lu=class extends mt{constructor(e){super(),this.apiClient=e}async create(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("The client.tokens.create method is only supported by the Gemini Developer API.");{let u=yN(this.apiClient,e);o=X("auth_tokens",u._url),a=u._query,delete u.config,delete u._url,delete u._query;let c=xN(u,e.config);return i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(d=>d.json()),i.then(d=>d)}}};function kN(t,e){let n={},r=s(t,["force"]);return e!==void 0&&r!=null&&l(e,["_query","force"],r),n}function DN(t){let e={},n=s(t,["name"]);n!=null&&l(e,["_url","name"],n);let r=s(t,["config"]);return r!=null&&kN(r,e),e}function MN(t){let e={},n=s(t,["name"]);return n!=null&&l(e,["_url","name"],n),e}function bN(t,e){let n={},r=s(t,["pageSize"]);e!==void 0&&r!=null&&l(e,["_query","pageSize"],r);let i=s(t,["pageToken"]);return e!==void 0&&i!=null&&l(e,["_query","pageToken"],i),n}function UN(t){let e={},n=s(t,["parent"]);n!=null&&l(e,["_url","parent"],n);let r=s(t,["config"]);return r!=null&&bN(r,e),e}function GN(t){let e={},n=s(t,["sdkHttpResponse"]);n!=null&&l(e,["sdkHttpResponse"],n);let r=s(t,["nextPageToken"]);r!=null&&l(e,["nextPageToken"],r);let i=s(t,["documents"]);if(i!=null){let o=i;Array.isArray(o)&&(o=o.map(a=>a)),l(e,["documents"],o)}return e}var uu=class extends mt{constructor(e){super(),this.apiClient=e,this.list=async n=>new Bt(Ft.PAGED_ITEM_DOCUMENTS,r=>this.listInternal({parent:n.parent,config:r.config}),await this.listInternal(n),n)}async get(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=MN(e);return o=X("{name}",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>c)}}async delete(e){var n,r;let i="",o={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let a=DN(e);i=X("{name}",a._url),o=a._query,delete a._url,delete a._query,await this.apiClient.request({path:i,queryParams:o,body:JSON.stringify(a),httpMethod:"DELETE",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal})}}async listInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=UN(e);return o=X("{parent}/documents",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=GN(c),f=new Ll;return Object.assign(f,d),f})}}};var cu=class extends mt{constructor(e,n=new uu(e)){super(),this.apiClient=e,this.documents=n,this.list=async(r={})=>new Bt(Ft.PAGED_ITEM_FILE_SEARCH_STORES,i=>this.listInternal(i),await this.listInternal(r),r)}async uploadToFileSearchStore(e){if(this.apiClient.isVertexAI())throw new Error("Gemini Enterprise Agent Platform (previously known as Vertex AI) does not support uploading files to a file search store.");return this.apiClient.uploadFileToFileSearchStore(e.fileSearchStoreName,e.file,e.config)}async downloadMedia(e,n){if(this.apiClient.isVertexAI())throw new Error("This method is only supported in the Gemini Developer client.");let r=new URL(e,"http://dummy.com"),i=r.pathname;if(i.startsWith("/")&&(i=i.slice(1)),!i.includes("/media/"))throw new Error(`Invalid uri format: ${e}. Expected to contain /media/`);let o={};r.searchParams.forEach((c,d)=>{o[d]=c}),o.alt="media";let a=Object.assign({},n?.httpOptions),u=await this.apiClient.request({path:i,httpMethod:"GET",queryParams:o,httpOptions:a});if(u instanceof en){let c=await u.responseInternal.arrayBuffer();return new Uint8Array(c)}else throw new Error("Unexpected response type from downloadMedia")}async create(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=IP(this.apiClient,e);return o=X("fileSearchStores",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>c)}}async get(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=PP(e);return o=X("{name}",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>c)}}async delete(e){var n,r;let i="",o={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let a=RP(e);i=X("{name}",a._url),o=a._query,delete a._url,delete a._query,await this.apiClient.request({path:i,queryParams:o,body:JSON.stringify(a),httpMethod:"DELETE",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal})}}async listInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=bP(e);return o=X("fileSearchStores",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=UP(c),f=new Ol;return Object.assign(f,d),f})}}async uploadToFileSearchStoreInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=GP(e);return o=X("upload/v1beta/{file_search_store_name}:uploadToFileSearchStore",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=LP(c),f=new ql;return Object.assign(f,d),f})}}async importFile(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=kP(e);return o=X("{file_search_store_name}:importFile",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json()),i.then(c=>{let d=xP(c),f=new Fl;return Object.assign(f,d),f})}}};function LN(){return"Deno"in globalThis}var ao;function Lr(){var t,e,n,r,i,o;if(ao)return ao;let a=globalThis,u={};return LN()?u=(r=(n=(e=(t=a.Deno)===null||t===void 0?void 0:t.env)===null||e===void 0?void 0:e.toObject)===null||n===void 0?void 0:n.call(e))!==null&&r!==void 0?r:{}:u=(o=(i=a.process)===null||i===void 0?void 0:i.env)!==null&&o!==void 0?o:{},ao=u,ao}function ON(t){var e,n;let r=Object.assign({},t),i=Lr();return typeof i.GOOGLE_GENAI_API_VERSION<"u"&&((e=r.api_version)!==null&&e!==void 0||(r.api_version=i.GOOGLE_GENAI_API_VERSION)),typeof i.GOOGLE_GENAI_USER_PROJECT<"u"&&((n=r.user_project)!==null&&n!==void 0||(r.user_project=i.GOOGLE_GENAI_USER_PROJECT)),r}var du=class{constructor(e){this.options=e}getDefaultHeaders(){return this.options.defaultHeaders}async resolveGoogleGenAISecurity(e){return HN(await this.options.getAuthHeaders(e))}},fu=class{beforeCreateRequest(e,n){return Object.assign(Object.assign({},n),{url:qN(n.url)})}async beforeRequest(e,n){if(Pg(n.headers,BN(e.security_source)),VN(e,n.headers),XN(n.headers))return n;let r=await FN(e.security_source,n.url);return Pg(n.headers,r?.default_headers),$N(n.headers,r),n}};function qN(t){let[,e,...n]=t.pathname.split("/");if(!e)return t;let r=decodeURIComponent(e);if(!r.includes("/"))return t;let i=new URL(t);return i.pathname=`/${r}/${n.join("/")}`,i}async function FN(t,e){if(w_(t))return t.resolveGoogleGenAISecurity(e);let n=typeof t=="function"?await t():t;return I_(n)?Rg(n):Rg(void 0)}function BN(t){var e,n;if(w_(t))return(n=(e=t.getDefaultHeaders)===null||e===void 0?void 0:e.call(t))!==null&&n!==void 0?n:t.defaultHeaders;if(I_(t))return t.default_headers}function Rg(t){var e,n;let r=Lr(),i=Object.assign(Object.assign({},t),{api_key:(e=t?.api_key)!==null&&e!==void 0?e:r.GOOGLE_GENAI_API_KEY,access_token:(n=t?.access_token)!==null&&n!==void 0?n:r.GOOGLE_GENAI_ACCESS_TOKEN});return R_(i)?i:void 0}function HN(t){var e,n;let r={};for(let[o,a]of t){let u=o.toLowerCase();u!=="authorization"&&u!=="x-goog-api-key"&&(r[o]=a)}let i={access_token:(e=t.get("authorization"))!==null&&e!==void 0?e:void 0,api_key:(n=t.get("x-goog-api-key"))!==null&&n!==void 0?n:void 0,default_headers:Object.keys(r).length?r:void 0};return R_(i)?i:void 0}function Pg(t,e){if(e)for(let[n,r]of new Headers(e))t.get(n)===null&&t.set(n,r)}function VN(t,e){t.options.user_project!==void 0&&e.get("x-goog-user-project")===null&&e.set("x-goog-user-project",t.options.user_project)}function $N(t,e){if(e){if(e.api_key){t.set("x-goog-api-key",e.api_key);return}e.access_token&&t.set("Authorization",JN(e.access_token))}}function XN(t){return t.get("authorization")!==null||t.get("x-goog-api-key")!==null}function JN(t){return t.slice(0,7).toLowerCase()==="bearer "?t:`Bearer ${t}`}function I_(t){return typeof t=="object"&&t!==null}function w_(t){return typeof t=="object"&&t!==null&&"resolveGoogleGenAISecurity"in t&&typeof t.resolveGoogleGenAISecurity=="function"}function R_(t){return t.api_key!==void 0||t.access_token!==void 0||t.default_headers!==void 0}var tn=class extends Error{constructor(e,n){let r=e;n?.cause&&(r+=`: ${n.cause}`),super(r,n),this.name="HTTPClientError",typeof this.cause>"u"&&(this.cause=n?.cause)}},Po=class extends tn{constructor(){super(...arguments),this.name="UnexpectedClientError"}},Qn=class extends tn{constructor(){super(...arguments),this.name="InvalidRequestError"}},No=class extends tn{constructor(){super(...arguments),this.name="RequestAbortedError"}},xo=class extends tn{constructor(){super(...arguments),this.name="RequestTimeoutError"}},ko=class extends tn{constructor(){super(...arguments),this.name="ConnectionError"}};var ot=class extends Error{constructor(e,n){var r,i,o,a;super(e),this.statusCode=(r=n?.response)===null||r===void 0?void 0:r.status,this.body=(i=n?.body)!==null&&i!==void 0?i:"",this.headers=(o=n?.response)===null||o===void 0?void 0:o.headers,this.contentType=((a=n?.response)===null||a===void 0?void 0:a.headers.get("content-type"))||"",this.rawResponse=n?.response,this.name="GoogleGenAiError"}};var pu=class extends Error{},qe=class t extends pu{constructor(e,n,r,i){super(t.makeMessage(e,n,r)),this.status=e,this.headers=i,this.error=n,this.statusCode=e,this.body=xg(n),this.contentType=i?.get("content-type")||"",this.rawResponse=void 0,this.cause=void 0,this.name=this.constructor.name,Object.setPrototypeOf(this,new.target.prototype)}static makeMessage(e,n,r){var i;let o=n&&zN(n)&&typeof n.message=="string"?n.message:void 0,a=xg(n),u=(i=o??r)!==null&&i!==void 0?i:a||"An error occurred";return`${e?`${e} `:""}${u}`}static generate(e,n,r,i){return!e||!i?new nr({message:r,cause:n instanceof Error?n:void 0}):e===400?new gu(e,n,r,i):e===401?new _u(e,n,r,i):e===403?new yu(e,n,r,i):e===404?new Eu(e,n,r,i):e===409?new vu(e,n,r,i):e===422?new Tu(e,n,r,i):e===429?new Au(e,n,r,i):e>=500?new Cu(e,n,r,i):new t(e,n,r,i)}},hu=class extends qe{constructor({message:e}={}){super(void 0,void 0,e||"Request was aborted.",void 0)}},nr=class extends qe{constructor({message:e,cause:n}){super(void 0,void 0,e||"Connection error.",void 0),this.cause=n}},mu=class extends nr{constructor({message:e}={}){super({message:e||"Request timed out. This is a client-side timeout. You can increase the timeout by setting the `timeout` argument in your request or client http options."})}},gu=class extends qe{},_u=class extends qe{},yu=class extends qe{},Eu=class extends qe{},vu=class extends qe{},Tu=class extends qe{},Au=class extends qe{},Cu=class extends qe{};function En(t){return QN(t)?t:t instanceof ot?WN(t):t instanceof tn?KN(t):t}function WN(t){let e=YN(t),n=qe.generate(t.statusCode,e,t.message,t.headers);return Mr(n,"body",t.body),Mr(n,"contentType",t.contentType),Mr(n,"rawResponse",t.rawResponse),Mr(n,"statusCode",t.statusCode),Mr(n,"cause",t),n}function KN(t){return t instanceof xo?new mu({message:t.message}):t instanceof No?new hu({message:t.message}):t instanceof ko?new nr({message:t.message,cause:t}):new nr({message:t.message,cause:t})}function YN(t){let e=Ng(t,"data$");if(e&&typeof e=="object")return e;try{let r=JSON.parse(t.body);if(r&&typeof r=="object")return r}catch{}let n=Ng(t,"error");return n&&typeof n=="object"?n:void 0}function Ng(t,e){return t&&typeof t=="object"?t[e]:void 0}function xg(t){if(!t)return"";try{return JSON.stringify(t)}catch{return String(t)}}function zN(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function QN(t){return typeof t=="object"&&t!==null?qe.prototype.isPrototypeOf(t):!1}function Mr(t,e,n){Object.defineProperty(t,e,{configurable:!0,enumerable:!0,value:n,writable:!1})}var ZN=(t,e)=>e==null?fetch(t):fetch(t,e),Do=class t{constructor(e={}){this.requestHooks=[],this.requestErrorHooks=[],this.responseHooks=[],this.options=e,this.fetcher=e.fetcher||ZN}async request(e){let n=e;for(let r of this.requestHooks){let i=await r(n);i&&(n=i)}try{let r=await this.fetcher(n);for(let i of this.responseHooks)await i(r,n);return r}catch(r){for(let i of this.requestErrorHooks)await i(r,n);throw r}}addHook(...e){if(e[0]==="beforeRequest")this.requestHooks.push(e[1]);else if(e[0]==="requestError")this.requestErrorHooks.push(e[1]);else if(e[0]==="response")this.responseHooks.push(e[1]);else throw new Error(`Invalid hook type: ${e[0]}`);return this}removeHook(...e){let n;if(e[0]==="beforeRequest")n=this.requestHooks;else if(e[0]==="requestError")n=this.requestErrorHooks;else if(e[0]==="response")n=this.responseHooks;else throw new Error(`Invalid hook type: ${e[0]}`);let r=n.findIndex(i=>i===e[1]);return r>=0&&n.splice(r,1),this}clone(){let e=new t(this.options);return e.requestHooks=this.requestHooks.slice(),e.requestErrorHooks=this.requestErrorHooks.slice(),e.responseHooks=this.responseHooks.slice(),e}},kg=/\s*;\s*/g;function Yn(t,e){var n;if(e==="*")return!0;let r=((n=t.headers.get("content-type"))===null||n===void 0?void 0:n.trim())||"application/octet-stream";r=r.toLowerCase();let i=e.toLowerCase().trim().split(kg),[o="",...a]=i;if(o.split("/").length!==2)return!1;let u=r.split(kg),[c="",...d]=u,[f="",p=""]=c.split("/");if(!f||!p||o!=="*/*"&&c!==o&&`${f}/*`!==o&&`*/${p}`!==o||d.length<a.length)return!1;let h=new Set(d);for(let g of a)if(!h.has(g))return!1;return!0}var jN=new RegExp("^[0-9]xx$","i");function oe(t,e){let n=`${t.status}`,r=Array.isArray(e)?e:[e];return r.length?r.some(i=>{let o=`${i}`;if(o==="default")return!0;if(!jN.test(`${o}`))return o===n;let a=o.charAt(0);if(!a)throw new Error("Invalid status code range");let u=n.charAt(0);if(!u)throw new Error(`Invalid response status code: ${n}`);return u===a}):!1}function ex(t,e,n){return oe(t,e)&&Yn(t,n)}function P_(t){if(typeof t!="object"||t==null)return!1;let e=t instanceof TypeError&&t.message.toLowerCase().startsWith("failed to fetch"),n=t instanceof TypeError&&t.message.toLowerCase().startsWith("fetch failed"),r="name"in t&&t.name==="ConnectionError",i="code"in t&&typeof t.code=="string"&&t.code.toLowerCase()==="econnreset";return e||n||i||r}function N_(t){if(typeof t!="object"||t==null)return!1;let e="name"in t&&t.name==="TimeoutError",n="code"in t&&t.code===23,r="code"in t&&typeof t.code=="string"&&t.code.toLowerCase()==="econnaborted";return e||n||r}function tx(t){if(typeof t!="object"||t==null)return!1;let e="name"in t&&t.name==="AbortError",n="code"in t&&t.code===20,r="code"in t&&typeof t.code=="string"&&t.code.toLowerCase()==="econnaborted";return e||n||r}function nx(t){let e=new fu;t.registerBeforeCreateRequestHook(e),t.registerBeforeRequestHook(e)}var Mo=class{constructor(){this.sdkInitHooks=[],this.beforeCreateRequestHooks=[],this.beforeRequestHooks=[],this.afterSuccessHooks=[],this.afterErrorHooks=[];let e=[];for(let n of e)"sdkInit"in n&&this.registerSDKInitHook(n),"beforeCreateRequest"in n&&this.registerBeforeCreateRequestHook(n),"beforeRequest"in n&&this.registerBeforeRequestHook(n),"afterSuccess"in n&&this.registerAfterSuccessHook(n),"afterError"in n&&this.registerAfterErrorHook(n);nx(this)}registerSDKInitHook(e){this.sdkInitHooks.push(e)}registerBeforeCreateRequestHook(e){this.beforeCreateRequestHooks.push(e)}registerBeforeRequestHook(e){this.beforeRequestHooks.push(e)}registerAfterSuccessHook(e){this.afterSuccessHooks.push(e)}registerAfterErrorHook(e){this.afterErrorHooks.push(e)}sdkInit(e){return this.sdkInitHooks.reduce((n,r)=>r.sdkInit(n),e)}beforeCreateRequest(e,n){let r=n;for(let i of this.beforeCreateRequestHooks)r=i.beforeCreateRequest(e,r);return r}async beforeRequest(e,n){let r=n;for(let i of this.beforeRequestHooks)r=await i.beforeRequest(e,r);return r}async afterSuccess(e,n){let r=n;for(let i of this.afterSuccessHooks)r=await i.afterSuccess(e,r);return r}async afterError(e,n,r){let i=n,o=r;for(let a of this.afterErrorHooks){let u=await a.afterError(e,i,o);i=u.response,o=u.error}return{response:i,error:o}}};function Dg(t){return{ok:!0,value:t}}function qt(t){return{ok:!1,error:t}}function dc(t){return btoa(String.fromCodePoint(...t))}function rx(t){return new TextEncoder().encode(t)}function ix(t){return dc(rx(t))}var ox=Object.prototype.hasOwnProperty;function se(t,e){let n=/\{([a-zA-Z0-9_][a-zA-Z0-9_-]*?)\}/g;return function(i={}){return t.replace(n,function(o,a){if(!ox.call(i,a))throw new Error(`Parameter '${a}' is required`);let u=i[a];if(typeof u!="string"&&typeof u!="number")throw new Error(`Parameter '${a}' must be a string or number`);return`${u}`}).replace(/^\/+/,"")}}var Mg=["https://generativelanguage.googleapis.com"];function sx(t){var e;let n=t.server_url,r={};if(!n){let o=(e=t.server_idx)!==null&&e!==void 0?e:0;if(o<0||o>=Mg.length)throw new Error(`Invalid server index ${o}`);n=Mg[o]||""}let i=se(n)(r);return new URL(i)}var ax={userAgent:"speakeasy-sdk/typescript 2.4.1-preview.4 internal v1beta @google/genai"};function lx(...t){let e=[];for(let n of t)n&&e.push(n);switch(e.length){case 0:case 1:return e[0]||null;default:return"any"in AbortSignal&&typeof AbortSignal.any=="function"?AbortSignal.any(e):ux(e)}}function ux(t){let e=new AbortController,n=e.signal;if(!t.length)return e.signal;if(t.length===1)return t[0]||e.signal;for(let a of t)if(a.aborted)return a;function r(){e.abort(this.reason),o()}let i=[];function o(){for(let a of i){let u=a.deref();u&&u.removeEventListener("abort",r)}}for(let a of t)i.push(new WeakRef(a)),a.addEventListener("abort",r);return n}function ue(t){let e={};for(let[n,r]of Object.entries(t))typeof r<"u"&&(e[n]=r);return e}function nn(t){if(t===null||typeof t!="object"||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null||e===Object.prototype)return!0;try{return Object.getPrototypeOf(e)===null}catch{return!1}}var cx=/%(2[346bcf]|3[abdf]|40|5[bd])/gi;function x_(t,e){return qo(t,e==="percentExceptReserved"?"percent":e)}function qo(t,e){switch(e){case"percent":return encodeURIComponent(t);case"percentExceptReserved":return encodeURIComponent(t).replace(cx,n=>decodeURIComponent(n));default:return t}}function dx(t){return(e,n,r)=>{let i="",o=r?.explode?D_(e,n):[[e,n]];if(o.every(([d,f])=>f==null))return;let a=d=>qo(d,r?.charEncoding),u=d=>a(M_(d)),c=a(t);return o.forEach(([d,f])=>{var p,h;let g="",_=null;f!=null&&(Array.isArray(f)?_=(p=U_(f,m=>`${u(m)}`))===null||p===void 0?void 0:p.join(c):nn(f)?_=(h=G_(Object.entries(f),([m,E])=>`${a(m)}${c}${u(E)}`))===null||h===void 0?void 0:h.join(c):_=`${u(f)}`,_!=null&&(g=`${x_(d,r?.charEncoding)}=${_}`,!(!g||g==="=")&&(i+=`&${g}`)))}),i.slice(1)}}var k_=dx(",");function yt(t,e,n){if(typeof e>"u")return;let i=(o=>qo(o,n?.charEncoding))(JSON.stringify(e,b_));return n?.explode?i:`${x_(t,n?.charEncoding)}=${i}`}var K=(t,e,n)=>{let r="",i=n?.explode?D_(t,e):[[t,e]];if(i.every(([u,c])=>c==null))return;let o=u=>qo(u,n?.charEncoding),a=u=>o(M_(u));return i.forEach(([u,c])=>{var d;let f="";if(c!=null){if(Array.isArray(c))f=(d=U_(c,p=>`${a(p)}`))===null||d===void 0?void 0:d.join(",");else if(nn(c)){let p=G_(Object.entries(c),([h,g])=>`,${o(h)},${a(g)}`);f=p?.join("").slice(1)}else f=`${n?.explode&&nn(e)?`${u}=`:""}${a(c)}`;r+=f?`,${f}`:""}}),r.slice(1)};function D_(t,e){return Array.isArray(e)?e.map(n=>[t,n]):nn(e)?Object.entries(e??{}).map(([r,i])=>[r,i]):[[t,e]]}function M_(t){return t==null?"":t instanceof Date?t.toISOString():t instanceof Uint8Array?dc(t):typeof t=="object"?JSON.stringify(t,b_):`${t}`}function b_(t,e){return e instanceof Uint8Array?dc(e):e}function U_(t,e){let n=t.reduce((r,i)=>{if(i==null)return r;let o=e(i);return o==null||r.push(o),r},[]);return n.length?n:null}function G_(t,e){let n=[];for(let[r,i]of t){if(i==null)continue;let o=e([r,i]);o!=null&&n.push(o)}return n.length?n:null}function fx(...t){return t.filter(Boolean).join("&")}function px(t){return function(n,r){var i,o,a;let u=Object.assign(Object.assign({},r),{explode:(i=r?.explode)!==null&&i!==void 0?i:!0,charEncoding:(o=r?.charEncoding)!==null&&o!==void 0?o:"percent"}),c=new Set((a=r?.allowEmptyValue)!==null&&a!==void 0?a:[]),d=Object.entries(n).map(([f,p])=>c.has(f)&&(p==null||p===""||Array.isArray(p)&&p.length===0)?`${encodeURIComponent(f)}=`:t(f,p,u));return fx(...d)}}var Et=px(k_);var bg={initialInterval:500,maxInterval:6e4,exponent:1.5,maxElapsedTime:36e5},Or=class t extends Error{constructor(e,n){let r=e;n?.cause&&(r+=`: ${n.cause}`),super(r,n),this.name="PermanentError",typeof this.cause>"u"&&(this.cause=n?.cause),Object.setPrototypeOf(this,t.prototype)}},rn=class t extends Error{constructor(e,n){super(e),this.response=n,this.name="TemporaryError",Object.setPrototypeOf(this,t.prototype)}};async function hx(t,e){var n;switch(e.config.strategy){case"backoff":return _x(Ug(t,{statusCodes:e.statusCodes,retryConnectionErrors:!!e.config.retryConnectionErrors}),(n=e.config.backoff)!==null&&n!==void 0?n:bg);case"attempt-count-backoff":return yx(Ug(t,{statusCodes:e.statusCodes,retryConnectionErrors:!!e.config.retryConnectionErrors}),Object.assign(Object.assign({},bg),e.config.backoff),e.config);default:return await t(0)}}function Ug(t,e){return async n=>{try{let r=await t(n);if(gx(r,e.statusCodes))throw new rn("Response failed with retryable status code",r);return r}catch(r){throw r instanceof rn||e.retryConnectionErrors&&(N_(r)||P_(r))?r:new Or("Permanent error",{cause:r})}}}var mx=new RegExp("^[0-9]xx$","i");function gx(t,e){let n=`${t.status}`;return e.some(r=>{if(!mx.test(r))return r===n;let i=r.charAt(0);if(!i)throw new Error("Invalid status code range");let o=n.charAt(0);if(!o)throw new Error(`Invalid response status code: ${n}`);return o===i})}async function _x(t,e){let{maxElapsedTime:n,initialInterval:r,exponent:i,maxInterval:o}=e,a=Date.now(),u=0;for(;;)try{return await t(u)}catch(c){if(c instanceof Or)throw c.cause;if(Date.now()-a>n){if(c instanceof rn)return c.response;throw c}let f=0;c instanceof rn&&(f=L_(c.response)),f<=0&&(f=r*Math.pow(u,i)+Math.random()*1e3);let p=Math.min(f,o);await O_(p),u++}}async function yx(t,e,n){let r=0;for(;;)try{return await t(r)}catch(i){if(i instanceof Or)throw i.cause;if(r>=n.maxRetries){if(i instanceof rn)return i.response;throw i}let o=0;i instanceof rn&&(o=L_(i.response)),o<=0&&(o=e.initialInterval*Math.pow(e.exponent,r)*(1-Math.random()*.25));let a=Math.min(o,e.maxInterval);await O_(a),r++}}function L_(t){let e=t.headers.get("retry-after-ms");if(e){let o=Number(e);if(Number.isFinite(o)&&o>=0)return o}let n=t.headers.get("retry-after")||"";if(!n)return 0;let r=Number(n);if(Number.isInteger(r))return r*1e3;let i=Date.parse(n);if(Number.isInteger(i)){let o=i-Date.now();return o>0?Math.ceil(o):0}return 0}async function O_(t){return new Promise(e=>setTimeout(e,t))}var lo=typeof globalThis>"u"?null:globalThis,Ex=typeof lo=="object"&&lo!=null&&"importScripts"in lo&&typeof lo.importScripts=="function",vx=Ex||typeof navigator<"u"&&"serviceWorker"in navigator||typeof window=="object"&&typeof window.document<"u",gt=class{constructor(e={}){let n=e;typeof n=="object"&&n!=null&&"hooks"in n&&n.hooks instanceof Mo?this._hooks=n.hooks:this._hooks=new Mo;let r=new Do;e.http_client=e.http_client||r,e=this._hooks.sdkInit(e);let i=sx(e);i&&(i.pathname=i.pathname.replace(/\/+$/,"")+"/"),this._baseURL=i,this._httpClient=e.http_client||r,this._options=Object.assign(Object.assign({},ON(e)),{hooks:this._hooks}),this._logger=this._options.debug_logger,!this._logger&&Lr().GOOGLE_GENAI_DEBUG&&(this._logger=console)}_createRequest(e,n,r){var i,o,a,u,c;let{method:d,path:f,query:p,headers:h,security:g}=n,_=(i=n.baseURL)!==null&&i!==void 0?i:this._baseURL;if(!_)return qt(new Qn("No base URL provided for operation"));let m=new URL(_),E;f?(m.pathname=m.pathname.replace(/\/+$/,"")+"/",E=new URL(f,m),!E.search&&m.search&&(E.search=m.search)):E=m,E.hash="";let y=(M,Q)=>{if(!Q)return M;let te=new Set(Q.split("&").filter(Ne=>Ne!=="").map(Ne=>{var Ce;return(Ce=Ne.split("=")[0])!==null&&Ce!==void 0?Ce:""}));return[...M.split("&").filter(Ne=>{var Ce;return Ne!==""&&!te.has((Ce=Ne.split("=")[0])!==null&&Ce!==void 0?Ce:"")}),Q].join("&")},A=M=>Object.entries(M).map(([Q,te])=>{if(te==null)return;let ve=nn(te)?JSON.stringify(te):te;return k_(Q,ve,{explode:Array.isArray(ve),charEncoding:"percent"})}).filter(Q=>typeof Q<"u").join("&"),T=[p||"",A(r?.extra_query||{}),A(g?.queryParams||{})].reduce(y,E.search.slice(1));T&&(E.search=`?${T}`);let C=new Headers(h),w=g?.basic.username,k=g?.basic.password;if(w!=null||k!=null){let M=ix([w||"",k||""].join(":"));C.set("Authorization",`Basic ${M}`)}let O=new Headers(g?.headers||{});for(let[M,Q]of O)C.set(M,Q);let B=C.get("cookie")||"";for(let[M,Q]of Object.entries(g?.cookies||{}))B+=`; ${M}=${Q}`;B=B.startsWith("; ")?B.slice(2):B,C.set("cookie",B);let N=new Headers((o=r?.headers)!==null&&o!==void 0?o:(a=r?.fetch_options)===null||a===void 0?void 0:a.headers);for(let[M,Q]of N)C.set(M,Q);vx||C.set((u=n.uaHeader)!==null&&u!==void 0?u:"user-agent",(c=n.userAgent)!==null&&c!==void 0?c:ax.userAgent);let q=n.body,$=Object.fromEntries(Object.entries(r?.extra_body||{}).filter(([,M])=>typeof M<"u"));if(Object.keys($).length>0){let M=new Headers(h).get("content-type")||"";if(!/^(application|text)\/([^+]+\+)*json/.test(M)||typeof q!="string"&&q!=null)return qt(new Qn("extra_body can only be merged into JSON object request bodies"));let te;try{te=q?JSON.parse(q):{}}catch(ve){return qt(new Qn("extra_body can only be merged into JSON object request bodies",{cause:ve}))}if(!nn(te))return qt(new Qn("extra_body can only be merged into JSON object request bodies"));q=JSON.stringify(Object.assign(Object.assign({},te),$)),C.delete("content-length")}let z=Object.assign(Object.assign({},r?.fetch_options),r);!z?.signal&&n.timeout_ms!=null&&n.timeout_ms>0&&(e.timeout_ms=n.timeout_ms),n.body instanceof ReadableStream&&Object.assign(z,{duplex:"half"});let ne;try{ne=this._hooks.beforeCreateRequest(e,{url:E,options:Object.assign(Object.assign({},z),{body:q??null,headers:C,method:d})})}catch(M){return qt(new Po("Create request hook failed to execute",{cause:M}))}return Dg(new Request(ne.url,ne.options))}async _do(e,n){let{context:r,isErrorStatusCode:i}=n,o=r.timeout_ms;return hx(async()=>{var a;let u=e.clone(),c=u;if(o!=null&&o>0){let p=AbortSignal.timeout(o),h=(a=lx(u.signal,p))!==null&&a!==void 0?a:p;c=new Request(u,{signal:h})}let d=await this._hooks.beforeRequest(r,c);await Tx(this._logger,d).catch(p=>{var h;return(h=this._logger)===null||h===void 0?void 0:h.log("Failed to log request:",p)});let f=await this._httpClient.request(d);try{if(i(f.status)){let p=await this._hooks.afterError(r,f,null);if(p.error)throw p.error;f=p.response||f}else f=await this._hooks.afterSuccess(r,f)}finally{await Ax(this._logger,f,d).catch(p=>{var h;return(h=this._logger)===null||h===void 0?void 0:h.log("Failed to log response:",p)})}return f},{config:n.retryConfig,statusCodes:n.retryCodes}).then(a=>Dg(a),a=>{switch(!0){case tx(a):return qt(new No("Request aborted by client",{cause:a}));case N_(a):return qt(new xo("Request timed out",{cause:a}));case P_(a):return qt(new ko("Unable to make request",{cause:a}));default:return qt(new Po("Unexpected HTTP client error",{cause:a}))}})}},q_=/^(application|text)\/([^+]+\+)*json.*/,Gg=/^(application|text)\/([^+]+\+)*(jsonl|x-ndjson)\b.*/;async function Tx(t,e){if(!t)return;let n=e.headers.get("content-type"),r=n?.split(";")[0]||"";t.group(`> Request: ${e.method} ${e.url}`),t.group("Headers:");for(let[i,o]of e.headers.entries())t.log(`${i}: ${o}`);switch(t.groupEnd(),t.group("Body:"),!0){case q_.test(r):t.log(await e.clone().json());break;case r.startsWith("text/"):t.log(await e.clone().text());break;case r==="multipart/form-data":{let i=await e.clone().formData();for(let[o,a]of i){let u=a instanceof Blob?"<Blob>":a;t.log(`${o}: ${u}`)}break}default:t.log(`<${n}>`);break}t.groupEnd(),t.groupEnd()}async function Ax(t,e,n){if(!t)return;let r=e.headers.get("content-type"),i=r?.split(";")[0]||"";t.group(`< Response: ${n.method} ${n.url}`),t.log("Status Code:",e.status,e.statusText),t.group("Headers:");for(let[o,a]of e.headers.entries())t.log(`${o}: ${a}`);switch(t.groupEnd(),t.group("Body:"),!0){case(Yn(e,"application/json")||q_.test(i)&&!Gg.test(i)):t.log(await e.clone().json());break;case(Yn(e,"application/jsonl")||Gg.test(i)):case Yn(e,"text/event-stream"):t.log(`<${r}>`);break;case Yn(e,"text/*"):t.log(await e.clone().text());break;case Yn(e,"multipart/form-data"):{let o=await e.clone().formData();for(let[a,u]of o){let c=u instanceof Blob?"<Blob>":u;t.log(`${a}: ${c}`)}break}default:t.log(`<${r}>`);break}t.groupEnd(),t.groupEnd()}var bo=class extends ot{constructor(e,n){e&&(e+=": "),e+=`Status ${n.response.status}`;let r=n.response.headers.get("content-type")||'""';r!=="application/json"&&(e+=` Content-Type ${r.includes(" ")?`"${r}"`:r}`);let i=n.body||'""';e+=i.length>100?`
41
+ `:". ";let o=i;if(i.length>1e4){let a=i.substring(0,1e4),u=i.length-1e4;o=`${a}...and ${u} more chars`}e+=`Body: ${o}`,e=e.trim(),super(e,n),this.name="GoogleGenAiDefaultError"}};function Lg(t){try{return JSON.parse(t)}catch{return t}}function Cx(t,e={}){var n,r;let i=e.flattened===!0,o=(n=e.sentinel)!==null&&n!==void 0?n:"";return new Su(t,a=>o!==""&&a.data===o?{done:!0,value:void 0}:i?{done:!1,value:a.data==null?void 0:Lg(a.data)}:{done:!1,value:Object.assign(Object.assign({},a),{data:a.data==null?a.data:Lg(a.data)})},{dataRequired:(r=e.dataRequired)!==null&&r!==void 0?r:!0})}var Su=class extends ReadableStream{constructor(e,n,r){var i;let o=e.getReader(),a=new Uint8Array(4096),u=0,c=0,d={eventId:void 0},f=(i=r?.dataRequired)!==null&&i!==void 0?i:!0;super({async pull(p){try{for(;;){let h=Ix(a,u,c);if(!h){c=Math.max(0,u-Sx+1);let m=await o.read();if(m.done)return p.close();if(u+m.value.length>a.length){let E=new Uint8Array(Math.max(a.length*2,u+m.value.length));E.set(a.subarray(0,u)),a=E}a.set(m.value,u),u+=m.value.length;continue}let g=a.slice(0,h.index);if(a.copyWithin(0,h.index+h.length,u),u-=h.index+h.length,a.length>4096&&u<=a.length>>2){let m=new Uint8Array(Math.max(4096,u*2));m.set(a.subarray(0,u)),a=m}c=0;let _=wx(g,n,d,f);if(_&&!_.done)return p.enqueue(_.value);if(_?.done)return await o.cancel("done"),p.close()}}catch(h){p.error(h),await o.cancel(h)}},cancel:p=>o.cancel(p)})}[Symbol.asyncIterator](e){let n=ReadableStream.prototype[Symbol.asyncIterator];if(typeof n=="function")return n.call(this,e);let r=this.getReader(),i={next:async()=>{let a=await r.read();return a.done?(r.releaseLock(),{done:!0,value:void 0}):{done:!1,value:a.value}},throw:async a=>(await r.cancel(a),r.releaseLock(),{done:!0,value:void 0}),return:async()=>(await r.cancel("done"),r.releaseLock(),{done:!0,value:void 0}),[Symbol.asyncIterator](){return this}},o=Symbol.asyncDispose;return o&&(i[o]=async()=>{var a;await((a=i.return)===null||a===void 0?void 0:a.call(i))}),i}values(e){return this[Symbol.asyncIterator](e)}},rt=13,it=10,F_=[[rt,it,rt,it],[rt,it,rt],[rt,it,it],[rt,rt,it],[it,rt,it],[rt,rt],[it,rt],[it,it]],Sx=F_.reduce((t,e)=>Math.max(t,e.length),0);function Ix(t,e,n){for(let r=n;r<e;r++)if(!(t[r]!==rt&&t[r]!==it))for(let i of F_){if(r+i.length>e)continue;let o=!0;for(let a=0;a<i.length;a++)if(t[r+a]!==i[a]){o=!1;break}if(o)return{index:r,length:i.length}}return null}function wx(t,e,n,r){let o=new TextDecoder().decode(t).split(/\r\n|\r|\n/),a=[],u={},c=!0;for(let d of o){if(!d||d.startsWith(":"))continue;c=!1;let f=d.indexOf(":"),p=d,h="";f>0&&(p=d.slice(0,f),h=d[f+1]===" "?d.slice(f+2):d.slice(f+1)),p==="data"?a.push(h):p==="event"?u.event=h:p==="id"&&!h.includes("\0")?n.eventId=h:p==="retry"&&/^\d+$/.test(h)&&(u.retry=Number(h))}if(!c){if(u.id=n.eventId,a.length)u.data=a.join(`
42
+ `);else if(r)return;return e(u)}}var Rx={jsonl:"application/jsonl",json:"application/json",text:"text/plain",bytes:"application/octet-stream",stream:"application/octet-stream",sse:"text/event-stream",nil:"*",fail:"*"};function on(t,e,n){return Object.assign(Object.assign({},n),{err:!0,enc:"json",codes:t,errorClass:e})}function ge(t,e){return Object.assign(Object.assign({},e),{enc:"json",codes:t})}function B_(t,e,n){return Object.assign(Object.assign(Object.assign({},n),{enc:"sse",codes:t}),e?{sse:e}:{})}function H_(t,e){return Object.assign(Object.assign({},e),{enc:"nil",codes:t})}function Y(t){return{enc:"fail",codes:t}}function ce(...t){return async function(n,r,i){let o,a;for(let h of t){let{codes:g}=h,_="ctype"in h?h.ctype:Rx[h.enc];if(_&&ex(n,g,_)){a=h;break}else if(!_&&oe(n,g)){a=h;break}}if(!a)return[{ok:!1,error:new bo("Unexpected Status or Content-Type",{response:n,request:r,body:await n.text().catch(()=>"")})},o];let u=a.enc,c="";switch(u){case"json":c=await n.text();try{o=JSON.parse(c)}catch(h){if(!("err"in a))throw h;o=c}break;case"jsonl":o=n.body;break;case"bytes":o=new Uint8Array(await n.arrayBuffer());break;case"stream":o=n.body;break;case"text":c=await n.text(),o=c;break;case"sse":if(n.body){let h="sse"in a&&a.sse||{};o=Cx(n.body,h)}else o=null;break;case"nil":c=await n.text(),o=void 0;break;case"fail":c=await n.text(),o=c;break;default:throw new Error(`Unsupported response type: ${u}`)}if(a.enc==="fail")return[{ok:!1,error:new bo("API error occurred",{request:r,response:n,body:c})},o];let d=a.key||i?.resultKey,f,p=a.hdrs?{headers:Nx(n.headers)}:null;return"err"in a?f=Object.assign(Object.assign(Object.assign({},i?.extraFields),p),nn(o)?o:null):d?f=Object.assign(Object.assign(Object.assign({},i?.extraFields),p),{[d]:o}):a.hdrs?f=Object.assign(Object.assign(Object.assign({},i?.extraFields),p),nn(o)?o:null):f=o,"err"in a?[{ok:!1,error:a.errorClass?new a.errorClass(f,{request:r,response:n,body:c}):f},o]:[{ok:!0,value:f},o]}}var Px=/, */;function Nx(t){let e={};for(let[n,r]of t.entries())e[n]=r.split(Px);return e}var Og={Incomplete:"incomplete",UnrecognisedSecurityType:"unrecognized_security_type"},Iu=class t extends Error{constructor(e,n){super(n),this.code=e,this.name="SecurityError"}static incomplete(){return new t(Og.Incomplete,"Security requirements not met in order to perform the operation")}static unrecognizedType(e){return new t(Og.UnrecognisedSecurityType,`Unrecognised security type: ${e}`)}};function xx(...t){let e={basic:{},headers:{},queryParams:{},cookies:{},oauth2:{type:"none"}},n=t.find(r=>r.every(i=>{if(i.value==null)return!1;if(i.type==="http:basic")return i.value.username!=null||i.value.password!=null;if(i.type==="http:custom")return null;if(i.type==="oauth2:password")return typeof i.value=="string"&&!!i.value;if(i.type==="oauth2:client_credentials")return typeof i.value=="string"?!!i.value:i.value.client_id!=null||i.value.client_secret!=null;if(typeof i.value=="string")return!!i.value;throw new Error(`Unrecognized security type: ${i.type} (value type: ${typeof i.value})`)}));return n==null?null:(n.forEach(r=>{if(r.value==null)return;let{type:i}=r;switch(i){case"apiKey:header":e.headers[r.fieldName]=r.value;break;case"apiKey:query":e.queryParams[r.fieldName]=r.value;break;case"apiKey:cookie":e.cookies[r.fieldName]=r.value;break;case"http:basic":kx(e,r);break;case"http:custom":break;case"http:bearer":uo(e,r);break;case"oauth2":uo(e,r);break;case"oauth2:password":uo(e,r);break;case"oauth2:client_credentials":break;case"openIdConnect":uo(e,r);break;default:throw Iu.unrecognizedType(i)}}),e)}function kx(t,e){e.value!=null&&(t.basic=e.value)}function uo(t,e){if(typeof e.value!="string"||!e.value)return;let n=e.value;n.slice(0,7).toLowerCase()!=="bearer "&&(n=`Bearer ${n}`),e.fieldName!==void 0&&(t.headers[e.fieldName]=n)}function de(t,e){var n,r;let i=[[{fieldName:"accessToken",type:"http:custom",value:(n=t?.access_token)!==null&&n!==void 0?n:Lr().GOOGLE_GENAI_ACCESS_TOKEN},{fieldName:"apiKey",type:"http:custom",value:(r=t?.api_key)!==null&&r!==void 0?r:Lr().GOOGLE_GENAI_API_KEY},{fieldName:"defaultHeaders",type:"http:custom",value:t?.default_headers}]];return xx(...i)}async function fe(t){if(t!=null)return typeof t=="function"?t():t}var V_,re=class t{constructor(e,n){this[V_]="APIPromise",this._promise=e instanceof Promise?e:Promise.resolve(e),this._unwrapped=e instanceof Promise?null:Promise.resolve(e[0]),this._callSource=n??null}_getUnwrapped(){var e;return(e=this._unwrapped)!==null&&e!==void 0?e:this._unwrapped=this._promise.then(([n])=>n)}then(e,n){return this._promise.then(e?([r])=>e(r):void 0,n)}catch(e){return this._getUnwrapped().catch(e)}finally(e){return this._getUnwrapped().finally(e)}$inspect(){return this._promise}asResponse(){var e;return((e=this._callSource)!==null&&e!==void 0?e:this._callSource=this._promise.then(([,r])=>r)).then(r=>{if(!r.response)throw new Error("APIPromise.asResponse: response unavailable");return r.response})}async withResponse(){let[[e],n]=await Promise.all([this._promise,this.asResponse()]);return{data:e,response:n}}_thenUnwrap(e){var n;let r=this._promise.then(([i,o])=>[e(i),o]);return r.catch(()=>{}),new t(r,(n=this._callSource)!==null&&n!==void 0?n:void 0)}};V_=Symbol.toStringTag;function le(t){let e=t.$inspect(),n=e.then(([i,o])=>{if(!i.ok)throw i.error;return[i.value,o]}),r=e.then(([i,o])=>{var a;if(!i.ok&&!(!((a=o.response)===null||a===void 0)&&a.ok))throw i.error;return o});return n.catch(()=>{}),r.catch(()=>{}),new re(n,r)}function $_(t,e,n,r){return new re(Dx(t,e,n,r))}async function Dx(t,e,n,r){var i,o,a;let c={body:e,api_version:n},d=yt("body",c.body,{explode:!0}),f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/agents")(f),h=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"CreateAgent",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function X_(t,e,n,r){return new re(Mx(t,e,n,r))}async function Mx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/agents/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"DeleteAgent",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"DELETE",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function J_(t,e,n,r){return new re(bx(t,e,n,r))}async function bx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/agents/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"GetAgent",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"GET",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function W_(t,e,n,r,i,o){return new re(Ux(t,e,n,r,i,o))}async function Ux(t,e,n,r,i,o){var a,u,c;let f={api_version:e,page_size:n,page_token:r,parent:i},p=null,h={api_version:K("api_version",(a=f?.api_version)!==null&&a!==void 0?a:t._options.api_version,{explode:!1,charEncoding:"percent"})},g=se("/{api_version}/agents")(h),_=Et({page_size:f?.page_size,page_token:f?.page_token,parent:f?.parent}),m=new Headers(ue({Accept:"application/json"})),E=await fe(t._options.security),y=de(E),A={options:t._options,base_url:(c=(u=o?.server_url)!==null&&u!==void 0?u:t._baseURL)!==null&&c!==void 0?c:"",operation_id:"ListAgents",o_auth2_scopes:null,resolved_security:y,security_source:t._options.security,retry_config:o?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:o?.retry_codes||["408","409","429","5XX"]},T=t._createRequest(A,{security:y,method:"GET",baseURL:o?.server_url,path:g,headers:m,query:_,body:p,userAgent:t._options.user_agent,timeout_ms:o?.timeout_ms||t._options.timeout_ms||-1},o);if(!T.ok)return[T,{status:"invalid"}];let C=T.value,w=await t._do(C,{context:A,isErrorStatusCode:B=>oe({status:B},["4XX","5XX"]),retryConfig:A.retry_config,retryCodes:A.retry_codes});if(!w.ok)return[w,{status:"request-error",request:C}];let k=w.value,[O]=await ce(Y("4XX"),Y("5XX"),ge("default"))(k,C);return O.ok?[O,{status:"complete",request:C,response:k}]:[O,{status:"complete",request:C,response:k}]}var wu=class extends gt{list(e,n){return le(W_(this,e?.api_version,e?.page_size,e?.page_token,e?.parent,n))}create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return le($_(this,i,r,n))}delete(e,n,r){return le(X_(this,e,n?.api_version,r))}get(e,n,r){return le(J_(this,e,n?.api_version,r))}};function K_(t,e,n,r){return new re(Gx(t,e,n,r))}async function Gx(t,e,n,r){var i,o,a;let c={body:e,api_version:n},d=yt("body",c.body,{explode:!0}),f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/credentials")(f),h=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"CreateCredential",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function Y_(t,e,n,r){return new re(Lx(t,e,n,r))}async function Lx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/credentials/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"DeleteCredential",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"DELETE",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function z_(t,e,n,r){return new re(Ox(t,e,n,r))}async function Ox(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/credentials/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"GetCredential",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"GET",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function Q_(t,e,n,r,i){return new re(qx(t,e,n,r,i))}async function qx(t,e,n,r,i){var o,a,u;let d={api_version:e,page_size:n,page_token:r},f=null,p={api_version:K("api_version",(o=d?.api_version)!==null&&o!==void 0?o:t._options.api_version,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/credentials")(p),g=Et({page_size:d?.page_size,page_token:d?.page_token}),_=new Headers(ue({Accept:"application/json"})),m=await fe(t._options.security),E=de(m),y={options:t._options,base_url:(u=(a=i?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"ListCredentials",o_auth2_scopes:null,resolved_security:E,security_source:t._options.security,retry_config:i?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:i?.retry_codes||["408","409","429","5XX"]},A=t._createRequest(y,{security:E,method:"GET",baseURL:i?.server_url,path:h,headers:_,query:g,body:f,userAgent:t._options.user_agent,timeout_ms:i?.timeout_ms||t._options.timeout_ms||-1},i);if(!A.ok)return[A,{status:"invalid"}];let T=A.value,C=await t._do(T,{context:y,isErrorStatusCode:O=>oe({status:O},["4XX","5XX"]),retryConfig:y.retry_config,retryCodes:y.retry_codes});if(!C.ok)return[C,{status:"request-error",request:T}];let w=C.value,[k]=await ce(ge(200),Y("4XX"),Y("5XX"))(w,T);return k.ok?[k,{status:"complete",request:T,response:w}]:[k,{status:"complete",request:T,response:w}]}function Z_(t,e,n,r,i,o){return new re(Fx(t,e,n,r,i,o))}async function Fx(t,e,n,r,i,o){var a,u,c;let f={id:e,body:n,api_version:r,update_mask:i},p=yt("body",f.body,{explode:!0}),h={api_version:K("api_version",(a=f.api_version)!==null&&a!==void 0?a:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",f.id,{explode:!1,charEncoding:"percent"})},g=se("/{api_version}/credentials/{id}")(h),_=Et({update_mask:f.update_mask}),m=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),E=await fe(t._options.security),y=de(E),A={options:t._options,base_url:(c=(u=o?.server_url)!==null&&u!==void 0?u:t._baseURL)!==null&&c!==void 0?c:"",operation_id:"UpdateCredential",o_auth2_scopes:null,resolved_security:y,security_source:t._options.security,retry_config:o?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:o?.retry_codes||["408","409","429","5XX"]},T=t._createRequest(A,{security:y,method:"PATCH",baseURL:o?.server_url,path:g,headers:m,query:_,body:p,userAgent:t._options.user_agent,timeout_ms:o?.timeout_ms||t._options.timeout_ms||-1},o);if(!T.ok)return[T,{status:"invalid"}];let C=T.value,w=await t._do(C,{context:A,isErrorStatusCode:B=>oe({status:B},["4XX","5XX"]),retryConfig:A.retry_config,retryCodes:A.retry_codes});if(!w.ok)return[w,{status:"request-error",request:C}];let k=w.value,[O]=await ce(ge(200),Y("4XX"),Y("5XX"))(k,C);return O.ok?[O,{status:"complete",request:C,response:k}]:[O,{status:"complete",request:C,response:k}]}var Ru=class extends gt{list(e,n){return le(Q_(this,e?.api_version,e?.page_size,e?.page_token,n))}create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return le(K_(this,i,r,n))}delete(e,n,r){return le(Y_(this,e,n?.api_version,r))}get(e,n,r){return le(z_(this,e,n?.api_version,r))}update(e,n,r){let{api_version:i,update_mask:o}=n,a=Re(n,["api_version","update_mask"]);return le(Z_(this,e,a,i,o,r))}};function j_(t,e,n,r){return new re(Bx(t,e,n,r))}async function Bx(t,e,n,r){var i,o,a;let c={body:e,api_version:n},d=yt("body",c.body,{explode:!0}),f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/environments")(f),h=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"CreateEnvironment",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function ey(t,e,n,r){return new re(Hx(t,e,n,r))}async function Hx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/environments/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"DeleteEnvironment",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"DELETE",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function ty(t,e,n,r){return new re(Vx(t,e,n,r))}async function Vx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/environments/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"GetEnvironment",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"GET",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function ny(t,e,n,r,i){return new re($x(t,e,n,r,i))}async function $x(t,e,n,r,i){var o,a,u;let d={api_version:e,page_size:n,page_token:r},f=null,p={api_version:K("api_version",(o=d?.api_version)!==null&&o!==void 0?o:t._options.api_version,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/environments")(p),g=Et({page_size:d?.page_size,page_token:d?.page_token}),_=new Headers(ue({Accept:"application/json"})),m=await fe(t._options.security),E=de(m),y={options:t._options,base_url:(u=(a=i?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"ListEnvironments",o_auth2_scopes:null,resolved_security:E,security_source:t._options.security,retry_config:i?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:i?.retry_codes||["408","409","429","5XX"]},A=t._createRequest(y,{security:E,method:"GET",baseURL:i?.server_url,path:h,headers:_,query:g,body:f,userAgent:t._options.user_agent,timeout_ms:i?.timeout_ms||t._options.timeout_ms||-1},i);if(!A.ok)return[A,{status:"invalid"}];let T=A.value,C=await t._do(T,{context:y,isErrorStatusCode:O=>oe({status:O},["4XX","5XX"]),retryConfig:y.retry_config,retryCodes:y.retry_codes});if(!C.ok)return[C,{status:"request-error",request:T}];let w=C.value,[k]=await ce(Y("4XX"),Y("5XX"),ge("default"))(w,T);return k.ok?[k,{status:"complete",request:T,response:w}]:[k,{status:"complete",request:T,response:w}]}function ry(t,e,n,r,i,o,a,u){return new re(Xx(t,e,n,r,i,o,a,u))}async function Xx(t,e,n,r,i,o,a,u){var c,d,f;let h={environment:e,path:n,api_version:r,page_size:i,page_token:o,recursive:a},g=null,_={api_version:K("api_version",(c=h.api_version)!==null&&c!==void 0?c:t._options.api_version,{explode:!1,charEncoding:"percent"}),environment:K("environment",h.environment,{explode:!1,charEncoding:"percent"}),path:K("path",h.path,{explode:!1,charEncoding:"percentExceptReserved"})},m=se("/{api_version}/environments/{environment}/files/{path}")(_),E=Et({page_size:h.page_size,page_token:h.page_token,recursive:h.recursive}),y=new Headers(ue({Accept:"application/json"})),A=await fe(t._options.security),T=de(A),C={options:t._options,base_url:(f=(d=u?.server_url)!==null&&d!==void 0?d:t._baseURL)!==null&&f!==void 0?f:"",operation_id:"GetEnvironmentFiles",o_auth2_scopes:null,resolved_security:T,security_source:t._options.security,retry_config:u?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:u?.retry_codes||["408","409","429","5XX"]},w=t._createRequest(C,{security:T,method:"GET",baseURL:u?.server_url,path:m,headers:y,query:E,body:g,userAgent:t._options.user_agent,timeout_ms:u?.timeout_ms||t._options.timeout_ms||-1},u);if(!w.ok)return[w,{status:"invalid"}];let k=w.value,O=await t._do(k,{context:C,isErrorStatusCode:q=>oe({status:q},["4XX","5XX"]),retryConfig:C.retry_config,retryCodes:C.retry_codes});if(!O.ok)return[O,{status:"request-error",request:k}];let B=O.value,[N]=await ce(ge(200),Y("4XX"),Y("5XX"))(B,k);return N.ok?[N,{status:"complete",request:k,response:B}]:[N,{status:"complete",request:k,response:B}]}var Pu=class extends gt{list(e,n,r,i){return le(ry(this,e,n,r?.api_version,r?.page_size,r?.page_token,r?.recursive,i))}};function iy(t,e,n,r,i,o,a,u,c,d,f){return new re(Jx(t,e,n,r,i,o,a,u,c,d,f))}async function Jx(t,e,n,r,i,o,a,u,c,d,f){var p,h,g;let m={environment:e,path:n,"X-Goog-Upload-Command":r,"X-Goog-Upload-Header-Content-Length":i,"X-Goog-Upload-Header-Content-Type":o,"X-Goog-Upload-Protocol":a,api_version:u,extract:c,overwrite:d},E=null,y={api_version:K("api_version",(p=m.api_version)!==null&&p!==void 0?p:t._options.api_version,{explode:!1,charEncoding:"percent"}),environment:K("environment",m.environment,{explode:!1,charEncoding:"percent"}),path:K("path",m.path,{explode:!1,charEncoding:"percentExceptReserved"})},A=se("/upload/{api_version}/environments/{environment}/files/{path}")(y),T=Et({extract:m.extract,overwrite:m.overwrite}),C=new Headers(ue({Accept:"*/*","X-Goog-Upload-Command":K("X-Goog-Upload-Command",m["X-Goog-Upload-Command"],{explode:!1,charEncoding:"none"}),"X-Goog-Upload-Header-Content-Length":K("X-Goog-Upload-Header-Content-Length",m["X-Goog-Upload-Header-Content-Length"],{explode:!1,charEncoding:"none"}),"X-Goog-Upload-Header-Content-Type":K("X-Goog-Upload-Header-Content-Type",m["X-Goog-Upload-Header-Content-Type"],{explode:!1,charEncoding:"none"}),"X-Goog-Upload-Protocol":K("X-Goog-Upload-Protocol",m["X-Goog-Upload-Protocol"],{explode:!1,charEncoding:"none"})})),w=await fe(t._options.security),k=de(w),O={options:t._options,base_url:(g=(h=f?.server_url)!==null&&h!==void 0?h:t._baseURL)!==null&&g!==void 0?g:"",operation_id:"StartEnvironmentFileUpload",o_auth2_scopes:null,resolved_security:k,security_source:t._options.security,retry_config:f?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:f?.retry_codes||["408","409","429","5XX"]},B=t._createRequest(O,{security:k,method:"PUT",baseURL:f?.server_url,path:A,headers:C,query:T,body:E,userAgent:t._options.user_agent,timeout_ms:f?.timeout_ms||t._options.timeout_ms||-1},f);if(!B.ok)return[B,{status:"invalid"}];let N=B.value,q=await t._do(N,{context:O,isErrorStatusCode:M=>oe({status:M},["4XX","5XX"]),retryConfig:O.retry_config,retryCodes:O.retry_codes});if(!q.ok)return[q,{status:"request-error",request:N}];let $=q.value,z={httpMeta:{response:$,request:N}},[ne]=await ce(H_(200,{hdrs:!0}),Y("4XX"),Y("5XX"))($,N,{extraFields:z});return ne.ok?[ne,{status:"complete",request:N,response:$}]:[ne,{status:"complete",request:N,response:$}]}var Nu=class extends gt{startUpload(e,n,r,i){return le(iy(this,e,n,r["X-Goog-Upload-Command"],r["X-Goog-Upload-Header-Content-Length"],r["X-Goog-Upload-Header-Content-Type"],r["X-Goog-Upload-Protocol"],r.api_version,r.extract,r.overwrite,i))}};var xu=class extends gt{get internal(){var e;return(e=this._internal)!==null&&e!==void 0?e:this._internal=new Nu(this._options)}get files(){var e;return(e=this._files)!==null&&e!==void 0?e:this._files=new Pu(this._options)}listEnvironments(e,n){return le(ny(this,e?.api_version,e?.page_size,e?.page_token,n))}createEnvironment(e,n,r){return le(j_(this,e,n,r))}deleteEnvironment(e,n,r){return le(ey(this,e,n?.api_version,r))}getEnvironment(e,n,r){return le(ty(this,e,n?.api_version,r))}};var ku=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="CancelInteractionByIdServerError"}},Du=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="CancelInteractionByIdClientError"}};var Mu=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="CreateInteractionServerError"}},bu=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="CreateInteractionClientError"}};var Uu=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="DeleteInteractionServerError"}},Gu=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="DeleteInteractionClientError"}};var Lu=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="GetInteractionByIdServerError"}},Ou=class extends ot{constructor(e,n){var r;let i=((r=e.error)===null||r===void 0?void 0:r.message)||`API error occurred: ${JSON.stringify(e)}`;super(i,n),this.data$=e,this.error=e.error,this.name="GetInteractionByIdClientError"}};function oy(t,e,n,r){return new re(Wx(t,e,n,r))}async function Wx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/interactions/{id}/cancel")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"cancelInteractionById",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:k=>oe({status:k},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,C={httpMeta:{response:T,request:y}},[w]=await ce(ge(200),on("4XX",Du),on("5XX",ku))(T,y,{extraFields:C});return w.ok?[w,{status:"complete",request:y,response:T}]:[w,{status:"complete",request:y,response:T}]}function sy(t,e,n,r){return new re(Kx(t,e,n,r))}async function Kx(t,e,n,r){var i,o,a,u;let c={body:e,api_version:n},d=c,f=yt("body",d.body,{explode:!0}),p={api_version:K("api_version",(i=d.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/interactions")(p),g=new Headers(ue({"Content-Type":"application/json",Accept:!((o=c?.body)===null||o===void 0)&&o.stream?"text/event-stream":"application/json"})),_=await fe(t._options.security),m=de(_),E={options:t._options,base_url:(u=(a=r?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"CreateInteraction",o_auth2_scopes:null,resolved_security:m,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},y=t._createRequest(E,{security:m,method:"POST",baseURL:r?.server_url,path:h,headers:g,body:f,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!y.ok)return[y,{status:"invalid"}];let A=y.value,T=await t._do(A,{context:E,isErrorStatusCode:O=>oe({status:O},["4XX","5XX"]),retryConfig:E.retry_config,retryCodes:E.retry_codes});if(!T.ok)return[T,{status:"request-error",request:A}];let C=T.value,w={httpMeta:{response:C,request:A}},[k]=await ce(ge(200),B_(200,{sentinel:"[DONE]",flattened:!0}),on("4XX",bu),on("5XX",Mu))(C,A,{extraFields:w});return k.ok?[k,{status:"complete",request:A,response:C}]:[k,{status:"complete",request:A,response:C}]}function Yx(t,e,n,r){return new re(zx(t,e,n,r))}async function zx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/interactions/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"deleteInteraction",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"DELETE",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:k=>oe({status:k},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,C={httpMeta:{response:T,request:y}},[w]=await ce(H_(200),on("4XX",Gu),on("5XX",Uu))(T,y,{extraFields:C});return w.ok?[w,{status:"complete",request:y,response:T}]:[w,{status:"complete",request:y,response:T}]}function ay(t,e,n,r,i,o,a){return new re(Qx(t,e,n,r,i,o,a))}async function Qx(t,e,n,r,i,o,a){var u,c,d;let f={id:e,api_version:n,include_input:r,last_event_id:i,stream:o},p=f,h=null,g={api_version:K("api_version",(u=p.api_version)!==null&&u!==void 0?u:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",p.id,{explode:!1,charEncoding:"percent"})},_=se("/{api_version}/interactions/{id}")(g),m=Et({include_input:p.include_input,last_event_id:p.last_event_id,stream:p.stream}),E=new Headers(ue({Accept:f?.stream?"text/event-stream":"application/json"})),y=await fe(t._options.security),A=de(y),T={options:t._options,base_url:(d=(c=a?.server_url)!==null&&c!==void 0?c:t._baseURL)!==null&&d!==void 0?d:"",operation_id:"getInteractionById",o_auth2_scopes:null,resolved_security:A,security_source:t._options.security,retry_config:a?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:a?.retry_codes||["408","409","429","5XX"]},C=t._createRequest(T,{security:A,method:"GET",baseURL:a?.server_url,path:_,headers:E,query:m,body:h,userAgent:t._options.user_agent,timeout_ms:a?.timeout_ms||t._options.timeout_ms||-1},a);if(!C.ok)return[C,{status:"invalid"}];let w=C.value,k=await t._do(w,{context:T,isErrorStatusCode:q=>oe({status:q},["4XX","5XX"]),retryConfig:T.retry_config,retryCodes:T.retry_codes});if(!k.ok)return[k,{status:"request-error",request:w}];let O=k.value,B={httpMeta:{response:O,request:w}},[N]=await ce(ge(200),B_(200,{sentinel:"[DONE]",flattened:!0}),on("4XX",Ou),on("5XX",Lu))(O,w,{extraFields:B});return N.ok?[N,{status:"complete",request:w,response:O}]:[N,{status:"complete",request:w,response:O}]}var qu=class extends gt{create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return le(sy(this,i,r,n))}delete(e,n,r){return le(Yx(this,e,n?.api_version,r))}get(e,n,r){return le(ay(this,e,n?.api_version,n?.include_input,n?.last_event_id,n?.stream,r))}cancel(e,n,r){return le(oy(this,e,n?.api_version,r))}};function ly(t,e,n,r){return new re(Zx(t,e,n,r))}async function Zx(t,e,n,r){var i,o,a;let c={body:e,api_version:n},d=yt("body",c.body,{explode:!0}),f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/triggers")(f),h=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"CreateTrigger",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function uy(t,e,n,r){return new re(jx(t,e,n,r))}async function jx(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/triggers/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"DeleteTrigger",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"DELETE",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function cy(t,e,n,r){return new re(ek(t,e,n,r))}async function ek(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/triggers/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"GetTrigger",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"GET",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function dy(t,e,n,r,i,o){return new re(tk(t,e,n,r,i,o))}async function tk(t,e,n,r,i,o){var a,u,c;let f={trigger_id:e,api_version:n,page_size:r,page_token:i},p=null,h={api_version:K("api_version",(a=f.api_version)!==null&&a!==void 0?a:t._options.api_version,{explode:!1,charEncoding:"percent"}),trigger_id:K("trigger_id",f.trigger_id,{explode:!1,charEncoding:"percent"})},g=se("/{api_version}/triggers/{trigger_id}/executions")(h),_=Et({page_size:f.page_size,page_token:f.page_token}),m=new Headers(ue({Accept:"application/json"})),E=await fe(t._options.security),y=de(E),A={options:t._options,base_url:(c=(u=o?.server_url)!==null&&u!==void 0?u:t._baseURL)!==null&&c!==void 0?c:"",operation_id:"ListTriggerExecutions",o_auth2_scopes:null,resolved_security:y,security_source:t._options.security,retry_config:o?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:o?.retry_codes||["408","409","429","5XX"]},T=t._createRequest(A,{security:y,method:"GET",baseURL:o?.server_url,path:g,headers:m,query:_,body:p,userAgent:t._options.user_agent,timeout_ms:o?.timeout_ms||t._options.timeout_ms||-1},o);if(!T.ok)return[T,{status:"invalid"}];let C=T.value,w=await t._do(C,{context:A,isErrorStatusCode:B=>oe({status:B},["4XX","5XX"]),retryConfig:A.retry_config,retryCodes:A.retry_codes});if(!w.ok)return[w,{status:"request-error",request:C}];let k=w.value,[O]=await ce(ge(200),Y("4XX"),Y("5XX"))(k,C);return O.ok?[O,{status:"complete",request:C,response:k}]:[O,{status:"complete",request:C,response:k}]}function fy(t,e,n,r,i,o){return new re(nk(t,e,n,r,i,o))}async function nk(t,e,n,r,i,o){var a,u,c;let f={api_version:e,filter:n,page_size:r,page_token:i},p=null,h={api_version:K("api_version",(a=f?.api_version)!==null&&a!==void 0?a:t._options.api_version,{explode:!1,charEncoding:"percent"})},g=se("/{api_version}/triggers")(h),_=Et({filter:f?.filter,page_size:f?.page_size,page_token:f?.page_token}),m=new Headers(ue({Accept:"application/json"})),E=await fe(t._options.security),y=de(E),A={options:t._options,base_url:(c=(u=o?.server_url)!==null&&u!==void 0?u:t._baseURL)!==null&&c!==void 0?c:"",operation_id:"ListTriggers",o_auth2_scopes:null,resolved_security:y,security_source:t._options.security,retry_config:o?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:o?.retry_codes||["408","409","429","5XX"]},T=t._createRequest(A,{security:y,method:"GET",baseURL:o?.server_url,path:g,headers:m,query:_,body:p,userAgent:t._options.user_agent,timeout_ms:o?.timeout_ms||t._options.timeout_ms||-1},o);if(!T.ok)return[T,{status:"invalid"}];let C=T.value,w=await t._do(C,{context:A,isErrorStatusCode:B=>oe({status:B},["4XX","5XX"]),retryConfig:A.retry_config,retryCodes:A.retry_codes});if(!w.ok)return[w,{status:"request-error",request:C}];let k=w.value,[O]=await ce(ge(200),Y("4XX"),Y("5XX"))(k,C);return O.ok?[O,{status:"complete",request:C,response:k}]:[O,{status:"complete",request:C,response:k}]}function py(t,e,n,r){return new re(rk(t,e,n,r))}async function rk(t,e,n,r){var i,o,a;let c={trigger_id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),trigger_id:K("trigger_id",c.trigger_id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/triggers/{trigger_id}/executions")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"RunTrigger",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(ge(200),Y("4XX"),Y("5XX"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function hy(t,e,n,r,i){return new re(ik(t,e,n,r,i))}async function ik(t,e,n,r,i){var o,a,u;let d={id:e,body:n,api_version:r},f=yt("body",d.body,{explode:!0}),p={api_version:K("api_version",(o=d.api_version)!==null&&o!==void 0?o:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",d.id,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/triggers/{id}")(p),g=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),_=await fe(t._options.security),m=de(_),E={options:t._options,base_url:(u=(a=i?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"UpdateTrigger",o_auth2_scopes:null,resolved_security:m,security_source:t._options.security,retry_config:i?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:i?.retry_codes||["408","409","429","5XX"]},y=t._createRequest(E,{security:m,method:"PATCH",baseURL:i?.server_url,path:h,headers:g,body:f,userAgent:t._options.user_agent,timeout_ms:i?.timeout_ms||t._options.timeout_ms||-1},i);if(!y.ok)return[y,{status:"invalid"}];let A=y.value,T=await t._do(A,{context:E,isErrorStatusCode:k=>oe({status:k},["4XX","5XX"]),retryConfig:E.retry_config,retryCodes:E.retry_codes});if(!T.ok)return[T,{status:"request-error",request:A}];let C=T.value,[w]=await ce(ge(200),Y("4XX"),Y("5XX"))(C,A);return w.ok?[w,{status:"complete",request:A,response:C}]:[w,{status:"complete",request:A,response:C}]}var Fu=class extends gt{list(e,n){return le(fy(this,e?.api_version,e?.filter,e?.page_size,e?.page_token,n))}create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return le(ly(this,i,r,n))}delete(e,n,r){return le(uy(this,e,n?.api_version,r))}get(e,n,r){return le(cy(this,e,n?.api_version,r))}update(e,n,r){let{api_version:i}=n,o=Re(n,["api_version"]);return le(hy(this,e,o,i,r))}listExecutions(e,n,r){return le(dy(this,e,n?.api_version,n?.page_size,n?.page_token,r))}run(e,n,r){return le(py(this,e,n?.api_version,r))}};function my(t,e,n,r){return new re(ok(t,e,n,r))}async function ok(t,e,n,r){var i,o,a;let c={body:e,api_version:n},d=yt("body",c.body,{explode:!0}),f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/webhooks")(f),h=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"CreateWebhook",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"POST",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function gy(t,e,n,r){return new re(sk(t,e,n,r))}async function sk(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/webhooks/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"DeleteWebhook",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"DELETE",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function _y(t,e,n,r){return new re(ak(t,e,n,r))}async function ak(t,e,n,r){var i,o,a;let c={id:e,api_version:n},d=null,f={api_version:K("api_version",(i=c.api_version)!==null&&i!==void 0?i:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",c.id,{explode:!1,charEncoding:"percent"})},p=se("/{api_version}/webhooks/{id}")(f),h=new Headers(ue({Accept:"application/json"})),g=await fe(t._options.security),_=de(g),m={options:t._options,base_url:(a=(o=r?.server_url)!==null&&o!==void 0?o:t._baseURL)!==null&&a!==void 0?a:"",operation_id:"GetWebhook",o_auth2_scopes:null,resolved_security:_,security_source:t._options.security,retry_config:r?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:r?.retry_codes||["408","409","429","5XX"]},E=t._createRequest(m,{security:_,method:"GET",baseURL:r?.server_url,path:p,headers:h,body:d,userAgent:t._options.user_agent,timeout_ms:r?.timeout_ms||t._options.timeout_ms||-1},r);if(!E.ok)return[E,{status:"invalid"}];let y=E.value,A=await t._do(y,{context:m,isErrorStatusCode:w=>oe({status:w},["4XX","5XX"]),retryConfig:m.retry_config,retryCodes:m.retry_codes});if(!A.ok)return[A,{status:"request-error",request:y}];let T=A.value,[C]=await ce(Y("4XX"),Y("5XX"),ge("default"))(T,y);return C.ok?[C,{status:"complete",request:y,response:T}]:[C,{status:"complete",request:y,response:T}]}function yy(t,e,n,r,i){return new re(lk(t,e,n,r,i))}async function lk(t,e,n,r,i){var o,a,u;let d={api_version:e,page_size:n,page_token:r},f=null,p={api_version:K("api_version",(o=d?.api_version)!==null&&o!==void 0?o:t._options.api_version,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/webhooks")(p),g=Et({page_size:d?.page_size,page_token:d?.page_token}),_=new Headers(ue({Accept:"application/json"})),m=await fe(t._options.security),E=de(m),y={options:t._options,base_url:(u=(a=i?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"ListWebhooks",o_auth2_scopes:null,resolved_security:E,security_source:t._options.security,retry_config:i?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:i?.retry_codes||["408","409","429","5XX"]},A=t._createRequest(y,{security:E,method:"GET",baseURL:i?.server_url,path:h,headers:_,query:g,body:f,userAgent:t._options.user_agent,timeout_ms:i?.timeout_ms||t._options.timeout_ms||-1},i);if(!A.ok)return[A,{status:"invalid"}];let T=A.value,C=await t._do(T,{context:y,isErrorStatusCode:O=>oe({status:O},["4XX","5XX"]),retryConfig:y.retry_config,retryCodes:y.retry_codes});if(!C.ok)return[C,{status:"request-error",request:T}];let w=C.value,[k]=await ce(Y("4XX"),Y("5XX"),ge("default"))(w,T);return k.ok?[k,{status:"complete",request:T,response:w}]:[k,{status:"complete",request:T,response:w}]}function Ey(t,e,n,r,i){return new re(uk(t,e,n,r,i))}async function uk(t,e,n,r,i){var o,a,u;let d={id:e,api_version:n,body:r},f=yt("body",d.body,{explode:!0}),p={api_version:K("api_version",(o=d.api_version)!==null&&o!==void 0?o:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",d.id,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/webhooks/{id}:ping")(p),g=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),_=await fe(t._options.security),m=de(_),E={options:t._options,base_url:(u=(a=i?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"PingWebhook",o_auth2_scopes:null,resolved_security:m,security_source:t._options.security,retry_config:i?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:i?.retry_codes||["408","409","429","5XX"]},y=t._createRequest(E,{security:m,method:"POST",baseURL:i?.server_url,path:h,headers:g,body:f,userAgent:t._options.user_agent,timeout_ms:i?.timeout_ms||t._options.timeout_ms||-1},i);if(!y.ok)return[y,{status:"invalid"}];let A=y.value,T=await t._do(A,{context:E,isErrorStatusCode:k=>oe({status:k},["4XX","5XX"]),retryConfig:E.retry_config,retryCodes:E.retry_codes});if(!T.ok)return[T,{status:"request-error",request:A}];let C=T.value,[w]=await ce(Y("4XX"),Y("5XX"),ge("default"))(C,A);return w.ok?[w,{status:"complete",request:A,response:C}]:[w,{status:"complete",request:A,response:C}]}function vy(t,e,n,r,i){return new re(ck(t,e,n,r,i))}async function ck(t,e,n,r,i){var o,a,u;let d={id:e,api_version:n,body:r},f=yt("body",d.body,{explode:!0}),p={api_version:K("api_version",(o=d.api_version)!==null&&o!==void 0?o:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",d.id,{explode:!1,charEncoding:"percent"})},h=se("/{api_version}/webhooks/{id}:rotateSigningSecret")(p),g=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),_=await fe(t._options.security),m=de(_),E={options:t._options,base_url:(u=(a=i?.server_url)!==null&&a!==void 0?a:t._baseURL)!==null&&u!==void 0?u:"",operation_id:"RotateSigningSecret",o_auth2_scopes:null,resolved_security:m,security_source:t._options.security,retry_config:i?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:i?.retry_codes||["408","409","429","5XX"]},y=t._createRequest(E,{security:m,method:"POST",baseURL:i?.server_url,path:h,headers:g,body:f,userAgent:t._options.user_agent,timeout_ms:i?.timeout_ms||t._options.timeout_ms||-1},i);if(!y.ok)return[y,{status:"invalid"}];let A=y.value,T=await t._do(A,{context:E,isErrorStatusCode:k=>oe({status:k},["4XX","5XX"]),retryConfig:E.retry_config,retryCodes:E.retry_codes});if(!T.ok)return[T,{status:"request-error",request:A}];let C=T.value,[w]=await ce(Y("4XX"),Y("5XX"),ge("default"))(C,A);return w.ok?[w,{status:"complete",request:A,response:C}]:[w,{status:"complete",request:A,response:C}]}function Ty(t,e,n,r,i,o){return new re(dk(t,e,n,r,i,o))}async function dk(t,e,n,r,i,o){var a,u,c;let f={id:e,api_version:n,update_mask:r,body:i},p=yt("body",f.body,{explode:!0}),h={api_version:K("api_version",(a=f.api_version)!==null&&a!==void 0?a:t._options.api_version,{explode:!1,charEncoding:"percent"}),id:K("id",f.id,{explode:!1,charEncoding:"percent"})},g=se("/{api_version}/webhooks/{id}")(h),_=Et({update_mask:f.update_mask}),m=new Headers(ue({"Content-Type":"application/json",Accept:"application/json"})),E=await fe(t._options.security),y=de(E),A={options:t._options,base_url:(c=(u=o?.server_url)!==null&&u!==void 0?u:t._baseURL)!==null&&c!==void 0?c:"",operation_id:"UpdateWebhook",o_auth2_scopes:null,resolved_security:y,security_source:t._options.security,retry_config:o?.retries||t._options.retry_config||{strategy:"attempt-count-backoff",backoff:{initialInterval:500,maxInterval:8e3,exponent:2,maxElapsedTime:3e4},retryConnectionErrors:!0,maxRetries:4},retry_codes:o?.retry_codes||["408","409","429","5XX"]},T=t._createRequest(A,{security:y,method:"PATCH",baseURL:o?.server_url,path:g,headers:m,query:_,body:p,userAgent:t._options.user_agent,timeout_ms:o?.timeout_ms||t._options.timeout_ms||-1},o);if(!T.ok)return[T,{status:"invalid"}];let C=T.value,w=await t._do(C,{context:A,isErrorStatusCode:B=>oe({status:B},["4XX","5XX"]),retryConfig:A.retry_config,retryCodes:A.retry_codes});if(!w.ok)return[w,{status:"request-error",request:C}];let k=w.value,[O]=await ce(Y("4XX"),Y("5XX"),ge("default"))(k,C);return O.ok?[O,{status:"complete",request:C,response:k}]:[O,{status:"complete",request:C,response:k}]}var Bu=class extends gt{list(e,n){return le(yy(this,e?.api_version,e?.page_size,e?.page_token,n))}create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return le(my(this,i,r,n))}delete(e,n,r){return le(gy(this,e,n?.api_version,r))}get(e,n,r){return le(_y(this,e,n?.api_version,r))}update(e,n,r){let i=n??{},{api_version:o,update_mask:a}=i,u=Re(i,["api_version","update_mask"]),c=n===void 0||Object.keys(u).length===0?void 0:u;return le(Ty(this,e,o,a,c,r))}ping(e,n,r,i){return le(Ey(this,e,n,r,i))}rotateSigningSecret(e,n,r,i){return le(vy(this,e,n,r,i))}};var fk=class extends gt{get environments(){var e;return(e=this._environments)!==null&&e!==void 0?e:this._environments=new xu(this._options)}get agents(){var e;return(e=this._agents)!==null&&e!==void 0?e:this._agents=new wu(this._options)}get credentials(){var e;return(e=this._credentials)!==null&&e!==void 0?e:this._credentials=new Ru(this._options)}get interactions(){var e;return(e=this._interactions)!==null&&e!==void 0?e:this._interactions=new qu(this._options)}get triggers(){var e;return(e=this._triggers)!==null&&e!==void 0?e:this._triggers=new Fu(this._options)}get webhooks(){var e;return(e=this._webhooks)!==null&&e!==void 0?e:this._webhooks=new Bu(this._options)}};var pk=new Set(["lyria-3-pro-preview","lyria-3-clip-preview"]);function hk(t){let e=t.getBaseUrl();if(!e)throw new Error("Base URL must be set.");return e.replace(/\/+$/,"")}function mk(t){let e=gk(t.getApiVersion()),n=t.getProject(),r=t.getLocation();return t.isVertexAI()&&e&&n&&r?`${e}/projects/${encodeURIComponent(n)}/locations/${encodeURIComponent(r)}`:e}function st(t,e={}){var n,r,i,o,a,u,c;let d=e.http_client||(n=t.getFetch)===null||n===void 0?void 0:n.call(t),f=(r=e.http_client)!==null&&r!==void 0?r:d?new Do({fetcher:d}):void 0;return new fk(Object.assign(Object.assign({},e),{http_client:f,api_version:(i=e.api_version)!==null&&i!==void 0?i:mk(t),security:(o=e.security)!==null&&o!==void 0?o:new du({defaultHeaders:Object.assign(Object.assign({},(a=t.getDefaultHeaders)===null||a===void 0?void 0:a.call(t)),(u=t.getHeaders)===null||u===void 0?void 0:u.call(t)),getAuthHeaders:h=>t.getAuthHeaders(h)}),server_url:(c=e.server_url)!==null&&c!==void 0?c:hk(t)}))}var Hu=class{constructor(e){this.parentClient=e}async create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);if(i.stream===!0){let a=await Sl(()=>this.getClient(r).interactions.create(Object.assign(Object.assign({},i),{stream:!0,api_version:r}),ie(n,!0)));return Fg(a)}let o=await me(sy(this.getClient(r),i,r,ie(n)));return Il(o)}async get(e,n={},r){let{api_version:i,stream:o=!1,last_event_id:a,include_input:u}=n??{};if(o===!0){let d=await Sl(()=>this.getClient(i).interactions.get(e,{stream:o,last_event_id:a,include_input:u,api_version:i},ie(r,!0)));return Fg(d)}let c=await me(ay(this.getClient(i),e,i,u,a,o,ie(r)));return Il(c)}async delete(e,n={},r){return Sl(()=>this.getClient(n?.api_version).interactions.delete(e,{api_version:n?.api_version},ie(r)))}async cancel(e,n={},r){return Il(await me(oy(this.getClient(n?.api_version),e,n?.api_version,ie(r))))}getClient(e){var n;return e?st(this.parentClient,{api_version:e}):((n=this.sdk)!==null&&n!==void 0||(this.sdk=st(this.parentClient)),this.sdk)}},Vu=class{constructor(e){this.parentClient=e}async create(e={},n){let r=e??{},{api_version:i}=r,o=Re(r,["api_version"]);return me($_(this.getClient(i),o,i,ie(n)))}async list(e={},n){let{api_version:r,page_size:i,page_token:o,parent:a}=e??{};return me(W_(this.getClient(r),r,i,o,a,ie(n)))}async get(e,n={},r){return me(J_(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}async delete(e,n={},r){return me(X_(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}getClient(e){var n;return e?st(this.parentClient,{api_version:e}):((n=this.sdk)!==null&&n!==void 0||(this.sdk=st(this.parentClient)),this.sdk)}},$u=class{constructor(e){this.parentClient=e}async create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return me(my(this.getClient(),i,r,ie(n)))}async list(e={},n){let{api_version:r,page_size:i,page_token:o}=e??{};return me(yy(this.getClient(),r,i,o,ie(n)))}async get(e,n={},r){return me(_y(this.getClient(),e,n?.api_version,ie(r)))}async update(e,n={},r){let i=n??{},{api_version:o,update_mask:a}=i,u=Re(i,["api_version","update_mask"]);return me(Ty(this.getClient(),e,o,a,u,ie(r)))}async delete(e,n={},r){return me(gy(this.getClient(),e,n?.api_version,ie(r)))}async rotateSigningSecret(e,n={},r){let i=n??{},{api_version:o}=i,a=Re(i,["api_version"]);return me(vy(this.getClient(),e,o,a,ie(r)))}async ping(e,n=void 0,r){let{api_version:i,body:o}=n??{};return me(Ey(this.getClient(),e,i,o,ie(r)))}getClient(){var e;return(e=this.sdk)!==null&&e!==void 0||(this.sdk=st(this.parentClient)),this.sdk}},Xu=class{constructor(e){this.parentClient=e}async create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return me(ly(this.getClient(r),i,r,ie(n)))}async list(e={},n){let{api_version:r,filter:i,page_size:o,page_token:a}=e??{};return me(fy(this.getClient(r),r,i,o,a,ie(n)))}async get(e,n={},r){return me(cy(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}async update(e,n,r){let{api_version:i}=n,o=Re(n,["api_version"]);return me(hy(this.getClient(i),e,o,i,ie(r)))}async delete(e,n={},r){return me(uy(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}async run(e,n={},r){return me(py(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}async listExecutions(e,n={},r){let{api_version:i,page_size:o,page_token:a}=n??{};return me(dy(this.getClient(i),e,i,o,a,ie(r)))}getClient(e){var n;return e?st(this.parentClient,{api_version:e}):((n=this.sdk)!==null&&n!==void 0||(this.sdk=st(this.parentClient)),this.sdk)}};function gk(t){return t.replace(/^\/+|\/+$/g,"")}function ie(t,e=!1){var n,r,i,o;if(!t&&!e)return;let a=t??{},{timeout:u,maxRetries:c,defaultBaseURL:d,query:f,body:p,fetchOptions:h}=a,g=Re(a,["timeout","maxRetries","defaultBaseURL","query","body","fetchOptions"]),_=Object.assign({},g);Uo(f)?_.extra_query=f:qg("query",f),Uo(p)?_.extra_body=p:qg("body",p);let m=(n=g.fetch_options)!==null&&n!==void 0?n:h;m&&(_.fetch_options=m);let E=(r=g.server_url)!==null&&r!==void 0?r:d;E&&(_.server_url=E);let y=(i=g.timeout_ms)!==null&&i!==void 0?i:u;if(y!==void 0&&(_.timeout_ms=y),c!==void 0&&(_.retries={strategy:"attempt-count-backoff",retryConnectionErrors:!0,maxRetries:c}),e){let A=new Headers((o=_.headers)!==null&&o!==void 0?o:m?.headers);A.set("Accept","text/event-stream"),_.headers=A}return _}function qg(t,e){e!=null&&console.warn(`GoogleGenAI.interactions: request option ${t} is not supported by the Google GenAI interactions bridge and will be ignored.`)}async function me(t){let[e,n]=await t.$inspect();if(!e.ok)throw En(e.error);return _k(e.value,n)}async function Sl(t){try{return await t()}catch(e){throw En(e)}}function Fg(t){let e=t;return new Proxy(t,{get(n,r){if(r!==Symbol.asyncIterator){let i=Reflect.get(n,r,n);return typeof i=="function"?i.bind(n):i}return function(){let o=e[Symbol.asyncIterator]();return{async next(...a){try{return await o.next(...a)}catch(u){throw En(u)}},async return(a){if(!o.return)return{done:!0,value:a};try{return await o.return(a)}catch(u){throw En(u)}},async throw(a){if(!o.throw)throw En(a);try{return await o.throw(a)}catch(u){throw En(u)}},[Symbol.asyncIterator](){return this}}}}})}function _k(t,e){return!Uo(t)||e.status!=="complete"?t:Object.assign(Object.assign({},t),{sdkHttpResponse:yk(e.response,t)})}function yk(t,e){let n={};for(let[r,i]of t.headers.entries())n[r]=i;return{headers:n,responseInternal:t,json:async()=>e}}function Il(t){let e=Ek(t);return e?Tk(e):t}function Ek(t){if(Uo(t)){if(Array.isArray(t.steps))return t;if(vk(t)){let e=t.outputs;if(Array.isArray(e)){let{outputs:n}=t,r=Re(t,["outputs"]);return Object.assign(Object.assign({},r),{steps:[{type:"model_output",content:e}]})}}return Object.assign(Object.assign({},t),{steps:[]})}}function vk(t){let e=t.model;return typeof e=="string"&&pk.has(e)}function Uo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Tk(t){var e,n;let r=Ak(t),i=(e=r.steps)!==null&&e!==void 0?e:[],o=[],a=!1;e:for(let p=i.length-1;p>=0;p--){let h=i[p];if(h.type==="user_input")break;if(h.type!=="model_output"||!h.content){if(a)break;continue}let g=h.content;for(let _=g.length-1;_>=0;_--){let m=g[_];if(m.type==="text")a=!0,o.push((n=m.text)!==null&&n!==void 0?n:"");else if(a)break e}}let u,c,d;for(let p=i.length-1;p>=0;p--){let h=i[p];if(h.type==="user_input")break;if(h.type==="model_output"&&h.content)for(let g=h.content.length-1;g>=0;g--){let _=h.content[g];_.type==="image"&&!u&&(u=_),_.type==="audio"&&!c&&(c=_),_.type==="video"&&!d&&(d=_)}}let f=o.reverse().join("");return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},r),f&&{output_text:f}),u?{output_image:u}:{}),c?{output_audio:c}:{}),d?{output_video:d}:{})}function Ak(t){return Object.assign(Object.assign({},t),{created:Bg(t.created),updated:Bg(t.updated)})}function Bg(t){return t instanceof Date?t.toISOString():t}function Ck(t){let e=t.slice(t.lastIndexOf(".")+1).toLowerCase();return{txt:"text/plain",json:"application/json",js:"text/javascript",mjs:"text/javascript",ts:"text/plain",py:"text/x-python",html:"text/html",htm:"text/html",css:"text/css",csv:"text/csv",xml:"application/xml",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",pdf:"application/pdf",zip:"application/zip",tar:"application/x-tar",gz:"application/gzip"}[e]}var Ju=class{constructor(e,n){this.resolveClient=e,this.parentClient=n}async list(e,n){return me(ry(this.resolveClient(e.api_version),e.environment,e.path,e.api_version,e.page_size,e.page_token,e.recursive,ie(n)))}async download(e,n){var r,i;let o=e.environment;if(!o)throw new Error("environment is required.");let a=o.startsWith("environments/")?o:`environments/${o}`,u=e.path.replace(/^\/+/,""),c=`${a}/files/${u}`,d=this.parentClient;if(!d||typeof d.request!="function")throw new Error("apiClient is required to download files.");let f=await d.request({path:c,httpMethod:"GET",queryParams:{alt:"media"},httpOptions:Object.assign(Object.assign({},n?.httpOptions),{apiVersion:(r=e.api_version)!==null&&r!==void 0?r:(i=n?.httpOptions)===null||i===void 0?void 0:i.apiVersion})});if(f&&f.responseInternal&&typeof f.responseInternal.arrayBuffer=="function"){let p=await f.responseInternal.arrayBuffer();return new Uint8Array(p)}throw new Error("Unexpected response type from download")}async upload(e,n){var r,i,o,a,u,c,d,f;let p=e.environment;if(!p)throw new Error("environment is required.");p.startsWith("environments/")||`${p}`;let h=e.path.replace(/^\/+/,""),g=this.parentClient;if(!g||typeof g.request!="function")throw new Error("apiClient is required to upload files.");let _,m=0,E=e.mime_type;if(typeof e.file=="string"){let q;try{let $=globalThis.require;$&&(q=$("fs").readFileSync(e.file))}catch{}if(!q&&typeof globalThis.process<"u")try{let $=(i=(r=globalThis.process.mainModule)===null||r===void 0?void 0:r.require)!==null&&i!==void 0?i:globalThis.require;$&&(q=$("fs").readFileSync(e.file))}catch{}if(q)_=new Uint8Array(q.buffer,q.byteOffset,q.byteLength),m=_.byteLength;else throw new Error(`Unable to read file from path "${e.file}". File path string inputs are only supported in Node.js environments.`);E||(E=Ck(e.file))}else if(typeof Blob<"u"&&e.file instanceof Blob)_=e.file,m=e.file.size,!E&&e.file.type&&(E=e.file.type);else if(e.file instanceof Uint8Array||e.file instanceof ArrayBuffer)_=e.file instanceof ArrayBuffer?new Uint8Array(e.file):e.file,m=_.byteLength;else if(typeof globalThis.Buffer<"u"&&typeof globalThis.Buffer.isBuffer=="function"&&globalThis.Buffer.isBuffer(e.file)){let q=e.file;_=new Uint8Array(q.buffer,q.byteOffset,q.byteLength),m=_.byteLength}else throw new Error("Unsupported file type for upload.");E||(E="application/octet-stream");let y=p.startsWith("environments/")?p.replace(/^environments\//,""):p,[A,T]=await iy(this.resolveClient(e.api_version),y,h,"start",m,E,"resumable",e.api_version,e.extract,e.overwrite,ie(n)).$inspect();if(!A.ok)throw En(A.error);let C=T.status==="complete"?(u=(a=(o=T.response)===null||o===void 0?void 0:o.headers)===null||a===void 0?void 0:a.get("x-goog-upload-url"))!==null&&u!==void 0?u:(d=(c=T.response)===null||c===void 0?void 0:c.headers)===null||d===void 0?void 0:d.get("X-Goog-Upload-URL"):void 0;if(!C)throw new Error("Failed to get upload URL from upload handshake response.");let w=8*1024*1024,k=0,O,B=_ instanceof Blob?_:new Blob([_]);for(;k<m||m===0&&k===0;){let q=Math.min(k+w,m),$=B.slice(k,q),z=q>=m,ne=z?"upload, finalize":"upload";if(O=await g.request({path:"",body:$,httpMethod:"POST",httpOptions:Object.assign(Object.assign({},n?.httpOptions),{apiVersion:"",baseUrl:C,headers:Object.assign(Object.assign({},((f=n?.httpOptions)===null||f===void 0?void 0:f.headers)||{}),{"X-Goog-Upload-Command":ne,"X-Goog-Upload-Offset":`${k}`})})}),k=q,z)break}let N;if(O&&typeof O.json=="function"?N=await O.json():O&&O.responseInternal&&typeof O.responseInternal.json=="function"&&(N=await O.responseInternal.json()),N&&typeof N=="object"){if(Array.isArray(N.files))return N;if(N.name||N.path)return{files:[N]};if(N.file&&typeof N.file=="object")return{files:[N.file]}}return N}},Wu=class{constructor(e){this.parentClient=e,this.files=new Ju(n=>this.getClient(n),this.parentClient)}async create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return me(j_(this.getClient(r),i,r,ie(n)))}async list(e={},n){let{api_version:r,page_size:i,page_token:o}=e??{};return me(ny(this.getClient(r),r,i,o,ie(n)))}async get(e,n={},r){return me(ty(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}async delete(e,n={},r){return me(ey(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}getClient(e){var n;return e?st(this.parentClient,{api_version:e}):((n=this.sdk)!==null&&n!==void 0||(this.sdk=st(this.parentClient)),this.sdk)}},Ku=class{constructor(e){this.parentClient=e}async create(e,n){let{api_version:r}=e,i=Re(e,["api_version"]);return me(K_(this.getClient(r),i,r,ie(n)))}async list(e={},n){let{api_version:r,page_size:i,page_token:o}=e??{};return me(Q_(this.getClient(r),r,i,o,ie(n)))}async get(e,n={},r){return me(z_(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}async update(e,n,r){let{api_version:i,update_mask:o}=n,a=Re(n,["api_version","update_mask"]);return me(Z_(this.getClient(i),e,a,i,o,ie(r)))}async delete(e,n={},r){return me(Y_(this.getClient(n?.api_version),e,n?.api_version,ie(r)))}getClient(e){var n;return e?st(this.parentClient,{api_version:e}):((n=this.sdk)!==null&&n!==void 0||(this.sdk=st(this.parentClient)),this.sdk)}};var Hg="x-goog-api-key",br="https://www.googleapis.com/auth/cloud-platform",Yu=class{constructor(e){if(e.apiKey!==void 0){this.apiKey=e.apiKey;return}let n=Sk(e.googleAuthOptions);this.googleAuth=new Jg.GoogleAuth(n)}async addAuthHeaders(e,n){if(this.apiKey!==void 0){if(this.apiKey.startsWith("auth_tokens/"))throw new Error("Ephemeral tokens are only supported by the live API.");this.addKeyHeader(e);return}return this.addGoogleAuthHeaders(e,n)}addKeyHeader(e){if(e.get(Hg)===null){if(this.apiKey===void 0)throw new Error("Trying to set API key header but apiKey is not set");e.append(Hg,this.apiKey)}}async addGoogleAuthHeaders(e,n){if(this.googleAuth===void 0)throw new Error("Trying to set google-auth headers but googleAuth is unset");let r=await this.googleAuth.getRequestHeaders(n);for(let[i,o]of r)e.get(i)===null&&e.append(i,o)}};function Sk(t){let e;if(t){if(e=t,e.scopes){if(typeof e.scopes=="string"&&e.scopes!==br||Array.isArray(e.scopes)&&e.scopes.indexOf(br)<0)throw new Error(`Invalid auth scopes. Scopes must include: ${br}`)}else return e.scopes=[br],e;return e}else return e={scopes:[br]},e}var zu=class{async download(e,n){if(e.downloadPath){let r=await Ik(e,n);if(r instanceof en){let i=qC(e.downloadPath);BC.fromWeb(r.responseInternal.body).pipe(i),await HC(i)}else try{await FC(e.downloadPath,r,{encoding:"base64"})}catch(i){throw new Error(`Failed to write file to ${e.downloadPath}: ${i}`)}}}};async function Ik(t,e){var n,r,i;let o=cc(t.file);if(o!==void 0)return await e.request({path:`files/${o}:download`,httpMethod:"GET",queryParams:{alt:"media"},httpOptions:(n=t.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=t.config)===null||r===void 0?void 0:r.abortSignal});if(r_(t.file)){let a=(i=t.file.video)===null||i===void 0?void 0:i.videoBytes;if(typeof a=="string")return a;throw new Error("Failed to download generated video, Uri or videoBytes not found.")}else if(i_(t.file)){let a=t.file.videoBytes;if(typeof a=="string")return a;throw new Error("Failed to download video, Uri or videoBytes not found.")}else throw new Error("Unsupported file type")}var Qu=class{create(e,n,r){return new Zu(e,n,r)}},Zu=class{constructor(e,n,r){this.url=e,this.headers=n,this.callbacks=r}connect(){this.ws=new Al.default(this.url,{headers:this.headers}),this.ws.onopen=this.callbacks.onopen,this.ws.onerror=this.callbacks.onerror,this.ws.onclose=this.callbacks.onclose,this.ws.onmessage=this.callbacks.onmessage}send(e){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.send(e)}close(){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.close()}};function wk(t,e){let n={},r=s(t,["name"]);return r!=null&&l(n,["_url","name"],r),n}function Rk(t,e){let n={},r=s(t,["name"]);return r!=null&&l(n,["_url","name"],r),n}function Pk(t,e){let n={},r=s(t,["sdkHttpResponse"]);return r!=null&&l(n,["sdkHttpResponse"],r),n}function Nk(t,e){let n={},r=s(t,["sdkHttpResponse"]);return r!=null&&l(n,["sdkHttpResponse"],r),n}function ju(t,e){let n={},r=s(t,["parts"]);if(r!=null){let o=r;Array.isArray(o)&&(o=o.map(a=>Hk(a))),l(n,["parts"],o)}let i=s(t,["role"]);return i!=null&&l(n,["role"],i),n}function xk(t,e,n){let r={};if(s(t,["validationDataset"])!==void 0)throw new Error("validationDataset parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let i=s(t,["tunedModelDisplayName"]);if(e!==void 0&&i!=null&&l(e,["displayName"],i),s(t,["description"])!==void 0)throw new Error("description parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let o=s(t,["epochCount"]);e!==void 0&&o!=null&&l(e,["tuningTask","hyperparameters","epochCount"],o);let a=s(t,["learningRateMultiplier"]);if(a!=null&&l(r,["tuningTask","hyperparameters","learningRateMultiplier"],a),s(t,["exportLastCheckpointOnly"])!==void 0)throw new Error("exportLastCheckpointOnly parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["preTunedModelCheckpointId"])!==void 0)throw new Error("preTunedModelCheckpointId parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["adapterSize"])!==void 0)throw new Error("adapterSize parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["tuningMode"])!==void 0)throw new Error("tuningMode parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["customBaseModel"])!==void 0)throw new Error("customBaseModel parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let u=s(t,["batchSize"]);e!==void 0&&u!=null&&l(e,["tuningTask","hyperparameters","batchSize"],u);let c=s(t,["learningRate"]);if(e!==void 0&&c!=null&&l(e,["tuningTask","hyperparameters","learningRate"],c),s(t,["labels"])!==void 0)throw new Error("labels parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["beta"])!==void 0)throw new Error("beta parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["baseTeacherModel"])!==void 0)throw new Error("baseTeacherModel parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["tunedTeacherModelSource"])!==void 0)throw new Error("tunedTeacherModelSource parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["sftLossWeightMultiplier"])!==void 0)throw new Error("sftLossWeightMultiplier parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["outputUri"])!==void 0)throw new Error("outputUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["rewardConfig"])!==void 0)throw new Error("rewardConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["compositeRewardConfig"])!==void 0)throw new Error("compositeRewardConfig parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["samplesPerPrompt"])!==void 0)throw new Error("samplesPerPrompt parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["evaluateInterval"])!==void 0)throw new Error("evaluateInterval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["checkpointInterval"])!==void 0)throw new Error("checkpointInterval parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["maxOutputTokens"])!==void 0)throw new Error("maxOutputTokens parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["thinkingLevel"])!==void 0)throw new Error("thinkingLevel parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["validationDatasetUri"])!==void 0)throw new Error("validationDatasetUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["encryptionSpec"])!==void 0)throw new Error("encryptionSpec parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");return r}function kk(t,e,n){let r={},i=s(n,["config","method"]);if(i===void 0&&(i="SUPERVISED_FINE_TUNING"),i==="SUPERVISED_FINE_TUNING"){let M=s(t,["validationDataset"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec"],co(M))}else if(i==="PREFERENCE_TUNING"){let M=s(t,["validationDataset"]);e!==void 0&&M!=null&&l(e,["preferenceOptimizationSpec"],co(M))}else if(i==="DISTILLATION"){let M=s(t,["validationDataset"]);e!==void 0&&M!=null&&l(e,["distillationSpec"],co(M))}else if(i==="REINFORCEMENT_TUNING"){let M=s(t,["validationDataset"]);e!==void 0&&M!=null&&l(e,["reinforcementTuningSpec"],co(M))}let o=s(t,["tunedModelDisplayName"]);e!==void 0&&o!=null&&l(e,["tunedModelDisplayName"],o);let a=s(t,["description"]);e!==void 0&&a!=null&&l(e,["description"],a);let u=s(n,["config","method"]);if(u===void 0&&(u="SUPERVISED_FINE_TUNING"),u==="SUPERVISED_FINE_TUNING"){let M=s(t,["epochCount"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","hyperParameters","epochCount"],M)}else if(u==="PREFERENCE_TUNING"){let M=s(t,["epochCount"]);e!==void 0&&M!=null&&l(e,["preferenceOptimizationSpec","hyperParameters","epochCount"],M)}else if(u==="DISTILLATION"){let M=s(t,["epochCount"]);e!==void 0&&M!=null&&l(e,["distillationSpec","hyperParameters","epochCount"],M)}else if(u==="REINFORCEMENT_TUNING"){let M=s(t,["epochCount"]);e!==void 0&&M!=null&&l(e,["reinforcementTuningSpec","hyperParameters","epochCount"],M)}let c=s(n,["config","method"]);if(c===void 0&&(c="SUPERVISED_FINE_TUNING"),c==="SUPERVISED_FINE_TUNING"){let M=s(t,["learningRateMultiplier"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","hyperParameters","learningRateMultiplier"],M)}else if(c==="PREFERENCE_TUNING"){let M=s(t,["learningRateMultiplier"]);e!==void 0&&M!=null&&l(e,["preferenceOptimizationSpec","hyperParameters","learningRateMultiplier"],M)}else if(c==="DISTILLATION"){let M=s(t,["learningRateMultiplier"]);e!==void 0&&M!=null&&l(e,["distillationSpec","hyperParameters","learningRateMultiplier"],M)}else if(c==="REINFORCEMENT_TUNING"){let M=s(t,["learningRateMultiplier"]);e!==void 0&&M!=null&&l(e,["reinforcementTuningSpec","hyperParameters","learningRateMultiplier"],M)}let d=s(n,["config","method"]);if(d===void 0&&(d="SUPERVISED_FINE_TUNING"),d==="SUPERVISED_FINE_TUNING"){let M=s(t,["exportLastCheckpointOnly"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","exportLastCheckpointOnly"],M)}else if(d==="PREFERENCE_TUNING"){let M=s(t,["exportLastCheckpointOnly"]);e!==void 0&&M!=null&&l(e,["preferenceOptimizationSpec","exportLastCheckpointOnly"],M)}else if(d==="DISTILLATION"){let M=s(t,["exportLastCheckpointOnly"]);e!==void 0&&M!=null&&l(e,["distillationSpec","exportLastCheckpointOnly"],M)}let f=s(n,["config","method"]);if(f===void 0&&(f="SUPERVISED_FINE_TUNING"),f==="SUPERVISED_FINE_TUNING"){let M=s(t,["adapterSize"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","hyperParameters","adapterSize"],M)}else if(f==="PREFERENCE_TUNING"){let M=s(t,["adapterSize"]);e!==void 0&&M!=null&&l(e,["preferenceOptimizationSpec","hyperParameters","adapterSize"],M)}else if(f==="DISTILLATION"){let M=s(t,["adapterSize"]);e!==void 0&&M!=null&&l(e,["distillationSpec","hyperParameters","adapterSize"],M)}else if(f==="REINFORCEMENT_TUNING"){let M=s(t,["adapterSize"]);e!==void 0&&M!=null&&l(e,["reinforcementTuningSpec","hyperParameters","adapterSize"],M)}let p=s(n,["config","method"]);if(p===void 0&&(p="SUPERVISED_FINE_TUNING"),p==="SUPERVISED_FINE_TUNING"){let M=s(t,["tuningMode"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","tuningMode"],M)}else if(p==="DISTILLATION"){let M=s(t,["tuningMode"]);e!==void 0&&M!=null&&l(e,["distillationSpec","tuningMode"],M)}let h=s(t,["customBaseModel"]);e!==void 0&&h!=null&&l(e,["customBaseModel"],h);let g=s(n,["config","method"]);if(g===void 0&&(g="SUPERVISED_FINE_TUNING"),g==="SUPERVISED_FINE_TUNING"){let M=s(t,["batchSize"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","hyperParameters","batchSize"],M)}else if(g==="DISTILLATION"){let M=s(t,["batchSize"]);e!==void 0&&M!=null&&l(e,["distillationSpec","hyperParameters","batchSize"],M)}else if(g==="REINFORCEMENT_TUNING"){let M=s(t,["batchSize"]);e!==void 0&&M!=null&&l(e,["reinforcementTuningSpec","hyperParameters","batchSize"],M)}let _=s(n,["config","method"]);if(_===void 0&&(_="SUPERVISED_FINE_TUNING"),_==="SUPERVISED_FINE_TUNING"){let M=s(t,["learningRate"]);e!==void 0&&M!=null&&l(e,["supervisedTuningSpec","hyperParameters","learningRate"],M)}else if(_==="DISTILLATION"){let M=s(t,["learningRate"]);e!==void 0&&M!=null&&l(e,["distillationSpec","hyperParameters","learningRate"],M)}let m=s(t,["labels"]);e!==void 0&&m!=null&&l(e,["labels"],m);let E=s(t,["beta"]);e!==void 0&&E!=null&&l(e,["preferenceOptimizationSpec","hyperParameters","beta"],E);let y=s(t,["baseTeacherModel"]);e!==void 0&&y!=null&&l(e,["distillationSpec","baseTeacherModel"],y);let A=s(t,["tunedTeacherModelSource"]);e!==void 0&&A!=null&&l(e,["distillationSpec","tunedTeacherModelSource"],A);let T=s(t,["sftLossWeightMultiplier"]);e!==void 0&&T!=null&&l(e,["distillationSpec","hyperParameters","sftLossWeightMultiplier"],T);let C=s(t,["outputUri"]);e!==void 0&&C!=null&&l(e,["outputUri"],C);let w=s(t,["rewardConfig"]);e!==void 0&&w!=null&&l(e,["reinforcementTuningSpec","singleRewardConfig"],w);let k=s(t,["compositeRewardConfig"]);e!==void 0&&k!=null&&l(e,["reinforcementTuningSpec","compositeRewardConfig"],k);let O=s(t,["samplesPerPrompt"]);e!==void 0&&O!=null&&l(e,["reinforcementTuningSpec","hyperParameters","samplesPerPrompt"],O);let B=s(t,["evaluateInterval"]);e!==void 0&&B!=null&&l(e,["reinforcementTuningSpec","hyperParameters","evaluateInterval"],B);let N=s(t,["checkpointInterval"]);e!==void 0&&N!=null&&l(e,["reinforcementTuningSpec","hyperParameters","checkpointInterval"],N);let q=s(t,["maxOutputTokens"]);e!==void 0&&q!=null&&l(e,["reinforcementTuningSpec","hyperParameters","maxOutputTokens"],q);let $=s(t,["thinkingLevel"]);e!==void 0&&$!=null&&l(e,["reinforcementTuningSpec","hyperParameters","thinkingLevel"],$);let z=s(t,["validationDatasetUri"]);e!==void 0&&z!=null&&l(e,["reinforcementTuningSpec","validationDatasetUri"],z);let ne=s(t,["encryptionSpec"]);return e!==void 0&&ne!=null&&l(e,["encryptionSpec"],ne),r}function Dk(t,e){let n={},r=s(t,["baseModel"]);r!=null&&l(n,["baseModel"],r);let i=s(t,["preTunedModel"]);i!=null&&l(n,["preTunedModel"],i);let o=s(t,["trainingDataset"]);o!=null&&Xk(o);let a=s(t,["config"]);return a!=null&&xk(a,n),n}function Mk(t,e){let n={},r=s(t,["baseModel"]);r!=null&&l(n,["baseModel"],r);let i=s(t,["preTunedModel"]);i!=null&&l(n,["preTunedModel"],i);let o=s(t,["trainingDataset"]);o!=null&&Jk(o,n,e);let a=s(t,["config"]);return a!=null&&kk(a,n,e),n}function Ay(t,e){let n={},r=s(t,["epochCount"]);r!=null&&l(n,["epochCount"],r);let i=s(t,["learningRateMultiplier"]);i!=null&&l(n,["learningRateMultiplier"],i);let o=s(t,["adapterSize"]);o!=null&&l(n,["adapterSize"],o);let a=s(t,["batchSize"]);a!=null&&l(n,["batchSize"],a);let u=s(t,["learningRate"]);u!=null&&l(n,["learningRate"],u);let c=s(t,["generationConfig"]);return c!=null&&l(n,["generationConfig"],Gk(c)),n}function bk(t,e){let n={},r=s(t,["promptDatasetUri"]);r!=null&&l(n,["promptDatasetUri"],r);let i=s(t,["validationDatasetUri"]);i!=null&&l(n,["validationDatasetUri"],i);let o=s(t,["baseTeacherModel"]);o!=null&&l(n,["baseTeacherModel"],o);let a=s(t,["tunedTeacherModelSource"]);a!=null&&l(n,["tunedTeacherModelSource"],a);let u=s(t,["hyperparameters"]);return u!=null&&l(n,["hyperparameters"],Ay(u)),n}function Uk(t,e){let n={},r=s(t,["baseTeacherModel"]);r!=null&&l(n,["baseTeacherModel"],r);let i=s(t,["hyperParameters"]);i!=null&&l(n,["hyperParameters"],Ay(i));let o=s(t,["pipelineRootDirectory"]);o!=null&&l(n,["pipelineRootDirectory"],o);let a=s(t,["promptDatasetUri"]);a!=null&&l(n,["promptDatasetUri"],a);let u=s(t,["studentModel"]);u!=null&&l(n,["studentModel"],u);let c=s(t,["trainingDatasetUri"]);c!=null&&l(n,["trainingDatasetUri"],c);let d=s(t,["tunedTeacherModelSource"]);d!=null&&l(n,["tunedTeacherModelSource"],d);let f=s(t,["tuningMode"]);f!=null&&l(n,["tuningMode"],f);let p=s(t,["validationDatasetUri"]);return p!=null&&l(n,["validationDatasetUri"],p),n}function Gk(t,e){let n={},r=s(t,["modelConfig"]);r!=null&&l(n,["modelSelectionConfig"],r);let i=s(t,["responseJsonSchema"]);i!=null&&l(n,["responseJsonSchema"],i);let o=s(t,["audioTranscriptionConfig"]);o!=null&&l(n,["audioTranscriptionConfig"],o);let a=s(t,["audioTimestamp"]);a!=null&&l(n,["audioTimestamp"],a);let u=s(t,["candidateCount"]);u!=null&&l(n,["candidateCount"],u);let c=s(t,["enableAffectiveDialog"]);c!=null&&l(n,["enableAffectiveDialog"],c);let d=s(t,["frequencyPenalty"]);d!=null&&l(n,["frequencyPenalty"],d);let f=s(t,["logprobs"]);f!=null&&l(n,["logprobs"],f);let p=s(t,["maxOutputTokens"]);p!=null&&l(n,["maxOutputTokens"],p);let h=s(t,["mediaResolution"]);h!=null&&l(n,["mediaResolution"],h);let g=s(t,["presencePenalty"]);g!=null&&l(n,["presencePenalty"],g);let _=s(t,["responseFormat"]);if(_!=null){let $=_;Array.isArray($)&&($=$.map(z=>z)),l(n,["responseFormat"],$)}let m=s(t,["responseLogprobs"]);m!=null&&l(n,["responseLogprobs"],m);let E=s(t,["responseMimeType"]);E!=null&&l(n,["responseMimeType"],E);let y=s(t,["responseModalities"]);y!=null&&l(n,["responseModalities"],y);let A=s(t,["responseSchema"]);A!=null&&l(n,["responseSchema"],A);let T=s(t,["routingConfig"]);T!=null&&l(n,["routingConfig"],T);let C=s(t,["seed"]);C!=null&&l(n,["seed"],C);let w=s(t,["speechConfig"]);w!=null&&l(n,["speechConfig"],w);let k=s(t,["stopSequences"]);k!=null&&l(n,["stopSequences"],k);let O=s(t,["temperature"]);O!=null&&l(n,["temperature"],O);let B=s(t,["thinkingConfig"]);B!=null&&l(n,["thinkingConfig"],B);let N=s(t,["topK"]);N!=null&&l(n,["topK"],N);let q=s(t,["topP"]);return q!=null&&l(n,["topP"],q),n}function Lk(t,e){let n={},r=s(t,["name"]);return r!=null&&l(n,["_url","name"],r),n}function Ok(t,e){let n={},r=s(t,["name"]);return r!=null&&l(n,["_url","name"],r),n}function qk(t,e,n){let r={},i=s(t,["pageSize"]);e!==void 0&&i!=null&&l(e,["_query","pageSize"],i);let o=s(t,["pageToken"]);e!==void 0&&o!=null&&l(e,["_query","pageToken"],o);let a=s(t,["filter"]);return e!==void 0&&a!=null&&l(e,["_query","filter"],a),r}function Fk(t,e){let n={},r=s(t,["config"]);return r!=null&&qk(r,n),n}function Bk(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["nextPageToken"]);i!=null&&l(n,["nextPageToken"],i);let o=s(t,["tuningJobs"]);if(o!=null){let a=o;Array.isArray(a)&&(a=a.map(u=>ec(u))),l(n,["tuningJobs"],a)}return n}function Hk(t,e){let n={},r=s(t,["mediaResolution"]);if(r!=null&&l(n,["mediaResolution"],r),s(t,["toolCall"])!==void 0)throw new Error("toolCall parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");if(s(t,["toolResponse"])!==void 0)throw new Error("toolResponse parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let i=s(t,["audioTranscription"]);i!=null&&l(n,["audioTranscription"],i);let o=s(t,["codeExecutionResult"]);o!=null&&l(n,["codeExecutionResult"],o);let a=s(t,["executableCode"]);a!=null&&l(n,["executableCode"],a);let u=s(t,["fileData"]);u!=null&&l(n,["fileData"],u);let c=s(t,["functionCall"]);c!=null&&l(n,["functionCall"],c);let d=s(t,["functionResponse"]);d!=null&&l(n,["functionResponse"],d);let f=s(t,["inlineData"]);f!=null&&l(n,["inlineData"],f);let p=s(t,["text"]);p!=null&&l(n,["text"],p);let h=s(t,["thought"]);h!=null&&l(n,["thought"],h);let g=s(t,["thoughtSignature"]);g!=null&&l(n,["thoughtSignature"],g);let _=s(t,["videoMetadata"]);if(_!=null&&l(n,["videoMetadata"],_),s(t,["partMetadata"])!==void 0)throw new Error("partMetadata parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");let m=s(t,["mediaProcessing"]);return m!=null&&l(n,["mediaProcessing"],m),n}function Vk(t,e){let n={},r=s(t,["references"]);r!=null&&l(n,["references"],r);let i=s(t,["contents"]);if(i!=null){let a=i;Array.isArray(a)&&(a=a.map(u=>ju(u))),l(n,["contents"],a)}let o=s(t,["systemInstruction"]);return o!=null&&l(n,["systemInstruction"],ju(o)),n}function $k(t,e){let n={},r=s(t,["name"]);r!=null&&l(n,["model"],r);let i=s(t,["name"]);return i!=null&&l(n,["endpoint"],i),n}function Xk(t,e){let n={};if(s(t,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");if(s(t,["vertexDatasetResource"])!==void 0)throw new Error("vertexDatasetResource parameter is only supported in Gemini Enterprise Agent Platform mode, not in Gemini Developer API mode.");let r=s(t,["examples"]);if(r!=null){let i=r;Array.isArray(i)&&(i=i.map(o=>o)),l(n,["examples","examples"],i)}return n}function Jk(t,e,n){let r={},i=s(n,["config","method"]);if(i===void 0&&(i="SUPERVISED_FINE_TUNING"),i==="SUPERVISED_FINE_TUNING"){let a=s(t,["gcsUri"]);e!==void 0&&a!=null&&l(e,["supervisedTuningSpec","trainingDatasetUri"],a)}else if(i==="PREFERENCE_TUNING"){let a=s(t,["gcsUri"]);e!==void 0&&a!=null&&l(e,["preferenceOptimizationSpec","trainingDatasetUri"],a)}else if(i==="DISTILLATION"){let a=s(t,["gcsUri"]);e!==void 0&&a!=null&&l(e,["distillationSpec","promptDatasetUri"],a)}else if(i==="REINFORCEMENT_TUNING"){let a=s(t,["gcsUri"]);e!==void 0&&a!=null&&l(e,["reinforcementTuningSpec","trainingDatasetUri"],a)}let o=s(n,["config","method"]);if(o===void 0&&(o="SUPERVISED_FINE_TUNING"),o==="SUPERVISED_FINE_TUNING"){let a=s(t,["vertexDatasetResource"]);e!==void 0&&a!=null&&l(e,["supervisedTuningSpec","trainingDatasetUri"],a)}else if(o==="PREFERENCE_TUNING"){let a=s(t,["vertexDatasetResource"]);e!==void 0&&a!=null&&l(e,["preferenceOptimizationSpec","trainingDatasetUri"],a)}else if(o==="DISTILLATION"){let a=s(t,["vertexDatasetResource"]);e!==void 0&&a!=null&&l(e,["distillationSpec","promptDatasetUri"],a)}else if(o==="REINFORCEMENT_TUNING"){let a=s(t,["vertexDatasetResource"]);e!==void 0&&a!=null&&l(e,["reinforcementTuningSpec","trainingDatasetUri"],a)}if(s(t,["examples"])!==void 0)throw new Error("examples parameter is only supported in Gemini Developer API mode, not in Gemini Enterprise Agent Platform mode.");return r}function Wk(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["name"]);i!=null&&l(n,["name"],i);let o=s(t,["state"]);o!=null&&l(n,["state"],n_(o));let a=s(t,["createTime"]);a!=null&&l(n,["createTime"],a);let u=s(t,["tuningTask","startTime"]);u!=null&&l(n,["startTime"],u);let c=s(t,["tuningTask","completeTime"]);c!=null&&l(n,["endTime"],c);let d=s(t,["updateTime"]);d!=null&&l(n,["updateTime"],d);let f=s(t,["description"]);f!=null&&l(n,["description"],f);let p=s(t,["baseModel"]);p!=null&&l(n,["baseModel"],p);let h=s(t,["_self"]);return h!=null&&l(n,["tunedModel"],$k(h)),n}function ec(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["name"]);i!=null&&l(n,["name"],i);let o=s(t,["state"]);o!=null&&l(n,["state"],n_(o));let a=s(t,["createTime"]);a!=null&&l(n,["createTime"],a);let u=s(t,["startTime"]);u!=null&&l(n,["startTime"],u);let c=s(t,["endTime"]);c!=null&&l(n,["endTime"],c);let d=s(t,["updateTime"]);d!=null&&l(n,["updateTime"],d);let f=s(t,["error"]);f!=null&&l(n,["error"],f);let p=s(t,["description"]);p!=null&&l(n,["description"],p);let h=s(t,["baseModel"]);h!=null&&l(n,["baseModel"],h);let g=s(t,["tunedModel"]);g!=null&&l(n,["tunedModel"],g);let _=s(t,["preTunedModel"]);_!=null&&l(n,["preTunedModel"],_);let m=s(t,["supervisedTuningSpec"]);m!=null&&l(n,["supervisedTuningSpec"],m);let E=s(t,["preferenceOptimizationSpec"]);E!=null&&l(n,["preferenceOptimizationSpec"],E);let y=s(t,["distillationSamplingSpec"]);y!=null&&l(n,["distillationSamplingSpec"],bk(y));let A=s(t,["distillationSpec"]);A!=null&&l(n,["distillationSpec"],Uk(A));let T=s(t,["reinforcementTuningSpec"]);T!=null&&l(n,["reinforcementTuningSpec"],T);let C=s(t,["tuningDataStats"]);C!=null&&l(n,["tuningDataStats"],C);let w=s(t,["encryptionSpec"]);w!=null&&l(n,["encryptionSpec"],w);let k=s(t,["partnerModelTuningSpec"]);k!=null&&l(n,["partnerModelTuningSpec"],k);let O=s(t,["customBaseModel"]);O!=null&&l(n,["customBaseModel"],O);let B=s(t,["evaluateDatasetRuns"]);if(B!=null){let xe=B;Array.isArray(xe)&&(xe=xe.map(Fe=>Fe)),l(n,["evaluateDatasetRuns"],xe)}let N=s(t,["experiment"]);N!=null&&l(n,["experiment"],N);let q=s(t,["fullFineTuningSpec"]);q!=null&&l(n,["fullFineTuningSpec"],q);let $=s(t,["labels"]);$!=null&&l(n,["labels"],$);let z=s(t,["outputUri"]);z!=null&&l(n,["outputUri"],z);let ne=s(t,["pipelineJob"]);ne!=null&&l(n,["pipelineJob"],ne);let M=s(t,["serviceAccount"]);M!=null&&l(n,["serviceAccount"],M);let Q=s(t,["tunedModelDisplayName"]);Q!=null&&l(n,["tunedModelDisplayName"],Q);let te=s(t,["tuningJobMetadata"]);te!=null&&l(n,["tuningJobMetadata"],te);let ve=s(t,["tuningJobState"]);ve!=null&&l(n,["tuningJobState"],ve);let Ne=s(t,["veoLoraTuningSpec"]);Ne!=null&&l(n,["veoLoraTuningSpec"],Ne);let Ce=s(t,["veoTuningSpec"]);return Ce!=null&&l(n,["veoTuningSpec"],Ce),n}function Kk(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["name"]);i!=null&&l(n,["name"],i);let o=s(t,["metadata"]);o!=null&&l(n,["metadata"],o);let a=s(t,["done"]);a!=null&&l(n,["done"],a);let u=s(t,["error"]);return u!=null&&l(n,["error"],u),n}function co(t,e){let n={},r=s(t,["gcsUri"]);r!=null&&l(n,["validationDatasetUri"],r);let i=s(t,["vertexDatasetResource"]);return i!=null&&l(n,["validationDatasetUri"],i),n}function Yk(t,e){let n={},r=s(t,["parent"]);r!=null&&l(n,["_url","parent"],r);let i=s(t,["sampleResponse"]);i!=null&&l(n,["sampleResponse"],ju(i));let o=s(t,["example"]);o!=null&&l(n,["example"],Vk(o));let a=s(t,["singleRewardConfig"]);a!=null&&l(n,["singleRewardConfig"],a);let u=s(t,["compositeRewardConfig"]);return u!=null&&l(n,["compositeRewardConfig"],u),n}function zk(t,e){let n={},r=s(t,["sdkHttpResponse"]);r!=null&&l(n,["sdkHttpResponse"],r);let i=s(t,["overallReward"]);i!=null&&l(n,["overallReward"],i);let o=s(t,["error"]);o!=null&&l(n,["error"],o);let a=s(t,["rewardInfoDetails"]);return a!=null&&l(n,["rewardInfoDetails"],a),n}var tc=class extends mt{constructor(e){super(),this.apiClient=e,this.list=async(n={})=>new Bt(Ft.PAGED_ITEM_TUNING_JOBS,r=>this.listInternal(r),await this.listInternal(n),n),this.get=async n=>await this.getInternal(n),this.tune=async n=>{var r;if(this.apiClient.isVertexAI())if(n.baseModel.startsWith("projects/")){let i={tunedModelName:n.baseModel};!((r=n.config)===null||r===void 0)&&r.preTunedModelCheckpointId&&(i.checkpointId=n.config.preTunedModelCheckpointId);let o=Object.assign(Object.assign({},n),{preTunedModel:i});return o.baseModel=void 0,await this.tuneInternal(o)}else{let i=Object.assign({},n);return await this.tuneInternal(i)}else{let i=Object.assign({},n),o=await this.tuneMldevInternal(i),a="";return o.metadata!==void 0&&o.metadata.tunedModel!==void 0?a=o.metadata.tunedModel:o.name!==void 0&&o.name.includes("/operations/")&&(a=o.name.split("/operations/")[0]),{name:a,state:Rl.JOB_STATE_QUEUED}}}}async getInternal(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=Ok(e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>ec(f))}else{let d=Lk(e);return u=X("{name}",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>Wk(f))}}async listInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=Fk(e);return o=X("tuningJobs",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=Bk(c),f=new Ul;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async cancel(e){var n,r,i,o;let a,u="",c={};if(this.apiClient.isVertexAI()){let d=Rk(e);return u=X("{name}:cancel",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Nk(f),h=new To;return Object.assign(h,p),h})}else{let d=wk(e);return u=X("{name}:cancel",d._url),c=d._query,delete d._url,delete d._query,a=this.apiClient.request({path:u,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(f=>f.json().then(p=>{let h=p;return h.sdkHttpResponse={headers:f.headers},h})),a.then(f=>{let p=Pk(f),h=new To;return Object.assign(h,p),h})}}async tuneInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=Mk(e,e);return o=X("tuningJobs",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>ec(c))}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}async tuneMldevInternal(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let u=Dk(e);return o=X("tunedModels",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>Kk(c))}}async validateReward(e){var n,r;let i,o="",a={};if(this.apiClient.isVertexAI()){let u=Yk(e);return o=X("{parent}/tuningJobs:validateReinforcementTuningReward",u._url),a=u._query,delete u._url,delete u._query,i=this.apiClient.request({path:o,queryParams:a,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(n=e.config)===null||n===void 0?void 0:n.httpOptions,abortSignal:(r=e.config)===null||r===void 0?void 0:r.abortSignal}).then(c=>c.json().then(d=>{let f=d;return f.sdkHttpResponse={headers:c.headers},f})),i.then(c=>{let d=zk(c),f=new Gl;return Object.assign(f,d),f})}else throw new Error("This method is only supported by the Gemini Enterprise Agent Platform (previously known as Vertex AI).")}},Cy=1024*1024*8,Sy=3,Iy=1e3,wy=2,Zt="x-goog-upload-status";async function Qk(t,e,n,r){var i;let o=await Ry(t,e,n,r),a=await o?.json();if(((i=o?.headers)===null||i===void 0?void 0:i[Zt])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return a.file}async function Zk(t,e,n,r){var i;let o=await Ry(t,e,n,r),a=await o?.json();if(((i=o?.headers)===null||i===void 0?void 0:i[Zt])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");let u=oc(a),c=new Io;return Object.assign(c,u),c}async function Ry(t,e,n,r){var i,o,a;let u=e,c=r?.baseUrl||((i=n.clientOptions.httpOptions)===null||i===void 0?void 0:i.baseUrl);if(c){let g=new URL(c),_=new URL(e);_.protocol=g.protocol,_.host=g.host,_.port=g.port,u=_.toString()}let d=0,f=0,p=new en(new Response),h="upload";for(d=t.size;f<d;){let g=Math.min(Cy,d-f),_=t.slice(f,f+g);f+g>=d&&(h+=", finalize");let m=0,E=Iy;for(;m<Sy;){let y=Object.assign(Object.assign({},r?.headers||{}),{"X-Goog-Upload-Command":h,"X-Goog-Upload-Offset":String(f)});if(p=await n.request({path:"",body:_,httpMethod:"POST",httpOptions:Object.assign(Object.assign({},r),{apiVersion:"",baseUrl:u,headers:y})}),!((o=p?.headers)===null||o===void 0)&&o[Zt])break;m++,await Py(E),E=E*wy}if(f+=g,((a=p?.headers)===null||a===void 0?void 0:a[Zt])!=="active")break;if(d<=f)throw new Error("All content has been uploaded, but the upload status is not finalized.")}return p}async function jk(t){return{size:t.size,type:t.type}}function Py(t){return new Promise(e=>setTimeout(e,t))}var nc=class{async stat(e){let n={size:0,type:void 0};if(typeof e=="string"){let r=await Go.stat(e);return n.size=r.size,n.type=this.inferMimeType(e),n}else return await jk(e)}async upload(e,n,r,i){return typeof e=="string"?await this.uploadFileFromPath(e,n,r,i):Qk(e,n,r,i)}async uploadToFileSearchStore(e,n,r,i){return typeof e=="string"?await this.uploadFileToFileSearchStoreFromPath(e,n,r,i):Zk(e,n,r,i)}inferMimeType(e){let n=e.slice(e.lastIndexOf(".")+1);return{aac:"audio/aac",abw:"application/x-abiword",arc:"application/x-freearc",avi:"video/x-msvideo",azw:"application/vnd.amazon.ebook",bin:"application/octet-stream",bmp:"image/bmp",bz:"application/x-bzip",bz2:"application/x-bzip2",csh:"application/x-csh",css:"text/css",csv:"text/csv",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",eot:"application/vnd.ms-fontobject",epub:"application/epub+zip",gz:"application/gzip",gif:"image/gif",htm:"text/html",html:"text/html",ico:"image/vnd.microsoft.icon",ics:"text/calendar",jar:"application/java-archive",jpeg:"image/jpeg",jpg:"image/jpeg",js:"text/javascript",json:"application/json",jsonld:"application/ld+json",kml:"application/vnd.google-earth.kml+xml",kmz:"application/vnd.google-earth.kmz+xml",mjs:"text/javascript",mp3:"audio/mpeg",mp4:"video/mp4",mpeg:"video/mpeg",mpkg:"application/vnd.apple.installer+xml",odt:"application/vnd.oasis.opendocument.text",oga:"audio/ogg",ogv:"video/ogg",ogx:"application/ogg",opus:"audio/opus",otf:"font/otf",png:"image/png",pdf:"application/pdf",php:"application/x-httpd-php",ppt:"application/vnd.ms-powerpoint",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",rar:"application/vnd.rar",rtf:"application/rtf",sh:"application/x-sh",svg:"image/svg+xml",swf:"application/x-shockwave-flash",tar:"application/x-tar",tif:"image/tiff",tiff:"image/tiff",ts:"video/mp2t",ttf:"font/ttf",txt:"text/plain",vsd:"application/vnd.visio",wav:"audio/wav",weba:"audio/webm",webm:"video/webm",webp:"image/webp",woff:"font/woff",woff2:"font/woff2",xhtml:"application/xhtml+xml",xls:"application/vnd.ms-excel",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",xml:"application/xml",xul:"application/vnd.mozilla.xul+xml",zip:"application/zip","3gp":"video/3gpp","3g2":"video/3gpp2","7z":"application/x-7z-compressed"}[n.toLowerCase()]}async uploadFileFromPath(e,n,r,i){var o;let a=await this.uploadFileFromPathInternal(e,n,r,i),u=await a?.json();if(((o=a?.headers)===null||o===void 0?void 0:o[Zt])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return u.file}async uploadFileToFileSearchStoreFromPath(e,n,r,i){var o;let a=await this.uploadFileFromPathInternal(e,n,r,i),u=await a?.json();if(((o=a?.headers)===null||o===void 0?void 0:o[Zt])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");let c=oc(u),d=new Io;return Object.assign(d,c),d}async uploadFileFromPathInternal(e,n,r,i){var o,a,u;let c=n,d=i?.baseUrl||((o=r.clientOptions.httpOptions)===null||o===void 0?void 0:o.baseUrl);if(d){let E=new URL(d),y=new URL(n);y.protocol=E.protocol,y.host=E.host,y.port=E.port,c=y.toString()}let f=0,p=0,h=new en(new Response),g="upload",_,m=Wg.basename(e);try{if(_=await Go.open(e,"r"),!_)throw new Error("Failed to open file");for(f=(await _.stat()).size;p<f;){let E=Math.min(Cy,f-p);p+E>=f&&(g+=", finalize");let y=new Uint8Array(E),{bytesRead:A}=await _.read(y,0,E,p);if(A!==E)throw new Error(`Failed to read ${E} bytes from file at offset ${p}. bytes actually read: ${A}`);let T=new Blob([y]),C=0,w=Iy;for(;C<Sy;){let k=Object.assign(Object.assign({},i?.headers||{}),{"X-Goog-Upload-Command":g,"X-Goog-Upload-Offset":String(p),"X-Goog-Upload-File-Name":m});if(h=await r.request({path:"",body:T,httpMethod:"POST",httpOptions:Object.assign(Object.assign({},i),{apiVersion:"",baseUrl:c,headers:k})}),!((a=h?.headers)===null||a===void 0)&&a[Zt])break;C++,await Py(w),w=w*wy}if(p+=A,((u=h?.headers)===null||u===void 0?void 0:u[Zt])!=="active")break;if(f<=p)throw new Error("All content has been uploaded, but the upload status is not finalized.")}return h}finally{_&&await _.close()}}};var rc=class extends tw{async registerFiles(e){if(typeof process>"u"||!process.versions||!process.versions.node)throw new Error("registerFiles is only supported in Node.js environments.");let r=await e.auth.getRequestHeaders(),i=e.config||{},o=i.httpOptions||{},a=Object.assign({},o.headers||{});if(r)if(typeof r[Symbol.iterator]=="function")for(let[u,c]of r)a[u]=c;else for(let[u,c]of Object.entries(r))a[u]=c;return this._registerFiles({uris:e.uris,config:Object.assign(Object.assign({},i),{httpOptions:Object.assign(Object.assign({},o),{headers:a})})})}};var eD="gl-node/";function tD(t){var e;if(t&&(t.enterprise!==void 0||t.vertexai!==void 0)){if(t.enterprise!==void 0&&t.vertexai!==void 0&&t.enterprise!==t.vertexai)throw new Error("enterprise and vertexAI flags have conflicting values, please set enterprise value only.");return(e=t.enterprise)!==null&&e!==void 0?e:t.vertexai}let n=jt("GOOGLE_GENAI_USE_ENTERPRISE"),r=jt("GOOGLE_GENAI_USE_VERTEXAI"),i=$g(n),o=$g(r);return n!==void 0&&r!==void 0&&i!==o&&console.warn("Warning: Both GOOGLE_GENAI_USE_ENTERPRISE and GOOGLE_GENAI_USE_VERTEXAI are set with conflicting values. The value of GOOGLE_GENAI_USE_ENTERPRISE will be used."),n!==void 0?i:r!==void 0?o:!1}var Vg=class{getNextGenClient(){let e=this.httpOptions;return this._nextGenClient===void 0&&(this._nextGenClient=st(this.apiClient,{timeout_ms:e?.timeout})),e?.extraBody&&console.warn("GoogleGenAI: Client level httpOptions.extraBody is not supported by the Gemini NextGen client and will be ignored."),this._nextGenClient}get interactions(){return this._interactions!==void 0?this._interactions:(this._interactions=new Hu(this.apiClient),this._interactions)}get webhooks(){return this._webhooks!==void 0?this._webhooks:(this._webhooks=new $u(this.apiClient),this._webhooks)}get agents(){return this._agents!==void 0?this._agents:(console.warn("GoogleGenAI.agents: Agents usage is experimental and may change in future versions."),this._agents=new Vu(this.apiClient),this._agents)}get triggers(){return this._triggers!==void 0?this._triggers:(console.warn("GoogleGenAI.triggers: Triggers usage is experimental and may change in future versions."),this._triggers=new Xu(this.apiClient),this._triggers)}get environments(){return this._environments!==void 0?this._environments:(console.warn("GoogleGenAI.environments: Environments usage is experimental and may change in future versions."),this._environments=new Wu(this.apiClient),this._environments)}get credentials(){return this._credentials!==void 0?this._credentials:(console.warn("GoogleGenAI.credentials: Credentials usage is experimental and may change in future versions."),this._credentials=new Ku(this.apiClient),this._credentials)}constructor(e={}){var n,r,i,o;if(this.vertexai=tD(e),(e.project||e.location)&&!this.vertexai)throw new Error("Project and location are not supported for Gemini API backend.");let a=nD(),u=jt("GOOGLE_CLOUD_PROJECT"),c=jt("GOOGLE_CLOUD_LOCATION");this.apiKey=(n=e.apiKey)!==null&&n!==void 0?n:a,this.project=(r=e.project)!==null&&r!==void 0?r:u,this.location=(i=e.location)!==null&&i!==void 0?i:c,!this.vertexai&&!this.apiKey&&console.warn("API key should be set when using the Gemini API."),this.vertexai&&(!((o=e.googleAuthOptions)===null||o===void 0)&&o.credentials&&(console.debug("The user provided Google Cloud credentials will take precedence over the API key from the environment variable."),this.apiKey=void 0),!e.project&&!e.location&&(u||c)&&e.apiKey?(console.debug("The user provided Vertex AI API key will take precedence over the project/location from the environment variables."),this.project=void 0,this.location=void 0):(e.project||e.location)&&!e.apiKey&&a?(console.debug("The user provided project/location will take precedence over the API key from the environment variables."),this.apiKey=void 0):!e.project&&!e.location&&!e.apiKey&&(u||c)&&a&&(console.debug("The project/location from the environment variables will take precedence over the API key from the environment variables."),this.apiKey=void 0),!this.location&&!this.apiKey&&(this.location="global"));let d=$C(e.httpOptions,this.vertexai,jt("GOOGLE_VERTEX_BASE_URL"),jt("GOOGLE_GEMINI_BASE_URL"));d&&(e.httpOptions?e.httpOptions.baseUrl=d:e.httpOptions={baseUrl:d}),this.apiVersion=e.apiVersion,this.httpOptions=e.httpOptions;let f=new Yu({apiKey:this.apiKey,googleAuthOptions:e.googleAuthOptions});this.apiClient=new nu({auth:f,project:this.project,location:this.location,apiVersion:this.apiVersion,apiKey:this.apiKey,vertexai:this.vertexai,httpOptions:this.httpOptions,userAgentExtra:eD+process.version,uploader:new nc,downloader:new zu}),this.models=new tr(this.apiClient),this.live=new ou(this.apiClient,f,new Qu),this.batches=new Yl(this.apiClient),this.chats=new Ql(this.models,this.apiClient),this.caches=new zl(this.apiClient),this.files=new rc(this.apiClient),this.operations=new au(this.apiClient),this.authTokens=new lu(this.apiClient),this.tunings=new tc(this.apiClient),this.fileSearchStores=new cu(this.apiClient)}};function jt(t){var e,n,r;return(r=(n=(e=process==null?void 0:process.env)===null||e===void 0?void 0:e[t])===null||n===void 0?void 0:n.trim())!==null&&r!==void 0?r:void 0}function $g(t){return t===void 0?!1:t.toLowerCase()==="true"}function nD(){let t=jt("GOOGLE_API_KEY"),e=jt("GEMINI_API_KEY");return t&&e&&console.warn("Both GOOGLE_API_KEY and GEMINI_API_KEY are set. Using GOOGLE_API_KEY."),t||e||void 0}export{Pm as ActivityHandling,Jh as AdapterSize,Qh as AggregationMetric,Ro as ApiError,vh as ApiSpec,Vh as AspectRatio,Hm as AudioResponseFormat,xm as AudioTranscriptionConfigMode,yh as AuthType,Yl as Batches,Sh as Behavior,Lh as BlockedReason,zl as Caches,To as CancelTuningJobResponse,Zl as Chat,Ql as Chats,bl as ComputeTokensResponse,ag as ContentReferenceImage,ig as ControlReferenceImage,dm as ControlReferenceType,Eo as CountTokensResponse,Hl as CreateFileResponse,Ao as DeleteCachedContentResponse,Vl as DeleteFileResponse,yo as DeleteModelResponse,Hh as Delivery,nm as DocumentState,Ih as DynamicRetrievalConfigMode,xl as EditImageResponse,pm as EditMode,go as EmbedContentResponse,mo as EmbeddingApiType,Rm as EndSensitivity,Th as Environment,zm as EvaluateDatasetResponse,am as FeatureSelectionPreference,Tm as FileSource,vm as FileState,tw as Files,Mh as FinishReason,Dh as FunctionCallingConfigMode,Lm as FunctionResponse,Um as FunctionResponseBlob,bm as FunctionResponseFileData,Gm as FunctionResponsePart,_h as FunctionResponseScheduling,yn as GenerateContentResponse,Fm as GenerateContentResponsePromptFeedback,Bm as GenerateContentResponseUsageMetadata,Nl as GenerateImagesResponse,vo as GenerateVideosOperation,Wm as GenerateVideosResponse,Vg as GoogleGenAI,xh as HarmBlockMethod,kh as HarmBlockThreshold,Nh as HarmCategory,bh as HarmProbability,Uh as HarmSeverity,Eh as HttpElementLocation,en as HttpResponse,um as ImagePromptLanguage,ym as ImageResizeMode,Vm as ImageResponseFormat,$h as ImageSize,Fl as ImportFileOperation,Qm as ImportFileResponse,eg as InlinedEmbedContentResponse,Zm as InlinedResponse,Cm as InteractionStatus,Rl as JobState,gh as Language,So as ListBatchJobsResponse,Co as ListCachedContentsResponse,Ll as ListDocumentsResponse,Ol as ListFileSearchStoresResponse,Bl as ListFilesResponse,_o as ListModelsResponse,Ul as ListTuningJobsResponse,ou as Live,lg as LiveClientToolResponse,zn as LiveMusicPlaybackControl,Jl as LiveMusicServerMessage,ug as LiveSendToolResponseParameters,Xl as LiveServerMessage,rg as MaskReferenceImage,cm as MaskReferenceMode,Kh as MatchOperation,qh as MediaModality,im as MediaProcessing,Bh as MediaResolution,ho as Modality,Fh as ModelStage,tr as Models,Dm as MusicGenerationMode,au as Operations,mh as Outcome,Ft as PagedItem,Bt as Pager,Zh as PairwiseChoice,om as PartMediaResolutionLevel,Rh as PersonGeneration,Ch as PhishBlockThreshold,Ph as ProminentPeople,ng as RawReferenceImage,Dl as RecontextImageResponse,$l as RegisterFilesResponse,Ym as ReinforcementTuningAutoraterScorerParsedResponseConversionScorer,Km as ReinforcementTuningParseResponseConfig,Yh as ReinforcementTuningThinkingLevel,tg as ReplayResponse,Pl as ResourceScope,Jm as ResponseFormat,Wh as ResponseParseType,lm as SafetyFilterLevel,Ah as SafetyPolicy,km as Scale,Ml as SegmentImageResponse,hm as SegmentMode,rm as ServiceTier,su as Session,jm as SingleEmbedContentResponse,wm as StartSensitivity,og as StyleReferenceImage,sg as SubjectReferenceImage,fm as SubjectReferenceType,$m as TextResponseFormat,wh as ThinkingLevel,lu as Tokens,Mm as ToolResponse,sm as ToolType,Oh as TrafficType,zh as TuningJobState,Em as TuningMethod,Xh as TuningMode,em as TuningSpeed,tm as TuningTask,Am as TurnCompleteReason,Nm as TurnCoverage,Qt as Type,Io as UploadToFileSearchStoreOperation,cg as UploadToFileSearchStoreResponse,ql as UploadToFileSearchStoreResumableResponse,kl as UpscaleImageResponse,Gh as UrlRetrievalStatus,Sm as VadSignalType,Gl as ValidateRewardResponse,_m as VideoCompressionQuality,gm as VideoGenerationMaskMode,mm as VideoGenerationReferenceType,jh as VideoOrientation,Xm as VideoResponseFormat,Im as VoiceActivityType,QM as createFunctionResponsePartFromBase64,ZM as createFunctionResponsePartFromUri,sb as createModelContent,nb as createPartFromBase64,rb as createPartFromCodeExecutionResult,ib as createPartFromExecutableCode,eb as createPartFromFunctionCall,tb as createPartFromFunctionResponse,Om as createPartFromText,jM as createPartFromUri,ob as createUserContent,lb as mcpToTool,zM as setDefaultBaseUrls};
43
+ /*! Bundled license information:
44
+
45
+ safe-buffer/index.js:
46
+ (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)
47
+
48
+ @google/genai/dist/node/index.mjs:
49
+ @google/genai/dist/node/index.mjs:
50
+ (**
51
+ * @license
52
+ * Copyright 2025 Google LLC
53
+ * SPDX-License-Identifier: Apache-2.0
54
+ *)
55
+
56
+ @google/genai/dist/node/index.mjs:
57
+ (**
58
+ * @license
59
+ * Copyright 2025 Google LLC
60
+ * SPDX-License-Identifier: Apache-2.0
61
+ *)
62
+ (**
63
+ * @license
64
+ * Copyright 2026 Google LLC
65
+ * SPDX-License-Identifier: Apache-2.0
66
+ *
67
+ * g3-prettier-ignore-file
68
+ *)
69
+ */