{"version":3,"sources":["jsdelivr-header.js","/npm/@wix/auto_sdk_get-paid_invoices@1.0.11/index.ts","/npm/@wix/auto_sdk_get-paid_invoices@1.0.11/src/invoices-invoices-v4-invoice-invoices.universal.ts","/npm/@wix/auto_sdk_get-paid_invoices@1.0.11/src/invoices-invoices-v4-invoice-invoices.http.ts","/npm/@wix/auto_sdk_get-paid_invoices@1.0.11/src/invoices-invoices-v4-invoice-invoices.public.ts","/npm/@wix/auto_sdk_get-paid_invoices@1.0.11/src/invoices-invoices-v4-invoice-invoices.context.ts"],"names":[],"mappings":"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,CAAE,KAAM,yDACR,CAAE,KAAM,0DACR,CAAE,KAAM,oDACR,CAAE,KAAM,qDACR,CACE,KAAM,+FAER,CACE,KAAM,+FAER,CACE,KAAM,mGAER,CACE,KAAM,uFAER,CACE,KAAM,iFAER,CACE,KAAM,gFAER,CACE,KAAM,gFAER,CACE,KAAM,qFAER,CACE,KAAM,6FAER,CACE,KAAM,uGAER,CACE,KAAM,oFAER,CACE,KAAM,iFAER,CACE,KAAM,qFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,kGAER,CACE,KAAM,gGAER,CACE,KAAM,iFAER,CACE,KAAM,sHAER,CACE,KAAM,sHAER,CACE,KAAM,0HAER,CACE,KAAM,8GAER,CACE,KAAM,wGAER,CACE,KAAM,uGAER,CACE,KAAM,uGAER,CACE,KAAM,4GAER,CACE,KAAM,oHAER,CACE,KAAM,8HAER,CACE,KAAM,2GAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,yHAER,CACE,KAAM,uHAER,CACE,KAAM,4GA8Kd,MAzKiB,CACf,WAAY,mCACZ,OAAQ,OACR,UAAW,kDACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,eACX,KAAM,EACN,SAEF,KAAM,EACN,kBAAoB,MAClB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,uBACR,CAAE,KAAM,uBACR,CAAE,KAAM,qBACR,CAAE,KAAM,mBACR,CAAE,KAAM,wDACR,CAAE,KAAM,sDACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CACE,KAAM,4EAER,CACE,KAAM,4EAER,CAAE,KAAM,sDACR,CAAE,KAAM,sDACR,CACE,KAAM,mGAER,CACE,KAAM,mGAER,CAAE,KAAM,iDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CAAE,KAAM,wDACR,CAAE,KAAM,yDACR,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CAAE,KAAM,oDACR,CAAE,KAAM,qDACR,CACE,KAAM,+FAER,CACE,KAAM,+FAER,CACE,KAAM,mGAER,CACE,KAAM,uFAER,CACE,KAAM,iFAER,CACE,KAAM,gFAER,CACE,KAAM,gFAER,CACE,KAAM,qFAER,CACE,KAAM,6FAER,CACE,KAAM,uGAER,CACE,KAAM,oFAER,CACE,KAAM,iFAER,CACE,KAAM,qFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,kGAER,CACE,KAAM,gGAER,CACE,KAAM,iFAER,CACE,KAAM,sHAER,CACE,KAAM,sHAER,CACE,KAAM,0HAER,CACE,KAAM,8GAER,CACE,KAAM,wGAER,CACE,KAAM,uGAER,CACE,KAAM,uGAER,CACE,KAAM,4GAER,CACE,KAAM,oHAER,CACE,KAAM,8HAER,CACE,KAAM,2GAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,yHAER,CACE,KAAM,uHAER,CACE,KAAM,4GAQpB,CAGF,CAGO,SAAS,WAAW,GA8KzB,OA7KA,UAAsB,KAAE,IA0KtB,MAzKiB,CACf,WAAY,mCACZ,OAAQ,MACR,UAAW,+CACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,2BACX,KAAM,EACN,SAEF,QAAA,EAAQ,oBAAA,mBAAkB,GAC1B,kBAAoB,MAClB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,uBACR,CAAE,KAAM,uBACR,CAAE,KAAM,qBACR,CAAE,KAAM,mBACR,CAAE,KAAM,wDACR,CAAE,KAAM,sDACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CACE,KAAM,4EAER,CACE,KAAM,4EAER,CAAE,KAAM,sDACR,CAAE,KAAM,sDACR,CACE,KAAM,mGAER,CACE,KAAM,mGAER,CAAE,KAAM,iDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CAAE,KAAM,wDACR,CAAE,KAAM,yDACR,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CAAE,KAAM,oDACR,CAAE,KAAM,qDACR,CACE,KAAM,+FAER,CACE,KAAM,+FAER,CACE,KAAM,mGAER,CACE,KAAM,uFAER,CACE,KAAM,iFAER,CACE,KAAM,gFAER,CACE,KAAM,gFAER,CACE,KAAM,qFAER,CACE,KAAM,6FAER,CACE,KAAM,uGAER,CACE,KAAM,oFAER,CACE,KAAM,iFAER,CACE,KAAM,qFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,kGAER,CACE,KAAM,gGAER,CACE,KAAM,iFAER,CACE,KAAM,sHAER,CACE,KAAM,sHAER,CACE,KAAM,0HAER,CACE,KAAM,8GAER,CACE,KAAM,wGAER,CACE,KAAM,uGAER,CACE,KAAM,uGAER,CACE,KAAM,4GAER,CACE,KAAM,oHAER,CACE,KAAM,8HAER,CACE,KAAM,2GAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,yHAER,CACE,KAAM,uHAER,CACE,KAAM,4GAQpB,CAGF,CAYO,SAAS,cAAc,GAwU5B,OAvUA,UAAyB,KAAE,IACzB,MAAM,GAAA,EAAiB,uBAAA,gBAAe,EAAS,CAC7C,CACE,YAAa,kBAAA,qCACb,MAAO,CAAC,CAAE,KAAM,eAElB,CACE,YAAa,iBAAA,qCACb,MAAO,CACL,CAAE,KAAM,uBACR,CAAE,KAAM,uBACR,CAAE,KAAM,qBACR,CAAE,KAAM,mBACR,CAAE,KAAM,wDACR,CAAE,KAAM,sDACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CACE,KAAM,4EAER,CACE,KAAM,4EAER,CAAE,KAAM,sDACR,CAAE,KAAM,sDACR,CACE,KAAM,mGAER,CACE,KAAM,mGAER,CAAE,KAAM,iDAGZ,CACE,YAAa,aAAA,6BACb,MAAO,CACL,CAAE,KAAM,wDACR,CAAE,KAAM,yDACR,CAAE,KAAM,yDACR,CAAE,KAAM,0DACR,CAAE,KAAM,oDACR,CAAE,KAAM,qDACR,CACE,KAAM,+FAER,CACE,KAAM,+FAER,CACE,KAAM,mGAER,CACE,KAAM,uFAER,CACE,KAAM,iFAER,CACE,KAAM,gFAER,CACE,KAAM,gFAER,CACE,KAAM,qFAER,CACE,KAAM,6FAER,CACE,KAAM,uGAER,CACE,KAAM,oFAER,CACE,KAAM,iFAER,CACE,KAAM,qFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,kGAER,CACE,KAAM,gGAER,CACE,KAAM,iFAER,CACE,KAAM,sHAER,CACE,KAAM,sHAER,CACE,KAAM,0HAER,CACE,KAAM,8GAER,CACE,KAAM,wGAER,CACE,KAAM,uGAER,CACE,KAAM,uGAER,CACE,KAAM,4GAER,CACE,KAAM,oHAER,CACE,KAAM,8HAER,CACE,KAAM,2GAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,yHAER,CACE,KAAM,uHAER,CACE,KAAM,4GA8Kd,MAzKiB,CACf,WAAY,mCACZ,OAAQ,QACR,UAAW,kDACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,4BACX,KAAM,EACN,SAEF,KAAM,EACN,kBAAoB,MAClB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,uBACR,CAAE,KAAM,uBACR,CAAE,KAAM,qBACR,CAAE,KAAM,mBACR,CAAE,KAAM,wDACR,CAAE,KAAM,sDACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CACE,KAAM,4EAER,CACE,KAAM,4EAER,CAAE,KAAM,sDACR,CAAE,KAAM,sDACR,CACE,KAAM,mGAER,CACE,KAAM,mGAER,CAAE,KAAM,iDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CAAE,KAAM,wDACR,CAAE,KAAM,yDACR,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CAAE,KAAM,oDACR,CAAE,KAAM,qDACR,CACE,KAAM,+FAER,CACE,KAAM,+FAER,CACE,KAAM,mGAER,CAC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lB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,wBACR,CAAE,KAAM,wBACR,CAAE,KAAM,sBACR,CAAE,KAAM,oBACR,CAAE,KAAM,yDACR,CAAE,KAAM,uDACR,CAAE,KAAM,iCACR,CAAE,KAAM,iCACR,CAAE,KAAM,iCACR,CACE,KAAM,6EAER,CACE,KAAM,6EAER,CAAE,KAAM,uDACR,CAAE,KAAM,uDACR,CACE,KAAM,oGAER,CACE,KAAM,oGAER,CAAE,KAAM,kDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CACE,KAAM,0DAER,CACE,KAAM,2DAER,CAAE,KAAM,qDACR,CAAE,KAAM,sDACR,CACE,KAAM,gGAER,CACE,KAAM,gGAER,CACE,KAAM,oGAER,CACE,KAAM,wFAER,CACE,KAAM,kFAER,CACE,KAAM,iFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,8FAER,CACE,KAAM,wGAER,CACE,KAAM,qFAER,CACE,KAAM,kFAER,CACE,KAAM,sFAER,CACE,KAAM,kFAER,CACE,KAAM,uFAER,CACE,KAAM,mGAER,CACE,KAAM,iGAER,CACE,KAAM,kFAER,CACE,KAAM,uHAER,CACE,KAAM,uHAER,CACE,KAAM,2HAER,CACE,KAAM,+GAER,CACE,KAAM,yGAER,CACE,KAAM,wGAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,qHAER,CACE,KAAM,+HAER,CACE,KAAM,4GAER,CACE,KAAM,yGAER,CACE,KAAM,6GAER,CACE,KAAM,yGAER,CACE,KAAM,8GAER,CACE,KAAM,0HAER,CACE,KAAM,wHAER,CACE,KAAM,yGAER,CAAE,KAAM,+CACR,CAAE,KAAM,6CACR,CACE,KAAM,oFAER,CACE,KAAM,kFAER,CACE,KAAM,+DAER,CACE,KAAM,6DAER,CAAE,KAAM,wCACR,CACE,KAAM,6EAER,CACE,KAAM,qEAKhB,SAAU,CACR,CACE,OAAQ,OACR,IAAK,wCAAwC,C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CACE,KAAM,+FAER,CACE,KAAM,mGAER,CACE,KAAM,uFAER,CACE,KAAM,iFAER,CACE,KAAM,gFAER,CACE,KAAM,gFAER,CACE,KAAM,qFAER,CACE,KAAM,6FAER,CACE,KAAM,uGAER,CACE,KAAM,oFAER,CACE,KAAM,iFAER,CACE,KAAM,qFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,kGAER,CACE,KAAM,gGAER,CACE,KAAM,iFAER,CACE,KAAM,sHAER,CACE,KAAM,sHAER,CACE,KAAM,0HAER,CACE,KAAM,8GAER,CACE,KAAM,wGAER,CACE,KAAM,uGAER,CACE,KAAM,uGAER,CACE,KAAM,4GAER,CACE,KAAM,oHAER,CACE,KAAM,8HAER,CACE,KAAM,2GAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,yHAER,CACE,KAAM,uHAER,CACE,KAAM,4GAgLd,MA3KiB,CACf,WAAY,mCACZ,OAAQ,OACR,UAAW,qDACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,iCACX,KAAM,EACN,SAEF,KAAM,EACN,kBAAoB,MAClB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,uBACR,CAAE,KAAM,uBACR,CAAE,KAAM,qBACR,CAAE,KAAM,mBACR,CAAE,KAAM,wDACR,CAAE,KAAM,sDACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CACE,KAAM,4EAER,CACE,KAAM,4EAER,CAAE,KAAM,sDACR,CAAE,KAAM,sDACR,CACE,KAAM,mGAER,CACE,KAAM,mGAER,CAAE,KAAM,+CACR,CAAE,KAAM,gDACR,CAAE,KAAM,gDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CAAE,KAAM,wDACR,CAAE,KAAM,yDACR,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CAAE,KAAM,oDACR,CAAE,KAAM,qDACR,CACE,KAAM,+FAER,CACE,KAAM,+FAER,CACE,KAAM,mGAER,CACE,KAAM,uFAER,CACE,KAAM,iFAER,CACE,KAAM,gFAER,CACE,KAAM,gFAER,CACE,KAAM,qFAER,CACE,KAAM,6FAER,CACE,KAAM,uGAER,CACE,KAAM,oFAER,CACE,KAAM,iFAER,CACE,KAAM,qFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,kGAER,CACE,KAAM,gGAER,CACE,KAAM,iFAER,CACE,KAAM,sHAER,CACE,KAAM,sHAER,CACE,KAAM,0HAER,CACE,KAAM,8GAER,CACE,KAAM,wGAER,CACE,KAAM,uGAER,CACE,KAAM,uGAER,CACE,KAAM,4GAER,CACE,KAAM,oHAER,CACE,KAAM,8HAER,CACE,KAAM,2GAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,yHAER,CACE,KAAM,uHAER,CACE,KAAM,4GAQpB,CAGF,CAQO,SAAS,uBACd,GAsBA,OApBA,UAAkC,KAAE,IAiBlC,MAhBiB,CACf,WAAY,mCACZ,OAAQ,MACR,UAAW,2DACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,iCACX,KAAM,EACN,SAEF,QAAA,EAAQ,oBAAA,mBAAkB,GAI9B,CAGF,CAGO,SAAS,mBACd,GAqVA,OAnVA,UAA8B,KAAE,IAC9B,MAAM,GAAA,EAAiB,uBAAA,gBAAe,EAAS,CAC7C,CACE,YAAa,iBAAA,qCACb,MAAO,CACL,CAAE,KAAM,wBACR,CAAE,KAAM,wBACR,CAAE,KAAM,sBACR,CAAE,KAAM,oBACR,CAAE,KAAM,yDACR,CAAE,KAAM,uDACR,CAAE,KAAM,iCACR,CAAE,KAAM,iCACR,CAAE,KAAM,iCACR,CACE,KAAM,6EAER,CACE,KAAM,6EAER,CAAE,KAAM,uDACR,CAAE,KAAM,uDACR,CACE,KAAM,oGAER,CACE,KAAM,oGAER,CAAE,KAAM,kDAGZ,CACE,YAAa,aAAA,6BACb,MAAO,CACL,CAAE,KAAM,yDACR,CAAE,KAAM,0DACR,CAAE,KAAM,0DACR,CAAE,KAAM,2DACR,CAAE,KAAM,qDACR,CAAE,KAAM,sDACR,CACE,KAAM,gGAER,CACE,KAAM,gGAER,CACE,KAAM,oGAER,CACE,KAAM,wFAER,CACE,KAAM,kFAER,CACE,KAAM,iFAER,CACE,KAAM,iFAER,CACE,KAAM,sFAER,CACE,KAAM,8FAER,CACE,KAAM,wGAER,CACE,KAAM,qFAER,CACE,KAAM,kFAER,CACE,KAAM,sFAER,CACE,KAAM,kFAER,CACE,KAAM,uFAER,CACE,KAAM,mGAER,CACE,KAAM,iGAER,CACE,KAAM,kFAER,CACE,KAAM,uHAER,CACE,KAAM,uHAER,CACE,KAAM,2HAER,CACE,KAAM,+GAER,CACE,KAAM,yGAER,CACE,KAAM,wGAER,CACE,KAAM,wGAER,CACE,KAAM,6GAER,CACE,KAAM,qHAER,CACE,KAAM,+HAER,CACE,KAAM,4GAER,CACE,KAAM,yGAER,CACE,KAAM,6GAER,CACE,KAAM,yGAER,CACE,KAAM,8GAER,CACE,KAAM,0HAER,CACE,KAAM,wHAER,CACE,KAAM,6GA8Ld,MAzLiB,CACf,WAAY,mCACZ,OAAQ,OACR,UAAW,uDACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,2BACX,KAAM,EACN,SAEF,KAAM,EACN,kBAAoB,MAClB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,4BACR,CAAE,KAAM,4BACR,CAAE,KAAM,0BACR,CAAE,KAAM,wBACR,CACE,KAAM,6DAER,CACE,KAAM,2DAER,CAAE,KAAM,qCACR,CAAE,KAAM,qCACR,CAAE,KAAM,qCACR,CACE,KAAM,iFAER,CACE,KAAM,iFAER,CACE,KAAM,2DAER,CACE,KAAM,2DAER,CACE,KAAM,wGAER,CACE,KAAM,wGAER,CAAE,KAAM,sDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CACE,KAAM,6DAER,CACE,KAAM,8DAER,CACE,KAAM,8DAER,CACE,KAAM,+DAER,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CACE,KAAM,oGAER,CACE,KAAM,oGAER,CACE,KAAM,wGAER,CACE,KAAM,4FAER,CACE,KAAM,sFAER,CACE,KAAM,qFAER,CACE,KAAM,qFAER,CACE,KAAM,0FAER,CACE,KAAM,kGAER,CACE,KAAM,4GAER,CACE,KAAM,yFAER,CACE,KAAM,sFAER,CACE,KAAM,0FAER,CACE,KAAM,sFAER,CACE,KAAM,2FAER,CACE,KAAM,uGAER,CACE,KAAM,qGAER,CACE,KAAM,sFAER,CACE,KAAM,2HAER,CACE,KAAM,2HAER,CACE,KAAM,+HAER,CACE,KAAM,mHAER,CACE,KAAM,6GAER,CACE,KAAM,4GAER,CACE,KAAM,4GAER,CACE,KAAM,iHAER,CACE,KAAM,yHAER,CACE,KAAM,mIAER,CACE,KAAM,gHAER,CACE,KAAM,6GAER,CACE,KAAM,iHAER,CACE,KAAM,6GAER,CACE,KAAM,kHAER,CACE,KAAM,8HAER,CACE,KAAM,4HAER,CACE,KAAM,iHAQpB,CAGF,CAGO,SAAS,mBACd,GA2WA,OAzWA,UAA8B,KAAE,IAC9B,MAAM,GAAA,EAAiB,uBAAA,gBAAe,EAAS,CAC7C,CACE,YAAa,kBAAA,qCACb,MAAO,CAAC,CAAE,KAAM,wBAElB,CACE,YAAa,iBAAA,qCACb,MAAO,CACL,CAAE,KAAM,gCACR,CAAE,KAAM,gCACR,CAAE,KAAM,8BACR,CAAE,KAAM,4BACR,CACE,KAAM,iEAER,CACE,KAAM,+DAER,CAAE,KAAM,yCACR,CAAE,KAAM,yCACR,CAAE,KAAM,yCACR,CACE,KAAM,qFAER,CACE,KAAM,qFAER,CACE,KAAM,+DAER,CACE,KAAM,+DAER,CACE,KAAM,4GAER,CACE,KAAM,4GAER,CAAE,KAAM,0DAGZ,CACE,YAAa,aAAA,6BACb,MAAO,CACL,CACE,KAAM,iEAER,CACE,KAAM,kEAER,CACE,KAAM,kEAER,CACE,KAAM,mEAER,CAAE,KAAM,6DACR,CACE,KAAM,8DAER,CACE,KAAM,wGAER,CACE,KAAM,wGAER,CACE,KAAM,4GAER,CACE,KAAM,gGAER,CACE,KAAM,0FAER,CACE,KAAM,yFAER,CACE,KAAM,yFAER,CACE,KAAM,8FAER,CACE,KAAM,sGAER,CACE,KAAM,gHAER,CACE,KAAM,6FAER,CACE,KAAM,0FAER,CACE,KAAM,8FAER,CACE,KAAM,0FAER,CACE,KAAM,+FAER,CACE,KAAM,2GAER,CACE,KAAM,yGAER,CACE,KAAM,0FAER,CACE,KAAM,+HAER,CACE,KAAM,+HAER,CACE,KAAM,mIAER,CACE,KAAM,uHAER,CACE,KAAM,iHAER,CACE,KAAM,gHAER,CACE,KAAM,gHAER,CACE,KAAM,qHAER,CACE,KAAM,6HAER,CACE,KAAM,uIAER,CACE,KAAM,oHAER,CACE,KAAM,iHAER,CACE,KAAM,qHAER,CACE,KAAM,iHAER,CACE,KAAM,sHAER,CACE,KAAM,kIAER,CACE,KAAM,gIAER,CACE,KAAM,qHA8Ld,MAzLiB,CACf,WAAY,mCACZ,OAAQ,OACR,UAAW,uDACX,YAAa,aACb,iBAAkB,CAChB,wBAAwB,GAE1B,IAAK,wCAAwC,CAC3C,UAAW,2BACX,KAAM,EACN,SAEF,KAAM,EACN,kBAAoB,MAClB,uBAAA,gBAAe,EAAS,CACtB,CACE,YAAa,kBAAA,qCACb,MAAO,CACL,CAAE,KAAM,4BACR,CAAE,KAAM,4BACR,CAAE,KAAM,0BACR,CAAE,KAAM,wBACR,CACE,KAAM,6DAER,CACE,KAAM,2DAER,CAAE,KAAM,qCACR,CAAE,KAAM,qCACR,CAAE,KAAM,qCACR,CACE,KAAM,iFAER,CACE,KAAM,iFAER,CACE,KAAM,2DAER,CACE,KAAM,2DAER,CACE,KAAM,wGAER,CACE,KAAM,wGAER,CAAE,KAAM,sDAGZ,CACE,YAAa,cAAA,6BACb,MAAO,CACL,CACE,KAAM,6DAER,CACE,KAAM,8DAER,CACE,KAAM,8DAER,CACE,KAAM,+DAER,CAAE,KAAM,yDACR,CACE,KAAM,0DAER,CACE,KAAM,oGAER,CACE,KAAM,oGAER,CACE,KAAM,wGAER,CACE,KAAM,4FAER,CACE,KAAM,sFAER,CAC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","file":"/npm/@wix/auto_sdk_get-paid_invoices@1.0.11/build/cjs/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@wix/auto_sdk_get-paid_invoices@1.0.11/build/cjs/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","export * from './src/invoices-invoices-v4-invoice-invoices.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport {\n  HttpClient,\n  HttpResponse,\n  Search as SearchSdkType,\n  NonNullablePaths,\n  QuerySpec,\n  Query as QuerySdkType,\n  SearchSpec,\n} from '@wix/sdk-types';\nimport * as ambassadorWixInvoicesInvoicesV4Invoice from './invoices-invoices-v4-invoice-invoices.http.js';\n// @ts-ignore\nimport { transformSDKAddressToRESTAddress } from '@wix/sdk-runtime/transformations/address';\nimport { transformRESTAddressToSDKAddress } from '@wix/sdk-runtime/transformations/address';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { createQueryUtils } from '@wix/sdk-runtime/query-builder-utils';\nimport { createSearchUtils } from '@wix/sdk-runtime/search-builder-utils';\n\n/**\n * A Invoice is a request for payment issued by a business to a customer.\n * Invoices contain detailed billing information including line items, taxes,\n * customer details, and payment terms.\n */\nexport interface Invoice {\n  /**\n   * Invoice ID.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the Invoice is updated.\n   * To prevent conflicting changes,\n   * the current revision must be passed when updating the Invoice.\n   *\n   * Ignored when creating Invoice.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the Invoice was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the Invoice was last updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Status of the invoice.\n   * @readonly\n   */\n  status?: StatusWithLiterals;\n  /**\n   * Status qualifiers indicating the current state or performed action on the invoice.\n   * @readonly\n   * @maxSize 2\n   */\n  statusQualifiers?: StatusQualifierWithLiterals[];\n  /**\n   * Available actions for this invoice.\n   * @readonly\n   * @maxSize 10\n   */\n  availableActions?: ActionWithLiterals[];\n  /**\n   * Information about the application or system that created this invoice.\n   * @immutable\n   */\n  sourceReference?: SourceReference;\n  /**\n   * Invoice reference to the Wix eCommerce system.\n   * @immutable\n   */\n  reference?: Reference;\n  /**\n   * Regional properties pertaining to the invoice.\n   * When regional properties are not provided, defaults are taken from the [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction).\n   */\n  regionalProperties?: RegionalProperties;\n  /**\n   * Invoice numbering configuration including prefix, number, and suffix.\n   * @readonly\n   */\n  numbering?: Numbering;\n  /** Date the invoice was issued. */\n  issueDate?: Date | null;\n  /** Date when payment is due for this invoice. Must be greater than `issueDate`. */\n  dueDate?: Date | null;\n  /**\n   * Invoice title.\n   * @minLength 1\n   * @maxLength 200\n   */\n  title?: string | null;\n  /**\n   * Currency code for all monetary amounts in this invoice.\n   * Three-letter currency code in [ISO-4217 alphabetic](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) format.\n   * @format CURRENCY\n   * @immutable\n   */\n  currency?: string;\n  /** Customer information including contact details and billing address. */\n  customerInfo?: CustomerInfo;\n  /** Shipping contact information including contact details and shipping address. */\n  shippingInfo?: ShippingInfo;\n  /**\n   * Business details.\n   * If not provided, taken from [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction).\n   * Business details becomes fixed when `status` changes to one of: `PARTIALLY_PAID`, `PAID`, `VOIDED`.\n   */\n  businessDetails?: BusinessDetails;\n  /**\n   * List of line items included in this invoice.\n   * Line items are not required for [CalculateInvoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/calculate-invoice) API endpoint.\n   * @maxSize 300\n   */\n  lineItems?: LineItem[];\n  /** Shipping details and costs. */\n  shipmentInfo?: ShipmentInfo;\n  /**\n   * Additional fees applied to the invoice.\n   * @maxSize 20\n   */\n  additionalFees?: AdditionalFee[];\n  /**\n   * Discount applied to the entire invoice.\n   * @maxSize 20\n   */\n  discounts?: Discount[];\n  /** Deposit payment amount. */\n  deposit?: Deposit;\n  /** Tax information. */\n  taxInfo?: TaxInfo;\n  /**\n   * List of payments.\n   * @maxSize 100\n   */\n  payments?: Payment[];\n  /** Summary totals including subtotal, taxes, and final amount. */\n  totals?: Totals;\n  /**\n   * Archived invoice indicator.\n   * @readonly\n   */\n  archived?: boolean;\n  /** Custom fields. */\n  customFields?: CustomFields;\n  /** Preset properties. Includes invoice preset selection. */\n  presetProperties?: PresetProperties;\n  /**\n   * Files to be attached. Displayed on the invoice.\n   * @maxSize 5\n   */\n  attachments?: Attachment[];\n  /**\n   * Document details.\n   * @readonly\n   */\n  documentInfo?: DocumentInfo;\n  /**\n   * Links.\n   * @readonly\n   */\n  links?: Links;\n  /** Business location. */\n  businessLocation?: BusinessLocation;\n  /** Data Extensions. */\n  extendedFields?: ExtendedFields;\n  /** Tags. */\n  tags?: Tags;\n}\n\nexport enum Status {\n  UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n  /** Invoice is draft without allocated invoice number. */\n  DRAFT = 'DRAFT',\n  /** Invoice is being published. The invoice number is being allocated. */\n  PUBLISHING = 'PUBLISHING',\n  /** Invoice is published. Invoice can be paid. */\n  PUBLISHED = 'PUBLISHED',\n  /** Invoice is partially paid. */\n  PARTIALLY_PAID = 'PARTIALLY_PAID',\n  /** Invoice is fully paid. */\n  PAID = 'PAID',\n  /** Voided invoice. */\n  VOIDED = 'VOIDED',\n}\n\n/** @enumType */\nexport type StatusWithLiterals =\n  | Status\n  | 'UNKNOWN_STATUS'\n  | 'DRAFT'\n  | 'PUBLISHING'\n  | 'PUBLISHED'\n  | 'PARTIALLY_PAID'\n  | 'PAID'\n  | 'VOIDED';\n\nexport enum StatusQualifier {\n  UNKNOWN_STATUS_QUALIFIER = 'UNKNOWN_STATUS_QUALIFIER',\n  /** Invoice was sent. */\n  SENT = 'SENT',\n  /** Invoice was marked as viewed. */\n  VIEWED = 'VIEWED',\n  /** Invoice due date has been reached. */\n  OVERDUE = 'OVERDUE',\n}\n\n/** @enumType */\nexport type StatusQualifierWithLiterals =\n  | StatusQualifier\n  | 'UNKNOWN_STATUS_QUALIFIER'\n  | 'SENT'\n  | 'VIEWED'\n  | 'OVERDUE';\n\nexport enum Action {\n  UNKNOWN_ACTION = 'UNKNOWN_ACTION',\n  /** Invoice is in `DRAFT` status. */\n  DELETE = 'DELETE',\n  /** Invoice is in statuses: `DRAFT`, `PUBLISHED`, `PARTIALLY_PAID`. */\n  UPDATE = 'UPDATE',\n  /** Invoice is draft, and number can be generated. */\n  PUBLISH = 'PUBLISH',\n  /** Invoice is after the published status, and payment can be initiated. */\n  PAY = 'PAY',\n  /** Invoice is after the published status, and can be voided. */\n  VOID = 'VOID',\n  /** Invoice is after the published status, and can be sent. */\n  SEND = 'SEND',\n  /** Invoice is after the published status, and can be marked as viewed. */\n  MARK_VIEWED = 'MARK_VIEWED',\n  /** Invoice is after the published status, and pdf document can be generated. */\n  GENERATE_PDF_DOCUMENT = 'GENERATE_PDF_DOCUMENT',\n  /** Invoice is after the published status, and can be archived. */\n  ARCHIVE = 'ARCHIVE',\n  /** Invoice is archived and can be unarchived. */\n  UNARCHIVE = 'UNARCHIVE',\n}\n\n/** @enumType */\nexport type ActionWithLiterals =\n  | Action\n  | 'UNKNOWN_ACTION'\n  | 'DELETE'\n  | 'UPDATE'\n  | 'PUBLISH'\n  | 'PAY'\n  | 'VOID'\n  | 'SEND'\n  | 'MARK_VIEWED'\n  | 'GENERATE_PDF_DOCUMENT'\n  | 'ARCHIVE'\n  | 'UNARCHIVE';\n\nexport interface SourceReference {\n  /**\n   * Application source ID.\n   * @format GUID\n   */\n  appId?: string;\n  /**\n   * External reference entity ID.\n   * @format GUID\n   */\n  externalReferenceId?: string | null;\n}\n\nexport interface Reference extends ReferenceReferencesOneOf {\n  /** Invoice reference to Wix eCommerce order. */\n  standaloneReference?: Standalone;\n  /** Invoice reference to the existing Wix eCommerce order. */\n  orderReference?: Order;\n  /** Reference for invoices migrated from an older invoicing system. */\n  migratedReference?: Migrated;\n  /** Invoice type. */\n  referenceType?: ReferenceTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface ReferenceReferencesOneOf {\n  /** Invoice reference to Wix eCommerce order. */\n  standaloneReference?: Standalone;\n  /** Invoice reference to the existing Wix eCommerce order. */\n  orderReference?: Order;\n  /** Reference for invoices migrated from an older invoicing system. */\n  migratedReference?: Migrated;\n}\n\nexport enum ReferenceType {\n  UNKNOWN_REFERENCE = 'UNKNOWN_REFERENCE',\n  /** Invoice created without any reference. */\n  STANDALONE = 'STANDALONE',\n  /** Invoice created for existing Wix eCommerce order. */\n  ORDER = 'ORDER',\n  /** Invoice migrated from an older invoicing system. */\n  MIGRATED = 'MIGRATED',\n}\n\n/** @enumType */\nexport type ReferenceTypeWithLiterals =\n  | ReferenceType\n  | 'UNKNOWN_REFERENCE'\n  | 'STANDALONE'\n  | 'ORDER'\n  | 'MIGRATED';\n\nexport interface Standalone {\n  /**\n   * Wix eCommerce order ID this invoice is based on.\n   * @readonly\n   * @format GUID\n   */\n  orderId?: string | null;\n  /**\n   * Limit changes to the application identified by `sourceReference.appId` only. If set to true, the invoice will be locked for direct actions: `PUBLISH`, `UPDATE`, `DELETE`.\n   * @immutable\n   */\n  limitActions?: boolean;\n}\n\nexport interface Order {\n  /**\n   * Wix eCommerce order ID this invoice is created for.\n   * Invoice will be locked for direct changes. Changes coming from Wix eCommerce system are permitted.\n   * @format GUID\n   */\n  orderId?: string;\n}\n\nexport interface Migrated {}\n\nexport interface RegionalProperties {\n  /**\n   * Locale. Determines formating of numbers, dates and times.\n   * Locale should match business details locale in [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction).\n   * If locale is not provided, and unable to resolve from Site Properties API, defaults to en-US.\n   */\n  locale?: Locale;\n  /**\n   * UTC offset or IANA time zone. Determines offset of dates and times. Valid values are ISO 8601 UTC offsets, such\n   * as +02:00 or -06:00, and IANA time zone IDs, such as Europe/Rome.\n   * @minLength 1\n   * @maxLength 32\n   */\n  timeZone?: string | null;\n  /**\n   * Invoice language. Determines the language of invoice static content (i.e. field and column titles).\n   * If locale is not provided, and unable to resolve from [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction), defaults to en-US.\n   * Two-letter language code in [ISO-639-1 alpha-2](https://en.wikipedia.org/wiki/ISO_639-1) format.\n   * For example: `en`, `de`, `ja`.\n   * @format LANGUAGE\n   */\n  language?: string;\n}\n\nexport interface Locale {\n  /**\n   * Two-letter language code in [ISO-639-1 alpha-2](https://en.wikipedia.org/wiki/ISO_639-1) format.\n   * For example: `en`, `de`, `ja`.\n   * @format LANGUAGE\n   */\n  languageCode?: string;\n  /**\n   * Two-letter country code in [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#officially_assigned_code_elements) format.\n   * For example: `US`, `DE`, `JP`.\n   * @format COUNTRY\n   */\n  country?: string | null;\n}\n\nexport interface Numbering {\n  /** Invoice number. */\n  number?: number | null;\n  /**\n   * Invoice prefix that will be displayed before the invoice number.\n   * @minLength 1\n   * @maxLength 10\n   */\n  prefix?: string | null;\n  /**\n   * Invoice suffix that will be displayed after the invoice number.\n   * @minLength 1\n   * @maxLength 10\n   */\n  suffix?: string | null;\n  /**\n   * Full invoice display number, in [prefix][number][suffix] format.\n   * @maxLength 30\n   */\n  displayNumber?: string;\n}\n\nexport interface CustomerInfo {\n  /**\n   * Customer's contact ID.\n   * @format GUID\n   */\n  contactId?: string | null;\n  /** Customer's contact details. */\n  contactDetails?: FullAddressContactDetails;\n  /** Customer's billing address. */\n  billingAddress?: Address;\n}\n\n/** Full contact details for an address */\nexport interface FullAddressContactDetails {\n  /**\n   * Contact's first name.\n   * @maxLength 100\n   */\n  firstName?: string | null;\n  /**\n   * Contact's last name.\n   * @maxLength 100\n   */\n  lastName?: string | null;\n  /**\n   * Contact's phone number.\n   * @format PHONE\n   */\n  phone?: string | null;\n  /**\n   * Contact's company name.\n   * @maxLength 100\n   */\n  company?: string | null;\n  /**\n   * Email associated with the address.\n   * @format EMAIL\n   */\n  email?: string | null;\n  /** Tax info. Currently usable only in Brazil. */\n  vatId?: VatId;\n}\n\nexport interface VatId {\n  /**\n   * Customer's tax ID.\n   * @maxLength 100\n   */\n  _id?: string;\n  /**\n   * Tax type.\n   *\n   * Supported values:\n   * + `CPF`: for individual tax payers\n   * + `CNPJ`: for corporations\n   */\n  type?: VatTypeWithLiterals;\n}\n\n/** tax info types */\nexport enum VatType {\n  UNSPECIFIED = 'UNSPECIFIED',\n  /** CPF - for individual tax payers. */\n  CPF = 'CPF',\n  /** CNPJ - for corporations */\n  CNPJ = 'CNPJ',\n}\n\n/** @enumType */\nexport type VatTypeWithLiterals = VatType | 'UNSPECIFIED' | 'CPF' | 'CNPJ';\n\n/** Physical address */\nexport interface Address {\n  /**\n   * Two-letter country code in [ISO-3166 alpha-2](https://www.iso.org/obp/ui/#search/code/) format.\n   * @format COUNTRY\n   */\n  country?: string | null;\n  /**\n   * Code for a subdivision (such as state, prefecture, or province) in [ISO 3166-2](https://www.iso.org/standard/72483.html) format.\n   * @maxLength 50\n   */\n  subdivision?: string | null;\n  /**\n   * City name.\n   * @maxLength 50\n   */\n  city?: string | null;\n  /**\n   * Postal or zip code.\n   * @maxLength 50\n   */\n  postalCode?: string | null;\n  /** Street address. */\n  streetAddress?: StreetAddress;\n  /**\n   * Main address line (usually street name and number).\n   * @maxLength 150\n   */\n  addressLine1?: string | null;\n  /**\n   * Free text providing more detailed address info. Usually contains apt, suite, floor.\n   * @maxLength 100\n   */\n  addressLine2?: string | null;\n  /**\n   * Free text to help find the address.\n   * @maxLength 100\n   */\n  hint?: string | null;\n  /** Geocode object containing latitude and longitude coordinates. */\n  location?: AddressLocation;\n  /**\n   * Country's full name.\n   * @readonly\n   */\n  countryFullname?: string | null;\n  /**\n   * Subdivision full-name.\n   * @readonly\n   */\n  subdivisionFullname?: string | null;\n}\n\nexport interface StreetAddress {\n  /**\n   * Street number.\n   * @maxLength 50\n   */\n  number?: string;\n  /**\n   * Street name.\n   * @maxLength 200\n   */\n  name?: string;\n}\n\nexport interface AddressLocation {\n  /** Address latitude. */\n  latitude?: number | null;\n  /** Address longitude. */\n  longitude?: number | null;\n}\n\nexport interface ShippingInfo {\n  /** Recipient's contact details. */\n  contactDetails?: FullAddressContactDetails;\n  /** Recipient's shipping address. */\n  shippingAddress?: Address;\n}\n\nexport interface BusinessDetails {\n  /**\n   * Name of the business issuing the invoice.\n   * @minLength 1\n   * @maxLength 200\n   */\n  companyName?: string | null;\n  /**\n   * Business contact email address.\n   * @format EMAIL\n   */\n  email?: string | null;\n  /**\n   * Business contact phone number.\n   * @format PHONE\n   */\n  phone?: string | null;\n  /** Business address. */\n  address?: Address;\n  /**\n   * Business logo. WixMedia image ID.\n   * @minLength 1\n   * @maxLength 100\n   */\n  imageId?: string | null;\n  /**\n   * Company ID.\n   * @maxLength 30\n   */\n  companyId?: string | null;\n}\n\nexport interface LineItem extends LineItemItemDetailsOneOf {\n  /** Custom item. */\n  customItem?: CustomItem;\n  /** Catalog item. */\n  catalogItem?: CatalogItem;\n  /** Line item type. */\n  itemType?: LineItemItemTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface LineItemItemDetailsOneOf {\n  /** Custom item. */\n  customItem?: CustomItem;\n  /** Catalog item. */\n  catalogItem?: CatalogItem;\n}\n\nexport enum LineItemItemType {\n  UNKNOWN_ITEM = 'UNKNOWN_ITEM',\n  /** Custom item type. */\n  CUSTOM = 'CUSTOM',\n  /** Catalog item type. */\n  CATALOG = 'CATALOG',\n}\n\n/** @enumType */\nexport type LineItemItemTypeWithLiterals =\n  | LineItemItemType\n  | 'UNKNOWN_ITEM'\n  | 'CUSTOM'\n  | 'CATALOG';\n\nexport interface CustomItem {\n  /**\n   * Custom item ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Custom item name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /**\n   * Custom item description.\n   * @minLength 1\n   * @maxLength 600\n   */\n  description?: string | null;\n  /**\n   * Custom item quantity.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:100000, maxScale:4 }\n   */\n  quantity?: string;\n  /**\n   * Price per unit of this item.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string;\n  /** References to the line item's origin catalog. */\n  catalogReference?: CatalogReference;\n  /** Custom item discount. */\n  discount?: LineItemDiscount;\n  /** Custom item tax info. */\n  taxInfo?: LineItemTaxInfo;\n  /**\n   * Custom item totals.\n   * @readonly\n   */\n  totals?: LineItemTotals;\n}\n\nexport interface CatalogReference {\n  /**\n   * ID of the item within the catalog it belongs to.\n   * @format GUID\n   */\n  catalogItemId?: string;\n  /**\n   * ID of the app providing the catalog.\n   *\n   * You can get your app's ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\n   *\n   * For items from Wix catalogs, the following values always apply:\n   *\n   * - Wix Stores: `215238eb-22a5-4c36-9e7b-e7c08025e04e`\n   * - Wix Bookings: `13d21c63-b5ec-5912-8397-c3a5ddb27a97`\n   * - Wix Restaurants: `9a5d83fd-8570-482e-81ab-cfa88942ee60`\n   * @format GUID\n   */\n  appId?: string;\n  /**\n   * Additional item details in key pairs. Use this optional field to provide more specificity with item selection.\n   * The options field values differ depending on which catalog is providing the items.\n   */\n  options?: Record<string, any> | null;\n}\n\nexport interface LineItemDiscount extends LineItemDiscountDiscountDetailsOneOf {\n  /**\n   * Fixed monetary amount discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage-based discount (0-100).\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n  /**\n   * ID of the discount.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Name or description of the discount.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /** Type of the discount. */\n  discountType?: LineItemDiscountDiscountTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface LineItemDiscountDiscountDetailsOneOf {\n  /**\n   * Fixed monetary amount discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage-based discount (0-100).\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n}\n\nexport enum LineItemDiscountDiscountType {\n  /** Discount type is unknown. */\n  UNKNOWN_DISCOUNT = 'UNKNOWN_DISCOUNT',\n  /** Fixed monetary amount discount. */\n  FIXED = 'FIXED',\n  /** Percentage-based discount. */\n  PERCENTAGE = 'PERCENTAGE',\n}\n\n/** @enumType */\nexport type LineItemDiscountDiscountTypeWithLiterals =\n  | LineItemDiscountDiscountType\n  | 'UNKNOWN_DISCOUNT'\n  | 'FIXED'\n  | 'PERCENTAGE';\n\nexport interface LineItemTaxInfo {\n  /**\n   * Tax group ID which is applied for the item.\n   * @format GUID\n   */\n  taxGroupId?: string | null;\n  /**\n   * Catalog item tax breakdown.\n   * @readonly\n   * @maxSize 7\n   */\n  taxBreakdown?: LineItemTaxBreakdown[];\n  /**\n   * Whether tax is included in the item's price.\n   * @readonly\n   */\n  taxIncludedInPrice?: boolean | null;\n}\n\nexport interface LineItemTaxBreakdown {\n  /**\n   * Tax name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Tax rate percentage.\n   * For example: 0.1000 means 10% tax, and 2.1000 means 210% tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, maxScale:6 }\n   */\n  rate?: string;\n  /**\n   * Taxable amount this tax applies to.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxableAmount?: string;\n  /**\n   * Amount of the price that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exemptAmount?: string;\n  /**\n   * Applied tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxAmount?: string;\n}\n\nexport interface LineItemTotals {\n  /**\n   * Line item subtotal before discounts and taxes.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  subtotal?: string | null;\n  /**\n   * Line item total discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  discount?: string | null;\n  /**\n   * Line item total price after discounts and before taxes.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceBeforeTax?: string | null;\n  /**\n   * Line item total price that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exempt?: string | null;\n  /**\n   * Line item total applied tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  tax?: string | null;\n  /**\n   * Line item total price after taxes and discounts.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceAfterTax?: string | null;\n  /**\n   * Line item total price including taxes but before discounts.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string | null;\n}\n\nexport interface CatalogItem {\n  /**\n   * Catalog item ID.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Catalog item name.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /**\n   * Catalog item description.\n   * @minLength 1\n   * @maxLength 600\n   */\n  description?: string | null;\n  /**\n   * Catalog item quantity.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:100000, maxScale:4 }\n   */\n  quantity?: string;\n  /**\n   * Catalog item price per unit override.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string | null;\n  /** References to the line item's origin catalog. */\n  catalogReference?: CatalogReference;\n  /**\n   * Catalog item type.\n   * @readonly\n   */\n  itemType?: ItemType;\n  /** Catalog item discount. */\n  discount?: LineItemDiscount;\n  /** Catalog item tax info. */\n  taxInfo?: LineItemTaxInfo;\n  /**\n   * Catalog item totals.\n   * @readonly\n   */\n  totals?: LineItemTotals;\n}\n\nexport interface ItemType extends ItemTypeItemTypeDataOneOf {\n  /** Preset item type. */\n  preset?: PresetTypeWithLiterals;\n  /**\n   * Custom item type.\n   * @maxLength 200\n   */\n  custom?: string;\n}\n\n/** @oneof */\nexport interface ItemTypeItemTypeDataOneOf {\n  /** Preset item type. */\n  preset?: PresetTypeWithLiterals;\n  /**\n   * Custom item type.\n   * @maxLength 200\n   */\n  custom?: string;\n}\n\nexport enum PresetType {\n  /** Unknown preset type. */\n  UNKNOWN_ITEM = 'UNKNOWN_ITEM',\n  /** Service type. */\n  SERVICE = 'SERVICE',\n  /** Gift card type. */\n  GIFT_CARD = 'GIFT_CARD',\n  /** Digital type. */\n  DIGITAL = 'DIGITAL',\n  /** Physical type. */\n  PHYSICAL = 'PHYSICAL',\n}\n\n/** @enumType */\nexport type PresetTypeWithLiterals =\n  | PresetType\n  | 'UNKNOWN_ITEM'\n  | 'SERVICE'\n  | 'GIFT_CARD'\n  | 'DIGITAL'\n  | 'PHYSICAL';\n\nexport interface ShipmentInfo {\n  /**\n   * ID of external provider which was a source of shipment info.\n   * @minLength 1\n   * @maxLength 100\n   */\n  carrierId?: string | null;\n  /**\n   * Unique code (or ID) of selected shipment option. For example, `\"usps_std_overnight\"`.\n   * @minLength 1\n   * @maxLength 100\n   */\n  code?: string | null;\n  /**\n   * Shipment option title. For example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.\n   * @minLength 1\n   * @maxLength 250\n   */\n  title?: string | null;\n  /** Delivery logistics. */\n  logistics?: DeliveryLogistics;\n  /** Shipment region information. */\n  region?: ShipmentRegion;\n  /**\n   * Shipment price.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  price?: string;\n  /** Shipment tax breakdown. */\n  taxInfo?: ShipmentTaxInfo;\n  /**\n   * Shipment totals.\n   * @readonly\n   */\n  totals?: ShipmentTotals;\n}\n\nexport interface DeliveryLogistics {\n  /**\n   * Expected delivery time in free text. For example, `\"3-5 business days\"`.\n   * @minLength 1\n   * @maxLength 500\n   */\n  deliveryTime?: string | null;\n  /**\n   * Instructions for carrier. For example, `\"Please knock on the door. If unanswered, please call contact number. Thanks.\"`.\n   * @minLength 1\n   * @maxLength 1000\n   */\n  instructions?: string | null;\n  /** Expected delivery time. */\n  deliveryTimeSlot?: DeliveryTimeSlot;\n}\n\nexport interface DeliveryTimeSlot {\n  /** Delivery slot starting time. */\n  from?: Date | null;\n  /** Delivery slot ending time. */\n  to?: Date | null;\n}\n\nexport interface ShipmentRegion {\n  /**\n   * Name of shipment region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.\n   * @minLength 1\n   * @maxLength 100\n   */\n  name?: string | null;\n}\n\nexport interface ShipmentTaxInfo {\n  /**\n   * Tax group ID which is applied for the item.\n   * @format GUID\n   */\n  taxGroupId?: string | null;\n  /**\n   * Catalog item tax breakdown.\n   * @readonly\n   * @maxSize 7\n   */\n  taxBreakdown?: ShipmentTaxBreakdown[];\n  /**\n   * Whether tax is included in the item's price.\n   * @readonly\n   */\n  taxIncludedInPrice?: boolean | null;\n}\n\nexport interface ShipmentTaxBreakdown {\n  /**\n   * Tax name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Tax rate percentage.\n   * For example: 0.1000 means 10% tax, and 2.1000 means 210% tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, maxScale:6 }\n   */\n  rate?: string;\n  /**\n   * Taxable amount this tax applies to.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxableAmount?: string;\n  /**\n   * Amount of the price that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exemptAmount?: string;\n  /**\n   * Applied tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxAmount?: string;\n}\n\nexport interface ShipmentTotals {\n  /**\n   * Shipment discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  discount?: string | null;\n  /**\n   * Total price of shipment after discounts (when relevant), and before tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceBeforeTax?: string;\n  /**\n   * Total amount of the price that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exempt?: string | null;\n  /**\n   * Total applied tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  tax?: string | null;\n  /**\n   * Shipment price after all discounts (if any exist), and after tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  priceAfterTax?: string;\n}\n\nexport interface AdditionalFee {\n  /**\n   * ID of the additional fee.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Name of the additional fee.\n   * @minLength 1\n   * @maxLength 50\n   */\n  name?: string;\n  /**\n   * Amount of the additional fee.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  amount?: string;\n  /**\n   * Specifies the entity that added the additional fee.\n   * @internal\n   */\n  source?: AdditionalFeeSourceWithLiterals;\n}\n\nexport enum AdditionalFeeSource {\n  UNKNOWN_ADDITIONAL_FEE_SOURCE = 'UNKNOWN_ADDITIONAL_FEE_SOURCE',\n  /** The additional fee was added by an additional fee service plugin. */\n  SERVICE_PLUGIN = 'SERVICE_PLUGIN',\n  /** The additional fee was added to the item by a catalog or custom line item. */\n  ITEM = 'ITEM',\n  /** The additional fee was added manually on request. */\n  MANUAL = 'MANUAL',\n  /** The additional fee was added by the shipping provider. */\n  SHIPPING = 'SHIPPING',\n  /** The additional fee was added by the Wix eCommerce platform. */\n  PLATFORM = 'PLATFORM',\n}\n\n/** @enumType */\nexport type AdditionalFeeSourceWithLiterals =\n  | AdditionalFeeSource\n  | 'UNKNOWN_ADDITIONAL_FEE_SOURCE'\n  | 'SERVICE_PLUGIN'\n  | 'ITEM'\n  | 'MANUAL'\n  | 'SHIPPING'\n  | 'PLATFORM';\n\nexport interface Discount extends DiscountDiscountDetailsOneOf {\n  /**\n   * Fixed monetary amount discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage-based discount (0-100).\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n  /**\n   * ID of the discount.\n   * @format GUID\n   */\n  _id?: string | null;\n  /**\n   * Name or description of the discount.\n   * @minLength 1\n   * @maxLength 200\n   */\n  name?: string | null;\n  /** Type of the discount. */\n  discountType?: DiscountTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface DiscountDiscountDetailsOneOf {\n  /**\n   * Fixed monetary amount discount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDiscount?: string;\n  /**\n   * Percentage-based discount (0-100).\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:100, maxScale:2 }\n   */\n  percentageDiscount?: string;\n}\n\nexport enum DiscountType {\n  /** Discount type is unknown. */\n  UNKNOWN_DISCOUNT = 'UNKNOWN_DISCOUNT',\n  /** Fixed monetary amount discount. */\n  FIXED = 'FIXED',\n  /** Percentage-based discount. */\n  PERCENTAGE = 'PERCENTAGE',\n}\n\n/** @enumType */\nexport type DiscountTypeWithLiterals =\n  | DiscountType\n  | 'UNKNOWN_DISCOUNT'\n  | 'FIXED'\n  | 'PERCENTAGE';\n\nexport interface Deposit extends DepositDepositDetailsOneOf {\n  /**\n   * Fixed monetary amount deposit.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDeposit?: string;\n  /**\n   * Percentage-based deposit (0-100).\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lt:100, maxScale:2 }\n   */\n  percentageDeposit?: string;\n  /** Type of the deposit. */\n  depositType?: DepositTypeWithLiterals;\n  /**\n   * Calculated deposit amount.\n   * @readonly\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  total?: string | null;\n}\n\n/** @oneof */\nexport interface DepositDepositDetailsOneOf {\n  /**\n   * Fixed monetary amount deposit.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lte:1000000000000000, maxScale:4 }\n   */\n  fixedDeposit?: string;\n  /**\n   * Percentage-based deposit (0-100).\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gt:0, lt:100, maxScale:2 }\n   */\n  percentageDeposit?: string;\n}\n\nexport enum DepositType {\n  /** Deposit type is unknown. */\n  UNKNOWN_DEPOSIT = 'UNKNOWN_DEPOSIT',\n  /** Fixed monetary amount deposit. */\n  FIXED = 'FIXED',\n  /** Percentage-based deposit. */\n  PERCENTAGE = 'PERCENTAGE',\n}\n\n/** @enumType */\nexport type DepositTypeWithLiterals =\n  | DepositType\n  | 'UNKNOWN_DEPOSIT'\n  | 'FIXED'\n  | 'PERCENTAGE';\n\nexport interface TaxInfo {\n  /**\n   * Tax breakdown.\n   * @maxSize 50\n   */\n  taxBreakdown?: TaxBreakdown[];\n  /**\n   * Whether the invoice is exempt from tax calculations.\n   * @readonly\n   */\n  taxExempt?: boolean;\n}\n\nexport interface TaxBreakdown {\n  /**\n   * Tax name.\n   * @maxLength 200\n   */\n  name?: string;\n  /**\n   * Tax rate percentage, as a positive decimal numeral. For example, \"0.13\".\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, maxScale:6 }\n   */\n  rate?: string;\n  /**\n   * Taxable amount this tax applies to.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxableAmount?: string;\n  /**\n   * Amount of the price that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exemptAmount?: string;\n  /**\n   * Applied tax amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  taxAmount?: string;\n}\n\nexport interface Payment\n  extends PaymentPaymentOptionsOneOf,\n    PaymentReceiptOptionsOneOf {\n  /** Regular payment details. */\n  regularPayment?: RegularPaymentDetails;\n  /** Gift card payment details. */\n  giftCardPayment?: GiftCardPaymentDetails;\n  /**\n   * Wix receipt.\n   * @internal\n   */\n  wixReceipt?: WixReceipt;\n  /**\n   * External receipt.\n   * @internal\n   */\n  externalReceipt?: ExternalReceipt;\n  /**\n   * Payment ID.\n   * @format GUID\n   */\n  _id?: string;\n  /** Date and time the payment was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  _createdDate?: Date | null;\n  /** Date and time the payment was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#combined_date_and_time_representations) format. */\n  _updatedDate?: Date | null;\n  /**\n   * Payment amount.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  amount?: string;\n  /** Date and time when the payment was made. */\n  paymentDate?: Date | null;\n  /** Type of payment method used. */\n  paymentType?: PaymentTypeWithLiterals;\n  /** Type of receipt. */\n  receiptType?: ReceiptTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface PaymentPaymentOptionsOneOf {\n  /** Regular payment details. */\n  regularPayment?: RegularPaymentDetails;\n  /** Gift card payment details. */\n  giftCardPayment?: GiftCardPaymentDetails;\n}\n\n/** @oneof */\nexport interface PaymentReceiptOptionsOneOf {\n  /**\n   * Wix receipt.\n   * @internal\n   */\n  wixReceipt?: WixReceipt;\n  /**\n   * External receipt.\n   * @internal\n   */\n  externalReceipt?: ExternalReceipt;\n}\n\nexport enum PaymentType {\n  UNKNOWN_PAYMENT = 'UNKNOWN_PAYMENT',\n  /** Conventional payment, not including Wix eCommerce's gift cards. Includes payments made through Wix Payments, Stripe, and all [supported payment gateways](https://www.wix.com/payments/payment-gateways). */\n  REGULAR = 'REGULAR',\n  /** Payment using a Wix eCommerce gift card. */\n  GIFT_CARD = 'GIFT_CARD',\n}\n\n/** @enumType */\nexport type PaymentTypeWithLiterals =\n  | PaymentType\n  | 'UNKNOWN_PAYMENT'\n  | 'REGULAR'\n  | 'GIFT_CARD';\n\nexport interface RegularPaymentDetails {\n  /**\n   * Wix Payments order ID.\n   * @maxLength 100\n   */\n  paymentOrderId?: string;\n  /**\n   * Payment gateway's transaction ID. This field is only returned when the value of offline_payment is false.\n   * @maxLength 100\n   */\n  gatewayTransactionId?: string | null;\n  /**\n   * Payment method. Non-exhaustive list of supported values:\n   *\n   * - CreditCard, Alipay, AstropayCash, AstropayDBT, AstropayMBT, Bitcoin, BitPay, Cash, ConvenienceStore, EPay, Fake, Giropay, IDeal, InPerson, Klarna, MercadoPago, Netpay, NordeaSolo, Offline, PagSeguro, PayEasy, PayPal, Paysafecard, Paysafecash, PointOfSale, Poli, Privat24, Przelewy24, RapidTransfer, Sepa, Skrill, Sofort, Trustly, Neteller, Unionpay, UniPay, Yandex\n   * @maxLength 100\n   */\n  paymentMethod?: string;\n  /**\n   * Transaction ID in the payment provider's system. For example, at PayPal, Square, Stripe, etc. Not returned for offline payments.\n   * @maxLength 100\n   */\n  providerTransactionId?: string | null;\n  /** Whether the payment was made offline. For example, when using cash or when adding payment to the invoice in Business Manager. */\n  offlinePayment?: boolean;\n  /** Payment status. */\n  paymentStatus?: PaymentStatusWithLiterals;\n  /**\n   * Payment service provider display name. Non-exhaustive list of supported values: Wix Payments, PayPal, Square, Stripe, etc.\n   * @maxLength 300\n   */\n  paymentProvider?: string | null;\n  /** Whether regular card used. */\n  creditCardDetails?: CreditCardDetails;\n}\n\nexport enum PaymentStatus {\n  UNKNOWN_PAYMENT_STATUS = 'UNKNOWN_PAYMENT_STATUS',\n  /** Payment was voided. */\n  VOIDED = 'VOIDED',\n  /** Payment was authorized. */\n  AUTHORIZED = 'AUTHORIZED',\n  /** Payment was partially refunded. */\n  PARTIALLY_REFUNDED = 'PARTIALLY_REFUNDED',\n  /** Payment was refunded. */\n  REFUNDED = 'REFUNDED',\n  /** Payment was declined. */\n  DECLINED = 'DECLINED',\n  /** Payment was canceled. */\n  CANCELED = 'CANCELED',\n  /** Payment is pending merchant. */\n  PENDING_MERCHANT = 'PENDING_MERCHANT',\n  /** Payment is pending. */\n  PENDING = 'PENDING',\n  /** Payment was approved. */\n  APPROVED = 'APPROVED',\n}\n\n/** @enumType */\nexport type PaymentStatusWithLiterals =\n  | PaymentStatus\n  | 'UNKNOWN_PAYMENT_STATUS'\n  | 'VOIDED'\n  | 'AUTHORIZED'\n  | 'PARTIALLY_REFUNDED'\n  | 'REFUNDED'\n  | 'DECLINED'\n  | 'CANCELED'\n  | 'PENDING_MERCHANT'\n  | 'PENDING'\n  | 'APPROVED';\n\nexport interface CreditCardDetails {\n  /**\n   * The last 4 digits of the card number.\n   * @maxLength 4\n   */\n  lastFourDigits?: string;\n  /**\n   * Card issuer's brand.\n   * @maxLength 100\n   */\n  brand?: string;\n}\n\nexport interface GiftCardPaymentDetails {\n  /**\n   * Gift card payment ID.\n   * @minLength 1\n   * @maxLength 100\n   */\n  giftCardPaymentId?: string;\n  /**\n   * ID of the app that created the gift card.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum ReceiptType {\n  UNKNOWN_RECEIPT = 'UNKNOWN_RECEIPT',\n  /** Wix receipt. */\n  WIX = 'WIX',\n  /** External receipt. */\n  EXTERNAL = 'EXTERNAL',\n}\n\n/** @enumType */\nexport type ReceiptTypeWithLiterals =\n  | ReceiptType\n  | 'UNKNOWN_RECEIPT'\n  | 'WIX'\n  | 'EXTERNAL';\n\nexport interface WixReceipt {\n  /**\n   * Receipt ID.\n   * @format GUID\n   */\n  receiptId?: string;\n  /**\n   * Display number of receipt.\n   * @minLength 1\n   * @maxLength 40\n   */\n  displayNumber?: string | null;\n}\n\nexport interface ExternalReceipt {\n  /**\n   * External receipt ID.\n   * @maxLength 100\n   */\n  receiptId?: string | null;\n  /**\n   * ID of the app providing the receipt.\n   * @format GUID\n   */\n  appId?: string | null;\n  /**\n   * Display number of receipt.\n   * @minLength 1\n   * @maxLength 40\n   */\n  displayNumber?: string | null;\n}\n\nexport interface Totals {\n  /**\n   * Subtotal before taxes, discounts, and fees.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  subtotal?: string;\n  /**\n   * Total discount amount applied to the invoice.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  discount?: string | null;\n  /**\n   * Total shipping costs for the invoice.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  shipping?: string | null;\n  /**\n   * Total amount that was exempt from tax.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  exempt?: string | null;\n  /**\n   * Total tax amount applied to the invoice.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  tax?: string | null;\n  /**\n   * Total amount due on the invoice.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  total?: string;\n  /**\n   * Total amount already paid.\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  paidAmount?: string;\n  /**\n   * Outstanding balance remaining.\n   * @readonly\n   * @format DECIMAL_VALUE\n   * @decimalValue options { gte:0, lte:1000000000000000, maxScale:4 }\n   */\n  balance?: string;\n}\n\nexport interface CustomFields {\n  /**\n   * Header custom fields.\n   * @maxSize 4\n   */\n  headerCustomFields?: CustomField[];\n  /**\n   * Business custom fields.\n   * @maxSize 4\n   */\n  businessCustomFields?: CustomField[];\n  /**\n   * Customer custom fields.\n   * @maxSize 4\n   */\n  customerCustomFields?: CustomField[];\n  /** Footer custom field, support rich content. */\n  footerCustomField?: FooterContent;\n}\n\nexport interface CustomField {\n  /**\n   * Field title.\n   * @minLength 1\n   * @maxLength 100\n   */\n  title?: string | null;\n  /**\n   * Field value.\n   * @maxLength 100\n   */\n  value?: string;\n}\n\nexport interface FooterContent {\n  /** Override invoice preset footer custom fields. */\n  overridePresetContent?: boolean;\n  /** Footer rich content, maximum limit 5000 bytes. */\n  content?: RichContent;\n}\n\nexport interface RichContent {\n  /** Node objects representing a rich content document. */\n  nodes?: Node[];\n  /** Object metadata. */\n  metadata?: Metadata;\n  /** Global styling for header, paragraph, block quote, and code block nodes in the object. */\n  documentStyle?: DocumentStyle;\n}\n\nexport interface Node extends NodeDataOneOf {\n  /** Data for a button node. */\n  buttonData?: ButtonData;\n  /** Data for a code block node. */\n  codeBlockData?: CodeBlockData;\n  /** Data for a divider node. */\n  dividerData?: DividerData;\n  /** Data for a file node. */\n  fileData?: FileData;\n  /** Data for a gallery node. */\n  galleryData?: GalleryData;\n  /** Data for a GIF node. */\n  gifData?: GIFData;\n  /** Data for a heading node. */\n  headingData?: HeadingData;\n  /** Data for an embedded HTML node. */\n  htmlData?: HTMLData;\n  /** Data for an image node. */\n  imageData?: ImageData;\n  /** Data for a link preview node. */\n  linkPreviewData?: LinkPreviewData;\n  /** @deprecated */\n  mapData?: MapData;\n  /** Data for a paragraph node. */\n  paragraphData?: ParagraphData;\n  /** Data for a poll node. */\n  pollData?: PollData;\n  /** Data for a text node. Used to apply decorations to text. */\n  textData?: TextData;\n  /** Data for an app embed node. */\n  appEmbedData?: AppEmbedData;\n  /** Data for a video node. */\n  videoData?: VideoData;\n  /** Data for an oEmbed node. */\n  embedData?: EmbedData;\n  /** Data for a collapsible list node. */\n  collapsibleListData?: CollapsibleListData;\n  /** Data for a table node. */\n  tableData?: TableData;\n  /** Data for a table cell node. */\n  tableCellData?: TableCellData;\n  /** Data for a custom external node. */\n  externalData?: Record<string, any> | null;\n  /** Data for an audio node. */\n  audioData?: AudioData;\n  /** Data for an ordered list node. */\n  orderedListData?: OrderedListData;\n  /** Data for a bulleted list node. */\n  bulletedListData?: BulletedListData;\n  /** Data for a block quote node. */\n  blockquoteData?: BlockquoteData;\n  /** Data for a caption node. */\n  captionData?: CaptionData;\n  /** Data for a layout node. Reserved for future use. */\n  layoutData?: LayoutData;\n  /** Data for a cell node. */\n  layoutCellData?: LayoutCellData;\n  /** Data for a shape node. */\n  shapeData?: ShapeData;\n  /** Node type. Use `APP_EMBED` for nodes that embed content from other Wix apps. Use `EMBED` to embed content in [oEmbed](https://oembed.com/) format. */\n  type?: NodeTypeWithLiterals;\n  /** Node ID. */\n  id?: string;\n  /** A list of child nodes. */\n  nodes?: Node[];\n  /** Padding and background color styling for the node. */\n  style?: NodeStyle;\n}\n\n/** @oneof */\nexport interface NodeDataOneOf {\n  /** Data for a button node. */\n  buttonData?: ButtonData;\n  /** Data for a code block node. */\n  codeBlockData?: CodeBlockData;\n  /** Data for a divider node. */\n  dividerData?: DividerData;\n  /** Data for a file node. */\n  fileData?: FileData;\n  /** Data for a gallery node. */\n  galleryData?: GalleryData;\n  /** Data for a GIF node. */\n  gifData?: GIFData;\n  /** Data for a heading node. */\n  headingData?: HeadingData;\n  /** Data for an embedded HTML node. */\n  htmlData?: HTMLData;\n  /** Data for an image node. */\n  imageData?: ImageData;\n  /** Data for a link preview node. */\n  linkPreviewData?: LinkPreviewData;\n  /** @deprecated */\n  mapData?: MapData;\n  /** Data for a paragraph node. */\n  paragraphData?: ParagraphData;\n  /** Data for a poll node. */\n  pollData?: PollData;\n  /** Data for a text node. Used to apply decorations to text. */\n  textData?: TextData;\n  /** Data for an app embed node. */\n  appEmbedData?: AppEmbedData;\n  /** Data for a video node. */\n  videoData?: VideoData;\n  /** Data for an oEmbed node. */\n  embedData?: EmbedData;\n  /** Data for a collapsible list node. */\n  collapsibleListData?: CollapsibleListData;\n  /** Data for a table node. */\n  tableData?: TableData;\n  /** Data for a table cell node. */\n  tableCellData?: TableCellData;\n  /** Data for a custom external node. */\n  externalData?: Record<string, any> | null;\n  /** Data for an audio node. */\n  audioData?: AudioData;\n  /** Data for an ordered list node. */\n  orderedListData?: OrderedListData;\n  /** Data for a bulleted list node. */\n  bulletedListData?: BulletedListData;\n  /** Data for a block quote node. */\n  blockquoteData?: BlockquoteData;\n  /** Data for a caption node. */\n  captionData?: CaptionData;\n  /** Data for a layout node. Reserved for future use. */\n  layoutData?: LayoutData;\n  /** Data for a cell node. */\n  layoutCellData?: LayoutCellData;\n  /** Data for a shape node. */\n  shapeData?: ShapeData;\n}\n\nexport enum NodeType {\n  PARAGRAPH = 'PARAGRAPH',\n  TEXT = 'TEXT',\n  HEADING = 'HEADING',\n  BULLETED_LIST = 'BULLETED_LIST',\n  ORDERED_LIST = 'ORDERED_LIST',\n  LIST_ITEM = 'LIST_ITEM',\n  BLOCKQUOTE = 'BLOCKQUOTE',\n  CODE_BLOCK = 'CODE_BLOCK',\n  VIDEO = 'VIDEO',\n  DIVIDER = 'DIVIDER',\n  FILE = 'FILE',\n  GALLERY = 'GALLERY',\n  GIF = 'GIF',\n  HTML = 'HTML',\n  IMAGE = 'IMAGE',\n  LINK_PREVIEW = 'LINK_PREVIEW',\n  /** @deprecated */\n  MAP = 'MAP',\n  POLL = 'POLL',\n  APP_EMBED = 'APP_EMBED',\n  BUTTON = 'BUTTON',\n  COLLAPSIBLE_LIST = 'COLLAPSIBLE_LIST',\n  TABLE = 'TABLE',\n  EMBED = 'EMBED',\n  COLLAPSIBLE_ITEM = 'COLLAPSIBLE_ITEM',\n  COLLAPSIBLE_ITEM_TITLE = 'COLLAPSIBLE_ITEM_TITLE',\n  COLLAPSIBLE_ITEM_BODY = 'COLLAPSIBLE_ITEM_BODY',\n  TABLE_CELL = 'TABLE_CELL',\n  TABLE_ROW = 'TABLE_ROW',\n  EXTERNAL = 'EXTERNAL',\n  AUDIO = 'AUDIO',\n  CAPTION = 'CAPTION',\n  LAYOUT = 'LAYOUT',\n  LAYOUT_CELL = 'LAYOUT_CELL',\n  SHAPE = 'SHAPE',\n}\n\n/** @enumType */\nexport type NodeTypeWithLiterals =\n  | NodeType\n  | 'PARAGRAPH'\n  | 'TEXT'\n  | 'HEADING'\n  | 'BULLETED_LIST'\n  | 'ORDERED_LIST'\n  | 'LIST_ITEM'\n  | 'BLOCKQUOTE'\n  | 'CODE_BLOCK'\n  | 'VIDEO'\n  | 'DIVIDER'\n  | 'FILE'\n  | 'GALLERY'\n  | 'GIF'\n  | 'HTML'\n  | 'IMAGE'\n  | 'LINK_PREVIEW'\n  | 'MAP'\n  | 'POLL'\n  | 'APP_EMBED'\n  | 'BUTTON'\n  | 'COLLAPSIBLE_LIST'\n  | 'TABLE'\n  | 'EMBED'\n  | 'COLLAPSIBLE_ITEM'\n  | 'COLLAPSIBLE_ITEM_TITLE'\n  | 'COLLAPSIBLE_ITEM_BODY'\n  | 'TABLE_CELL'\n  | 'TABLE_ROW'\n  | 'EXTERNAL'\n  | 'AUDIO'\n  | 'CAPTION'\n  | 'LAYOUT'\n  | 'LAYOUT_CELL'\n  | 'SHAPE';\n\nexport interface NodeStyle {\n  /** The top padding value in pixels. */\n  paddingTop?: string | null;\n  /** The bottom padding value in pixels. */\n  paddingBottom?: string | null;\n  /** The background color as a hexadecimal value. */\n  backgroundColor?: string | null;\n}\n\nexport interface ButtonData {\n  /** Styling for the button's container. */\n  containerData?: PluginContainerData;\n  /** The button type. */\n  type?: ButtonDataTypeWithLiterals;\n  /** Styling for the button. */\n  styles?: Styles;\n  /** The text to display on the button. */\n  text?: string | null;\n  /** Button link details. */\n  link?: Link;\n}\n\nexport interface Border {\n  /**\n   * Deprecated: Use `borderWidth` in `styles` instead.\n   * @deprecated\n   */\n  width?: number | null;\n  /**\n   * Deprecated: Use `borderRadius` in `styles` instead.\n   * @deprecated\n   */\n  radius?: number | null;\n}\n\nexport interface Colors {\n  /**\n   * Deprecated: Use `textColor` in `styles` instead.\n   * @deprecated\n   */\n  text?: string | null;\n  /**\n   * Deprecated: Use `borderColor` in `styles` instead.\n   * @deprecated\n   */\n  border?: string | null;\n  /**\n   * Deprecated: Use `backgroundColor` in `styles` instead.\n   * @deprecated\n   */\n  background?: string | null;\n}\n\nexport interface PluginContainerData {\n  /** The width of the node when it's displayed. */\n  width?: PluginContainerDataWidth;\n  /** The node's alignment within its container. */\n  alignment?: PluginContainerDataAlignmentWithLiterals;\n  /** Spoiler cover settings for the node. */\n  spoiler?: Spoiler;\n  /** The height of the node when it's displayed. */\n  height?: Height;\n  /** Sets whether text should wrap around this node when it's displayed. If `textWrap` is `false`, the node takes up the width of its container. Defaults to `true` for all node types except 'DIVIVDER' where it defaults to `false`. */\n  textWrap?: boolean | null;\n}\n\nexport enum WidthType {\n  /** Width matches the content width */\n  CONTENT = 'CONTENT',\n  /** Small Width */\n  SMALL = 'SMALL',\n  /** Width will match the original asset width */\n  ORIGINAL = 'ORIGINAL',\n  /** coast-to-coast display */\n  FULL_WIDTH = 'FULL_WIDTH',\n}\n\n/** @enumType */\nexport type WidthTypeWithLiterals =\n  | WidthType\n  | 'CONTENT'\n  | 'SMALL'\n  | 'ORIGINAL'\n  | 'FULL_WIDTH';\n\nexport interface PluginContainerDataWidth\n  extends PluginContainerDataWidthDataOneOf {\n  /**\n   * One of the following predefined width options:\n   * `CONTENT`: The width of the container matches the content width.\n   * `SMALL`: A small width.\n   * `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width.\n   * `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen.\n   */\n  size?: WidthTypeWithLiterals;\n  /** A custom width value in pixels. */\n  custom?: string | null;\n}\n\n/** @oneof */\nexport interface PluginContainerDataWidthDataOneOf {\n  /**\n   * One of the following predefined width options:\n   * `CONTENT`: The width of the container matches the content width.\n   * `SMALL`: A small width.\n   * `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width.\n   * `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen.\n   */\n  size?: WidthTypeWithLiterals;\n  /** A custom width value in pixels. */\n  custom?: string | null;\n}\n\nexport enum PluginContainerDataAlignment {\n  /** Center Alignment */\n  CENTER = 'CENTER',\n  /** Left Alignment */\n  LEFT = 'LEFT',\n  /** Right Alignment */\n  RIGHT = 'RIGHT',\n}\n\n/** @enumType */\nexport type PluginContainerDataAlignmentWithLiterals =\n  | PluginContainerDataAlignment\n  | 'CENTER'\n  | 'LEFT'\n  | 'RIGHT';\n\nexport interface Spoiler {\n  /** Sets whether the spoiler cover is enabled for this node. Defaults to `false`. */\n  enabled?: boolean | null;\n  /** The description displayed on top of the spoiler cover. */\n  description?: string | null;\n  /** The text for the button used to remove the spoiler cover. */\n  buttonText?: string | null;\n}\n\nexport interface Height {\n  /** A custom height value in pixels. */\n  custom?: string | null;\n}\n\nexport enum ButtonDataType {\n  /** Regular link button */\n  LINK = 'LINK',\n  /** Triggers custom action that is defined in plugin configuration by the consumer */\n  ACTION = 'ACTION',\n}\n\n/** @enumType */\nexport type ButtonDataTypeWithLiterals = ButtonDataType | 'LINK' | 'ACTION';\n\nexport interface Styles {\n  /**\n   * Deprecated: Use `borderWidth` and `borderRadius` instead.\n   * @deprecated\n   */\n  border?: Border;\n  /**\n   * Deprecated: Use `textColor`, `borderColor` and `backgroundColor` instead.\n   * @deprecated\n   */\n  colors?: Colors;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /**\n   * Deprecated: Use `borderWidth` for normal/hover states instead.\n   * @deprecated\n   */\n  borderWidthHover?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /**\n   * Border color as a hexadecimal value (hover state).\n   * @format COLOR_HEX\n   */\n  borderColorHover?: string | null;\n  /**\n   * Text color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  textColor?: string | null;\n  /**\n   * Text color as a hexadecimal value (hover state).\n   * @format COLOR_HEX\n   */\n  textColorHover?: string | null;\n  /**\n   * Background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n  /**\n   * Background color as a hexadecimal value (hover state).\n   * @format COLOR_HEX\n   */\n  backgroundColorHover?: string | null;\n  /** Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`. */\n  buttonSize?: string | null;\n}\n\nexport interface Link extends LinkDataOneOf {\n  /** The absolute URL for the linked document. */\n  url?: string;\n  /** The target node's ID. Used for linking to another node in this object. */\n  anchor?: string;\n  /**\n   * he HTML `target` attribute value for the link. This property defines where the linked document opens as follows:\n   * `SELF` - Default. Opens the linked document in the same frame as the link.\n   * `BLANK` - Opens the linked document in a new browser tab or window.\n   * `PARENT` - Opens the linked document in the link's parent frame.\n   * `TOP` - Opens the linked document in the full body of the link's browser tab or window.\n   */\n  target?: TargetWithLiterals;\n  /** The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */\n  rel?: Rel;\n  /** A serialized object used for a custom or external link panel. */\n  customData?: string | null;\n}\n\n/** @oneof */\nexport interface LinkDataOneOf {\n  /** The absolute URL for the linked document. */\n  url?: string;\n  /** The target node's ID. Used for linking to another node in this object. */\n  anchor?: string;\n}\n\nexport enum Target {\n  /** Opens the linked document in the same frame as it was clicked (this is default) */\n  SELF = 'SELF',\n  /** Opens the linked document in a new window or tab */\n  BLANK = 'BLANK',\n  /** Opens the linked document in the parent frame */\n  PARENT = 'PARENT',\n  /** Opens the linked document in the full body of the window */\n  TOP = 'TOP',\n}\n\n/** @enumType */\nexport type TargetWithLiterals = Target | 'SELF' | 'BLANK' | 'PARENT' | 'TOP';\n\nexport interface Rel {\n  /** Indicates to search engine crawlers not to follow the link. Defaults to `false`. */\n  nofollow?: boolean | null;\n  /** Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. Defaults to `false`. */\n  sponsored?: boolean | null;\n  /** Indicates that this link is user-generated content and isn't necessarily trusted or endorsed by the page’s author. For example, a link in a fourm post. Defaults to `false`. */\n  ugc?: boolean | null;\n  /** Indicates that this link protect referral information from being passed to the target website. */\n  noreferrer?: boolean | null;\n}\n\nexport interface CodeBlockData {\n  /** Styling for the code block's text. */\n  textStyle?: TextStyle;\n}\n\nexport interface TextStyle {\n  /** Text alignment. Defaults to `AUTO`. */\n  textAlignment?: TextAlignmentWithLiterals;\n  /** A CSS `line-height` value for the text expressed as a ratio relative to the font size. For example, if the font size is 20px, a `lineHeight` value of `'1.5'`` results in a line height of 30px. */\n  lineHeight?: string | null;\n}\n\nexport enum TextAlignment {\n  /** browser default, eqivalent to `initial` */\n  AUTO = 'AUTO',\n  /** Left align */\n  LEFT = 'LEFT',\n  /** Right align */\n  RIGHT = 'RIGHT',\n  /** Center align */\n  CENTER = 'CENTER',\n  /** Text is spaced to line up its left and right edges to the left and right edges of the line box, except for the last line */\n  JUSTIFY = 'JUSTIFY',\n}\n\n/** @enumType */\nexport type TextAlignmentWithLiterals =\n  | TextAlignment\n  | 'AUTO'\n  | 'LEFT'\n  | 'RIGHT'\n  | 'CENTER'\n  | 'JUSTIFY';\n\nexport interface DividerData {\n  /** Styling for the divider's container. */\n  containerData?: PluginContainerData;\n  /** Divider line style. */\n  lineStyle?: LineStyleWithLiterals;\n  /** Divider width. */\n  width?: WidthWithLiterals;\n  /** Divider alignment. */\n  alignment?: DividerDataAlignmentWithLiterals;\n}\n\nexport enum LineStyle {\n  /** Single Line */\n  SINGLE = 'SINGLE',\n  /** Double Line */\n  DOUBLE = 'DOUBLE',\n  /** Dashed Line */\n  DASHED = 'DASHED',\n  /** Dotted Line */\n  DOTTED = 'DOTTED',\n}\n\n/** @enumType */\nexport type LineStyleWithLiterals =\n  | LineStyle\n  | 'SINGLE'\n  | 'DOUBLE'\n  | 'DASHED'\n  | 'DOTTED';\n\nexport enum Width {\n  /** Large line */\n  LARGE = 'LARGE',\n  /** Medium line */\n  MEDIUM = 'MEDIUM',\n  /** Small line */\n  SMALL = 'SMALL',\n}\n\n/** @enumType */\nexport type WidthWithLiterals = Width | 'LARGE' | 'MEDIUM' | 'SMALL';\n\nexport enum DividerDataAlignment {\n  /** Center alignment */\n  CENTER = 'CENTER',\n  /** Left alignment */\n  LEFT = 'LEFT',\n  /** Right alignment */\n  RIGHT = 'RIGHT',\n}\n\n/** @enumType */\nexport type DividerDataAlignmentWithLiterals =\n  | DividerDataAlignment\n  | 'CENTER'\n  | 'LEFT'\n  | 'RIGHT';\n\nexport interface FileData {\n  /** Styling for the file's container. */\n  containerData?: PluginContainerData;\n  /** The source for the file's data. */\n  src?: FileSource;\n  /** File name. */\n  name?: string | null;\n  /** File type. */\n  type?: string | null;\n  /**\n   * Use `sizeInKb` instead.\n   * @deprecated\n   */\n  size?: number | null;\n  /** Settings for PDF files. */\n  pdfSettings?: PDFSettings;\n  /** File MIME type. */\n  mimeType?: string | null;\n  /** File path. */\n  path?: string | null;\n  /** File size in KB. */\n  sizeInKb?: string | null;\n}\n\nexport enum ViewMode {\n  /** No PDF view */\n  NONE = 'NONE',\n  /** Full PDF view */\n  FULL = 'FULL',\n  /** Mini PDF view */\n  MINI = 'MINI',\n}\n\n/** @enumType */\nexport type ViewModeWithLiterals = ViewMode | 'NONE' | 'FULL' | 'MINI';\n\nexport interface FileSource extends FileSourceDataOneOf {\n  /** The absolute URL for the file's source. */\n  url?: string | null;\n  /**\n   * Custom ID. Use `id` instead.\n   * @deprecated\n   */\n  custom?: string | null;\n  /** An ID that's resolved to a URL by a resolver function. */\n  id?: string | null;\n  /** Indicates whether the file's source is private. Defaults to `false`. */\n  private?: boolean | null;\n}\n\n/** @oneof */\nexport interface FileSourceDataOneOf {\n  /** The absolute URL for the file's source. */\n  url?: string | null;\n  /**\n   * Custom ID. Use `id` instead.\n   * @deprecated\n   */\n  custom?: string | null;\n  /** An ID that's resolved to a URL by a resolver function. */\n  id?: string | null;\n}\n\nexport interface PDFSettings {\n  /**\n   * PDF view mode. One of the following:\n   * `NONE` : The PDF isn't displayed.\n   * `FULL` : A full page view of the PDF is displayed.\n   * `MINI` : A mini view of the PDF is displayed.\n   */\n  viewMode?: ViewModeWithLiterals;\n  /** Sets whether the PDF download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Sets whether the PDF print button is disabled. Defaults to `false`. */\n  disablePrint?: boolean | null;\n}\n\nexport interface GalleryData {\n  /** Styling for the gallery's container. */\n  containerData?: PluginContainerData;\n  /** The items in the gallery. */\n  items?: Item[];\n  /** Options for defining the gallery's appearance. */\n  options?: GalleryOptions;\n  /** Sets whether the gallery's expand button is disabled. Defaults to `false`. */\n  disableExpand?: boolean | null;\n  /** Sets whether the gallery's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n}\n\nexport interface Media {\n  /** The source for the media's data. */\n  src?: FileSource;\n  /** Media width in pixels. */\n  width?: number | null;\n  /** Media height in pixels. */\n  height?: number | null;\n  /** Media duration in seconds. Only relevant for audio and video files. */\n  duration?: number | null;\n}\n\nexport interface Image {\n  /** Image file details. */\n  media?: Media;\n  /** Link details for images that are links. */\n  link?: Link;\n}\n\nexport interface Video {\n  /** Video file details. */\n  media?: Media;\n  /** Video thumbnail file details. */\n  thumbnail?: Media;\n}\n\nexport interface Item extends ItemDataOneOf {\n  /** An image item. */\n  image?: Image;\n  /** A video item. */\n  video?: Video;\n  /** Item title. */\n  title?: string | null;\n  /** Item's alternative text. */\n  altText?: string | null;\n}\n\n/** @oneof */\nexport interface ItemDataOneOf {\n  /** An image item. */\n  image?: Image;\n  /** A video item. */\n  video?: Video;\n}\n\nexport interface GalleryOptions {\n  /** Gallery layout. */\n  layout?: GalleryOptionsLayout;\n  /** Styling for gallery items. */\n  item?: ItemStyle;\n  /** Styling for gallery thumbnail images. */\n  thumbnails?: Thumbnails;\n}\n\nexport enum LayoutType {\n  /** Collage type */\n  COLLAGE = 'COLLAGE',\n  /** Masonry type */\n  MASONRY = 'MASONRY',\n  /** Grid type */\n  GRID = 'GRID',\n  /** Thumbnail type */\n  THUMBNAIL = 'THUMBNAIL',\n  /** Slider type */\n  SLIDER = 'SLIDER',\n  /** Slideshow type */\n  SLIDESHOW = 'SLIDESHOW',\n  /** Panorama type */\n  PANORAMA = 'PANORAMA',\n  /** Column type */\n  COLUMN = 'COLUMN',\n  /** Magic type */\n  MAGIC = 'MAGIC',\n  /** Fullsize images type */\n  FULLSIZE = 'FULLSIZE',\n}\n\n/** @enumType */\nexport type LayoutTypeWithLiterals =\n  | LayoutType\n  | 'COLLAGE'\n  | 'MASONRY'\n  | 'GRID'\n  | 'THUMBNAIL'\n  | 'SLIDER'\n  | 'SLIDESHOW'\n  | 'PANORAMA'\n  | 'COLUMN'\n  | 'MAGIC'\n  | 'FULLSIZE';\n\nexport enum Orientation {\n  /** Rows Orientation */\n  ROWS = 'ROWS',\n  /** Columns Orientation */\n  COLUMNS = 'COLUMNS',\n}\n\n/** @enumType */\nexport type OrientationWithLiterals = Orientation | 'ROWS' | 'COLUMNS';\n\nexport enum Crop {\n  /** Crop to fill */\n  FILL = 'FILL',\n  /** Crop to fit */\n  FIT = 'FIT',\n}\n\n/** @enumType */\nexport type CropWithLiterals = Crop | 'FILL' | 'FIT';\n\nexport enum ThumbnailsAlignment {\n  /** Top alignment */\n  TOP = 'TOP',\n  /** Right alignment */\n  RIGHT = 'RIGHT',\n  /** Bottom alignment */\n  BOTTOM = 'BOTTOM',\n  /** Left alignment */\n  LEFT = 'LEFT',\n  /** No thumbnail */\n  NONE = 'NONE',\n}\n\n/** @enumType */\nexport type ThumbnailsAlignmentWithLiterals =\n  | ThumbnailsAlignment\n  | 'TOP'\n  | 'RIGHT'\n  | 'BOTTOM'\n  | 'LEFT'\n  | 'NONE';\n\nexport interface GalleryOptionsLayout {\n  /** Gallery layout type. */\n  type?: LayoutTypeWithLiterals;\n  /** Sets whether horizontal scroll is enabled. Defaults to `true` unless the layout `type` is set to `GRID` or `COLLAGE`. */\n  horizontalScroll?: boolean | null;\n  /** Gallery orientation. */\n  orientation?: OrientationWithLiterals;\n  /** The number of columns to display on full size screens. */\n  numberOfColumns?: number | null;\n  /** The number of columns to display on mobile screens. */\n  mobileNumberOfColumns?: number | null;\n}\n\nexport interface ItemStyle {\n  /** Desirable dimension for each item in pixels (behvaior changes according to gallery type) */\n  targetSize?: number | null;\n  /** Item ratio */\n  ratio?: number | null;\n  /** Sets how item images are cropped. */\n  crop?: CropWithLiterals;\n  /** The spacing between items in pixels. */\n  spacing?: number | null;\n}\n\nexport interface Thumbnails {\n  /** Thumbnail alignment. */\n  placement?: ThumbnailsAlignmentWithLiterals;\n  /** Spacing between thumbnails in pixels. */\n  spacing?: number | null;\n}\n\nexport interface GIFData {\n  /** Styling for the GIF's container. */\n  containerData?: PluginContainerData;\n  /** The source of the full size GIF. */\n  original?: GIF;\n  /** The source of the downsized GIF. */\n  downsized?: GIF;\n  /** Height in pixels. */\n  height?: number;\n  /** Width in pixels. */\n  width?: number;\n  /** Type of GIF (Sticker or NORMAL). Defaults to `NORMAL`. */\n  gifType?: GIFTypeWithLiterals;\n}\n\nexport interface GIF {\n  /**\n   * GIF format URL.\n   * @format WEB_URL\n   */\n  gif?: string | null;\n  /**\n   * MP4 format URL.\n   * @format WEB_URL\n   */\n  mp4?: string | null;\n  /**\n   * Thumbnail URL.\n   * @format WEB_URL\n   */\n  still?: string | null;\n}\n\nexport enum GIFType {\n  NORMAL = 'NORMAL',\n  STICKER = 'STICKER',\n}\n\n/** @enumType */\nexport type GIFTypeWithLiterals = GIFType | 'NORMAL' | 'STICKER';\n\nexport interface HeadingData {\n  /** Heading level from 1-6. */\n  level?: number;\n  /** Styling for the heading text. */\n  textStyle?: TextStyle;\n  /** Indentation level from 1-4. */\n  indentation?: number | null;\n}\n\nexport interface HTMLData extends HTMLDataDataOneOf {\n  /** The URL for the HTML code for the node. */\n  url?: string;\n  /** The HTML code for the node. */\n  html?: string;\n  /**\n   * Whether this is an AdSense element. Use `source` instead.\n   * @deprecated\n   */\n  isAdsense?: boolean | null;\n  /** Styling for the HTML node's container. Height property is irrelevant for HTML embeds when autoHeight is set to `true`. */\n  containerData?: PluginContainerData;\n  /** The type of HTML code. */\n  source?: SourceWithLiterals;\n  /** If container height is aligned with its content height. Defaults to `true`. */\n  autoHeight?: boolean | null;\n}\n\n/** @oneof */\nexport interface HTMLDataDataOneOf {\n  /** The URL for the HTML code for the node. */\n  url?: string;\n  /** The HTML code for the node. */\n  html?: string;\n  /**\n   * Whether this is an AdSense element. Use `source` instead.\n   * @deprecated\n   */\n  isAdsense?: boolean | null;\n}\n\nexport enum Source {\n  HTML = 'HTML',\n  ADSENSE = 'ADSENSE',\n  AI = 'AI',\n}\n\n/** @enumType */\nexport type SourceWithLiterals = Source | 'HTML' | 'ADSENSE' | 'AI';\n\nexport interface ImageData {\n  /** Styling for the image's container. */\n  containerData?: PluginContainerData;\n  /** Image file details. */\n  image?: Media;\n  /** Link details for images that are links. */\n  link?: Link;\n  /** Sets whether the image expands to full screen when clicked. Defaults to `false`. */\n  disableExpand?: boolean | null;\n  /** Image's alternative text. */\n  altText?: string | null;\n  /**\n   * Deprecated: use Caption node instead.\n   * @deprecated\n   */\n  caption?: string | null;\n  /** Sets whether the image's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Sets whether the image is decorative and does not need an explanation. Defaults to `false`. */\n  decorative?: boolean | null;\n  /** Styling for the image. */\n  styles?: ImageDataStyles;\n}\n\nexport interface StylesBorder {\n  /** Border width in pixels. */\n  width?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  color?: string | null;\n  /** Border radius in pixels. */\n  radius?: number | null;\n}\n\nexport interface ImageDataStyles {\n  /** Border attributes. */\n  border?: StylesBorder;\n}\n\nexport interface LinkPreviewData {\n  /** Styling for the link preview's container. */\n  containerData?: PluginContainerData;\n  /** Link details. */\n  link?: Link;\n  /** Preview title. */\n  title?: string | null;\n  /** Preview thumbnail URL. */\n  thumbnailUrl?: string | null;\n  /** Preview description. */\n  description?: string | null;\n  /** The preview content as HTML. */\n  html?: string | null;\n  /** Styling for the link preview. */\n  styles?: LinkPreviewDataStyles;\n}\n\nexport enum StylesPosition {\n  /** Thumbnail positioned at the start (left in LTR layouts, right in RTL layouts) */\n  START = 'START',\n  /** Thumbnail positioned at the end (right in LTR layouts, left in RTL layouts) */\n  END = 'END',\n  /** Thumbnail positioned at the top */\n  TOP = 'TOP',\n  /** Thumbnail hidden and not displayed */\n  HIDDEN = 'HIDDEN',\n}\n\n/** @enumType */\nexport type StylesPositionWithLiterals =\n  | StylesPosition\n  | 'START'\n  | 'END'\n  | 'TOP'\n  | 'HIDDEN';\n\nexport interface LinkPreviewDataStyles {\n  /**\n   * Background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n  /**\n   * Title color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  titleColor?: string | null;\n  /**\n   * Subtitle color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  subtitleColor?: string | null;\n  /**\n   * Link color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  linkColor?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /** Position of thumbnail. Defaults to `START`. */\n  thumbnailPosition?: StylesPositionWithLiterals;\n}\n\nexport interface MapData {\n  /** Styling for the map's container. */\n  containerData?: PluginContainerData;\n  /** Map settings. */\n  mapSettings?: MapSettings;\n}\n\nexport interface MapSettings {\n  /** The address to display on the map. */\n  address?: string | null;\n  /** Sets whether the map is draggable. */\n  draggable?: boolean | null;\n  /** Sets whether the location marker is visible. */\n  marker?: boolean | null;\n  /** Sets whether street view control is enabled. */\n  streetViewControl?: boolean | null;\n  /** Sets whether zoom control is enabled. */\n  zoomControl?: boolean | null;\n  /** Location latitude. */\n  lat?: number | null;\n  /** Location longitude. */\n  lng?: number | null;\n  /** Location name. */\n  locationName?: string | null;\n  /** Sets whether view mode control is enabled. */\n  viewModeControl?: boolean | null;\n  /** Initial zoom value. */\n  initialZoom?: number | null;\n  /** Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */\n  mapType?: MapTypeWithLiterals;\n}\n\nexport enum MapType {\n  /** Roadmap map type */\n  ROADMAP = 'ROADMAP',\n  /** Satellite map type */\n  SATELITE = 'SATELITE',\n  /** Hybrid map type */\n  HYBRID = 'HYBRID',\n  /** Terrain map type */\n  TERRAIN = 'TERRAIN',\n}\n\n/** @enumType */\nexport type MapTypeWithLiterals =\n  | MapType\n  | 'ROADMAP'\n  | 'SATELITE'\n  | 'HYBRID'\n  | 'TERRAIN';\n\nexport interface ParagraphData {\n  /** Styling for the paragraph text. */\n  textStyle?: TextStyle;\n  /** Indentation level from 1-4. */\n  indentation?: number | null;\n  /** Paragraph level */\n  level?: number | null;\n}\n\nexport interface PollData {\n  /** Styling for the poll's container. */\n  containerData?: PluginContainerData;\n  /** Poll data. */\n  poll?: Poll;\n  /** Layout settings for the poll and voting options. */\n  layout?: PollDataLayout;\n  /** Styling for the poll and voting options. */\n  design?: Design;\n}\n\nexport enum ViewRole {\n  /** Only Poll creator can view the results */\n  CREATOR = 'CREATOR',\n  /** Anyone who voted can see the results */\n  VOTERS = 'VOTERS',\n  /** Anyone can see the results, even if one didn't vote */\n  EVERYONE = 'EVERYONE',\n}\n\n/** @enumType */\nexport type ViewRoleWithLiterals = ViewRole | 'CREATOR' | 'VOTERS' | 'EVERYONE';\n\nexport enum VoteRole {\n  /** Logged in member */\n  SITE_MEMBERS = 'SITE_MEMBERS',\n  /** Anyone */\n  ALL = 'ALL',\n}\n\n/** @enumType */\nexport type VoteRoleWithLiterals = VoteRole | 'SITE_MEMBERS' | 'ALL';\n\nexport interface Permissions {\n  /** Sets who can view the poll results. */\n  view?: ViewRoleWithLiterals;\n  /** Sets who can vote. */\n  vote?: VoteRoleWithLiterals;\n  /** Sets whether one voter can vote multiple times. Defaults to `false`. */\n  allowMultipleVotes?: boolean | null;\n}\n\nexport interface Option {\n  /** Option ID. */\n  id?: string | null;\n  /** Option title. */\n  title?: string | null;\n  /** The image displayed with the option. */\n  image?: Media;\n}\n\nexport interface Settings {\n  /** Permissions settings for voting. */\n  permissions?: Permissions;\n  /** Sets whether voters are displayed in the vote results. Defaults to `true`. */\n  showVoters?: boolean | null;\n  /** Sets whether the vote count is displayed. Defaults to `true`. */\n  showVotesCount?: boolean | null;\n}\n\nexport enum PollLayoutType {\n  /** List */\n  LIST = 'LIST',\n  /** Grid */\n  GRID = 'GRID',\n}\n\n/** @enumType */\nexport type PollLayoutTypeWithLiterals = PollLayoutType | 'LIST' | 'GRID';\n\nexport enum PollLayoutDirection {\n  /** Left-to-right */\n  LTR = 'LTR',\n  /** Right-to-left */\n  RTL = 'RTL',\n}\n\n/** @enumType */\nexport type PollLayoutDirectionWithLiterals =\n  | PollLayoutDirection\n  | 'LTR'\n  | 'RTL';\n\nexport interface PollLayout {\n  /** The layout for displaying the voting options. */\n  type?: PollLayoutTypeWithLiterals;\n  /** The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */\n  direction?: PollLayoutDirectionWithLiterals;\n  /** Sets whether to display the main poll image. Defaults to `false`. */\n  enableImage?: boolean | null;\n}\n\nexport interface OptionLayout {\n  /** Sets whether to display option images. Defaults to `false`. */\n  enableImage?: boolean | null;\n}\n\nexport enum BackgroundType {\n  /** Color background type */\n  COLOR = 'COLOR',\n  /** Image background type */\n  IMAGE = 'IMAGE',\n  /** Gradiant background type */\n  GRADIENT = 'GRADIENT',\n}\n\n/** @enumType */\nexport type BackgroundTypeWithLiterals =\n  | BackgroundType\n  | 'COLOR'\n  | 'IMAGE'\n  | 'GRADIENT';\n\nexport interface Gradient {\n  /** The gradient angle in degrees. */\n  angle?: number | null;\n  /**\n   * The start color as a hexademical value.\n   * @format COLOR_HEX\n   */\n  startColor?: string | null;\n  /**\n   * The end color as a hexademical value.\n   * @format COLOR_HEX\n   */\n  lastColor?: string | null;\n}\n\nexport interface Background extends BackgroundBackgroundOneOf {\n  /**\n   * The background color as a hexademical value.\n   * @format COLOR_HEX\n   */\n  color?: string | null;\n  /** An image to use for the background. */\n  image?: Media;\n  /** Details for a gradient background. */\n  gradient?: Gradient;\n  /** Background type. For each option, include the relevant details. */\n  type?: BackgroundTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface BackgroundBackgroundOneOf {\n  /**\n   * The background color as a hexademical value.\n   * @format COLOR_HEX\n   */\n  color?: string | null;\n  /** An image to use for the background. */\n  image?: Media;\n  /** Details for a gradient background. */\n  gradient?: Gradient;\n}\n\nexport interface PollDesign {\n  /** Background styling. */\n  background?: Background;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n}\n\nexport interface OptionDesign {\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n}\n\nexport interface Poll {\n  /** Poll ID. */\n  id?: string | null;\n  /** Poll title. */\n  title?: string | null;\n  /** Poll creator ID. */\n  creatorId?: string | null;\n  /** Main poll image. */\n  image?: Media;\n  /** Voting options. */\n  options?: Option[];\n  /** The poll's permissions and display settings. */\n  settings?: Settings;\n}\n\nexport interface PollDataLayout {\n  /** Poll layout settings. */\n  poll?: PollLayout;\n  /** Voting otpions layout settings. */\n  options?: OptionLayout;\n}\n\nexport interface Design {\n  /** Styling for the poll. */\n  poll?: PollDesign;\n  /** Styling for voting options. */\n  options?: OptionDesign;\n}\n\nexport interface TextData {\n  /** The text to apply decorations to. */\n  text?: string;\n  /** The decorations to apply. */\n  decorations?: Decoration[];\n}\n\n/** Adds appearence changes to text */\nexport interface Decoration extends DecorationDataOneOf {\n  /** Data for an anchor link decoration. */\n  anchorData?: AnchorData;\n  /** Data for a color decoration. */\n  colorData?: ColorData;\n  /** Data for an external link decoration. */\n  linkData?: LinkData;\n  /** Data for a mention decoration. */\n  mentionData?: MentionData;\n  /** Data for a font size decoration. */\n  fontSizeData?: FontSizeData;\n  /** Font weight for a bold decoration. */\n  fontWeightValue?: number | null;\n  /** Data for an italic decoration. Defaults to `true`. */\n  italicData?: boolean | null;\n  /** Data for an underline decoration. Defaults to `true`. */\n  underlineData?: boolean | null;\n  /** Data for a spoiler decoration. */\n  spoilerData?: SpoilerData;\n  /** Data for a strikethrough decoration. Defaults to `true`. */\n  strikethroughData?: boolean | null;\n  /** Data for a superscript decoration. Defaults to `true`. */\n  superscriptData?: boolean | null;\n  /** Data for a subscript decoration. Defaults to `true`. */\n  subscriptData?: boolean | null;\n  /** Data for a font family decoration. */\n  fontFamilyData?: FontFamilyData;\n  /** The type of decoration to apply. */\n  type?: DecorationTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface DecorationDataOneOf {\n  /** Data for an anchor link decoration. */\n  anchorData?: AnchorData;\n  /** Data for a color decoration. */\n  colorData?: ColorData;\n  /** Data for an external link decoration. */\n  linkData?: LinkData;\n  /** Data for a mention decoration. */\n  mentionData?: MentionData;\n  /** Data for a font size decoration. */\n  fontSizeData?: FontSizeData;\n  /** Font weight for a bold decoration. */\n  fontWeightValue?: number | null;\n  /** Data for an italic decoration. Defaults to `true`. */\n  italicData?: boolean | null;\n  /** Data for an underline decoration. Defaults to `true`. */\n  underlineData?: boolean | null;\n  /** Data for a spoiler decoration. */\n  spoilerData?: SpoilerData;\n  /** Data for a strikethrough decoration. Defaults to `true`. */\n  strikethroughData?: boolean | null;\n  /** Data for a superscript decoration. Defaults to `true`. */\n  superscriptData?: boolean | null;\n  /** Data for a subscript decoration. Defaults to `true`. */\n  subscriptData?: boolean | null;\n  /** Data for a font family decoration. */\n  fontFamilyData?: FontFamilyData;\n}\n\nexport enum DecorationType {\n  BOLD = 'BOLD',\n  ITALIC = 'ITALIC',\n  UNDERLINE = 'UNDERLINE',\n  SPOILER = 'SPOILER',\n  ANCHOR = 'ANCHOR',\n  MENTION = 'MENTION',\n  LINK = 'LINK',\n  COLOR = 'COLOR',\n  FONT_SIZE = 'FONT_SIZE',\n  EXTERNAL = 'EXTERNAL',\n  STRIKETHROUGH = 'STRIKETHROUGH',\n  SUPERSCRIPT = 'SUPERSCRIPT',\n  SUBSCRIPT = 'SUBSCRIPT',\n  FONT_FAMILY = 'FONT_FAMILY',\n}\n\n/** @enumType */\nexport type DecorationTypeWithLiterals =\n  | DecorationType\n  | 'BOLD'\n  | 'ITALIC'\n  | 'UNDERLINE'\n  | 'SPOILER'\n  | 'ANCHOR'\n  | 'MENTION'\n  | 'LINK'\n  | 'COLOR'\n  | 'FONT_SIZE'\n  | 'EXTERNAL'\n  | 'STRIKETHROUGH'\n  | 'SUPERSCRIPT'\n  | 'SUBSCRIPT'\n  | 'FONT_FAMILY';\n\nexport interface AnchorData {\n  /** The target node's ID. */\n  anchor?: string;\n}\n\nexport interface ColorData {\n  /** The text's background color as a hexadecimal value. */\n  background?: string | null;\n  /** The text's foreground color as a hexadecimal value. */\n  foreground?: string | null;\n}\n\nexport interface LinkData {\n  /** Link details. */\n  link?: Link;\n}\n\nexport interface MentionData {\n  /** The mentioned user's name. */\n  name?: string;\n  /** The version of the user's name that appears after the `@` character in the mention. */\n  slug?: string;\n  /** Mentioned user's ID. */\n  id?: string | null;\n}\n\nexport interface FontSizeData {\n  /** The units used for the font size. */\n  unit?: FontTypeWithLiterals;\n  /** Font size value. */\n  value?: number | null;\n}\n\nexport enum FontType {\n  PX = 'PX',\n  EM = 'EM',\n}\n\n/** @enumType */\nexport type FontTypeWithLiterals = FontType | 'PX' | 'EM';\n\nexport interface SpoilerData {\n  /** Spoiler ID. */\n  id?: string | null;\n}\n\nexport interface FontFamilyData {\n  /** @maxLength 1000 */\n  value?: string | null;\n}\n\nexport interface AppEmbedData extends AppEmbedDataAppDataOneOf {\n  /** Data for embedded Wix Bookings content. */\n  bookingData?: BookingData;\n  /** Data for embedded Wix Events content. */\n  eventData?: EventData;\n  /** The type of Wix App content being embedded. */\n  type?: AppTypeWithLiterals;\n  /** The ID of the embedded content. */\n  itemId?: string | null;\n  /** The name of the embedded content. */\n  name?: string | null;\n  /**\n   * Deprecated: Use `image` instead.\n   * @deprecated\n   */\n  imageSrc?: string | null;\n  /** The URL for the embedded content. */\n  url?: string | null;\n  /** An image for the embedded content. */\n  image?: Media;\n  /** Whether to hide the image. */\n  hideImage?: boolean | null;\n  /** Whether to hide the title. */\n  hideTitle?: boolean | null;\n  /** Whether to hide the price. */\n  hidePrice?: boolean | null;\n  /** Whether to hide the description (Event and Booking). */\n  hideDescription?: boolean | null;\n  /** Whether to hide the date and time (Event). */\n  hideDateTime?: boolean | null;\n  /** Whether to hide the location (Event). */\n  hideLocation?: boolean | null;\n  /** Whether to hide the duration (Booking). */\n  hideDuration?: boolean | null;\n  /** Whether to hide the button. */\n  hideButton?: boolean | null;\n  /** Whether to hide the ribbon. */\n  hideRibbon?: boolean | null;\n  /** Button styling options. */\n  buttonStyles?: ButtonStyles;\n  /** Image styling options. */\n  imageStyles?: ImageStyles;\n  /** Ribbon styling options. */\n  ribbonStyles?: RibbonStyles;\n  /** Card styling options. */\n  cardStyles?: CardStyles;\n  /** Styling for the app embed's container. */\n  containerData?: PluginContainerData;\n  /** Pricing data for embedded Wix App content. */\n  pricingData?: PricingData;\n}\n\n/** @oneof */\nexport interface AppEmbedDataAppDataOneOf {\n  /** Data for embedded Wix Bookings content. */\n  bookingData?: BookingData;\n  /** Data for embedded Wix Events content. */\n  eventData?: EventData;\n}\n\nexport enum Position {\n  /** Image positioned at the start (left in LTR layouts, right in RTL layouts) */\n  START = 'START',\n  /** Image positioned at the end (right in LTR layouts, left in RTL layouts) */\n  END = 'END',\n  /** Image positioned at the top */\n  TOP = 'TOP',\n}\n\n/** @enumType */\nexport type PositionWithLiterals = Position | 'START' | 'END' | 'TOP';\n\nexport enum AspectRatio {\n  /** 1:1 aspect ratio */\n  SQUARE = 'SQUARE',\n  /** 16:9 aspect ratio */\n  RECTANGLE = 'RECTANGLE',\n}\n\n/** @enumType */\nexport type AspectRatioWithLiterals = AspectRatio | 'SQUARE' | 'RECTANGLE';\n\nexport enum Resizing {\n  /** Fill the container, may crop the image */\n  FILL = 'FILL',\n  /** Fit the image within the container */\n  FIT = 'FIT',\n}\n\n/** @enumType */\nexport type ResizingWithLiterals = Resizing | 'FILL' | 'FIT';\n\nexport enum Placement {\n  /** Ribbon placed on the image */\n  IMAGE = 'IMAGE',\n  /** Ribbon placed on the product information */\n  PRODUCT_INFO = 'PRODUCT_INFO',\n}\n\n/** @enumType */\nexport type PlacementWithLiterals = Placement | 'IMAGE' | 'PRODUCT_INFO';\n\nexport enum Type {\n  /** Card with visible border and background */\n  CONTAINED = 'CONTAINED',\n  /** Card without visible border */\n  FRAMELESS = 'FRAMELESS',\n}\n\n/** @enumType */\nexport type TypeWithLiterals = Type | 'CONTAINED' | 'FRAMELESS';\n\nexport enum Alignment {\n  /** Content aligned to start (left in LTR layouts, right in RTL layouts) */\n  START = 'START',\n  /** Content centered */\n  CENTER = 'CENTER',\n  /** Content aligned to end (right in LTR layouts, left in RTL layouts) */\n  END = 'END',\n}\n\n/** @enumType */\nexport type AlignmentWithLiterals = Alignment | 'START' | 'CENTER' | 'END';\n\nexport enum Layout {\n  /** Elements stacked vertically */\n  STACKED = 'STACKED',\n  /** Elements arranged horizontally */\n  SIDE_BY_SIDE = 'SIDE_BY_SIDE',\n}\n\n/** @enumType */\nexport type LayoutWithLiterals = Layout | 'STACKED' | 'SIDE_BY_SIDE';\n\nexport enum AppType {\n  PRODUCT = 'PRODUCT',\n  EVENT = 'EVENT',\n  BOOKING = 'BOOKING',\n}\n\n/** @enumType */\nexport type AppTypeWithLiterals = AppType | 'PRODUCT' | 'EVENT' | 'BOOKING';\n\nexport interface BookingData {\n  /** Booking duration in minutes. */\n  durations?: string | null;\n}\n\nexport interface EventData {\n  /** Event schedule. */\n  scheduling?: string | null;\n  /** Event location. */\n  location?: string | null;\n}\n\nexport interface ButtonStyles {\n  /** Text to display on the button. */\n  buttonText?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border radius in pixels. */\n  borderRadius?: number | null;\n  /**\n   * Border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /**\n   * Text color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  textColor?: string | null;\n  /**\n   * Background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n  /**\n   * Border color as a hexadecimal value (hover state).\n   * @format COLOR_HEX\n   */\n  borderColorHover?: string | null;\n  /**\n   * Text color as a hexadecimal value (hover state).\n   * @format COLOR_HEX\n   */\n  textColorHover?: string | null;\n  /**\n   * Background color as a hexadecimal value (hover state).\n   * @format COLOR_HEX\n   */\n  backgroundColorHover?: string | null;\n  /** Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`. */\n  buttonSize?: string | null;\n}\n\nexport interface ImageStyles {\n  /** Whether to hide the image. */\n  hideImage?: boolean | null;\n  /** Position of image. Defaults to `START`. */\n  imagePosition?: PositionWithLiterals;\n  /** Aspect ratio for the image. Defaults to `SQUARE`. */\n  aspectRatio?: AspectRatioWithLiterals;\n  /** How the image should be resized. Defaults to `FILL`. */\n  resizing?: ResizingWithLiterals;\n  /**\n   * Image border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /** Image border width in pixels. */\n  borderWidth?: number | null;\n  /** Image border radius in pixels. */\n  borderRadius?: number | null;\n}\n\nexport interface RibbonStyles {\n  /** Text to display on the ribbon. */\n  ribbonText?: string | null;\n  /**\n   * Ribbon background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n  /**\n   * Ribbon text color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  textColor?: string | null;\n  /**\n   * Ribbon border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /** Ribbon border width in pixels. */\n  borderWidth?: number | null;\n  /** Ribbon border radius in pixels. */\n  borderRadius?: number | null;\n  /** Placement of the ribbon. Defaults to `IMAGE`. */\n  ribbonPlacement?: PlacementWithLiterals;\n}\n\nexport interface CardStyles {\n  /**\n   * Card background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n  /**\n   * Card border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /** Card border width in pixels. */\n  borderWidth?: number | null;\n  /** Card border radius in pixels. */\n  borderRadius?: number | null;\n  /** Card type. Defaults to `CONTAINED`. */\n  type?: TypeWithLiterals;\n  /** Content alignment. Defaults to `START`. */\n  alignment?: AlignmentWithLiterals;\n  /** Layout for title and price. Defaults to `STACKED`. */\n  titlePriceLayout?: LayoutWithLiterals;\n  /**\n   * Title text color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  titleColor?: string | null;\n  /**\n   * Text color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  textColor?: string | null;\n}\n\nexport interface PricingData {\n  /**\n   * Minimum numeric price value as string (e.g., \"10.99\").\n   * @decimalValue options { maxScale:2 }\n   */\n  valueFrom?: string | null;\n  /**\n   * Maximum numeric price value as string (e.g., \"19.99\").\n   * @decimalValue options { maxScale:2 }\n   */\n  valueTo?: string | null;\n  /**\n   * Numeric price value as string after discount application (e.g., \"15.99\").\n   * @decimalValue options { maxScale:2 }\n   */\n  discountedValue?: string | null;\n  /**\n   * Currency of the value in ISO 4217 format (e.g., \"USD\", \"EUR\").\n   * @format CURRENCY\n   */\n  currency?: string | null;\n  /**\n   * Pricing plan ID.\n   * @format GUID\n   */\n  pricingPlanId?: string | null;\n}\n\nexport interface VideoData {\n  /** Styling for the video's container. */\n  containerData?: PluginContainerData;\n  /** Video details. */\n  video?: Media;\n  /** Video thumbnail details. */\n  thumbnail?: Media;\n  /** Sets whether the video's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Video title. */\n  title?: string | null;\n  /** Video options. */\n  options?: PlaybackOptions;\n}\n\nexport interface PlaybackOptions {\n  /** Sets whether the media will automatically start playing. */\n  autoPlay?: boolean | null;\n  /** Sets whether media's will be looped. */\n  playInLoop?: boolean | null;\n  /** Sets whether media's controls will be shown. */\n  showControls?: boolean | null;\n}\n\nexport interface EmbedData {\n  /** Styling for the oEmbed node's container. */\n  containerData?: PluginContainerData;\n  /** An [oEmbed](https://www.oembed.com) object. */\n  oembed?: Oembed;\n  /** Origin asset source. */\n  src?: string | null;\n}\n\nexport interface Oembed {\n  /** The resource type. */\n  type?: string | null;\n  /** The width of the resource specified in the `url` property in pixels. */\n  width?: number | null;\n  /** The height of the resource specified in the `url` property in pixels. */\n  height?: number | null;\n  /** Resource title. */\n  title?: string | null;\n  /** The source URL for the resource. */\n  url?: string | null;\n  /** HTML for embedding a video player. The HTML should have no padding or margins. */\n  html?: string | null;\n  /** The name of the author or owner of the resource. */\n  authorName?: string | null;\n  /** The URL for the author or owner of the resource. */\n  authorUrl?: string | null;\n  /** The name of the resource provider. */\n  providerName?: string | null;\n  /** The URL for the resource provider. */\n  providerUrl?: string | null;\n  /** The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined. */\n  thumbnailUrl?: string | null;\n  /** The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined. */\n  thumbnailWidth?: string | null;\n  /** The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined. */\n  thumbnailHeight?: string | null;\n  /** The URL for an embedded viedo. */\n  videoUrl?: string | null;\n  /** The oEmbed version number.  This value must be `1.0`. */\n  version?: string | null;\n}\n\nexport interface CollapsibleListData {\n  /** Styling for the collapsible list's container. */\n  containerData?: PluginContainerData;\n  /** If `true`, only one item can be expanded at a time. Defaults to `false`. */\n  expandOnlyOne?: boolean | null;\n  /** Sets which items are expanded when the page loads. */\n  initialExpandedItems?: InitialExpandedItemsWithLiterals;\n  /** The direction of the text in the list. Either left-to-right or right-to-left. */\n  direction?: DirectionWithLiterals;\n  /** If `true`, The collapsible item will appear in search results as an FAQ. */\n  isQapageData?: boolean | null;\n}\n\nexport enum InitialExpandedItems {\n  /** First item will be expended initally */\n  FIRST = 'FIRST',\n  /** All items will expended initally */\n  ALL = 'ALL',\n  /** All items collapsed initally */\n  NONE = 'NONE',\n}\n\n/** @enumType */\nexport type InitialExpandedItemsWithLiterals =\n  | InitialExpandedItems\n  | 'FIRST'\n  | 'ALL'\n  | 'NONE';\n\nexport enum Direction {\n  /** Left-to-right */\n  LTR = 'LTR',\n  /** Right-to-left */\n  RTL = 'RTL',\n}\n\n/** @enumType */\nexport type DirectionWithLiterals = Direction | 'LTR' | 'RTL';\n\nexport interface TableData {\n  /** Styling for the table's container. */\n  containerData?: PluginContainerData;\n  /** The table's dimensions. */\n  dimensions?: Dimensions;\n  /**\n   * Deprecated: Use `rowHeader` and `columnHeader` instead.\n   * @deprecated\n   */\n  header?: boolean | null;\n  /** Sets whether the table's first row is a header. Defaults to `false`. */\n  rowHeader?: boolean | null;\n  /** Sets whether the table's first column is a header. Defaults to `false`. */\n  columnHeader?: boolean | null;\n  /** The spacing between cells in pixels. Defaults to `0`. */\n  cellSpacing?: number | null;\n  /**\n   * Padding in pixels for cells. Follows CSS order: top, right, bottom, left.\n   * @maxSize 4\n   */\n  cellPadding?: number[];\n}\n\nexport interface Dimensions {\n  /** An array representing relative width of each column in relation to the other columns. */\n  colsWidthRatio?: number[];\n  /** An array representing the height of each row in pixels. */\n  rowsHeight?: number[];\n  /** An array representing the minimum width of each column in pixels. */\n  colsMinWidth?: number[];\n}\n\nexport interface TableCellData {\n  /** Styling for the cell's background color and text alignment. */\n  cellStyle?: CellStyle;\n  /** The cell's border colors. */\n  borderColors?: BorderColors;\n  /** Defines how many columns the cell spans. Default: 1. */\n  colspan?: number | null;\n  /** Defines how many rows the cell spans. Default: 1. */\n  rowspan?: number | null;\n  /** The cell's border widths. */\n  borderWidths?: BorderWidths;\n}\n\nexport enum VerticalAlignment {\n  /** Top alignment */\n  TOP = 'TOP',\n  /** Middle alignment */\n  MIDDLE = 'MIDDLE',\n  /** Bottom alignment */\n  BOTTOM = 'BOTTOM',\n}\n\n/** @enumType */\nexport type VerticalAlignmentWithLiterals =\n  | VerticalAlignment\n  | 'TOP'\n  | 'MIDDLE'\n  | 'BOTTOM';\n\nexport interface CellStyle {\n  /** Vertical alignment for the cell's text. */\n  verticalAlignment?: VerticalAlignmentWithLiterals;\n  /**\n   * Cell background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n}\n\nexport interface BorderColors {\n  /**\n   * Left border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  left?: string | null;\n  /**\n   * Right border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  right?: string | null;\n  /**\n   * Top border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  top?: string | null;\n  /**\n   * Bottom border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  bottom?: string | null;\n}\n\nexport interface BorderWidths {\n  /** Left border width in pixels. */\n  left?: number | null;\n  /** Right border width in pixels. */\n  right?: number | null;\n  /** Top border width in pixels. */\n  top?: number | null;\n  /** Bottom border width in pixels. */\n  bottom?: number | null;\n}\n\n/**\n * `NullValue` is a singleton enumeration to represent the null value for the\n * `Value` type union.\n *\n * The JSON representation for `NullValue` is JSON `null`.\n */\nexport enum NullValue {\n  /** Null value. */\n  NULL_VALUE = 'NULL_VALUE',\n}\n\n/** @enumType */\nexport type NullValueWithLiterals = NullValue | 'NULL_VALUE';\n\n/**\n * `ListValue` is a wrapper around a repeated field of values.\n *\n * The JSON representation for `ListValue` is JSON array.\n */\nexport interface ListValue {\n  /** Repeated field of dynamically typed values. */\n  values?: any[];\n}\n\nexport interface AudioData {\n  /** Styling for the audio node's container. */\n  containerData?: PluginContainerData;\n  /** Audio file details. */\n  audio?: Media;\n  /** Sets whether the audio node's download button is disabled. Defaults to `false`. */\n  disableDownload?: boolean | null;\n  /** Cover image. */\n  coverImage?: Media;\n  /** Track name. */\n  name?: string | null;\n  /** Author name. */\n  authorName?: string | null;\n  /** An HTML version of the audio node. */\n  html?: string | null;\n}\n\nexport interface OrderedListData {\n  /** Indentation level from 0-4. */\n  indentation?: number;\n  /** Offset level from 0-4. */\n  offset?: number | null;\n  /** List start number. */\n  start?: number | null;\n}\n\nexport interface BulletedListData {\n  /** Indentation level from 0-4. */\n  indentation?: number;\n  /** Offset level from 0-4. */\n  offset?: number | null;\n}\n\nexport interface BlockquoteData {\n  /** Indentation level from 1-4. */\n  indentation?: number;\n}\n\nexport interface CaptionData {\n  textStyle?: TextStyle;\n}\n\nexport interface LayoutData {\n  /**\n   * Background color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backgroundColor?: string | null;\n  /** Background image. */\n  backgroundImage?: BackgroundImage;\n  /**\n   * Border color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  borderColor?: string | null;\n  /** Border width in pixels. */\n  borderWidth?: number | null;\n  /** Border */\n  borderRadius?: number | null;\n  /**\n   * Backdrop color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  backdropColor?: string | null;\n  /** Backdrop image.radius in pixels. */\n  backdropImage?: BackgroundImage;\n  /** Backdrop top padding. */\n  backdropPaddingTop?: number | null;\n  /** Backdrop bottom padding */\n  backdropPaddingBottom?: number | null;\n  /** Horizontal and vertical gap between columns */\n  gap?: number | null;\n  /**\n   * Padding in pixels for cells. Follows CSS order: top, right, bottom, left\n   * @maxSize 4\n   */\n  cellPadding?: number[];\n  /** Vertical alignment for the cell's items. */\n  cellVerticalAlignment?: VerticalAlignmentAlignmentWithLiterals;\n  /** Responsiveness behaviour of columns when responsiveness applies. Either stacks or wrappers. */\n  responsivenessBehaviour?: ResponsivenessBehaviourWithLiterals;\n  /** Size in pixels when responsiveness_behaviour applies */\n  responsivenessBreakpoint?: number | null;\n  /** Styling for the layout's container. */\n  containerData?: PluginContainerData;\n  /** Defines where selected design propertied applies to */\n  designTarget?: DesignTargetWithLiterals;\n  /** Banner configuration. When present, this layout is displayed as a banner. */\n  banner?: Banner;\n}\n\nexport enum Scaling {\n  /** Auto image scaling */\n  AUTO = 'AUTO',\n  /** Contain image scaling */\n  CONTAIN = 'CONTAIN',\n  /** Cover image scaling */\n  COVER = 'COVER',\n}\n\n/** @enumType */\nexport type ScalingWithLiterals = Scaling | 'AUTO' | 'CONTAIN' | 'COVER';\n\nexport enum ImagePosition {\n  /** Image positioned at the center */\n  CENTER = 'CENTER',\n  /** Image positioned on the left */\n  CENTER_LEFT = 'CENTER_LEFT',\n  /** Image positioned on the right */\n  CENTER_RIGHT = 'CENTER_RIGHT',\n  /** Image positioned at the center top */\n  TOP = 'TOP',\n  /** Image positioned at the top left */\n  TOP_LEFT = 'TOP_LEFT',\n  /** Image positioned at the top right */\n  TOP_RIGHT = 'TOP_RIGHT',\n  /** Image positioned at the center bottom */\n  BOTTOM = 'BOTTOM',\n  /** Image positioned at the bottom left */\n  BOTTOM_LEFT = 'BOTTOM_LEFT',\n  /** Image positioned at the bottom right */\n  BOTTOM_RIGHT = 'BOTTOM_RIGHT',\n}\n\n/** @enumType */\nexport type ImagePositionWithLiterals =\n  | ImagePosition\n  | 'CENTER'\n  | 'CENTER_LEFT'\n  | 'CENTER_RIGHT'\n  | 'TOP'\n  | 'TOP_LEFT'\n  | 'TOP_RIGHT'\n  | 'BOTTOM'\n  | 'BOTTOM_LEFT'\n  | 'BOTTOM_RIGHT';\n\nexport enum Origin {\n  /** Banner originated from an image */\n  IMAGE = 'IMAGE',\n  /** Banner originated from a layout */\n  LAYOUT = 'LAYOUT',\n}\n\n/** @enumType */\nexport type OriginWithLiterals = Origin | 'IMAGE' | 'LAYOUT';\n\nexport interface BackgroundImage {\n  /** Background image. */\n  media?: Media;\n  /** Background image opacity. */\n  opacity?: number | null;\n  /** Background image scaling. */\n  scaling?: ScalingWithLiterals;\n  /** Position of background. Defaults to `CENTER`. */\n  position?: ImagePositionWithLiterals;\n}\n\nexport enum VerticalAlignmentAlignment {\n  /** Top alignment */\n  TOP = 'TOP',\n  /** Middle alignment */\n  MIDDLE = 'MIDDLE',\n  /** Bottom alignment */\n  BOTTOM = 'BOTTOM',\n}\n\n/** @enumType */\nexport type VerticalAlignmentAlignmentWithLiterals =\n  | VerticalAlignmentAlignment\n  | 'TOP'\n  | 'MIDDLE'\n  | 'BOTTOM';\n\nexport enum ResponsivenessBehaviour {\n  /** Stacking of columns */\n  STACK = 'STACK',\n  /** Wrapping of columns */\n  WRAP = 'WRAP',\n}\n\n/** @enumType */\nexport type ResponsivenessBehaviourWithLiterals =\n  | ResponsivenessBehaviour\n  | 'STACK'\n  | 'WRAP';\n\nexport enum DesignTarget {\n  /** Design applied to layout */\n  LAYOUT = 'LAYOUT',\n  /** Design applied to cells */\n  CELL = 'CELL',\n}\n\n/** @enumType */\nexport type DesignTargetWithLiterals = DesignTarget | 'LAYOUT' | 'CELL';\n\nexport interface Banner {\n  /** Origin of the banner */\n  origin?: OriginWithLiterals;\n}\n\nexport interface LayoutCellData {\n  /** Size of the cell in 12 columns grid. */\n  colSpan?: number | null;\n}\n\nexport interface ShapeData {\n  /** Styling for the shape's container. */\n  containerData?: PluginContainerData;\n  /** Shape file details. */\n  shape?: Media;\n  /** Styling for the shape. */\n  styles?: ShapeDataStyles;\n}\n\nexport interface ShapeDataStyles {\n  /**\n   * Shape fill color as a hexadecimal value.\n   * @format COLOR_HEX\n   */\n  color?: string | null;\n  /** Map of original color keys to their new color values. */\n  colors?: Record<string, string>;\n}\n\nexport interface Metadata {\n  /** Schema version. */\n  version?: number;\n  /**\n   * When the object was created.\n   * @readonly\n   * @deprecated\n   */\n  createdTimestamp?: Date | null;\n  /**\n   * When the object was most recently updated.\n   * @deprecated\n   */\n  updatedTimestamp?: Date | null;\n  /** Object ID. */\n  _id?: string | null;\n}\n\nexport interface DocumentStyle {\n  /** Styling for H1 nodes. */\n  headerOne?: TextNodeStyle;\n  /** Styling for H2 nodes. */\n  headerTwo?: TextNodeStyle;\n  /** Styling for H3 nodes. */\n  headerThree?: TextNodeStyle;\n  /** Styling for H4 nodes. */\n  headerFour?: TextNodeStyle;\n  /** Styling for H5 nodes. */\n  headerFive?: TextNodeStyle;\n  /** Styling for H6 nodes. */\n  headerSix?: TextNodeStyle;\n  /** Styling for paragraph nodes. */\n  paragraph?: TextNodeStyle;\n  /** Styling for block quote nodes. */\n  blockquote?: TextNodeStyle;\n  /** Styling for code block nodes. */\n  codeBlock?: TextNodeStyle;\n}\n\nexport interface TextNodeStyle {\n  /** The decorations to apply to the node. */\n  decorations?: Decoration[];\n  /** Padding and background color for the node. */\n  nodeStyle?: NodeStyle;\n  /** Line height for text in the node. */\n  lineHeight?: string | null;\n}\n\nexport interface PresetProperties {\n  /**\n   * Invoice preset ID.\n   * Defaults to default invoice preset if not defined.\n   * @format GUID\n   */\n  presetId?: string | null;\n  /**\n   * Selected invoice preset. Saved on Invoice publish.\n   * @readonly\n   */\n  invoicePreset?: InvoicePreset;\n}\n\n/** An invoice preset is a set of customizable invoice configurations that encompass the design and information of the invoice. */\nexport interface InvoicePreset {\n  /**\n   * Invoice preset ID.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the invoice preset is updated.\n   * To prevent conflicting changes, the current revision must be passed when updating the InvoicePreset.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the invoice preset was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the invoice preset was last updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Name of the preset.\n   * @maxLength 100\n   */\n  name?: string;\n  /** Display settings controlling presentation and formatting. */\n  displaySettings?: DisplaySettings;\n  /** Custom fields for extensible user-defined data. */\n  customFields?: DomainCustomFields;\n  /**\n   * Whether this preset is the default preset.\n   * @readonly\n   */\n  default?: boolean;\n  /** Display values. */\n  displayValues?: DisplayValues;\n  /** Default number of days for the invoice to be due after creation. */\n  defaultDaysUntilDue?: number | null;\n  /** Data Extensions. */\n  extendedFields?: ExtendedFields;\n}\n\n/** Display settings controlling the presentation and formatting of invoices. */\nexport interface DisplaySettings {\n  /** Business display options. */\n  businessInfo?: BusinessDisplayOptions;\n  /** Customer display options. */\n  customerInfo?: CustomerDisplayOptions;\n  /** Items display options. */\n  itemsInfo?: ItemsDisplayOption;\n  /** Totals display options. */\n  totalsInfo?: TotalsDisplayOption;\n  /** Payments display options. */\n  paymentsInfo?: PaymentsDisplayOption;\n}\n\n/** Business display options for invoice presentation. */\nexport interface BusinessDisplayOptions {\n  /** Whether to display business email. */\n  displayEmail?: boolean;\n  /** Whether to display business phone number. */\n  displayPhoneNumber?: boolean;\n  /** Whether to display business address. */\n  displayAddress?: boolean;\n  /** Whether to display business company ID. */\n  displayCompanyId?: boolean;\n}\n\n/** Customer display options for invoice presentation. */\nexport interface CustomerDisplayOptions {\n  /** Whether to display customer email. */\n  displayEmail?: boolean;\n  /** Whether to display customer phone number. */\n  displayPhoneNumber?: boolean;\n  /** Whether to display customer shipping address. */\n  displayShippingAddress?: boolean;\n  /** Whether to display customer billing address. */\n  displayBillingAddress?: boolean;\n  /** Whether to display customer VAT ID. */\n  displayVatId?: boolean;\n  /** Whether to display customer company name. */\n  displayCompanyName?: boolean;\n}\n\n/** Items display options for invoice presentation. */\nexport interface ItemsDisplayOption {\n  /** Whether to display items description. */\n  displayDescription?: boolean;\n  /** Whether to display tax information. */\n  displayTax?: boolean;\n}\n\n/** Totals display options for invoice presentation. */\nexport interface TotalsDisplayOption {\n  /** Whether to display tax breakdown. */\n  displayTaxBreakdown?: boolean;\n  /** Whether to display item subtotal per tax breakdown. */\n  displayItemSubtotalPerTaxBreakdown?: boolean;\n}\n\n/** Payments display options for invoice presentation. */\nexport interface PaymentsDisplayOption {\n  /** Whether to display payments information. */\n  displayPaymentsInfo?: boolean;\n}\n\nexport interface DomainCustomFields {\n  /**\n   * Header custom fields.\n   * @maxSize 4\n   */\n  headerCustomFields?: DomainCustomField[];\n  /**\n   * Business custom fields.\n   * @maxSize 4\n   */\n  businessCustomFields?: DomainCustomField[];\n  /**\n   * Customer custom fields.\n   * @maxSize 4\n   */\n  customerCustomFields?: DomainCustomField[];\n  /** Footer custom field, supports rich content. */\n  footerCustomField?: RichContent;\n  /**\n   * Header form custom fields.\n   * @maxSize 4\n   */\n  headerFormCustomFields?: FormCustomField[];\n  /**\n   * Customer form custom fields.\n   * @maxSize 4\n   */\n  customerFormCustomFields?: FormCustomField[];\n}\n\nexport interface DomainCustomField {\n  /**\n   * Field title.\n   * @minLength 1\n   * @maxLength 100\n   */\n  title?: string | null;\n  /**\n   * Field value.\n   * @maxLength 100\n   */\n  value?: string;\n}\n\n/** This is used to display a text entry form for each FormCustomField during invoice creation flow to allow defining dynamic custom field values. */\nexport interface FormCustomField {\n  /**\n   * Field title.\n   * @maxLength 100\n   */\n  title?: string;\n}\n\nexport interface DisplayValues {\n  /**\n   * Text override for invoice title.\n   * @minLength 1\n   * @maxLength 20\n   */\n  titleOverride?: string | null;\n}\n\nexport interface ExtendedFields {\n  /**\n   * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\n   * The value of each key is structured according to the schema defined when the extended fields were configured.\n   *\n   * You can only access fields for which you have the appropriate permissions.\n   *\n   * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).\n   */\n  namespaces?: Record<string, Record<string, any>>;\n}\n\nexport interface Attachment {\n  /**\n   * File name. Example: `file.pdf`.\n   * @minLength 1\n   * @maxLength 100\n   */\n  fileName?: string;\n  /**\n   * File URL.\n   * @format WEB_URL\n   */\n  fileUrl?: string;\n}\n\n/** TODO: add information regarding expiration period (TTL). */\nexport interface DocumentInfo {\n  /** Document status. */\n  status?: DocumentStatusWithLiterals;\n  /**\n   * Document download URL.\n   * @format WEB_URL\n   */\n  downloadUrl?: string | null;\n  /**\n   * Document expiration date.\n   * @readonly\n   */\n  documentExpirationDate?: Date | null;\n}\n\nexport enum DocumentStatus {\n  /** Generation status is unknown. */\n  UNKNOWN_DOCUMENT_STATUS = 'UNKNOWN_DOCUMENT_STATUS',\n  /** Generation is in progress. Call Get Invoice after 6-10 seconds to check the updated status. */\n  PROCESSING = 'PROCESSING',\n  /** Generation was successful. You can downloaded the document using the `downloadUrl`. */\n  AVAILABLE = 'AVAILABLE',\n  /** Generation has failed. You can retrigger document generation by calling Generate Pdf Document. */\n  FAILED = 'FAILED',\n  /** Generation was completed, but document has expired. */\n  EXPIRED = 'EXPIRED',\n}\n\n/** @enumType */\nexport type DocumentStatusWithLiterals =\n  | DocumentStatus\n  | 'UNKNOWN_DOCUMENT_STATUS'\n  | 'PROCESSING'\n  | 'AVAILABLE'\n  | 'FAILED'\n  | 'EXPIRED';\n\nexport interface Links {\n  /**\n   * Relative path of the URL. E.g. `/mylink/123`\n   * @format WEB_URL\n   */\n  relativePath?: string;\n  /**\n   * URL.\n   * @format WEB_URL\n   */\n  url?: string | null;\n}\n\nexport interface BusinessLocation {\n  /**\n   * Location ID. Learn more about the [Wix Locations API](https://dev.wix.com/docs/api-reference/business-management/locations/introduction).\n   * @format GUID\n   */\n  _id?: string;\n  /**\n   * Location name.\n   * @minLength 1\n   * @maxLength 500\n   * @readonly\n   */\n  name?: string | null;\n}\n\n/**\n * Common object for tags.\n * Should be use as in this example:\n * message Foo {\n * option (.wix.api.decomposite_of) = \"wix.commons.v2.tags.Foo\";\n * string id = 1;\n * ...\n * Tags tags = 5\n * }\n *\n * example of taggable entity\n * {\n * id: \"123\"\n * tags: {\n * public_tags: {\n * tag_ids:[\"11\",\"22\"]\n * },\n * private_tags: {\n * tag_ids: [\"33\", \"44\"]\n * }\n * }\n * }\n */\nexport interface Tags {\n  /** Tags that require an additional permission in order to access them, typically restricted from site members and visitors. */\n  privateTags?: TagList;\n  /** Tags that are exposed to anyone with access to the entity, including site members and visitors. */\n  publicTags?: TagList;\n}\n\nexport interface TagList {\n  /**\n   * List of tag IDs.\n   * @maxSize 100\n   * @maxLength 5\n   */\n  tagIds?: string[];\n}\n\nexport interface InvoiceNumberingProcess {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId?: string;\n}\n\nexport interface InvoiceDocumentProcess {\n  /**\n   * Invoice Id.\n   * @format GUID\n   */\n  invoiceId?: string;\n  /**\n   * Media Document Id.\n   * @format GUID\n   */\n  documentId?: string;\n  /**\n   * Existing File Id that will be deleted after the document is generated.\n   * @maxLength 100\n   */\n  existingFileId?: string | null;\n}\n\nexport interface InvoiceDocumentHandled\n  extends InvoiceDocumentHandledResultOneOf {\n  /** Populated only if invoice document handling has succeeded. */\n  succeeded?: Succeeded;\n  /** Populated only if invoice document handling has failed. */\n  failed?: Failed;\n}\n\n/** @oneof */\nexport interface InvoiceDocumentHandledResultOneOf {\n  /** Populated only if invoice document handling has succeeded. */\n  succeeded?: Succeeded;\n  /** Populated only if invoice document handling has failed. */\n  failed?: Failed;\n}\n\nexport interface Succeeded {\n  /**\n   * Invoice Id.\n   * @format GUID\n   */\n  invoiceId?: string;\n  /**\n   * Media file Id.\n   * @maxLength 100\n   */\n  mediaFileId?: string;\n  /**\n   * Download URL.\n   * @maxLength 200\n   */\n  downloadUrl?: string;\n  /** File expiration date */\n  expirationDate?: Date | null;\n}\n\nexport interface Failed {\n  /**\n   * Invoice Id.\n   * @format GUID\n   */\n  invoiceId?: string;\n}\n\nexport interface InvoiceFileExport {\n  /**\n   * Invoice download ID.\n   * @format GUID\n   */\n  invoiceDownloadId?: string;\n  /**\n   * File ID's.\n   * @maxLength 64\n   * @maxSize 10\n   */\n  fileIds?: string[];\n  /**\n   * Download URL.\n   * @format WEB_URL\n   */\n  downloadUrl?: string | null;\n}\n\nexport interface MediaFileStateChanged {\n  /**\n   * File ID.\n   * @minLength 1\n   * @maxLength 36\n   */\n  fileId?: string;\n  /**\n   * Meta site ID.\n   * @format GUID\n   */\n  metaSiteId?: string;\n  fileState?: FileStateWithLiterals;\n}\n\n/** Action type. */\nexport enum FileState {\n  /** Unknown file state. */\n  UNKNOWN_FILE_STATE = 'UNKNOWN_FILE_STATE',\n  /** File was deleted. */\n  DELETED = 'DELETED',\n}\n\n/** @enumType */\nexport type FileStateWithLiterals =\n  | FileState\n  | 'UNKNOWN_FILE_STATE'\n  | 'DELETED';\n\nexport interface TagsModified {\n  /** Invoice. */\n  invoice?: Invoice;\n  /** Assigned tags. */\n  assignedTags?: Tags;\n  /** Unassigned tags. */\n  unassignedTags?: Tags;\n}\n\nexport interface CreateInvoiceRequest {\n  /** Invoice to create. */\n  invoice: Invoice;\n}\n\nexport interface CreateInvoiceResponse {\n  /** Created invoice. */\n  invoice?: Invoice;\n}\n\nexport interface GetInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface GetInvoiceResponse {\n  /** Requested invoice. */\n  invoice?: Invoice;\n}\n\nexport interface UpdateInvoiceRequest {\n  /** Invoice to be updated, may be partial. */\n  invoice: Invoice;\n}\n\nexport interface UpdateInvoiceResponse {\n  /** Updated invoice. */\n  invoice?: Invoice;\n}\n\nexport interface IllegalActionErrorData {\n  /** Error type. */\n  errorType?: ErrorTypeWithLiterals;\n  /**\n   * Error description.\n   * @minLength 1\n   * @maxLength 100\n   */\n  description?: string | null;\n}\n\nexport enum ErrorType {\n  UNKNOWN_ERROR_TYPE = 'UNKNOWN_ERROR_TYPE',\n  /** Invoice state is not applicable for the action. */\n  ILLEGAL_INVOICE_STATE = 'ILLEGAL_INVOICE_STATE',\n  /** Invoice editing for `STANDALONE` type reference is limited to the invoice creator application `sourceReference.appId`. */\n  ACTION_LIMITED_FOR_SOURCE_APPLICATION = 'ACTION_LIMITED_FOR_SOURCE_APPLICATION',\n  /** Invoice actions for `ORDER` type reference are limited to the [Wix eCommerce](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/introduction) application. */\n  ACTION_LIMITED_FOR_ORDER_INVOICE = 'ACTION_LIMITED_FOR_ORDER_INVOICE',\n  /** Invoice actions for `MIGRATED` type reference are limited to the older Invoices service. */\n  ACTION_LIMITED_FOR_MIGRATED_INVOICE = 'ACTION_LIMITED_FOR_MIGRATED_INVOICE',\n}\n\n/** @enumType */\nexport type ErrorTypeWithLiterals =\n  | ErrorType\n  | 'UNKNOWN_ERROR_TYPE'\n  | 'ILLEGAL_INVOICE_STATE'\n  | 'ACTION_LIMITED_FOR_SOURCE_APPLICATION'\n  | 'ACTION_LIMITED_FOR_ORDER_INVOICE'\n  | 'ACTION_LIMITED_FOR_MIGRATED_INVOICE';\n\nexport interface DeleteInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface DeleteInvoiceResponse {}\n\nexport interface QueryInvoicesRequest {\n  /** Query options. */\n  query?: CursorQuery;\n}\n\nexport interface CursorQuery extends CursorQueryPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n  /**\n   * Filter object.\n   *\n   * Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * Sort object.\n   *\n   * Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section).\n   * @maxSize 5\n   */\n  sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface CursorQueryPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n  /**\n   * Name of the field to sort by.\n   * @maxLength 512\n   */\n  fieldName?: string;\n  /** Sort order. */\n  order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n  ASC = 'ASC',\n  DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface CursorPaging {\n  /**\n   * Maximum number of items to return in the results.\n   * @max 100\n   */\n  limit?: number | null;\n  /**\n   * Pointer to the next or previous page in the list of results.\n   *\n   * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n   * Not relevant for the first request.\n   * @maxLength 16000\n   */\n  cursor?: string | null;\n}\n\nexport interface QueryInvoicesResponse {\n  /** Requested invoices. */\n  invoices?: Invoice[];\n  /** Paging metadata. */\n  pagingMetadata?: CursorPagingMetadata;\n}\n\nexport interface CursorPagingMetadata {\n  /** Number of items returned in current page. */\n  count?: number | null;\n  /** Cursor strings that point to the next page, previous page, or both. */\n  cursors?: Cursors;\n  /**\n   * Whether there are more pages to retrieve following the current page.\n   *\n   * + `true`: Another page of results can be retrieved.\n   * + `false`: This is the last page.\n   */\n  hasNext?: boolean | null;\n}\n\nexport interface Cursors {\n  /**\n   * Cursor string pointing to the next page in the list of results.\n   * @maxLength 16000\n   */\n  next?: string | null;\n  /**\n   * Cursor pointing to the previous page in the list of results.\n   * @maxLength 16000\n   */\n  prev?: string | null;\n}\n\nexport interface SearchInvoicesRequest {\n  /** Search options. */\n  search?: CursorSearch;\n}\n\nexport interface CursorSearch extends CursorSearchPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n  /**\n   * Filter object.\n   *\n   * Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).\n   */\n  filter?: Record<string, any> | null;\n  /**\n   * List of sort objects.\n   *\n   * Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section).\n   * @maxSize 10\n   */\n  sort?: Sorting[];\n  /**\n   * Aggregations are a way to explore large amounts of data by displaying summaries about various partitions of the data and later allowing to narrow the navigation to a specific partition.\n   * @maxSize 10\n   */\n  aggregations?: Aggregation[];\n  /** Free text to match in searchable fields. */\n  search?: SearchDetails;\n  /**\n   * UTC offset or IANA time zone. Valid values are\n   * ISO 8601 UTC offsets, such as +02:00 or -06:00,\n   * and IANA time zone IDs, such as Europe/Rome.\n   *\n   * Affects all filters and aggregations returned values.\n   * You may override this behavior in a specific filter by providing\n   * timestamps including time zone. For example, `\"2023-12-20T10:52:34.795Z\"`.\n   * @maxLength 50\n   */\n  timeZone?: string | null;\n}\n\n/** @oneof */\nexport interface CursorSearchPagingMethodOneOf {\n  /**\n   * Cursor paging options.\n   *\n   * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).\n   */\n  cursorPaging?: CursorPaging;\n}\n\nexport interface Aggregation extends AggregationKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n  /** Nested aggregation. */\n  nested?: NestedAggregation;\n  /**\n   * User-defined name of aggregation, should be unique, will appear in aggregation results.\n   * @maxLength 100\n   */\n  name?: string | null;\n  /** Type of aggregation, client must provide matching aggregation field below. */\n  type?: AggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by, use dot notation to specify json path.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n  /**\n   * Deprecated. Use `nested` instead.\n   * @deprecated Deprecated. Use `nested` instead.\n   * @replacedBy kind.nested\n   * @targetRemovalDate 2024-03-30\n   */\n  groupBy?: GroupByAggregation;\n}\n\n/** @oneof */\nexport interface AggregationKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n  /** Nested aggregation. */\n  nested?: NestedAggregation;\n}\n\nexport interface RangeBucket {\n  /** Inclusive lower bound of the range. Required if `to` is not provided. */\n  from?: number | null;\n  /** Exclusive upper bound of the range. Required if `from` is not provided. */\n  to?: number | null;\n}\n\nexport enum SortType {\n  /** Sort by number of matches. */\n  COUNT = 'COUNT',\n  /** Sort by value of the field alphabetically. */\n  VALUE = 'VALUE',\n}\n\n/** @enumType */\nexport type SortTypeWithLiterals = SortType | 'COUNT' | 'VALUE';\n\nexport enum SortDirection {\n  /** Sort in descending order. */\n  DESC = 'DESC',\n  /** Sort in ascending order. */\n  ASC = 'ASC',\n}\n\n/** @enumType */\nexport type SortDirectionWithLiterals = SortDirection | 'DESC' | 'ASC';\n\nexport enum MissingValues {\n  /** Exclude missing values from the aggregation results. */\n  EXCLUDE = 'EXCLUDE',\n  /** Include missing values in the aggregation results. */\n  INCLUDE = 'INCLUDE',\n}\n\n/** @enumType */\nexport type MissingValuesWithLiterals = MissingValues | 'EXCLUDE' | 'INCLUDE';\n\nexport interface IncludeMissingValuesOptions {\n  /**\n   * Specify custom bucket name. Defaults are [string -> \"N/A\"], [int -> \"0\"], [bool -> \"false\"] ...\n   * @maxLength 20\n   */\n  addToBucket?: string;\n}\n\nexport enum ScalarType {\n  UNKNOWN_SCALAR_TYPE = 'UNKNOWN_SCALAR_TYPE',\n  /** Count of distinct values. */\n  COUNT_DISTINCT = 'COUNT_DISTINCT',\n  /** Minimum value. */\n  MIN = 'MIN',\n  /** Maximum value. */\n  MAX = 'MAX',\n}\n\n/** @enumType */\nexport type ScalarTypeWithLiterals =\n  | ScalarType\n  | 'UNKNOWN_SCALAR_TYPE'\n  | 'COUNT_DISTINCT'\n  | 'MIN'\n  | 'MAX';\n\nexport interface ValueAggregation extends ValueAggregationOptionsOneOf {\n  /** Options for including missing values. */\n  includeOptions?: IncludeMissingValuesOptions;\n  /** Whether to sort by number of matches or value of the field. */\n  sortType?: SortTypeWithLiterals;\n  /** Whether to sort in ascending or descending order. */\n  sortDirection?: SortDirectionWithLiterals;\n  /** How many aggregations to return. Can be between 1 and 250. 10 is the default. */\n  limit?: number | null;\n  /** Whether to include or exclude missing values from the aggregation results. Default: `EXCLUDE`. */\n  missingValues?: MissingValuesWithLiterals;\n}\n\n/** @oneof */\nexport interface ValueAggregationOptionsOneOf {\n  /** Options for including missing values. */\n  includeOptions?: IncludeMissingValuesOptions;\n}\n\nexport enum NestedAggregationType {\n  UNKNOWN_AGGREGATION_TYPE = 'UNKNOWN_AGGREGATION_TYPE',\n  /** An aggregation where result buckets are dynamically built - one per unique value. */\n  VALUE = 'VALUE',\n  /** An aggregation, where user can define set of ranges - each representing a bucket. */\n  RANGE = 'RANGE',\n  /** A single-value metric aggregation. For example, min, max, sum, avg. */\n  SCALAR = 'SCALAR',\n  /** An aggregation, where result buckets are dynamically built - one per time interval (hour, day, week, etc.). */\n  DATE_HISTOGRAM = 'DATE_HISTOGRAM',\n}\n\n/** @enumType */\nexport type NestedAggregationTypeWithLiterals =\n  | NestedAggregationType\n  | 'UNKNOWN_AGGREGATION_TYPE'\n  | 'VALUE'\n  | 'RANGE'\n  | 'SCALAR'\n  | 'DATE_HISTOGRAM';\n\nexport interface RangeAggregation {\n  /**\n   * List of range buckets, where during aggregation each entity will be placed in the first bucket its value falls into, based on the provided range bounds.\n   * @maxSize 50\n   */\n  buckets?: RangeBucket[];\n}\n\nexport interface ScalarAggregation {\n  /** Define the operator for the scalar aggregation. */\n  type?: ScalarTypeWithLiterals;\n}\n\nexport interface DateHistogramAggregation {\n  /** Interval for date histogram aggregation. */\n  interval?: IntervalWithLiterals;\n}\n\nexport enum Interval {\n  UNKNOWN_INTERVAL = 'UNKNOWN_INTERVAL',\n  /** Yearly interval */\n  YEAR = 'YEAR',\n  /** Monthly interval */\n  MONTH = 'MONTH',\n  /** Weekly interval */\n  WEEK = 'WEEK',\n  /** Daily interval */\n  DAY = 'DAY',\n  /** Hourly interval */\n  HOUR = 'HOUR',\n  /** Minute interval */\n  MINUTE = 'MINUTE',\n  /** Second interval */\n  SECOND = 'SECOND',\n}\n\n/** @enumType */\nexport type IntervalWithLiterals =\n  | Interval\n  | 'UNKNOWN_INTERVAL'\n  | 'YEAR'\n  | 'MONTH'\n  | 'WEEK'\n  | 'DAY'\n  | 'HOUR'\n  | 'MINUTE'\n  | 'SECOND';\n\nexport interface NestedAggregationItem extends NestedAggregationItemKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n  /**\n   * User-defined name of aggregation, should be unique, will appear in aggregation results.\n   * @maxLength 100\n   */\n  name?: string | null;\n  /** Type of aggregation, client must provide matching aggregation field below. */\n  type?: NestedAggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by, use dot notation to specify json path.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface NestedAggregationItemKindOneOf {\n  /** Value aggregation. */\n  value?: ValueAggregation;\n  /** Range aggregation. */\n  range?: RangeAggregation;\n  /** Scalar aggregation. */\n  scalar?: ScalarAggregation;\n  /** Date histogram aggregation. */\n  dateHistogram?: DateHistogramAggregation;\n}\n\nexport enum AggregationType {\n  UNKNOWN_AGGREGATION_TYPE = 'UNKNOWN_AGGREGATION_TYPE',\n  /** An aggregation where result buckets are dynamically built - one per unique value. */\n  VALUE = 'VALUE',\n  /** An aggregation, where user can define set of ranges - each representing a bucket. */\n  RANGE = 'RANGE',\n  /** A single-value metric aggregation. For example, min, max, sum, avg. */\n  SCALAR = 'SCALAR',\n  /** An aggregation, where result buckets are dynamically built - one per time interval (hour, day, week, etc.) */\n  DATE_HISTOGRAM = 'DATE_HISTOGRAM',\n  /** Multi-level aggregation, where each next aggregation is nested within previous one. */\n  NESTED = 'NESTED',\n}\n\n/** @enumType */\nexport type AggregationTypeWithLiterals =\n  | AggregationType\n  | 'UNKNOWN_AGGREGATION_TYPE'\n  | 'VALUE'\n  | 'RANGE'\n  | 'SCALAR'\n  | 'DATE_HISTOGRAM'\n  | 'NESTED';\n\n/** Nested aggregation expressed through a list of aggregation where each next aggregation is nested within previous one. */\nexport interface NestedAggregation {\n  /**\n   * Flattened list of aggregations, where each next aggregation is nested within previous one.\n   * @minSize 2\n   * @maxSize 3\n   */\n  nestedAggregations?: NestedAggregationItem[];\n}\n\nexport interface GroupByAggregation extends GroupByAggregationKindOneOf {\n  /** Value aggregation configuration. */\n  value?: ValueAggregation;\n  /**\n   * User-defined name of aggregation, should be unique, will appear in aggregation results.\n   * @maxLength 100\n   */\n  name?: string | null;\n  /**\n   * Field to aggregate by.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface GroupByAggregationKindOneOf {\n  /** Value aggregation configuration. */\n  value?: ValueAggregation;\n}\n\nexport interface SearchDetails {\n  /** Defines how separate search terms in `expression` are combined. */\n  mode?: ModeWithLiterals;\n  /**\n   * Search term or expression.\n   * @maxLength 100\n   */\n  expression?: string | null;\n  /**\n   * Fields to search in. If empty - will search in all searchable fields. Use dot notation to specify json path.\n   * @maxLength 200\n   * @maxSize 20\n   */\n  fields?: string[];\n  /** Whether to use auto fuzzy search (allowing typos by a managed proximity algorithm). */\n  fuzzy?: boolean;\n}\n\nexport enum Mode {\n  /** Any of the search terms must be present. */\n  OR = 'OR',\n  /** All search terms must be present. */\n  AND = 'AND',\n}\n\n/** @enumType */\nexport type ModeWithLiterals = Mode | 'OR' | 'AND';\n\nexport interface SearchInvoicesResponse {\n  /** Requested invoices. */\n  invoices?: Invoice[];\n  /** Paging metadata. */\n  pagingMetadata?: PagingMetadataV2;\n  /** Response aggregation data. */\n  aggregationData?: AggregationData;\n}\n\nexport interface PagingMetadataV2 {\n  /** Number of items returned in the response. */\n  count?: number | null;\n  /** Offset that was requested. */\n  offset?: number | null;\n  /** Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */\n  total?: number | null;\n  /** Flag that indicates the server failed to calculate the `total` field. */\n  tooManyToCount?: boolean | null;\n  /** Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */\n  cursors?: Cursors;\n}\n\nexport interface AggregationData {\n  /**\n   * key = aggregation name (as derived from search request).\n   * @maxSize 10000\n   */\n  results?: AggregationResults[];\n}\n\nexport interface ValueAggregationResult {\n  /**\n   * Value of the field.\n   * @maxLength 100\n   */\n  value?: string;\n  /** Count of entities with this value. */\n  count?: number;\n}\n\nexport interface RangeAggregationResult {\n  /** Inclusive lower bound of the range. */\n  from?: number | null;\n  /** Exclusive upper bound of the range. */\n  to?: number | null;\n  /** Count of entities in this range. */\n  count?: number;\n}\n\nexport interface NestedAggregationResults\n  extends NestedAggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n  /**\n   * User-defined name of aggregation, matches the one provided in request.\n   * @maxLength 100\n   */\n  name?: string;\n  /** Type of aggregation that matches result. */\n  type?: AggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by, matches the one provided in request.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface NestedAggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n}\n\nexport interface ValueResults {\n  /**\n   * List of value aggregations.\n   * @maxSize 250\n   */\n  results?: ValueAggregationResult[];\n}\n\nexport interface RangeResults {\n  /**\n   * List of ranges returned in same order as requested.\n   * @maxSize 50\n   */\n  results?: RangeAggregationResult[];\n}\n\nexport interface AggregationResultsScalarResult {\n  /** Type of scalar aggregation. */\n  type?: ScalarTypeWithLiterals;\n  /** Value of the scalar aggregation. */\n  value?: number;\n}\n\nexport interface NestedValueAggregationResult {\n  /**\n   * Value of the field.\n   * @maxLength 1000\n   */\n  value?: string;\n  /** Nested aggregations. */\n  nestedResults?: NestedAggregationResults;\n}\n\nexport interface ValueResult {\n  /**\n   * Value of the field.\n   * @maxLength 1000\n   */\n  value?: string;\n  /** Count of entities with this value. */\n  count?: number | null;\n}\n\nexport interface RangeResult {\n  /** Inclusive lower bound of the range. */\n  from?: number | null;\n  /** Exclusive upper bound of the range. */\n  to?: number | null;\n  /** Count of entities in this range. */\n  count?: number | null;\n}\n\nexport interface ScalarResult {\n  /** Value of the scalar aggregation. */\n  value?: number;\n}\n\nexport interface NestedResultValue extends NestedResultValueResultOneOf {\n  /** Value aggregation result. */\n  value?: ValueResult;\n  /** Range aggregation result. */\n  range?: RangeResult;\n  /** Scalar aggregation result. */\n  scalar?: ScalarResult;\n  /** Date histogram aggregation result. */\n  dateHistogram?: ValueResult;\n}\n\n/** @oneof */\nexport interface NestedResultValueResultOneOf {\n  /** Value aggregation result. */\n  value?: ValueResult;\n  /** Range aggregation result. */\n  range?: RangeResult;\n  /** Scalar aggregation result. */\n  scalar?: ScalarResult;\n  /** Date histogram aggregation result. */\n  dateHistogram?: ValueResult;\n}\n\nexport interface Results {\n  /** List of nested aggregations. */\n  results?: Record<string, NestedResultValue>;\n}\n\nexport interface DateHistogramResult {\n  /**\n   * Date in ISO 8601 format.\n   * @maxLength 100\n   */\n  value?: string;\n  /** Count of documents in the bucket. */\n  count?: number;\n}\n\nexport interface GroupByValueResults {\n  /**\n   * List of value aggregations.\n   * @maxSize 1000\n   */\n  results?: NestedValueAggregationResult[];\n}\n\nexport interface DateHistogramResults {\n  /**\n   * List of date histogram aggregations.\n   * @maxSize 200\n   */\n  results?: DateHistogramResult[];\n}\n\n/**\n * Results of `NESTED` aggregation type in a flattened form.\n * Aggregations in resulting array are keyed by requested aggregation `name`.\n */\nexport interface NestedResults {\n  /**\n   * List of nested aggregations.\n   * @maxSize 1000\n   */\n  results?: Results[];\n}\n\nexport interface AggregationResults extends AggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n  /** Group by value aggregation results. */\n  groupedByValue?: GroupByValueResults;\n  /** Date histogram aggregation results. */\n  dateHistogram?: DateHistogramResults;\n  /** Nested aggregation results. */\n  nested?: NestedResults;\n  /**\n   * User-defined name of aggregation as derived from search request.\n   * @maxLength 100\n   */\n  name?: string;\n  /** Type of aggregation that must match provided kind as derived from search request. */\n  type?: AggregationTypeWithLiterals;\n  /**\n   * Field to aggregate by as derived from search request.\n   * @maxLength 200\n   */\n  fieldPath?: string;\n}\n\n/** @oneof */\nexport interface AggregationResultsResultOneOf {\n  /** Value aggregation results. */\n  values?: ValueResults;\n  /** Range aggregation results. */\n  ranges?: RangeResults;\n  /** Scalar aggregation results. */\n  scalar?: AggregationResultsScalarResult;\n  /** Group by value aggregation results. */\n  groupedByValue?: GroupByValueResults;\n  /** Date histogram aggregation results. */\n  dateHistogram?: DateHistogramResults;\n  /** Nested aggregation results. */\n  nested?: NestedResults;\n}\n\nexport interface SendInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n  /**\n   * List of recipient contact IDs.\n   * @format GUID\n   * @maxSize 5\n   */\n  contactIds?: string[];\n  /**\n   * Message content that will be sent.\n   * @maxLength 2500\n   */\n  messageContent?: string | null;\n}\n\nexport interface SendInvoiceResponse {\n  /** Sent invoice. */\n  invoice?: Invoice;\n  /** Results for each contact send attempt. */\n  sendResults?: SendResult[];\n}\n\nexport interface SendResult {\n  /**\n   * Contact ID that was attempted.\n   * @format GUID\n   */\n  contactId?: string;\n  /** Whether sending was successful. */\n  success?: boolean;\n  /** Error type. */\n  errorType?: SendErrorTypeWithLiterals;\n}\n\nexport enum SendErrorType {\n  UNKNOWN_SEND_ERROR = 'UNKNOWN_SEND_ERROR',\n  /** Contact was not found. */\n  CUSTOMER_CONTACT_NOT_FOUND = 'CUSTOMER_CONTACT_NOT_FOUND',\n  /** Contact email not defined. */\n  CONTACT_EMAIL_MISSING = 'CONTACT_EMAIL_MISSING',\n  /** Unexpected error. */\n  INTERNAL_ERROR = 'INTERNAL_ERROR',\n}\n\n/** @enumType */\nexport type SendErrorTypeWithLiterals =\n  | SendErrorType\n  | 'UNKNOWN_SEND_ERROR'\n  | 'CUSTOMER_CONTACT_NOT_FOUND'\n  | 'CONTACT_EMAIL_MISSING'\n  | 'INTERNAL_ERROR';\n\nexport interface PublishInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface PublishInvoiceResponse {\n  /** Published invoice. */\n  invoice?: Invoice;\n}\n\nexport interface VoidInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface VoidInvoiceResponse {\n  /** Voided invoice. */\n  invoice?: Invoice;\n}\n\nexport interface ArchiveInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface ArchiveInvoiceResponse {\n  /** Archived invoice. */\n  invoice?: Invoice;\n}\n\nexport interface UnarchiveInvoiceRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface UnarchiveInvoiceResponse {\n  /** Unarchived invoice. */\n  invoice?: Invoice;\n}\n\nexport interface InitiatePaymentRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface InitiatePaymentResponse {\n  /**\n   * Invoice payment URL.\n   * @format WEB_URL\n   */\n  url?: string;\n  /**\n   * Payment request ID for invoice.\n   * @format GUID\n   */\n  paymentRequestId?: string;\n}\n\nexport interface EnableInvoicePaymentsRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface EnableInvoicePaymentsResponse {\n  /**\n   * Wix eCommerce order ID.\n   * @format GUID\n   * @readonly\n   */\n  orderId?: string;\n}\n\nexport interface GeneratePdfDocumentRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface GeneratePdfDocumentResponse {\n  /** Invoice. */\n  invoice?: Invoice;\n}\n\nexport interface MarkViewedRequest {\n  /**\n   * Invoice ID.\n   * @format GUID\n   */\n  invoiceId: string;\n}\n\nexport interface MarkViewedResponse {}\n\nexport interface CalculateInvoiceRequest {\n  /** Invoice. */\n  invoice: Invoice;\n  /**\n   * Previous calculation correlation ID.\n   * @format GUID\n   */\n  correlationId?: string | null;\n}\n\nexport interface CalculateInvoiceResponse {\n  /** Requested invoice. */\n  invoice?: Invoice;\n  /** List of shipment information options for the invoice. */\n  shipmentInfo?: ShipmentInfo[];\n  /** Invoice calculation errors. */\n  calculationErrors?: CalculationErrors;\n  /**\n   * Calculations correlation ID. Used for subsequent invoice changes calculations.\n   * @format GUID\n   */\n  correlationId?: string;\n}\n\nexport interface CalculationErrors\n  extends CalculationErrorsShippingCalculationErrorOneOf {\n  /** General shipping calculation error. */\n  generalShippingCalculationError?: Details;\n  /** Carrier errors. */\n  carrierErrors?: CarrierErrors;\n  /** Tax calculation error. */\n  taxCalculationError?: Details;\n}\n\n/** @oneof */\nexport interface CalculationErrorsShippingCalculationErrorOneOf {\n  /** General shipping calculation error. */\n  generalShippingCalculationError?: Details;\n  /** Carrier errors. */\n  carrierErrors?: CarrierErrors;\n}\n\nexport interface Details extends DetailsKindOneOf {\n  applicationError?: ApplicationError;\n  validationError?: ValidationError;\n  systemError?: SystemError;\n  /**\n   * deprecated in API's - to enable migration from rendering arbitrary tracing to rest response\n   * @deprecated\n   */\n  tracing?: Record<string, string>;\n}\n\n/** @oneof */\nexport interface DetailsKindOneOf {\n  applicationError?: ApplicationError;\n  validationError?: ValidationError;\n  systemError?: SystemError;\n}\n\nexport interface ApplicationError {\n  /** Error code. */\n  code?: string;\n  /** Description of the error. */\n  description?: string;\n  /** Data related to the error. */\n  data?: Record<string, any> | null;\n}\n\n/**\n * example result:\n * {\n * \"fieldViolations\": [\n * {\n * \"field\": \"fieldA\",\n * \"description\": \"invalid music note. supported notes: [do,re,mi,fa,sol,la,ti]\",\n * \"violatedRule\": \"OTHER\",\n * \"ruleName\": \"INVALID_NOTE\",\n * \"data\": {\n * \"value\": \"FI\"\n * }\n * },\n * {\n * \"field\": \"fieldB\",\n * \"description\": \"field value out of range. supported range: [0-20]\",\n * \"violatedRule\": \"MAX\",\n * \"data\": {\n * \"threshold\": 20\n * }\n * },\n * {\n * \"field\": \"fieldC\",\n * \"description\": \"invalid phone number. provide a valid phone number of size: [7-12], supported characters: [0-9, +, -, (, )]\",\n * \"violatedRule\": \"FORMAT\",\n * \"data\": {\n * \"type\": \"PHONE\"\n * }\n * }\n * ]\n * }\n */\nexport interface ValidationError {\n  fieldViolations?: FieldViolation[];\n}\n\nexport enum RuleType {\n  VALIDATION = 'VALIDATION',\n  OTHER = 'OTHER',\n  MAX = 'MAX',\n  MIN = 'MIN',\n  MAX_LENGTH = 'MAX_LENGTH',\n  MIN_LENGTH = 'MIN_LENGTH',\n  MAX_SIZE = 'MAX_SIZE',\n  MIN_SIZE = 'MIN_SIZE',\n  FORMAT = 'FORMAT',\n  DECIMAL_LTE = 'DECIMAL_LTE',\n  DECIMAL_GTE = 'DECIMAL_GTE',\n  DECIMAL_LT = 'DECIMAL_LT',\n  DECIMAL_GT = 'DECIMAL_GT',\n  DECIMAL_MAX_SCALE = 'DECIMAL_MAX_SCALE',\n  INVALID_ENUM_VALUE = 'INVALID_ENUM_VALUE',\n  REQUIRED_FIELD = 'REQUIRED_FIELD',\n  FIELD_NOT_ALLOWED = 'FIELD_NOT_ALLOWED',\n  ONE_OF_ALIGNMENT = 'ONE_OF_ALIGNMENT',\n  EXACT_LENGTH = 'EXACT_LENGTH',\n  EXACT_SIZE = 'EXACT_SIZE',\n  REQUIRED_ONE_OF_FIELD = 'REQUIRED_ONE_OF_FIELD',\n}\n\n/** @enumType */\nexport type RuleTypeWithLiterals =\n  | RuleType\n  | 'VALIDATION'\n  | 'OTHER'\n  | 'MAX'\n  | 'MIN'\n  | 'MAX_LENGTH'\n  | 'MIN_LENGTH'\n  | 'MAX_SIZE'\n  | 'MIN_SIZE'\n  | 'FORMAT'\n  | 'DECIMAL_LTE'\n  | 'DECIMAL_GTE'\n  | 'DECIMAL_LT'\n  | 'DECIMAL_GT'\n  | 'DECIMAL_MAX_SCALE'\n  | 'INVALID_ENUM_VALUE'\n  | 'REQUIRED_FIELD'\n  | 'FIELD_NOT_ALLOWED'\n  | 'ONE_OF_ALIGNMENT'\n  | 'EXACT_LENGTH'\n  | 'EXACT_SIZE'\n  | 'REQUIRED_ONE_OF_FIELD';\n\nexport interface FieldViolation {\n  field?: string;\n  description?: string;\n  violatedRule?: RuleTypeWithLiterals;\n  /** applicable when violated_rule=OTHER */\n  ruleName?: string | null;\n  data?: Record<string, any> | null;\n}\n\nexport interface SystemError {\n  /** Error code. */\n  errorCode?: string | null;\n}\n\nexport interface CarrierErrors {\n  /**\n   * Carrier errors.\n   * @maxSize 10\n   */\n  errors?: CarrierError[];\n}\n\nexport interface CarrierError {\n  /**\n   * Carrier ID.\n   * @format GUID\n   */\n  carrierId?: string;\n  /** Error details. */\n  error?: Details;\n}\n\nexport interface GetLatestInvoiceNumberRequest {\n  /**\n   * Invoice prefix to filter by.\n   * @minLength 1\n   * @maxLength 10\n   */\n  prefix?: string | null;\n}\n\nexport interface GetLatestInvoiceNumberResponse {\n  /** Invoice number. */\n  number?: number | null;\n}\n\nexport interface BulkCreateInvoicesRequest {\n  /**\n   * List of invoices to create.\n   * @minSize 1\n   * @maxSize 100\n   */\n  invoices: Invoice[];\n  /** Return created invoices in the response. */\n  returnEntity?: boolean;\n}\n\nexport interface BulkCreateInvoicesResponse {\n  /**\n   * List of invoices create operation results including metadata.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkInvoiceResult[];\n  /** Metadata regarding the bulk create operation. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface ItemMetadata {\n  /**\n   * Item ID. Provided only whenever possible. For example, `itemId` can't be provided when item creation has failed.\n   * @format GUID\n   */\n  _id?: string | null;\n  /** Index of the item within the request array. Allows for correlation between request and response items. */\n  originalIndex?: number;\n  /** Whether the requested action for this item was successful. When `false`, the `error` field is returned. */\n  success?: boolean;\n  /** Details about the error in case of failure. */\n  error?: ApplicationError;\n}\n\nexport interface BulkInvoiceResult {\n  /** Invoices create operation metadata. */\n  itemMetadata?: ItemMetadata;\n  /** Created invoices if `returnEntity` was set `true` in the request. */\n  item?: Invoice;\n}\n\nexport interface BulkActionMetadata {\n  /** Number of items that were successfully processed. */\n  totalSuccesses?: number;\n  /** Number of items that couldn't be processed. */\n  totalFailures?: number;\n  /** Number of failures without details because detailed failure threshold was exceeded. */\n  undetailedFailures?: number;\n}\n\nexport interface BulkUpdateInvoicesRequest {\n  /**\n   * Invoices to update.\n   * @minSize 1\n   * @maxSize 100\n   */\n  invoices: MaskedInvoice[];\n  /** Return updated invoices in the response. */\n  returnEntity?: boolean;\n}\n\nexport interface MaskedInvoice {\n  /** Invoice to update. May be partial. */\n  invoice?: Invoice;\n}\n\nexport interface BulkUpdateInvoicesResponse {\n  /**\n   * Invoices update operation results including metadata.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkUpdateInvoicesResponseBulkInvoiceResult[];\n  /** Metadata regarding the bulk update operation. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkUpdateInvoicesResponseBulkInvoiceResult {\n  /** Invoices update operation metadata. */\n  itemMetadata?: ItemMetadata;\n  /** Updated invoice if `returnEntity` was set `true` in the request. */\n  item?: Invoice;\n}\n\nexport interface BulkDeleteInvoicesRequest {\n  /**\n   * Invoice IDs to delete.\n   * @minSize 1\n   * @maxSize 100\n   * @format GUID\n   */\n  invoiceIds: string[];\n}\n\nexport interface BulkDeleteInvoicesResponse {\n  /**\n   * Invoices delete operation results including metadata.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkDeleteInvoicesResponseBulkInvoiceResult[];\n  /** Metadata regarding the bulk delete operation. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkDeleteInvoicesResponseBulkInvoiceResult {\n  /** Invoices delete operation metadata. */\n  itemMetadata?: ItemMetadata;\n}\n\nexport interface BulkUpdateInvoiceTagsRequest {\n  /**\n   * IDs of invoices which tags will be updated.\n   * @minSize 1\n   * @maxSize 100\n   * @format GUID\n   */\n  invoiceIds: string[];\n  /** List of tags to assign. */\n  assignTags?: Tags;\n  /** List of tags to unassign. */\n  unassignTags?: Tags;\n}\n\nexport interface BulkUpdateInvoiceTagsResponse {\n  /**\n   * Invoices update tags results including metadata.\n   * @minSize 1\n   * @maxSize 100\n   */\n  results?: BulkUpdateInvoiceTagsResult[];\n  /** Bulk update tags metadata. */\n  bulkActionMetadata?: BulkActionMetadata;\n}\n\nexport interface BulkUpdateInvoiceTagsResult {\n  /** Invoice's update tags operation metadata. */\n  itemMetadata?: ItemMetadata;\n}\n\nexport interface BulkUpdateInvoiceTagsByFilterRequest {\n  /** Filter to select relevant invoices. */\n  filter: Record<string, any> | null;\n  /** List of tags to assign. */\n  assignTags?: Tags;\n  /** List of tags to unassign. */\n  unassignTags?: Tags;\n}\n\nexport interface BulkUpdateInvoiceTagsByFilterResponse {\n  /**\n   * Job ID.\n   * @format GUID\n   */\n  jobId?: string;\n}\n\nexport interface Empty {}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n  entity?: string;\n}\n\nexport interface RestoreInfo {\n  deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n  /**\n   * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n   * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n   * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n   */\n  currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n  /** Entity that was deleted. */\n  deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n  body?: string;\n}\n\nexport interface MessageEnvelope {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Stringify payload. */\n  data?: string;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n  /** @readonly */\n  identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum WebhookIdentityType {\n  UNKNOWN = 'UNKNOWN',\n  ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n  MEMBER = 'MEMBER',\n  WIX_USER = 'WIX_USER',\n  APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n  | WebhookIdentityType\n  | 'UNKNOWN'\n  | 'ANONYMOUS_VISITOR'\n  | 'MEMBER'\n  | 'WIX_USER'\n  | 'APP';\n\nexport interface AccountInfo {\n  /**\n   * ID of the Wix account associated with the event.\n   * @format GUID\n   */\n  accountId?: string | null;\n  /**\n   * ID of the parent Wix account. Only included when accountId belongs to a child account.\n   * @format GUID\n   */\n  parentAccountId?: string | null;\n  /**\n   * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n   * @format GUID\n   */\n  siteId?: string | null;\n}\n\n/** @docsIgnore */\nexport type CreateInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'DEPOSIT_MUST_BE_LESS_THAN_TOTAL';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'TOTAL_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'BALANCE_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVALID_RICH_CONTENT';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_ORDER_TYPE_CREATION_RESTRICTED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_PRESET_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'CUSTOMER_CONTACT_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_MISSING_PAYMENT_CURRENCY';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_TAXES';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_CARRIER_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_NOT_PUBLISHED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ECOM_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type CreateInvoiceValidationErrors =\n  | {\n      ruleName?: 'DUE_DATE_BEFORE_ISSUE_DATE';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_MUST_EXIST';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_TOO_LARGE';\n    };\n/** @docsIgnore */\nexport type GetInvoiceApplicationErrors = {\n  code?: 'SITE_PROPERTIES_FAILED';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type UpdateInvoiceApplicationErrors =\n  | {\n      code?: 'DEPOSIT_MUST_BE_LESS_THAN_TOTAL';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'TOTAL_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'BALANCE_MUST_BE_GREATER_OR_EQUAL_TO_ZERO';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'ILLEGAL_FIELD_UPDATE_FOR_PAID_INVOICE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_FIELD_UPDATE_FOR_PUBLISHED_INVOICE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_PRESET_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'CUSTOMER_CONTACT_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_TAXES';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'FAILED_TO_CALCULATE_CARRIER_SHIPPING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVALID_RICH_CONTENT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type UpdateInvoiceValidationErrors =\n  | {\n      ruleName?: 'DUE_DATE_BEFORE_ISSUE_DATE';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_MUST_EXIST';\n    }\n  | {\n      ruleName?: 'LINE_ITEMS_IDS_MUST_BE_UNIQUE';\n    }\n  | {\n      ruleName?: 'RICH_CONTENT_TOO_LARGE';\n    };\n/** @docsIgnore */\nexport type DeleteInvoiceApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type QueryInvoicesApplicationErrors = {\n  code?: 'SITE_PROPERTIES_FAILED';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type SendInvoiceApplicationErrors =\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'CUSTOMER_CONTACT_MISSING';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SEND_LIMIT_REACHED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type PublishInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'INVOICE_PRESET_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type VoidInvoiceApplicationErrors =\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    };\n/** @docsIgnore */\nexport type ArchiveInvoiceApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type UnarchiveInvoiceApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type InitiatePaymentApplicationErrors =\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'INVALID_INVOICE_BALANCE_FOR_ONLINE_PAYMENT';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type EnableInvoicePaymentsApplicationErrors = {\n  code?: 'ILLEGAL_ACTION';\n  description?: string;\n  data?: IllegalActionErrorData;\n};\n/** @docsIgnore */\nexport type GeneratePdfDocumentApplicationErrors =\n  | {\n      code?: 'ILLEGAL_ACTION';\n      description?: string;\n      data?: IllegalActionErrorData;\n    }\n  | {\n      code?: 'INVOICE_NUMBER_NOT_ALLOCATED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_PDF_ALREADY_GENERATED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_PDF_ALREADY_PROCESSING';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type CalculateInvoiceApplicationErrors =\n  | {\n      code?: 'NO_META_SITE';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_MISSING_PAYMENT_CURRENCY';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'INVOICE_DRAFT_ORDER_NOT_FOUND';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type BulkCreateInvoicesApplicationErrors =\n  | {\n      code?: 'SITE_NOT_PUBLISHED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'APP_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'ECOM_INSTALLATION_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    }\n  | {\n      code?: 'SITE_PROPERTIES_FAILED';\n      description?: string;\n      data?: Record<string, any>;\n    };\n/** @docsIgnore */\nexport type BulkUpdateInvoicesApplicationErrors = {\n  code?: 'SITE_PROPERTIES_FAILED';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type BulkUpdateInvoiceTagsApplicationErrors = {\n  code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n  description?: string;\n  data?: Record<string, any>;\n};\n/** @docsIgnore */\nexport type BulkUpdateInvoiceTagsByFilterApplicationErrors = {\n  code?: 'EMPTY_ASSIGN_AND_UNASSIGN_LISTS';\n  description?: string;\n  data?: Record<string, any>;\n};\n\n/**\n * Creates a Invoice.\n * @param invoice - Invoice to create.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoice\n * @requiredField invoice.currency\n * @requiredField invoice.customerInfo\n * @requiredField invoice.customerInfo.contactId\n * @requiredField invoice.dueDate\n * @requiredField invoice.issueDate\n * @requiredField invoice.lineItems\n * @requiredField invoice.lineItems.itemDetails.catalogItem.catalogReference\n * @requiredField invoice.lineItems.itemDetails.catalogItem.catalogReference.appId\n * @requiredField invoice.lineItems.itemDetails.catalogItem.catalogReference.catalogItemId\n * @requiredField invoice.lineItems.itemDetails.customItem.name\n * @requiredField invoice.lineItems.itemDetails.customItem.price\n * @requiredField invoice.lineItems.itemDetails.customItem.quantity\n * @requiredField invoice.lineItems.itemType\n * @requiredField invoice.reference\n * @requiredField invoice.reference.referenceType\n * @requiredField invoice.reference.references\n * @requiredField invoice.reference.references.orderReference.orderId\n * @requiredField invoice.shippingInfo.contactDetails\n * @requiredField invoice.shippingInfo.shippingAddress\n * @permissionId INVOICES.INVOICE_CREATE\n * @applicableIdentity APP\n * @returns Created invoice.\n * @fqn wix.invoices.invoices.v4.Invoices.CreateInvoice\n */\nexport async function createInvoice(\n  invoice: NonNullablePaths<\n    Invoice,\n    | `currency`\n    | `customerInfo`\n    | `customerInfo.contactId`\n    | `dueDate`\n    | `issueDate`\n    | `lineItems`\n    | `lineItems.${number}.catalogItem.catalogReference`\n    | `lineItems.${number}.catalogItem.catalogReference.appId`\n    | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.name`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.itemType`\n    | `reference`\n    | `reference.orderReference.orderId`\n    | `reference.referenceType`\n    | `shipmentInfo.price`\n    | `shippingInfo.contactDetails`\n    | `shippingInfo.contactDetails.email`\n    | `shippingInfo.shippingAddress`,\n    6\n  >\n): Promise<\n  NonNullablePaths<\n    Invoice,\n    | `status`\n    | `statusQualifiers`\n    | `availableActions`\n    | `sourceReference.appId`\n    | `reference.standaloneReference.limitActions`\n    | `reference.orderReference.orderId`\n    | `reference.referenceType`\n    | `regionalProperties.locale.languageCode`\n    | `regionalProperties.language`\n    | `numbering.displayNumber`\n    | `currency`\n    | `customerInfo.contactDetails.vatId._id`\n    | `customerInfo.contactDetails.vatId.type`\n    | `customerInfo.billingAddress.streetAddress.number`\n    | `customerInfo.billingAddress.streetAddress.name`\n    | `lineItems`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.catalogReference.appId`\n    | `lineItems.${number}.customItem.discount.fixedDiscount`\n    | `lineItems.${number}.customItem.discount.percentageDiscount`\n    | `lineItems.${number}.customItem.discount.discountType`\n    | `lineItems.${number}.catalogItem.quantity`\n    | `lineItems.${number}.catalogItem.itemType.preset`\n    | `lineItems.${number}.catalogItem.itemType.custom`\n    | `lineItems.${number}.itemType`\n    | `shipmentInfo.price`\n    | `shipmentInfo.taxInfo.taxBreakdown`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `shipmentInfo.totals.priceBeforeTax`\n    | `shipmentInfo.totals.priceAfterTax`\n    | `additionalFees`\n    | `additionalFees.${number}.name`\n    | `additionalFees.${number}.amount`\n    | `discounts`\n    | `discounts.${number}.fixedDiscount`\n    | `discounts.${number}.percentageDiscount`\n    | `discounts.${number}.discountType`\n    | `deposit.fixedDeposit`\n    | `deposit.percentageDeposit`\n    | `deposit.depositType`\n    | `taxInfo.taxBreakdown`\n    | `taxInfo.taxBreakdown.${number}.name`\n    | `taxInfo.taxBreakdown.${number}.rate`\n    | `taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `taxInfo.taxBreakdown.${number}.taxAmount`\n    | `taxInfo.taxExempt`\n    | `payments`\n    | `payments.${number}.regularPayment.paymentOrderId`\n    | `payments.${number}.regularPayment.paymentMethod`\n    | `payments.${number}.regularPayment.offlinePayment`\n    | `payments.${number}.regularPayment.paymentStatus`\n    | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `payments.${number}.regularPayment.creditCardDetails.brand`\n    | `payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `payments.${number}.giftCardPayment.appId`\n    | `payments.${number}._id`\n    | `payments.${number}.amount`\n    | `payments.${number}.paymentType`\n    | `payments.${number}.receiptType`\n    | `totals.subtotal`\n    | `totals.total`\n    | `totals.paidAmount`\n    | `totals.balance`\n    | `archived`\n    | `customFields.headerCustomFields`\n    | `customFields.headerCustomFields.${number}.value`\n    | `customFields.businessCustomFields`\n    | `customFields.customerCustomFields`\n    | `customFields.footerCustomField.overridePresetContent`\n    | `presetProperties.invoicePreset.name`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `presetProperties.invoicePreset.default`\n    | `attachments`\n    | `attachments.${number}.fileName`\n    | `attachments.${number}.fileUrl`\n    | `documentInfo.status`\n    | `links.relativePath`\n    | `businessLocation._id`\n    | `tags.privateTags.tagIds`,\n    7\n  > & {\n    __applicationErrorsType?: CreateInvoiceApplicationErrors;\n    __validationErrorsType?: CreateInvoiceValidationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest({ invoice: invoice }, [\n      'invoice.customFields.footerCustomField.content',\n      'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n    ]),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress' },\n          { path: 'invoice.shippingInfo.shippingAddress' },\n          { path: 'invoice.businessDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.createInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )?.invoice!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoice: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoice']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves a Invoice.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @returns Requested invoice.\n * @fqn wix.invoices.invoices.v4.Invoices.GetInvoice\n */\nexport async function getInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    Invoice,\n    | `status`\n    | `statusQualifiers`\n    | `availableActions`\n    | `sourceReference.appId`\n    | `reference.standaloneReference.limitActions`\n    | `reference.orderReference.orderId`\n    | `reference.referenceType`\n    | `regionalProperties.locale.languageCode`\n    | `regionalProperties.language`\n    | `numbering.displayNumber`\n    | `currency`\n    | `customerInfo.contactDetails.vatId._id`\n    | `customerInfo.contactDetails.vatId.type`\n    | `customerInfo.billingAddress.streetAddress.number`\n    | `customerInfo.billingAddress.streetAddress.name`\n    | `lineItems`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.catalogReference.appId`\n    | `lineItems.${number}.customItem.discount.fixedDiscount`\n    | `lineItems.${number}.customItem.discount.percentageDiscount`\n    | `lineItems.${number}.customItem.discount.discountType`\n    | `lineItems.${number}.catalogItem.quantity`\n    | `lineItems.${number}.catalogItem.itemType.preset`\n    | `lineItems.${number}.catalogItem.itemType.custom`\n    | `lineItems.${number}.itemType`\n    | `shipmentInfo.price`\n    | `shipmentInfo.taxInfo.taxBreakdown`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `shipmentInfo.totals.priceBeforeTax`\n    | `shipmentInfo.totals.priceAfterTax`\n    | `additionalFees`\n    | `additionalFees.${number}.name`\n    | `additionalFees.${number}.amount`\n    | `discounts`\n    | `discounts.${number}.fixedDiscount`\n    | `discounts.${number}.percentageDiscount`\n    | `discounts.${number}.discountType`\n    | `deposit.fixedDeposit`\n    | `deposit.percentageDeposit`\n    | `deposit.depositType`\n    | `taxInfo.taxBreakdown`\n    | `taxInfo.taxBreakdown.${number}.name`\n    | `taxInfo.taxBreakdown.${number}.rate`\n    | `taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `taxInfo.taxBreakdown.${number}.taxAmount`\n    | `taxInfo.taxExempt`\n    | `payments`\n    | `payments.${number}.regularPayment.paymentOrderId`\n    | `payments.${number}.regularPayment.paymentMethod`\n    | `payments.${number}.regularPayment.offlinePayment`\n    | `payments.${number}.regularPayment.paymentStatus`\n    | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `payments.${number}.regularPayment.creditCardDetails.brand`\n    | `payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `payments.${number}.giftCardPayment.appId`\n    | `payments.${number}._id`\n    | `payments.${number}.amount`\n    | `payments.${number}.paymentType`\n    | `payments.${number}.receiptType`\n    | `totals.subtotal`\n    | `totals.total`\n    | `totals.paidAmount`\n    | `totals.balance`\n    | `archived`\n    | `customFields.headerCustomFields`\n    | `customFields.headerCustomFields.${number}.value`\n    | `customFields.businessCustomFields`\n    | `customFields.customerCustomFields`\n    | `customFields.footerCustomField.overridePresetContent`\n    | `presetProperties.invoicePreset.name`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `presetProperties.invoicePreset.default`\n    | `attachments`\n    | `attachments.${number}.fileName`\n    | `attachments.${number}.fileUrl`\n    | `documentInfo.status`\n    | `links.relativePath`\n    | `businessLocation._id`\n    | `tags.privateTags.tagIds`,\n    7\n  > & {\n    __applicationErrorsType?: GetInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.getInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )?.invoice!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Updates a Invoice.\n *\n *\n * Each time the Invoice is updated,\n * `revision` increments by 1.\n * The current `revision` must be passed when updating the Invoice.\n * This ensures you're working with the latest Invoice\n * and prevents unintended overwrites.\n * @param _id - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField invoice\n * @requiredField invoice.lineItems.itemDetails.customItem.name\n * @requiredField invoice.revision\n * @permissionId INVOICES.INVOICE_UPDATE\n * @applicableIdentity APP\n * @returns Updated invoice.\n * @fqn wix.invoices.invoices.v4.Invoices.UpdateInvoice\n */\nexport async function updateInvoice(\n  _id: string,\n  invoice: NonNullablePaths<\n    UpdateInvoice,\n    `lineItems.${number}.customItem.name` | `revision`,\n    5\n  >\n): Promise<\n  NonNullablePaths<\n    Invoice,\n    | `status`\n    | `statusQualifiers`\n    | `availableActions`\n    | `sourceReference.appId`\n    | `reference.standaloneReference.limitActions`\n    | `reference.orderReference.orderId`\n    | `reference.referenceType`\n    | `regionalProperties.locale.languageCode`\n    | `regionalProperties.language`\n    | `numbering.displayNumber`\n    | `currency`\n    | `customerInfo.contactDetails.vatId._id`\n    | `customerInfo.contactDetails.vatId.type`\n    | `customerInfo.billingAddress.streetAddress.number`\n    | `customerInfo.billingAddress.streetAddress.name`\n    | `lineItems`\n    | `lineItems.${number}.customItem.quantity`\n    | `lineItems.${number}.customItem.price`\n    | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `lineItems.${number}.customItem.catalogReference.appId`\n    | `lineItems.${number}.customItem.discount.fixedDiscount`\n    | `lineItems.${number}.customItem.discount.percentageDiscount`\n    | `lineItems.${number}.customItem.discount.discountType`\n    | `lineItems.${number}.catalogItem.quantity`\n    | `lineItems.${number}.catalogItem.itemType.preset`\n    | `lineItems.${number}.catalogItem.itemType.custom`\n    | `lineItems.${number}.itemType`\n    | `shipmentInfo.price`\n    | `shipmentInfo.taxInfo.taxBreakdown`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `shipmentInfo.totals.priceBeforeTax`\n    | `shipmentInfo.totals.priceAfterTax`\n    | `additionalFees`\n    | `additionalFees.${number}.name`\n    | `additionalFees.${number}.amount`\n    | `discounts`\n    | `discounts.${number}.fixedDiscount`\n    | `discounts.${number}.percentageDiscount`\n    | `discounts.${number}.discountType`\n    | `deposit.fixedDeposit`\n    | `deposit.percentageDeposit`\n    | `deposit.depositType`\n    | `taxInfo.taxBreakdown`\n    | `taxInfo.taxBreakdown.${number}.name`\n    | `taxInfo.taxBreakdown.${number}.rate`\n    | `taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `taxInfo.taxBreakdown.${number}.taxAmount`\n    | `taxInfo.taxExempt`\n    | `payments`\n    | `payments.${number}.regularPayment.paymentOrderId`\n    | `payments.${number}.regularPayment.paymentMethod`\n    | `payments.${number}.regularPayment.offlinePayment`\n    | `payments.${number}.regularPayment.paymentStatus`\n    | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `payments.${number}.regularPayment.creditCardDetails.brand`\n    | `payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `payments.${number}.giftCardPayment.appId`\n    | `payments.${number}._id`\n    | `payments.${number}.amount`\n    | `payments.${number}.paymentType`\n    | `payments.${number}.receiptType`\n    | `totals.subtotal`\n    | `totals.total`\n    | `totals.paidAmount`\n    | `totals.balance`\n    | `archived`\n    | `customFields.headerCustomFields`\n    | `customFields.headerCustomFields.${number}.value`\n    | `customFields.businessCustomFields`\n    | `customFields.customerCustomFields`\n    | `customFields.footerCustomField.overridePresetContent`\n    | `presetProperties.invoicePreset.name`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `presetProperties.invoicePreset.default`\n    | `attachments`\n    | `attachments.${number}.fileName`\n    | `attachments.${number}.fileUrl`\n    | `documentInfo.status`\n    | `links.relativePath`\n    | `businessLocation._id`\n    | `tags.privateTags.tagIds`,\n    7\n  > & {\n    __applicationErrorsType?: UpdateInvoiceApplicationErrors;\n    __validationErrorsType?: UpdateInvoiceValidationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoice: { ...invoice, id: _id } },\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress' },\n          { path: 'invoice.shippingInfo.shippingAddress' },\n          { path: 'invoice.businessDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.updateInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )?.invoice!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: { invoice: '$[1]' },\n        explicitPathsToArguments: { 'invoice.id': '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['_id', 'invoice']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface UpdateInvoice {\n  /**\n   * Invoice ID.\n   * @format GUID\n   * @readonly\n   * @immutable\n   */\n  _id?: string | null;\n  /**\n   * Revision number, which increments by 1 each time the Invoice is updated.\n   * To prevent conflicting changes,\n   * the current revision must be passed when updating the Invoice.\n   *\n   * Ignored when creating Invoice.\n   * @readonly\n   */\n  revision?: string | null;\n  /**\n   * Date and time the Invoice was created.\n   * @readonly\n   */\n  _createdDate?: Date | null;\n  /**\n   * Date and time the Invoice was last updated.\n   * @readonly\n   */\n  _updatedDate?: Date | null;\n  /**\n   * Status of the invoice.\n   * @readonly\n   */\n  status?: StatusWithLiterals;\n  /**\n   * Status qualifiers indicating the current state or performed action on the invoice.\n   * @readonly\n   * @maxSize 2\n   */\n  statusQualifiers?: StatusQualifierWithLiterals[];\n  /**\n   * Available actions for this invoice.\n   * @readonly\n   * @maxSize 10\n   */\n  availableActions?: ActionWithLiterals[];\n  /**\n   * Information about the application or system that created this invoice.\n   * @immutable\n   */\n  sourceReference?: SourceReference;\n  /**\n   * Invoice reference to the Wix eCommerce system.\n   * @immutable\n   */\n  reference?: Reference;\n  /**\n   * Regional properties pertaining to the invoice.\n   * When regional properties are not provided, defaults are taken from the [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction).\n   */\n  regionalProperties?: RegionalProperties;\n  /**\n   * Invoice numbering configuration including prefix, number, and suffix.\n   * @readonly\n   */\n  numbering?: Numbering;\n  /** Date the invoice was issued. */\n  issueDate?: Date | null;\n  /** Date when payment is due for this invoice. Must be greater than `issueDate`. */\n  dueDate?: Date | null;\n  /**\n   * Invoice title.\n   * @minLength 1\n   * @maxLength 200\n   */\n  title?: string | null;\n  /**\n   * Currency code for all monetary amounts in this invoice.\n   * Three-letter currency code in [ISO-4217 alphabetic](https://en.wikipedia.org/wiki/ISO_4217#Active_codes) format.\n   * @format CURRENCY\n   * @immutable\n   */\n  currency?: string;\n  /** Customer information including contact details and billing address. */\n  customerInfo?: CustomerInfo;\n  /** Shipping contact information including contact details and shipping address. */\n  shippingInfo?: ShippingInfo;\n  /**\n   * Business details.\n   * If not provided, taken from [Site Properties API](https://dev.wix.com/docs/api-reference/business-management/site-properties/introduction).\n   * Business details becomes fixed when `status` changes to one of: `PARTIALLY_PAID`, `PAID`, `VOIDED`.\n   */\n  businessDetails?: BusinessDetails;\n  /**\n   * List of line items included in this invoice.\n   * Line items are not required for [CalculateInvoice](https://dev.wix.com/docs/api-reference/business-management/get-paid/invoices/invoices/calculate-invoice) API endpoint.\n   * @maxSize 300\n   */\n  lineItems?: LineItem[];\n  /** Shipping details and costs. */\n  shipmentInfo?: ShipmentInfo;\n  /**\n   * Additional fees applied to the invoice.\n   * @maxSize 20\n   */\n  additionalFees?: AdditionalFee[];\n  /**\n   * Discount applied to the entire invoice.\n   * @maxSize 20\n   */\n  discounts?: Discount[];\n  /** Deposit payment amount. */\n  deposit?: Deposit;\n  /** Tax information. */\n  taxInfo?: TaxInfo;\n  /**\n   * List of payments.\n   * @maxSize 100\n   */\n  payments?: Payment[];\n  /** Summary totals including subtotal, taxes, and final amount. */\n  totals?: Totals;\n  /**\n   * Archived invoice indicator.\n   * @readonly\n   */\n  archived?: boolean;\n  /** Custom fields. */\n  customFields?: CustomFields;\n  /** Preset properties. Includes invoice preset selection. */\n  presetProperties?: PresetProperties;\n  /**\n   * Files to be attached. Displayed on the invoice.\n   * @maxSize 5\n   */\n  attachments?: Attachment[];\n  /**\n   * Document details.\n   * @readonly\n   */\n  documentInfo?: DocumentInfo;\n  /**\n   * Links.\n   * @readonly\n   */\n  links?: Links;\n  /** Business location. */\n  businessLocation?: BusinessLocation;\n  /** Data Extensions. */\n  extendedFields?: ExtendedFields;\n  /** Tags. */\n  tags?: Tags;\n}\n\n/**\n * Deletes a Invoice.\n *\n * Deleting a Invoice permanently removes them from the Invoice List.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_DELETE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.DeleteInvoice\n */\nexport async function deleteInvoice(invoiceId: string): Promise<\n  void & {\n    __applicationErrorsType?: DeleteInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.deleteInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves a list of Invoices, given the provided [paging, filtering, and sorting][1].\n *\n * Up to 1,000 Invoices can be returned per request.\n *\n * To learn how to query Invoices, see [API Query Language][2].\n *\n * [1]: https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging\n * [2]: https://dev.wix.com/docs/rest/articles/getting-started/api-query-language\n * @internal\n * @documentationMaturity preview\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.QueryInvoices\n */\nexport function queryInvoices(): InvoicesQueryBuilder {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[0] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  return queryBuilder<\n    Invoice,\n    'CURSOR',\n    QueryInvoicesRequest,\n    QueryInvoicesResponse\n  >({\n    func: async (payload: QueryInvoicesRequest) => {\n      const reqOpts =\n        ambassadorWixInvoicesInvoicesV4Invoice.queryInvoices(payload);\n\n      sideEffects?.onSiteCall?.();\n      try {\n        const result = await httpClient.request(reqOpts);\n        sideEffects?.onSuccess?.(result);\n        return result;\n      } catch (err) {\n        sideEffects?.onError?.(err);\n        throw err;\n      }\n    },\n    requestTransformer: (query: QueryInvoicesRequest['query']) => {\n      const args = [query, {}] as [QueryInvoicesRequest['query'], {}];\n      return renameKeysFromSDKRequestToRESTRequest(\n        { ...args?.[1], query: args?.[0] },\n        []\n      );\n    },\n    responseTransformer: ({ data }: HttpResponse<QueryInvoicesResponse>) => {\n      const transformedData = renameKeysFromRESTResponseToSDKResponse(\n        transformPaths(data, [\n          {\n            transformFn: transformRESTAddressToSDKAddress,\n            paths: [\n              { path: 'invoices.customerInfo.billingAddress' },\n              { path: 'invoices.shippingInfo.shippingAddress' },\n              { path: 'invoices.businessDetails.address' },\n            ],\n          },\n        ]),\n        [\n          'invoices.customFields.footerCustomField.content',\n          'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n        ]\n      );\n\n      return {\n        items: transformedData?.invoices,\n        pagingMetadata: transformedData?.pagingMetadata,\n      };\n    },\n    errorTransformer: (err: unknown) => {\n      const transformedError = sdkTransformError(err, {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      });\n\n      throw transformedError;\n    },\n    pagingMethod: 'CURSOR',\n    transformationPaths: {},\n  });\n}\n\ninterface QueryCursorResult {\n  cursors: Cursors;\n  hasNext: () => boolean;\n  hasPrev: () => boolean;\n  length: number;\n  pageSize: number;\n}\n\nexport interface InvoicesQueryResult extends QueryCursorResult {\n  items: Invoice[];\n  query: InvoicesQueryBuilder;\n  next: () => Promise<InvoicesQueryResult>;\n  prev: () => Promise<InvoicesQueryResult>;\n}\n\nexport interface InvoicesQueryBuilder {\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  eq: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  ne: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  ge: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  gt: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  le: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   * @documentationMaturity preview\n   */\n  lt: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `string`.\n   * @param string - String to compare against. Case-insensitive.\n   * @documentationMaturity preview\n   */\n  startsWith: (\n    propertyName:\n      | '_id'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'customerInfo.contactId',\n    value: string\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   * @documentationMaturity preview\n   */\n  hasSome: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds',\n    value: any[]\n  ) => InvoicesQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   * @documentationMaturity preview\n   */\n  hasAll: (\n    propertyName: 'tags.privateTags.tagIds' | 'tags.publicTags.tagIds',\n    value: any[]\n  ) => InvoicesQueryBuilder;\n  /** @documentationMaturity preview */\n  in: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds',\n    value: any\n  ) => InvoicesQueryBuilder;\n  /** @documentationMaturity preview */\n  exists: (\n    propertyName:\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds',\n    value: boolean\n  ) => InvoicesQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.\n   * @documentationMaturity preview\n   */\n  ascending: (\n    ...propertyNames: Array<\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'statusQualifiers'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds'\n    >\n  ) => InvoicesQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.\n   * @documentationMaturity preview\n   */\n  descending: (\n    ...propertyNames: Array<\n      | '_id'\n      | '_createdDate'\n      | '_updatedDate'\n      | 'status'\n      | 'statusQualifiers'\n      | 'sourceReference.appId'\n      | 'sourceReference.externalReferenceId'\n      | 'reference.standaloneReference.orderId'\n      | 'reference.orderReference.orderId'\n      | 'reference.referenceType'\n      | 'numbering.number'\n      | 'numbering.prefix'\n      | 'numbering.suffix'\n      | 'numbering.displayNumber'\n      | 'issueDate'\n      | 'dueDate'\n      | 'customerInfo.contactId'\n      | 'archived'\n      | 'tags.privateTags.tagIds'\n      | 'tags.publicTags.tagIds'\n    >\n  ) => InvoicesQueryBuilder;\n  /** @param limit - Number of items to return, which is also the `pageSize` of the results object.\n   * @documentationMaturity preview\n   */\n  limit: (limit: number) => InvoicesQueryBuilder;\n  /** @param cursor - A pointer to specific record\n   * @documentationMaturity preview\n   */\n  skipTo: (cursor: string) => InvoicesQueryBuilder;\n  /** @documentationMaturity preview */\n  find: () => Promise<InvoicesQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.invoices.invoices.v4.Invoices.QueryInvoices\n * @requiredField query\n */\nexport async function typedQueryInvoices(query: InvoiceQuery): Promise<\n  NonNullablePaths<\n    QueryInvoicesResponse,\n    | `invoices`\n    | `invoices.${number}.status`\n    | `invoices.${number}.sourceReference.appId`\n    | `invoices.${number}.reference.standaloneReference.limitActions`\n    | `invoices.${number}.reference.orderReference.orderId`\n    | `invoices.${number}.reference.referenceType`\n    | `invoices.${number}.regionalProperties.locale.languageCode`\n    | `invoices.${number}.regionalProperties.language`\n    | `invoices.${number}.numbering.displayNumber`\n    | `invoices.${number}.currency`\n    | `invoices.${number}.shipmentInfo.price`\n    | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n    | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n    | `invoices.${number}.deposit.fixedDeposit`\n    | `invoices.${number}.deposit.percentageDeposit`\n    | `invoices.${number}.deposit.depositType`\n    | `invoices.${number}.taxInfo.taxExempt`\n    | `invoices.${number}.totals.subtotal`\n    | `invoices.${number}.totals.total`\n    | `invoices.${number}.totals.paidAmount`\n    | `invoices.${number}.totals.balance`\n    | `invoices.${number}.archived`\n    | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n    | `invoices.${number}.presetProperties.invoicePreset.name`\n    | `invoices.${number}.presetProperties.invoicePreset.default`\n    | `invoices.${number}.documentInfo.status`\n    | `invoices.${number}.links.relativePath`\n    | `invoices.${number}.businessLocation._id`,\n    6\n  > & {\n    __applicationErrorsType?: QueryInvoicesApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ query: query }, []);\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.queryInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoices.customerInfo.billingAddress' },\n            { path: 'invoices.shippingInfo.shippingAddress' },\n            { path: 'invoices.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoices.customFields.footerCustomField.content',\n        'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['query']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface InvoiceQuerySpec extends QuerySpec {\n  paging: 'cursor';\n  wql: [\n    {\n      fields: [\n        'statusQualifiers',\n        'tags.privateTags.tagIds',\n        'tags.publicTags.tagIds'\n      ];\n      operators: ['$hasAll', '$hasSome'];\n      sort: 'BOTH';\n    },\n    {\n      fields: [\n        '_createdDate',\n        '_id',\n        '_updatedDate',\n        'archived',\n        'customerInfo.contactId',\n        'dueDate',\n        'issueDate',\n        'numbering.displayNumber',\n        'numbering.number',\n        'numbering.prefix',\n        'numbering.suffix',\n        'reference.orderReference.orderId',\n        'reference.referenceType',\n        'reference.standaloneReference.orderId',\n        'sourceReference.appId',\n        'sourceReference.externalReferenceId',\n        'status'\n      ];\n      operators: '*';\n      sort: 'BOTH';\n    }\n  ];\n}\n\nexport type CommonQueryWithEntityContext = QuerySdkType<\n  Invoice,\n  InvoiceQuerySpec\n>;\nexport type InvoiceQuery = {\n  /** \n  Cursor paging options.\n\n  Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).  \n  */\n  cursorPaging?: {\n    /** \n  Maximum number of items to return in the results. \n  @max: 100 \n  */\n    limit?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit']\n      | null;\n    /** \n  Pointer to the next or previous page in the list of results.\n\n  Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n  Not relevant for the first request. \n  @maxLength: 16000 \n  */\n    cursor?:\n      | NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor']\n      | null;\n  };\n  /** \n  Filter object.\n\n  Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).  \n  */\n  filter?: CommonQueryWithEntityContext['filter'] | null;\n  /** \n  Sort object.\n\n  Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section). \n  @maxSize: 5 \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 512 \n  */\n    fieldName?: NonNullable<\n      CommonQueryWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];\n  }[];\n};\n\nexport const utils = {\n  query: {\n    ...createQueryUtils<Invoice, InvoiceQuerySpec, InvoiceQuery>(),\n  },\n  search: {\n    ...createSearchUtils<Invoice, InvoiceSearchSpec, InvoiceSearch>(),\n  },\n};\n\n/**\n * Retrieves a list of up to 100 invoices, given the specified filtering, search expression, sorting, and cursor paging ([SDK](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/api-query-language) | [REST](https://dev.wix.com/api/rest/getting-started/api-query-language)).\n * @param search - Search options.\n * @internal\n * @documentationMaturity preview\n * @requiredField search\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.SearchInvoices\n */\nexport async function searchInvoices(\n  search: InvoiceSearch\n): Promise<\n  NonNullablePaths<\n    SearchInvoicesResponse,\n    | `invoices`\n    | `invoices.${number}.status`\n    | `invoices.${number}.sourceReference.appId`\n    | `invoices.${number}.reference.standaloneReference.limitActions`\n    | `invoices.${number}.reference.orderReference.orderId`\n    | `invoices.${number}.reference.referenceType`\n    | `invoices.${number}.regionalProperties.locale.languageCode`\n    | `invoices.${number}.regionalProperties.language`\n    | `invoices.${number}.numbering.displayNumber`\n    | `invoices.${number}.currency`\n    | `invoices.${number}.shipmentInfo.price`\n    | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n    | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n    | `invoices.${number}.deposit.fixedDeposit`\n    | `invoices.${number}.deposit.percentageDeposit`\n    | `invoices.${number}.deposit.depositType`\n    | `invoices.${number}.taxInfo.taxExempt`\n    | `invoices.${number}.totals.subtotal`\n    | `invoices.${number}.totals.total`\n    | `invoices.${number}.totals.paidAmount`\n    | `invoices.${number}.totals.balance`\n    | `invoices.${number}.archived`\n    | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n    | `invoices.${number}.presetProperties.invoicePreset.name`\n    | `invoices.${number}.presetProperties.invoicePreset.default`\n    | `invoices.${number}.documentInfo.status`\n    | `invoices.${number}.links.relativePath`\n    | `invoices.${number}.businessLocation._id`\n    | `aggregationData.results`\n    | `aggregationData.results.${number}.scalar.type`\n    | `aggregationData.results.${number}.scalar.value`\n    | `aggregationData.results.${number}.name`\n    | `aggregationData.results.${number}.type`\n    | `aggregationData.results.${number}.fieldPath`,\n    6\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ search: search }, []);\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.searchInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoices.customerInfo.billingAddress' },\n            { path: 'invoices.shippingInfo.shippingAddress' },\n            { path: 'invoices.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoices.customFields.footerCustomField.content',\n        'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { search: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['search']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface InvoiceSearchSpec extends SearchSpec {\n  searchable: [\n    'customerInfo.contactDetails.company',\n    'customerInfo.contactDetails.email',\n    'customerInfo.contactDetails.firstName',\n    'customerInfo.contactDetails.fullName',\n    'customerInfo.contactDetails.lastName',\n    'numbering.displayNumber',\n    'title'\n  ];\n  aggregatable: [\n    '_createdDate',\n    '_id',\n    '_updatedDate',\n    'archived',\n    'customerInfo.contactId',\n    'dueDate',\n    'issueDate',\n    'numbering.displayNumber',\n    'numbering.number',\n    'numbering.prefix',\n    'numbering.suffix',\n    'reference.orderReference.orderId',\n    'reference.referenceType',\n    'reference.standaloneReference.orderId',\n    'sourceReference.appId',\n    'sourceReference.externalReferenceId',\n    'status',\n    'statusQualifiers',\n    'tags.privateTags.tagIds',\n    'tags.publicTags.tagIds'\n  ];\n  paging: 'cursor';\n  wql: [\n    {\n      operators: ['$hasAll', '$hasSome'];\n      fields: [\n        'statusQualifiers',\n        'tags.privateTags.tagIds',\n        'tags.publicTags.tagIds'\n      ];\n      sort: 'BOTH';\n    },\n    {\n      operators: '*';\n      fields: [\n        '_createdDate',\n        '_id',\n        '_updatedDate',\n        'archived',\n        'customerInfo.contactId',\n        'dueDate',\n        'issueDate',\n        'numbering.displayNumber',\n        'numbering.number',\n        'numbering.prefix',\n        'numbering.suffix',\n        'reference.orderReference.orderId',\n        'reference.referenceType',\n        'reference.standaloneReference.orderId',\n        'sourceReference.appId',\n        'sourceReference.externalReferenceId',\n        'status'\n      ];\n      sort: 'BOTH';\n    }\n  ];\n}\n\nexport type CommonSearchWithEntityContext = SearchSdkType<\n  Invoice,\n  InvoiceSearchSpec\n>;\nexport type InvoiceSearch = {\n  /** \n  Cursor paging options.\n\n  Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).  \n  */\n  cursorPaging?: {\n    /** \n  Maximum number of items to return in the results. \n  @max: 100 \n  */\n    limit?:\n      | NonNullable<CommonSearchWithEntityContext['cursorPaging']>['limit']\n      | null;\n    /** \n  Pointer to the next or previous page in the list of results.\n\n  Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n  Not relevant for the first request. \n  @maxLength: 16000 \n  */\n    cursor?:\n      | NonNullable<CommonSearchWithEntityContext['cursorPaging']>['cursor']\n      | null;\n  };\n  /** \n  Filter object.\n\n  Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).  \n  */\n  filter?: CommonSearchWithEntityContext['filter'] | null;\n  /** \n  List of sort objects.\n\n  Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section). \n  @maxSize: 10 \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 512 \n  */\n    fieldName?: NonNullable<\n      CommonSearchWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonSearchWithEntityContext['sort']>[number]['order'];\n  }[];\n  /** \n  Aggregations are a way to explore large amounts of data by displaying summaries about various partitions of the data and later allowing to narrow the navigation to a specific partition. \n  @maxSize: 10 \n  */\n  aggregations?: {\n    /** \n  Value aggregation.  \n  */\n    value?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['value'];\n    /** \n  Range aggregation.  \n  */\n    range?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['range'];\n    /** \n  Scalar aggregation.  \n  */\n    scalar?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['scalar'];\n    /** \n  Date histogram aggregation.  \n  */\n    dateHistogram?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['dateHistogram'];\n    /** \n  Nested aggregation.  \n  */\n    nested?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['nested'];\n    /** \n  User-defined name of aggregation, should be unique, will appear in aggregation results. \n  @maxLength: 100 \n  */\n    name?:\n      | NonNullable<\n          CommonSearchWithEntityContext['aggregations']\n        >[number]['name']\n      | null;\n    /** \n  Type of aggregation, client must provide matching aggregation field below.  \n  */\n    type?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['type'];\n    /** \n  Field to aggregate by, use dot notation to specify json path. \n  @maxLength: 200 \n  */\n    fieldPath?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['fieldPath'];\n    /** \n  Deprecated. Use `nested` instead. \n  @deprecated: Deprecated. Use `nested` instead.,\n  @replacedBy: kind.nested,\n  @targetRemovalDate: 2024-03-30 \n  */\n    groupBy?: NonNullable<\n      CommonSearchWithEntityContext['aggregations']\n    >[number]['groupBy'];\n  }[];\n  /** \n  Free text to match in searchable fields.  \n  */\n  search?: {\n    /** \n  Defines how separate search terms in `expression` are combined.  \n  */\n    mode?: NonNullable<CommonSearchWithEntityContext['search']>['mode'];\n    /** \n  Search term or expression. \n  @maxLength: 100 \n  */\n    expression?:\n      | NonNullable<CommonSearchWithEntityContext['search']>['expression']\n      | null;\n    /** \n  Fields to search in. If empty - will search in all searchable fields. Use dot notation to specify json path. \n  @maxLength: 200,\n  @maxSize: 20 \n  */\n    fields?: NonNullable<CommonSearchWithEntityContext['search']>['fields'];\n    /** \n  Whether to use auto fuzzy search (allowing typos by a managed proximity algorithm).  \n  */\n    fuzzy?: NonNullable<CommonSearchWithEntityContext['search']>['fuzzy'];\n  };\n  /** \n  UTC offset or IANA time zone. Valid values are\n  ISO 8601 UTC offsets, such as +02:00 or -06:00,\n  and IANA time zone IDs, such as Europe/Rome.\n\n  Affects all filters and aggregations returned values.\n  You may override this behavior in a specific filter by providing\n  timestamps including time zone. For example, `\"2023-12-20T10:52:34.795Z\"`. \n  @maxLength: 50 \n  */\n  timeZone?: CommonSearchWithEntityContext['timeZone'] | null;\n};\n\n/**\n * Sends Invoice to a contact.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_SEND\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.SendInvoice\n */\nexport async function sendInvoice(\n  invoiceId: string,\n  options?: SendInvoiceOptions\n): Promise<\n  NonNullablePaths<\n    SendInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`\n    | `sendResults`\n    | `sendResults.${number}.contactId`\n    | `sendResults.${number}.success`\n    | `sendResults.${number}.errorType`,\n    8\n  > & {\n    __applicationErrorsType?: SendInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    {\n      invoiceId: invoiceId,\n      contactIds: options?.contactIds,\n      messageContent: options?.messageContent,\n    },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.sendInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoiceId: '$[0]',\n          contactIds: '$[1].contactIds',\n          messageContent: '$[1].messageContent',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface SendInvoiceOptions {\n  /**\n   * List of recipient contact IDs.\n   * @format GUID\n   * @maxSize 5\n   */\n  contactIds?: string[];\n  /**\n   * Message content that will be sent.\n   * @maxLength 2500\n   */\n  messageContent?: string | null;\n}\n\n/**\n * Publishes Invoice. Invoice number will be generated.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_PUBLISH\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.PublishInvoice\n */\nexport async function publishInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    PublishInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: PublishInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.publishInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Voids Invoice.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_VOID\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.VoidInvoice\n */\nexport async function voidInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    VoidInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: VoidInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.voidInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Archives Invoice.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_ARCHIVE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.ArchiveInvoice\n */\nexport async function archiveInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    ArchiveInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: ArchiveInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.archiveInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Unarchives Invoice.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_UNARCHIVE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.UnarchiveInvoice\n */\nexport async function unarchiveInvoice(invoiceId: string): Promise<\n  NonNullablePaths<\n    UnarchiveInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: UnarchiveInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.unarchiveInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Initiates payment for Invoice.\n * As a result enables payments for the invoice and creates payment checkout page.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_PAY\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.InitiatePayment\n */\nexport async function initiatePayment(invoiceId: string): Promise<\n  NonNullablePaths<InitiatePaymentResponse, `url` | `paymentRequestId`, 2> & {\n    __applicationErrorsType?: InitiatePaymentApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.initiatePayment(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Enables invoice payments.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_PAY\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.EnableInvoicePayments\n */\nexport async function enableInvoicePayments(invoiceId: string): Promise<\n  NonNullablePaths<EnableInvoicePaymentsResponse, `orderId`, 2> & {\n    __applicationErrorsType?: EnableInvoicePaymentsApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.enableInvoicePayments(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Generates Invoice pdf document.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_GENERATE_PDF_DOCUMENT\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.GeneratePdfDocument\n */\nexport async function generatePdfDocument(invoiceId: string): Promise<\n  NonNullablePaths<\n    GeneratePdfDocumentResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`,\n    8\n  > & {\n    __applicationErrorsType?: GeneratePdfDocumentApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.generatePdfDocument(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Marks invoice as viewed.\n * @param invoiceId - Invoice ID.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceId\n * @permissionId INVOICES.INVOICE_MARK_VIEWED\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.MarkViewed\n */\nexport async function markViewed(invoiceId: string): Promise<void> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceId: invoiceId },\n    []\n  );\n\n  const reqOpts = ambassadorWixInvoicesInvoicesV4Invoice.markViewed(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceId: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceId']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Calculates Invoice.\n * @param invoice - Invoice.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoice\n * @requiredField invoice.reference\n * @requiredField invoice.reference.referenceType\n * @permissionId INVOICES.INVOICE_CREATE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.CalculateInvoice\n */\nexport async function calculateInvoice(\n  invoice: NonNullablePaths<\n    Invoice,\n    `reference` | `reference.referenceType`,\n    3\n  >,\n  options?: CalculateInvoiceOptions\n): Promise<\n  NonNullablePaths<\n    CalculateInvoiceResponse,\n    | `invoice.status`\n    | `invoice.statusQualifiers`\n    | `invoice.availableActions`\n    | `invoice.sourceReference.appId`\n    | `invoice.reference.standaloneReference.limitActions`\n    | `invoice.reference.orderReference.orderId`\n    | `invoice.reference.referenceType`\n    | `invoice.regionalProperties.locale.languageCode`\n    | `invoice.regionalProperties.language`\n    | `invoice.numbering.displayNumber`\n    | `invoice.currency`\n    | `invoice.customerInfo.contactDetails.vatId._id`\n    | `invoice.customerInfo.contactDetails.vatId.type`\n    | `invoice.customerInfo.billingAddress.streetAddress.number`\n    | `invoice.customerInfo.billingAddress.streetAddress.name`\n    | `invoice.lineItems`\n    | `invoice.lineItems.${number}.customItem.quantity`\n    | `invoice.lineItems.${number}.customItem.price`\n    | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n    | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n    | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n    | `invoice.lineItems.${number}.customItem.discount.discountType`\n    | `invoice.lineItems.${number}.catalogItem.quantity`\n    | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n    | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n    | `invoice.lineItems.${number}.itemType`\n    | `invoice.shipmentInfo.price`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.shipmentInfo.totals.priceBeforeTax`\n    | `invoice.shipmentInfo.totals.priceAfterTax`\n    | `invoice.additionalFees`\n    | `invoice.additionalFees.${number}.name`\n    | `invoice.additionalFees.${number}.amount`\n    | `invoice.discounts`\n    | `invoice.discounts.${number}.fixedDiscount`\n    | `invoice.discounts.${number}.percentageDiscount`\n    | `invoice.discounts.${number}.discountType`\n    | `invoice.deposit.fixedDeposit`\n    | `invoice.deposit.percentageDeposit`\n    | `invoice.deposit.depositType`\n    | `invoice.taxInfo.taxBreakdown`\n    | `invoice.taxInfo.taxBreakdown.${number}.name`\n    | `invoice.taxInfo.taxBreakdown.${number}.rate`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n    | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n    | `invoice.taxInfo.taxExempt`\n    | `invoice.payments`\n    | `invoice.payments.${number}.regularPayment.paymentOrderId`\n    | `invoice.payments.${number}.regularPayment.paymentMethod`\n    | `invoice.payments.${number}.regularPayment.offlinePayment`\n    | `invoice.payments.${number}.regularPayment.paymentStatus`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n    | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n    | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n    | `invoice.payments.${number}.giftCardPayment.appId`\n    | `invoice.payments.${number}._id`\n    | `invoice.payments.${number}.amount`\n    | `invoice.payments.${number}.paymentType`\n    | `invoice.payments.${number}.receiptType`\n    | `invoice.totals.subtotal`\n    | `invoice.totals.total`\n    | `invoice.totals.paidAmount`\n    | `invoice.totals.balance`\n    | `invoice.archived`\n    | `invoice.customFields.headerCustomFields`\n    | `invoice.customFields.headerCustomFields.${number}.value`\n    | `invoice.customFields.businessCustomFields`\n    | `invoice.customFields.customerCustomFields`\n    | `invoice.customFields.footerCustomField.overridePresetContent`\n    | `invoice.presetProperties.invoicePreset.name`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n    | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n    | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n    | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n    | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n    | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n    | `invoice.presetProperties.invoicePreset.default`\n    | `invoice.attachments`\n    | `invoice.attachments.${number}.fileName`\n    | `invoice.attachments.${number}.fileUrl`\n    | `invoice.documentInfo.status`\n    | `invoice.links.relativePath`\n    | `invoice.businessLocation._id`\n    | `invoice.tags.privateTags.tagIds`\n    | `shipmentInfo`\n    | `shipmentInfo.${number}.price`\n    | `shipmentInfo.${number}.totals.priceBeforeTax`\n    | `shipmentInfo.${number}.totals.priceAfterTax`\n    | `calculationErrors.generalShippingCalculationError.applicationError.code`\n    | `calculationErrors.generalShippingCalculationError.applicationError.description`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.field`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.description`\n    | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.violatedRule`\n    | `calculationErrors.carrierErrors.errors`\n    | `calculationErrors.carrierErrors.errors.${number}.carrierId`\n    | `correlationId`,\n    8\n  > & {\n    __applicationErrorsType?: CalculateInvoiceApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoice: invoice, correlationId: options?.correlationId },\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress' },\n          { path: 'invoice.shippingInfo.shippingAddress' },\n          { path: 'invoice.businessDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.calculateInvoice(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'invoice.customerInfo.billingAddress' },\n            { path: 'invoice.shippingInfo.shippingAddress' },\n            { path: 'invoice.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'invoice.customFields.footerCustomField.content',\n        'invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoice: '$[0]',\n          correlationId: '$[1].correlationId',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoice', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface CalculateInvoiceOptions {\n  /**\n   * Previous calculation correlation ID.\n   * @format GUID\n   */\n  correlationId?: string | null;\n}\n\n/**\n * Retrieves the highest invoice number currently in use (the sequential identifier displayed between the prefix and suffix in invoice display numbers).\n * Can be filtered by prefix.\n *\n * Invoice numbering is managed in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction).\n * @internal\n * @documentationMaturity preview\n * @permissionId INVOICES.INVOICE_READ\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.GetLatestInvoiceNumber\n */\nexport async function getLatestInvoiceNumber(\n  options?: GetLatestInvoiceNumberOptions\n): Promise<GetLatestInvoiceNumberResponse> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { prefix: options?.prefix },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.getLatestInvoiceNumber(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { prefix: '$[0].prefix' },\n        singleArgumentUnchanged: false,\n      },\n      ['options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface GetLatestInvoiceNumberOptions {\n  /**\n   * Invoice prefix to filter by.\n   * @minLength 1\n   * @maxLength 10\n   */\n  prefix?: string | null;\n}\n\n/**\n * Create multiple invoices.\n * @param invoices - List of invoices to create.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoices\n * @permissionId INVOICES.INVOICE_CREATE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkCreateInvoices\n */\nexport async function bulkCreateInvoices(\n  invoices: Invoice[],\n  options?: BulkCreateInvoicesOptions\n): Promise<\n  NonNullablePaths<\n    BulkCreateInvoicesResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.status`\n    | `results.${number}.item.sourceReference.appId`\n    | `results.${number}.item.reference.referenceType`\n    | `results.${number}.item.regionalProperties.language`\n    | `results.${number}.item.numbering.displayNumber`\n    | `results.${number}.item.currency`\n    | `results.${number}.item.shipmentInfo.price`\n    | `results.${number}.item.deposit.fixedDeposit`\n    | `results.${number}.item.deposit.percentageDeposit`\n    | `results.${number}.item.deposit.depositType`\n    | `results.${number}.item.taxInfo.taxExempt`\n    | `results.${number}.item.totals.subtotal`\n    | `results.${number}.item.totals.total`\n    | `results.${number}.item.totals.paidAmount`\n    | `results.${number}.item.totals.balance`\n    | `results.${number}.item.archived`\n    | `results.${number}.item.documentInfo.status`\n    | `results.${number}.item.links.relativePath`\n    | `results.${number}.item.businessLocation._id`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkCreateInvoicesApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoices: invoices, returnEntity: options?.returnEntity },\n      [\n        'invoices.customFields.footerCustomField.content',\n        'invoices.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoices.customerInfo.billingAddress' },\n          { path: 'invoices.shippingInfo.shippingAddress' },\n          { path: 'invoices.businessDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkCreateInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'results.item.customerInfo.billingAddress' },\n            { path: 'results.item.shippingInfo.shippingAddress' },\n            { path: 'results.item.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'results.item.customFields.footerCustomField.content',\n        'results.item.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoices: '$[0]',\n          returnEntity: '$[1].returnEntity',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoices', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkCreateInvoicesOptions {\n  /** Return created invoices in the response. */\n  returnEntity?: boolean;\n}\n\n/**\n * Update multiple invoices.\n * @param invoices - Invoices to update.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoices\n * @requiredField invoices.invoice\n * @requiredField invoices.invoice._id\n * @requiredField invoices.invoice.revision\n * @permissionId INVOICES.INVOICE_UPDATE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkUpdateInvoices\n */\nexport async function bulkUpdateInvoices(\n  invoices: NonNullablePaths<\n    MaskedInvoice,\n    `invoice` | `invoice._id` | `invoice.revision`,\n    3\n  >[],\n  options?: BulkUpdateInvoicesOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateInvoicesResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `results.${number}.item.status`\n    | `results.${number}.item.sourceReference.appId`\n    | `results.${number}.item.reference.referenceType`\n    | `results.${number}.item.regionalProperties.language`\n    | `results.${number}.item.numbering.displayNumber`\n    | `results.${number}.item.currency`\n    | `results.${number}.item.shipmentInfo.price`\n    | `results.${number}.item.deposit.fixedDeposit`\n    | `results.${number}.item.deposit.percentageDeposit`\n    | `results.${number}.item.deposit.depositType`\n    | `results.${number}.item.taxInfo.taxExempt`\n    | `results.${number}.item.totals.subtotal`\n    | `results.${number}.item.totals.total`\n    | `results.${number}.item.totals.paidAmount`\n    | `results.${number}.item.totals.balance`\n    | `results.${number}.item.archived`\n    | `results.${number}.item.documentInfo.status`\n    | `results.${number}.item.links.relativePath`\n    | `results.${number}.item.businessLocation._id`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkUpdateInvoicesApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = transformPaths(\n    renameKeysFromSDKRequestToRESTRequest(\n      { invoices: invoices, returnEntity: options?.returnEntity },\n      [\n        'invoices.invoice.customFields.footerCustomField.content',\n        'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    ),\n    [\n      {\n        transformFn: transformSDKAddressToRESTAddress,\n        paths: [\n          { path: 'invoices.invoice.customerInfo.billingAddress' },\n          { path: 'invoices.invoice.shippingInfo.shippingAddress' },\n          { path: 'invoices.invoice.businessDetails.address' },\n        ],\n      },\n    ]\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkUpdateInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(result.data, [\n        {\n          transformFn: transformRESTAddressToSDKAddress,\n          paths: [\n            { path: 'results.item.customerInfo.billingAddress' },\n            { path: 'results.item.shippingInfo.shippingAddress' },\n            { path: 'results.item.businessDetails.address' },\n          ],\n        },\n      ]),\n      [\n        'results.item.customFields.footerCustomField.content',\n        'results.item.presetProperties.invoicePreset.customFields.footerCustomField',\n      ]\n    )!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoices: '$[0]',\n          returnEntity: '$[1].returnEntity',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoices', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateInvoicesOptions {\n  /** Return updated invoices in the response. */\n  returnEntity?: boolean;\n}\n\n/**\n * Delete multiple invoices.\n * @param invoiceIds - Invoice IDs to delete.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceIds\n * @permissionId INVOICES.INVOICE_DELETE\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkDeleteInvoices\n */\nexport async function bulkDeleteInvoices(\n  invoiceIds: string[]\n): Promise<\n  NonNullablePaths<\n    BulkDeleteInvoicesResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    { invoiceIds: invoiceIds },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkDeleteInvoices(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { invoiceIds: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceIds']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Updates tags for multiple invoices.\n * A tag that appears both in the list of assign and unassign tags, will be assigned.\n * @param invoiceIds - IDs of invoices which tags will be updated.\n * @internal\n * @documentationMaturity preview\n * @requiredField invoiceIds\n * @permissionId INVOICES.INVOICE_UPDATE_TAGS\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTags\n */\nexport async function bulkUpdateInvoiceTags(\n  invoiceIds: string[],\n  options?: BulkUpdateInvoiceTagsOptions\n): Promise<\n  NonNullablePaths<\n    BulkUpdateInvoiceTagsResponse,\n    | `results`\n    | `results.${number}.itemMetadata.originalIndex`\n    | `results.${number}.itemMetadata.success`\n    | `results.${number}.itemMetadata.error.code`\n    | `results.${number}.itemMetadata.error.description`\n    | `bulkActionMetadata.totalSuccesses`\n    | `bulkActionMetadata.totalFailures`\n    | `bulkActionMetadata.undetailedFailures`,\n    6\n  > & {\n    __applicationErrorsType?: BulkUpdateInvoiceTagsApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    {\n      invoiceIds: invoiceIds,\n      assignTags: options?.assignTags,\n      unassignTags: options?.unassignTags,\n    },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkUpdateInvoiceTags(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          invoiceIds: '$[0]',\n          assignTags: '$[1].assignTags',\n          unassignTags: '$[1].unassignTags',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['invoiceIds', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateInvoiceTagsOptions {\n  /** List of tags to assign. */\n  assignTags?: Tags;\n  /** List of tags to unassign. */\n  unassignTags?: Tags;\n}\n\n/**\n * Updates tags on multiple invoices items by filter. Works asynchronously, and returns a job ID.\n *\n * An empty filter will update all invoices.\n *\n * A tag that is specified both in the list of assign and unassign tags, will be assigned.\n *\n * Specify the returned jobId in Get Async Job ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/get-async-job) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/get-async-job)) to track the job's status.\n * @param filter - Filter to select relevant invoices.\n * @internal\n * @documentationMaturity preview\n * @requiredField filter\n * @permissionId INVOICES.INVOICE_UPDATE_TAGS\n * @applicableIdentity APP\n * @fqn wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTagsByFilter\n */\nexport async function bulkUpdateInvoiceTagsByFilter(\n  filter: Record<string, any>,\n  options?: BulkUpdateInvoiceTagsByFilterOptions\n): Promise<\n  NonNullablePaths<BulkUpdateInvoiceTagsByFilterResponse, `jobId`, 2> & {\n    __applicationErrorsType?: BulkUpdateInvoiceTagsByFilterApplicationErrors;\n  }\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest(\n    {\n      filter: filter,\n      assignTags: options?.assignTags,\n      unassignTags: options?.unassignTags,\n    },\n    []\n  );\n\n  const reqOpts =\n    ambassadorWixInvoicesInvoicesV4Invoice.bulkUpdateInvoiceTagsByFilter(\n      payload\n    );\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data, [])!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          filter: '$[0]',\n          assignTags: '$[1].assignTags',\n          unassignTags: '$[1].unassignTags',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['filter', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface BulkUpdateInvoiceTagsByFilterOptions {\n  /** List of tags to assign. */\n  assignTags?: Tags;\n  /** List of tags to unassign. */\n  unassignTags?: Tags;\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformSDKFieldMaskToRESTFieldMask } from '@wix/sdk-runtime/transformations/field-mask';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixInvoicesInvoicesV4InvoicesUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/invoices-server',\n        destPath: '',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/invoices/v4/invoices',\n        destPath: '/v4/invoices',\n      },\n      {\n        srcPath: '/invoices/v4/bulk/invoices',\n        destPath: '/v4/bulk/invoices',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_get-paid_invoices';\n\n/** Creates a Invoice. */\nexport function createInvoice(payload: object): RequestOptionsFactory<any> {\n  function __createInvoice({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoice.createdDate' },\n          { path: 'invoice.updatedDate' },\n          { path: 'invoice.issueDate' },\n          { path: 'invoice.dueDate' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoice.payments.createdDate' },\n          { path: 'invoice.payments.updatedDate' },\n          { path: 'invoice.payments.paymentDate' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.documentInfo.documentExpirationDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoice.businessDetails.address.geocode.latitude' },\n          { path: 'invoice.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.CreateInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __createInvoice;\n}\n\n/** Retrieves a Invoice. */\nexport function getInvoice(payload: object): RequestOptionsFactory<any> {\n  function __getInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GetInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __getInvoice;\n}\n\n/**\n * Updates a Invoice.\n *\n *\n * Each time the Invoice is updated,\n * `revision` increments by 1.\n * The current `revision` must be passed when updating the Invoice.\n * This ensures you're working with the latest Invoice\n * and prevents unintended overwrites.\n */\nexport function updateInvoice(payload: object): RequestOptionsFactory<any> {\n  function __updateInvoice({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'fieldMask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoice.createdDate' },\n          { path: 'invoice.updatedDate' },\n          { path: 'invoice.issueDate' },\n          { path: 'invoice.dueDate' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoice.payments.createdDate' },\n          { path: 'invoice.payments.updatedDate' },\n          { path: 'invoice.payments.paymentDate' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.documentInfo.documentExpirationDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoice.businessDetails.address.geocode.latitude' },\n          { path: 'invoice.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'PATCH' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.UpdateInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoice.id}',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __updateInvoice;\n}\n\n/**\n * Deletes a Invoice.\n *\n * Deleting a Invoice permanently removes them from the Invoice List.\n */\nexport function deleteInvoice(payload: object): RequestOptionsFactory<any> {\n  function __deleteInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'DELETE' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.DeleteInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __deleteInvoice;\n}\n\n/**\n * Retrieves a list of Invoices, given the provided [paging, filtering, and sorting][1].\n *\n * Up to 1,000 Invoices can be returned per request.\n *\n * To learn how to query Invoices, see [API Query Language][2].\n *\n * [1]: https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging\n * [2]: https://dev.wix.com/docs/rest/articles/getting-started/api-query-language\n */\nexport function queryInvoices(payload: object): RequestOptionsFactory<any> {\n  function __queryInvoices({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.QueryInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/query',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload, true),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoices.createdDate' },\n              { path: 'invoices.updatedDate' },\n              { path: 'invoices.issueDate' },\n              { path: 'invoices.dueDate' },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoices.payments.createdDate' },\n              { path: 'invoices.payments.updatedDate' },\n              { path: 'invoices.payments.paymentDate' },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoices.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoices.customerInfo.billingAddress.geocode.latitude' },\n              {\n                path: 'invoices.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoices.businessDetails.address.geocode.latitude' },\n              { path: 'invoices.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n      fallback: [\n        {\n          method: 'POST' as any,\n          url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n            protoPath: '/v4/invoices/query',\n            data: payload,\n            host,\n          }),\n          data: payload,\n        },\n      ],\n    };\n\n    return metadata;\n  }\n\n  return __queryInvoices;\n}\n\n/** Retrieves a list of up to 100 invoices, given the specified filtering, search expression, sorting, and cursor paging ([SDK](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/api-query-language) | [REST](https://dev.wix.com/api/rest/getting-started/api-query-language)). */\nexport function searchInvoices(payload: object): RequestOptionsFactory<any> {\n  function __searchInvoices({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'search.aggregations.range.buckets.from' },\n          { path: 'search.aggregations.range.buckets.to' },\n          {\n            path: 'search.aggregations.nested.nestedAggregations.range.buckets.from',\n          },\n          {\n            path: 'search.aggregations.nested.nestedAggregations.range.buckets.to',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.SearchInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v1/invoices/search',\n        data: serializedData,\n        host,\n      }),\n      params: toURLSearchParams(serializedData, true),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoices.createdDate' },\n              { path: 'invoices.updatedDate' },\n              { path: 'invoices.issueDate' },\n              { path: 'invoices.dueDate' },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoices.payments.createdDate' },\n              { path: 'invoices.payments.updatedDate' },\n              { path: 'invoices.payments.paymentDate' },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoices.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoices.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoices.customerInfo.billingAddress.geocode.latitude' },\n              {\n                path: 'invoices.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'invoices.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoices.businessDetails.address.geocode.latitude' },\n              { path: 'invoices.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n              { path: 'aggregationData.results.ranges.results.from' },\n              { path: 'aggregationData.results.ranges.results.to' },\n              {\n                path: 'aggregationData.results.groupedByValue.results.nestedResults.ranges.results.from',\n              },\n              {\n                path: 'aggregationData.results.groupedByValue.results.nestedResults.ranges.results.to',\n              },\n              {\n                path: 'aggregationData.results.nested.results.results.*.range.from',\n              },\n              {\n                path: 'aggregationData.results.nested.results.results.*.range.to',\n              },\n              { path: 'aggregationData.results.scalar.value' },\n              {\n                path: 'aggregationData.results.groupedByValue.results.nestedResults.scalar.value',\n              },\n              {\n                path: 'aggregationData.results.nested.results.results.*.scalar.value',\n              },\n            ],\n          },\n        ]),\n      fallback: [\n        {\n          method: 'POST' as any,\n          url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n            protoPath: '/v1/invoices/search',\n            data: serializedData,\n            host,\n          }),\n          data: serializedData,\n        },\n      ],\n    };\n\n    return metadata;\n  }\n\n  return __searchInvoices;\n}\n\n/** Sends Invoice to a contact. */\nexport function sendInvoice(payload: object): RequestOptionsFactory<any> {\n  function __sendInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.SendInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/send',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __sendInvoice;\n}\n\n/** Publishes Invoice. Invoice number will be generated. */\nexport function publishInvoice(payload: object): RequestOptionsFactory<any> {\n  function __publishInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.PublishInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/publish',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __publishInvoice;\n}\n\n/** Voids Invoice. */\nexport function voidInvoice(payload: object): RequestOptionsFactory<any> {\n  function __voidInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.VoidInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/void',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __voidInvoice;\n}\n\n/** Archives Invoice. */\nexport function archiveInvoice(payload: object): RequestOptionsFactory<any> {\n  function __archiveInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.ArchiveInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/archive',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __archiveInvoice;\n}\n\n/** Unarchives Invoice. */\nexport function unarchiveInvoice(payload: object): RequestOptionsFactory<any> {\n  function __unarchiveInvoice({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.UnarchiveInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/unarchive',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __unarchiveInvoice;\n}\n\n/**\n * Initiates payment for Invoice.\n * As a result enables payments for the invoice and creates payment checkout page.\n */\nexport function initiatePayment(payload: object): RequestOptionsFactory<any> {\n  function __initiatePayment({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.InitiatePayment',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/initiate-payment',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __initiatePayment;\n}\n\n/** Enables invoice payments. */\nexport function enableInvoicePayments(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __enableInvoicePayments({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.EnableInvoicePayments',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/enable-payments',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __enableInvoicePayments;\n}\n\n/** Generates Invoice pdf document. */\nexport function generatePdfDocument(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __generatePdfDocument({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GeneratePdfDocument',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/generate-pdf-document',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __generatePdfDocument;\n}\n\n/** Marks invoice as viewed. */\nexport function markViewed(payload: object): RequestOptionsFactory<any> {\n  function __markViewed({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.MarkViewed',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/{invoiceId}/mark-viewed',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __markViewed;\n}\n\n/** Calculates Invoice. */\nexport function calculateInvoice(payload: object): RequestOptionsFactory<any> {\n  function __calculateInvoice({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoice.createdDate' },\n          { path: 'invoice.updatedDate' },\n          { path: 'invoice.issueDate' },\n          { path: 'invoice.dueDate' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoice.payments.createdDate' },\n          { path: 'invoice.payments.updatedDate' },\n          { path: 'invoice.payments.paymentDate' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoice.documentInfo.documentExpirationDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoice.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoice.businessDetails.address.geocode.latitude' },\n          { path: 'invoice.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.CalculateInvoice',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/calculate-invoice',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'invoice.createdDate' },\n              { path: 'invoice.updatedDate' },\n              { path: 'invoice.issueDate' },\n              { path: 'invoice.dueDate' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'invoice.shipmentInfo.logistics.deliveryTimeSlot.to' },\n              { path: 'invoice.payments.createdDate' },\n              { path: 'invoice.payments.updatedDate' },\n              { path: 'invoice.payments.paymentDate' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.presetProperties.invoicePreset.createdDate' },\n              { path: 'invoice.presetProperties.invoicePreset.updatedDate' },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'invoice.documentInfo.documentExpirationDate' },\n              { path: 'shipmentInfo.logistics.deliveryTimeSlot.from' },\n              { path: 'shipmentInfo.logistics.deliveryTimeSlot.to' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              { path: 'invoice.customerInfo.billingAddress.geocode.latitude' },\n              { path: 'invoice.customerInfo.billingAddress.geocode.longitude' },\n              { path: 'invoice.shippingInfo.shippingAddress.geocode.latitude' },\n              {\n                path: 'invoice.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'invoice.businessDetails.address.geocode.latitude' },\n              { path: 'invoice.businessDetails.address.geocode.longitude' },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __calculateInvoice;\n}\n\n/**\n * Retrieves the highest invoice number currently in use (the sequential identifier displayed between the prefix and suffix in invoice display numbers).\n * Can be filtered by prefix.\n *\n * Invoice numbering is managed in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction).\n */\nexport function getLatestInvoiceNumber(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __getLatestInvoiceNumber({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'GET' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.GetLatestInvoiceNumber',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/invoices/get-latest-number',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __getLatestInvoiceNumber;\n}\n\n/** Create multiple invoices. */\nexport function bulkCreateInvoices(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkCreateInvoices({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoices.createdDate' },\n          { path: 'invoices.updatedDate' },\n          { path: 'invoices.issueDate' },\n          { path: 'invoices.dueDate' },\n          { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.from' },\n          { path: 'invoices.shipmentInfo.logistics.deliveryTimeSlot.to' },\n          { path: 'invoices.payments.createdDate' },\n          { path: 'invoices.payments.updatedDate' },\n          { path: 'invoices.payments.paymentDate' },\n          {\n            path: 'invoices.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          { path: 'invoices.presetProperties.invoicePreset.createdDate' },\n          { path: 'invoices.presetProperties.invoicePreset.updatedDate' },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoices.documentInfo.documentExpirationDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          { path: 'invoices.customerInfo.billingAddress.geocode.latitude' },\n          { path: 'invoices.customerInfo.billingAddress.geocode.longitude' },\n          { path: 'invoices.shippingInfo.shippingAddress.geocode.latitude' },\n          { path: 'invoices.shippingInfo.shippingAddress.geocode.longitude' },\n          { path: 'invoices.businessDetails.address.geocode.latitude' },\n          { path: 'invoices.businessDetails.address.geocode.longitude' },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkCreateInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/create',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.item.createdDate' },\n              { path: 'results.item.updatedDate' },\n              { path: 'results.item.issueDate' },\n              { path: 'results.item.dueDate' },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.from',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.to',\n              },\n              { path: 'results.item.payments.createdDate' },\n              { path: 'results.item.payments.updatedDate' },\n              { path: 'results.item.payments.paymentDate' },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.createdDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.updatedDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'results.item.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'results.item.businessDetails.address.geocode.latitude' },\n              {\n                path: 'results.item.businessDetails.address.geocode.longitude',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkCreateInvoices;\n}\n\n/** Update multiple invoices. */\nexport function bulkUpdateInvoices(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateInvoices({ host }: any) {\n    const serializedData = transformPaths(payload, [\n      {\n        transformFn: transformSDKFieldMaskToRESTFieldMask,\n        paths: [{ path: 'invoices.fieldMask' }],\n      },\n      {\n        transformFn: transformSDKTimestampToRESTTimestamp,\n        paths: [\n          { path: 'invoices.invoice.createdDate' },\n          { path: 'invoices.invoice.updatedDate' },\n          { path: 'invoices.invoice.issueDate' },\n          { path: 'invoices.invoice.dueDate' },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.deliveryTimeSlot.from',\n          },\n          {\n            path: 'invoices.invoice.shipmentInfo.logistics.deliveryTimeSlot.to',\n          },\n          { path: 'invoices.invoice.payments.createdDate' },\n          { path: 'invoices.invoice.payments.updatedDate' },\n          { path: 'invoices.invoice.payments.paymentDate' },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.metadata.updatedTimestamp',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.createdDate',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.updatedDate',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n          },\n          { path: 'invoices.invoice.documentInfo.documentExpirationDate' },\n        ],\n      },\n      {\n        transformFn: transformSDKFloatToRESTFloat,\n        paths: [\n          {\n            path: 'invoices.invoice.customerInfo.billingAddress.geocode.latitude',\n          },\n          {\n            path: 'invoices.invoice.customerInfo.billingAddress.geocode.longitude',\n          },\n          {\n            path: 'invoices.invoice.shippingInfo.shippingAddress.geocode.latitude',\n          },\n          {\n            path: 'invoices.invoice.shippingInfo.shippingAddress.geocode.longitude',\n          },\n          { path: 'invoices.invoice.businessDetails.address.geocode.latitude' },\n          {\n            path: 'invoices.invoice.businessDetails.address.geocode.longitude',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n          },\n          {\n            path: 'invoices.invoice.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n          },\n        ],\n      },\n    ]);\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkUpdateInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/update',\n        data: serializedData,\n        host,\n      }),\n      data: serializedData,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [\n              { path: 'results.item.createdDate' },\n              { path: 'results.item.updatedDate' },\n              { path: 'results.item.issueDate' },\n              { path: 'results.item.dueDate' },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.from',\n              },\n              {\n                path: 'results.item.shipmentInfo.logistics.deliveryTimeSlot.to',\n              },\n              { path: 'results.item.payments.createdDate' },\n              { path: 'results.item.payments.updatedDate' },\n              { path: 'results.item.payments.paymentDate' },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.metadata.updatedTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.createdDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.updatedDate',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.createdTimestamp',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.metadata.updatedTimestamp',\n              },\n              { path: 'results.item.documentInfo.documentExpirationDate' },\n            ],\n          },\n          {\n            transformFn: transformRESTFloatToSDKFloat,\n            paths: [\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.customerInfo.billingAddress.geocode.longitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.latitude',\n              },\n              {\n                path: 'results.item.shippingInfo.shippingAddress.geocode.longitude',\n              },\n              { path: 'results.item.businessDetails.address.geocode.latitude' },\n              {\n                path: 'results.item.businessDetails.address.geocode.longitude',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.customFields.footerCustomField.content.nodes.shapeData.shape.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.image.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.items.video.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.galleryData.options.item.ratio',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.imageData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lat',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.mapData.mapSettings.lng',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.poll.options.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.pollData.design.poll.background.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.appEmbedData.image.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.video.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.videoData.thumbnail.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.audio.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.audioData.coverImage.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backgroundImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.layoutData.backdropImage.media.duration',\n              },\n              {\n                path: 'results.item.presetProperties.invoicePreset.customFields.footerCustomField.nodes.shapeData.shape.duration',\n              },\n            ],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateInvoices;\n}\n\n/** Delete multiple invoices. */\nexport function bulkDeleteInvoices(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkDeleteInvoices({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkDeleteInvoices',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/delete',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkDeleteInvoices;\n}\n\n/**\n * Updates tags for multiple invoices.\n * A tag that appears both in the list of assign and unassign tags, will be assigned.\n */\nexport function bulkUpdateInvoiceTags(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateInvoiceTags({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn: 'wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTags',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/update-tags',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateInvoiceTags;\n}\n\n/**\n * Updates tags on multiple invoices items by filter. Works asynchronously, and returns a job ID.\n *\n * An empty filter will update all invoices.\n *\n * A tag that is specified both in the list of assign and unassign tags, will be assigned.\n *\n * Specify the returned jobId in Get Async Job ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/get-async-job) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/get-async-job)) to track the job's status.\n */\nexport function bulkUpdateInvoiceTagsByFilter(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __bulkUpdateInvoiceTagsByFilter({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.invoices.invoices.v4.invoice',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.invoices.invoices.v4.Invoices.BulkUpdateInvoiceTagsByFilter',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixInvoicesInvoicesV4InvoicesUrl({\n        protoPath: '/v4/bulk/invoices/update-tags-by-filter',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __bulkUpdateInvoiceTagsByFilter;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n  ArchiveInvoiceApplicationErrors,\n  ArchiveInvoiceResponse,\n  BulkCreateInvoicesApplicationErrors,\n  BulkCreateInvoicesOptions,\n  BulkCreateInvoicesResponse,\n  BulkDeleteInvoicesResponse,\n  BulkUpdateInvoiceTagsApplicationErrors,\n  BulkUpdateInvoiceTagsByFilterApplicationErrors,\n  BulkUpdateInvoiceTagsByFilterOptions,\n  BulkUpdateInvoiceTagsByFilterResponse,\n  BulkUpdateInvoiceTagsOptions,\n  BulkUpdateInvoiceTagsResponse,\n  BulkUpdateInvoicesApplicationErrors,\n  BulkUpdateInvoicesOptions,\n  BulkUpdateInvoicesResponse,\n  CalculateInvoiceApplicationErrors,\n  CalculateInvoiceOptions,\n  CalculateInvoiceResponse,\n  CreateInvoiceApplicationErrors,\n  CreateInvoiceValidationErrors,\n  DeleteInvoiceApplicationErrors,\n  EnableInvoicePaymentsApplicationErrors,\n  EnableInvoicePaymentsResponse,\n  GeneratePdfDocumentApplicationErrors,\n  GeneratePdfDocumentResponse,\n  GetInvoiceApplicationErrors,\n  GetLatestInvoiceNumberOptions,\n  GetLatestInvoiceNumberResponse,\n  InitiatePaymentApplicationErrors,\n  InitiatePaymentResponse,\n  Invoice,\n  InvoiceQuery,\n  InvoiceSearch,\n  InvoicesQueryBuilder,\n  MaskedInvoice,\n  PublishInvoiceApplicationErrors,\n  PublishInvoiceResponse,\n  QueryInvoicesApplicationErrors,\n  QueryInvoicesResponse,\n  SearchInvoicesResponse,\n  SendInvoiceApplicationErrors,\n  SendInvoiceOptions,\n  SendInvoiceResponse,\n  UnarchiveInvoiceApplicationErrors,\n  UnarchiveInvoiceResponse,\n  UpdateInvoice,\n  UpdateInvoiceApplicationErrors,\n  UpdateInvoiceValidationErrors,\n  VoidInvoiceApplicationErrors,\n  VoidInvoiceResponse,\n  archiveInvoice as universalArchiveInvoice,\n  bulkCreateInvoices as universalBulkCreateInvoices,\n  bulkDeleteInvoices as universalBulkDeleteInvoices,\n  bulkUpdateInvoiceTags as universalBulkUpdateInvoiceTags,\n  bulkUpdateInvoiceTagsByFilter as universalBulkUpdateInvoiceTagsByFilter,\n  bulkUpdateInvoices as universalBulkUpdateInvoices,\n  calculateInvoice as universalCalculateInvoice,\n  createInvoice as universalCreateInvoice,\n  deleteInvoice as universalDeleteInvoice,\n  enableInvoicePayments as universalEnableInvoicePayments,\n  generatePdfDocument as universalGeneratePdfDocument,\n  getInvoice as universalGetInvoice,\n  getLatestInvoiceNumber as universalGetLatestInvoiceNumber,\n  initiatePayment as universalInitiatePayment,\n  markViewed as universalMarkViewed,\n  publishInvoice as universalPublishInvoice,\n  queryInvoices as universalQueryInvoices,\n  searchInvoices as universalSearchInvoices,\n  sendInvoice as universalSendInvoice,\n  typedQueryInvoices as universalTypedQueryInvoices,\n  unarchiveInvoice as universalUnarchiveInvoice,\n  updateInvoice as universalUpdateInvoice,\n  voidInvoice as universalVoidInvoice,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/get-paid' };\n\n/** @internal */\nexport function createInvoice(httpClient: HttpClient): CreateInvoiceSignature {\n  return (\n    invoice: NonNullablePaths<\n      Invoice,\n      | `currency`\n      | `customerInfo`\n      | `customerInfo.contactId`\n      | `dueDate`\n      | `issueDate`\n      | `lineItems`\n      | `lineItems.${number}.catalogItem.catalogReference`\n      | `lineItems.${number}.catalogItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.name`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.itemType`\n      | `reference`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `shipmentInfo.price`\n      | `shippingInfo.contactDetails`\n      | `shippingInfo.contactDetails.email`\n      | `shippingInfo.shippingAddress`,\n      6\n    >\n  ) =>\n    universalCreateInvoice(\n      invoice,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CreateInvoiceSignature {\n  /**\n   * Creates a Invoice.\n   * @param - Invoice to create.\n   * @returns Created invoice.\n   */\n  (\n    invoice: NonNullablePaths<\n      Invoice,\n      | `currency`\n      | `customerInfo`\n      | `customerInfo.contactId`\n      | `dueDate`\n      | `issueDate`\n      | `lineItems`\n      | `lineItems.${number}.catalogItem.catalogReference`\n      | `lineItems.${number}.catalogItem.catalogReference.appId`\n      | `lineItems.${number}.catalogItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.name`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.itemType`\n      | `reference`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `shipmentInfo.price`\n      | `shippingInfo.contactDetails`\n      | `shippingInfo.contactDetails.email`\n      | `shippingInfo.shippingAddress`,\n      6\n    >\n  ): Promise<\n    NonNullablePaths<\n      Invoice,\n      | `status`\n      | `statusQualifiers`\n      | `availableActions`\n      | `sourceReference.appId`\n      | `reference.standaloneReference.limitActions`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `regionalProperties.locale.languageCode`\n      | `regionalProperties.language`\n      | `numbering.displayNumber`\n      | `currency`\n      | `customerInfo.contactDetails.vatId._id`\n      | `customerInfo.contactDetails.vatId.type`\n      | `customerInfo.billingAddress.streetAddress.number`\n      | `customerInfo.billingAddress.streetAddress.name`\n      | `lineItems`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.catalogReference.appId`\n      | `lineItems.${number}.customItem.discount.fixedDiscount`\n      | `lineItems.${number}.customItem.discount.percentageDiscount`\n      | `lineItems.${number}.customItem.discount.discountType`\n      | `lineItems.${number}.catalogItem.quantity`\n      | `lineItems.${number}.catalogItem.itemType.preset`\n      | `lineItems.${number}.catalogItem.itemType.custom`\n      | `lineItems.${number}.itemType`\n      | `shipmentInfo.price`\n      | `shipmentInfo.taxInfo.taxBreakdown`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `shipmentInfo.totals.priceBeforeTax`\n      | `shipmentInfo.totals.priceAfterTax`\n      | `additionalFees`\n      | `additionalFees.${number}.name`\n      | `additionalFees.${number}.amount`\n      | `discounts`\n      | `discounts.${number}.fixedDiscount`\n      | `discounts.${number}.percentageDiscount`\n      | `discounts.${number}.discountType`\n      | `deposit.fixedDeposit`\n      | `deposit.percentageDeposit`\n      | `deposit.depositType`\n      | `taxInfo.taxBreakdown`\n      | `taxInfo.taxBreakdown.${number}.name`\n      | `taxInfo.taxBreakdown.${number}.rate`\n      | `taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `taxInfo.taxBreakdown.${number}.taxAmount`\n      | `taxInfo.taxExempt`\n      | `payments`\n      | `payments.${number}.regularPayment.paymentOrderId`\n      | `payments.${number}.regularPayment.paymentMethod`\n      | `payments.${number}.regularPayment.offlinePayment`\n      | `payments.${number}.regularPayment.paymentStatus`\n      | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `payments.${number}.regularPayment.creditCardDetails.brand`\n      | `payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `payments.${number}.giftCardPayment.appId`\n      | `payments.${number}._id`\n      | `payments.${number}.amount`\n      | `payments.${number}.paymentType`\n      | `payments.${number}.receiptType`\n      | `totals.subtotal`\n      | `totals.total`\n      | `totals.paidAmount`\n      | `totals.balance`\n      | `archived`\n      | `customFields.headerCustomFields`\n      | `customFields.headerCustomFields.${number}.value`\n      | `customFields.businessCustomFields`\n      | `customFields.customerCustomFields`\n      | `customFields.footerCustomField.overridePresetContent`\n      | `presetProperties.invoicePreset.name`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `presetProperties.invoicePreset.default`\n      | `attachments`\n      | `attachments.${number}.fileName`\n      | `attachments.${number}.fileUrl`\n      | `documentInfo.status`\n      | `links.relativePath`\n      | `businessLocation._id`\n      | `tags.privateTags.tagIds`,\n      7\n    > & {\n      __applicationErrorsType?: CreateInvoiceApplicationErrors;\n      __validationErrorsType?: CreateInvoiceValidationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function getInvoice(httpClient: HttpClient): GetInvoiceSignature {\n  return (invoiceId: string) =>\n    universalGetInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetInvoiceSignature {\n  /**\n   * Retrieves a Invoice.\n   * @param - Invoice ID.\n   * @returns Requested invoice.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      Invoice,\n      | `status`\n      | `statusQualifiers`\n      | `availableActions`\n      | `sourceReference.appId`\n      | `reference.standaloneReference.limitActions`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `regionalProperties.locale.languageCode`\n      | `regionalProperties.language`\n      | `numbering.displayNumber`\n      | `currency`\n      | `customerInfo.contactDetails.vatId._id`\n      | `customerInfo.contactDetails.vatId.type`\n      | `customerInfo.billingAddress.streetAddress.number`\n      | `customerInfo.billingAddress.streetAddress.name`\n      | `lineItems`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.catalogReference.appId`\n      | `lineItems.${number}.customItem.discount.fixedDiscount`\n      | `lineItems.${number}.customItem.discount.percentageDiscount`\n      | `lineItems.${number}.customItem.discount.discountType`\n      | `lineItems.${number}.catalogItem.quantity`\n      | `lineItems.${number}.catalogItem.itemType.preset`\n      | `lineItems.${number}.catalogItem.itemType.custom`\n      | `lineItems.${number}.itemType`\n      | `shipmentInfo.price`\n      | `shipmentInfo.taxInfo.taxBreakdown`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `shipmentInfo.totals.priceBeforeTax`\n      | `shipmentInfo.totals.priceAfterTax`\n      | `additionalFees`\n      | `additionalFees.${number}.name`\n      | `additionalFees.${number}.amount`\n      | `discounts`\n      | `discounts.${number}.fixedDiscount`\n      | `discounts.${number}.percentageDiscount`\n      | `discounts.${number}.discountType`\n      | `deposit.fixedDeposit`\n      | `deposit.percentageDeposit`\n      | `deposit.depositType`\n      | `taxInfo.taxBreakdown`\n      | `taxInfo.taxBreakdown.${number}.name`\n      | `taxInfo.taxBreakdown.${number}.rate`\n      | `taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `taxInfo.taxBreakdown.${number}.taxAmount`\n      | `taxInfo.taxExempt`\n      | `payments`\n      | `payments.${number}.regularPayment.paymentOrderId`\n      | `payments.${number}.regularPayment.paymentMethod`\n      | `payments.${number}.regularPayment.offlinePayment`\n      | `payments.${number}.regularPayment.paymentStatus`\n      | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `payments.${number}.regularPayment.creditCardDetails.brand`\n      | `payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `payments.${number}.giftCardPayment.appId`\n      | `payments.${number}._id`\n      | `payments.${number}.amount`\n      | `payments.${number}.paymentType`\n      | `payments.${number}.receiptType`\n      | `totals.subtotal`\n      | `totals.total`\n      | `totals.paidAmount`\n      | `totals.balance`\n      | `archived`\n      | `customFields.headerCustomFields`\n      | `customFields.headerCustomFields.${number}.value`\n      | `customFields.businessCustomFields`\n      | `customFields.customerCustomFields`\n      | `customFields.footerCustomField.overridePresetContent`\n      | `presetProperties.invoicePreset.name`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `presetProperties.invoicePreset.default`\n      | `attachments`\n      | `attachments.${number}.fileName`\n      | `attachments.${number}.fileUrl`\n      | `documentInfo.status`\n      | `links.relativePath`\n      | `businessLocation._id`\n      | `tags.privateTags.tagIds`,\n      7\n    > & {\n      __applicationErrorsType?: GetInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function updateInvoice(httpClient: HttpClient): UpdateInvoiceSignature {\n  return (\n    _id: string,\n    invoice: NonNullablePaths<\n      UpdateInvoice,\n      `lineItems.${number}.customItem.name` | `revision`,\n      5\n    >\n  ) =>\n    universalUpdateInvoice(\n      _id,\n      invoice,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UpdateInvoiceSignature {\n  /**\n   * Updates a Invoice.\n   *\n   *\n   * Each time the Invoice is updated,\n   * `revision` increments by 1.\n   * The current `revision` must be passed when updating the Invoice.\n   * This ensures you're working with the latest Invoice\n   * and prevents unintended overwrites.\n   * @param - Invoice ID.\n   * @returns Updated invoice.\n   */\n  (\n    _id: string,\n    invoice: NonNullablePaths<\n      UpdateInvoice,\n      `lineItems.${number}.customItem.name` | `revision`,\n      5\n    >\n  ): Promise<\n    NonNullablePaths<\n      Invoice,\n      | `status`\n      | `statusQualifiers`\n      | `availableActions`\n      | `sourceReference.appId`\n      | `reference.standaloneReference.limitActions`\n      | `reference.orderReference.orderId`\n      | `reference.referenceType`\n      | `regionalProperties.locale.languageCode`\n      | `regionalProperties.language`\n      | `numbering.displayNumber`\n      | `currency`\n      | `customerInfo.contactDetails.vatId._id`\n      | `customerInfo.contactDetails.vatId.type`\n      | `customerInfo.billingAddress.streetAddress.number`\n      | `customerInfo.billingAddress.streetAddress.name`\n      | `lineItems`\n      | `lineItems.${number}.customItem.quantity`\n      | `lineItems.${number}.customItem.price`\n      | `lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `lineItems.${number}.customItem.catalogReference.appId`\n      | `lineItems.${number}.customItem.discount.fixedDiscount`\n      | `lineItems.${number}.customItem.discount.percentageDiscount`\n      | `lineItems.${number}.customItem.discount.discountType`\n      | `lineItems.${number}.catalogItem.quantity`\n      | `lineItems.${number}.catalogItem.itemType.preset`\n      | `lineItems.${number}.catalogItem.itemType.custom`\n      | `lineItems.${number}.itemType`\n      | `shipmentInfo.price`\n      | `shipmentInfo.taxInfo.taxBreakdown`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `shipmentInfo.totals.priceBeforeTax`\n      | `shipmentInfo.totals.priceAfterTax`\n      | `additionalFees`\n      | `additionalFees.${number}.name`\n      | `additionalFees.${number}.amount`\n      | `discounts`\n      | `discounts.${number}.fixedDiscount`\n      | `discounts.${number}.percentageDiscount`\n      | `discounts.${number}.discountType`\n      | `deposit.fixedDeposit`\n      | `deposit.percentageDeposit`\n      | `deposit.depositType`\n      | `taxInfo.taxBreakdown`\n      | `taxInfo.taxBreakdown.${number}.name`\n      | `taxInfo.taxBreakdown.${number}.rate`\n      | `taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `taxInfo.taxBreakdown.${number}.taxAmount`\n      | `taxInfo.taxExempt`\n      | `payments`\n      | `payments.${number}.regularPayment.paymentOrderId`\n      | `payments.${number}.regularPayment.paymentMethod`\n      | `payments.${number}.regularPayment.offlinePayment`\n      | `payments.${number}.regularPayment.paymentStatus`\n      | `payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `payments.${number}.regularPayment.creditCardDetails.brand`\n      | `payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `payments.${number}.giftCardPayment.appId`\n      | `payments.${number}._id`\n      | `payments.${number}.amount`\n      | `payments.${number}.paymentType`\n      | `payments.${number}.receiptType`\n      | `totals.subtotal`\n      | `totals.total`\n      | `totals.paidAmount`\n      | `totals.balance`\n      | `archived`\n      | `customFields.headerCustomFields`\n      | `customFields.headerCustomFields.${number}.value`\n      | `customFields.businessCustomFields`\n      | `customFields.customerCustomFields`\n      | `customFields.footerCustomField.overridePresetContent`\n      | `presetProperties.invoicePreset.name`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `presetProperties.invoicePreset.default`\n      | `attachments`\n      | `attachments.${number}.fileName`\n      | `attachments.${number}.fileUrl`\n      | `documentInfo.status`\n      | `links.relativePath`\n      | `businessLocation._id`\n      | `tags.privateTags.tagIds`,\n      7\n    > & {\n      __applicationErrorsType?: UpdateInvoiceApplicationErrors;\n      __validationErrorsType?: UpdateInvoiceValidationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function deleteInvoice(httpClient: HttpClient): DeleteInvoiceSignature {\n  return (invoiceId: string) =>\n    universalDeleteInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface DeleteInvoiceSignature {\n  /**\n   * Deletes a Invoice.\n   *\n   * Deleting a Invoice permanently removes them from the Invoice List.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    void & {\n      __applicationErrorsType?: DeleteInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function queryInvoices(httpClient: HttpClient): QueryInvoicesSignature {\n  return () =>\n    universalQueryInvoices(\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QueryInvoicesSignature {\n  /**\n   * Retrieves a list of Invoices, given the provided [paging, filtering, and sorting][1].\n   *\n   * Up to 1,000 Invoices can be returned per request.\n   *\n   * To learn how to query Invoices, see [API Query Language][2].\n   *\n   * [1]: https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging\n   * [2]: https://dev.wix.com/docs/rest/articles/getting-started/api-query-language\n   */\n  (): InvoicesQueryBuilder;\n}\n\nexport function typedQueryInvoices(\n  httpClient: HttpClient\n): TypedQueryInvoicesSignature {\n  return (query: InvoiceQuery) =>\n    universalTypedQueryInvoices(\n      query,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface TypedQueryInvoicesSignature {\n  /** */\n  (query: InvoiceQuery): Promise<\n    NonNullablePaths<\n      QueryInvoicesResponse,\n      | `invoices`\n      | `invoices.${number}.status`\n      | `invoices.${number}.sourceReference.appId`\n      | `invoices.${number}.reference.standaloneReference.limitActions`\n      | `invoices.${number}.reference.orderReference.orderId`\n      | `invoices.${number}.reference.referenceType`\n      | `invoices.${number}.regionalProperties.locale.languageCode`\n      | `invoices.${number}.regionalProperties.language`\n      | `invoices.${number}.numbering.displayNumber`\n      | `invoices.${number}.currency`\n      | `invoices.${number}.shipmentInfo.price`\n      | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n      | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n      | `invoices.${number}.deposit.fixedDeposit`\n      | `invoices.${number}.deposit.percentageDeposit`\n      | `invoices.${number}.deposit.depositType`\n      | `invoices.${number}.taxInfo.taxExempt`\n      | `invoices.${number}.totals.subtotal`\n      | `invoices.${number}.totals.total`\n      | `invoices.${number}.totals.paidAmount`\n      | `invoices.${number}.totals.balance`\n      | `invoices.${number}.archived`\n      | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n      | `invoices.${number}.presetProperties.invoicePreset.name`\n      | `invoices.${number}.presetProperties.invoicePreset.default`\n      | `invoices.${number}.documentInfo.status`\n      | `invoices.${number}.links.relativePath`\n      | `invoices.${number}.businessLocation._id`,\n      6\n    > & {\n      __applicationErrorsType?: QueryInvoicesApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function searchInvoices(\n  httpClient: HttpClient\n): SearchInvoicesSignature {\n  return (search: InvoiceSearch) =>\n    universalSearchInvoices(\n      search,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface SearchInvoicesSignature {\n  /**\n   * Retrieves a list of up to 100 invoices, given the specified filtering, search expression, sorting, and cursor paging ([SDK](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/api-query-language) | [REST](https://dev.wix.com/api/rest/getting-started/api-query-language)).\n   * @param - Search options.\n   */\n  (search: InvoiceSearch): Promise<\n    NonNullablePaths<\n      SearchInvoicesResponse,\n      | `invoices`\n      | `invoices.${number}.status`\n      | `invoices.${number}.sourceReference.appId`\n      | `invoices.${number}.reference.standaloneReference.limitActions`\n      | `invoices.${number}.reference.orderReference.orderId`\n      | `invoices.${number}.reference.referenceType`\n      | `invoices.${number}.regionalProperties.locale.languageCode`\n      | `invoices.${number}.regionalProperties.language`\n      | `invoices.${number}.numbering.displayNumber`\n      | `invoices.${number}.currency`\n      | `invoices.${number}.shipmentInfo.price`\n      | `invoices.${number}.shipmentInfo.totals.priceBeforeTax`\n      | `invoices.${number}.shipmentInfo.totals.priceAfterTax`\n      | `invoices.${number}.deposit.fixedDeposit`\n      | `invoices.${number}.deposit.percentageDeposit`\n      | `invoices.${number}.deposit.depositType`\n      | `invoices.${number}.taxInfo.taxExempt`\n      | `invoices.${number}.totals.subtotal`\n      | `invoices.${number}.totals.total`\n      | `invoices.${number}.totals.paidAmount`\n      | `invoices.${number}.totals.balance`\n      | `invoices.${number}.archived`\n      | `invoices.${number}.customFields.footerCustomField.overridePresetContent`\n      | `invoices.${number}.presetProperties.invoicePreset.name`\n      | `invoices.${number}.presetProperties.invoicePreset.default`\n      | `invoices.${number}.documentInfo.status`\n      | `invoices.${number}.links.relativePath`\n      | `invoices.${number}.businessLocation._id`\n      | `aggregationData.results`\n      | `aggregationData.results.${number}.scalar.type`\n      | `aggregationData.results.${number}.scalar.value`\n      | `aggregationData.results.${number}.name`\n      | `aggregationData.results.${number}.type`\n      | `aggregationData.results.${number}.fieldPath`,\n      6\n    >\n  >;\n}\n\n/** @internal */\nexport function sendInvoice(httpClient: HttpClient): SendInvoiceSignature {\n  return (invoiceId: string, options?: SendInvoiceOptions) =>\n    universalSendInvoice(\n      invoiceId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface SendInvoiceSignature {\n  /**\n   * Sends Invoice to a contact.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string, options?: SendInvoiceOptions): Promise<\n    NonNullablePaths<\n      SendInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`\n      | `sendResults`\n      | `sendResults.${number}.contactId`\n      | `sendResults.${number}.success`\n      | `sendResults.${number}.errorType`,\n      8\n    > & {\n      __applicationErrorsType?: SendInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function publishInvoice(\n  httpClient: HttpClient\n): PublishInvoiceSignature {\n  return (invoiceId: string) =>\n    universalPublishInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface PublishInvoiceSignature {\n  /**\n   * Publishes Invoice. Invoice number will be generated.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      PublishInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: PublishInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function voidInvoice(httpClient: HttpClient): VoidInvoiceSignature {\n  return (invoiceId: string) =>\n    universalVoidInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface VoidInvoiceSignature {\n  /**\n   * Voids Invoice.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      VoidInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: VoidInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function archiveInvoice(\n  httpClient: HttpClient\n): ArchiveInvoiceSignature {\n  return (invoiceId: string) =>\n    universalArchiveInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface ArchiveInvoiceSignature {\n  /**\n   * Archives Invoice.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      ArchiveInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: ArchiveInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function unarchiveInvoice(\n  httpClient: HttpClient\n): UnarchiveInvoiceSignature {\n  return (invoiceId: string) =>\n    universalUnarchiveInvoice(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface UnarchiveInvoiceSignature {\n  /**\n   * Unarchives Invoice.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      UnarchiveInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: UnarchiveInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function initiatePayment(\n  httpClient: HttpClient\n): InitiatePaymentSignature {\n  return (invoiceId: string) =>\n    universalInitiatePayment(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface InitiatePaymentSignature {\n  /**\n   * Initiates payment for Invoice.\n   * As a result enables payments for the invoice and creates payment checkout page.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<InitiatePaymentResponse, `url` | `paymentRequestId`, 2> & {\n      __applicationErrorsType?: InitiatePaymentApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function enableInvoicePayments(\n  httpClient: HttpClient\n): EnableInvoicePaymentsSignature {\n  return (invoiceId: string) =>\n    universalEnableInvoicePayments(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface EnableInvoicePaymentsSignature {\n  /**\n   * Enables invoice payments.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<EnableInvoicePaymentsResponse, `orderId`, 2> & {\n      __applicationErrorsType?: EnableInvoicePaymentsApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function generatePdfDocument(\n  httpClient: HttpClient\n): GeneratePdfDocumentSignature {\n  return (invoiceId: string) =>\n    universalGeneratePdfDocument(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GeneratePdfDocumentSignature {\n  /**\n   * Generates Invoice pdf document.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<\n    NonNullablePaths<\n      GeneratePdfDocumentResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`,\n      8\n    > & {\n      __applicationErrorsType?: GeneratePdfDocumentApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function markViewed(httpClient: HttpClient): MarkViewedSignature {\n  return (invoiceId: string) =>\n    universalMarkViewed(\n      invoiceId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface MarkViewedSignature {\n  /**\n   * Marks invoice as viewed.\n   * @param - Invoice ID.\n   */\n  (invoiceId: string): Promise<void>;\n}\n\n/** @internal */\nexport function calculateInvoice(\n  httpClient: HttpClient\n): CalculateInvoiceSignature {\n  return (\n    invoice: NonNullablePaths<\n      Invoice,\n      `reference` | `reference.referenceType`,\n      3\n    >,\n    options?: CalculateInvoiceOptions\n  ) =>\n    universalCalculateInvoice(\n      invoice,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface CalculateInvoiceSignature {\n  /**\n   * Calculates Invoice.\n   * @param - Invoice.\n   */\n  (\n    invoice: NonNullablePaths<\n      Invoice,\n      `reference` | `reference.referenceType`,\n      3\n    >,\n    options?: CalculateInvoiceOptions\n  ): Promise<\n    NonNullablePaths<\n      CalculateInvoiceResponse,\n      | `invoice.status`\n      | `invoice.statusQualifiers`\n      | `invoice.availableActions`\n      | `invoice.sourceReference.appId`\n      | `invoice.reference.standaloneReference.limitActions`\n      | `invoice.reference.orderReference.orderId`\n      | `invoice.reference.referenceType`\n      | `invoice.regionalProperties.locale.languageCode`\n      | `invoice.regionalProperties.language`\n      | `invoice.numbering.displayNumber`\n      | `invoice.currency`\n      | `invoice.customerInfo.contactDetails.vatId._id`\n      | `invoice.customerInfo.contactDetails.vatId.type`\n      | `invoice.customerInfo.billingAddress.streetAddress.number`\n      | `invoice.customerInfo.billingAddress.streetAddress.name`\n      | `invoice.lineItems`\n      | `invoice.lineItems.${number}.customItem.quantity`\n      | `invoice.lineItems.${number}.customItem.price`\n      | `invoice.lineItems.${number}.customItem.catalogReference.catalogItemId`\n      | `invoice.lineItems.${number}.customItem.catalogReference.appId`\n      | `invoice.lineItems.${number}.customItem.discount.fixedDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.percentageDiscount`\n      | `invoice.lineItems.${number}.customItem.discount.discountType`\n      | `invoice.lineItems.${number}.catalogItem.quantity`\n      | `invoice.lineItems.${number}.catalogItem.itemType.preset`\n      | `invoice.lineItems.${number}.catalogItem.itemType.custom`\n      | `invoice.lineItems.${number}.itemType`\n      | `invoice.shipmentInfo.price`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.shipmentInfo.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.shipmentInfo.totals.priceBeforeTax`\n      | `invoice.shipmentInfo.totals.priceAfterTax`\n      | `invoice.additionalFees`\n      | `invoice.additionalFees.${number}.name`\n      | `invoice.additionalFees.${number}.amount`\n      | `invoice.discounts`\n      | `invoice.discounts.${number}.fixedDiscount`\n      | `invoice.discounts.${number}.percentageDiscount`\n      | `invoice.discounts.${number}.discountType`\n      | `invoice.deposit.fixedDeposit`\n      | `invoice.deposit.percentageDeposit`\n      | `invoice.deposit.depositType`\n      | `invoice.taxInfo.taxBreakdown`\n      | `invoice.taxInfo.taxBreakdown.${number}.name`\n      | `invoice.taxInfo.taxBreakdown.${number}.rate`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxableAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.exemptAmount`\n      | `invoice.taxInfo.taxBreakdown.${number}.taxAmount`\n      | `invoice.taxInfo.taxExempt`\n      | `invoice.payments`\n      | `invoice.payments.${number}.regularPayment.paymentOrderId`\n      | `invoice.payments.${number}.regularPayment.paymentMethod`\n      | `invoice.payments.${number}.regularPayment.offlinePayment`\n      | `invoice.payments.${number}.regularPayment.paymentStatus`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.lastFourDigits`\n      | `invoice.payments.${number}.regularPayment.creditCardDetails.brand`\n      | `invoice.payments.${number}.giftCardPayment.giftCardPaymentId`\n      | `invoice.payments.${number}.giftCardPayment.appId`\n      | `invoice.payments.${number}._id`\n      | `invoice.payments.${number}.amount`\n      | `invoice.payments.${number}.paymentType`\n      | `invoice.payments.${number}.receiptType`\n      | `invoice.totals.subtotal`\n      | `invoice.totals.total`\n      | `invoice.totals.paidAmount`\n      | `invoice.totals.balance`\n      | `invoice.archived`\n      | `invoice.customFields.headerCustomFields`\n      | `invoice.customFields.headerCustomFields.${number}.value`\n      | `invoice.customFields.businessCustomFields`\n      | `invoice.customFields.customerCustomFields`\n      | `invoice.customFields.footerCustomField.overridePresetContent`\n      | `invoice.presetProperties.invoicePreset.name`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.businessInfo.displayCompanyId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayEmail`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayPhoneNumber`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayShippingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayBillingAddress`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayVatId`\n      | `invoice.presetProperties.invoicePreset.displaySettings.customerInfo.displayCompanyName`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayDescription`\n      | `invoice.presetProperties.invoicePreset.displaySettings.itemsInfo.displayTax`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.totalsInfo.displayItemSubtotalPerTaxBreakdown`\n      | `invoice.presetProperties.invoicePreset.displaySettings.paymentsInfo.displayPaymentsInfo`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerCustomFields.${number}.value`\n      | `invoice.presetProperties.invoicePreset.customFields.businessCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.customerCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.customFields.headerFormCustomFields.${number}.title`\n      | `invoice.presetProperties.invoicePreset.customFields.customerFormCustomFields`\n      | `invoice.presetProperties.invoicePreset.default`\n      | `invoice.attachments`\n      | `invoice.attachments.${number}.fileName`\n      | `invoice.attachments.${number}.fileUrl`\n      | `invoice.documentInfo.status`\n      | `invoice.links.relativePath`\n      | `invoice.businessLocation._id`\n      | `invoice.tags.privateTags.tagIds`\n      | `shipmentInfo`\n      | `shipmentInfo.${number}.price`\n      | `shipmentInfo.${number}.totals.priceBeforeTax`\n      | `shipmentInfo.${number}.totals.priceAfterTax`\n      | `calculationErrors.generalShippingCalculationError.applicationError.code`\n      | `calculationErrors.generalShippingCalculationError.applicationError.description`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.field`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.description`\n      | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.violatedRule`\n      | `calculationErrors.carrierErrors.errors`\n      | `calculationErrors.carrierErrors.errors.${number}.carrierId`\n      | `correlationId`,\n      8\n    > & {\n      __applicationErrorsType?: CalculateInvoiceApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function getLatestInvoiceNumber(\n  httpClient: HttpClient\n): GetLatestInvoiceNumberSignature {\n  return (options?: GetLatestInvoiceNumberOptions) =>\n    universalGetLatestInvoiceNumber(\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface GetLatestInvoiceNumberSignature {\n  /**\n   * Retrieves the highest invoice number currently in use (the sequential identifier displayed between the prefix and suffix in invoice display numbers).\n   * Can be filtered by prefix.\n   *\n   * Invoice numbering is managed in the [Invoices Settings API](https://dev.wix.com/docs/rest/business-management/get-paid/invoices/invoices-settings/introduction).\n   */\n  (\n    options?: GetLatestInvoiceNumberOptions\n  ): Promise<GetLatestInvoiceNumberResponse>;\n}\n\n/** @internal */\nexport function bulkCreateInvoices(\n  httpClient: HttpClient\n): BulkCreateInvoicesSignature {\n  return (invoices: Invoice[], options?: BulkCreateInvoicesOptions) =>\n    universalBulkCreateInvoices(\n      invoices,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkCreateInvoicesSignature {\n  /**\n   * Create multiple invoices.\n   * @param - List of invoices to create.\n   */\n  (invoices: Invoice[], options?: BulkCreateInvoicesOptions): Promise<\n    NonNullablePaths<\n      BulkCreateInvoicesResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.status`\n      | `results.${number}.item.sourceReference.appId`\n      | `results.${number}.item.reference.referenceType`\n      | `results.${number}.item.regionalProperties.language`\n      | `results.${number}.item.numbering.displayNumber`\n      | `results.${number}.item.currency`\n      | `results.${number}.item.shipmentInfo.price`\n      | `results.${number}.item.deposit.fixedDeposit`\n      | `results.${number}.item.deposit.percentageDeposit`\n      | `results.${number}.item.deposit.depositType`\n      | `results.${number}.item.taxInfo.taxExempt`\n      | `results.${number}.item.totals.subtotal`\n      | `results.${number}.item.totals.total`\n      | `results.${number}.item.totals.paidAmount`\n      | `results.${number}.item.totals.balance`\n      | `results.${number}.item.archived`\n      | `results.${number}.item.documentInfo.status`\n      | `results.${number}.item.links.relativePath`\n      | `results.${number}.item.businessLocation._id`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkCreateInvoicesApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function bulkUpdateInvoices(\n  httpClient: HttpClient\n): BulkUpdateInvoicesSignature {\n  return (\n    invoices: NonNullablePaths<\n      MaskedInvoice,\n      `invoice` | `invoice._id` | `invoice.revision`,\n      3\n    >[],\n    options?: BulkUpdateInvoicesOptions\n  ) =>\n    universalBulkUpdateInvoices(\n      invoices,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateInvoicesSignature {\n  /**\n   * Update multiple invoices.\n   * @param - Invoices to update.\n   */\n  (\n    invoices: NonNullablePaths<\n      MaskedInvoice,\n      `invoice` | `invoice._id` | `invoice.revision`,\n      3\n    >[],\n    options?: BulkUpdateInvoicesOptions\n  ): Promise<\n    NonNullablePaths<\n      BulkUpdateInvoicesResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `results.${number}.item.status`\n      | `results.${number}.item.sourceReference.appId`\n      | `results.${number}.item.reference.referenceType`\n      | `results.${number}.item.regionalProperties.language`\n      | `results.${number}.item.numbering.displayNumber`\n      | `results.${number}.item.currency`\n      | `results.${number}.item.shipmentInfo.price`\n      | `results.${number}.item.deposit.fixedDeposit`\n      | `results.${number}.item.deposit.percentageDeposit`\n      | `results.${number}.item.deposit.depositType`\n      | `results.${number}.item.taxInfo.taxExempt`\n      | `results.${number}.item.totals.subtotal`\n      | `results.${number}.item.totals.total`\n      | `results.${number}.item.totals.paidAmount`\n      | `results.${number}.item.totals.balance`\n      | `results.${number}.item.archived`\n      | `results.${number}.item.documentInfo.status`\n      | `results.${number}.item.links.relativePath`\n      | `results.${number}.item.businessLocation._id`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkUpdateInvoicesApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function bulkDeleteInvoices(\n  httpClient: HttpClient\n): BulkDeleteInvoicesSignature {\n  return (invoiceIds: string[]) =>\n    universalBulkDeleteInvoices(\n      invoiceIds,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkDeleteInvoicesSignature {\n  /**\n   * Delete multiple invoices.\n   * @param - Invoice IDs to delete.\n   */\n  (invoiceIds: string[]): Promise<\n    NonNullablePaths<\n      BulkDeleteInvoicesResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    >\n  >;\n}\n\n/** @internal */\nexport function bulkUpdateInvoiceTags(\n  httpClient: HttpClient\n): BulkUpdateInvoiceTagsSignature {\n  return (invoiceIds: string[], options?: BulkUpdateInvoiceTagsOptions) =>\n    universalBulkUpdateInvoiceTags(\n      invoiceIds,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateInvoiceTagsSignature {\n  /**\n   * Updates tags for multiple invoices.\n   * A tag that appears both in the list of assign and unassign tags, will be assigned.\n   * @param - IDs of invoices which tags will be updated.\n   */\n  (invoiceIds: string[], options?: BulkUpdateInvoiceTagsOptions): Promise<\n    NonNullablePaths<\n      BulkUpdateInvoiceTagsResponse,\n      | `results`\n      | `results.${number}.itemMetadata.originalIndex`\n      | `results.${number}.itemMetadata.success`\n      | `results.${number}.itemMetadata.error.code`\n      | `results.${number}.itemMetadata.error.description`\n      | `bulkActionMetadata.totalSuccesses`\n      | `bulkActionMetadata.totalFailures`\n      | `bulkActionMetadata.undetailedFailures`,\n      6\n    > & {\n      __applicationErrorsType?: BulkUpdateInvoiceTagsApplicationErrors;\n    }\n  >;\n}\n\n/** @internal */\nexport function bulkUpdateInvoiceTagsByFilter(\n  httpClient: HttpClient\n): BulkUpdateInvoiceTagsByFilterSignature {\n  return (\n    filter: Record<string, any>,\n    options?: BulkUpdateInvoiceTagsByFilterOptions\n  ) =>\n    universalBulkUpdateInvoiceTagsByFilter(\n      filter,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface BulkUpdateInvoiceTagsByFilterSignature {\n  /**\n   * Updates tags on multiple invoices items by filter. Works asynchronously, and returns a job ID.\n   *\n   * An empty filter will update all invoices.\n   *\n   * A tag that is specified both in the list of assign and unassign tags, will be assigned.\n   *\n   * Specify the returned jobId in Get Async Job ([SDK](https://dev.wix.com/docs/sdk/backend-modules/async-jobs/get-async-job) | [REST](https://dev.wix.com/docs/rest/business-management/async-job/get-async-job)) to track the job's status.\n   * @param - Filter to select relevant invoices.\n   */\n  (\n    filter: Record<string, any>,\n    options?: BulkUpdateInvoiceTagsByFilterOptions\n  ): Promise<\n    NonNullablePaths<BulkUpdateInvoiceTagsByFilterResponse, `jobId`, 2> & {\n      __applicationErrorsType?: BulkUpdateInvoiceTagsByFilterApplicationErrors;\n    }\n  >;\n}\n\nexport {\n  AccountInfo,\n  Action,\n  ActionEvent,\n  AdditionalFee,\n  AdditionalFeeSource,\n  Address,\n  AddressLocation,\n  Aggregation,\n  AggregationData,\n  AggregationKindOneOf,\n  AggregationResults,\n  AggregationResultsResultOneOf,\n  AggregationResultsScalarResult,\n  AggregationType,\n  Alignment,\n  AnchorData,\n  AppEmbedData,\n  AppEmbedDataAppDataOneOf,\n  AppType,\n  ApplicationError,\n  ArchiveInvoiceRequest,\n  ArchiveInvoiceResponse,\n  AspectRatio,\n  Attachment,\n  AudioData,\n  Background,\n  BackgroundBackgroundOneOf,\n  BackgroundImage,\n  BackgroundType,\n  Banner,\n  BlockquoteData,\n  BookingData,\n  Border,\n  BorderColors,\n  BorderWidths,\n  BulkActionMetadata,\n  BulkCreateInvoicesOptions,\n  BulkCreateInvoicesRequest,\n  BulkCreateInvoicesResponse,\n  BulkDeleteInvoicesRequest,\n  BulkDeleteInvoicesResponse,\n  BulkDeleteInvoicesResponseBulkInvoiceResult,\n  BulkInvoiceResult,\n  BulkUpdateInvoiceTagsByFilterOptions,\n  BulkUpdateInvoiceTagsByFilterRequest,\n  BulkUpdateInvoiceTagsByFilterResponse,\n  BulkUpdateInvoiceTagsOptions,\n  BulkUpdateInvoiceTagsRequest,\n  BulkUpdateInvoiceTagsResponse,\n  BulkUpdateInvoiceTagsResult,\n  BulkUpdateInvoicesOptions,\n  BulkUpdateInvoicesRequest,\n  BulkUpdateInvoicesResponse,\n  BulkUpdateInvoicesResponseBulkInvoiceResult,\n  BulletedListData,\n  BusinessDetails,\n  BusinessDisplayOptions,\n  BusinessLocation,\n  ButtonData,\n  ButtonDataType,\n  ButtonStyles,\n  CalculateInvoiceOptions,\n  CalculateInvoiceRequest,\n  CalculateInvoiceResponse,\n  CalculationErrors,\n  CalculationErrorsShippingCalculationErrorOneOf,\n  CaptionData,\n  CardStyles,\n  CarrierError,\n  CarrierErrors,\n  CatalogItem,\n  CatalogReference,\n  CellStyle,\n  CodeBlockData,\n  CollapsibleListData,\n  ColorData,\n  Colors,\n  CreateInvoiceRequest,\n  CreateInvoiceResponse,\n  CreditCardDetails,\n  Crop,\n  CursorPaging,\n  CursorPagingMetadata,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  CursorSearch,\n  CursorSearchPagingMethodOneOf,\n  Cursors,\n  CustomField,\n  CustomFields,\n  CustomItem,\n  CustomerDisplayOptions,\n  CustomerInfo,\n  DateHistogramAggregation,\n  DateHistogramResult,\n  DateHistogramResults,\n  Decoration,\n  DecorationDataOneOf,\n  DecorationType,\n  DeleteInvoiceRequest,\n  DeleteInvoiceResponse,\n  DeliveryLogistics,\n  DeliveryTimeSlot,\n  Deposit,\n  DepositDepositDetailsOneOf,\n  DepositType,\n  Design,\n  DesignTarget,\n  Details,\n  DetailsKindOneOf,\n  Dimensions,\n  Direction,\n  Discount,\n  DiscountDiscountDetailsOneOf,\n  DiscountType,\n  DisplaySettings,\n  DisplayValues,\n  DividerData,\n  DividerDataAlignment,\n  DocumentInfo,\n  DocumentStatus,\n  DocumentStyle,\n  DomainCustomField,\n  DomainCustomFields,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EmbedData,\n  Empty,\n  EnableInvoicePaymentsRequest,\n  EnableInvoicePaymentsResponse,\n  EntityCreatedEvent,\n  EntityDeletedEvent,\n  EntityUpdatedEvent,\n  ErrorType,\n  EventData,\n  ExtendedFields,\n  ExternalReceipt,\n  Failed,\n  FieldViolation,\n  FileData,\n  FileSource,\n  FileSourceDataOneOf,\n  FileState,\n  FontFamilyData,\n  FontSizeData,\n  FontType,\n  FooterContent,\n  FormCustomField,\n  FullAddressContactDetails,\n  GIF,\n  GIFData,\n  GIFType,\n  GalleryData,\n  GalleryOptions,\n  GalleryOptionsLayout,\n  GeneratePdfDocumentRequest,\n  GeneratePdfDocumentResponse,\n  GetInvoiceRequest,\n  GetInvoiceResponse,\n  GetLatestInvoiceNumberOptions,\n  GetLatestInvoiceNumberRequest,\n  GetLatestInvoiceNumberResponse,\n  GiftCardPaymentDetails,\n  Gradient,\n  GroupByAggregation,\n  GroupByAggregationKindOneOf,\n  GroupByValueResults,\n  HTMLData,\n  HTMLDataDataOneOf,\n  HeadingData,\n  Height,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  IllegalActionErrorData,\n  Image,\n  ImageData,\n  ImageDataStyles,\n  ImagePosition,\n  ImageStyles,\n  IncludeMissingValuesOptions,\n  InitialExpandedItems,\n  InitiatePaymentRequest,\n  InitiatePaymentResponse,\n  Interval,\n  Invoice,\n  InvoiceDocumentHandled,\n  InvoiceDocumentHandledResultOneOf,\n  InvoiceDocumentProcess,\n  InvoiceFileExport,\n  InvoiceNumberingProcess,\n  InvoicePreset,\n  InvoiceQuerySpec,\n  InvoiceSearchSpec,\n  InvoicesQueryBuilder,\n  InvoicesQueryResult,\n  Item,\n  ItemDataOneOf,\n  ItemMetadata,\n  ItemStyle,\n  ItemType,\n  ItemTypeItemTypeDataOneOf,\n  ItemsDisplayOption,\n  Layout,\n  LayoutCellData,\n  LayoutData,\n  LayoutType,\n  LineItem,\n  LineItemDiscount,\n  LineItemDiscountDiscountDetailsOneOf,\n  LineItemDiscountDiscountType,\n  LineItemItemDetailsOneOf,\n  LineItemItemType,\n  LineItemTaxBreakdown,\n  LineItemTaxInfo,\n  LineItemTotals,\n  LineStyle,\n  Link,\n  LinkData,\n  LinkDataOneOf,\n  LinkPreviewData,\n  LinkPreviewDataStyles,\n  Links,\n  ListValue,\n  Locale,\n  MapData,\n  MapSettings,\n  MapType,\n  MarkViewedRequest,\n  MarkViewedResponse,\n  MaskedInvoice,\n  Media,\n  MediaFileStateChanged,\n  MentionData,\n  MessageEnvelope,\n  Metadata,\n  Migrated,\n  MissingValues,\n  Mode,\n  NestedAggregation,\n  NestedAggregationItem,\n  NestedAggregationItemKindOneOf,\n  NestedAggregationResults,\n  NestedAggregationResultsResultOneOf,\n  NestedAggregationType,\n  NestedResultValue,\n  NestedResultValueResultOneOf,\n  NestedResults,\n  NestedValueAggregationResult,\n  Node,\n  NodeDataOneOf,\n  NodeStyle,\n  NodeType,\n  NullValue,\n  Numbering,\n  Oembed,\n  Option,\n  OptionDesign,\n  OptionLayout,\n  Order,\n  OrderedListData,\n  Orientation,\n  Origin,\n  PDFSettings,\n  PagingMetadataV2,\n  ParagraphData,\n  Payment,\n  PaymentPaymentOptionsOneOf,\n  PaymentReceiptOptionsOneOf,\n  PaymentStatus,\n  PaymentType,\n  PaymentsDisplayOption,\n  Permissions,\n  Placement,\n  PlaybackOptions,\n  PluginContainerData,\n  PluginContainerDataAlignment,\n  PluginContainerDataWidth,\n  PluginContainerDataWidthDataOneOf,\n  Poll,\n  PollData,\n  PollDataLayout,\n  PollDesign,\n  PollLayout,\n  PollLayoutDirection,\n  PollLayoutType,\n  Position,\n  PresetProperties,\n  PresetType,\n  PricingData,\n  PublishInvoiceRequest,\n  PublishInvoiceResponse,\n  QueryInvoicesRequest,\n  QueryInvoicesResponse,\n  RangeAggregation,\n  RangeAggregationResult,\n  RangeBucket,\n  RangeResult,\n  RangeResults,\n  ReceiptType,\n  Reference,\n  ReferenceReferencesOneOf,\n  ReferenceType,\n  RegionalProperties,\n  RegularPaymentDetails,\n  Rel,\n  Resizing,\n  ResponsivenessBehaviour,\n  RestoreInfo,\n  Results,\n  RibbonStyles,\n  RichContent,\n  RuleType,\n  ScalarAggregation,\n  ScalarResult,\n  ScalarType,\n  Scaling,\n  SearchDetails,\n  SearchInvoicesRequest,\n  SearchInvoicesResponse,\n  SendErrorType,\n  SendInvoiceOptions,\n  SendInvoiceRequest,\n  SendInvoiceResponse,\n  SendResult,\n  Settings,\n  ShapeData,\n  ShapeDataStyles,\n  ShipmentInfo,\n  ShipmentRegion,\n  ShipmentTaxBreakdown,\n  ShipmentTaxInfo,\n  ShipmentTotals,\n  ShippingInfo,\n  SortDirection,\n  SortOrder,\n  SortType,\n  Sorting,\n  Source,\n  SourceReference,\n  Spoiler,\n  SpoilerData,\n  Standalone,\n  Status,\n  StatusQualifier,\n  StreetAddress,\n  Styles,\n  StylesBorder,\n  StylesPosition,\n  Succeeded,\n  SystemError,\n  TableCellData,\n  TableData,\n  TagList,\n  Tags,\n  TagsModified,\n  Target,\n  TaxBreakdown,\n  TaxInfo,\n  TextAlignment,\n  TextData,\n  TextNodeStyle,\n  TextStyle,\n  Thumbnails,\n  ThumbnailsAlignment,\n  Totals,\n  TotalsDisplayOption,\n  Type,\n  UnarchiveInvoiceRequest,\n  UnarchiveInvoiceResponse,\n  UpdateInvoice,\n  UpdateInvoiceRequest,\n  UpdateInvoiceResponse,\n  ValidationError,\n  ValueAggregation,\n  ValueAggregationOptionsOneOf,\n  ValueAggregationResult,\n  ValueResult,\n  ValueResults,\n  VatId,\n  VatType,\n  VerticalAlignment,\n  VerticalAlignmentAlignment,\n  Video,\n  VideoData,\n  ViewMode,\n  ViewRole,\n  VoidInvoiceRequest,\n  VoidInvoiceResponse,\n  VoteRole,\n  WebhookIdentityType,\n  Width,\n  WidthType,\n  WixReceipt,\n  utils,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n","import {\n  createInvoice as publicCreateInvoice,\n  getInvoice as publicGetInvoice,\n  updateInvoice as publicUpdateInvoice,\n  deleteInvoice as publicDeleteInvoice,\n  queryInvoices as publicQueryInvoices,\n  typedQueryInvoices as publicTypedQueryInvoices,\n  searchInvoices as publicSearchInvoices,\n  sendInvoice as publicSendInvoice,\n  publishInvoice as publicPublishInvoice,\n  voidInvoice as publicVoidInvoice,\n  archiveInvoice as publicArchiveInvoice,\n  unarchiveInvoice as publicUnarchiveInvoice,\n  initiatePayment as publicInitiatePayment,\n  enableInvoicePayments as publicEnableInvoicePayments,\n  generatePdfDocument as publicGeneratePdfDocument,\n  markViewed as publicMarkViewed,\n  calculateInvoice as publicCalculateInvoice,\n  getLatestInvoiceNumber as publicGetLatestInvoiceNumber,\n  bulkCreateInvoices as publicBulkCreateInvoices,\n  bulkUpdateInvoices as publicBulkUpdateInvoices,\n  bulkDeleteInvoices as publicBulkDeleteInvoices,\n  bulkUpdateInvoiceTags as publicBulkUpdateInvoiceTags,\n  bulkUpdateInvoiceTagsByFilter as publicBulkUpdateInvoiceTagsByFilter,\n} from './invoices-invoices-v4-invoice-invoices.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\nimport { HttpClient } from '@wix/sdk-types';\nimport { createQueryOverloadRouter } from '@wix/sdk-runtime/query-method-router';\nimport {\n  InvoiceQuery,\n  InvoicesQueryBuilder,\n  typedQueryInvoices as universalTypedQueryInvoices,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n\nfunction customQueryInvoices(httpClient: HttpClient) {\n  const router = createQueryOverloadRouter({\n    builderQueryFunction: () => publicQueryInvoices(httpClient)(),\n    typedQueryFunction: (query: InvoiceQuery) =>\n      publicTypedQueryInvoices(httpClient)(query),\n    hasOptionsParameter: false,\n  });\n\n  function overloadedQuery(): InvoicesQueryBuilder;\n  function overloadedQuery(\n    query: InvoiceQuery\n  ): ReturnType<typeof universalTypedQueryInvoices>;\n  function overloadedQuery(query?: InvoiceQuery): any {\n    return router(...arguments);\n  }\n\n  return overloadedQuery;\n}\n\n/** @internal */\nexport const createInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicCreateInvoice> & typeof publicCreateInvoice\n> = /*#__PURE__*/ createRESTModule(publicCreateInvoice);\n/** @internal */\nexport const getInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicGetInvoice> & typeof publicGetInvoice\n> = /*#__PURE__*/ createRESTModule(publicGetInvoice);\n/** @internal */\nexport const updateInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicUpdateInvoice> & typeof publicUpdateInvoice\n> = /*#__PURE__*/ createRESTModule(publicUpdateInvoice);\n/** @internal */\nexport const deleteInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicDeleteInvoice> & typeof publicDeleteInvoice\n> = /*#__PURE__*/ createRESTModule(publicDeleteInvoice);\n/** @internal */\nexport const searchInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicSearchInvoices> & typeof publicSearchInvoices\n> = /*#__PURE__*/ createRESTModule(publicSearchInvoices);\n/** @internal */\nexport const sendInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicSendInvoice> & typeof publicSendInvoice\n> = /*#__PURE__*/ createRESTModule(publicSendInvoice);\n/** @internal */\nexport const publishInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicPublishInvoice> & typeof publicPublishInvoice\n> = /*#__PURE__*/ createRESTModule(publicPublishInvoice);\n/** @internal */\nexport const voidInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicVoidInvoice> & typeof publicVoidInvoice\n> = /*#__PURE__*/ createRESTModule(publicVoidInvoice);\n/** @internal */\nexport const archiveInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicArchiveInvoice> & typeof publicArchiveInvoice\n> = /*#__PURE__*/ createRESTModule(publicArchiveInvoice);\n/** @internal */\nexport const unarchiveInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicUnarchiveInvoice> &\n    typeof publicUnarchiveInvoice\n> = /*#__PURE__*/ createRESTModule(publicUnarchiveInvoice);\n/** @internal */\nexport const initiatePayment: MaybeContext<\n  BuildRESTFunction<typeof publicInitiatePayment> & typeof publicInitiatePayment\n> = /*#__PURE__*/ createRESTModule(publicInitiatePayment);\n/** @internal */\nexport const enableInvoicePayments: MaybeContext<\n  BuildRESTFunction<typeof publicEnableInvoicePayments> &\n    typeof publicEnableInvoicePayments\n> = /*#__PURE__*/ createRESTModule(publicEnableInvoicePayments);\n/** @internal */\nexport const generatePdfDocument: MaybeContext<\n  BuildRESTFunction<typeof publicGeneratePdfDocument> &\n    typeof publicGeneratePdfDocument\n> = /*#__PURE__*/ createRESTModule(publicGeneratePdfDocument);\n/** @internal */\nexport const markViewed: MaybeContext<\n  BuildRESTFunction<typeof publicMarkViewed> & typeof publicMarkViewed\n> = /*#__PURE__*/ createRESTModule(publicMarkViewed);\n/** @internal */\nexport const calculateInvoice: MaybeContext<\n  BuildRESTFunction<typeof publicCalculateInvoice> &\n    typeof publicCalculateInvoice\n> = /*#__PURE__*/ createRESTModule(publicCalculateInvoice);\n/** @internal */\nexport const getLatestInvoiceNumber: MaybeContext<\n  BuildRESTFunction<typeof publicGetLatestInvoiceNumber> &\n    typeof publicGetLatestInvoiceNumber\n> = /*#__PURE__*/ createRESTModule(publicGetLatestInvoiceNumber);\n/** @internal */\nexport const bulkCreateInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicBulkCreateInvoices> &\n    typeof publicBulkCreateInvoices\n> = /*#__PURE__*/ createRESTModule(publicBulkCreateInvoices);\n/** @internal */\nexport const bulkUpdateInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateInvoices> &\n    typeof publicBulkUpdateInvoices\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateInvoices);\n/** @internal */\nexport const bulkDeleteInvoices: MaybeContext<\n  BuildRESTFunction<typeof publicBulkDeleteInvoices> &\n    typeof publicBulkDeleteInvoices\n> = /*#__PURE__*/ createRESTModule(publicBulkDeleteInvoices);\n/** @internal */\nexport const bulkUpdateInvoiceTags: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateInvoiceTags> &\n    typeof publicBulkUpdateInvoiceTags\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateInvoiceTags);\n/** @internal */\nexport const bulkUpdateInvoiceTagsByFilter: MaybeContext<\n  BuildRESTFunction<typeof publicBulkUpdateInvoiceTagsByFilter> &\n    typeof publicBulkUpdateInvoiceTagsByFilter\n> = /*#__PURE__*/ createRESTModule(publicBulkUpdateInvoiceTagsByFilter);\nexport const queryInvoices: MaybeContext<\n  BuildRESTFunction<typeof customQueryInvoices> & typeof customQueryInvoices\n> = /*#__PURE__*/ createRESTModule(customQueryInvoices);\n\nexport {\n  Status,\n  StatusQualifier,\n  Action,\n  ReferenceType,\n  VatType,\n  LineItemItemType,\n  LineItemDiscountDiscountType,\n  PresetType,\n  AdditionalFeeSource,\n  DiscountType,\n  DepositType,\n  PaymentType,\n  PaymentStatus,\n  ReceiptType,\n  NodeType,\n  WidthType,\n  PluginContainerDataAlignment,\n  ButtonDataType,\n  Target,\n  TextAlignment,\n  LineStyle,\n  Width,\n  DividerDataAlignment,\n  ViewMode,\n  LayoutType,\n  Orientation,\n  Crop,\n  ThumbnailsAlignment,\n  GIFType,\n  Source,\n  StylesPosition,\n  MapType,\n  ViewRole,\n  VoteRole,\n  PollLayoutType,\n  PollLayoutDirection,\n  BackgroundType,\n  DecorationType,\n  FontType,\n  Position,\n  AspectRatio,\n  Resizing,\n  Placement,\n  Type,\n  Alignment,\n  Layout,\n  AppType,\n  InitialExpandedItems,\n  Direction,\n  VerticalAlignment,\n  NullValue,\n  Scaling,\n  ImagePosition,\n  Origin,\n  VerticalAlignmentAlignment,\n  ResponsivenessBehaviour,\n  DesignTarget,\n  DocumentStatus,\n  FileState,\n  ErrorType,\n  SortOrder,\n  SortType,\n  SortDirection,\n  MissingValues,\n  ScalarType,\n  NestedAggregationType,\n  Interval,\n  AggregationType,\n  Mode,\n  SendErrorType,\n  RuleType,\n  WebhookIdentityType,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\nexport {\n  Invoice,\n  SourceReference,\n  Reference,\n  ReferenceReferencesOneOf,\n  Standalone,\n  Order,\n  Migrated,\n  RegionalProperties,\n  Locale,\n  Numbering,\n  CustomerInfo,\n  FullAddressContactDetails,\n  VatId,\n  Address,\n  StreetAddress,\n  AddressLocation,\n  ShippingInfo,\n  BusinessDetails,\n  LineItem,\n  LineItemItemDetailsOneOf,\n  CustomItem,\n  CatalogReference,\n  LineItemDiscount,\n  LineItemDiscountDiscountDetailsOneOf,\n  LineItemTaxInfo,\n  LineItemTaxBreakdown,\n  LineItemTotals,\n  CatalogItem,\n  ItemType,\n  ItemTypeItemTypeDataOneOf,\n  ShipmentInfo,\n  DeliveryLogistics,\n  DeliveryTimeSlot,\n  ShipmentRegion,\n  ShipmentTaxInfo,\n  ShipmentTaxBreakdown,\n  ShipmentTotals,\n  AdditionalFee,\n  Discount,\n  DiscountDiscountDetailsOneOf,\n  Deposit,\n  DepositDepositDetailsOneOf,\n  TaxInfo,\n  TaxBreakdown,\n  Payment,\n  PaymentPaymentOptionsOneOf,\n  PaymentReceiptOptionsOneOf,\n  RegularPaymentDetails,\n  CreditCardDetails,\n  GiftCardPaymentDetails,\n  WixReceipt,\n  ExternalReceipt,\n  Totals,\n  CustomFields,\n  CustomField,\n  FooterContent,\n  RichContent,\n  Node,\n  NodeDataOneOf,\n  NodeStyle,\n  ButtonData,\n  Border,\n  Colors,\n  PluginContainerData,\n  PluginContainerDataWidth,\n  PluginContainerDataWidthDataOneOf,\n  Spoiler,\n  Height,\n  Styles,\n  Link,\n  LinkDataOneOf,\n  Rel,\n  CodeBlockData,\n  TextStyle,\n  DividerData,\n  FileData,\n  FileSource,\n  FileSourceDataOneOf,\n  PDFSettings,\n  GalleryData,\n  Media,\n  Image,\n  Video,\n  Item,\n  ItemDataOneOf,\n  GalleryOptions,\n  GalleryOptionsLayout,\n  ItemStyle,\n  Thumbnails,\n  GIFData,\n  GIF,\n  HeadingData,\n  HTMLData,\n  HTMLDataDataOneOf,\n  ImageData,\n  StylesBorder,\n  ImageDataStyles,\n  LinkPreviewData,\n  LinkPreviewDataStyles,\n  MapData,\n  MapSettings,\n  ParagraphData,\n  PollData,\n  Permissions,\n  Option,\n  Settings,\n  PollLayout,\n  OptionLayout,\n  Gradient,\n  Background,\n  BackgroundBackgroundOneOf,\n  PollDesign,\n  OptionDesign,\n  Poll,\n  PollDataLayout,\n  Design,\n  TextData,\n  Decoration,\n  DecorationDataOneOf,\n  AnchorData,\n  ColorData,\n  LinkData,\n  MentionData,\n  FontSizeData,\n  SpoilerData,\n  FontFamilyData,\n  AppEmbedData,\n  AppEmbedDataAppDataOneOf,\n  BookingData,\n  EventData,\n  ButtonStyles,\n  ImageStyles,\n  RibbonStyles,\n  CardStyles,\n  PricingData,\n  VideoData,\n  PlaybackOptions,\n  EmbedData,\n  Oembed,\n  CollapsibleListData,\n  TableData,\n  Dimensions,\n  TableCellData,\n  CellStyle,\n  BorderColors,\n  BorderWidths,\n  ListValue,\n  AudioData,\n  OrderedListData,\n  BulletedListData,\n  BlockquoteData,\n  CaptionData,\n  LayoutData,\n  BackgroundImage,\n  Banner,\n  LayoutCellData,\n  ShapeData,\n  ShapeDataStyles,\n  Metadata,\n  DocumentStyle,\n  TextNodeStyle,\n  PresetProperties,\n  InvoicePreset,\n  DisplaySettings,\n  BusinessDisplayOptions,\n  CustomerDisplayOptions,\n  ItemsDisplayOption,\n  TotalsDisplayOption,\n  PaymentsDisplayOption,\n  DomainCustomFields,\n  DomainCustomField,\n  FormCustomField,\n  DisplayValues,\n  ExtendedFields,\n  Attachment,\n  DocumentInfo,\n  Links,\n  BusinessLocation,\n  Tags,\n  TagList,\n  InvoiceNumberingProcess,\n  InvoiceDocumentProcess,\n  InvoiceDocumentHandled,\n  InvoiceDocumentHandledResultOneOf,\n  Succeeded,\n  Failed,\n  InvoiceFileExport,\n  MediaFileStateChanged,\n  TagsModified,\n  CreateInvoiceRequest,\n  CreateInvoiceResponse,\n  GetInvoiceRequest,\n  GetInvoiceResponse,\n  UpdateInvoiceRequest,\n  UpdateInvoiceResponse,\n  IllegalActionErrorData,\n  DeleteInvoiceRequest,\n  DeleteInvoiceResponse,\n  QueryInvoicesRequest,\n  CursorQuery,\n  CursorQueryPagingMethodOneOf,\n  Sorting,\n  CursorPaging,\n  QueryInvoicesResponse,\n  CursorPagingMetadata,\n  Cursors,\n  SearchInvoicesRequest,\n  CursorSearch,\n  CursorSearchPagingMethodOneOf,\n  Aggregation,\n  AggregationKindOneOf,\n  RangeBucket,\n  IncludeMissingValuesOptions,\n  ValueAggregation,\n  ValueAggregationOptionsOneOf,\n  RangeAggregation,\n  ScalarAggregation,\n  DateHistogramAggregation,\n  NestedAggregationItem,\n  NestedAggregationItemKindOneOf,\n  NestedAggregation,\n  GroupByAggregation,\n  GroupByAggregationKindOneOf,\n  SearchDetails,\n  SearchInvoicesResponse,\n  PagingMetadataV2,\n  AggregationData,\n  ValueAggregationResult,\n  RangeAggregationResult,\n  NestedAggregationResults,\n  NestedAggregationResultsResultOneOf,\n  ValueResults,\n  RangeResults,\n  AggregationResultsScalarResult,\n  NestedValueAggregationResult,\n  ValueResult,\n  RangeResult,\n  ScalarResult,\n  NestedResultValue,\n  NestedResultValueResultOneOf,\n  Results,\n  DateHistogramResult,\n  GroupByValueResults,\n  DateHistogramResults,\n  NestedResults,\n  AggregationResults,\n  AggregationResultsResultOneOf,\n  SendInvoiceRequest,\n  SendInvoiceResponse,\n  SendResult,\n  PublishInvoiceRequest,\n  PublishInvoiceResponse,\n  VoidInvoiceRequest,\n  VoidInvoiceResponse,\n  ArchiveInvoiceRequest,\n  ArchiveInvoiceResponse,\n  UnarchiveInvoiceRequest,\n  UnarchiveInvoiceResponse,\n  InitiatePaymentRequest,\n  InitiatePaymentResponse,\n  EnableInvoicePaymentsRequest,\n  EnableInvoicePaymentsResponse,\n  GeneratePdfDocumentRequest,\n  GeneratePdfDocumentResponse,\n  MarkViewedRequest,\n  MarkViewedResponse,\n  CalculateInvoiceRequest,\n  CalculateInvoiceResponse,\n  CalculationErrors,\n  CalculationErrorsShippingCalculationErrorOneOf,\n  Details,\n  DetailsKindOneOf,\n  ApplicationError,\n  ValidationError,\n  FieldViolation,\n  SystemError,\n  CarrierErrors,\n  CarrierError,\n  GetLatestInvoiceNumberRequest,\n  GetLatestInvoiceNumberResponse,\n  BulkCreateInvoicesRequest,\n  BulkCreateInvoicesResponse,\n  ItemMetadata,\n  BulkInvoiceResult,\n  BulkActionMetadata,\n  BulkUpdateInvoicesRequest,\n  MaskedInvoice,\n  BulkUpdateInvoicesResponse,\n  BulkUpdateInvoicesResponseBulkInvoiceResult,\n  BulkDeleteInvoicesRequest,\n  BulkDeleteInvoicesResponse,\n  BulkDeleteInvoicesResponseBulkInvoiceResult,\n  BulkUpdateInvoiceTagsRequest,\n  BulkUpdateInvoiceTagsResponse,\n  BulkUpdateInvoiceTagsResult,\n  BulkUpdateInvoiceTagsByFilterRequest,\n  BulkUpdateInvoiceTagsByFilterResponse,\n  Empty,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  RestoreInfo,\n  EntityUpdatedEvent,\n  EntityDeletedEvent,\n  ActionEvent,\n  MessageEnvelope,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  AccountInfo,\n  UpdateInvoice,\n  InvoicesQueryResult,\n  InvoicesQueryBuilder,\n  InvoiceQuerySpec,\n  InvoiceSearchSpec,\n  SendInvoiceOptions,\n  CalculateInvoiceOptions,\n  GetLatestInvoiceNumberOptions,\n  BulkCreateInvoicesOptions,\n  BulkUpdateInvoicesOptions,\n  BulkUpdateInvoiceTagsOptions,\n  BulkUpdateInvoiceTagsByFilterOptions,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\nexport { utils } from './invoices-invoices-v4-invoice-invoices.universal.js';\nexport {\n  StatusWithLiterals,\n  StatusQualifierWithLiterals,\n  ActionWithLiterals,\n  ReferenceTypeWithLiterals,\n  VatTypeWithLiterals,\n  LineItemItemTypeWithLiterals,\n  LineItemDiscountDiscountTypeWithLiterals,\n  PresetTypeWithLiterals,\n  AdditionalFeeSourceWithLiterals,\n  DiscountTypeWithLiterals,\n  DepositTypeWithLiterals,\n  PaymentTypeWithLiterals,\n  PaymentStatusWithLiterals,\n  ReceiptTypeWithLiterals,\n  NodeTypeWithLiterals,\n  WidthTypeWithLiterals,\n  PluginContainerDataAlignmentWithLiterals,\n  ButtonDataTypeWithLiterals,\n  TargetWithLiterals,\n  TextAlignmentWithLiterals,\n  LineStyleWithLiterals,\n  WidthWithLiterals,\n  DividerDataAlignmentWithLiterals,\n  ViewModeWithLiterals,\n  LayoutTypeWithLiterals,\n  OrientationWithLiterals,\n  CropWithLiterals,\n  ThumbnailsAlignmentWithLiterals,\n  GIFTypeWithLiterals,\n  SourceWithLiterals,\n  StylesPositionWithLiterals,\n  MapTypeWithLiterals,\n  ViewRoleWithLiterals,\n  VoteRoleWithLiterals,\n  PollLayoutTypeWithLiterals,\n  PollLayoutDirectionWithLiterals,\n  BackgroundTypeWithLiterals,\n  DecorationTypeWithLiterals,\n  FontTypeWithLiterals,\n  PositionWithLiterals,\n  AspectRatioWithLiterals,\n  ResizingWithLiterals,\n  PlacementWithLiterals,\n  TypeWithLiterals,\n  AlignmentWithLiterals,\n  LayoutWithLiterals,\n  AppTypeWithLiterals,\n  InitialExpandedItemsWithLiterals,\n  DirectionWithLiterals,\n  VerticalAlignmentWithLiterals,\n  NullValueWithLiterals,\n  ScalingWithLiterals,\n  ImagePositionWithLiterals,\n  OriginWithLiterals,\n  VerticalAlignmentAlignmentWithLiterals,\n  ResponsivenessBehaviourWithLiterals,\n  DesignTargetWithLiterals,\n  DocumentStatusWithLiterals,\n  FileStateWithLiterals,\n  ErrorTypeWithLiterals,\n  SortOrderWithLiterals,\n  SortTypeWithLiterals,\n  SortDirectionWithLiterals,\n  MissingValuesWithLiterals,\n  ScalarTypeWithLiterals,\n  NestedAggregationTypeWithLiterals,\n  IntervalWithLiterals,\n  AggregationTypeWithLiterals,\n  ModeWithLiterals,\n  SendErrorTypeWithLiterals,\n  RuleTypeWithLiterals,\n  WebhookIdentityTypeWithLiterals,\n  CreateInvoiceApplicationErrors,\n  CreateInvoiceValidationErrors,\n  GetInvoiceApplicationErrors,\n  UpdateInvoiceApplicationErrors,\n  UpdateInvoiceValidationErrors,\n  DeleteInvoiceApplicationErrors,\n  QueryInvoicesApplicationErrors,\n  SendInvoiceApplicationErrors,\n  PublishInvoiceApplicationErrors,\n  VoidInvoiceApplicationErrors,\n  ArchiveInvoiceApplicationErrors,\n  UnarchiveInvoiceApplicationErrors,\n  InitiatePaymentApplicationErrors,\n  EnableInvoicePaymentsApplicationErrors,\n  GeneratePdfDocumentApplicationErrors,\n  CalculateInvoiceApplicationErrors,\n  BulkCreateInvoicesApplicationErrors,\n  BulkUpdateInvoicesApplicationErrors,\n  BulkUpdateInvoiceTagsApplicationErrors,\n  BulkUpdateInvoiceTagsByFilterApplicationErrors,\n  CommonQueryWithEntityContext,\n  InvoiceQuery,\n  CommonSearchWithEntityContext,\n  InvoiceSearch,\n} from './invoices-invoices-v4-invoice-invoices.universal.js';\n"]}