From bb0421ff4959dadee5b0f6fc14dcd93ea692e34f Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Wed, 4 Sep 2024 01:29:28 +0000 Subject: [PATCH] ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.390.1 --- .gitignore | 2 + .speakeasy/gen.lock | 63 +- .speakeasy/workflow.lock | 10 +- FUNCTIONS.md | 104 +++ README.md | 111 ++- RELEASES.md | 12 +- USAGE.md | 2 +- .../calculateproductionapiservicecost.md | 7 + .../operations/canvasinitimageuploadoutput.md | 7 + .../operations/createdatasetrequestbody.md | 9 + .../operations/createdatasetresponse.md | 13 + .../operations/createdatasetresponsebody.md | 7 + .../operations/creategenerationrequestbody.md | 7 + .../operations/creategenerationresponse.md | 13 + .../creategenerationresponsebody.md | 7 + .../createlcmgenerationrequestbody.md | 10 + .../operations/createlcmgenerationresponse.md | 13 + .../createlcmgenerationresponsebody.md | 7 + .../operations/createmodelrequestbody.md | 11 + .../models/operations/createmodelresponse.md | 13 + .../operations/createmodelresponsebody.md | 7 + .../createsvdmotiongenerationrequestbody.md | 9 + .../createsvdmotiongenerationresponse.md | 13 + .../createsvdmotiongenerationresponsebody.md | 7 + .../createtexturegenerationrequestbody.md | 7 + .../createtexturegenerationresponse.md | 13 + .../createtexturegenerationresponsebody.md | 7 + .../createuniversalupscalerjobrequestbody.md | 7 + .../createuniversalupscalerjobresponse.md | 13 + .../createuniversalupscalerjobresponsebody.md | 7 + .../createvariationnobgrequestbody.md | 9 + .../operations/createvariationnobgresponse.md | 13 + .../createvariationnobgresponsebody.md | 7 + .../createvariationunzoomrequestbody.md | 7 + .../createvariationunzoomresponse.md | 13 + .../createvariationunzoomresponsebody.md | 7 + .../createvariationupscalerequestbody.md | 9 + .../createvariationupscaleresponse.md | 13 + .../createvariationupscaleresponsebody.md | 7 + ...reatevariationupscalesdupscalejoboutput.md | 7 + docs/sdk/models/operations/custommodels.md | 7 + .../operations/datasetgenuploadoutput.md | 7 + docs/sdk/models/operations/datasetimages.md | 7 + docs/sdk/models/operations/datasets.md | 7 + .../models/operations/datasetuploadoutput.md | 7 + .../operations/delete3dmodelbyidrequest.md | 9 + .../delete3dmodelbyidrequestbody.md | 7 + .../operations/delete3dmodelbyidresponse.md | 13 + .../delete3dmodelbyidresponsebody.md | 7 + .../operations/deletedatasetbyiddatasets.md | 7 + .../operations/deletedatasetbyidrequest.md | 9 + .../operations/deletedatasetbyidresponse.md | 13 + .../deletedatasetbyidresponsebody.md | 7 + .../operations/deletegenerationbyidrequest.md | 9 + .../deletegenerationbyidresponse.md | 13 + .../deletegenerationbyidresponsebody.md | 7 + .../operations/deleteinitimagebyidrequest.md | 9 + .../operations/deleteinitimagebyidresponse.md | 13 + .../deleteinitimagebyidresponsebody.md | 7 + .../operations/deletemodelbyidrequest.md | 9 + .../operations/deletemodelbyidresponse.md | 13 + .../operations/deletemodelbyidresponsebody.md | 7 + .../deletetexturegenerationbyidrequest.md | 9 + .../deletetexturegenerationbyidrequestbody.md | 7 + .../deletetexturegenerationbyidresponse.md | 13 + ...deletetexturegenerationbyidresponsebody.md | 7 + docs/sdk/models/operations/elements.md | 7 + docs/sdk/models/operations/generatedimages.md | 7 + .../generatedimagevariationgeneric.md | 7 + .../models/operations/generationelements.md | 7 + docs/sdk/models/operations/generations.md | 7 + .../operations/getdatasetbyiddatasets.md | 7 + .../operations/getdatasetbyidrequest.md | 9 + .../operations/getdatasetbyidresponse.md | 13 + .../operations/getdatasetbyidresponsebody.md | 7 + ...ationbyidgeneratedimagevariationgeneric.md | 7 + .../getgenerationbyidgenerations.md | 7 + .../operations/getgenerationbyidloras.md | 7 + .../operations/getgenerationbyidrequest.md | 9 + .../operations/getgenerationbyidresponse.md | 13 + .../getgenerationbyidresponsebody.md | 7 + .../getgenerationsbyuseridgeneratedimages.md | 7 + ...sbyuseridgeneratedimagevariationgeneric.md | 7 + ...etgenerationsbyuseridgenerationelements.md | 7 + .../getgenerationsbyuseridgenerations.md | 7 + .../getgenerationsbyuseridrequest.md | 9 + .../getgenerationsbyuseridresponse.md | 13 + .../getgenerationsbyuseridresponsebody.md | 7 + .../operations/getinitimagebyidinitimages.md | 7 + .../operations/getinitimagebyidrequest.md | 9 + .../operations/getinitimagebyidresponse.md | 13 + .../getinitimagebyidresponsebody.md | 7 + .../operations/getmodelbyidcustommodels.md | 7 + .../models/operations/getmodelbyidrequest.md | 9 + .../models/operations/getmodelbyidresponse.md | 13 + .../operations/getmodelbyidresponsebody.md | 7 + .../models/operations/getuserselfresponse.md | 13 + .../operations/getuserselfresponsebody.md | 7 + .../operations/getvariationbyidrequest.md | 9 + .../operations/getvariationbyidresponse.md | 13 + .../getvariationbyidresponsebody.md | 7 + docs/sdk/models/operations/initimages.md | 7 + .../operations/initimageuploadoutput.md | 7 + .../models/operations/lcmgenerationoutput.md | 7 + .../models/operations/listelementsresponse.md | 13 + .../operations/listelementsresponsebody.md | 7 + .../listplatformmodelscustommodels.md | 7 + .../listplatformmodelsgeneratedimages.md | 7 + .../operations/listplatformmodelsresponse.md | 13 + .../listplatformmodelsresponsebody.md | 7 + docs/sdk/models/operations/loras.md | 7 + docs/sdk/models/operations/modelassets.md | 7 + .../modelassettexturegenerations.md | 7 + .../operations/modelassetuploadoutput.md | 7 + .../operations/motionsvdgenerationoutput.md | 7 + docs/sdk/models/operations/objectt.md | 7 + ...ormalchemyupscalelcmlcmgenerationoutput.md | 7 + .../performalchemyupscalelcmrequestbody.md | 10 + .../performalchemyupscalelcmresponse.md | 13 + .../performalchemyupscalelcmresponsebody.md | 7 + ...performinpaintinglcmlcmgenerationoutput.md | 7 + .../performinpaintinglcmrequestbody.md | 11 + .../performinpaintinglcmresponse.md | 13 + .../performinpaintinglcmresponsebody.md | 7 + ...performinstantrefinelcmgenerationoutput.md | 7 + .../performinstantrefinerequestbody.md | 10 + .../performinstantrefineresponse.md | 13 + .../performinstantrefineresponsebody.md | 7 + .../operations/pricingcalculatorobject.md | 7 + ...ricingcalculatorpricingcalculatorobject.md | 8 + ...alculatorpricingcalculatorrequestobject.md | 7 + ...icingcalculatorrequestrequestbodyobject.md | 7 + ...orrequestrequestbodyserviceparamsobject.md | 7 + ...odyserviceparamstexturegenerationobject.md | 10 + ...odyserviceparamsuniversalupscalerobject.md | 10 + .../pricingcalculatorrequestbody.md | 7 + .../operations/pricingcalculatorresponse.md | 13 + .../pricingcalculatorresponsebody.md | 7 + .../operations/promptgenerationoutput.md | 7 + .../operations/promptimproverequestbody.md | 9 + .../operations/promptimproveresponse.md | 13 + .../operations/promptimproveresponsebody.md | 7 + .../promptrandompromptgenerationoutput.md | 7 + .../models/operations/promptrandomresponse.md | 13 + .../operations/promptrandomresponsebody.md | 7 + .../models/operations/sdgenerationoutput.md | 7 + .../sdk/models/operations/sdtrainingoutput.md | 7 + docs/sdk/models/operations/sdunzoomoutput.md | 7 + .../models/operations/sdupscalejoboutput.md | 7 + .../operations/texturegenerationjoboutput.md | 7 + .../sdk/models/operations/transparencytype.md | 7 + .../operations/universalupscaleroutput.md | 7 + .../uploadcanvasinitimagerequestbody.md | 10 + .../uploadcanvasinitimageresponse.md | 13 + .../uploadcanvasinitimageresponsebody.md | 7 + .../uploaddatasetimagefromgenrequest.md | 12 + .../uploaddatasetimagefromgenrequestbody.md | 9 + .../uploaddatasetimagefromgenresponse.md | 13 + .../uploaddatasetimagefromgenresponsebody.md | 7 + .../operations/uploaddatasetimagerequest.md | 12 + .../uploaddatasetimagerequestbody.md | 9 + .../operations/uploaddatasetimageresponse.md | 13 + .../uploaddatasetimageresponsebody.md | 7 + .../operations/uploadinitimagerequestbody.md | 9 + .../operations/uploadinitimageresponse.md | 13 + .../operations/uploadinitimageresponsebody.md | 7 + .../operations/uploadmodelassetrequestbody.md | 7 + .../operations/uploadmodelassetresponse.md | 13 + .../uploadmodelassetresponsebody.md | 7 + docs/sdk/models/operations/userdetails.md | 7 + docs/sdk/models/operations/users.md | 7 + docs/sdk/models/shared/canvasrequesttype.md | 7 + docs/sdk/models/shared/controlnetinput.md | 7 + docs/sdk/models/shared/controlnettype.md | 7 + docs/sdk/models/shared/custommodeltype.md | 7 + docs/sdk/models/shared/elementinput.md | 7 + docs/sdk/models/shared/initimagetype.md | 7 + docs/sdk/models/shared/jobstatus.md | 7 + docs/sdk/models/shared/lcmgenerationstyle.md | 7 + .../shared/pricingcalculatorservices.md | 7 + .../models/shared/sdgenerationschedulers.md | 7 + docs/sdk/models/shared/sdgenerationstyle.md | 7 + docs/sdk/models/shared/sdversions.md | 7 + docs/sdk/models/shared/security.md | 9 + docs/sdk/models/shared/strength.md | 7 + docs/sdk/models/shared/strengthtype.md | 7 + .../models/shared/universalupscalerstyle.md | 7 + docs/sdk/models/shared/variationtype.md | 7 + docs/sdks/dataset/README.md | 176 ++++- docs/sdks/elements/README.md | 34 +- docs/sdks/image/README.md | 139 +++- docs/sdks/initimages/README.md | 142 +++- docs/sdks/leonardo/README.md | 6 +- docs/sdks/models/README.md | 141 +++- docs/sdks/motion/README.md | 38 +- docs/sdks/pricingcalculator/README.md | 36 +- docs/sdks/prompt/README.md | 69 +- docs/sdks/realtimecanvas/README.md | 154 +++- docs/sdks/texture/README.md | 71 +- docs/sdks/threedmodelassets/README.md | 71 +- docs/sdks/user/README.md | 34 +- docs/sdks/variation/README.md | 176 ++++- gen.yaml | 2 +- jsr.json | 2 +- package-lock.json | 37 +- package.json | 3 +- src/core.ts | 13 + src/funcs/datasetCreateDataset.ts | 127 ++++ src/funcs/datasetDeleteDatasetById.ts | 133 ++++ src/funcs/datasetGetDatasetById.ts | 132 ++++ src/funcs/datasetUploadDatasetImage.ts | 139 ++++ src/funcs/datasetUploadDatasetImageFromGen.ts | 139 ++++ src/funcs/elementsListElements.ts | 109 +++ src/funcs/imageCreateGeneration.ts | 128 ++++ src/funcs/imageDeleteGenerationById.ts | 133 ++++ src/funcs/imageGetGenerationById.ts | 133 ++++ src/funcs/imageGetGenerationsByUserId.ts | 149 ++++ src/funcs/initImagesDeleteInitImageById.ts | 133 ++++ src/funcs/initImagesGetInitImageById.ts | 133 ++++ src/funcs/initImagesUploadCanvasInitImage.ts | 128 ++++ src/funcs/initImagesUploadInitImage.ts | 127 ++++ src/funcs/modelsCreateModel.ts | 127 ++++ src/funcs/modelsDeleteModelById.ts | 132 ++++ src/funcs/modelsGetModelById.ts | 132 ++++ src/funcs/modelsListPlatformModels.ts | 110 +++ src/funcs/motionCreateSVDMotionGeneration.ts | 129 ++++ .../pricingCalculatorPricingCalculator.ts | 128 ++++ src/funcs/promptPromptImprove.ts | 127 ++++ src/funcs/promptPromptRandom.ts | 109 +++ .../realtimeCanvasCreateLCMGeneration.ts | 129 ++++ .../realtimeCanvasPerformAlchemyUpscaleLCM.ts | 129 ++++ .../realtimeCanvasPerformInpaintingLCM.ts | 129 ++++ .../realtimeCanvasPerformInstantRefine.ts | 129 ++++ src/funcs/textureCreateTextureGeneration.ts | 129 ++++ .../textureDeleteTextureGenerationById.ts | 137 ++++ .../threeDModelAssetsDelete3DModelById.ts | 136 ++++ .../threeDModelAssetsUploadModelAsset.ts | 128 ++++ src/funcs/userGetUserSelf.ts | 109 +++ .../variationCreateUniversalUpscalerJob.ts | 128 ++++ src/funcs/variationCreateVariationNoBG.ts | 128 ++++ src/funcs/variationCreateVariationUnzoom.ts | 129 ++++ src/funcs/variationCreateVariationUpscale.ts | 129 ++++ src/funcs/variationGetVariationById.ts | 133 ++++ src/index.ts | 1 + src/lib/config.ts | 8 +- src/lib/dlv.ts | 53 ++ src/lib/files.ts | 58 ++ src/lib/http.ts | 693 +++++++----------- src/lib/logger.ts | 9 + src/lib/matchers.ts | 305 ++++++++ src/lib/retries.ts | 43 +- src/lib/schemas.ts | 18 + src/lib/sdks.ts | 229 +++++- src/lib/security.ts | 23 +- src/sdk/dataset.ts | 400 +--------- src/sdk/elements.ts | 87 +-- src/sdk/image.ts | 328 +-------- src/sdk/initimages.ts | 312 +------- src/sdk/models.ts | 301 +------- src/sdk/models/errors/httpclienterrors.ts | 62 ++ src/sdk/models/errors/index.ts | 1 + src/sdk/models/errors/sdkvalidationerror.ts | 14 +- .../models/operations/pricingcalculator.ts | 7 + src/sdk/motion.ts | 106 +-- src/sdk/pricingcalculator.ts | 102 +-- src/sdk/prompt.ts | 157 +--- src/sdk/realtimecanvas.ts | 314 +------- src/sdk/sdk.ts | 29 - src/sdk/texture.ts | 180 +---- src/sdk/threedmodelassets.ts | 176 +---- src/sdk/types/constdatetime.ts | 15 + src/sdk/types/fp.ts | 50 ++ src/sdk/types/index.ts | 1 + src/sdk/types/operations.ts | 88 ++- src/sdk/types/streams.ts | 21 + src/sdk/user.ts | 87 +-- src/sdk/variation.ts | 385 +--------- 277 files changed, 8995 insertions(+), 3517 deletions(-) create mode 100644 FUNCTIONS.md create mode 100644 src/core.ts create mode 100644 src/funcs/datasetCreateDataset.ts create mode 100644 src/funcs/datasetDeleteDatasetById.ts create mode 100644 src/funcs/datasetGetDatasetById.ts create mode 100644 src/funcs/datasetUploadDatasetImage.ts create mode 100644 src/funcs/datasetUploadDatasetImageFromGen.ts create mode 100644 src/funcs/elementsListElements.ts create mode 100644 src/funcs/imageCreateGeneration.ts create mode 100644 src/funcs/imageDeleteGenerationById.ts create mode 100644 src/funcs/imageGetGenerationById.ts create mode 100644 src/funcs/imageGetGenerationsByUserId.ts create mode 100644 src/funcs/initImagesDeleteInitImageById.ts create mode 100644 src/funcs/initImagesGetInitImageById.ts create mode 100644 src/funcs/initImagesUploadCanvasInitImage.ts create mode 100644 src/funcs/initImagesUploadInitImage.ts create mode 100644 src/funcs/modelsCreateModel.ts create mode 100644 src/funcs/modelsDeleteModelById.ts create mode 100644 src/funcs/modelsGetModelById.ts create mode 100644 src/funcs/modelsListPlatformModels.ts create mode 100644 src/funcs/motionCreateSVDMotionGeneration.ts create mode 100644 src/funcs/pricingCalculatorPricingCalculator.ts create mode 100644 src/funcs/promptPromptImprove.ts create mode 100644 src/funcs/promptPromptRandom.ts create mode 100644 src/funcs/realtimeCanvasCreateLCMGeneration.ts create mode 100644 src/funcs/realtimeCanvasPerformAlchemyUpscaleLCM.ts create mode 100644 src/funcs/realtimeCanvasPerformInpaintingLCM.ts create mode 100644 src/funcs/realtimeCanvasPerformInstantRefine.ts create mode 100644 src/funcs/textureCreateTextureGeneration.ts create mode 100644 src/funcs/textureDeleteTextureGenerationById.ts create mode 100644 src/funcs/threeDModelAssetsDelete3DModelById.ts create mode 100644 src/funcs/threeDModelAssetsUploadModelAsset.ts create mode 100644 src/funcs/userGetUserSelf.ts create mode 100644 src/funcs/variationCreateUniversalUpscalerJob.ts create mode 100644 src/funcs/variationCreateVariationNoBG.ts create mode 100644 src/funcs/variationCreateVariationUnzoom.ts create mode 100644 src/funcs/variationCreateVariationUpscale.ts create mode 100644 src/funcs/variationGetVariationById.ts create mode 100644 src/lib/dlv.ts create mode 100644 src/lib/files.ts create mode 100644 src/lib/logger.ts create mode 100644 src/lib/matchers.ts create mode 100644 src/sdk/models/errors/httpclienterrors.ts create mode 100644 src/sdk/types/constdatetime.ts create mode 100644 src/sdk/types/fp.ts create mode 100644 src/sdk/types/streams.ts diff --git a/.gitignore b/.gitignore index 5ec83d3d..4327024e 100755 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +/funcs +/core.* /esm /dist /.tshy diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index b99900f2..c3972b58 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,12 +1,12 @@ lockVersion: 2.0.0 id: edadaac9-e645-4ef4-a6c7-a1f73bc19385 management: - docChecksum: 3a41efc27f0622ed34034d315390d0f6 + docChecksum: 4f2a40193a1ee14be648834f76a40ec4 docVersion: v1.0.0 - speakeasyVersion: 1.346.3 - generationVersion: 2.379.6 - releaseVersion: 4.14.2 - configChecksum: 3926946790c8e7351f6d24ad3d3bae29 + speakeasyVersion: 1.390.1 + generationVersion: 2.409.0 + releaseVersion: 4.15.0 + configChecksum: b84f01af0008ac1b7a7605a35024c1b6 repoURL: https://github.com/Leonardo-Interactive/leonardo-ts-sdk.git repoSubDirectory: . installationURL: https://github.com/Leonardo-Interactive/leonardo-ts-sdk @@ -14,13 +14,14 @@ management: features: typescript: additionalDependencies: 0.1.0 - constsAndDefaults: 0.1.5 - core: 3.11.10 + constsAndDefaults: 0.1.11 + core: 3.16.0 defaultEnabledRetries: 0.1.0 deprecations: 2.81.1 devContainers: 2.90.0 + envVarSecurityUsage: 0.1.1 flattening: 2.81.1 - globalSecurity: 2.82.9 + globalSecurity: 2.82.11 globalSecurityCallbacks: 0.1.0 globalSecurityFlattening: 0.1.0 globalServerURLs: 2.82.4 @@ -29,6 +30,42 @@ features: retries: 2.83.0 sdkHooks: 0.1.0 generatedFiles: + - src/funcs/initImagesDeleteInitImageById.ts + - src/funcs/initImagesGetInitImageById.ts + - src/funcs/initImagesUploadCanvasInitImage.ts + - src/funcs/initImagesUploadInitImage.ts + - src/funcs/datasetCreateDataset.ts + - src/funcs/datasetDeleteDatasetById.ts + - src/funcs/datasetGetDatasetById.ts + - src/funcs/datasetUploadDatasetImage.ts + - src/funcs/datasetUploadDatasetImageFromGen.ts + - src/funcs/elementsListElements.ts + - src/funcs/imageCreateGeneration.ts + - src/funcs/imageDeleteGenerationById.ts + - src/funcs/imageGetGenerationById.ts + - src/funcs/imageGetGenerationsByUserId.ts + - src/funcs/realtimeCanvasCreateLCMGeneration.ts + - src/funcs/realtimeCanvasPerformAlchemyUpscaleLCM.ts + - src/funcs/realtimeCanvasPerformInpaintingLCM.ts + - src/funcs/realtimeCanvasPerformInstantRefine.ts + - src/funcs/motionCreateSVDMotionGeneration.ts + - src/funcs/textureCreateTextureGeneration.ts + - src/funcs/textureDeleteTextureGenerationById.ts + - src/funcs/userGetUserSelf.ts + - src/funcs/modelsCreateModel.ts + - src/funcs/modelsDeleteModelById.ts + - src/funcs/modelsGetModelById.ts + - src/funcs/modelsListPlatformModels.ts + - src/funcs/threeDModelAssetsDelete3DModelById.ts + - src/funcs/threeDModelAssetsUploadModelAsset.ts + - src/funcs/pricingCalculatorPricingCalculator.ts + - src/funcs/promptPromptImprove.ts + - src/funcs/promptPromptRandom.ts + - src/funcs/variationCreateUniversalUpscalerJob.ts + - src/funcs/variationCreateVariationNoBG.ts + - src/funcs/variationCreateVariationUnzoom.ts + - src/funcs/variationCreateVariationUpscale.ts + - src/funcs/variationGetVariationById.ts - src/sdk/initimages.ts - src/sdk/dataset.ts - src/sdk/elements.ts @@ -45,15 +82,21 @@ generatedFiles: - src/sdk/sdk.ts - .eslintrc.cjs - .npmignore + - FUNCTIONS.md - RUNTIMES.md - jsr.json - package.json + - src/core.ts - src/index.ts - src/lib/base64.ts - src/lib/config.ts + - src/lib/dlv.ts - src/lib/encodings.ts + - src/lib/files.ts - src/lib/http.ts - src/lib/is-plain-object.ts + - src/lib/logger.ts + - src/lib/matchers.ts - src/lib/primitives.ts - src/lib/retries.ts - src/lib/schemas.ts @@ -61,13 +104,17 @@ generatedFiles: - src/lib/security.ts - src/lib/url.ts - src/sdk/index.ts + - src/sdk/models/errors/httpclienterrors.ts - src/sdk/models/errors/sdkerror.ts - src/sdk/models/errors/sdkvalidationerror.ts - src/sdk/types/blobs.ts + - src/sdk/types/constdatetime.ts - src/sdk/types/enums.ts + - src/sdk/types/fp.ts - src/sdk/types/index.ts - src/sdk/types/operations.ts - src/sdk/types/rfcdate.ts + - src/sdk/types/streams.ts - tsconfig.json - src/sdk/models/operations/deleteinitimagebyid.ts - src/sdk/models/operations/getinitimagebyid.ts diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 8dcb6d39..ee72e3bb 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,9 +1,9 @@ -speakeasyVersion: 1.346.3 +speakeasyVersion: 1.390.1 sources: my-source: sourceNamespace: my-source - sourceRevisionDigest: sha256:92acfd300c5c59ac415f8ff984266de3316dbc338743ab4989940710cc40a8b5 - sourceBlobDigest: sha256:d1c8c276b2380d236351bd02a9d6243d47c810ee2260043b7ae4c443be3f77ab + sourceRevisionDigest: sha256:68e860e0700bdd24e58887950df28e1cd3e479f87591681c86693ca856b68d91 + sourceBlobDigest: sha256:7795ce93c2cd2bed48f77a05eead55d73ce1d93227c230ae806913736ad38d19 tags: - latest - main @@ -11,8 +11,8 @@ targets: leonardo-ts-sdk: source: my-source sourceNamespace: my-source - sourceRevisionDigest: sha256:92acfd300c5c59ac415f8ff984266de3316dbc338743ab4989940710cc40a8b5 - sourceBlobDigest: sha256:d1c8c276b2380d236351bd02a9d6243d47c810ee2260043b7ae4c443be3f77ab + sourceRevisionDigest: sha256:68e860e0700bdd24e58887950df28e1cd3e479f87591681c86693ca856b68d91 + sourceBlobDigest: sha256:7795ce93c2cd2bed48f77a05eead55d73ce1d93227c230ae806913736ad38d19 outLocation: ./ workflow: workflowVersion: 1.0.0 diff --git a/FUNCTIONS.md b/FUNCTIONS.md new file mode 100644 index 00000000..27fff172 --- /dev/null +++ b/FUNCTIONS.md @@ -0,0 +1,104 @@ +# Standalone Functions + +> [!NOTE] +> This section is useful if you are using a bundler and targetting browsers and +> runtimes where the size of an application affects performance and load times. + +Every method in this SDK is also available as a standalone function. This +alternative API is suitable when targetting the browser or serverless runtimes +and using a bundler to build your application since all unused functionality +will be tree-shaken away. This includes code for unused methods, Zod schemas, +encoding helpers and response handlers. The result is dramatically smaller +impact on the application's final bundle size which grows very slowly as you use +more and more functionality from this SDK. + +Calling methods through the main SDK class remains a valid and generally more +more ergonomic option. Standalone functions represent an optimisation for a +specific category of applications. + +## Example + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { initImagesDeleteInitImageById } from "@leonardo-ai/sdk/funcs/initImagesDeleteInitImageById.js"; +import { SDKValidationError } from "@leonardo-ai/sdk/sdk/models/errors/sdkvalidationerror.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await initImagesDeleteInitImageById(leonardo, ""); + + switch (true) { + case res.ok: + // The success case will be handled outside of the switch block + break; + case res.error instanceof SDKValidationError: + // Pretty-print validation errors. + return console.log(res.error.pretty()); + case res.error instanceof Error: + return console.log(res.error); + default: + // TypeScript's type checking will fail on the following line if the above + // cases were not exhaustive. + res.error satisfies never; + throw new Error("Assertion failed: expected error checks to be exhaustive: " + res.error); + } + + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + +## Result types + +Standalone functions differ from SDK methods in that they return a +`Result` type to capture _known errors_ and document them using +the type system. By avoiding throwing errors, application code maintains clear +control flow and error-handling become part of the regular flow of application +code. + +> We use the term "known errors" because standalone functions, and JavaScript +> code in general, can still throw unexpected errors such as `TypeError`s, +> `RangeError`s and `DOMException`s. Exhaustively catching all errors may be +> something this SDK addresses in the future. Nevertheless, there is still a lot +> of benefit from capturing most errors and turning them into values. + +The second reason for this style of programming is because these functions will +typically be used in front-end applications where exception throwing is +sometimes discouraged or considered unidiomatic. React and similar ecosystems +and libraries tend to promote this style of programming so that components +render useful content under all states (loading, success, error and so on). + +The general pattern when calling standalone functions looks like this: + +```typescript +import { Core } from ""; +import { fetchSomething } from "/funcs/fetchSomething.js"; + +const client = new Core(); + +async function run() { + const result = await fetchSomething(client, { id: "123" }); + if (!result.ok) { + // You can throw the error or handle it. It's your choice now. + throw result.error; + } + + console.log(result.value); +} + +run(); +``` + +Notably, `result.error` above will have an explicit type compared to a try-catch +variation where the error in the catch block can only be of type `unknown` (or +`any` depending on your TypeScript settings). \ No newline at end of file diff --git a/README.md b/README.md index 5e1c072c..3bb6b74a 100755 --- a/README.md +++ b/README.md @@ -7,9 +7,33 @@ + +## Summary + +Rest Endpoints: Leonardo.Ai API OpenAPI specification. + + + +## Table of Contents + +* [SDK Installation](#sdk-installation) +* [Requirements](#requirements) +* [SDK Example Usage](#sdk-example-usage) +* [Available Resources and Operations](#available-resources-and-operations) +* [Standalone functions](#standalone-functions) +* [Retries](#retries) +* [Error Handling](#error-handling) +* [Server Selection](#server-selection) +* [Custom HTTP Client](#custom-http-client) +* [Authentication](#authentication) +* [Debugging](#debugging) + + ## SDK Installation +The SDK can be installed with either [npm](https://www.npmjs.com/), [pnpm](https://pnpm.io/), [bun](https://bun.sh/) or [yarn](https://classic.yarnpkg.com/en/) package managers. + ### NPM ```bash @@ -55,7 +79,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); // Handle the result console.log(result); @@ -174,7 +198,7 @@ const leonardo = new Leonardo({ async function run() { let result; try { - result = await leonardo.initImages.deleteInitImageById(""); + result = await leonardo.initImages.deleteInitImageById(""); } catch (err) { switch (true) { case err instanceof SDKValidationError: { @@ -272,7 +296,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); // Handle the result console.log(result); @@ -296,7 +320,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); // Handle the result console.log(result); @@ -329,7 +353,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); // Handle the result console.log(result); @@ -346,6 +370,62 @@ run(); For supported JavaScript runtimes, please consult [RUNTIMES.md](RUNTIMES.md). + +## Standalone functions + +All the methods listed above are available as standalone functions. These +functions are ideal for use in applications running in the browser, serverless +runtimes or other environments where application bundle size is a primary +concern. When using a bundler to build your application, all unused +functionality will be either excluded from the final bundle or tree-shaken away. + +To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md). + +
+ +Available standalone functions + +- [datasetCreateDataset](docs/sdks/dataset/README.md#createdataset) +- [datasetDeleteDatasetById](docs/sdks/dataset/README.md#deletedatasetbyid) +- [datasetGetDatasetById](docs/sdks/dataset/README.md#getdatasetbyid) +- [datasetUploadDatasetImageFromGen](docs/sdks/dataset/README.md#uploaddatasetimagefromgen) +- [datasetUploadDatasetImage](docs/sdks/dataset/README.md#uploaddatasetimage) +- [elementsListElements](docs/sdks/elements/README.md#listelements) +- [imageCreateGeneration](docs/sdks/image/README.md#creategeneration) +- [imageDeleteGenerationById](docs/sdks/image/README.md#deletegenerationbyid) +- [imageGetGenerationById](docs/sdks/image/README.md#getgenerationbyid) +- [imageGetGenerationsByUserId](docs/sdks/image/README.md#getgenerationsbyuserid) +- [initImagesDeleteInitImageById](docs/sdks/initimages/README.md#deleteinitimagebyid) +- [initImagesGetInitImageById](docs/sdks/initimages/README.md#getinitimagebyid) +- [initImagesUploadCanvasInitImage](docs/sdks/initimages/README.md#uploadcanvasinitimage) +- [initImagesUploadInitImage](docs/sdks/initimages/README.md#uploadinitimage) +- [modelsCreateModel](docs/sdks/models/README.md#createmodel) +- [modelsDeleteModelById](docs/sdks/models/README.md#deletemodelbyid) +- [modelsGetModelById](docs/sdks/models/README.md#getmodelbyid) +- [modelsListPlatformModels](docs/sdks/models/README.md#listplatformmodels) +- [motionCreateSVDMotionGeneration](docs/sdks/motion/README.md#createsvdmotiongeneration) +- [pricingCalculatorPricingCalculator](docs/sdks/pricingcalculator/README.md#pricingcalculator) +- [promptPromptImprove](docs/sdks/prompt/README.md#promptimprove) +- [promptPromptRandom](docs/sdks/prompt/README.md#promptrandom) +- [realtimeCanvasCreateLCMGeneration](docs/sdks/realtimecanvas/README.md#createlcmgeneration) +- [realtimeCanvasPerformAlchemyUpscaleLCM](docs/sdks/realtimecanvas/README.md#performalchemyupscalelcm) +- [realtimeCanvasPerformInpaintingLCM](docs/sdks/realtimecanvas/README.md#performinpaintinglcm) +- [realtimeCanvasPerformInstantRefine](docs/sdks/realtimecanvas/README.md#performinstantrefine) +- [textureCreateTextureGeneration](docs/sdks/texture/README.md#createtexturegeneration) +- [textureDeleteTextureGenerationById](docs/sdks/texture/README.md#deletetexturegenerationbyid) +- [threeDModelAssetsDelete3DModelById](docs/sdks/threedmodelassets/README.md#delete3dmodelbyid) +- [threeDModelAssetsUploadModelAsset](docs/sdks/threedmodelassets/README.md#uploadmodelasset) +- [userGetUserSelf](docs/sdks/user/README.md#getuserself) +- [variationCreateUniversalUpscalerJob](docs/sdks/variation/README.md#createuniversalupscalerjob) +- [variationCreateVariationNoBG](docs/sdks/variation/README.md#createvariationnobg) +- [variationCreateVariationUnzoom](docs/sdks/variation/README.md#createvariationunzoom) +- [variationCreateVariationUpscale](docs/sdks/variation/README.md#createvariationupscale) +- [variationGetVariationById](docs/sdks/variation/README.md#getvariationbyid) + + +
+ + ## Retries @@ -360,7 +440,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById("", { + const result = await leonardo.initImages.deleteInitImageById("", { retries: { strategy: "backoff", backoff: { @@ -400,7 +480,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); // Handle the result console.log(result); @@ -411,6 +491,23 @@ run(); ``` + +## Debugging + +You can setup your SDK to emit debug logs for SDK requests and responses. + +You can pass a logger that matches `console`'s interface as an SDK option. + +> [!WARNING] +> Beware that debug logging will reveal secrets, like API tokens in headers, in log messages printed to a console or files. It's recommended to use this feature only during local development and not in production. + +```typescript +import { Leonardo } from "@leonardo-ai/sdk"; + +const sdk = new Leonardo({ debugLogger: console }); +``` + + diff --git a/RELEASES.md b/RELEASES.md index 5ebc143f..34ab4ea9 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -2439,4 +2439,14 @@ Based on: ### Generated - [typescript v4.14.2] ### Releases -- [NPM v4.14.2] https://www.npmjs.com/package/@leonardo-ai/sdk/v/4.14.2 - \ No newline at end of file +- [NPM v4.14.2] https://www.npmjs.com/package/@leonardo-ai/sdk/v/4.14.2 - + +## 2024-09-04 01:28:24 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.390.1 (2.409.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [typescript v4.15.0] . +### Releases +- [NPM v4.15.0] https://www.npmjs.com/package/@leonardo-ai/sdk/v/4.15.0 - . \ No newline at end of file diff --git a/USAGE.md b/USAGE.md index 59bd50ba..afe2c67c 100644 --- a/USAGE.md +++ b/USAGE.md @@ -7,7 +7,7 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); // Handle the result console.log(result); diff --git a/docs/sdk/models/operations/calculateproductionapiservicecost.md b/docs/sdk/models/operations/calculateproductionapiservicecost.md index 8073f2f7..ace714c3 100644 --- a/docs/sdk/models/operations/calculateproductionapiservicecost.md +++ b/docs/sdk/models/operations/calculateproductionapiservicecost.md @@ -1,5 +1,12 @@ # CalculateProductionApiServiceCost +## Example Usage + +```typescript +import { CalculateProductionApiServiceCost } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CalculateProductionApiServiceCost = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/canvasinitimageuploadoutput.md b/docs/sdk/models/operations/canvasinitimageuploadoutput.md index 703d5415..af44904f 100644 --- a/docs/sdk/models/operations/canvasinitimageuploadoutput.md +++ b/docs/sdk/models/operations/canvasinitimageuploadoutput.md @@ -1,5 +1,12 @@ # CanvasInitImageUploadOutput +## Example Usage + +```typescript +import { CanvasInitImageUploadOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CanvasInitImageUploadOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createdatasetrequestbody.md b/docs/sdk/models/operations/createdatasetrequestbody.md index 8333df09..d05f738b 100644 --- a/docs/sdk/models/operations/createdatasetrequestbody.md +++ b/docs/sdk/models/operations/createdatasetrequestbody.md @@ -2,6 +2,15 @@ Query parameters to be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateDatasetRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateDatasetRequestBody = { + name: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createdatasetresponse.md b/docs/sdk/models/operations/createdatasetresponse.md index 5d66b364..1a130fe2 100644 --- a/docs/sdk/models/operations/createdatasetresponse.md +++ b/docs/sdk/models/operations/createdatasetresponse.md @@ -1,5 +1,18 @@ # CreateDatasetResponse +## Example Usage + +```typescript +import { CreateDatasetResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateDatasetResponse = { + contentType: "", + statusCode: 544883, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createdatasetresponsebody.md b/docs/sdk/models/operations/createdatasetresponsebody.md index db9f5040..9bebd6c1 100644 --- a/docs/sdk/models/operations/createdatasetresponsebody.md +++ b/docs/sdk/models/operations/createdatasetresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /datasets +## Example Usage + +```typescript +import { CreateDatasetResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateDatasetResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/creategenerationrequestbody.md b/docs/sdk/models/operations/creategenerationrequestbody.md index 79203502..72056697 100644 --- a/docs/sdk/models/operations/creategenerationrequestbody.md +++ b/docs/sdk/models/operations/creategenerationrequestbody.md @@ -2,6 +2,13 @@ Query parameters to be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateGenerationRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateGenerationRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/creategenerationresponse.md b/docs/sdk/models/operations/creategenerationresponse.md index a282124a..a48c15b3 100644 --- a/docs/sdk/models/operations/creategenerationresponse.md +++ b/docs/sdk/models/operations/creategenerationresponse.md @@ -1,5 +1,18 @@ # CreateGenerationResponse +## Example Usage + +```typescript +import { CreateGenerationResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateGenerationResponse = { + contentType: "", + statusCode: 56713, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/creategenerationresponsebody.md b/docs/sdk/models/operations/creategenerationresponsebody.md index b69f0a42..4f18b4c4 100644 --- a/docs/sdk/models/operations/creategenerationresponsebody.md +++ b/docs/sdk/models/operations/creategenerationresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /generations +## Example Usage + +```typescript +import { CreateGenerationResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateGenerationResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createlcmgenerationrequestbody.md b/docs/sdk/models/operations/createlcmgenerationrequestbody.md index 9f5974ee..78aaca59 100644 --- a/docs/sdk/models/operations/createlcmgenerationrequestbody.md +++ b/docs/sdk/models/operations/createlcmgenerationrequestbody.md @@ -2,6 +2,16 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateLCMGenerationRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateLCMGenerationRequestBody = { + imageDataUrl: "", + prompt: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createlcmgenerationresponse.md b/docs/sdk/models/operations/createlcmgenerationresponse.md index 0bb0bd28..38c0aee7 100644 --- a/docs/sdk/models/operations/createlcmgenerationresponse.md +++ b/docs/sdk/models/operations/createlcmgenerationresponse.md @@ -1,5 +1,18 @@ # CreateLCMGenerationResponse +## Example Usage + +```typescript +import { CreateLCMGenerationResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateLCMGenerationResponse = { + contentType: "", + statusCode: 477665, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createlcmgenerationresponsebody.md b/docs/sdk/models/operations/createlcmgenerationresponsebody.md index 69abf032..0eb63e45 100644 --- a/docs/sdk/models/operations/createlcmgenerationresponsebody.md +++ b/docs/sdk/models/operations/createlcmgenerationresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /generations-lcm +## Example Usage + +```typescript +import { CreateLCMGenerationResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateLCMGenerationResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createmodelrequestbody.md b/docs/sdk/models/operations/createmodelrequestbody.md index 2b36bf09..f620e614 100644 --- a/docs/sdk/models/operations/createmodelrequestbody.md +++ b/docs/sdk/models/operations/createmodelrequestbody.md @@ -2,6 +2,17 @@ Query parameters to be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateModelRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateModelRequestBody = { + datasetId: "", + instancePrompt: "", + name: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createmodelresponse.md b/docs/sdk/models/operations/createmodelresponse.md index 624368f3..dcb55c5d 100644 --- a/docs/sdk/models/operations/createmodelresponse.md +++ b/docs/sdk/models/operations/createmodelresponse.md @@ -1,5 +1,18 @@ # CreateModelResponse +## Example Usage + +```typescript +import { CreateModelResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateModelResponse = { + contentType: "", + statusCode: 836079, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createmodelresponsebody.md b/docs/sdk/models/operations/createmodelresponsebody.md index c340e98d..35546c35 100644 --- a/docs/sdk/models/operations/createmodelresponsebody.md +++ b/docs/sdk/models/operations/createmodelresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /models +## Example Usage + +```typescript +import { CreateModelResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateModelResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createsvdmotiongenerationrequestbody.md b/docs/sdk/models/operations/createsvdmotiongenerationrequestbody.md index 7585d7cf..a01d96c0 100644 --- a/docs/sdk/models/operations/createsvdmotiongenerationrequestbody.md +++ b/docs/sdk/models/operations/createsvdmotiongenerationrequestbody.md @@ -2,6 +2,15 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateSVDMotionGenerationRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateSVDMotionGenerationRequestBody = { + imageId: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createsvdmotiongenerationresponse.md b/docs/sdk/models/operations/createsvdmotiongenerationresponse.md index fd972e36..b6d4c338 100644 --- a/docs/sdk/models/operations/createsvdmotiongenerationresponse.md +++ b/docs/sdk/models/operations/createsvdmotiongenerationresponse.md @@ -1,5 +1,18 @@ # CreateSVDMotionGenerationResponse +## Example Usage + +```typescript +import { CreateSVDMotionGenerationResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateSVDMotionGenerationResponse = { + contentType: "", + statusCode: 479977, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createsvdmotiongenerationresponsebody.md b/docs/sdk/models/operations/createsvdmotiongenerationresponsebody.md index b0b8b8a0..6ba2ab0b 100644 --- a/docs/sdk/models/operations/createsvdmotiongenerationresponsebody.md +++ b/docs/sdk/models/operations/createsvdmotiongenerationresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /generations-motion-svd +## Example Usage + +```typescript +import { CreateSVDMotionGenerationResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateSVDMotionGenerationResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createtexturegenerationrequestbody.md b/docs/sdk/models/operations/createtexturegenerationrequestbody.md index e5e07f64..f90e4670 100644 --- a/docs/sdk/models/operations/createtexturegenerationrequestbody.md +++ b/docs/sdk/models/operations/createtexturegenerationrequestbody.md @@ -2,6 +2,13 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateTextureGenerationRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateTextureGenerationRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createtexturegenerationresponse.md b/docs/sdk/models/operations/createtexturegenerationresponse.md index 10ed6332..113754ab 100644 --- a/docs/sdk/models/operations/createtexturegenerationresponse.md +++ b/docs/sdk/models/operations/createtexturegenerationresponse.md @@ -1,5 +1,18 @@ # CreateTextureGenerationResponse +## Example Usage + +```typescript +import { CreateTextureGenerationResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateTextureGenerationResponse = { + contentType: "", + statusCode: 568045, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createtexturegenerationresponsebody.md b/docs/sdk/models/operations/createtexturegenerationresponsebody.md index 1d6facb1..36239eeb 100644 --- a/docs/sdk/models/operations/createtexturegenerationresponsebody.md +++ b/docs/sdk/models/operations/createtexturegenerationresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /api/rest/v1/generations-texture +## Example Usage + +```typescript +import { CreateTextureGenerationResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateTextureGenerationResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createuniversalupscalerjobrequestbody.md b/docs/sdk/models/operations/createuniversalupscalerjobrequestbody.md index 68679dcb..3ed0a9f4 100644 --- a/docs/sdk/models/operations/createuniversalupscalerjobrequestbody.md +++ b/docs/sdk/models/operations/createuniversalupscalerjobrequestbody.md @@ -2,6 +2,13 @@ Query parameters are provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateUniversalUpscalerJobRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateUniversalUpscalerJobRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createuniversalupscalerjobresponse.md b/docs/sdk/models/operations/createuniversalupscalerjobresponse.md index 5b707ec6..8b9204e1 100644 --- a/docs/sdk/models/operations/createuniversalupscalerjobresponse.md +++ b/docs/sdk/models/operations/createuniversalupscalerjobresponse.md @@ -1,5 +1,18 @@ # CreateUniversalUpscalerJobResponse +## Example Usage + +```typescript +import { CreateUniversalUpscalerJobResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateUniversalUpscalerJobResponse = { + contentType: "", + statusCode: 778157, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createuniversalupscalerjobresponsebody.md b/docs/sdk/models/operations/createuniversalupscalerjobresponsebody.md index 1977fbbd..2bd96289 100644 --- a/docs/sdk/models/operations/createuniversalupscalerjobresponsebody.md +++ b/docs/sdk/models/operations/createuniversalupscalerjobresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /variations/universal-upscaler +## Example Usage + +```typescript +import { CreateUniversalUpscalerJobResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateUniversalUpscalerJobResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationnobgrequestbody.md b/docs/sdk/models/operations/createvariationnobgrequestbody.md index 08c12d91..52e0e467 100644 --- a/docs/sdk/models/operations/createvariationnobgrequestbody.md +++ b/docs/sdk/models/operations/createvariationnobgrequestbody.md @@ -2,6 +2,15 @@ Query parameters are provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateVariationNoBGRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationNoBGRequestBody = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationnobgresponse.md b/docs/sdk/models/operations/createvariationnobgresponse.md index fb53f661..3c71370c 100644 --- a/docs/sdk/models/operations/createvariationnobgresponse.md +++ b/docs/sdk/models/operations/createvariationnobgresponse.md @@ -1,5 +1,18 @@ # CreateVariationNoBGResponse +## Example Usage + +```typescript +import { CreateVariationNoBGResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationNoBGResponse = { + contentType: "", + statusCode: 140350, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationnobgresponsebody.md b/docs/sdk/models/operations/createvariationnobgresponsebody.md index 6e4240e1..1885ddee 100644 --- a/docs/sdk/models/operations/createvariationnobgresponsebody.md +++ b/docs/sdk/models/operations/createvariationnobgresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /variations/nobg +## Example Usage + +```typescript +import { CreateVariationNoBGResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationNoBGResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationunzoomrequestbody.md b/docs/sdk/models/operations/createvariationunzoomrequestbody.md index 2bd18860..52547ca6 100644 --- a/docs/sdk/models/operations/createvariationunzoomrequestbody.md +++ b/docs/sdk/models/operations/createvariationunzoomrequestbody.md @@ -2,6 +2,13 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateVariationUnzoomRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUnzoomRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationunzoomresponse.md b/docs/sdk/models/operations/createvariationunzoomresponse.md index de81cedf..1e8c34ca 100644 --- a/docs/sdk/models/operations/createvariationunzoomresponse.md +++ b/docs/sdk/models/operations/createvariationunzoomresponse.md @@ -1,5 +1,18 @@ # CreateVariationUnzoomResponse +## Example Usage + +```typescript +import { CreateVariationUnzoomResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUnzoomResponse = { + contentType: "", + statusCode: 870013, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationunzoomresponsebody.md b/docs/sdk/models/operations/createvariationunzoomresponsebody.md index ee327b8a..24e34037 100644 --- a/docs/sdk/models/operations/createvariationunzoomresponsebody.md +++ b/docs/sdk/models/operations/createvariationunzoomresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /api/rest/v1/variations/unzoom +## Example Usage + +```typescript +import { CreateVariationUnzoomResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUnzoomResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationupscalerequestbody.md b/docs/sdk/models/operations/createvariationupscalerequestbody.md index e93477e4..5daa64dc 100644 --- a/docs/sdk/models/operations/createvariationupscalerequestbody.md +++ b/docs/sdk/models/operations/createvariationupscalerequestbody.md @@ -2,6 +2,15 @@ Query parameters are provided in the request body as a JSON object +## Example Usage + +```typescript +import { CreateVariationUpscaleRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUpscaleRequestBody = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationupscaleresponse.md b/docs/sdk/models/operations/createvariationupscaleresponse.md index 3880ae1d..20a2a783 100644 --- a/docs/sdk/models/operations/createvariationupscaleresponse.md +++ b/docs/sdk/models/operations/createvariationupscaleresponse.md @@ -1,5 +1,18 @@ # CreateVariationUpscaleResponse +## Example Usage + +```typescript +import { CreateVariationUpscaleResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUpscaleResponse = { + contentType: "", + statusCode: 870088, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationupscaleresponsebody.md b/docs/sdk/models/operations/createvariationupscaleresponsebody.md index 20b003fd..c7af69f2 100644 --- a/docs/sdk/models/operations/createvariationupscaleresponsebody.md +++ b/docs/sdk/models/operations/createvariationupscaleresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /variations/upscale +## Example Usage + +```typescript +import { CreateVariationUpscaleResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUpscaleResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/createvariationupscalesdupscalejoboutput.md b/docs/sdk/models/operations/createvariationupscalesdupscalejoboutput.md index 7ed4c036..d317704f 100644 --- a/docs/sdk/models/operations/createvariationupscalesdupscalejoboutput.md +++ b/docs/sdk/models/operations/createvariationupscalesdupscalejoboutput.md @@ -1,5 +1,12 @@ # CreateVariationUpscaleSDUpscaleJobOutput +## Example Usage + +```typescript +import { CreateVariationUpscaleSDUpscaleJobOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CreateVariationUpscaleSDUpscaleJobOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/custommodels.md b/docs/sdk/models/operations/custommodels.md index cb521eb0..cf230266 100644 --- a/docs/sdk/models/operations/custommodels.md +++ b/docs/sdk/models/operations/custommodels.md @@ -2,6 +2,13 @@ columns and relationships of "custom_models" +## Example Usage + +```typescript +import { CustomModels } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: CustomModels = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/datasetgenuploadoutput.md b/docs/sdk/models/operations/datasetgenuploadoutput.md index 6978a956..d0cdc1d4 100644 --- a/docs/sdk/models/operations/datasetgenuploadoutput.md +++ b/docs/sdk/models/operations/datasetgenuploadoutput.md @@ -1,5 +1,12 @@ # DatasetGenUploadOutput +## Example Usage + +```typescript +import { DatasetGenUploadOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DatasetGenUploadOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/datasetimages.md b/docs/sdk/models/operations/datasetimages.md index 0eaaa112..c8587653 100644 --- a/docs/sdk/models/operations/datasetimages.md +++ b/docs/sdk/models/operations/datasetimages.md @@ -2,6 +2,13 @@ columns and relationships of "dataset_images" +## Example Usage + +```typescript +import { DatasetImages } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DatasetImages = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/datasets.md b/docs/sdk/models/operations/datasets.md index 7220d7a3..e1d3ac1a 100644 --- a/docs/sdk/models/operations/datasets.md +++ b/docs/sdk/models/operations/datasets.md @@ -2,6 +2,13 @@ columns and relationships of "datasets" +## Example Usage + +```typescript +import { Datasets } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Datasets = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/datasetuploadoutput.md b/docs/sdk/models/operations/datasetuploadoutput.md index 53a17829..fc5518c9 100644 --- a/docs/sdk/models/operations/datasetuploadoutput.md +++ b/docs/sdk/models/operations/datasetuploadoutput.md @@ -1,5 +1,12 @@ # DatasetUploadOutput +## Example Usage + +```typescript +import { DatasetUploadOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DatasetUploadOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/delete3dmodelbyidrequest.md b/docs/sdk/models/operations/delete3dmodelbyidrequest.md index 1488df61..8d308da1 100644 --- a/docs/sdk/models/operations/delete3dmodelbyidrequest.md +++ b/docs/sdk/models/operations/delete3dmodelbyidrequest.md @@ -1,5 +1,14 @@ # Delete3DModelByIdRequest +## Example Usage + +```typescript +import { Delete3DModelByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Delete3DModelByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/delete3dmodelbyidrequestbody.md b/docs/sdk/models/operations/delete3dmodelbyidrequestbody.md index 23367eec..fad6a6f8 100644 --- a/docs/sdk/models/operations/delete3dmodelbyidrequestbody.md +++ b/docs/sdk/models/operations/delete3dmodelbyidrequestbody.md @@ -2,6 +2,13 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { Delete3DModelByIdRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Delete3DModelByIdRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/delete3dmodelbyidresponse.md b/docs/sdk/models/operations/delete3dmodelbyidresponse.md index b378c71a..ea42f494 100644 --- a/docs/sdk/models/operations/delete3dmodelbyidresponse.md +++ b/docs/sdk/models/operations/delete3dmodelbyidresponse.md @@ -1,5 +1,18 @@ # Delete3DModelByIdResponse +## Example Usage + +```typescript +import { Delete3DModelByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Delete3DModelByIdResponse = { + contentType: "", + statusCode: 648172, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/delete3dmodelbyidresponsebody.md b/docs/sdk/models/operations/delete3dmodelbyidresponsebody.md index 0f00b30e..f6f7a0ab 100644 --- a/docs/sdk/models/operations/delete3dmodelbyidresponsebody.md +++ b/docs/sdk/models/operations/delete3dmodelbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for DELETE /api/rest/v1/models-3d/{id} +## Example Usage + +```typescript +import { Delete3DModelByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Delete3DModelByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletedatasetbyiddatasets.md b/docs/sdk/models/operations/deletedatasetbyiddatasets.md index 1ecfa689..4467c0ca 100644 --- a/docs/sdk/models/operations/deletedatasetbyiddatasets.md +++ b/docs/sdk/models/operations/deletedatasetbyiddatasets.md @@ -2,6 +2,13 @@ columns and relationships of "datasets" +## Example Usage + +```typescript +import { DeleteDatasetByIdDatasets } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteDatasetByIdDatasets = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletedatasetbyidrequest.md b/docs/sdk/models/operations/deletedatasetbyidrequest.md index adf08402..46da31af 100644 --- a/docs/sdk/models/operations/deletedatasetbyidrequest.md +++ b/docs/sdk/models/operations/deletedatasetbyidrequest.md @@ -1,5 +1,14 @@ # DeleteDatasetByIdRequest +## Example Usage + +```typescript +import { DeleteDatasetByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteDatasetByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletedatasetbyidresponse.md b/docs/sdk/models/operations/deletedatasetbyidresponse.md index 39a39b82..05c58b24 100644 --- a/docs/sdk/models/operations/deletedatasetbyidresponse.md +++ b/docs/sdk/models/operations/deletedatasetbyidresponse.md @@ -1,5 +1,18 @@ # DeleteDatasetByIdResponse +## Example Usage + +```typescript +import { DeleteDatasetByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteDatasetByIdResponse = { + contentType: "", + statusCode: 847252, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletedatasetbyidresponsebody.md b/docs/sdk/models/operations/deletedatasetbyidresponsebody.md index b9a96c48..1e4a3fe5 100644 --- a/docs/sdk/models/operations/deletedatasetbyidresponsebody.md +++ b/docs/sdk/models/operations/deletedatasetbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for DELETE /datasets/{id} +## Example Usage + +```typescript +import { DeleteDatasetByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteDatasetByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletegenerationbyidrequest.md b/docs/sdk/models/operations/deletegenerationbyidrequest.md index 937fb491..a3c803a4 100644 --- a/docs/sdk/models/operations/deletegenerationbyidrequest.md +++ b/docs/sdk/models/operations/deletegenerationbyidrequest.md @@ -1,5 +1,14 @@ # DeleteGenerationByIdRequest +## Example Usage + +```typescript +import { DeleteGenerationByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteGenerationByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletegenerationbyidresponse.md b/docs/sdk/models/operations/deletegenerationbyidresponse.md index 901cd39e..25dc7699 100644 --- a/docs/sdk/models/operations/deletegenerationbyidresponse.md +++ b/docs/sdk/models/operations/deletegenerationbyidresponse.md @@ -1,5 +1,18 @@ # DeleteGenerationByIdResponse +## Example Usage + +```typescript +import { DeleteGenerationByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteGenerationByIdResponse = { + contentType: "", + statusCode: 963663, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletegenerationbyidresponsebody.md b/docs/sdk/models/operations/deletegenerationbyidresponsebody.md index f66c65a5..a98de753 100644 --- a/docs/sdk/models/operations/deletegenerationbyidresponsebody.md +++ b/docs/sdk/models/operations/deletegenerationbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for DELETE /generations/{id} +## Example Usage + +```typescript +import { DeleteGenerationByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteGenerationByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deleteinitimagebyidrequest.md b/docs/sdk/models/operations/deleteinitimagebyidrequest.md index a8a7fc94..5a6191e0 100644 --- a/docs/sdk/models/operations/deleteinitimagebyidrequest.md +++ b/docs/sdk/models/operations/deleteinitimagebyidrequest.md @@ -1,5 +1,14 @@ # DeleteInitImageByIdRequest +## Example Usage + +```typescript +import { DeleteInitImageByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteInitImageByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deleteinitimagebyidresponse.md b/docs/sdk/models/operations/deleteinitimagebyidresponse.md index 158b0937..9d56a2d1 100644 --- a/docs/sdk/models/operations/deleteinitimagebyidresponse.md +++ b/docs/sdk/models/operations/deleteinitimagebyidresponse.md @@ -1,5 +1,18 @@ # DeleteInitImageByIdResponse +## Example Usage + +```typescript +import { DeleteInitImageByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteInitImageByIdResponse = { + contentType: "", + statusCode: 548814, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deleteinitimagebyidresponsebody.md b/docs/sdk/models/operations/deleteinitimagebyidresponsebody.md index 19db4bec..4330b540 100644 --- a/docs/sdk/models/operations/deleteinitimagebyidresponsebody.md +++ b/docs/sdk/models/operations/deleteinitimagebyidresponsebody.md @@ -2,6 +2,13 @@ Responses for DELETE /init-image/{id} +## Example Usage + +```typescript +import { DeleteInitImageByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteInitImageByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletemodelbyidrequest.md b/docs/sdk/models/operations/deletemodelbyidrequest.md index 782cb535..4e79d449 100644 --- a/docs/sdk/models/operations/deletemodelbyidrequest.md +++ b/docs/sdk/models/operations/deletemodelbyidrequest.md @@ -1,5 +1,14 @@ # DeleteModelByIdRequest +## Example Usage + +```typescript +import { DeleteModelByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteModelByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletemodelbyidresponse.md b/docs/sdk/models/operations/deletemodelbyidresponse.md index ee617b2a..568c250d 100644 --- a/docs/sdk/models/operations/deletemodelbyidresponse.md +++ b/docs/sdk/models/operations/deletemodelbyidresponse.md @@ -1,5 +1,18 @@ # DeleteModelByIdResponse +## Example Usage + +```typescript +import { DeleteModelByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteModelByIdResponse = { + contentType: "", + statusCode: 71036, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletemodelbyidresponsebody.md b/docs/sdk/models/operations/deletemodelbyidresponsebody.md index 486b7c58..f01982b3 100644 --- a/docs/sdk/models/operations/deletemodelbyidresponsebody.md +++ b/docs/sdk/models/operations/deletemodelbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for DELETE /models/{id} +## Example Usage + +```typescript +import { DeleteModelByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteModelByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletetexturegenerationbyidrequest.md b/docs/sdk/models/operations/deletetexturegenerationbyidrequest.md index 78b0cbd0..3240532e 100644 --- a/docs/sdk/models/operations/deletetexturegenerationbyidrequest.md +++ b/docs/sdk/models/operations/deletetexturegenerationbyidrequest.md @@ -1,5 +1,14 @@ # DeleteTextureGenerationByIdRequest +## Example Usage + +```typescript +import { DeleteTextureGenerationByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteTextureGenerationByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletetexturegenerationbyidrequestbody.md b/docs/sdk/models/operations/deletetexturegenerationbyidrequestbody.md index 4f53fb51..e21a524c 100644 --- a/docs/sdk/models/operations/deletetexturegenerationbyidrequestbody.md +++ b/docs/sdk/models/operations/deletetexturegenerationbyidrequestbody.md @@ -2,6 +2,13 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { DeleteTextureGenerationByIdRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteTextureGenerationByIdRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletetexturegenerationbyidresponse.md b/docs/sdk/models/operations/deletetexturegenerationbyidresponse.md index d09f336d..03290c80 100644 --- a/docs/sdk/models/operations/deletetexturegenerationbyidresponse.md +++ b/docs/sdk/models/operations/deletetexturegenerationbyidresponse.md @@ -1,5 +1,18 @@ # DeleteTextureGenerationByIdResponse +## Example Usage + +```typescript +import { DeleteTextureGenerationByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteTextureGenerationByIdResponse = { + contentType: "", + statusCode: 392785, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/deletetexturegenerationbyidresponsebody.md b/docs/sdk/models/operations/deletetexturegenerationbyidresponsebody.md index 86aafd40..47b2ed23 100644 --- a/docs/sdk/models/operations/deletetexturegenerationbyidresponsebody.md +++ b/docs/sdk/models/operations/deletetexturegenerationbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for DELETE /api/rest/v1/generations-texture/{id} +## Example Usage + +```typescript +import { DeleteTextureGenerationByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: DeleteTextureGenerationByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/elements.md b/docs/sdk/models/operations/elements.md index 19b7edbe..b2839d31 100644 --- a/docs/sdk/models/operations/elements.md +++ b/docs/sdk/models/operations/elements.md @@ -2,6 +2,13 @@ Element used for the generation. +## Example Usage + +```typescript +import { Elements } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Elements = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/generatedimages.md b/docs/sdk/models/operations/generatedimages.md index 95e6ebb9..a36d5a23 100644 --- a/docs/sdk/models/operations/generatedimages.md +++ b/docs/sdk/models/operations/generatedimages.md @@ -2,6 +2,13 @@ columns and relationships of "generated_images" +## Example Usage + +```typescript +import { GeneratedImages } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GeneratedImages = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/generatedimagevariationgeneric.md b/docs/sdk/models/operations/generatedimagevariationgeneric.md index ab267bc0..40d4c7f0 100644 --- a/docs/sdk/models/operations/generatedimagevariationgeneric.md +++ b/docs/sdk/models/operations/generatedimagevariationgeneric.md @@ -2,6 +2,13 @@ columns and relationships of "generated_image_variation_generic" +## Example Usage + +```typescript +import { GeneratedImageVariationGeneric } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GeneratedImageVariationGeneric = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/generationelements.md b/docs/sdk/models/operations/generationelements.md index ce1083d9..f54f4634 100644 --- a/docs/sdk/models/operations/generationelements.md +++ b/docs/sdk/models/operations/generationelements.md @@ -2,6 +2,13 @@ This table captures the elements that are applied to Generations. +## Example Usage + +```typescript +import { GenerationElements } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GenerationElements = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/generations.md b/docs/sdk/models/operations/generations.md index 3ef44271..4166cbce 100644 --- a/docs/sdk/models/operations/generations.md +++ b/docs/sdk/models/operations/generations.md @@ -2,6 +2,13 @@ columns and relationships of "generations" +## Example Usage + +```typescript +import { Generations } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Generations = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getdatasetbyiddatasets.md b/docs/sdk/models/operations/getdatasetbyiddatasets.md index 0f2273af..a6b994b5 100644 --- a/docs/sdk/models/operations/getdatasetbyiddatasets.md +++ b/docs/sdk/models/operations/getdatasetbyiddatasets.md @@ -2,6 +2,13 @@ columns and relationships of "datasets" +## Example Usage + +```typescript +import { GetDatasetByIdDatasets } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetDatasetByIdDatasets = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getdatasetbyidrequest.md b/docs/sdk/models/operations/getdatasetbyidrequest.md index 40b43422..c378e673 100644 --- a/docs/sdk/models/operations/getdatasetbyidrequest.md +++ b/docs/sdk/models/operations/getdatasetbyidrequest.md @@ -1,5 +1,14 @@ # GetDatasetByIdRequest +## Example Usage + +```typescript +import { GetDatasetByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetDatasetByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getdatasetbyidresponse.md b/docs/sdk/models/operations/getdatasetbyidresponse.md index 1223ea05..dfafea6d 100644 --- a/docs/sdk/models/operations/getdatasetbyidresponse.md +++ b/docs/sdk/models/operations/getdatasetbyidresponse.md @@ -1,5 +1,18 @@ # GetDatasetByIdResponse +## Example Usage + +```typescript +import { GetDatasetByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetDatasetByIdResponse = { + contentType: "", + statusCode: 423655, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getdatasetbyidresponsebody.md b/docs/sdk/models/operations/getdatasetbyidresponsebody.md index e78ce14a..4e3938ef 100644 --- a/docs/sdk/models/operations/getdatasetbyidresponsebody.md +++ b/docs/sdk/models/operations/getdatasetbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /datasets/{id} +## Example Usage + +```typescript +import { GetDatasetByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetDatasetByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationbyidgeneratedimagevariationgeneric.md b/docs/sdk/models/operations/getgenerationbyidgeneratedimagevariationgeneric.md index 7bd360af..caca196e 100644 --- a/docs/sdk/models/operations/getgenerationbyidgeneratedimagevariationgeneric.md +++ b/docs/sdk/models/operations/getgenerationbyidgeneratedimagevariationgeneric.md @@ -2,6 +2,13 @@ columns and relationships of "generated_image_variation_generic" +## Example Usage + +```typescript +import { GetGenerationByIdGeneratedImageVariationGeneric } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationByIdGeneratedImageVariationGeneric = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationbyidgenerations.md b/docs/sdk/models/operations/getgenerationbyidgenerations.md index 7bdd3b1c..2bbae36d 100644 --- a/docs/sdk/models/operations/getgenerationbyidgenerations.md +++ b/docs/sdk/models/operations/getgenerationbyidgenerations.md @@ -2,6 +2,13 @@ columns and relationships of "generations" +## Example Usage + +```typescript +import { GetGenerationByIdGenerations } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationByIdGenerations = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationbyidloras.md b/docs/sdk/models/operations/getgenerationbyidloras.md index 905bd6ec..fa9165cc 100644 --- a/docs/sdk/models/operations/getgenerationbyidloras.md +++ b/docs/sdk/models/operations/getgenerationbyidloras.md @@ -2,6 +2,13 @@ Element used for the generation. +## Example Usage + +```typescript +import { GetGenerationByIdLoras } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationByIdLoras = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationbyidrequest.md b/docs/sdk/models/operations/getgenerationbyidrequest.md index c407ab9c..afadc5fa 100644 --- a/docs/sdk/models/operations/getgenerationbyidrequest.md +++ b/docs/sdk/models/operations/getgenerationbyidrequest.md @@ -1,5 +1,14 @@ # GetGenerationByIdRequest +## Example Usage + +```typescript +import { GetGenerationByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationbyidresponse.md b/docs/sdk/models/operations/getgenerationbyidresponse.md index d6a57fd8..c7de14e0 100644 --- a/docs/sdk/models/operations/getgenerationbyidresponse.md +++ b/docs/sdk/models/operations/getgenerationbyidresponse.md @@ -1,5 +1,18 @@ # GetGenerationByIdResponse +## Example Usage + +```typescript +import { GetGenerationByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationByIdResponse = { + contentType: "", + statusCode: 272656, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationbyidresponsebody.md b/docs/sdk/models/operations/getgenerationbyidresponsebody.md index 1390e9c0..1e60b51d 100644 --- a/docs/sdk/models/operations/getgenerationbyidresponsebody.md +++ b/docs/sdk/models/operations/getgenerationbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /generations/{id} +## Example Usage + +```typescript +import { GetGenerationByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimages.md b/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimages.md index f2656127..0c6fca8f 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimages.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimages.md @@ -2,6 +2,13 @@ columns and relationships of "generated_images" +## Example Usage + +```typescript +import { GetGenerationsByUserIdGeneratedImages } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdGeneratedImages = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimagevariationgeneric.md b/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimagevariationgeneric.md index a4d8a44b..358fc4b9 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimagevariationgeneric.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridgeneratedimagevariationgeneric.md @@ -2,6 +2,13 @@ columns and relationships of "generated_image_variation_generic" +## Example Usage + +```typescript +import { GetGenerationsByUserIdGeneratedImageVariationGeneric } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdGeneratedImageVariationGeneric = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridgenerationelements.md b/docs/sdk/models/operations/getgenerationsbyuseridgenerationelements.md index f3ee60ca..266e3c8e 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridgenerationelements.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridgenerationelements.md @@ -2,6 +2,13 @@ This table captures the elements that are applied to a Generations, also the order and weightings used when applied. +## Example Usage + +```typescript +import { GetGenerationsByUserIdGenerationElements } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdGenerationElements = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridgenerations.md b/docs/sdk/models/operations/getgenerationsbyuseridgenerations.md index a0870183..89d18ee3 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridgenerations.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridgenerations.md @@ -2,6 +2,13 @@ columns and relationships of "generations" +## Example Usage + +```typescript +import { GetGenerationsByUserIdGenerations } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdGenerations = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridrequest.md b/docs/sdk/models/operations/getgenerationsbyuseridrequest.md index d4f9def2..69bfc280 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridrequest.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridrequest.md @@ -1,5 +1,14 @@ # GetGenerationsByUserIdRequest +## Example Usage + +```typescript +import { GetGenerationsByUserIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdRequest = { + userId: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridresponse.md b/docs/sdk/models/operations/getgenerationsbyuseridresponse.md index 6d6726ab..7eaafae2 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridresponse.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridresponse.md @@ -1,5 +1,18 @@ # GetGenerationsByUserIdResponse +## Example Usage + +```typescript +import { GetGenerationsByUserIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdResponse = { + contentType: "", + statusCode: 383441, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getgenerationsbyuseridresponsebody.md b/docs/sdk/models/operations/getgenerationsbyuseridresponsebody.md index bfdaf4b3..2f32efc2 100644 --- a/docs/sdk/models/operations/getgenerationsbyuseridresponsebody.md +++ b/docs/sdk/models/operations/getgenerationsbyuseridresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /generations/user/{userId} +## Example Usage + +```typescript +import { GetGenerationsByUserIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetGenerationsByUserIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getinitimagebyidinitimages.md b/docs/sdk/models/operations/getinitimagebyidinitimages.md index aa7dfe5f..ec0937b6 100644 --- a/docs/sdk/models/operations/getinitimagebyidinitimages.md +++ b/docs/sdk/models/operations/getinitimagebyidinitimages.md @@ -2,6 +2,13 @@ columns and relationships of "init_images" +## Example Usage + +```typescript +import { GetInitImageByIdInitImages } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetInitImageByIdInitImages = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getinitimagebyidrequest.md b/docs/sdk/models/operations/getinitimagebyidrequest.md index d9b58d01..cb3c21a4 100644 --- a/docs/sdk/models/operations/getinitimagebyidrequest.md +++ b/docs/sdk/models/operations/getinitimagebyidrequest.md @@ -1,5 +1,14 @@ # GetInitImageByIdRequest +## Example Usage + +```typescript +import { GetInitImageByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetInitImageByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getinitimagebyidresponse.md b/docs/sdk/models/operations/getinitimagebyidresponse.md index 0c14fef9..8cea9fbe 100644 --- a/docs/sdk/models/operations/getinitimagebyidresponse.md +++ b/docs/sdk/models/operations/getinitimagebyidresponse.md @@ -1,5 +1,18 @@ # GetInitImageByIdResponse +## Example Usage + +```typescript +import { GetInitImageByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetInitImageByIdResponse = { + contentType: "", + statusCode: 592845, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getinitimagebyidresponsebody.md b/docs/sdk/models/operations/getinitimagebyidresponsebody.md index 31b6ed96..53e8d0c7 100644 --- a/docs/sdk/models/operations/getinitimagebyidresponsebody.md +++ b/docs/sdk/models/operations/getinitimagebyidresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /init-image/{id} +## Example Usage + +```typescript +import { GetInitImageByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetInitImageByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getmodelbyidcustommodels.md b/docs/sdk/models/operations/getmodelbyidcustommodels.md index 91ae93a8..cb649939 100644 --- a/docs/sdk/models/operations/getmodelbyidcustommodels.md +++ b/docs/sdk/models/operations/getmodelbyidcustommodels.md @@ -2,6 +2,13 @@ columns and relationships of "custom_models" +## Example Usage + +```typescript +import { GetModelByIdCustomModels } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetModelByIdCustomModels = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getmodelbyidrequest.md b/docs/sdk/models/operations/getmodelbyidrequest.md index 39118b88..8fd36e0b 100644 --- a/docs/sdk/models/operations/getmodelbyidrequest.md +++ b/docs/sdk/models/operations/getmodelbyidrequest.md @@ -1,5 +1,14 @@ # GetModelByIdRequest +## Example Usage + +```typescript +import { GetModelByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetModelByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getmodelbyidresponse.md b/docs/sdk/models/operations/getmodelbyidresponse.md index bb91cd6b..f78b1d0f 100644 --- a/docs/sdk/models/operations/getmodelbyidresponse.md +++ b/docs/sdk/models/operations/getmodelbyidresponse.md @@ -1,5 +1,18 @@ # GetModelByIdResponse +## Example Usage + +```typescript +import { GetModelByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetModelByIdResponse = { + contentType: "", + statusCode: 337396, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getmodelbyidresponsebody.md b/docs/sdk/models/operations/getmodelbyidresponsebody.md index 1bb3ba6f..d6575412 100644 --- a/docs/sdk/models/operations/getmodelbyidresponsebody.md +++ b/docs/sdk/models/operations/getmodelbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /models/{id} +## Example Usage + +```typescript +import { GetModelByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetModelByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getuserselfresponse.md b/docs/sdk/models/operations/getuserselfresponse.md index 20bbfd45..c3c889cd 100644 --- a/docs/sdk/models/operations/getuserselfresponse.md +++ b/docs/sdk/models/operations/getuserselfresponse.md @@ -1,5 +1,18 @@ # GetUserSelfResponse +## Example Usage + +```typescript +import { GetUserSelfResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetUserSelfResponse = { + contentType: "", + statusCode: 925597, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getuserselfresponsebody.md b/docs/sdk/models/operations/getuserselfresponsebody.md index 015b0cd9..48c4da95 100644 --- a/docs/sdk/models/operations/getuserselfresponsebody.md +++ b/docs/sdk/models/operations/getuserselfresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /me +## Example Usage + +```typescript +import { GetUserSelfResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetUserSelfResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/getvariationbyidrequest.md b/docs/sdk/models/operations/getvariationbyidrequest.md index 572936a0..d6d62c44 100644 --- a/docs/sdk/models/operations/getvariationbyidrequest.md +++ b/docs/sdk/models/operations/getvariationbyidrequest.md @@ -1,5 +1,14 @@ # GetVariationByIdRequest +## Example Usage + +```typescript +import { GetVariationByIdRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetVariationByIdRequest = { + id: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getvariationbyidresponse.md b/docs/sdk/models/operations/getvariationbyidresponse.md index a961fb5c..a156112c 100644 --- a/docs/sdk/models/operations/getvariationbyidresponse.md +++ b/docs/sdk/models/operations/getvariationbyidresponse.md @@ -1,5 +1,18 @@ # GetVariationByIdResponse +## Example Usage + +```typescript +import { GetVariationByIdResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetVariationByIdResponse = { + contentType: "", + statusCode: 978619, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/getvariationbyidresponsebody.md b/docs/sdk/models/operations/getvariationbyidresponsebody.md index 01af0fa0..304951ce 100644 --- a/docs/sdk/models/operations/getvariationbyidresponsebody.md +++ b/docs/sdk/models/operations/getvariationbyidresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /variations/{id} +## Example Usage + +```typescript +import { GetVariationByIdResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: GetVariationByIdResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/initimages.md b/docs/sdk/models/operations/initimages.md index 59bbe141..ba6341d7 100644 --- a/docs/sdk/models/operations/initimages.md +++ b/docs/sdk/models/operations/initimages.md @@ -2,6 +2,13 @@ columns and relationships of "init_images" +## Example Usage + +```typescript +import { InitImages } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: InitImages = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/initimageuploadoutput.md b/docs/sdk/models/operations/initimageuploadoutput.md index 4b2376e8..62d4431e 100644 --- a/docs/sdk/models/operations/initimageuploadoutput.md +++ b/docs/sdk/models/operations/initimageuploadoutput.md @@ -1,5 +1,12 @@ # InitImageUploadOutput +## Example Usage + +```typescript +import { InitImageUploadOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: InitImageUploadOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/lcmgenerationoutput.md b/docs/sdk/models/operations/lcmgenerationoutput.md index 50083ff6..c4ab6f51 100644 --- a/docs/sdk/models/operations/lcmgenerationoutput.md +++ b/docs/sdk/models/operations/lcmgenerationoutput.md @@ -1,5 +1,12 @@ # LcmGenerationOutput +## Example Usage + +```typescript +import { LcmGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: LcmGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/listelementsresponse.md b/docs/sdk/models/operations/listelementsresponse.md index 1ad9d3d6..abceedb7 100644 --- a/docs/sdk/models/operations/listelementsresponse.md +++ b/docs/sdk/models/operations/listelementsresponse.md @@ -1,5 +1,18 @@ # ListElementsResponse +## Example Usage + +```typescript +import { ListElementsResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ListElementsResponse = { + contentType: "", + statusCode: 297534, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/listelementsresponsebody.md b/docs/sdk/models/operations/listelementsresponsebody.md index 0464e7f5..934b7975 100644 --- a/docs/sdk/models/operations/listelementsresponsebody.md +++ b/docs/sdk/models/operations/listelementsresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /api/rest/v1/elements +## Example Usage + +```typescript +import { ListElementsResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ListElementsResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/listplatformmodelscustommodels.md b/docs/sdk/models/operations/listplatformmodelscustommodels.md index af9ed623..a5906ed8 100644 --- a/docs/sdk/models/operations/listplatformmodelscustommodels.md +++ b/docs/sdk/models/operations/listplatformmodelscustommodels.md @@ -2,6 +2,13 @@ columns and relationships of "custom_models" +## Example Usage + +```typescript +import { ListPlatformModelsCustomModels } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ListPlatformModelsCustomModels = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/listplatformmodelsgeneratedimages.md b/docs/sdk/models/operations/listplatformmodelsgeneratedimages.md index 5ea7ff5f..47c0c0db 100644 --- a/docs/sdk/models/operations/listplatformmodelsgeneratedimages.md +++ b/docs/sdk/models/operations/listplatformmodelsgeneratedimages.md @@ -2,6 +2,13 @@ columns and relationships of "generated_images" +## Example Usage + +```typescript +import { ListPlatformModelsGeneratedImages } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ListPlatformModelsGeneratedImages = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/listplatformmodelsresponse.md b/docs/sdk/models/operations/listplatformmodelsresponse.md index fdba87b2..59ade8a5 100644 --- a/docs/sdk/models/operations/listplatformmodelsresponse.md +++ b/docs/sdk/models/operations/listplatformmodelsresponse.md @@ -1,5 +1,18 @@ # ListPlatformModelsResponse +## Example Usage + +```typescript +import { ListPlatformModelsResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ListPlatformModelsResponse = { + contentType: "", + statusCode: 87129, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/listplatformmodelsresponsebody.md b/docs/sdk/models/operations/listplatformmodelsresponsebody.md index 0fe03439..0a3dc4b7 100644 --- a/docs/sdk/models/operations/listplatformmodelsresponsebody.md +++ b/docs/sdk/models/operations/listplatformmodelsresponsebody.md @@ -2,6 +2,13 @@ Responses for GET /api/rest/v1/platformModels +## Example Usage + +```typescript +import { ListPlatformModelsResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ListPlatformModelsResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/loras.md b/docs/sdk/models/operations/loras.md index 004d5bef..4371842e 100644 --- a/docs/sdk/models/operations/loras.md +++ b/docs/sdk/models/operations/loras.md @@ -2,6 +2,13 @@ columns and relationships of "elements" +## Example Usage + +```typescript +import { Loras } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Loras = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/modelassets.md b/docs/sdk/models/operations/modelassets.md index 395fb5c7..873f5c12 100644 --- a/docs/sdk/models/operations/modelassets.md +++ b/docs/sdk/models/operations/modelassets.md @@ -2,6 +2,13 @@ columns and relationships of "model_assets" +## Example Usage + +```typescript +import { ModelAssets } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ModelAssets = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/modelassettexturegenerations.md b/docs/sdk/models/operations/modelassettexturegenerations.md index edb7ec27..f5dd9b5c 100644 --- a/docs/sdk/models/operations/modelassettexturegenerations.md +++ b/docs/sdk/models/operations/modelassettexturegenerations.md @@ -2,6 +2,13 @@ columns and relationships of "model_asset_texture_generations" +## Example Usage + +```typescript +import { ModelAssetTextureGenerations } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ModelAssetTextureGenerations = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/modelassetuploadoutput.md b/docs/sdk/models/operations/modelassetuploadoutput.md index 39d58fad..6ebd56a2 100644 --- a/docs/sdk/models/operations/modelassetuploadoutput.md +++ b/docs/sdk/models/operations/modelassetuploadoutput.md @@ -1,5 +1,12 @@ # ModelAssetUploadOutput +## Example Usage + +```typescript +import { ModelAssetUploadOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ModelAssetUploadOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/motionsvdgenerationoutput.md b/docs/sdk/models/operations/motionsvdgenerationoutput.md index 4989362d..7d3ae5ec 100644 --- a/docs/sdk/models/operations/motionsvdgenerationoutput.md +++ b/docs/sdk/models/operations/motionsvdgenerationoutput.md @@ -1,5 +1,12 @@ # MotionSvdGenerationOutput +## Example Usage + +```typescript +import { MotionSvdGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: MotionSvdGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/objectt.md b/docs/sdk/models/operations/objectt.md index aa571d43..07482bcc 100644 --- a/docs/sdk/models/operations/objectt.md +++ b/docs/sdk/models/operations/objectt.md @@ -2,6 +2,13 @@ Parameters for the service +## Example Usage + +```typescript +import { ObjectT } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: ObjectT = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/performalchemyupscalelcmlcmgenerationoutput.md b/docs/sdk/models/operations/performalchemyupscalelcmlcmgenerationoutput.md index 10353276..88f15a2a 100644 --- a/docs/sdk/models/operations/performalchemyupscalelcmlcmgenerationoutput.md +++ b/docs/sdk/models/operations/performalchemyupscalelcmlcmgenerationoutput.md @@ -1,5 +1,12 @@ # PerformAlchemyUpscaleLCMLCMGenerationOutput +## Example Usage + +```typescript +import { PerformAlchemyUpscaleLCMLCMGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformAlchemyUpscaleLCMLCMGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/performalchemyupscalelcmrequestbody.md b/docs/sdk/models/operations/performalchemyupscalelcmrequestbody.md index 24301951..506f0b04 100644 --- a/docs/sdk/models/operations/performalchemyupscalelcmrequestbody.md +++ b/docs/sdk/models/operations/performalchemyupscalelcmrequestbody.md @@ -2,6 +2,16 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { PerformAlchemyUpscaleLCMRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformAlchemyUpscaleLCMRequestBody = { + imageDataUrl: "", + prompt: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/performalchemyupscalelcmresponse.md b/docs/sdk/models/operations/performalchemyupscalelcmresponse.md index 0899fcfb..826b5341 100644 --- a/docs/sdk/models/operations/performalchemyupscalelcmresponse.md +++ b/docs/sdk/models/operations/performalchemyupscalelcmresponse.md @@ -1,5 +1,18 @@ # PerformAlchemyUpscaleLCMResponse +## Example Usage + +```typescript +import { PerformAlchemyUpscaleLCMResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformAlchemyUpscaleLCMResponse = { + contentType: "", + statusCode: 791725, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/performalchemyupscalelcmresponsebody.md b/docs/sdk/models/operations/performalchemyupscalelcmresponsebody.md index 26dbdda2..56dc8721 100644 --- a/docs/sdk/models/operations/performalchemyupscalelcmresponsebody.md +++ b/docs/sdk/models/operations/performalchemyupscalelcmresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /lcm-upscale +## Example Usage + +```typescript +import { PerformAlchemyUpscaleLCMResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformAlchemyUpscaleLCMResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinpaintinglcmlcmgenerationoutput.md b/docs/sdk/models/operations/performinpaintinglcmlcmgenerationoutput.md index 62101778..f39d5106 100644 --- a/docs/sdk/models/operations/performinpaintinglcmlcmgenerationoutput.md +++ b/docs/sdk/models/operations/performinpaintinglcmlcmgenerationoutput.md @@ -1,5 +1,12 @@ # PerformInpaintingLCMLCMGenerationOutput +## Example Usage + +```typescript +import { PerformInpaintingLCMLCMGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInpaintingLCMLCMGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinpaintinglcmrequestbody.md b/docs/sdk/models/operations/performinpaintinglcmrequestbody.md index 8529a494..1904529b 100644 --- a/docs/sdk/models/operations/performinpaintinglcmrequestbody.md +++ b/docs/sdk/models/operations/performinpaintinglcmrequestbody.md @@ -2,6 +2,17 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { PerformInpaintingLCMRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInpaintingLCMRequestBody = { + imageDataUrl: "", + maskDataUrl: "", + prompt: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinpaintinglcmresponse.md b/docs/sdk/models/operations/performinpaintinglcmresponse.md index c78b4330..20674eb3 100644 --- a/docs/sdk/models/operations/performinpaintinglcmresponse.md +++ b/docs/sdk/models/operations/performinpaintinglcmresponse.md @@ -1,5 +1,18 @@ # PerformInpaintingLCMResponse +## Example Usage + +```typescript +import { PerformInpaintingLCMResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInpaintingLCMResponse = { + contentType: "", + statusCode: 812169, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinpaintinglcmresponsebody.md b/docs/sdk/models/operations/performinpaintinglcmresponsebody.md index 9e8cd14a..a6d35eb7 100644 --- a/docs/sdk/models/operations/performinpaintinglcmresponsebody.md +++ b/docs/sdk/models/operations/performinpaintinglcmresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /lcm-inpainting +## Example Usage + +```typescript +import { PerformInpaintingLCMResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInpaintingLCMResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinstantrefinelcmgenerationoutput.md b/docs/sdk/models/operations/performinstantrefinelcmgenerationoutput.md index 974c9f97..916b7570 100644 --- a/docs/sdk/models/operations/performinstantrefinelcmgenerationoutput.md +++ b/docs/sdk/models/operations/performinstantrefinelcmgenerationoutput.md @@ -1,5 +1,12 @@ # PerformInstantRefineLcmGenerationOutput +## Example Usage + +```typescript +import { PerformInstantRefineLcmGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInstantRefineLcmGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinstantrefinerequestbody.md b/docs/sdk/models/operations/performinstantrefinerequestbody.md index 50422019..9665eaab 100644 --- a/docs/sdk/models/operations/performinstantrefinerequestbody.md +++ b/docs/sdk/models/operations/performinstantrefinerequestbody.md @@ -2,6 +2,16 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { PerformInstantRefineRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInstantRefineRequestBody = { + imageDataUrl: "", + prompt: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinstantrefineresponse.md b/docs/sdk/models/operations/performinstantrefineresponse.md index 99fd8514..9170c9b0 100644 --- a/docs/sdk/models/operations/performinstantrefineresponse.md +++ b/docs/sdk/models/operations/performinstantrefineresponse.md @@ -1,5 +1,18 @@ # PerformInstantRefineResponse +## Example Usage + +```typescript +import { PerformInstantRefineResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInstantRefineResponse = { + contentType: "", + statusCode: 528895, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/performinstantrefineresponsebody.md b/docs/sdk/models/operations/performinstantrefineresponsebody.md index 34bdc822..681c78b1 100644 --- a/docs/sdk/models/operations/performinstantrefineresponsebody.md +++ b/docs/sdk/models/operations/performinstantrefineresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /lcm-instant-refine +## Example Usage + +```typescript +import { PerformInstantRefineResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PerformInstantRefineResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorobject.md b/docs/sdk/models/operations/pricingcalculatorobject.md index 7d9cf5f2..a47f0e7a 100644 --- a/docs/sdk/models/operations/pricingcalculatorobject.md +++ b/docs/sdk/models/operations/pricingcalculatorobject.md @@ -2,6 +2,13 @@ Parameters for FANTASY_AVATAR_GENERATION service +## Example Usage + +```typescript +import { PricingCalculatorObject } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorObject = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorobject.md b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorobject.md index 6140f4ca..665ef6a7 100644 --- a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorobject.md +++ b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorobject.md @@ -2,6 +2,13 @@ Parameters for IMAGE_GENERATION service +## Example Usage + +```typescript +import { PricingCalculatorPricingCalculatorObject } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorPricingCalculatorObject = {}; +``` ## Fields @@ -14,6 +21,7 @@ Parameters for IMAGE_GENERATION service | `imageWidth` | *number* | :heavy_minus_sign: | The input height of the images. Must be between 32 and 1024 and be a multiple of 8. Note: Input resolution is not always the same as output resolution due to upscaling from other features | | `inferenceSteps` | *number* | :heavy_minus_sign: | The Step Count to use for the generation. Must be between 10 and 60. | | `isModelCustom` | *boolean* | :heavy_minus_sign: | Enable to use custom model. | +| `isPhoenix` | *boolean* | :heavy_minus_sign: | Enable to use Phoenix model. | | `isSDXL` | *boolean* | :heavy_minus_sign: | Enable to use SDXL model. | | `isSDXLLightning` | *boolean* | :heavy_minus_sign: | Enable to use SDXL Lightning model. | | `loraCount` | *number* | :heavy_minus_sign: | The number of elements used for the generation. | diff --git a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestobject.md b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestobject.md index f9506f89..871ed112 100644 --- a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestobject.md +++ b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestobject.md @@ -2,6 +2,13 @@ Parameters for LCM_GENERATION service +## Example Usage + +```typescript +import { PricingCalculatorPricingCalculatorRequestObject } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorPricingCalculatorRequestObject = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyobject.md b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyobject.md index c68f16a4..1db8094e 100644 --- a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyobject.md +++ b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyobject.md @@ -2,6 +2,13 @@ Parameters for MODEL_TRAINING service +## Example Usage + +```typescript +import { PricingCalculatorPricingCalculatorRequestRequestBodyObject } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorPricingCalculatorRequestRequestBodyObject = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsobject.md b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsobject.md index 5a97b053..0aafb41d 100644 --- a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsobject.md +++ b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsobject.md @@ -2,6 +2,13 @@ Parameters for MOTION_GENERATION service +## Example Usage + +```typescript +import { PricingCalculatorPricingCalculatorRequestRequestBodyServiceParamsObject } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorPricingCalculatorRequestRequestBodyServiceParamsObject = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamstexturegenerationobject.md b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamstexturegenerationobject.md index a3583478..3af8acfc 100644 --- a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamstexturegenerationobject.md +++ b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamstexturegenerationobject.md @@ -2,6 +2,16 @@ Parameters for TEXTURE_GENERATION service +## Example Usage + +```typescript +import { + PricingCalculatorPricingCalculatorRequestRequestBodyServiceParamsTEXTUREGENERATIONObject, +} from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorPricingCalculatorRequestRequestBodyServiceParamsTEXTUREGENERATIONObject = + {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsuniversalupscalerobject.md b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsuniversalupscalerobject.md index b481170a..8a70e6fb 100644 --- a/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsuniversalupscalerobject.md +++ b/docs/sdk/models/operations/pricingcalculatorpricingcalculatorrequestrequestbodyserviceparamsuniversalupscalerobject.md @@ -2,6 +2,16 @@ Parameters for UNIVERSAL_UPSCALER service +## Example Usage + +```typescript +import { + PricingCalculatorPricingCalculatorRequestRequestBodyServiceParamsUNIVERSALUPSCALERObject, +} from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorPricingCalculatorRequestRequestBodyServiceParamsUNIVERSALUPSCALERObject = + {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorrequestbody.md b/docs/sdk/models/operations/pricingcalculatorrequestbody.md index 4a4254ee..b05a0b94 100644 --- a/docs/sdk/models/operations/pricingcalculatorrequestbody.md +++ b/docs/sdk/models/operations/pricingcalculatorrequestbody.md @@ -1,5 +1,12 @@ # PricingCalculatorRequestBody +## Example Usage + +```typescript +import { PricingCalculatorRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorresponse.md b/docs/sdk/models/operations/pricingcalculatorresponse.md index 921b8976..ca7b508f 100644 --- a/docs/sdk/models/operations/pricingcalculatorresponse.md +++ b/docs/sdk/models/operations/pricingcalculatorresponse.md @@ -1,5 +1,18 @@ # PricingCalculatorResponse +## Example Usage + +```typescript +import { PricingCalculatorResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorResponse = { + contentType: "", + statusCode: 368241, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/pricingcalculatorresponsebody.md b/docs/sdk/models/operations/pricingcalculatorresponsebody.md index c8e2b409..65fb1aa1 100644 --- a/docs/sdk/models/operations/pricingcalculatorresponsebody.md +++ b/docs/sdk/models/operations/pricingcalculatorresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /pricing-calculator +## Example Usage + +```typescript +import { PricingCalculatorResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PricingCalculatorResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptgenerationoutput.md b/docs/sdk/models/operations/promptgenerationoutput.md index 30a4c0e6..0aae310d 100644 --- a/docs/sdk/models/operations/promptgenerationoutput.md +++ b/docs/sdk/models/operations/promptgenerationoutput.md @@ -1,5 +1,12 @@ # PromptGenerationOutput +## Example Usage + +```typescript +import { PromptGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptimproverequestbody.md b/docs/sdk/models/operations/promptimproverequestbody.md index fc3c594b..e75e2386 100644 --- a/docs/sdk/models/operations/promptimproverequestbody.md +++ b/docs/sdk/models/operations/promptimproverequestbody.md @@ -2,6 +2,15 @@ Query parameters to be provided in the request body as a JSON object +## Example Usage + +```typescript +import { PromptImproveRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptImproveRequestBody = { + prompt: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptimproveresponse.md b/docs/sdk/models/operations/promptimproveresponse.md index 62b20f72..774c1b0c 100644 --- a/docs/sdk/models/operations/promptimproveresponse.md +++ b/docs/sdk/models/operations/promptimproveresponse.md @@ -1,5 +1,18 @@ # PromptImproveResponse +## Example Usage + +```typescript +import { PromptImproveResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptImproveResponse = { + contentType: "", + statusCode: 832620, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptimproveresponsebody.md b/docs/sdk/models/operations/promptimproveresponsebody.md index 9cad737f..51b23a5b 100644 --- a/docs/sdk/models/operations/promptimproveresponsebody.md +++ b/docs/sdk/models/operations/promptimproveresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /prompt/improve +## Example Usage + +```typescript +import { PromptImproveResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptImproveResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptrandompromptgenerationoutput.md b/docs/sdk/models/operations/promptrandompromptgenerationoutput.md index 3ddafd72..a4eae221 100644 --- a/docs/sdk/models/operations/promptrandompromptgenerationoutput.md +++ b/docs/sdk/models/operations/promptrandompromptgenerationoutput.md @@ -1,5 +1,12 @@ # PromptRandomPromptGenerationOutput +## Example Usage + +```typescript +import { PromptRandomPromptGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptRandomPromptGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptrandomresponse.md b/docs/sdk/models/operations/promptrandomresponse.md index b097c059..711d5ad9 100644 --- a/docs/sdk/models/operations/promptrandomresponse.md +++ b/docs/sdk/models/operations/promptrandomresponse.md @@ -1,5 +1,18 @@ # PromptRandomResponse +## Example Usage + +```typescript +import { PromptRandomResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptRandomResponse = { + contentType: "", + statusCode: 957156, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/promptrandomresponsebody.md b/docs/sdk/models/operations/promptrandomresponsebody.md index c919818c..676df41c 100644 --- a/docs/sdk/models/operations/promptrandomresponsebody.md +++ b/docs/sdk/models/operations/promptrandomresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /prompt/random +## Example Usage + +```typescript +import { PromptRandomResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: PromptRandomResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/sdgenerationoutput.md b/docs/sdk/models/operations/sdgenerationoutput.md index 654e1d7d..e6bef323 100644 --- a/docs/sdk/models/operations/sdgenerationoutput.md +++ b/docs/sdk/models/operations/sdgenerationoutput.md @@ -1,5 +1,12 @@ # SDGenerationOutput +## Example Usage + +```typescript +import { SDGenerationOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: SDGenerationOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/sdtrainingoutput.md b/docs/sdk/models/operations/sdtrainingoutput.md index f725eccb..f49d7459 100644 --- a/docs/sdk/models/operations/sdtrainingoutput.md +++ b/docs/sdk/models/operations/sdtrainingoutput.md @@ -1,5 +1,12 @@ # SDTrainingOutput +## Example Usage + +```typescript +import { SDTrainingOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: SDTrainingOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/sdunzoomoutput.md b/docs/sdk/models/operations/sdunzoomoutput.md index 4aba87cf..4efad37f 100644 --- a/docs/sdk/models/operations/sdunzoomoutput.md +++ b/docs/sdk/models/operations/sdunzoomoutput.md @@ -1,5 +1,12 @@ # SDUnzoomOutput +## Example Usage + +```typescript +import { SDUnzoomOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: SDUnzoomOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/sdupscalejoboutput.md b/docs/sdk/models/operations/sdupscalejoboutput.md index 26a49d16..38547a39 100644 --- a/docs/sdk/models/operations/sdupscalejoboutput.md +++ b/docs/sdk/models/operations/sdupscalejoboutput.md @@ -1,5 +1,12 @@ # SDUpscaleJobOutput +## Example Usage + +```typescript +import { SDUpscaleJobOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: SDUpscaleJobOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/texturegenerationjoboutput.md b/docs/sdk/models/operations/texturegenerationjoboutput.md index 5a9379c2..2ab0cc10 100644 --- a/docs/sdk/models/operations/texturegenerationjoboutput.md +++ b/docs/sdk/models/operations/texturegenerationjoboutput.md @@ -1,5 +1,12 @@ # TextureGenerationJobOutput +## Example Usage + +```typescript +import { TextureGenerationJobOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: TextureGenerationJobOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/transparencytype.md b/docs/sdk/models/operations/transparencytype.md index 78c50ce1..6a8c8370 100644 --- a/docs/sdk/models/operations/transparencytype.md +++ b/docs/sdk/models/operations/transparencytype.md @@ -2,6 +2,13 @@ Which type of transparency this image should use +## Example Usage + +```typescript +import { TransparencyType } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: TransparencyType = TransparencyType.ForegroundOnly; +``` ## Values diff --git a/docs/sdk/models/operations/universalupscaleroutput.md b/docs/sdk/models/operations/universalupscaleroutput.md index 1404159d..f0ae8d90 100644 --- a/docs/sdk/models/operations/universalupscaleroutput.md +++ b/docs/sdk/models/operations/universalupscaleroutput.md @@ -1,5 +1,12 @@ # UniversalUpscalerOutput +## Example Usage + +```typescript +import { UniversalUpscalerOutput } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UniversalUpscalerOutput = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadcanvasinitimagerequestbody.md b/docs/sdk/models/operations/uploadcanvasinitimagerequestbody.md index 275205e9..dbaf0ff0 100644 --- a/docs/sdk/models/operations/uploadcanvasinitimagerequestbody.md +++ b/docs/sdk/models/operations/uploadcanvasinitimagerequestbody.md @@ -2,6 +2,16 @@ Query parameters provided in the request body as a JSON object +## Example Usage + +```typescript +import { UploadCanvasInitImageRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadCanvasInitImageRequestBody = { + initExtension: "", + maskExtension: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadcanvasinitimageresponse.md b/docs/sdk/models/operations/uploadcanvasinitimageresponse.md index 6d4c3196..fbad916d 100644 --- a/docs/sdk/models/operations/uploadcanvasinitimageresponse.md +++ b/docs/sdk/models/operations/uploadcanvasinitimageresponse.md @@ -1,5 +1,18 @@ # UploadCanvasInitImageResponse +## Example Usage + +```typescript +import { UploadCanvasInitImageResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadCanvasInitImageResponse = { + contentType: "", + statusCode: 715190, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadcanvasinitimageresponsebody.md b/docs/sdk/models/operations/uploadcanvasinitimageresponsebody.md index 9ac32608..a039bc3c 100644 --- a/docs/sdk/models/operations/uploadcanvasinitimageresponsebody.md +++ b/docs/sdk/models/operations/uploadcanvasinitimageresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /canvas-init-image +## Example Usage + +```typescript +import { UploadCanvasInitImageResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadCanvasInitImageResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimagefromgenrequest.md b/docs/sdk/models/operations/uploaddatasetimagefromgenrequest.md index 2e92acf6..3395f5a3 100644 --- a/docs/sdk/models/operations/uploaddatasetimagefromgenrequest.md +++ b/docs/sdk/models/operations/uploaddatasetimagefromgenrequest.md @@ -1,5 +1,17 @@ # UploadDatasetImageFromGenRequest +## Example Usage + +```typescript +import { UploadDatasetImageFromGenRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageFromGenRequest = { + requestBody: { + generatedImageId: "", + }, + datasetId: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimagefromgenrequestbody.md b/docs/sdk/models/operations/uploaddatasetimagefromgenrequestbody.md index 70150085..310b0c02 100644 --- a/docs/sdk/models/operations/uploaddatasetimagefromgenrequestbody.md +++ b/docs/sdk/models/operations/uploaddatasetimagefromgenrequestbody.md @@ -2,6 +2,15 @@ Query parameters to be provided in the request body as a JSON object +## Example Usage + +```typescript +import { UploadDatasetImageFromGenRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageFromGenRequestBody = { + generatedImageId: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimagefromgenresponse.md b/docs/sdk/models/operations/uploaddatasetimagefromgenresponse.md index 820e87d9..033eef12 100644 --- a/docs/sdk/models/operations/uploaddatasetimagefromgenresponse.md +++ b/docs/sdk/models/operations/uploaddatasetimagefromgenresponse.md @@ -1,5 +1,18 @@ # UploadDatasetImageFromGenResponse +## Example Usage + +```typescript +import { UploadDatasetImageFromGenResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageFromGenResponse = { + contentType: "", + statusCode: 437587, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimagefromgenresponsebody.md b/docs/sdk/models/operations/uploaddatasetimagefromgenresponsebody.md index b3862411..a9c9f2e9 100644 --- a/docs/sdk/models/operations/uploaddatasetimagefromgenresponsebody.md +++ b/docs/sdk/models/operations/uploaddatasetimagefromgenresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /datasets/{datasetId}/upload/gen +## Example Usage + +```typescript +import { UploadDatasetImageFromGenResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageFromGenResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimagerequest.md b/docs/sdk/models/operations/uploaddatasetimagerequest.md index ea432650..5d837eab 100644 --- a/docs/sdk/models/operations/uploaddatasetimagerequest.md +++ b/docs/sdk/models/operations/uploaddatasetimagerequest.md @@ -1,5 +1,17 @@ # UploadDatasetImageRequest +## Example Usage + +```typescript +import { UploadDatasetImageRequest } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageRequest = { + requestBody: { + extension: "gif", + }, + datasetId: "", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimagerequestbody.md b/docs/sdk/models/operations/uploaddatasetimagerequestbody.md index 23345fd7..f4b80fc1 100644 --- a/docs/sdk/models/operations/uploaddatasetimagerequestbody.md +++ b/docs/sdk/models/operations/uploaddatasetimagerequestbody.md @@ -2,6 +2,15 @@ Query parameters provided in the request body as a JSON object +## Example Usage + +```typescript +import { UploadDatasetImageRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageRequestBody = { + extension: "gif", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimageresponse.md b/docs/sdk/models/operations/uploaddatasetimageresponse.md index 8206db4d..cbe0a785 100644 --- a/docs/sdk/models/operations/uploaddatasetimageresponse.md +++ b/docs/sdk/models/operations/uploaddatasetimageresponse.md @@ -1,5 +1,18 @@ # UploadDatasetImageResponse +## Example Usage + +```typescript +import { UploadDatasetImageResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageResponse = { + contentType: "", + statusCode: 384382, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploaddatasetimageresponsebody.md b/docs/sdk/models/operations/uploaddatasetimageresponsebody.md index 6993a16b..5366c347 100644 --- a/docs/sdk/models/operations/uploaddatasetimageresponsebody.md +++ b/docs/sdk/models/operations/uploaddatasetimageresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /datasets/{datasetId}/upload +## Example Usage + +```typescript +import { UploadDatasetImageResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadDatasetImageResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadinitimagerequestbody.md b/docs/sdk/models/operations/uploadinitimagerequestbody.md index 5f494052..4e57e8b4 100644 --- a/docs/sdk/models/operations/uploadinitimagerequestbody.md +++ b/docs/sdk/models/operations/uploadinitimagerequestbody.md @@ -2,6 +2,15 @@ Query parameters provided in the request body as a JSON object +## Example Usage + +```typescript +import { UploadInitImageRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadInitImageRequestBody = { + extension: "m1v", +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadinitimageresponse.md b/docs/sdk/models/operations/uploadinitimageresponse.md index dc75143a..8cfbcd63 100644 --- a/docs/sdk/models/operations/uploadinitimageresponse.md +++ b/docs/sdk/models/operations/uploadinitimageresponse.md @@ -1,5 +1,18 @@ # UploadInitImageResponse +## Example Usage + +```typescript +import { UploadInitImageResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadInitImageResponse = { + contentType: "", + statusCode: 857946, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadinitimageresponsebody.md b/docs/sdk/models/operations/uploadinitimageresponsebody.md index 545aa2be..e265dc5d 100644 --- a/docs/sdk/models/operations/uploadinitimageresponsebody.md +++ b/docs/sdk/models/operations/uploadinitimageresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /init-image +## Example Usage + +```typescript +import { UploadInitImageResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadInitImageResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadmodelassetrequestbody.md b/docs/sdk/models/operations/uploadmodelassetrequestbody.md index 8d4861ed..30eef0ce 100644 --- a/docs/sdk/models/operations/uploadmodelassetrequestbody.md +++ b/docs/sdk/models/operations/uploadmodelassetrequestbody.md @@ -2,6 +2,13 @@ Query parameters can also be provided in the request body as a JSON object +## Example Usage + +```typescript +import { UploadModelAssetRequestBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadModelAssetRequestBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadmodelassetresponse.md b/docs/sdk/models/operations/uploadmodelassetresponse.md index 475136f9..c4875a94 100644 --- a/docs/sdk/models/operations/uploadmodelassetresponse.md +++ b/docs/sdk/models/operations/uploadmodelassetresponse.md @@ -1,5 +1,18 @@ # UploadModelAssetResponse +## Example Usage + +```typescript +import { UploadModelAssetResponse } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadModelAssetResponse = { + contentType: "", + statusCode: 20218, + rawResponse: new Response('{"message": "hello world"}', { + headers: { "Content-Type": "application/json" }, + }), +}; +``` ## Fields diff --git a/docs/sdk/models/operations/uploadmodelassetresponsebody.md b/docs/sdk/models/operations/uploadmodelassetresponsebody.md index 469a934a..711fffdf 100644 --- a/docs/sdk/models/operations/uploadmodelassetresponsebody.md +++ b/docs/sdk/models/operations/uploadmodelassetresponsebody.md @@ -2,6 +2,13 @@ Responses for POST /api/rest/v1/models-3d/upload +## Example Usage + +```typescript +import { UploadModelAssetResponseBody } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UploadModelAssetResponseBody = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/userdetails.md b/docs/sdk/models/operations/userdetails.md index f7af9fb5..7dfcfa32 100644 --- a/docs/sdk/models/operations/userdetails.md +++ b/docs/sdk/models/operations/userdetails.md @@ -2,6 +2,13 @@ columns and relationships of "user_details" +## Example Usage + +```typescript +import { UserDetails } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: UserDetails = {}; +``` ## Fields diff --git a/docs/sdk/models/operations/users.md b/docs/sdk/models/operations/users.md index b74b91b9..ac4d0cf0 100644 --- a/docs/sdk/models/operations/users.md +++ b/docs/sdk/models/operations/users.md @@ -2,6 +2,13 @@ columns and relationships of "users" +## Example Usage + +```typescript +import { Users } from "@leonardo-ai/sdk/sdk/models/operations"; + +let value: Users = {}; +``` ## Fields diff --git a/docs/sdk/models/shared/canvasrequesttype.md b/docs/sdk/models/shared/canvasrequesttype.md index dd47fc16..388a2fbf 100644 --- a/docs/sdk/models/shared/canvasrequesttype.md +++ b/docs/sdk/models/shared/canvasrequesttype.md @@ -2,6 +2,13 @@ The type of request for the Canvas Editor. +## Example Usage + +```typescript +import { CanvasRequestType } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: CanvasRequestType = CanvasRequestType.Sketch2Img; +``` ## Values diff --git a/docs/sdk/models/shared/controlnetinput.md b/docs/sdk/models/shared/controlnetinput.md index c7826084..eb1d276d 100644 --- a/docs/sdk/models/shared/controlnetinput.md +++ b/docs/sdk/models/shared/controlnetinput.md @@ -1,5 +1,12 @@ # ControlnetInput +## Example Usage + +```typescript +import { ControlnetInput } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: ControlnetInput = {}; +``` ## Fields diff --git a/docs/sdk/models/shared/controlnettype.md b/docs/sdk/models/shared/controlnettype.md index e9402bf2..55dda291 100644 --- a/docs/sdk/models/shared/controlnettype.md +++ b/docs/sdk/models/shared/controlnettype.md @@ -4,6 +4,13 @@ This parameter will be deprecated in September 2024. Please use the controlnets > :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. +## Example Usage + +```typescript +import { ControlnetType } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: ControlnetType = ControlnetType.Depth; +``` ## Values diff --git a/docs/sdk/models/shared/custommodeltype.md b/docs/sdk/models/shared/custommodeltype.md index 319793e8..2f471d4d 100644 --- a/docs/sdk/models/shared/custommodeltype.md +++ b/docs/sdk/models/shared/custommodeltype.md @@ -2,6 +2,13 @@ The category the most accurately reflects the model. +## Example Usage + +```typescript +import { CustomModelType } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: CustomModelType = CustomModelType.Characters; +``` ## Values diff --git a/docs/sdk/models/shared/elementinput.md b/docs/sdk/models/shared/elementinput.md index ef1a7140..5cf0213a 100644 --- a/docs/sdk/models/shared/elementinput.md +++ b/docs/sdk/models/shared/elementinput.md @@ -1,5 +1,12 @@ # ElementInput +## Example Usage + +```typescript +import { ElementInput } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: ElementInput = {}; +``` ## Fields diff --git a/docs/sdk/models/shared/initimagetype.md b/docs/sdk/models/shared/initimagetype.md index 162e6fbf..ab3fad71 100644 --- a/docs/sdk/models/shared/initimagetype.md +++ b/docs/sdk/models/shared/initimagetype.md @@ -2,6 +2,13 @@ Type indicating whether the init image is uploaded or generated. +## Example Usage + +```typescript +import { InitImageType } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: InitImageType = InitImageType.Generated; +``` ## Values diff --git a/docs/sdk/models/shared/jobstatus.md b/docs/sdk/models/shared/jobstatus.md index aa1f961f..061f51aa 100644 --- a/docs/sdk/models/shared/jobstatus.md +++ b/docs/sdk/models/shared/jobstatus.md @@ -2,6 +2,13 @@ The status of the current task. +## Example Usage + +```typescript +import { JobStatus } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: JobStatus = JobStatus.Pending; +``` ## Values diff --git a/docs/sdk/models/shared/lcmgenerationstyle.md b/docs/sdk/models/shared/lcmgenerationstyle.md index d683afa9..aead132e 100644 --- a/docs/sdk/models/shared/lcmgenerationstyle.md +++ b/docs/sdk/models/shared/lcmgenerationstyle.md @@ -2,6 +2,13 @@ The style to generate LCM images with. +## Example Usage + +```typescript +import { LcmGenerationStyle } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: LcmGenerationStyle = LcmGenerationStyle.Render3D; +``` ## Values diff --git a/docs/sdk/models/shared/pricingcalculatorservices.md b/docs/sdk/models/shared/pricingcalculatorservices.md index 6f314122..f2da4eef 100644 --- a/docs/sdk/models/shared/pricingcalculatorservices.md +++ b/docs/sdk/models/shared/pricingcalculatorservices.md @@ -2,6 +2,13 @@ The services to be chosen for calculating the API credit cost. +## Example Usage + +```typescript +import { PricingCalculatorServices } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: PricingCalculatorServices = PricingCalculatorServices.LcmGeneration; +``` ## Values diff --git a/docs/sdk/models/shared/sdgenerationschedulers.md b/docs/sdk/models/shared/sdgenerationschedulers.md index f2dadac6..c9b669a9 100644 --- a/docs/sdk/models/shared/sdgenerationschedulers.md +++ b/docs/sdk/models/shared/sdgenerationschedulers.md @@ -2,6 +2,13 @@ The scheduler to generate images with. Defaults to EULER_DISCRETE if not specified. +## Example Usage + +```typescript +import { SdGenerationSchedulers } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: SdGenerationSchedulers = SdGenerationSchedulers.Pndm; +``` ## Values diff --git a/docs/sdk/models/shared/sdgenerationstyle.md b/docs/sdk/models/shared/sdgenerationstyle.md index b62d2a40..45ca1030 100644 --- a/docs/sdk/models/shared/sdgenerationstyle.md +++ b/docs/sdk/models/shared/sdgenerationstyle.md @@ -2,6 +2,13 @@ The style to generate images with. When photoReal is enabled, refer to the Guide section for a full list. When alchemy is disabled, use LEONARDO or NONE. When alchemy is enabled, use ANIME, CREATIVE, DYNAMIC, ENVIRONMENT, GENERAL, ILLUSTRATION, PHOTOGRAPHY, RAYTRACED, RENDER_3D, SKETCH_BW, SKETCH_COLOR, or NONE. +## Example Usage + +```typescript +import { SdGenerationStyle } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: SdGenerationStyle = SdGenerationStyle.Render3D; +``` ## Values diff --git a/docs/sdk/models/shared/sdversions.md b/docs/sdk/models/shared/sdversions.md index 9372735b..baf31c92 100644 --- a/docs/sdk/models/shared/sdversions.md +++ b/docs/sdk/models/shared/sdversions.md @@ -2,6 +2,13 @@ The base version of stable diffusion to use if not using a custom model. v1_5 is 1.5, v2 is 2.1, if not specified it will default to v1_5. Also includes SDXL and SDXL Lightning models +## Example Usage + +```typescript +import { SdVersions } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: SdVersions = SdVersions.Sdxl08; +``` ## Values diff --git a/docs/sdk/models/shared/security.md b/docs/sdk/models/shared/security.md index 1ee173b3..8b6ccf24 100644 --- a/docs/sdk/models/shared/security.md +++ b/docs/sdk/models/shared/security.md @@ -1,5 +1,14 @@ # Security +## Example Usage + +```typescript +import { Security } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: Security = { + bearerAuth: "", +}; +``` ## Fields diff --git a/docs/sdk/models/shared/strength.md b/docs/sdk/models/shared/strength.md index b49b703a..51cedd1a 100644 --- a/docs/sdk/models/shared/strength.md +++ b/docs/sdk/models/shared/strength.md @@ -2,6 +2,13 @@ When training using the PIXEL_ART model type, this influences the training strength. +## Example Usage + +```typescript +import { Strength } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: Strength = Strength.Medium; +``` ## Values diff --git a/docs/sdk/models/shared/strengthtype.md b/docs/sdk/models/shared/strengthtype.md index 3c9e6c5b..d8724ba5 100644 --- a/docs/sdk/models/shared/strengthtype.md +++ b/docs/sdk/models/shared/strengthtype.md @@ -2,6 +2,13 @@ Strength type for the controlnet. Can only be used for Style, Character and Content Reference controlnets. +## Example Usage + +```typescript +import { StrengthType } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: StrengthType = StrengthType.High; +``` ## Values diff --git a/docs/sdk/models/shared/universalupscalerstyle.md b/docs/sdk/models/shared/universalupscalerstyle.md index 5e8b57aa..4e1904dd 100644 --- a/docs/sdk/models/shared/universalupscalerstyle.md +++ b/docs/sdk/models/shared/universalupscalerstyle.md @@ -2,6 +2,13 @@ The style to upscale images using universal upscaler with. +## Example Usage + +```typescript +import { UniversalUpscalerStyle } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: UniversalUpscalerStyle = UniversalUpscalerStyle.CGARTAndGAMEASSETS; +``` ## Values diff --git a/docs/sdk/models/shared/variationtype.md b/docs/sdk/models/shared/variationtype.md index d512b16c..459a97de 100644 --- a/docs/sdk/models/shared/variationtype.md +++ b/docs/sdk/models/shared/variationtype.md @@ -2,6 +2,13 @@ The type of variation. +## Example Usage + +```typescript +import { VariationType } from "@leonardo-ai/sdk/sdk/models/shared"; + +let value: VariationType = VariationType.Unzoom; +``` ## Values diff --git a/docs/sdks/dataset/README.md b/docs/sdks/dataset/README.md index ab617892..80e9ecaa 100644 --- a/docs/sdks/dataset/README.md +++ b/docs/sdks/dataset/README.md @@ -1,6 +1,8 @@ # Dataset (*dataset*) +## Overview + ### Available Operations * [createDataset](#createdataset) - Create a Dataset @@ -34,6 +36,38 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { datasetCreateDataset } from "@leonardo-ai/sdk/funcs/datasetCreateDataset.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await datasetCreateDataset(leonardo, { + name: "", + }); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -43,16 +77,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateDatasetResponse](../../sdk/models/operations/createdatasetresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## deleteDatasetById This endpoint deletes the specific dataset @@ -67,7 +102,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.dataset.deleteDatasetById(""); + const result = await leonardo.dataset.deleteDatasetById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { datasetDeleteDatasetById } from "@leonardo-ai/sdk/funcs/datasetDeleteDatasetById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await datasetDeleteDatasetById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -85,16 +150,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.DeleteDatasetByIdResponse](../../sdk/models/operations/deletedatasetbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## getDatasetById This endpoint gets the specific dataset @@ -109,7 +175,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.dataset.getDatasetById(""); + const result = await leonardo.dataset.getDatasetById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { datasetGetDatasetById } from "@leonardo-ai/sdk/funcs/datasetGetDatasetById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await datasetGetDatasetById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -127,16 +223,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetDatasetByIdResponse](../../sdk/models/operations/getdatasetbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## uploadDatasetImage This endpoint returns presigned details to upload a dataset image to S3 @@ -162,6 +259,38 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { datasetUploadDatasetImage } from "@leonardo-ai/sdk/funcs/datasetUploadDatasetImage.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await datasetUploadDatasetImage(leonardo, { + extension: "gif", + }, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -172,16 +301,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.UploadDatasetImageResponse](../../sdk/models/operations/uploaddatasetimageresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## uploadDatasetImageFromGen This endpoint will upload a previously generated image to the dataset @@ -207,6 +337,38 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { datasetUploadDatasetImageFromGen } from "@leonardo-ai/sdk/funcs/datasetUploadDatasetImageFromGen.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await datasetUploadDatasetImageFromGen(leonardo, { + generatedImageId: "", + }, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -217,10 +379,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.UploadDatasetImageFromGenResponse](../../sdk/models/operations/uploaddatasetimagefromgenresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/elements/README.md b/docs/sdks/elements/README.md index 3d0acdd8..beb531a7 100644 --- a/docs/sdks/elements/README.md +++ b/docs/sdks/elements/README.md @@ -1,6 +1,8 @@ # Elements (*elements*) +## Overview + ### Available Operations * [listElements](#listelements) - List Elements @@ -28,6 +30,36 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { elementsListElements } from "@leonardo-ai/sdk/funcs/elementsListElements.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await elementsListElements(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -36,10 +68,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.ListElementsResponse](../../sdk/models/operations/listelementsresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/image/README.md b/docs/sdks/image/README.md index ec4f7ec1..71af9a98 100644 --- a/docs/sdks/image/README.md +++ b/docs/sdks/image/README.md @@ -1,6 +1,8 @@ # Image (*image*) +## Overview + ### Available Operations * [createGeneration](#creategeneration) - Create a Generation of Images @@ -31,6 +33,36 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { imageCreateGeneration } from "@leonardo-ai/sdk/funcs/imageCreateGeneration.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await imageCreateGeneration(leonardo, {}); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -40,16 +72,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateGenerationResponse](../../sdk/models/operations/creategenerationresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## deleteGenerationById This endpoint deletes a specific generation @@ -64,7 +97,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.image.deleteGenerationById(""); + const result = await leonardo.image.deleteGenerationById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { imageDeleteGenerationById } from "@leonardo-ai/sdk/funcs/imageDeleteGenerationById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await imageDeleteGenerationById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -82,16 +145,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.DeleteGenerationByIdResponse](../../sdk/models/operations/deletegenerationbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## getGenerationById This endpoint will provide information about a specific generation @@ -106,7 +170,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.image.getGenerationById(""); + const result = await leonardo.image.getGenerationById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { imageGetGenerationById } from "@leonardo-ai/sdk/funcs/imageGetGenerationById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await imageGetGenerationById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -124,16 +218,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetGenerationByIdResponse](../../sdk/models/operations/getgenerationbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## getGenerationsByUserId This endpoint returns all generations by a specific user @@ -148,7 +243,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.image.getGenerationsByUserId("", 10, 0); + const result = await leonardo.image.getGenerationsByUserId(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { imageGetGenerationsByUserId } from "@leonardo-ai/sdk/funcs/imageGetGenerationsByUserId.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await imageGetGenerationsByUserId(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -168,10 +293,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetGenerationsByUserIdResponse](../../sdk/models/operations/getgenerationsbyuseridresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/initimages/README.md b/docs/sdks/initimages/README.md index 4b48c84a..446e3e0b 100644 --- a/docs/sdks/initimages/README.md +++ b/docs/sdks/initimages/README.md @@ -1,6 +1,8 @@ # InitImages (*initImages*) +## Overview + ### Available Operations * [deleteInitImageById](#deleteinitimagebyid) - Delete init image @@ -22,7 +24,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.deleteInitImageById(""); + const result = await leonardo.initImages.deleteInitImageById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { initImagesDeleteInitImageById } from "@leonardo-ai/sdk/funcs/initImagesDeleteInitImageById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await initImagesDeleteInitImageById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -40,16 +72,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.DeleteInitImageByIdResponse](../../sdk/models/operations/deleteinitimagebyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## getInitImageById This endpoint will return a single init image @@ -64,7 +97,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.initImages.getInitImageById(""); + const result = await leonardo.initImages.getInitImageById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { initImagesGetInitImageById } from "@leonardo-ai/sdk/funcs/initImagesGetInitImageById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await initImagesGetInitImageById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -82,16 +145,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetInitImageByIdResponse](../../sdk/models/operations/getinitimagebyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## uploadCanvasInitImage This endpoint returns presigned details to upload an init image and a mask image to S3 @@ -118,6 +182,39 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { initImagesUploadCanvasInitImage } from "@leonardo-ai/sdk/funcs/initImagesUploadCanvasInitImage.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await initImagesUploadCanvasInitImage(leonardo, { + initExtension: "", + maskExtension: "", + }); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -127,16 +224,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.UploadCanvasInitImageResponse](../../sdk/models/operations/uploadcanvasinitimageresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## uploadInitImage This endpoint returns presigned details to upload an init image to S3 @@ -162,6 +260,38 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { initImagesUploadInitImage } from "@leonardo-ai/sdk/funcs/initImagesUploadInitImage.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await initImagesUploadInitImage(leonardo, { + extension: "png", + }); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -171,10 +301,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.UploadInitImageResponse](../../sdk/models/operations/uploadinitimageresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/leonardo/README.md b/docs/sdks/leonardo/README.md index c43112e3..9fe03460 100644 --- a/docs/sdks/leonardo/README.md +++ b/docs/sdks/leonardo/README.md @@ -1,9 +1,5 @@ # Leonardo SDK - ## Overview -Rest Endpoints: Leonardo.Ai API OpenAPI specification. - -### Available Operations - +Rest Endpoints: Leonardo.Ai API OpenAPI specification. \ No newline at end of file diff --git a/docs/sdks/models/README.md b/docs/sdks/models/README.md index 8f484b58..d72fdad9 100644 --- a/docs/sdks/models/README.md +++ b/docs/sdks/models/README.md @@ -1,6 +1,8 @@ # Models (*models*) +## Overview + ### Available Operations * [createModel](#createmodel) - Train a Custom Model @@ -35,6 +37,40 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { modelsCreateModel } from "@leonardo-ai/sdk/funcs/modelsCreateModel.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await modelsCreateModel(leonardo, { + datasetId: "", + instancePrompt: "", + name: "", + }); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -44,16 +80,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateModelResponse](../../sdk/models/operations/createmodelresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## deleteModelById This endpoint will delete a specific custom model @@ -68,7 +105,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.models.deleteModelById(""); + const result = await leonardo.models.deleteModelById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { modelsDeleteModelById } from "@leonardo-ai/sdk/funcs/modelsDeleteModelById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await modelsDeleteModelById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -86,16 +153,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.DeleteModelByIdResponse](../../sdk/models/operations/deletemodelbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## getModelById This endpoint gets the specific custom model @@ -110,7 +178,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.models.getModelById(""); + const result = await leonardo.models.getModelById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { modelsGetModelById } from "@leonardo-ai/sdk/funcs/modelsGetModelById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await modelsGetModelById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -128,16 +226,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetModelByIdResponse](../../sdk/models/operations/getmodelbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## listPlatformModels Get a list of public Platform Models available for use with generations. @@ -161,6 +260,36 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { modelsListPlatformModels } from "@leonardo-ai/sdk/funcs/modelsListPlatformModels.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await modelsListPlatformModels(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -169,10 +298,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.ListPlatformModelsResponse](../../sdk/models/operations/listplatformmodelsresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/motion/README.md b/docs/sdks/motion/README.md index f6e72ec6..56fbd3e8 100644 --- a/docs/sdks/motion/README.md +++ b/docs/sdks/motion/README.md @@ -1,6 +1,8 @@ # Motion (*motion*) +## Overview + ### Available Operations * [createSVDMotionGeneration](#createsvdmotiongeneration) - Create SVD Motion Generation @@ -19,9 +21,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.motion.createSVDMotionGeneration({ - imageId: "", - }); + const result = await leonardo.motion.createSVDMotionGeneration(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { motionCreateSVDMotionGeneration } from "@leonardo-ai/sdk/funcs/motionCreateSVDMotionGeneration.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await motionCreateSVDMotionGeneration(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -39,10 +69,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateSVDMotionGenerationResponse](../../sdk/models/operations/createsvdmotiongenerationresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/pricingcalculator/README.md b/docs/sdks/pricingcalculator/README.md index fb2b8b6d..79a3f04c 100644 --- a/docs/sdks/pricingcalculator/README.md +++ b/docs/sdks/pricingcalculator/README.md @@ -1,6 +1,8 @@ # PricingCalculator (*pricingCalculator*) +## Overview + ### Available Operations * [pricingCalculator](#pricingcalculator) - Calculating API Cost @@ -19,7 +21,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.pricingCalculator.pricingCalculator({}); + const result = await leonardo.pricingCalculator.pricingCalculator(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { pricingCalculatorPricingCalculator } from "@leonardo-ai/sdk/funcs/pricingCalculatorPricingCalculator.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await pricingCalculatorPricingCalculator(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -37,10 +69,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.PricingCalculatorResponse](../../sdk/models/operations/pricingcalculatorresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/prompt/README.md b/docs/sdks/prompt/README.md index 9a6e5db3..af7fefac 100644 --- a/docs/sdks/prompt/README.md +++ b/docs/sdks/prompt/README.md @@ -1,6 +1,8 @@ # Prompt (*prompt*) +## Overview + ### Available Operations * [promptImprove](#promptimprove) - Improve a Prompt @@ -31,6 +33,38 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { promptPromptImprove } from "@leonardo-ai/sdk/funcs/promptPromptImprove.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await promptPromptImprove(leonardo, { + prompt: "", + }); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -40,16 +74,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.PromptImproveResponse](../../sdk/models/operations/promptimproveresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## promptRandom This endpoint returns a random prompt @@ -73,6 +108,36 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { promptPromptRandom } from "@leonardo-ai/sdk/funcs/promptPromptRandom.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await promptPromptRandom(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -81,10 +146,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.PromptRandomResponse](../../sdk/models/operations/promptrandomresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/realtimecanvas/README.md b/docs/sdks/realtimecanvas/README.md index e7d81d39..139e7aac 100644 --- a/docs/sdks/realtimecanvas/README.md +++ b/docs/sdks/realtimecanvas/README.md @@ -1,6 +1,8 @@ # RealtimeCanvas (*realtimeCanvas*) +## Overview + ### Available Operations * [createLCMGeneration](#createlcmgeneration) - Create LCM Generation @@ -22,10 +24,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.realtimeCanvas.createLCMGeneration({ - imageDataUrl: "", - prompt: "", - }); + const result = await leonardo.realtimeCanvas.createLCMGeneration(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { realtimeCanvasCreateLCMGeneration } from "@leonardo-ai/sdk/funcs/realtimeCanvasCreateLCMGeneration.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await realtimeCanvasCreateLCMGeneration(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -43,16 +72,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateLCMGenerationResponse](../../sdk/models/operations/createlcmgenerationresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## performAlchemyUpscaleLCM This endpoint will perform Alchemy Upscale on a LCM image @@ -67,10 +97,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.realtimeCanvas.performAlchemyUpscaleLCM({ - imageDataUrl: "", - prompt: "", - }); + const result = await leonardo.realtimeCanvas.performAlchemyUpscaleLCM(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { realtimeCanvasPerformAlchemyUpscaleLCM } from "@leonardo-ai/sdk/funcs/realtimeCanvasPerformAlchemyUpscaleLCM.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await realtimeCanvasPerformAlchemyUpscaleLCM(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -88,16 +145,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.PerformAlchemyUpscaleLCMResponse](../../sdk/models/operations/performalchemyupscalelcmresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## performInpaintingLCM This endpoint will perform a inpainting on a LCM image @@ -112,11 +170,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.realtimeCanvas.performInpaintingLCM({ - imageDataUrl: "", - maskDataUrl: "", - prompt: "", - }); + const result = await leonardo.realtimeCanvas.performInpaintingLCM(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { realtimeCanvasPerformInpaintingLCM } from "@leonardo-ai/sdk/funcs/realtimeCanvasPerformInpaintingLCM.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await realtimeCanvasPerformInpaintingLCM(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -134,16 +218,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.PerformInpaintingLCMResponse](../../sdk/models/operations/performinpaintinglcmresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## performInstantRefine This endpoint will perform instant refine on a LCM image @@ -158,10 +243,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.realtimeCanvas.performInstantRefine({ - imageDataUrl: "", - prompt: "", - }); + const result = await leonardo.realtimeCanvas.performInstantRefine(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { realtimeCanvasPerformInstantRefine } from "@leonardo-ai/sdk/funcs/realtimeCanvasPerformInstantRefine.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await realtimeCanvasPerformInstantRefine(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -179,10 +291,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.PerformInstantRefineResponse](../../sdk/models/operations/performinstantrefineresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/texture/README.md b/docs/sdks/texture/README.md index efde970c..fa345134 100644 --- a/docs/sdks/texture/README.md +++ b/docs/sdks/texture/README.md @@ -1,6 +1,8 @@ # Texture (*texture*) +## Overview + ### Available Operations * [createTextureGeneration](#createtexturegeneration) - Create Texture Generation @@ -20,7 +22,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.texture.createTextureGeneration({}); + const result = await leonardo.texture.createTextureGeneration(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { textureCreateTextureGeneration } from "@leonardo-ai/sdk/funcs/textureCreateTextureGeneration.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await textureCreateTextureGeneration(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -38,16 +70,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateTextureGenerationResponse](../../sdk/models/operations/createtexturegenerationresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## deleteTextureGenerationById This endpoint deletes the specific texture generation. @@ -62,7 +95,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.texture.deleteTextureGenerationById("", {}); + const result = await leonardo.texture.deleteTextureGenerationById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { textureDeleteTextureGenerationById } from "@leonardo-ai/sdk/funcs/textureDeleteTextureGenerationById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await textureDeleteTextureGenerationById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -81,10 +144,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.DeleteTextureGenerationByIdResponse](../../sdk/models/operations/deletetexturegenerationbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/threedmodelassets/README.md b/docs/sdks/threedmodelassets/README.md index 916d907f..642c257b 100644 --- a/docs/sdks/threedmodelassets/README.md +++ b/docs/sdks/threedmodelassets/README.md @@ -1,6 +1,8 @@ # ThreeDModelAssets (*threeDModelAssets*) +## Overview + ### Available Operations * [delete3DModelById](#delete3dmodelbyid) - Delete 3D Model by ID @@ -20,7 +22,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.threeDModelAssets.delete3DModelById("", {}); + const result = await leonardo.threeDModelAssets.delete3DModelById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { threeDModelAssetsDelete3DModelById } from "@leonardo-ai/sdk/funcs/threeDModelAssetsDelete3DModelById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await threeDModelAssetsDelete3DModelById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -39,16 +71,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.Delete3DModelByIdResponse](../../sdk/models/operations/delete3dmodelbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## uploadModelAsset This endpoint returns presigned details to upload a 3D model to S3 @@ -63,7 +96,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.threeDModelAssets.uploadModelAsset({}); + const result = await leonardo.threeDModelAssets.uploadModelAsset(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { threeDModelAssetsUploadModelAsset } from "@leonardo-ai/sdk/funcs/threeDModelAssetsUploadModelAsset.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await threeDModelAssetsUploadModelAsset(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -81,10 +144,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.UploadModelAssetResponse](../../sdk/models/operations/uploadmodelassetresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/user/README.md b/docs/sdks/user/README.md index c12d3701..b775796c 100644 --- a/docs/sdks/user/README.md +++ b/docs/sdks/user/README.md @@ -1,6 +1,8 @@ # User (*user*) +## Overview + ### Available Operations * [getUserSelf](#getuserself) - Get user information @@ -28,6 +30,36 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { userGetUserSelf } from "@leonardo-ai/sdk/funcs/userGetUserSelf.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await userGetUserSelf(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -36,10 +68,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetUserSelfResponse](../../sdk/models/operations/getuserselfresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/docs/sdks/variation/README.md b/docs/sdks/variation/README.md index 04280538..de2e89b1 100644 --- a/docs/sdks/variation/README.md +++ b/docs/sdks/variation/README.md @@ -1,6 +1,8 @@ # Variation (*variation*) +## Overview + ### Available Operations * [createUniversalUpscalerJob](#createuniversalupscalerjob) - Create using Universal Upscaler @@ -32,6 +34,36 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { variationCreateUniversalUpscalerJob } from "@leonardo-ai/sdk/funcs/variationCreateUniversalUpscalerJob.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await variationCreateUniversalUpscalerJob(leonardo, {}); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -41,16 +73,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateUniversalUpscalerJobResponse](../../sdk/models/operations/createuniversalupscalerjobresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## createVariationNoBG This endpoint will create a no background variation of the provided image ID @@ -76,6 +109,38 @@ async function run() { run(); ``` +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { variationCreateVariationNoBG } from "@leonardo-ai/sdk/funcs/variationCreateVariationNoBG.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await variationCreateVariationNoBG(leonardo, { + id: "", + }); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; + + // Handle the result + console.log(result) +} + +run(); +``` + ### Parameters | Parameter | Type | Required | Description | @@ -85,16 +150,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateVariationNoBGResponse](../../sdk/models/operations/createvariationnobgresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## createVariationUnzoom This endpoint will create an unzoom variation for the provided image ID @@ -109,7 +175,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.variation.createVariationUnzoom({}); + const result = await leonardo.variation.createVariationUnzoom(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { variationCreateVariationUnzoom } from "@leonardo-ai/sdk/funcs/variationCreateVariationUnzoom.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await variationCreateVariationUnzoom(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -127,16 +223,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateVariationUnzoomResponse](../../sdk/models/operations/createvariationunzoomresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## createVariationUpscale This endpoint will create an upscale for the provided image ID @@ -151,9 +248,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.variation.createVariationUpscale({ - id: "", - }); + const result = await leonardo.variation.createVariationUpscale(); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { variationCreateVariationUpscale } from "@leonardo-ai/sdk/funcs/variationCreateVariationUpscale.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await variationCreateVariationUpscale(leonardo); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -171,16 +296,17 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.CreateVariationUpscaleResponse](../../sdk/models/operations/createvariationupscaleresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | | --------------- | --------------- | --------------- | | errors.SDKError | 4xx-5xx | */* | + ## getVariationById This endpoint will get the variation by ID @@ -195,7 +321,37 @@ const leonardo = new Leonardo({ }); async function run() { - const result = await leonardo.variation.getVariationById(""); + const result = await leonardo.variation.getVariationById(""); + + // Handle the result + console.log(result) +} + +run(); +``` + +### Standalone function + +The standalone function version of this method: + +```typescript +import { LeonardoCore } from "@leonardo-ai/sdk/core.js"; +import { variationGetVariationById } from "@leonardo-ai/sdk/funcs/variationGetVariationById.js"; + +// Use `LeonardoCore` for best tree-shaking performance. +// You can create one instance of it to use across an application. +const leonardo = new LeonardoCore({ + bearerAuth: "", +}); + +async function run() { + const res = await variationGetVariationById(leonardo, ""); + + if (!res.ok) { + throw res.error; + } + + const { value: result } = res; // Handle the result console.log(result) @@ -213,10 +369,10 @@ run(); | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | - ### Response **Promise\<[operations.GetVariationByIdResponse](../../sdk/models/operations/getvariationbyidresponse.md)\>** + ### Errors | Error Object | Status Code | Content Type | diff --git a/gen.yaml b/gen.yaml index eafc53cc..45909199 100644 --- a/gen.yaml +++ b/gen.yaml @@ -13,7 +13,7 @@ generation: auth: oAuth2ClientCredentialsEnabled: false typescript: - version: 4.14.2 + version: 4.15.0 additionalDependencies: dependencies: {} devDependencies: {} diff --git a/jsr.json b/jsr.json index 95145d6f..b32c66c5 100644 --- a/jsr.json +++ b/jsr.json @@ -2,7 +2,7 @@ { "name": "@leonardo-ai/sdk", - "version": "4.14.2", + "version": "4.15.0", "exports": { ".": "./src/index.ts", "./sdk/models/errors": "./src/sdk/models/errors/index.ts", diff --git a/package-lock.json b/package-lock.json index bad9b81a..95902e3a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,13 +1,14 @@ { "name": "@leonardo-ai/sdk", - "version": "4.14.2", + "version": "4.15.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@leonardo-ai/sdk", - "version": "4.14.2", + "version": "4.15.0", "devDependencies": { + "@types/node": "^18.19.3", "@typescript-eslint/eslint-plugin": "^7.7.1", "@typescript-eslint/parser": "^7.7.1", "eslint": "^8.57.0", @@ -209,6 +210,16 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, + "node_modules/@types/node": { + "version": "18.19.49", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.49.tgz", + "integrity": "sha512-ALCeIR6n0nQ7j0FUF1ycOhrp6+XutJWqEu/vtdEqXFUQwkBfgUA5cEg3ZNmjWGF/ZYA/FcF9QMkL55Ar0O6UrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -2930,6 +2941,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true, + "license": "MIT" + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -3171,6 +3189,15 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, + "@types/node": { + "version": "18.19.49", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.49.tgz", + "integrity": "sha512-ALCeIR6n0nQ7j0FUF1ycOhrp6+XutJWqEu/vtdEqXFUQwkBfgUA5cEg3ZNmjWGF/ZYA/FcF9QMkL55Ar0O6UrA==", + "dev": true, + "requires": { + "undici-types": "~5.26.4" + } + }, "@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -5100,6 +5127,12 @@ "which-boxed-primitive": "^1.0.2" } }, + "undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", diff --git a/package.json b/package.json index 17b01ae4..6c50f41c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@leonardo-ai/sdk", - "version": "4.14.2", + "version": "4.15.0", "author": "leonardoai", "main": "./index.js", "sideEffects": false, @@ -18,6 +18,7 @@ "zod": ">= 3" }, "devDependencies": { + "@types/node": "^18.19.3", "@typescript-eslint/eslint-plugin": "^7.7.1", "@typescript-eslint/parser": "^7.7.1", "eslint": "^8.57.0", diff --git a/src/core.ts b/src/core.ts new file mode 100644 index 00000000..329fab7b --- /dev/null +++ b/src/core.ts @@ -0,0 +1,13 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { ClientSDK } from "./lib/sdks.js"; + +/** + * A minimal client to use when calling standalone SDK functions. Typically, an + * instance of this class would be instantiated once at the start of an + * application and passed around through some dependency injection mechanism to + * parts of an application that need to make SDK calls. + */ +export class LeonardoCore extends ClientSDK {} diff --git a/src/funcs/datasetCreateDataset.ts b/src/funcs/datasetCreateDataset.ts new file mode 100644 index 00000000..9280bdce --- /dev/null +++ b/src/funcs/datasetCreateDataset.ts @@ -0,0 +1,127 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create a Dataset + * + * @remarks + * This endpoint creates a new dataset + */ +export async function datasetCreateDataset( + client$: LeonardoCore, + request: operations.CreateDatasetRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.CreateDatasetResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.CreateDatasetRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/datasets")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createDataset", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateDatasetResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateDatasetResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/datasetDeleteDatasetById.ts b/src/funcs/datasetDeleteDatasetById.ts new file mode 100644 index 00000000..97b924c4 --- /dev/null +++ b/src/funcs/datasetDeleteDatasetById.ts @@ -0,0 +1,133 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Delete a Single Dataset by ID + * + * @remarks + * This endpoint deletes the specific dataset + */ +export async function datasetDeleteDatasetById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.DeleteDatasetByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.DeleteDatasetByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.DeleteDatasetByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/datasets/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "deleteDatasetById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "DELETE", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.DeleteDatasetByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.DeleteDatasetByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/datasetGetDatasetById.ts b/src/funcs/datasetGetDatasetById.ts new file mode 100644 index 00000000..805f598d --- /dev/null +++ b/src/funcs/datasetGetDatasetById.ts @@ -0,0 +1,132 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get a Single Dataset by ID + * + * @remarks + * This endpoint gets the specific dataset + */ +export async function datasetGetDatasetById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.GetDatasetByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.GetDatasetByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.GetDatasetByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/datasets/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getDatasetById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetDatasetByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetDatasetByIdResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/datasetUploadDatasetImage.ts b/src/funcs/datasetUploadDatasetImage.ts new file mode 100644 index 00000000..3ecbfd41 --- /dev/null +++ b/src/funcs/datasetUploadDatasetImage.ts @@ -0,0 +1,139 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Upload dataset image + * + * @remarks + * This endpoint returns presigned details to upload a dataset image to S3 + */ +export async function datasetUploadDatasetImage( + client$: LeonardoCore, + requestBody: operations.UploadDatasetImageRequestBody, + datasetId: string, + options?: RequestOptions +): Promise< + Result< + operations.UploadDatasetImageResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.UploadDatasetImageRequest = { + requestBody: requestBody, + datasetId: datasetId, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.UploadDatasetImageRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); + + const pathParams$ = { + datasetId: encodeSimple$("datasetId", payload$.datasetId, { + explode: false, + charEncoding: "percent", + }), + }; + + const path$ = pathToFunc("/datasets/{datasetId}/upload")(pathParams$); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "uploadDatasetImage", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.UploadDatasetImageResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.UploadDatasetImageResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/datasetUploadDatasetImageFromGen.ts b/src/funcs/datasetUploadDatasetImageFromGen.ts new file mode 100644 index 00000000..623f433a --- /dev/null +++ b/src/funcs/datasetUploadDatasetImageFromGen.ts @@ -0,0 +1,139 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Upload a Single Generated Image to a Dataset + * + * @remarks + * This endpoint will upload a previously generated image to the dataset + */ +export async function datasetUploadDatasetImageFromGen( + client$: LeonardoCore, + requestBody: operations.UploadDatasetImageFromGenRequestBody, + datasetId: string, + options?: RequestOptions +): Promise< + Result< + operations.UploadDatasetImageFromGenResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.UploadDatasetImageFromGenRequest = { + requestBody: requestBody, + datasetId: datasetId, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.UploadDatasetImageFromGenRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); + + const pathParams$ = { + datasetId: encodeSimple$("datasetId", payload$.datasetId, { + explode: false, + charEncoding: "percent", + }), + }; + + const path$ = pathToFunc("/datasets/{datasetId}/upload/gen")(pathParams$); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "uploadDatasetImageFromGen", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.UploadDatasetImageFromGenResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.UploadDatasetImageFromGenResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/elementsListElements.ts b/src/funcs/elementsListElements.ts new file mode 100644 index 00000000..4188e9f0 --- /dev/null +++ b/src/funcs/elementsListElements.ts @@ -0,0 +1,109 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import * as m$ from "../lib/matchers.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * List Elements + * + * @remarks + * Get a list of public Elements available for use with generations. + */ +export async function elementsListElements( + client$: LeonardoCore, + options?: RequestOptions +): Promise< + Result< + operations.ListElementsResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const path$ = pathToFunc("/elements")(); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "listElements", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.ListElementsResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.ListElementsResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/imageCreateGeneration.ts b/src/funcs/imageCreateGeneration.ts new file mode 100644 index 00000000..01eb96e2 --- /dev/null +++ b/src/funcs/imageCreateGeneration.ts @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create a Generation of Images + * + * @remarks + * This endpoint will generate images + */ +export async function imageCreateGeneration( + client$: LeonardoCore, + request: operations.CreateGenerationRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.CreateGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.CreateGenerationRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/generations")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createGeneration", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateGenerationResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/imageDeleteGenerationById.ts b/src/funcs/imageDeleteGenerationById.ts new file mode 100644 index 00000000..f6b2481e --- /dev/null +++ b/src/funcs/imageDeleteGenerationById.ts @@ -0,0 +1,133 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Delete a Single Generation + * + * @remarks + * This endpoint deletes a specific generation + */ +export async function imageDeleteGenerationById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.DeleteGenerationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.DeleteGenerationByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.DeleteGenerationByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/generations/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "deleteGenerationById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "DELETE", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.DeleteGenerationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.DeleteGenerationByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/imageGetGenerationById.ts b/src/funcs/imageGetGenerationById.ts new file mode 100644 index 00000000..4f5cfe9f --- /dev/null +++ b/src/funcs/imageGetGenerationById.ts @@ -0,0 +1,133 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get a Single Generation + * + * @remarks + * This endpoint will provide information about a specific generation + */ +export async function imageGetGenerationById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.GetGenerationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.GetGenerationByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.GetGenerationByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/generations/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getGenerationById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetGenerationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetGenerationByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/imageGetGenerationsByUserId.ts b/src/funcs/imageGetGenerationsByUserId.ts new file mode 100644 index 00000000..c2821db4 --- /dev/null +++ b/src/funcs/imageGetGenerationsByUserId.ts @@ -0,0 +1,149 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { + encodeFormQuery as encodeFormQuery$, + encodeSimple as encodeSimple$, +} from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get generations by user ID + * + * @remarks + * This endpoint returns all generations by a specific user + */ +export async function imageGetGenerationsByUserId( + client$: LeonardoCore, + userId: string, + limit?: number | undefined, + offset?: number | undefined, + options?: RequestOptions +): Promise< + Result< + operations.GetGenerationsByUserIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.GetGenerationsByUserIdRequest = { + limit: limit, + offset: offset, + userId: userId, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.GetGenerationsByUserIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + userId: encodeSimple$("userId", payload$.userId, { + explode: false, + charEncoding: "percent", + }), + }; + + const path$ = pathToFunc("/generations/user/{userId}")(pathParams$); + + const query$ = encodeFormQuery$({ + limit: payload$.limit, + offset: payload$.offset, + }); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getGenerationsByUserId", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + query: query$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetGenerationsByUserIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetGenerationsByUserIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/initImagesDeleteInitImageById.ts b/src/funcs/initImagesDeleteInitImageById.ts new file mode 100644 index 00000000..5e322ef7 --- /dev/null +++ b/src/funcs/initImagesDeleteInitImageById.ts @@ -0,0 +1,133 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Delete init image + * + * @remarks + * This endpoint deletes an init image + */ +export async function initImagesDeleteInitImageById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.DeleteInitImageByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.DeleteInitImageByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.DeleteInitImageByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/init-image/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "deleteInitImageById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "DELETE", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.DeleteInitImageByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.DeleteInitImageByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/initImagesGetInitImageById.ts b/src/funcs/initImagesGetInitImageById.ts new file mode 100644 index 00000000..177d2057 --- /dev/null +++ b/src/funcs/initImagesGetInitImageById.ts @@ -0,0 +1,133 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get single init image + * + * @remarks + * This endpoint will return a single init image + */ +export async function initImagesGetInitImageById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.GetInitImageByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.GetInitImageByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.GetInitImageByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/init-image/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getInitImageById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetInitImageByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetInitImageByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/initImagesUploadCanvasInitImage.ts b/src/funcs/initImagesUploadCanvasInitImage.ts new file mode 100644 index 00000000..74e75533 --- /dev/null +++ b/src/funcs/initImagesUploadCanvasInitImage.ts @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Upload Canvas Editor init and mask image + * + * @remarks + * This endpoint returns presigned details to upload an init image and a mask image to S3 + */ +export async function initImagesUploadCanvasInitImage( + client$: LeonardoCore, + request: operations.UploadCanvasInitImageRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.UploadCanvasInitImageResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.UploadCanvasInitImageRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/canvas-init-image")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "uploadCanvasInitImage", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.UploadCanvasInitImageResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.UploadCanvasInitImageResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/initImagesUploadInitImage.ts b/src/funcs/initImagesUploadInitImage.ts new file mode 100644 index 00000000..ed80526f --- /dev/null +++ b/src/funcs/initImagesUploadInitImage.ts @@ -0,0 +1,127 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Upload init image + * + * @remarks + * This endpoint returns presigned details to upload an init image to S3 + */ +export async function initImagesUploadInitImage( + client$: LeonardoCore, + request: operations.UploadInitImageRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.UploadInitImageResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.UploadInitImageRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/init-image")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "uploadInitImage", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.UploadInitImageResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.UploadInitImageResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/modelsCreateModel.ts b/src/funcs/modelsCreateModel.ts new file mode 100644 index 00000000..46f520fc --- /dev/null +++ b/src/funcs/modelsCreateModel.ts @@ -0,0 +1,127 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Train a Custom Model + * + * @remarks + * This endpoint will train a new custom model + */ +export async function modelsCreateModel( + client$: LeonardoCore, + request: operations.CreateModelRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.CreateModelResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.CreateModelRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/models")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createModel", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateModelResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateModelResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/modelsDeleteModelById.ts b/src/funcs/modelsDeleteModelById.ts new file mode 100644 index 00000000..fe9aa400 --- /dev/null +++ b/src/funcs/modelsDeleteModelById.ts @@ -0,0 +1,132 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Delete a Single Custom Model by ID + * + * @remarks + * This endpoint will delete a specific custom model + */ +export async function modelsDeleteModelById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.DeleteModelByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.DeleteModelByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.DeleteModelByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/models/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "deleteModelById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "DELETE", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.DeleteModelByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.DeleteModelByIdResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/modelsGetModelById.ts b/src/funcs/modelsGetModelById.ts new file mode 100644 index 00000000..c15381f2 --- /dev/null +++ b/src/funcs/modelsGetModelById.ts @@ -0,0 +1,132 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get a Single Custom Model by ID + * + * @remarks + * This endpoint gets the specific custom model + */ +export async function modelsGetModelById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.GetModelByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.GetModelByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.GetModelByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/models/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getModelById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetModelByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetModelByIdResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/modelsListPlatformModels.ts b/src/funcs/modelsListPlatformModels.ts new file mode 100644 index 00000000..f08a5536 --- /dev/null +++ b/src/funcs/modelsListPlatformModels.ts @@ -0,0 +1,110 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import * as m$ from "../lib/matchers.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * List Platform Models + * + * @remarks + * Get a list of public Platform Models available for use with generations. + */ +export async function modelsListPlatformModels( + client$: LeonardoCore, + options?: RequestOptions +): Promise< + Result< + operations.ListPlatformModelsResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const path$ = pathToFunc("/platformModels")(); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "listPlatformModels", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.ListPlatformModelsResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.ListPlatformModelsResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/motionCreateSVDMotionGeneration.ts b/src/funcs/motionCreateSVDMotionGeneration.ts new file mode 100644 index 00000000..033dd784 --- /dev/null +++ b/src/funcs/motionCreateSVDMotionGeneration.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create SVD Motion Generation + * + * @remarks + * This endpoint will generate a SVD motion generation. + */ +export async function motionCreateSVDMotionGeneration( + client$: LeonardoCore, + request?: operations.CreateSVDMotionGenerationRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.CreateSVDMotionGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.CreateSVDMotionGenerationRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/generations-motion-svd")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createSVDMotionGeneration", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateSVDMotionGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateSVDMotionGenerationResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/pricingCalculatorPricingCalculator.ts b/src/funcs/pricingCalculatorPricingCalculator.ts new file mode 100644 index 00000000..31b7574d --- /dev/null +++ b/src/funcs/pricingCalculatorPricingCalculator.ts @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Calculating API Cost + * + * @remarks + * This endpoint returns the cost used for generating images using a particular service type. + */ +export async function pricingCalculatorPricingCalculator( + client$: LeonardoCore, + request?: operations.PricingCalculatorRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.PricingCalculatorResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.PricingCalculatorRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/pricing-calculator")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "pricingCalculator", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.PricingCalculatorResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.PricingCalculatorResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/promptPromptImprove.ts b/src/funcs/promptPromptImprove.ts new file mode 100644 index 00000000..5b3d550c --- /dev/null +++ b/src/funcs/promptPromptImprove.ts @@ -0,0 +1,127 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Improve a Prompt + * + * @remarks + * This endpoint returns a improved prompt + */ +export async function promptPromptImprove( + client$: LeonardoCore, + request: operations.PromptImproveRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.PromptImproveResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.PromptImproveRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/prompt/improve")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "promptImprove", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.PromptImproveResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.PromptImproveResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/promptPromptRandom.ts b/src/funcs/promptPromptRandom.ts new file mode 100644 index 00000000..9e4819da --- /dev/null +++ b/src/funcs/promptPromptRandom.ts @@ -0,0 +1,109 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import * as m$ from "../lib/matchers.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Generate a Random prompt + * + * @remarks + * This endpoint returns a random prompt + */ +export async function promptPromptRandom( + client$: LeonardoCore, + options?: RequestOptions +): Promise< + Result< + operations.PromptRandomResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const path$ = pathToFunc("/prompt/random")(); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "promptRandom", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.PromptRandomResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.PromptRandomResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/realtimeCanvasCreateLCMGeneration.ts b/src/funcs/realtimeCanvasCreateLCMGeneration.ts new file mode 100644 index 00000000..a73d95bf --- /dev/null +++ b/src/funcs/realtimeCanvasCreateLCMGeneration.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create LCM Generation + * + * @remarks + * This endpoint will generate a LCM image generation. + */ +export async function realtimeCanvasCreateLCMGeneration( + client$: LeonardoCore, + request?: operations.CreateLCMGenerationRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.CreateLCMGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.CreateLCMGenerationRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/generations-lcm")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createLCMGeneration", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateLCMGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateLCMGenerationResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/realtimeCanvasPerformAlchemyUpscaleLCM.ts b/src/funcs/realtimeCanvasPerformAlchemyUpscaleLCM.ts new file mode 100644 index 00000000..c51235c7 --- /dev/null +++ b/src/funcs/realtimeCanvasPerformAlchemyUpscaleLCM.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Perform Alchemy Upscale on a LCM image + * + * @remarks + * This endpoint will perform Alchemy Upscale on a LCM image + */ +export async function realtimeCanvasPerformAlchemyUpscaleLCM( + client$: LeonardoCore, + request?: operations.PerformAlchemyUpscaleLCMRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.PerformAlchemyUpscaleLCMResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.PerformAlchemyUpscaleLCMRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/lcm-upscale")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "performAlchemyUpscaleLCM", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.PerformAlchemyUpscaleLCMResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.PerformAlchemyUpscaleLCMResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/realtimeCanvasPerformInpaintingLCM.ts b/src/funcs/realtimeCanvasPerformInpaintingLCM.ts new file mode 100644 index 00000000..c638299f --- /dev/null +++ b/src/funcs/realtimeCanvasPerformInpaintingLCM.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Perform inpainting on a LCM image + * + * @remarks + * This endpoint will perform a inpainting on a LCM image + */ +export async function realtimeCanvasPerformInpaintingLCM( + client$: LeonardoCore, + request?: operations.PerformInpaintingLCMRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.PerformInpaintingLCMResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.PerformInpaintingLCMRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/lcm-inpainting")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "performInpaintingLCM", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.PerformInpaintingLCMResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.PerformInpaintingLCMResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/realtimeCanvasPerformInstantRefine.ts b/src/funcs/realtimeCanvasPerformInstantRefine.ts new file mode 100644 index 00000000..b3cebfdf --- /dev/null +++ b/src/funcs/realtimeCanvasPerformInstantRefine.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Perform instant refine on a LCM image + * + * @remarks + * This endpoint will perform instant refine on a LCM image + */ +export async function realtimeCanvasPerformInstantRefine( + client$: LeonardoCore, + request?: operations.PerformInstantRefineRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.PerformInstantRefineResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.PerformInstantRefineRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/lcm-instant-refine")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "performInstantRefine", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.PerformInstantRefineResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.PerformInstantRefineResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/textureCreateTextureGeneration.ts b/src/funcs/textureCreateTextureGeneration.ts new file mode 100644 index 00000000..6dcefeaf --- /dev/null +++ b/src/funcs/textureCreateTextureGeneration.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create Texture Generation + * + * @remarks + * This endpoint will generate a texture generation. + */ +export async function textureCreateTextureGeneration( + client$: LeonardoCore, + request?: operations.CreateTextureGenerationRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.CreateTextureGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.CreateTextureGenerationRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/generations-texture")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createTextureGeneration", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateTextureGenerationResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateTextureGenerationResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/textureDeleteTextureGenerationById.ts b/src/funcs/textureDeleteTextureGenerationById.ts new file mode 100644 index 00000000..933bddef --- /dev/null +++ b/src/funcs/textureDeleteTextureGenerationById.ts @@ -0,0 +1,137 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Delete Texture Generation by ID + * + * @remarks + * This endpoint deletes the specific texture generation. + */ +export async function textureDeleteTextureGenerationById( + client$: LeonardoCore, + id: string, + requestBody?: operations.DeleteTextureGenerationByIdRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.DeleteTextureGenerationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.DeleteTextureGenerationByIdRequest = { + requestBody: requestBody, + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.DeleteTextureGenerationByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/generations-texture/{id}")(pathParams$); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "deleteTextureGenerationById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "DELETE", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.DeleteTextureGenerationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >( + m$.json(200, operations.DeleteTextureGenerationByIdResponse$inboundSchema, { + key: "object", + }) + )(response, { extraFields: responseFields$ }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/threeDModelAssetsDelete3DModelById.ts b/src/funcs/threeDModelAssetsDelete3DModelById.ts new file mode 100644 index 00000000..2df8e952 --- /dev/null +++ b/src/funcs/threeDModelAssetsDelete3DModelById.ts @@ -0,0 +1,136 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Delete 3D Model by ID + * + * @remarks + * This endpoint deletes the specific 3D Model + */ +export async function threeDModelAssetsDelete3DModelById( + client$: LeonardoCore, + id: string, + requestBody?: operations.Delete3DModelByIdRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.Delete3DModelByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.Delete3DModelByIdRequest = { + requestBody: requestBody, + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.Delete3DModelByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/models-3d/{id}")(pathParams$); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "delete3DModelById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "DELETE", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.Delete3DModelByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.Delete3DModelByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/threeDModelAssetsUploadModelAsset.ts b/src/funcs/threeDModelAssetsUploadModelAsset.ts new file mode 100644 index 00000000..f70b0692 --- /dev/null +++ b/src/funcs/threeDModelAssetsUploadModelAsset.ts @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Upload 3D Model + * + * @remarks + * This endpoint returns presigned details to upload a 3D model to S3 + */ +export async function threeDModelAssetsUploadModelAsset( + client$: LeonardoCore, + request?: operations.UploadModelAssetRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.UploadModelAssetResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.UploadModelAssetRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/models-3d/upload")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "uploadModelAsset", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.UploadModelAssetResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.UploadModelAssetResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/userGetUserSelf.ts b/src/funcs/userGetUserSelf.ts new file mode 100644 index 00000000..06b5a598 --- /dev/null +++ b/src/funcs/userGetUserSelf.ts @@ -0,0 +1,109 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import * as m$ from "../lib/matchers.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get user information + * + * @remarks + * This endpoint will return your user information such as your user id, username, token renewal date and current amounts of the following: subscription tokens, gpt (prompt generation) tokens, and model training tokens + */ +export async function userGetUserSelf( + client$: LeonardoCore, + options?: RequestOptions +): Promise< + Result< + operations.GetUserSelfResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const path$ = pathToFunc("/me")(); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getUserSelf", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetUserSelfResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetUserSelfResponse$inboundSchema, { key: "object" }))(response, { + extraFields: responseFields$, + }); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/variationCreateUniversalUpscalerJob.ts b/src/funcs/variationCreateUniversalUpscalerJob.ts new file mode 100644 index 00000000..958925fc --- /dev/null +++ b/src/funcs/variationCreateUniversalUpscalerJob.ts @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create using Universal Upscaler + * + * @remarks + * This endpoint will create a high resolution image using Universal Upscaler + */ +export async function variationCreateUniversalUpscalerJob( + client$: LeonardoCore, + request: operations.CreateUniversalUpscalerJobRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.CreateUniversalUpscalerJobResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.CreateUniversalUpscalerJobRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/variations/universal-upscaler")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "CreateUniversalUpscalerJob", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateUniversalUpscalerJobResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateUniversalUpscalerJobResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/variationCreateVariationNoBG.ts b/src/funcs/variationCreateVariationNoBG.ts new file mode 100644 index 00000000..4f714f03 --- /dev/null +++ b/src/funcs/variationCreateVariationNoBG.ts @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create no background + * + * @remarks + * This endpoint will create a no background variation of the provided image ID + */ +export async function variationCreateVariationNoBG( + client$: LeonardoCore, + request: operations.CreateVariationNoBGRequestBody, + options?: RequestOptions +): Promise< + Result< + operations.CreateVariationNoBGResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.CreateVariationNoBGRequestBody$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/variations/nobg")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createVariationNoBG", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateVariationNoBGResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateVariationNoBGResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/variationCreateVariationUnzoom.ts b/src/funcs/variationCreateVariationUnzoom.ts new file mode 100644 index 00000000..d439c0d0 --- /dev/null +++ b/src/funcs/variationCreateVariationUnzoom.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create unzoom + * + * @remarks + * This endpoint will create an unzoom variation for the provided image ID + */ +export async function variationCreateVariationUnzoom( + client$: LeonardoCore, + request?: operations.CreateVariationUnzoomRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.CreateVariationUnzoomResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.CreateVariationUnzoomRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/variations/unzoom")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createVariationUnzoom", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateVariationUnzoomResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateVariationUnzoomResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/variationCreateVariationUpscale.ts b/src/funcs/variationCreateVariationUpscale.ts new file mode 100644 index 00000000..ee89d8f0 --- /dev/null +++ b/src/funcs/variationCreateVariationUpscale.ts @@ -0,0 +1,129 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Create upscale + * + * @remarks + * This endpoint will create an upscale for the provided image ID + */ +export async function variationCreateVariationUpscale( + client$: LeonardoCore, + request?: operations.CreateVariationUpscaleRequestBody | undefined, + options?: RequestOptions +): Promise< + Result< + operations.CreateVariationUpscaleResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$ = request; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => + operations.CreateVariationUpscaleRequestBody$outboundSchema.optional().parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); + + const path$ = pathToFunc("/variations/upscale")(); + + const headers$ = new Headers({ + "Content-Type": "application/json", + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "createVariationUpscale", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "POST", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.CreateVariationUpscaleResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.CreateVariationUpscaleResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/funcs/variationGetVariationById.ts b/src/funcs/variationGetVariationById.ts new file mode 100644 index 00000000..e8245b13 --- /dev/null +++ b/src/funcs/variationGetVariationById.ts @@ -0,0 +1,133 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { LeonardoCore } from "../core.js"; +import { encodeSimple as encodeSimple$ } from "../lib/encodings.js"; +import * as m$ from "../lib/matchers.js"; +import * as schemas$ from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import * as operations from "../sdk/models/operations/index.js"; +import { Result } from "../sdk/types/fp.js"; + +/** + * Get variation by ID + * + * @remarks + * This endpoint will get the variation by ID + */ +export async function variationGetVariationById( + client$: LeonardoCore, + id: string, + options?: RequestOptions +): Promise< + Result< + operations.GetVariationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + const input$: operations.GetVariationByIdRequest = { + id: id, + }; + + const parsed$ = schemas$.safeParse( + input$, + (value$) => operations.GetVariationByIdRequest$outboundSchema.parse(value$), + "Input validation failed" + ); + if (!parsed$.ok) { + return parsed$; + } + const payload$ = parsed$.value; + const body$ = null; + + const pathParams$ = { + id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), + }; + + const path$ = pathToFunc("/variations/{id}")(pathParams$); + + const headers$ = new Headers({ + Accept: "application/json", + }); + + const bearerAuth$ = await extractSecurity(client$.options$.bearerAuth); + const security$ = bearerAuth$ == null ? {} : { bearerAuth: bearerAuth$ }; + const context = { + operationID: "getVariationById", + oAuth2Scopes: [], + securitySource: client$.options$.bearerAuth, + }; + const securitySettings$ = resolveGlobalSecurity(security$); + + const requestRes = client$.createRequest$( + context, + { + security: securitySettings$, + method: "GET", + path: path$, + headers: headers$, + body: body$, + timeoutMs: options?.timeoutMs || client$.options$.timeoutMs || -1, + }, + options + ); + if (!requestRes.ok) { + return requestRes; + } + const request$ = requestRes.value; + + const doResult = await client$.do$(request$, { + context, + errorCodes: [], + retryConfig: options?.retries || client$.options$.retryConfig, + retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], + }); + if (!doResult.ok) { + return doResult; + } + const response = doResult.value; + + const responseFields$ = { + ContentType: response.headers.get("content-type") ?? "application/octet-stream", + StatusCode: response.status, + RawResponse: response, + Headers: {}, + }; + + const [result$] = await m$.match< + operations.GetVariationByIdResponse, + | SDKError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >(m$.json(200, operations.GetVariationByIdResponse$inboundSchema, { key: "object" }))( + response, + { extraFields: responseFields$ } + ); + if (!result$.ok) { + return result$; + } + + return result$; +} diff --git a/src/index.ts b/src/index.ts index ceb63804..c6fc7f02 100644 --- a/src/index.ts +++ b/src/index.ts @@ -4,3 +4,4 @@ export * from "./sdk/sdk.js"; export * from "./lib/config.js"; +export * as files from "./lib/files.js"; diff --git a/src/lib/config.ts b/src/lib/config.ts index 9dfff921..073e6fef 100644 --- a/src/lib/config.ts +++ b/src/lib/config.ts @@ -3,6 +3,7 @@ */ import { HTTPClient } from "./http.js"; +import { Logger } from "./logger.js"; import { RetryConfig } from "./retries.js"; import { Params, pathToFunc } from "./url.js"; @@ -33,6 +34,7 @@ export type SDKOptions = { */ retryConfig?: RetryConfig; timeoutMs?: number; + debugLogger?: Logger; }; export function serverURLFromOptions(options: SDKOptions): URL | null { @@ -55,7 +57,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null { export const SDK_METADATA = { language: "typescript", openapiDocVersion: "v1.0.0", - sdkVersion: "4.14.2", - genVersion: "2.379.6", - userAgent: "speakeasy-sdk/typescript 4.14.2 2.379.6 v1.0.0 @leonardo-ai/sdk", + sdkVersion: "4.15.0", + genVersion: "2.409.0", + userAgent: "speakeasy-sdk/typescript 4.15.0 2.409.0 v1.0.0 @leonardo-ai/sdk", } as const; diff --git a/src/lib/dlv.ts b/src/lib/dlv.ts new file mode 100644 index 00000000..e81091f5 --- /dev/null +++ b/src/lib/dlv.ts @@ -0,0 +1,53 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +/* +MIT License + +Copyright (c) 2024 Jason Miller (http://jasonformat.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ + +/** + * @param obj The object to walk + * @param key The key path to walk the object with + * @param def A default value to return if the result is undefined + * + * @example + * dlv(obj, "a.b.c.d") + * @example + * dlv(object, ["a", "b", "c", "d"]) + * @example + * dlv(object, "foo.bar.baz", "Hello, default value!") + */ +export function dlv( + obj: any, + key: string | string[], + def?: T, + p?: number, + undef?: never, +): T | undefined { + key = Array.isArray(key) ? key : key.split("."); + for (p = 0; p < key.length; p++) { + const k = key[p]; + obj = k != null && obj ? obj[k] : undef; + } + return obj === undef ? def : obj; +} diff --git a/src/lib/files.ts b/src/lib/files.ts new file mode 100644 index 00000000..69028c73 --- /dev/null +++ b/src/lib/files.ts @@ -0,0 +1,58 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { Readable } from "stream"; +import { createReadStream } from "fs"; +import { readFile } from "fs/promises"; + +export function toStream(filePath: string): ReadableStream { + return Readable.toWeb( + createReadStream(filePath), + ) as ReadableStream; +} + +export async function toByteArray(filePath: string): Promise { + return readFile(filePath); +} + +export async function toString(filePath: string): Promise { + return readFile(filePath, "utf8"); +} + +/** + * Consumes a stream and returns a concatenated array buffer. Useful in + * situations where we need to read the whole file because it forms part of a + * larger payload containing other fields, and we can't modify the underlying + * request structure. + */ +export async function readableStreamToArrayBuffer( + readable: ReadableStream, +): Promise { + const reader = readable.getReader(); + const chunks: Uint8Array[] = []; + + let totalLength = 0; + let done = false; + + while (!done) { + const { value, done: doneReading } = await reader.read(); + + if (doneReading) { + done = true; + } else { + chunks.push(value); + totalLength += value.length; + } + } + + const concatenatedChunks = new Uint8Array(totalLength); + let offset = 0; + + for (const chunk of chunks) { + concatenatedChunks.set(chunk, offset); + offset += chunk.length; + } + + return concatenatedChunks.buffer; +} diff --git a/src/lib/http.ts b/src/lib/http.ts index a7524645..13cf1fd7 100644 --- a/src/lib/http.ts +++ b/src/lib/http.ts @@ -2,40 +2,38 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { never as znever } from "zod"; -import { parse } from "./schemas.js"; -import { isPlainObject } from "./is-plain-object.js"; -import { SDKError } from "../sdk/models/errors/sdkerror.js"; - -export type Fetcher = (input: RequestInfo | URL, init?: RequestInit) => Promise; +export type Fetcher = ( + input: RequestInfo | URL, + init?: RequestInit, +) => Promise; export type Awaitable = T | Promise; const DEFAULT_FETCHER: Fetcher = (input, init) => { - // If input is a Request and init is undefined, Bun will discard the method, - // headers, body and other options that were set on the request object. - // Node.js and browers would ignore an undefined init value. This check is - // therefore needed for interop with Bun. - if (init == null) { - return fetch(input); - } else { - return fetch(input, init); - } + // If input is a Request and init is undefined, Bun will discard the method, + // headers, body and other options that were set on the request object. + // Node.js and browers would ignore an undefined init value. This check is + // therefore needed for interop with Bun. + if (init == null) { + return fetch(input); + } else { + return fetch(input, init); + } }; export type RequestInput = { - /** - * The URL the request will use. - */ - url: URL; - /** - * Options used to create a [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request). - */ - options?: RequestInit | undefined; + /** + * The URL the request will use. + */ + url: URL; + /** + * Options used to create a [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request). + */ + options?: RequestInit | undefined; }; export interface HTTPClientOptions { - fetcher?: Fetcher; + fetcher?: Fetcher; } export type BeforeRequestHook = (req: Request) => Awaitable; @@ -43,114 +41,114 @@ export type RequestErrorHook = (err: unknown, req: Request) => Awaitable; export type ResponseHook = (res: Response, req: Request) => Awaitable; export class HTTPClient { - private fetcher: Fetcher; - private requestHooks: BeforeRequestHook[] = []; - private requestErrorHooks: RequestErrorHook[] = []; - private responseHooks: ResponseHook[] = []; - - constructor(private options: HTTPClientOptions = {}) { - this.fetcher = options.fetcher || DEFAULT_FETCHER; + private fetcher: Fetcher; + private requestHooks: BeforeRequestHook[] = []; + private requestErrorHooks: RequestErrorHook[] = []; + private responseHooks: ResponseHook[] = []; + + constructor(private options: HTTPClientOptions = {}) { + this.fetcher = options.fetcher || DEFAULT_FETCHER; + } + + async request(request: Request): Promise { + let req = request; + for (const hook of this.requestHooks) { + const nextRequest = await hook(req); + if (nextRequest) { + req = nextRequest; + } } - async request(request: Request): Promise { - let req = request; - for (const hook of this.requestHooks) { - const nextRequest = await hook(req); - if (nextRequest) { - req = nextRequest; - } - } - - try { - const res = await this.fetcher(req); - - for (const hook of this.responseHooks) { - await hook(res, req); - } - - return res; - } catch (err) { - for (const hook of this.requestErrorHooks) { - await hook(err, req); - } - - throw err; - } - } + try { + const res = await this.fetcher(req); + + for (const hook of this.responseHooks) { + await hook(res, req); + } + + return res; + } catch (err) { + for (const hook of this.requestErrorHooks) { + await hook(err, req); + } - /** - * Registers a hook that is called before a request is made. The hook function - * can mutate the request or return a new request. This may be useful to add - * additional information to request such as request IDs and tracing headers. - */ - addHook(hook: "beforeRequest", fn: BeforeRequestHook): this; - /** - * Registers a hook that is called when a request cannot be made due to a - * network error. - */ - addHook(hook: "requestError", fn: RequestErrorHook): this; - /** - * Registers a hook that is called when a response has been received from the - * server. - */ - addHook(hook: "response", fn: ResponseHook): this; - addHook( - ...args: - | [hook: "beforeRequest", fn: BeforeRequestHook] - | [hook: "requestError", fn: RequestErrorHook] - | [hook: "response", fn: ResponseHook] - ) { - if (args[0] === "beforeRequest") { - this.requestHooks.push(args[1]); - } else if (args[0] === "requestError") { - this.requestErrorHooks.push(args[1]); - } else if (args[0] === "response") { - this.responseHooks.push(args[1]); - } else { - throw new Error(`Invalid hook type: ${args[0]}`); - } - return this; + throw err; + } + } + + /** + * Registers a hook that is called before a request is made. The hook function + * can mutate the request or return a new request. This may be useful to add + * additional information to request such as request IDs and tracing headers. + */ + addHook(hook: "beforeRequest", fn: BeforeRequestHook): this; + /** + * Registers a hook that is called when a request cannot be made due to a + * network error. + */ + addHook(hook: "requestError", fn: RequestErrorHook): this; + /** + * Registers a hook that is called when a response has been received from the + * server. + */ + addHook(hook: "response", fn: ResponseHook): this; + addHook( + ...args: + | [hook: "beforeRequest", fn: BeforeRequestHook] + | [hook: "requestError", fn: RequestErrorHook] + | [hook: "response", fn: ResponseHook] + ) { + if (args[0] === "beforeRequest") { + this.requestHooks.push(args[1]); + } else if (args[0] === "requestError") { + this.requestErrorHooks.push(args[1]); + } else if (args[0] === "response") { + this.responseHooks.push(args[1]); + } else { + throw new Error(`Invalid hook type: ${args[0]}`); + } + return this; + } + + /** Removes a hook that was previously registered with `addHook`. */ + removeHook(hook: "beforeRequest", fn: BeforeRequestHook): this; + /** Removes a hook that was previously registered with `addHook`. */ + removeHook(hook: "requestError", fn: RequestErrorHook): this; + /** Removes a hook that was previously registered with `addHook`. */ + removeHook(hook: "response", fn: ResponseHook): this; + removeHook( + ...args: + | [hook: "beforeRequest", fn: BeforeRequestHook] + | [hook: "requestError", fn: RequestErrorHook] + | [hook: "response", fn: ResponseHook] + ): this { + let target: unknown[]; + if (args[0] === "beforeRequest") { + target = this.requestHooks; + } else if (args[0] === "requestError") { + target = this.requestErrorHooks; + } else if (args[0] === "response") { + target = this.responseHooks; + } else { + throw new Error(`Invalid hook type: ${args[0]}`); } - /** Removes a hook that was previously registered with `addHook`. */ - removeHook(hook: "beforeRequest", fn: BeforeRequestHook): this; - /** Removes a hook that was previously registered with `addHook`. */ - removeHook(hook: "requestError", fn: RequestErrorHook): this; - /** Removes a hook that was previously registered with `addHook`. */ - removeHook(hook: "response", fn: ResponseHook): this; - removeHook( - ...args: - | [hook: "beforeRequest", fn: BeforeRequestHook] - | [hook: "requestError", fn: RequestErrorHook] - | [hook: "response", fn: ResponseHook] - ): this { - let target: unknown[]; - if (args[0] === "beforeRequest") { - target = this.requestHooks; - } else if (args[0] === "requestError") { - target = this.requestErrorHooks; - } else if (args[0] === "response") { - target = this.responseHooks; - } else { - throw new Error(`Invalid hook type: ${args[0]}`); - } - - const index = target.findIndex((v) => v === args[1]); - if (index >= 0) { - target.splice(index, 1); - } - - return this; + const index = target.findIndex((v) => v === args[1]); + if (index >= 0) { + target.splice(index, 1); } - clone(): HTTPClient { - const child = new HTTPClient(this.options); - child.requestHooks = this.requestHooks.slice(); - child.requestErrorHooks = this.requestErrorHooks.slice(); - child.responseHooks = this.responseHooks.slice(); + return this; + } - return child; - } + clone(): HTTPClient { + const child = new HTTPClient(this.options); + child.requestHooks = this.requestHooks.slice(); + child.requestErrorHooks = this.requestErrorHooks.slice(); + child.responseHooks = this.responseHooks.slice(); + + return child; + } } export type StatusCodePredicate = number | string | (number | string)[]; @@ -159,348 +157,167 @@ export type StatusCodePredicate = number | string | (number | string)[]; // segments in a media type string. const mediaParamSeparator = /\s*;\s*/g; -function matchContentType(response: Response, pattern: string): boolean { - // `*` is a special case which means anything is acceptable. - if (pattern === "*") { - return true; +export function matchContentType(response: Response, pattern: string): boolean { + // `*` is a special case which means anything is acceptable. + if (pattern === "*") { + return true; + } + + let contentType = + response.headers.get("content-type")?.trim() || "application/octet-stream"; + contentType = contentType.toLowerCase(); + + const wantParts = pattern.toLowerCase().trim().split(mediaParamSeparator); + const [wantType = "", ...wantParams] = wantParts; + + if (wantType.split("/").length !== 2) { + return false; + } + + const gotParts = contentType.split(mediaParamSeparator); + const [gotType = "", ...gotParams] = gotParts; + + const [type = "", subtype = ""] = gotType.split("/"); + if (!type || !subtype) { + return false; + } + + if ( + wantType !== "*/*" && + gotType !== wantType && + `${type}/*` !== wantType && + `*/${subtype}` !== wantType + ) { + return false; + } + + if (gotParams.length < wantParams.length) { + return false; + } + + const params = new Set(gotParams); + for (const wantParam of wantParams) { + if (!params.has(wantParam)) { + return false; } + } - let contentType = response.headers.get("content-type")?.trim() || "application/octet-stream"; - contentType = contentType.toLowerCase(); + return true; +} - const wantParts = pattern.toLowerCase().trim().split(mediaParamSeparator); - const [wantType = "", ...wantParams] = wantParts; +const codeRangeRE = new RegExp("^[0-9]xx$", "i"); - if (wantType.split("/").length !== 2) { - return false; - } +export function matchStatusCode( + response: Response, + codes: StatusCodePredicate, +): boolean { + const actual = `${response.status}`; + const expectedCodes = Array.isArray(codes) ? codes : [codes]; + if (!expectedCodes.length) { + return false; + } - const gotParts = contentType.split(mediaParamSeparator); - const [gotType = "", ...gotParams] = gotParts; + return expectedCodes.some((ec) => { + const code = `${ec}`; - const [type = "", subtype = ""] = gotType.split("/"); - if (!type || !subtype) { - return false; + if (code === "default") { + return true; } - if ( - wantType !== "*/*" && - gotType !== wantType && - `${type}/*` !== wantType && - `*/${subtype}` !== wantType - ) { - return false; + if (!codeRangeRE.test(`${code}`)) { + return code === actual; } - if (gotParams.length < wantParams.length) { - return false; + const expectFamily = code.charAt(0); + if (!expectFamily) { + throw new Error("Invalid status code range"); } - const params = new Set(gotParams); - for (const wantParam of wantParams) { - if (!params.has(wantParam)) { - return false; - } + const actualFamily = actual.charAt(0); + if (!actualFamily) { + throw new Error(`Invalid response status code: ${actual}`); } - return true; -} - -const codeRangeRE = new RegExp("^[0-9]xx$", "i"); - -export function matchStatusCode(response: Response, codes: StatusCodePredicate): boolean { - const actual = `${response.status}`; - const expectedCodes = Array.isArray(codes) ? codes : [codes]; - if (!expectedCodes.length) { - return false; - } - - return expectedCodes.some((ec) => { - const code = `${ec}`; - - if (code === "default") { - return true; - } - - if (!codeRangeRE.test(`${code}`)) { - return code === actual; - } - - const expectFamily = code.charAt(0); - if (!expectFamily) { - throw new Error("Invalid status code range"); - } - - const actualFamily = actual.charAt(0); - if (!actualFamily) { - throw new Error(`Invalid response status code: ${actual}`); - } - - return actualFamily === expectFamily; - }); + return actualFamily === expectFamily; + }); } export function matchResponse( - response: Response, - code: StatusCodePredicate, - contentTypePattern: string + response: Response, + code: StatusCodePredicate, + contentTypePattern: string, ): boolean { - return matchStatusCode(response, code) && matchContentType(response, contentTypePattern); -} - -const headerValRE = /, */; -export function unpackHeaders(headers: Headers): Record { - const out: Record = {}; - - for (const [k, v] of headers.entries()) { - out[k] = v.split(headerValRE); - } - - return out; + return ( + matchStatusCode(response, code) && + matchContentType(response, contentTypePattern) + ); } -type ResponseMatcherSchema = - | { parse: (data: unknown) => T } - | { inboundSchema: { parse: (data: unknown) => T } }; +/** + * Uses various heurisitics to determine if an error is a connection error. + */ +export function isConnectionError(err: unknown): boolean { + if (typeof err !== "object" || err == null) { + return false; + } -type SerializationMethod = "sse" | "json" | "rawBytes" | "rawStream" | "text" | "void" | "fail"; + // Covers fetch in Deno as well + const isBrowserErr = + err instanceof TypeError && + err.message.toLowerCase().startsWith("failed to fetch"); -const defaultContentTypes: Record = { - sse: "text/event-stream", - json: "application/json", - rawBytes: "application/octet-stream", - rawStream: "application/octet-stream", - text: "text/plain", - void: "", - fail: "", -}; + const isNodeErr = + err instanceof TypeError && + err.message.toLowerCase().startsWith("fetch failed"); -type ResponsePredicateMatch = { - method: SerializationMethod; - codes: StatusCodePredicate; - ctype: string; - schema: ResponseMatcherSchema; - hdrs: boolean; - key: string | undefined; - err: boolean; - fail: boolean; - sseSentinel?: string | undefined; -}; + const isBunErr = "name" in err && err.name === "ConnectionError"; -type ResponsePredicateOptions = { - /** Content type to match on. */ - ctype?: string; - /** Pass HTTP headers to deserializer. */ - hdrs?: boolean; - /** A value for an SSE event's data field that indicates a stream should be terminated. */ - sseSentinel?: string; -} & ( - | { - /** The result key to store the deserialized value into. */ - key?: string; - fail?: never; - err?: never; - } - | { - /** Indicates the matched response must throw the built-in error. */ - fail: true; - key?: never; - err?: never; - } - | { - /** Indicates the matched response is a custom error. */ - err: true; - key?: never; - fail?: never; - } -); - -export class ResponseMatcher { - private predicates: ResponsePredicateMatch[] = []; - - #any( - method: SerializationMethod, - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: ResponsePredicateOptions - ) { - const ctype = opts?.ctype || defaultContentTypes[method]; - const hdrs = !!opts?.hdrs; - const key = opts?.key; - const err = !!opts?.err; - const fail = !!opts?.fail; - const sseSentinel = opts?.sseSentinel; - this.predicates.push({ - method, - codes, - ctype, - schema, - hdrs, - key, - err, - fail, - sseSentinel, - }); - return this; - } + const isGenericErr = + "code" in err && + typeof err.code === "string" && + err.code.toLowerCase() === "econnreset"; - json( - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: ResponsePredicateOptions - ): this { - return this.#any("json", codes, schema, opts); - } - bytes( - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: ResponsePredicateOptions - ): this { - return this.#any("rawBytes", codes, schema, opts); - } - stream( - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: ResponsePredicateOptions - ): this { - return this.#any("rawStream", codes, schema, opts); - } - text( - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: ResponsePredicateOptions - ): this { - return this.#any("text", codes, schema, opts); - } - sse( - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: Omit - ): this { - return this.#any("sse", codes, schema, opts); - } - void( - codes: StatusCodePredicate, - schema: ResponseMatcherSchema, - opts?: Pick - ): this { - return this.#any("void", codes, schema, opts); - } - fail(codes: StatusCodePredicate): this { - return this.#any("fail", codes, znever(), { fail: true }); - } - - async match( - response: Response, - // envelope - options?: { - resultKey?: string; - extraFields?: Record; - } - ): Promise<[result: Result, rawData: unknown]> { - let pred: ResponsePredicateMatch | undefined; - for (const predicate of this.predicates) { - const { codes, ctype } = predicate; - if (ctype && matchResponse(response, codes, ctype)) { - pred = predicate; - break; - } else if (!ctype && matchStatusCode(response, codes)) { - pred = predicate; - break; - } - } - if (pred == null) { - const responseBody = await response.text(); - throw new SDKError( - "Unexpected API response status or content-type", - response, - responseBody - ); - } - - const { method, schema } = pred; - - let raw: unknown; - switch (method) { - case "json": - raw = await response.json(); - break; - case "rawBytes": - raw = await response.arrayBuffer(); - break; - case "rawStream": - raw = response.body; - break; - case "text": - raw = await response.text(); - break; - case "sse": - raw = response.body; - break; - case "void": - raw = await discardResponseBody(response); - break; - case "fail": - raw = await response.text(); - break; - default: - method satisfies never; - throw new Error(`Unsupported response type: ${method}`); - } - - const resultKey = pred.key || options?.resultKey; - let data: unknown; - if (pred.fail) { - throw new SDKError("API error occurred", response, typeof raw === "string" ? raw : ""); - } else if (pred.err) { - data = { - ...options?.extraFields, - ...(pred.hdrs ? { Headers: unpackHeaders(response.headers) } : null), - ...(isPlainObject(raw) ? raw : null), - }; - } else if (resultKey) { - data = { - ...options?.extraFields, - ...(pred.hdrs ? { Headers: unpackHeaders(response.headers) } : null), - [resultKey]: raw, - }; - } else { - data = { - ...options?.extraFields, - ...(pred.hdrs ? { Headers: unpackHeaders(response.headers) } : null), - }; - } - - const parser = "inboundSchema" in schema ? schema.inboundSchema : schema; - const body = parse(data, (v: unknown) => parser.parse(v), "Response validation failed"); - - if (body instanceof Error) { - throw body; - } - - return [body, raw]; - } + return isBrowserErr || isNodeErr || isGenericErr || isBunErr; } /** - * Discards the response body to free up resources. - * - * To learn why this is need, see the undici docs: - * https://undici.nodejs.org/#/?id=garbage-collection + * Uses various heurisitics to determine if an error is a timeout error. */ -export async function discardResponseBody(res: Response) { - const reader = res.body?.getReader(); - if (reader == null) { - return; - } +export function isTimeoutError(err: unknown): boolean { + if (typeof err !== "object" || err == null) { + return false; + } + + // Fetch in browser, Node.js, Bun, Deno + const isNative = "name" in err && err.name === "TimeoutError"; + const isLegacyNative = "code" in err && err.code === 23; + + // Node.js HTTP client and Axios + const isGenericErr = + "code" in err && + typeof err.code === "string" && + err.code.toLowerCase() === "econnaborted"; + + return isNative || isLegacyNative || isGenericErr; +} - try { - let done = false; - while (!done) { - const res = await reader.read(); - done = res.done; - } - } finally { - reader.releaseLock(); - } +/** + * Uses various heurisitics to determine if an error is a abort error. + */ +export function isAbortError(err: unknown): boolean { + if (typeof err !== "object" || err == null) { + return false; + } + + // Fetch in browser, Node.js, Bun, Deno + const isNative = "name" in err && err.name === "AbortError"; + const isLegacyNative = "code" in err && err.code === 20; + + // Node.js HTTP client and Axios + const isGenericErr = + "code" in err && + typeof err.code === "string" && + err.code.toLowerCase() === "econnaborted"; + + return isNative || isLegacyNative || isGenericErr; } diff --git a/src/lib/logger.ts b/src/lib/logger.ts new file mode 100644 index 00000000..d181f293 --- /dev/null +++ b/src/lib/logger.ts @@ -0,0 +1,9 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +export interface Logger { + group(label?: string): void; + groupEnd(): void; + log(message: any, ...args: any[]): void; +} diff --git a/src/lib/matchers.ts b/src/lib/matchers.ts new file mode 100644 index 00000000..923764e7 --- /dev/null +++ b/src/lib/matchers.ts @@ -0,0 +1,305 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { safeParse } from "./schemas.js"; +import { StatusCodePredicate, matchResponse, matchStatusCode } from "./http.js"; +import { isPlainObject } from "./is-plain-object.js"; +import { SDKError } from "../sdk/models/errors/sdkerror.js"; +import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import { Result } from "../sdk/types/fp.js"; + +export type Encoding = "json" | "text" | "bytes" | "stream" | "sse" | "nil" | "fail"; + +const DEFAULT_CONTENT_TYPES: Record = { + json: "application/json", + text: "text/plain", + bytes: "application/octet-stream", + stream: "application/octet-stream", + sse: "text/event-stream", + nil: "*", + fail: "*", +}; + +type Schema = { parse(raw: unknown): T }; + +type MatchOptions = { ctype?: string; hdrs?: boolean; key?: string; sseSentinel?: string }; + +export type ValueMatcher = MatchOptions & { + enc: Encoding; + codes: StatusCodePredicate; + schema: Schema; +}; + +export type ErrorMatcher = MatchOptions & { + enc: Encoding; + codes: StatusCodePredicate; + schema: Schema; + err: true; +}; + +export type FailMatcher = { + enc: "fail"; + codes: StatusCodePredicate; +}; + +export type Matcher = ValueMatcher | ErrorMatcher | FailMatcher; + +export function jsonErr( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ErrorMatcher { + return { ...options, err: true, enc: "json", codes, schema }; +} +export function json( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ValueMatcher { + return { ...options, enc: "json", codes, schema }; +} + +export function textErr( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ErrorMatcher { + return { ...options, err: true, enc: "text", codes, schema }; +} +export function text( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ValueMatcher { + return { ...options, enc: "text", codes, schema }; +} + +export function bytesErr( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ErrorMatcher { + return { ...options, err: true, enc: "bytes", codes, schema }; +} +export function bytes( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ValueMatcher { + return { ...options, enc: "bytes", codes, schema }; +} + +export function streamErr( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ErrorMatcher { + return { ...options, err: true, enc: "stream", codes, schema }; +} +export function stream( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ValueMatcher { + return { ...options, enc: "stream", codes, schema }; +} + +export function sseErr( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ErrorMatcher { + return { ...options, err: true, enc: "sse", codes, schema }; +} +export function sse( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ValueMatcher { + return { ...options, enc: "sse", codes, schema }; +} + +export function nilErr( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ErrorMatcher { + return { ...options, err: true, enc: "nil", codes, schema }; +} +export function nil( + codes: StatusCodePredicate, + schema: Schema, + options?: MatchOptions +): ValueMatcher { + return { ...options, enc: "nil", codes, schema }; +} + +export function fail(codes: StatusCodePredicate): FailMatcher { + return { enc: "fail", codes }; +} + +export type MatchedValue = Matchers extends Matcher[] ? T : never; +export type MatchedError = Matchers extends Matcher[] ? E : never; +export type MatchFunc = ( + response: Response, + options?: { resultKey?: string; extraFields?: Record } +) => Promise<[result: Result, raw: unknown]>; + +export function match( + ...matchers: Array> +): MatchFunc { + return async function matchFunc( + response: Response, + options?: { resultKey?: string; extraFields?: Record } + ): Promise<[result: Result, raw: unknown]> { + let raw: unknown; + let matcher: Matcher | undefined; + for (const match of matchers) { + const { codes } = match; + const ctpattern = "ctype" in match ? match.ctype : DEFAULT_CONTENT_TYPES[match.enc]; + if (ctpattern && matchResponse(response, codes, ctpattern)) { + matcher = match; + break; + } else if (!ctpattern && matchStatusCode(response, codes)) { + matcher = match; + break; + } + } + + if (!matcher) { + const responseBody = await response.text(); + return [ + { + ok: false, + error: new SDKError( + "Unexpected API response status or content-type", + response, + responseBody + ), + }, + responseBody, + ]; + } + + const encoding = matcher.enc; + switch (encoding) { + case "json": + raw = await response.json(); + break; + case "bytes": + raw = await response.arrayBuffer(); + break; + case "stream": + raw = response.body; + break; + case "text": + raw = await response.text(); + break; + case "sse": + raw = response.body; + break; + case "nil": + raw = await discardResponseBody(response); + break; + case "fail": + raw = await response.text(); + break; + default: + encoding satisfies never; + throw new Error(`Unsupported response type: ${encoding}`); + } + + if (matcher.enc === "fail") { + return [ + { + ok: false, + error: new SDKError( + "API error occurred", + response, + typeof raw === "string" ? raw : "" + ), + }, + raw, + ]; + } + + const resultKey = matcher.key || options?.resultKey; + let data: unknown; + + if ("err" in matcher) { + data = { + ...options?.extraFields, + ...(matcher.hdrs ? { Headers: unpackHeaders(response.headers) } : null), + ...(isPlainObject(raw) ? raw : null), + }; + } else if (resultKey) { + data = { + ...options?.extraFields, + ...(matcher.hdrs ? { Headers: unpackHeaders(response.headers) } : null), + [resultKey]: raw, + }; + } else { + data = { + ...options?.extraFields, + ...(matcher.hdrs ? { Headers: unpackHeaders(response.headers) } : null), + }; + } + + if ("err" in matcher) { + const result = safeParse( + data, + (v: unknown) => matcher.schema.parse(v), + "Response validation failed" + ); + return [result.ok ? { ok: false, error: result.value } : result, raw]; + } else { + return [ + safeParse( + data, + (v: unknown) => matcher.schema.parse(v), + "Response validation failed" + ), + raw, + ]; + } + }; +} + +const headerValRE = /, */; +/** + * Iterates over a Headers object and returns an object with all the header + * entries. Values are represented as an array to account for repeated headers. + */ +export function unpackHeaders(headers: Headers): Record { + const out: Record = {}; + + for (const [k, v] of headers.entries()) { + out[k] = v.split(headerValRE); + } + + return out; +} + +/** + * Discards the response body to free up resources. + * + * To learn why this is need, see the undici docs: + * https://undici.nodejs.org/#/?id=garbage-collection + */ +export async function discardResponseBody(res: Response) { + const reader = res.body?.getReader(); + if (reader == null) { + return; + } + + try { + let done = false; + while (!done) { + const res = await reader.read(); + done = res.done; + } + } finally { + reader.releaseLock(); + } +} diff --git a/src/lib/retries.ts b/src/lib/retries.ts index 832b073b..df3e0bc2 100644 --- a/src/lib/retries.ts +++ b/src/lib/retries.ts @@ -2,6 +2,8 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ +import { isConnectionError, isTimeoutError } from "./http.js"; + export type BackoffStrategy = { initialInterval: number; maxInterval: number; @@ -99,47 +101,6 @@ function wrapFetcher( }; } -function isConnectionError(err: unknown) { - if (typeof err !== "object" || err == null) { - return false; - } - - // Covers fetch in Deno as well - const isBrowserErr = - err instanceof TypeError && - err.message.toLowerCase().startsWith("failed to fetch"); - - const isNodeErr = - err instanceof TypeError && - err.message.toLowerCase().startsWith("fetch failed"); - - const isBunErr = "name" in err && err.name === "ConnectionError"; - - const isGenericErr = - "code" in err && - typeof err.code === "string" && - err.code.toLowerCase() === "econnreset"; - - return isBrowserErr || isNodeErr || isGenericErr || isBunErr; -} - -function isTimeoutError(err: unknown) { - if (typeof err !== "object" || err == null) { - return false; - } - - // Fetch in browser, Node.js, Bun, Deno - const isNative = "name" in err && err.name === "TimeoutError"; - - // Node.js HTTP client and Axios - const isGenericErr = - "code" in err && - typeof err.code === "string" && - err.code.toLowerCase() === "econnaborted"; - - return isNative || isGenericErr; -} - const codeRangeRE = new RegExp("^[0-9]xx$", "i"); function isRetryableResponse(res: Response, statusCodes: string[]): boolean { diff --git a/src/lib/schemas.ts b/src/lib/schemas.ts index 1ac59a48..3eda5117 100644 --- a/src/lib/schemas.ts +++ b/src/lib/schemas.ts @@ -4,6 +4,7 @@ import { output, ZodEffects, ZodError, ZodObject, ZodRawShape, ZodTypeAny } from "zod"; import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js"; +import { ERR, OK, Result } from "../sdk/types/fp.js"; /** * Utility function that executes some code which may throw a ZodError. It @@ -21,6 +22,23 @@ export function parse(rawValue: Inp, fn: (value: Inp) => Out, errorMes } } +/** + * Utility function that executes some code which may result in a ZodError. It + * intercepts this error and converts it to an SDKValidationError so as to not + * leak Zod implementation details to user code. + */ +export function safeParse( + rawValue: Inp, + fn: (value: Inp) => Out, + errorMessage: string +): Result { + try { + return OK(fn(rawValue)); + } catch (err) { + return ERR(new SDKValidationError(errorMessage, err, rawValue)); + } +} + export function collectExtraKeys< Shape extends ZodRawShape, Catchall extends ZodTypeAny, diff --git a/src/lib/sdks.ts b/src/lib/sdks.ts index 59b61939..4a53181a 100644 --- a/src/lib/sdks.ts +++ b/src/lib/sdks.ts @@ -2,15 +2,30 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { ResponseMatcher, HTTPClient, matchStatusCode } from "./http.js"; -import { SecurityState, resolveSecurity, resolveGlobalSecurity } from "./security.js"; +import { + HTTPClient, + matchContentType, + matchStatusCode, + isAbortError, + isTimeoutError, + isConnectionError, +} from "./http.js"; +import { SecurityState } from "./security.js"; import { retry, RetryConfig } from "./retries.js"; -import { pathToFunc } from "./url.js"; +import { Logger } from "./logger.js"; import { encodeForm } from "./encodings.js"; import { stringToBase64 } from "./base64.js"; -import { SDK_METADATA } from "./config.js"; +import { SDKOptions, SDK_METADATA, serverURLFromOptions } from "./config.js"; import { SDKHooks } from "../hooks/hooks.js"; import { HookContext } from "../hooks/types.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../sdk/models/errors/httpclienterrors.js"; +import { ERR, OK, Result } from "../sdk/types/fp.js"; export type RequestOptions = { /** @@ -58,32 +73,49 @@ const isBrowserLike = (typeof window === "object" && typeof window.document !== "undefined"); export class ClientSDK { - private readonly client: HTTPClient; + private readonly httpClient: HTTPClient; protected readonly baseURL: URL | null; protected readonly hooks$: SDKHooks; + protected readonly logger?: Logger | undefined; + public readonly options$: SDKOptions & { hooks?: SDKHooks }; - constructor(init: { client: HTTPClient; baseURL: URL | null; hooks: SDKHooks }) { - const url = init.baseURL; + constructor(options: SDKOptions = {}) { + const opt = options as unknown; + if ( + typeof opt === "object" && + opt != null && + "hooks" in opt && + opt.hooks instanceof SDKHooks + ) { + this.hooks$ = opt.hooks; + } else { + this.hooks$ = new SDKHooks(); + } + this.options$ = { ...options, hooks: this.hooks$ }; + + const url = serverURLFromOptions(options); if (url) { url.pathname = url.pathname.replace(/\/+$/, "") + "/"; } - - this.hooks$ = init.hooks; - const { baseURL, client } = this.hooks$.sdkInit({ baseURL: url, client: init.client }); + const { baseURL, client } = this.hooks$.sdkInit({ + baseURL: url, + client: options.httpClient || new HTTPClient(), + }); this.baseURL = baseURL; - this.client = client; + this.httpClient = client; + this.logger = options.debugLogger; } - protected createRequest$( + public createRequest$( context: HookContext, conf: RequestConfig, options?: RequestOptions - ): Request { + ): Result { const { method, path, query, headers: opHeaders, security } = conf; const base = conf.baseURL ?? this.baseURL; if (!base) { - throw new TypeError("No base URL provided for operation"); + return ERR(new InvalidRequestError("No base URL provided for operation")); } const reqURL = new URL(base); const inputURL = new URL(path, reqURL); @@ -149,20 +181,39 @@ export class ClientSDK { } } - const input = this.hooks$.beforeCreateRequest(context, { - url: reqURL, - options: { - ...fetchOptions, - body: conf.body ?? null, - headers, - method, - }, - }); + if (conf.body instanceof ReadableStream) { + if (!fetchOptions) { + fetchOptions = { + // @ts-expect-error see https://github.com/node-fetch/node-fetch/issues/1769 + duplex: "half", + }; + } else { + // @ts-expect-error see https://github.com/node-fetch/node-fetch/issues/1769 + fetchOptions.duplex = "half"; + } + } - return new Request(input.url, input.options); + let input; + try { + input = this.hooks$.beforeCreateRequest(context, { + url: reqURL, + options: { + ...fetchOptions, + body: conf.body ?? null, + headers, + method, + }, + }); + } catch (err: unknown) { + return ERR( + new UnexpectedClientError("Create request hook failed to execute", { cause: err }) + ); + } + + return OK(new Request(input.url, input.options)); } - protected async do$( + public async do$( request: Request, options: { context: HookContext; @@ -170,19 +221,25 @@ export class ClientSDK { retryConfig?: RetryConfig | undefined; retryCodes?: string[] | undefined; } - ): Promise { + ): Promise< + Result< + Response, + RequestAbortedError | RequestTimeoutError | ConnectionError | UnexpectedClientError + > + > { const { context, errorCodes } = options; const retryConfig = options.retryConfig || { strategy: "none" }; const retryCodes = options.retryCodes || []; return retry( async () => { - const req = request.clone(); - - let response = await this.client.request( - await this.hooks$.beforeRequest(context, req) + const req = await this.hooks$.beforeRequest(context, request.clone()); + await logRequest(this.logger, req).catch((e) => + this.logger?.log("Failed to log request:", e) ); + let response = await this.httpClient.request(req); + if (matchStatusCode(response, errorCodes)) { const result = await this.hooks$.afterError(context, response, null); if (result.error) { @@ -193,18 +250,120 @@ export class ClientSDK { response = await this.hooks$.afterSuccess(context, response); } + await logResponse(this.logger, response, req).catch((e) => + this.logger?.log("Failed to log response:", e) + ); + return response; }, { config: retryConfig, statusCodes: retryCodes } + ).then( + (r) => OK(r), + (err) => { + switch (true) { + case isAbortError(err): + return ERR( + new RequestAbortedError("Request aborted by client", { cause: err }) + ); + case isTimeoutError(err): + return ERR(new RequestTimeoutError("Request timed out", { cause: err })); + case isConnectionError(err): + return ERR(new ConnectionError("Unable to make request", { cause: err })); + default: + return ERR( + new UnexpectedClientError("Unexpected HTTP client error", { + cause: err, + }) + ); + } + } ); } +} + +const jsonLikeContentTypeRE = /^application\/(?:.{0,100}\+)?json/; +async function logRequest(logger: Logger | undefined, req: Request) { + if (!logger) { + return; + } + + const contentType = req.headers.get("content-type"); + const ct = contentType?.split(";")[0] || ""; + + logger.group(`> Request: ${req.method} ${req.url}`); + + logger.group("Headers:"); + for (const [k, v] of req.headers.entries()) { + logger.log(`${k}: ${v}`); + } + logger.groupEnd(); - protected matcher(): ResponseMatcher { - return new ResponseMatcher(); + logger.group("Body:"); + switch (true) { + case jsonLikeContentTypeRE.test(ct): + logger.log(await req.clone().json()); + break; + case ct.startsWith("text/"): + logger.log(await req.clone().text()); + break; + case ct === "multipart/form-data": { + const body = await req.clone().formData(); + for (const [k, v] of body) { + const vlabel = v instanceof Blob ? "" : v; + logger.log(`${k}: ${vlabel}`); + } + break; + } + default: + logger.log(`<${contentType}>`); + break; } + logger.groupEnd(); + + logger.groupEnd(); +} - protected templateURLComponent = pathToFunc; +async function logResponse(logger: Logger | undefined, res: Response, req: Request) { + if (!logger) { + return; + } + + const contentType = res.headers.get("content-type"); + const ct = contentType?.split(";")[0] || ""; + + logger.group(`< Response: ${req.method} ${req.url}`); + logger.log("Status Code:", res.status, res.statusText); + + logger.group("Headers:"); + for (const [k, v] of res.headers.entries()) { + logger.log(`${k}: ${v}`); + } + logger.groupEnd(); + + logger.group("Body:"); + switch (true) { + case matchContentType(res, "application/json") || jsonLikeContentTypeRE.test(ct): + logger.log(await res.clone().json()); + break; + case matchContentType(res, "text/event-stream"): + logger.log(`<${contentType}>`); + break; + case matchContentType(res, "text/*"): + logger.log(await res.clone().text()); + break; + case matchContentType(res, "multipart/form-data"): { + const body = await res.clone().formData(); + for (const [k, v] of body) { + const vlabel = v instanceof Blob ? "" : v; + logger.log(`${k}: ${vlabel}`); + } + break; + } + default: + logger.log(`<${contentType}>`); + break; + } + logger.groupEnd(); - protected resolveSecurity = resolveSecurity; - protected resolveGlobalSecurity = resolveGlobalSecurity; + logger.groupEnd(); } diff --git a/src/lib/security.ts b/src/lib/security.ts index 0d4f292b..f64aea77 100644 --- a/src/lib/security.ts +++ b/src/lib/security.ts @@ -71,13 +71,20 @@ type SecurityInputOAuth2ClientCredentials = { fieldName: string; }; +type SecurityInputCustom = { + type: "http:custom"; + value: any | null | undefined; + fieldName: string; +}; + export type SecurityInput = | SecurityInputBasic | SecurityInputBearer | SecurityInputAPIKey | SecurityInputOAuth2 | SecurityInputOAuth2ClientCredentials - | SecurityInputOIDC; + | SecurityInputOIDC + | SecurityInputCustom; export function resolveSecurity(...options: SecurityInput[][]): SecurityState | null { const state: SecurityState = { @@ -93,6 +100,8 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState | return false; } else if (o.type === "http:basic") { return o.value.username != null || o.value.password != null; + } else if (o.type === "http:custom") { + return null; } else if (typeof o.value === "string") { return !!o.value; } else { @@ -126,6 +135,8 @@ export function resolveSecurity(...options: SecurityInput[][]): SecurityState | case "http:basic": applyBasic(state, spec); break; + case "http:custom": + break; case "http:bearer": applyBearer(state, spec); break; @@ -180,3 +191,13 @@ export function resolveGlobalSecurity( }, ]); } + +export async function extractSecurity>( + sec: T | (() => Promise) | undefined +): Promise { + if (sec == null) { + return; + } + + return typeof sec === "function" ? sec() : sec; +} diff --git a/src/sdk/dataset.ts b/src/sdk/dataset.ts index d647f4a7..5c869cbd 100644 --- a/src/sdk/dataset.ts +++ b/src/sdk/dataset.ts @@ -2,41 +2,16 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { datasetCreateDataset } from "../funcs/datasetCreateDataset.js"; +import { datasetDeleteDatasetById } from "../funcs/datasetDeleteDatasetById.js"; +import { datasetGetDatasetById } from "../funcs/datasetGetDatasetById.js"; +import { datasetUploadDatasetImage } from "../funcs/datasetUploadDatasetImage.js"; +import { datasetUploadDatasetImageFromGen } from "../funcs/datasetUploadDatasetImageFromGen.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Dataset extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Create a Dataset * @@ -47,72 +22,7 @@ export class Dataset extends ClientSDK { request: operations.CreateDatasetRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.CreateDatasetRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/datasets")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createDataset", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateDatasetResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(datasetCreateDataset(this, request, options)); } /** @@ -125,76 +35,7 @@ export class Dataset extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.DeleteDatasetByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.DeleteDatasetByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/datasets/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "deleteDatasetById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "DELETE", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.DeleteDatasetByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(datasetDeleteDatasetById(this, id, options)); } /** @@ -207,76 +48,7 @@ export class Dataset extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.GetDatasetByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.GetDatasetByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/datasets/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getDatasetById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetDatasetByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(datasetGetDatasetById(this, id, options)); } /** @@ -290,81 +62,7 @@ export class Dataset extends ClientSDK { datasetId: string, options?: RequestOptions ): Promise { - const input$: operations.UploadDatasetImageRequest = { - requestBody: requestBody, - datasetId: datasetId, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.UploadDatasetImageRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); - - const pathParams$ = { - datasetId: encodeSimple$("datasetId", payload$.datasetId, { - explode: false, - charEncoding: "percent", - }), - }; - const path$ = this.templateURLComponent("/datasets/{datasetId}/upload")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "uploadDatasetImage", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.UploadDatasetImageResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(datasetUploadDatasetImage(this, requestBody, datasetId, options)); } /** @@ -378,82 +76,6 @@ export class Dataset extends ClientSDK { datasetId: string, options?: RequestOptions ): Promise { - const input$: operations.UploadDatasetImageFromGenRequest = { - requestBody: requestBody, - datasetId: datasetId, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.UploadDatasetImageFromGenRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); - - const pathParams$ = { - datasetId: encodeSimple$("datasetId", payload$.datasetId, { - explode: false, - charEncoding: "percent", - }), - }; - const path$ = this.templateURLComponent("/datasets/{datasetId}/upload/gen")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "uploadDatasetImageFromGen", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.UploadDatasetImageFromGenResponse$inboundSchema, { - key: "object", - }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(datasetUploadDatasetImageFromGen(this, requestBody, datasetId, options)); } } diff --git a/src/sdk/elements.ts b/src/sdk/elements.ts index 165ad6aa..bec08c88 100644 --- a/src/sdk/elements.ts +++ b/src/sdk/elements.ts @@ -2,39 +2,12 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { HTTPClient } from "../lib/http.js"; +import { elementsListElements } from "../funcs/elementsListElements.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Elements extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * List Elements * @@ -42,60 +15,6 @@ export class Elements extends ClientSDK { * Get a list of public Elements available for use with generations. */ async listElements(options?: RequestOptions): Promise { - const path$ = this.templateURLComponent("/elements")(); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "listElements", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.ListElementsResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(elementsListElements(this, options)); } } diff --git a/src/sdk/image.ts b/src/sdk/image.ts index 6c5af64a..bbf4d7b8 100644 --- a/src/sdk/image.ts +++ b/src/sdk/image.ts @@ -2,45 +2,15 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { - encodeFormQuery as encodeFormQuery$, - encodeJSON as encodeJSON$, - encodeSimple as encodeSimple$, -} from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { imageCreateGeneration } from "../funcs/imageCreateGeneration.js"; +import { imageDeleteGenerationById } from "../funcs/imageDeleteGenerationById.js"; +import { imageGetGenerationById } from "../funcs/imageGetGenerationById.js"; +import { imageGetGenerationsByUserId } from "../funcs/imageGetGenerationsByUserId.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Image extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Create a Generation of Images * @@ -51,72 +21,7 @@ export class Image extends ClientSDK { request: operations.CreateGenerationRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.CreateGenerationRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/generations")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createGeneration", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateGenerationResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(imageCreateGeneration(this, request, options)); } /** @@ -129,76 +34,7 @@ export class Image extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.DeleteGenerationByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.DeleteGenerationByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/generations/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "deleteGenerationById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "DELETE", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.DeleteGenerationByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(imageDeleteGenerationById(this, id, options)); } /** @@ -211,76 +47,7 @@ export class Image extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.GetGenerationByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.GetGenerationByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/generations/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getGenerationById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetGenerationByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(imageGetGenerationById(this, id, options)); } /** @@ -295,83 +62,6 @@ export class Image extends ClientSDK { offset?: number | undefined, options?: RequestOptions ): Promise { - const input$: operations.GetGenerationsByUserIdRequest = { - limit: limit, - offset: offset, - userId: userId, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.GetGenerationsByUserIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - userId: encodeSimple$("userId", payload$.userId, { - explode: false, - charEncoding: "percent", - }), - }; - const path$ = this.templateURLComponent("/generations/user/{userId}")(pathParams$); - - const query$ = encodeFormQuery$({ - limit: payload$.limit, - offset: payload$.offset, - }); - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getGenerationsByUserId", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetGenerationsByUserIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(imageGetGenerationsByUserId(this, userId, limit, offset, options)); } } diff --git a/src/sdk/initimages.ts b/src/sdk/initimages.ts index 16f3e07a..e8707e1c 100644 --- a/src/sdk/initimages.ts +++ b/src/sdk/initimages.ts @@ -2,41 +2,15 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { initImagesDeleteInitImageById } from "../funcs/initImagesDeleteInitImageById.js"; +import { initImagesGetInitImageById } from "../funcs/initImagesGetInitImageById.js"; +import { initImagesUploadCanvasInitImage } from "../funcs/initImagesUploadCanvasInitImage.js"; +import { initImagesUploadInitImage } from "../funcs/initImagesUploadInitImage.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class InitImages extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Delete init image * @@ -47,76 +21,7 @@ export class InitImages extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.DeleteInitImageByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.DeleteInitImageByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/init-image/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "deleteInitImageById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "DELETE", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.DeleteInitImageByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(initImagesDeleteInitImageById(this, id, options)); } /** @@ -129,76 +34,7 @@ export class InitImages extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.GetInitImageByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.GetInitImageByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/init-image/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getInitImageById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetInitImageByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(initImagesGetInitImageById(this, id, options)); } /** @@ -211,72 +47,7 @@ export class InitImages extends ClientSDK { request: operations.UploadCanvasInitImageRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.UploadCanvasInitImageRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/canvas-init-image")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "uploadCanvasInitImage", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.UploadCanvasInitImageResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(initImagesUploadCanvasInitImage(this, request, options)); } /** @@ -289,71 +60,6 @@ export class InitImages extends ClientSDK { request: operations.UploadInitImageRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.UploadInitImageRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/init-image")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "uploadInitImage", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.UploadInitImageResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(initImagesUploadInitImage(this, request, options)); } } diff --git a/src/sdk/models.ts b/src/sdk/models.ts index 89da4cb6..3ebd86d9 100644 --- a/src/sdk/models.ts +++ b/src/sdk/models.ts @@ -2,41 +2,15 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { modelsCreateModel } from "../funcs/modelsCreateModel.js"; +import { modelsDeleteModelById } from "../funcs/modelsDeleteModelById.js"; +import { modelsGetModelById } from "../funcs/modelsGetModelById.js"; +import { modelsListPlatformModels } from "../funcs/modelsListPlatformModels.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Models extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Train a Custom Model * @@ -47,72 +21,7 @@ export class Models extends ClientSDK { request: operations.CreateModelRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.CreateModelRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/models")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createModel", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateModelResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(modelsCreateModel(this, request, options)); } /** @@ -125,76 +34,7 @@ export class Models extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.DeleteModelByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.DeleteModelByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/models/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "deleteModelById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "DELETE", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.DeleteModelByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(modelsDeleteModelById(this, id, options)); } /** @@ -207,76 +47,7 @@ export class Models extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.GetModelByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.GetModelByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/models/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getModelById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetModelByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(modelsGetModelById(this, id, options)); } /** @@ -288,60 +59,6 @@ export class Models extends ClientSDK { async listPlatformModels( options?: RequestOptions ): Promise { - const path$ = this.templateURLComponent("/platformModels")(); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "listPlatformModels", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.ListPlatformModelsResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(modelsListPlatformModels(this, options)); } } diff --git a/src/sdk/models/errors/httpclienterrors.ts b/src/sdk/models/errors/httpclienterrors.ts new file mode 100644 index 00000000..cdb2995f --- /dev/null +++ b/src/sdk/models/errors/httpclienterrors.ts @@ -0,0 +1,62 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +/** + * Base class for all HTTP errors. + */ +export class HTTPClientError extends Error { + /** The underlying cause of the error. */ + override readonly cause: unknown; + override name = "HTTPClientError"; + constructor(message: string, opts?: { cause?: unknown }) { + let msg = message; + if (opts?.cause) { + msg += `: ${opts.cause}`; + } + + super(msg, opts); + // In older runtimes, the cause field would not have been assigned through + // the super() call. + if (typeof this.cause === "undefined") { + this.cause = opts?.cause; + } + } +} + +/** + * An error to capture unrecognised or unexpected errors when making HTTP calls. + */ +export class UnexpectedClientError extends HTTPClientError { + override name = "UnexpectedClientError"; +} + +/** + * An error that is raised when any inputs used to create a request are invalid. + */ +export class InvalidRequestError extends HTTPClientError { + override name = "InvalidRequestError"; +} + +/** + * An error that is raised when a HTTP request was aborted by the client error. + */ +export class RequestAbortedError extends HTTPClientError { + override readonly name = "RequestAbortedError"; +} + +/** + * An error that is raised when a HTTP request timed out due to an AbortSignal + * signal timeout. + */ +export class RequestTimeoutError extends HTTPClientError { + override readonly name = "RequestTimeoutError"; +} + +/** + * An error that is raised when a HTTP client is unable to make a request to + * a server. + */ +export class ConnectionError extends HTTPClientError { + override readonly name = "ConnectionError"; +} diff --git a/src/sdk/models/errors/index.ts b/src/sdk/models/errors/index.ts index ead269b0..900ee9d5 100644 --- a/src/sdk/models/errors/index.ts +++ b/src/sdk/models/errors/index.ts @@ -2,5 +2,6 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ +export * from "./httpclienterrors.js"; export * from "./sdkerror.js"; export * from "./sdkvalidationerror.js"; diff --git a/src/sdk/models/errors/sdkvalidationerror.ts b/src/sdk/models/errors/sdkvalidationerror.ts index 3030cd7f..16929b9e 100644 --- a/src/sdk/models/errors/sdkvalidationerror.ts +++ b/src/sdk/models/errors/sdkvalidationerror.ts @@ -10,15 +10,17 @@ export class SDKValidationError extends Error { */ public readonly rawValue: unknown; + /** + * The raw message that failed validation. + */ + public readonly rawMessage: unknown; + constructor(message: string, cause: unknown, rawValue: unknown) { - super(message); + super(`${message}: ${cause}`); this.name = "SDKValidationError"; this.cause = cause; this.rawValue = rawValue; - } - - public override toString(): string { - return `${this.message}: ${this.cause}`; + this.rawMessage = message; } /** @@ -28,7 +30,7 @@ export class SDKValidationError extends Error { */ public pretty(): string { if (this.cause instanceof z.ZodError) { - return `${this.message}\n${formatZodError(this.cause)}`; + return `${this.rawMessage}\n${formatZodError(this.cause)}`; } else { return this.toString(); } diff --git a/src/sdk/models/operations/pricingcalculator.ts b/src/sdk/models/operations/pricingcalculator.ts index 8372c7fc..d2a41c68 100644 --- a/src/sdk/models/operations/pricingcalculator.ts +++ b/src/sdk/models/operations/pricingcalculator.ts @@ -56,6 +56,10 @@ export type PricingCalculatorPricingCalculatorObject = { * Enable to use custom model. */ isModelCustom?: boolean | null | undefined; + /** + * Enable to use Phoenix model. + */ + isPhoenix?: boolean | null | undefined; /** * Enable to use SDXL model. */ @@ -289,6 +293,7 @@ export const PricingCalculatorPricingCalculatorObject$inboundSchema: z.ZodType< imageWidth: z.number().int().optional(), inferenceSteps: z.number().int().optional(), isModelCustom: z.nullable(z.boolean()).optional(), + isPhoenix: z.nullable(z.boolean()).optional(), isSDXL: z.nullable(z.boolean()).optional(), isSDXLLightning: z.nullable(z.boolean()).optional(), loraCount: z.nullable(z.number().int()).optional(), @@ -307,6 +312,7 @@ export type PricingCalculatorPricingCalculatorObject$Outbound = { imageWidth?: number | undefined; inferenceSteps?: number | undefined; isModelCustom?: boolean | null | undefined; + isPhoenix?: boolean | null | undefined; isSDXL?: boolean | null | undefined; isSDXLLightning?: boolean | null | undefined; loraCount?: number | null | undefined; @@ -329,6 +335,7 @@ export const PricingCalculatorPricingCalculatorObject$outboundSchema: z.ZodType< imageWidth: z.number().int().optional(), inferenceSteps: z.number().int().optional(), isModelCustom: z.nullable(z.boolean()).optional(), + isPhoenix: z.nullable(z.boolean()).optional(), isSDXL: z.nullable(z.boolean()).optional(), isSDXLLightning: z.nullable(z.boolean()).optional(), loraCount: z.nullable(z.number().int()).optional(), diff --git a/src/sdk/motion.ts b/src/sdk/motion.ts index 840ce56d..39735ae8 100644 --- a/src/sdk/motion.ts +++ b/src/sdk/motion.ts @@ -2,41 +2,12 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { motionCreateSVDMotionGeneration } from "../funcs/motionCreateSVDMotionGeneration.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Motion extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Create SVD Motion Generation * @@ -47,77 +18,6 @@ export class Motion extends ClientSDK { request?: operations.CreateSVDMotionGenerationRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.CreateSVDMotionGenerationRequestBody$outboundSchema.optional().parse( - value$ - ), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/generations-motion-svd")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createSVDMotionGeneration", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateSVDMotionGenerationResponse$inboundSchema, { - key: "object", - }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(motionCreateSVDMotionGeneration(this, request, options)); } } diff --git a/src/sdk/pricingcalculator.ts b/src/sdk/pricingcalculator.ts index 0e33147a..bc819656 100644 --- a/src/sdk/pricingcalculator.ts +++ b/src/sdk/pricingcalculator.ts @@ -2,41 +2,12 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { pricingCalculatorPricingCalculator } from "../funcs/pricingCalculatorPricingCalculator.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class PricingCalculator extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Calculating API Cost * @@ -47,73 +18,6 @@ export class PricingCalculator extends ClientSDK { request?: operations.PricingCalculatorRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.PricingCalculatorRequestBody$outboundSchema.optional().parse(value$), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/pricing-calculator")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "pricingCalculator", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.PricingCalculatorResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(pricingCalculatorPricingCalculator(this, request, options)); } } diff --git a/src/sdk/prompt.ts b/src/sdk/prompt.ts index 3fab234c..4fcfbadd 100644 --- a/src/sdk/prompt.ts +++ b/src/sdk/prompt.ts @@ -2,41 +2,13 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { promptPromptImprove } from "../funcs/promptPromptImprove.js"; +import { promptPromptRandom } from "../funcs/promptPromptRandom.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Prompt extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Improve a Prompt * @@ -47,72 +19,7 @@ export class Prompt extends ClientSDK { request: operations.PromptImproveRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.PromptImproveRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/prompt/improve")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "promptImprove", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.PromptImproveResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(promptPromptImprove(this, request, options)); } /** @@ -122,60 +29,6 @@ export class Prompt extends ClientSDK { * This endpoint returns a random prompt */ async promptRandom(options?: RequestOptions): Promise { - const path$ = this.templateURLComponent("/prompt/random")(); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "promptRandom", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.PromptRandomResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(promptPromptRandom(this, options)); } } diff --git a/src/sdk/realtimecanvas.ts b/src/sdk/realtimecanvas.ts index 74891bc4..932a2bb4 100644 --- a/src/sdk/realtimecanvas.ts +++ b/src/sdk/realtimecanvas.ts @@ -2,41 +2,15 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { realtimeCanvasCreateLCMGeneration } from "../funcs/realtimeCanvasCreateLCMGeneration.js"; +import { realtimeCanvasPerformAlchemyUpscaleLCM } from "../funcs/realtimeCanvasPerformAlchemyUpscaleLCM.js"; +import { realtimeCanvasPerformInpaintingLCM } from "../funcs/realtimeCanvasPerformInpaintingLCM.js"; +import { realtimeCanvasPerformInstantRefine } from "../funcs/realtimeCanvasPerformInstantRefine.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class RealtimeCanvas extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Create LCM Generation * @@ -47,74 +21,7 @@ export class RealtimeCanvas extends ClientSDK { request?: operations.CreateLCMGenerationRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.CreateLCMGenerationRequestBody$outboundSchema.optional().parse(value$), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/generations-lcm")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createLCMGeneration", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateLCMGenerationResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(realtimeCanvasCreateLCMGeneration(this, request, options)); } /** @@ -127,76 +34,7 @@ export class RealtimeCanvas extends ClientSDK { request?: operations.PerformAlchemyUpscaleLCMRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.PerformAlchemyUpscaleLCMRequestBody$outboundSchema.optional().parse( - value$ - ), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/lcm-upscale")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "performAlchemyUpscaleLCM", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.PerformAlchemyUpscaleLCMResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(realtimeCanvasPerformAlchemyUpscaleLCM(this, request, options)); } /** @@ -209,74 +47,7 @@ export class RealtimeCanvas extends ClientSDK { request?: operations.PerformInpaintingLCMRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.PerformInpaintingLCMRequestBody$outboundSchema.optional().parse(value$), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/lcm-inpainting")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "performInpaintingLCM", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.PerformInpaintingLCMResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(realtimeCanvasPerformInpaintingLCM(this, request, options)); } /** @@ -289,73 +60,6 @@ export class RealtimeCanvas extends ClientSDK { request?: operations.PerformInstantRefineRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.PerformInstantRefineRequestBody$outboundSchema.optional().parse(value$), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/lcm-instant-refine")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "performInstantRefine", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.PerformInstantRefineResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(realtimeCanvasPerformInstantRefine(this, request, options)); } } diff --git a/src/sdk/sdk.ts b/src/sdk/sdk.ts index 76e703a1..1632c34e 100644 --- a/src/sdk/sdk.ts +++ b/src/sdk/sdk.ts @@ -2,9 +2,6 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { HTTPClient } from "../lib/http.js"; import { ClientSDK } from "../lib/sdks.js"; import { Dataset } from "./dataset.js"; import { Elements } from "./elements.js"; @@ -21,32 +18,6 @@ import { User } from "./user.js"; import { Variation } from "./variation.js"; export class Leonardo extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - private _initImages?: InitImages; get initImages(): InitImages { return (this._initImages ??= new InitImages(this.options$)); diff --git a/src/sdk/texture.ts b/src/sdk/texture.ts index 8d1329e6..691c2e8b 100644 --- a/src/sdk/texture.ts +++ b/src/sdk/texture.ts @@ -2,41 +2,13 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { textureCreateTextureGeneration } from "../funcs/textureCreateTextureGeneration.js"; +import { textureDeleteTextureGenerationById } from "../funcs/textureDeleteTextureGenerationById.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Texture extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Create Texture Generation * @@ -47,76 +19,7 @@ export class Texture extends ClientSDK { request?: operations.CreateTextureGenerationRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.CreateTextureGenerationRequestBody$outboundSchema.optional().parse( - value$ - ), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/generations-texture")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createTextureGeneration", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateTextureGenerationResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(textureCreateTextureGeneration(this, request, options)); } /** @@ -130,79 +33,6 @@ export class Texture extends ClientSDK { requestBody?: operations.DeleteTextureGenerationByIdRequestBody | undefined, options?: RequestOptions ): Promise { - const input$: operations.DeleteTextureGenerationByIdRequest = { - requestBody: requestBody, - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.DeleteTextureGenerationByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/generations-texture/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "deleteTextureGenerationById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "DELETE", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.DeleteTextureGenerationByIdResponse$inboundSchema, { - key: "object", - }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(textureDeleteTextureGenerationById(this, id, requestBody, options)); } } diff --git a/src/sdk/threedmodelassets.ts b/src/sdk/threedmodelassets.ts index 292ac4f3..a6f29d5e 100644 --- a/src/sdk/threedmodelassets.ts +++ b/src/sdk/threedmodelassets.ts @@ -2,41 +2,13 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { threeDModelAssetsDelete3DModelById } from "../funcs/threeDModelAssetsDelete3DModelById.js"; +import { threeDModelAssetsUploadModelAsset } from "../funcs/threeDModelAssetsUploadModelAsset.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class ThreeDModelAssets extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Delete 3D Model by ID * @@ -48,78 +20,7 @@ export class ThreeDModelAssets extends ClientSDK { requestBody?: operations.Delete3DModelByIdRequestBody | undefined, options?: RequestOptions ): Promise { - const input$: operations.Delete3DModelByIdRequest = { - requestBody: requestBody, - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.Delete3DModelByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true }); - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/models-3d/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "delete3DModelById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "DELETE", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.Delete3DModelByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(threeDModelAssetsDelete3DModelById(this, id, requestBody, options)); } /** @@ -132,73 +33,6 @@ export class ThreeDModelAssets extends ClientSDK { request?: operations.UploadModelAssetRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.UploadModelAssetRequestBody$outboundSchema.optional().parse(value$), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/models-3d/upload")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "uploadModelAsset", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.UploadModelAssetResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(threeDModelAssetsUploadModelAsset(this, request, options)); } } diff --git a/src/sdk/types/constdatetime.ts b/src/sdk/types/constdatetime.ts new file mode 100644 index 00000000..c0a4409c --- /dev/null +++ b/src/sdk/types/constdatetime.ts @@ -0,0 +1,15 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export function constDateTime( + val: string, +): z.ZodType { + return z.custom((v) => { + return ( + typeof v === "string" && new Date(v).getTime() === new Date(val).getTime() + ); + }, `Value must be equivelant to ${val}`); +} diff --git a/src/sdk/types/fp.ts b/src/sdk/types/fp.ts new file mode 100644 index 00000000..ccbe51ea --- /dev/null +++ b/src/sdk/types/fp.ts @@ -0,0 +1,50 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +/** + * A monad that captures the result of a function call or an error if it was not + * successful. Railway programming, enabled by this type, can be a nicer + * alternative to traditional exception throwing because it allows functions to + * declare all _known_ errors with static types and then check for them + * exhaustively in application code. Thrown exception have a type of `unknown` + * and break out of regular control flow of programs making them harder to + * inspect and more verbose work with due to try-catch blocks. + */ +export type Result = + | { ok: true; value: T; error?: never } + | { ok: false; value?: never; error: E }; + +export function OK(value: V): Result { + return { ok: true, value }; +} + +export function ERR(error: E): Result { + return { ok: false, error }; +} + +/** + * unwrap is a convenience function for extracting a value from a result or + * throwing if there was an error. + */ +export function unwrap(r: Result): T { + if (!r.ok) { + throw r.error; + } + return r.value; +} + +/** + * unwrapAsync is a convenience function for resolving a value from a Promise + * of a result or rejecting if an error occurred. + */ +export async function unwrapAsync( + pr: Promise>, +): Promise { + const r = await pr; + if (!r.ok) { + throw r.error; + } + + return r.value; +} diff --git a/src/sdk/types/index.ts b/src/sdk/types/index.ts index 27158ff8..dbaa5e6e 100644 --- a/src/sdk/types/index.ts +++ b/src/sdk/types/index.ts @@ -8,3 +8,4 @@ export type { Paginator, PageIterator } from "./operations.js"; export { createPageIterator } from "./operations.js"; export { catchUnrecognizedEnum } from "./enums.js"; export type { OpenEnum, ClosedEnum, Unrecognized } from "./enums.js"; +export type { Result } from "./fp.js"; diff --git a/src/sdk/types/operations.ts b/src/sdk/types/operations.ts index 35da1331..0952f6f4 100644 --- a/src/sdk/types/operations.ts +++ b/src/sdk/types/operations.ts @@ -2,24 +2,98 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -export type Paginator = () => Promise> | null; +import { Result } from "./fp.js"; -export type PageIterator = Result & { - next: Paginator; - [Symbol.asyncIterator]: () => AsyncIterableIterator; +export type Paginator = () => Promise }> | null; + +export type PageIterator = V & { + next: Paginator; + [Symbol.asyncIterator]: () => AsyncIterableIterator; }; -export function createPageIterator( - page: Result & { next: Paginator }, -): { [Symbol.asyncIterator]: () => AsyncIterableIterator } { +export function createPageIterator( + page: V & { next: Paginator }, + halt: (v: V) => boolean, +): { + [Symbol.asyncIterator]: () => AsyncIterableIterator; +} { return { [Symbol.asyncIterator]: async function* paginator() { yield page; + if (halt(page)) { + return; + } let p: typeof page | null = page; for (p = await p.next(); p != null; p = await p.next()) { yield p; + if (halt(p)) { + return; + } } }, }; } + +/** + * This utility create a special iterator that yields a single value and + * terminates. It is useful in paginated SDK functions that have early return + * paths when things go wrong. + */ +export function haltIterator(v: V): PageIterator { + return { + ...v, + next: () => null, + [Symbol.asyncIterator]: async function* paginator() { + yield v; + }, + }; +} + +/** + * Converts an async iterator of `Result` into an async iterator of `V`. + * When error results occur, the underlying error value is thrown. + */ +export async function unwrapResultIterator( + iteratorPromise: Promise>>, +): Promise> { + const resultIter = await iteratorPromise; + + if (!resultIter.ok) { + throw resultIter.error; + } + + return { + ...resultIter.value, + next: unwrapPaginator(resultIter.next), + [Symbol.asyncIterator]: async function* paginator() { + for await (const page of resultIter) { + if (!page.ok) { + throw page.error; + } + yield page.value; + } + }, + }; +} + +function unwrapPaginator( + paginator: Paginator>, +): Paginator { + return () => { + const nextResult = paginator(); + if (nextResult == null) { + return null; + } + return nextResult.then((res) => { + if (!res.ok) { + throw res.error; + } + const out = { + ...res.value, + next: unwrapPaginator(res.next), + }; + return out; + }); + }; +} diff --git a/src/sdk/types/streams.ts b/src/sdk/types/streams.ts new file mode 100644 index 00000000..a0163e7a --- /dev/null +++ b/src/sdk/types/streams.ts @@ -0,0 +1,21 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +export function isReadableStream( + val: unknown, +): val is ReadableStream { + if (typeof val !== "object" || val === null) { + return false; + } + + // Check for the presence of methods specific to ReadableStream + const stream = val as ReadableStream; + + // ReadableStream has methods like getReader, cancel, and tee + return ( + typeof stream.getReader === "function" && + typeof stream.cancel === "function" && + typeof stream.tee === "function" + ); +} diff --git a/src/sdk/user.ts b/src/sdk/user.ts index e157edfc..b244aba8 100644 --- a/src/sdk/user.ts +++ b/src/sdk/user.ts @@ -2,39 +2,12 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { HTTPClient } from "../lib/http.js"; +import { userGetUserSelf } from "../funcs/userGetUserSelf.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class User extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Get user information * @@ -42,60 +15,6 @@ export class User extends ClientSDK { * This endpoint will return your user information such as your user id, username, token renewal date and current amounts of the following: subscription tokens, gpt (prompt generation) tokens, and model training tokens */ async getUserSelf(options?: RequestOptions): Promise { - const path$ = this.templateURLComponent("/me")(); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getUserSelf", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetUserSelfResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(userGetUserSelf(this, options)); } } diff --git a/src/sdk/variation.ts b/src/sdk/variation.ts index 7089d4fc..578e1e61 100644 --- a/src/sdk/variation.ts +++ b/src/sdk/variation.ts @@ -2,41 +2,16 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import { SDKHooks } from "../hooks/hooks.js"; -import { SDKOptions, serverURLFromOptions } from "../lib/config.js"; -import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js"; -import { HTTPClient } from "../lib/http.js"; -import * as schemas$ from "../lib/schemas.js"; +import { variationCreateUniversalUpscalerJob } from "../funcs/variationCreateUniversalUpscalerJob.js"; +import { variationCreateVariationNoBG } from "../funcs/variationCreateVariationNoBG.js"; +import { variationCreateVariationUnzoom } from "../funcs/variationCreateVariationUnzoom.js"; +import { variationCreateVariationUpscale } from "../funcs/variationCreateVariationUpscale.js"; +import { variationGetVariationById } from "../funcs/variationGetVariationById.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "./models/operations/index.js"; +import { unwrapAsync } from "./types/fp.js"; export class Variation extends ClientSDK { - private readonly options$: SDKOptions & { hooks?: SDKHooks }; - - constructor(options: SDKOptions = {}) { - const opt = options as unknown; - let hooks: SDKHooks; - if ( - typeof opt === "object" && - opt != null && - "hooks" in opt && - opt.hooks instanceof SDKHooks - ) { - hooks = opt.hooks; - } else { - hooks = new SDKHooks(); - } - - super({ - client: options.httpClient || new HTTPClient(), - baseURL: serverURLFromOptions(options), - hooks, - }); - - this.options$ = { ...options, hooks }; - void this.options$; - } - /** * Create using Universal Upscaler * @@ -47,75 +22,7 @@ export class Variation extends ClientSDK { request: operations.CreateUniversalUpscalerJobRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.CreateUniversalUpscalerJobRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/variations/universal-upscaler")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "CreateUniversalUpscalerJob", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateUniversalUpscalerJobResponse$inboundSchema, { - key: "object", - }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(variationCreateUniversalUpscalerJob(this, request, options)); } /** @@ -128,72 +35,7 @@ export class Variation extends ClientSDK { request: operations.CreateVariationNoBGRequestBody, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.CreateVariationNoBGRequestBody$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/variations/nobg")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createVariationNoBG", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateVariationNoBGResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(variationCreateVariationNoBG(this, request, options)); } /** @@ -206,74 +48,7 @@ export class Variation extends ClientSDK { request?: operations.CreateVariationUnzoomRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.CreateVariationUnzoomRequestBody$outboundSchema.optional().parse(value$), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/variations/unzoom")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createVariationUnzoom", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateVariationUnzoomResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(variationCreateVariationUnzoom(this, request, options)); } /** @@ -286,76 +61,7 @@ export class Variation extends ClientSDK { request?: operations.CreateVariationUpscaleRequestBody | undefined, options?: RequestOptions ): Promise { - const input$ = request; - - const payload$ = schemas$.parse( - input$, - (value$) => - operations.CreateVariationUpscaleRequestBody$outboundSchema.optional().parse( - value$ - ), - "Input validation failed" - ); - const body$ = - payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true }); - - const path$ = this.templateURLComponent("/variations/upscale")(); - - const query$ = ""; - - const headers$ = new Headers({ - "Content-Type": "application/json", - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "createVariationUpscale", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "POST", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.CreateVariationUpscaleResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(variationCreateVariationUpscale(this, request, options)); } /** @@ -368,75 +74,6 @@ export class Variation extends ClientSDK { id: string, options?: RequestOptions ): Promise { - const input$: operations.GetVariationByIdRequest = { - id: id, - }; - - const payload$ = schemas$.parse( - input$, - (value$) => operations.GetVariationByIdRequest$outboundSchema.parse(value$), - "Input validation failed" - ); - const body$ = null; - - const pathParams$ = { - id: encodeSimple$("id", payload$.id, { explode: false, charEncoding: "percent" }), - }; - const path$ = this.templateURLComponent("/variations/{id}")(pathParams$); - - const query$ = ""; - - const headers$ = new Headers({ - Accept: "application/json", - }); - - let security$; - if (typeof this.options$.bearerAuth === "function") { - security$ = { bearerAuth: await this.options$.bearerAuth() }; - } else if (this.options$.bearerAuth) { - security$ = { bearerAuth: this.options$.bearerAuth }; - } else { - security$ = {}; - } - const context = { - operationID: "getVariationById", - oAuth2Scopes: [], - securitySource: this.options$.bearerAuth, - }; - const securitySettings$ = this.resolveGlobalSecurity(security$); - - const request$ = this.createRequest$( - context, - { - security: securitySettings$, - method: "GET", - path: path$, - headers: headers$, - query: query$, - body: body$, - timeoutMs: options?.timeoutMs || this.options$.timeoutMs || -1, - }, - options - ); - - const response = await this.do$(request$, { - context, - errorCodes: [], - retryConfig: options?.retries || this.options$.retryConfig, - retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"], - }); - - const responseFields$ = { - ContentType: response.headers.get("content-type") ?? "application/octet-stream", - StatusCode: response.status, - RawResponse: response, - Headers: {}, - }; - - const [result$] = await this.matcher() - .json(200, operations.GetVariationByIdResponse$inboundSchema, { key: "object" }) - .match(response, { extraFields: responseFields$ }); - - return result$; + return unwrapAsync(variationGetVariationById(this, id, options)); } }