@zavudev/sdk 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FUNCTIONS.md +93 -0
- package/README.md +492 -0
- package/RUNTIMES.md +48 -0
- package/dist/commonjs/core.d.ts +10 -0
- package/dist/commonjs/core.d.ts.map +1 -0
- package/dist/commonjs/core.js +17 -0
- package/dist/commonjs/core.js.map +1 -0
- package/dist/commonjs/funcs/createSender.d.ts +15 -0
- package/dist/commonjs/funcs/createSender.d.ts.map +1 -0
- package/dist/commonjs/funcs/createSender.js +116 -0
- package/dist/commonjs/funcs/createSender.js.map +1 -0
- package/dist/commonjs/funcs/createTemplate.d.ts +18 -0
- package/dist/commonjs/funcs/createTemplate.d.ts.map +1 -0
- package/dist/commonjs/funcs/createTemplate.js +119 -0
- package/dist/commonjs/funcs/createTemplate.js.map +1 -0
- package/dist/commonjs/funcs/deleteSender.d.ts +15 -0
- package/dist/commonjs/funcs/deleteSender.d.ts.map +1 -0
- package/dist/commonjs/funcs/deleteSender.js +121 -0
- package/dist/commonjs/funcs/deleteSender.js.map +1 -0
- package/dist/commonjs/funcs/deleteTemplate.d.ts +15 -0
- package/dist/commonjs/funcs/deleteTemplate.d.ts.map +1 -0
- package/dist/commonjs/funcs/deleteTemplate.js +121 -0
- package/dist/commonjs/funcs/deleteTemplate.js.map +1 -0
- package/dist/commonjs/funcs/getContact.d.ts +16 -0
- package/dist/commonjs/funcs/getContact.d.ts.map +1 -0
- package/dist/commonjs/funcs/getContact.js +122 -0
- package/dist/commonjs/funcs/getContact.js.map +1 -0
- package/dist/commonjs/funcs/getContactByPhone.d.ts +16 -0
- package/dist/commonjs/funcs/getContactByPhone.d.ts.map +1 -0
- package/dist/commonjs/funcs/getContactByPhone.js +122 -0
- package/dist/commonjs/funcs/getContactByPhone.js.map +1 -0
- package/dist/commonjs/funcs/getMessage.d.ts +16 -0
- package/dist/commonjs/funcs/getMessage.d.ts.map +1 -0
- package/dist/commonjs/funcs/getMessage.js +122 -0
- package/dist/commonjs/funcs/getMessage.js.map +1 -0
- package/dist/commonjs/funcs/getSender.d.ts +16 -0
- package/dist/commonjs/funcs/getSender.d.ts.map +1 -0
- package/dist/commonjs/funcs/getSender.js +122 -0
- package/dist/commonjs/funcs/getSender.js.map +1 -0
- package/dist/commonjs/funcs/getTemplate.d.ts +16 -0
- package/dist/commonjs/funcs/getTemplate.d.ts.map +1 -0
- package/dist/commonjs/funcs/getTemplate.js +122 -0
- package/dist/commonjs/funcs/getTemplate.js.map +1 -0
- package/dist/commonjs/funcs/introspectPhone.d.ts +18 -0
- package/dist/commonjs/funcs/introspectPhone.d.ts.map +1 -0
- package/dist/commonjs/funcs/introspectPhone.js +119 -0
- package/dist/commonjs/funcs/introspectPhone.js.map +1 -0
- package/dist/commonjs/funcs/listContacts.d.ts +15 -0
- package/dist/commonjs/funcs/listContacts.d.ts.map +1 -0
- package/dist/commonjs/funcs/listContacts.js +121 -0
- package/dist/commonjs/funcs/listContacts.js.map +1 -0
- package/dist/commonjs/funcs/listMessages.d.ts +18 -0
- package/dist/commonjs/funcs/listMessages.d.ts.map +1 -0
- package/dist/commonjs/funcs/listMessages.js +126 -0
- package/dist/commonjs/funcs/listMessages.js.map +1 -0
- package/dist/commonjs/funcs/listSenders.d.ts +15 -0
- package/dist/commonjs/funcs/listSenders.d.ts.map +1 -0
- package/dist/commonjs/funcs/listSenders.js +105 -0
- package/dist/commonjs/funcs/listSenders.js.map +1 -0
- package/dist/commonjs/funcs/listTemplates.d.ts +18 -0
- package/dist/commonjs/funcs/listTemplates.d.ts.map +1 -0
- package/dist/commonjs/funcs/listTemplates.js +108 -0
- package/dist/commonjs/funcs/listTemplates.js.map +1 -0
- package/dist/commonjs/funcs/sendMessage.d.ts +28 -0
- package/dist/commonjs/funcs/sendMessage.d.ts.map +1 -0
- package/dist/commonjs/funcs/sendMessage.js +133 -0
- package/dist/commonjs/funcs/sendMessage.js.map +1 -0
- package/dist/commonjs/funcs/sendReaction.d.ts +19 -0
- package/dist/commonjs/funcs/sendReaction.d.ts.map +1 -0
- package/dist/commonjs/funcs/sendReaction.js +130 -0
- package/dist/commonjs/funcs/sendReaction.js.map +1 -0
- package/dist/commonjs/funcs/updateContact.d.ts +16 -0
- package/dist/commonjs/funcs/updateContact.d.ts.map +1 -0
- package/dist/commonjs/funcs/updateContact.js +123 -0
- package/dist/commonjs/funcs/updateContact.js.map +1 -0
- package/dist/commonjs/funcs/updateSender.d.ts +16 -0
- package/dist/commonjs/funcs/updateSender.d.ts.map +1 -0
- package/dist/commonjs/funcs/updateSender.js +123 -0
- package/dist/commonjs/funcs/updateSender.js.map +1 -0
- package/dist/commonjs/hooks/hooks.d.ts +25 -0
- package/dist/commonjs/hooks/hooks.d.ts.map +1 -0
- package/dist/commonjs/hooks/hooks.js +86 -0
- package/dist/commonjs/hooks/hooks.js.map +1 -0
- package/dist/commonjs/hooks/index.d.ts +3 -0
- package/dist/commonjs/hooks/index.d.ts.map +1 -0
- package/dist/commonjs/hooks/index.js +22 -0
- package/dist/commonjs/hooks/index.js.map +1 -0
- package/dist/commonjs/hooks/registration.d.ts +3 -0
- package/dist/commonjs/hooks/registration.d.ts.map +1 -0
- package/dist/commonjs/hooks/registration.js +15 -0
- package/dist/commonjs/hooks/registration.js.map +1 -0
- package/dist/commonjs/hooks/types.d.ts +76 -0
- package/dist/commonjs/hooks/types.d.ts.map +1 -0
- package/dist/commonjs/hooks/types.js +6 -0
- package/dist/commonjs/hooks/types.js.map +1 -0
- package/dist/commonjs/index.d.ts +6 -0
- package/dist/commonjs/index.d.ts.map +1 -0
- package/dist/commonjs/index.js +48 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/lib/base64.d.ts +10 -0
- package/dist/commonjs/lib/base64.d.ts.map +1 -0
- package/dist/commonjs/lib/base64.js +73 -0
- package/dist/commonjs/lib/base64.js.map +1 -0
- package/dist/commonjs/lib/config.d.ts +38 -0
- package/dist/commonjs/lib/config.d.ts.map +1 -0
- package/dist/commonjs/lib/config.js +35 -0
- package/dist/commonjs/lib/config.js.map +1 -0
- package/dist/commonjs/lib/dlv.d.ts +14 -0
- package/dist/commonjs/lib/dlv.d.ts.map +1 -0
- package/dist/commonjs/lib/dlv.js +49 -0
- package/dist/commonjs/lib/dlv.js.map +1 -0
- package/dist/commonjs/lib/encodings.d.ts +53 -0
- package/dist/commonjs/lib/encodings.d.ts.map +1 -0
- package/dist/commonjs/lib/encodings.js +384 -0
- package/dist/commonjs/lib/encodings.js.map +1 -0
- package/dist/commonjs/lib/files.d.ts +13 -0
- package/dist/commonjs/lib/files.d.ts.map +1 -0
- package/dist/commonjs/lib/files.js +77 -0
- package/dist/commonjs/lib/files.js.map +1 -0
- package/dist/commonjs/lib/http.d.ts +67 -0
- package/dist/commonjs/lib/http.d.ts.map +1 -0
- package/dist/commonjs/lib/http.js +217 -0
- package/dist/commonjs/lib/http.js.map +1 -0
- package/dist/commonjs/lib/is-plain-object.d.ts +2 -0
- package/dist/commonjs/lib/is-plain-object.d.ts.map +1 -0
- package/dist/commonjs/lib/is-plain-object.js +41 -0
- package/dist/commonjs/lib/is-plain-object.js.map +1 -0
- package/dist/commonjs/lib/logger.d.ts +6 -0
- package/dist/commonjs/lib/logger.d.ts.map +1 -0
- package/dist/commonjs/lib/logger.js +6 -0
- package/dist/commonjs/lib/logger.js.map +1 -0
- package/dist/commonjs/lib/matchers.d.ts +59 -0
- package/dist/commonjs/lib/matchers.d.ts.map +1 -0
- package/dist/commonjs/lib/matchers.js +222 -0
- package/dist/commonjs/lib/matchers.js.map +1 -0
- package/dist/commonjs/lib/primitives.d.ts +26 -0
- package/dist/commonjs/lib/primitives.d.ts.map +1 -0
- package/dist/commonjs/lib/primitives.js +111 -0
- package/dist/commonjs/lib/primitives.js.map +1 -0
- package/dist/commonjs/lib/retries.d.ts +38 -0
- package/dist/commonjs/lib/retries.d.ts.map +1 -0
- package/dist/commonjs/lib/retries.js +153 -0
- package/dist/commonjs/lib/retries.js.map +1 -0
- package/dist/commonjs/lib/schemas.d.ts +21 -0
- package/dist/commonjs/lib/schemas.d.ts.map +1 -0
- package/dist/commonjs/lib/schemas.js +95 -0
- package/dist/commonjs/lib/schemas.js.map +1 -0
- package/dist/commonjs/lib/sdks.d.ts +63 -0
- package/dist/commonjs/lib/sdks.d.ts.map +1 -0
- package/dist/commonjs/lib/sdks.js +269 -0
- package/dist/commonjs/lib/sdks.js.map +1 -0
- package/dist/commonjs/lib/security.d.ts +83 -0
- package/dist/commonjs/lib/security.d.ts.map +1 -0
- package/dist/commonjs/lib/security.js +143 -0
- package/dist/commonjs/lib/security.js.map +1 -0
- package/dist/commonjs/lib/url.d.ts +5 -0
- package/dist/commonjs/lib/url.d.ts.map +1 -0
- package/dist/commonjs/lib/url.js +25 -0
- package/dist/commonjs/lib/url.js.map +1 -0
- package/dist/commonjs/models/channel.d.ts +18 -0
- package/dist/commonjs/models/channel.d.ts.map +1 -0
- package/dist/commonjs/models/channel.js +54 -0
- package/dist/commonjs/models/channel.js.map +1 -0
- package/dist/commonjs/models/contact.d.ts +28 -0
- package/dist/commonjs/models/contact.d.ts.map +1 -0
- package/dist/commonjs/models/contact.js +58 -0
- package/dist/commonjs/models/contact.js.map +1 -0
- package/dist/commonjs/models/contactupdaterequest.d.ts +16 -0
- package/dist/commonjs/models/contactupdaterequest.d.ts.map +1 -0
- package/dist/commonjs/models/contactupdaterequest.js +49 -0
- package/dist/commonjs/models/contactupdaterequest.js.map +1 -0
- package/dist/commonjs/models/errors/error.d.ts +25 -0
- package/dist/commonjs/models/errors/error.d.ts.map +1 -0
- package/dist/commonjs/models/errors/error.js +70 -0
- package/dist/commonjs/models/errors/error.js.map +1 -0
- package/dist/commonjs/models/errors/httpclienterrors.d.ts +44 -0
- package/dist/commonjs/models/errors/httpclienterrors.d.ts.map +1 -0
- package/dist/commonjs/models/errors/httpclienterrors.js +78 -0
- package/dist/commonjs/models/errors/httpclienterrors.js.map +1 -0
- package/dist/commonjs/models/errors/index.d.ts +7 -0
- package/dist/commonjs/models/errors/index.d.ts.map +1 -0
- package/dist/commonjs/models/errors/index.js +26 -0
- package/dist/commonjs/models/errors/index.js.map +1 -0
- package/dist/commonjs/models/errors/responsevalidationerror.d.ts +26 -0
- package/dist/commonjs/models/errors/responsevalidationerror.d.ts.map +1 -0
- package/dist/commonjs/models/errors/responsevalidationerror.js +66 -0
- package/dist/commonjs/models/errors/responsevalidationerror.js.map +1 -0
- package/dist/commonjs/models/errors/sdkdefaulterror.d.ts +10 -0
- package/dist/commonjs/models/errors/sdkdefaulterror.d.ts.map +1 -0
- package/dist/commonjs/models/errors/sdkdefaulterror.js +34 -0
- package/dist/commonjs/models/errors/sdkdefaulterror.js.map +1 -0
- package/dist/commonjs/models/errors/sdkerror.d.ts +19 -0
- package/dist/commonjs/models/errors/sdkerror.d.ts.map +1 -0
- package/dist/commonjs/models/errors/sdkerror.js +20 -0
- package/dist/commonjs/models/errors/sdkerror.js.map +1 -0
- package/dist/commonjs/models/errors/sdkvalidationerror.d.ts +21 -0
- package/dist/commonjs/models/errors/sdkvalidationerror.d.ts.map +1 -0
- package/dist/commonjs/models/errors/sdkvalidationerror.js +82 -0
- package/dist/commonjs/models/errors/sdkvalidationerror.js.map +1 -0
- package/dist/commonjs/models/index.d.ts +20 -0
- package/dist/commonjs/models/index.d.ts.map +1 -0
- package/dist/commonjs/models/index.js +39 -0
- package/dist/commonjs/models/index.js.map +1 -0
- package/dist/commonjs/models/message.d.ts +45 -0
- package/dist/commonjs/models/message.d.ts.map +1 -0
- package/dist/commonjs/models/message.js +69 -0
- package/dist/commonjs/models/message.js.map +1 -0
- package/dist/commonjs/models/messagecontent.d.ts +164 -0
- package/dist/commonjs/models/messagecontent.d.ts.map +1 -0
- package/dist/commonjs/models/messagecontent.js +164 -0
- package/dist/commonjs/models/messagecontent.js.map +1 -0
- package/dist/commonjs/models/messagerequest.d.ts +55 -0
- package/dist/commonjs/models/messagerequest.d.ts.map +1 -0
- package/dist/commonjs/models/messagerequest.js +58 -0
- package/dist/commonjs/models/messagerequest.js.map +1 -0
- package/dist/commonjs/models/messageresponse.d.ts +11 -0
- package/dist/commonjs/models/messageresponse.d.ts.map +1 -0
- package/dist/commonjs/models/messageresponse.js +51 -0
- package/dist/commonjs/models/messageresponse.js.map +1 -0
- package/dist/commonjs/models/messagestatus.d.ts +16 -0
- package/dist/commonjs/models/messagestatus.d.ts.map +1 -0
- package/dist/commonjs/models/messagestatus.js +53 -0
- package/dist/commonjs/models/messagestatus.js.map +1 -0
- package/dist/commonjs/models/messagetype.d.ts +28 -0
- package/dist/commonjs/models/messagetype.d.ts.map +1 -0
- package/dist/commonjs/models/messagetype.js +62 -0
- package/dist/commonjs/models/messagetype.js.map +1 -0
- package/dist/commonjs/models/operations/deletesender.d.ts +12 -0
- package/dist/commonjs/models/operations/deletesender.d.ts.map +1 -0
- package/dist/commonjs/models/operations/deletesender.js +49 -0
- package/dist/commonjs/models/operations/deletesender.js.map +1 -0
- package/dist/commonjs/models/operations/deletetemplate.d.ts +12 -0
- package/dist/commonjs/models/operations/deletetemplate.d.ts.map +1 -0
- package/dist/commonjs/models/operations/deletetemplate.js +49 -0
- package/dist/commonjs/models/operations/deletetemplate.js.map +1 -0
- package/dist/commonjs/models/operations/getcontact.d.ts +12 -0
- package/dist/commonjs/models/operations/getcontact.d.ts.map +1 -0
- package/dist/commonjs/models/operations/getcontact.js +49 -0
- package/dist/commonjs/models/operations/getcontact.js.map +1 -0
- package/dist/commonjs/models/operations/getcontactbyphone.d.ts +15 -0
- package/dist/commonjs/models/operations/getcontactbyphone.d.ts.map +1 -0
- package/dist/commonjs/models/operations/getcontactbyphone.js +49 -0
- package/dist/commonjs/models/operations/getcontactbyphone.js.map +1 -0
- package/dist/commonjs/models/operations/getmessage.d.ts +12 -0
- package/dist/commonjs/models/operations/getmessage.d.ts.map +1 -0
- package/dist/commonjs/models/operations/getmessage.js +49 -0
- package/dist/commonjs/models/operations/getmessage.js.map +1 -0
- package/dist/commonjs/models/operations/getsender.d.ts +12 -0
- package/dist/commonjs/models/operations/getsender.d.ts.map +1 -0
- package/dist/commonjs/models/operations/getsender.js +49 -0
- package/dist/commonjs/models/operations/getsender.js.map +1 -0
- package/dist/commonjs/models/operations/gettemplate.d.ts +12 -0
- package/dist/commonjs/models/operations/gettemplate.d.ts.map +1 -0
- package/dist/commonjs/models/operations/gettemplate.js +49 -0
- package/dist/commonjs/models/operations/gettemplate.js.map +1 -0
- package/dist/commonjs/models/operations/index.d.ts +16 -0
- package/dist/commonjs/models/operations/index.d.ts.map +1 -0
- package/dist/commonjs/models/operations/index.js +35 -0
- package/dist/commonjs/models/operations/index.js.map +1 -0
- package/dist/commonjs/models/operations/listcontacts.d.ts +29 -0
- package/dist/commonjs/models/operations/listcontacts.d.ts.map +1 -0
- package/dist/commonjs/models/operations/listcontacts.js +63 -0
- package/dist/commonjs/models/operations/listcontacts.js.map +1 -0
- package/dist/commonjs/models/operations/listmessages.d.ts +36 -0
- package/dist/commonjs/models/operations/listmessages.d.ts.map +1 -0
- package/dist/commonjs/models/operations/listmessages.js +65 -0
- package/dist/commonjs/models/operations/listmessages.js.map +1 -0
- package/dist/commonjs/models/operations/listsenders.d.ts +14 -0
- package/dist/commonjs/models/operations/listsenders.d.ts.map +1 -0
- package/dist/commonjs/models/operations/listsenders.js +51 -0
- package/dist/commonjs/models/operations/listsenders.js.map +1 -0
- package/dist/commonjs/models/operations/listtemplates.d.ts +14 -0
- package/dist/commonjs/models/operations/listtemplates.d.ts.map +1 -0
- package/dist/commonjs/models/operations/listtemplates.js +51 -0
- package/dist/commonjs/models/operations/listtemplates.js.map +1 -0
- package/dist/commonjs/models/operations/sendmessage.d.ts +18 -0
- package/dist/commonjs/models/operations/sendmessage.d.ts.map +1 -0
- package/dist/commonjs/models/operations/sendmessage.js +56 -0
- package/dist/commonjs/models/operations/sendmessage.js.map +1 -0
- package/dist/commonjs/models/operations/sendreaction.d.ts +20 -0
- package/dist/commonjs/models/operations/sendreaction.d.ts.map +1 -0
- package/dist/commonjs/models/operations/sendreaction.js +57 -0
- package/dist/commonjs/models/operations/sendreaction.js.map +1 -0
- package/dist/commonjs/models/operations/updatecontact.d.ts +15 -0
- package/dist/commonjs/models/operations/updatecontact.d.ts.map +1 -0
- package/dist/commonjs/models/operations/updatecontact.js +51 -0
- package/dist/commonjs/models/operations/updatecontact.js.map +1 -0
- package/dist/commonjs/models/operations/updatesender.d.ts +15 -0
- package/dist/commonjs/models/operations/updatesender.d.ts.map +1 -0
- package/dist/commonjs/models/operations/updatesender.js +51 -0
- package/dist/commonjs/models/operations/updatesender.js.map +1 -0
- package/dist/commonjs/models/phoneintrospectionrequest.d.ts +12 -0
- package/dist/commonjs/models/phoneintrospectionrequest.d.ts.map +1 -0
- package/dist/commonjs/models/phoneintrospectionrequest.js +49 -0
- package/dist/commonjs/models/phoneintrospectionrequest.js.map +1 -0
- package/dist/commonjs/models/phoneintrospectionresponse.d.ts +16 -0
- package/dist/commonjs/models/phoneintrospectionresponse.d.ts.map +1 -0
- package/dist/commonjs/models/phoneintrospectionresponse.js +54 -0
- package/dist/commonjs/models/phoneintrospectionresponse.js.map +1 -0
- package/dist/commonjs/models/reactionrequest.d.ts +15 -0
- package/dist/commonjs/models/reactionrequest.d.ts.map +1 -0
- package/dist/commonjs/models/reactionrequest.js +49 -0
- package/dist/commonjs/models/reactionrequest.js.map +1 -0
- package/dist/commonjs/models/security.d.ts +12 -0
- package/dist/commonjs/models/security.d.ts.map +1 -0
- package/dist/commonjs/models/security.js +49 -0
- package/dist/commonjs/models/security.js.map +1 -0
- package/dist/commonjs/models/sender.d.ts +35 -0
- package/dist/commonjs/models/sender.d.ts.map +1 -0
- package/dist/commonjs/models/sender.js +66 -0
- package/dist/commonjs/models/sender.js.map +1 -0
- package/dist/commonjs/models/sendercreaterequest.d.ts +16 -0
- package/dist/commonjs/models/sendercreaterequest.d.ts.map +1 -0
- package/dist/commonjs/models/sendercreaterequest.js +51 -0
- package/dist/commonjs/models/sendercreaterequest.js.map +1 -0
- package/dist/commonjs/models/senderupdaterequest.d.ts +14 -0
- package/dist/commonjs/models/senderupdaterequest.d.ts.map +1 -0
- package/dist/commonjs/models/senderupdaterequest.js +50 -0
- package/dist/commonjs/models/senderupdaterequest.js.map +1 -0
- package/dist/commonjs/models/template.d.ts +43 -0
- package/dist/commonjs/models/template.d.ts.map +1 -0
- package/dist/commonjs/models/template.js +70 -0
- package/dist/commonjs/models/template.js.map +1 -0
- package/dist/commonjs/models/templatecreaterequest.d.ts +24 -0
- package/dist/commonjs/models/templatecreaterequest.d.ts.map +1 -0
- package/dist/commonjs/models/templatecreaterequest.js +54 -0
- package/dist/commonjs/models/templatecreaterequest.js.map +1 -0
- package/dist/commonjs/models/whatsappcategory.d.ts +19 -0
- package/dist/commonjs/models/whatsappcategory.d.ts.map +1 -0
- package/dist/commonjs/models/whatsappcategory.js +53 -0
- package/dist/commonjs/models/whatsappcategory.js.map +1 -0
- package/dist/commonjs/package.json +3 -0
- package/dist/commonjs/sdk/index.d.ts +2 -0
- package/dist/commonjs/sdk/index.d.ts.map +1 -0
- package/dist/commonjs/sdk/index.js +21 -0
- package/dist/commonjs/sdk/index.js.map +1 -0
- package/dist/commonjs/sdk/sdk.d.ts +105 -0
- package/dist/commonjs/sdk/sdk.d.ts.map +1 -0
- package/dist/commonjs/sdk/sdk.js +165 -0
- package/dist/commonjs/sdk/sdk.js.map +1 -0
- package/dist/commonjs/types/async.d.ts +23 -0
- package/dist/commonjs/types/async.d.ts.map +1 -0
- package/dist/commonjs/types/async.js +44 -0
- package/dist/commonjs/types/async.js.map +1 -0
- package/dist/commonjs/types/blobs.d.ts +4 -0
- package/dist/commonjs/types/blobs.d.ts.map +1 -0
- package/dist/commonjs/types/blobs.js +62 -0
- package/dist/commonjs/types/blobs.js.map +1 -0
- package/dist/commonjs/types/constdatetime.d.ts +3 -0
- package/dist/commonjs/types/constdatetime.d.ts.map +1 -0
- package/dist/commonjs/types/constdatetime.js +46 -0
- package/dist/commonjs/types/constdatetime.js.map +1 -0
- package/dist/commonjs/types/defaultToZeroValue.d.ts +12 -0
- package/dist/commonjs/types/defaultToZeroValue.d.ts.map +1 -0
- package/dist/commonjs/types/defaultToZeroValue.js +35 -0
- package/dist/commonjs/types/defaultToZeroValue.js.map +1 -0
- package/dist/commonjs/types/enums.d.ts +9 -0
- package/dist/commonjs/types/enums.d.ts.map +1 -0
- package/dist/commonjs/types/enums.js +66 -0
- package/dist/commonjs/types/enums.js.map +1 -0
- package/dist/commonjs/types/fp.d.ts +31 -0
- package/dist/commonjs/types/fp.d.ts.map +1 -0
- package/dist/commonjs/types/fp.js +37 -0
- package/dist/commonjs/types/fp.js.map +1 -0
- package/dist/commonjs/types/index.d.ts +10 -0
- package/dist/commonjs/types/index.d.ts.map +1 -0
- package/dist/commonjs/types/index.js +31 -0
- package/dist/commonjs/types/index.js.map +1 -0
- package/dist/commonjs/types/operations.d.ts +27 -0
- package/dist/commonjs/types/operations.d.ts.map +1 -0
- package/dist/commonjs/types/operations.js +83 -0
- package/dist/commonjs/types/operations.js.map +1 -0
- package/dist/commonjs/types/primitives.d.ts +11 -0
- package/dist/commonjs/types/primitives.d.ts.map +1 -0
- package/dist/commonjs/types/primitives.js +176 -0
- package/dist/commonjs/types/primitives.js.map +1 -0
- package/dist/commonjs/types/rfcdate.d.ts +21 -0
- package/dist/commonjs/types/rfcdate.d.ts.map +1 -0
- package/dist/commonjs/types/rfcdate.js +46 -0
- package/dist/commonjs/types/rfcdate.js.map +1 -0
- package/dist/commonjs/types/smartUnion.d.ts +7 -0
- package/dist/commonjs/types/smartUnion.d.ts.map +1 -0
- package/dist/commonjs/types/smartUnion.js +146 -0
- package/dist/commonjs/types/smartUnion.js.map +1 -0
- package/dist/commonjs/types/streams.d.ts +2 -0
- package/dist/commonjs/types/streams.d.ts.map +1 -0
- package/dist/commonjs/types/streams.js +18 -0
- package/dist/commonjs/types/streams.js.map +1 -0
- package/dist/commonjs/types/unrecognized.d.ts +16 -0
- package/dist/commonjs/types/unrecognized.d.ts.map +1 -0
- package/dist/commonjs/types/unrecognized.js +34 -0
- package/dist/commonjs/types/unrecognized.js.map +1 -0
- package/dist/esm/core.d.ts +10 -0
- package/dist/esm/core.d.ts.map +1 -0
- package/dist/esm/core.js +13 -0
- package/dist/esm/core.js.map +1 -0
- package/dist/esm/funcs/createSender.d.ts +15 -0
- package/dist/esm/funcs/createSender.d.ts.map +1 -0
- package/dist/esm/funcs/createSender.js +80 -0
- package/dist/esm/funcs/createSender.js.map +1 -0
- package/dist/esm/funcs/createTemplate.d.ts +18 -0
- package/dist/esm/funcs/createTemplate.d.ts.map +1 -0
- package/dist/esm/funcs/createTemplate.js +83 -0
- package/dist/esm/funcs/createTemplate.js.map +1 -0
- package/dist/esm/funcs/deleteSender.d.ts +15 -0
- package/dist/esm/funcs/deleteSender.d.ts.map +1 -0
- package/dist/esm/funcs/deleteSender.js +85 -0
- package/dist/esm/funcs/deleteSender.js.map +1 -0
- package/dist/esm/funcs/deleteTemplate.d.ts +15 -0
- package/dist/esm/funcs/deleteTemplate.d.ts.map +1 -0
- package/dist/esm/funcs/deleteTemplate.js +85 -0
- package/dist/esm/funcs/deleteTemplate.js.map +1 -0
- package/dist/esm/funcs/getContact.d.ts +16 -0
- package/dist/esm/funcs/getContact.d.ts.map +1 -0
- package/dist/esm/funcs/getContact.js +86 -0
- package/dist/esm/funcs/getContact.js.map +1 -0
- package/dist/esm/funcs/getContactByPhone.d.ts +16 -0
- package/dist/esm/funcs/getContactByPhone.d.ts.map +1 -0
- package/dist/esm/funcs/getContactByPhone.js +86 -0
- package/dist/esm/funcs/getContactByPhone.js.map +1 -0
- package/dist/esm/funcs/getMessage.d.ts +16 -0
- package/dist/esm/funcs/getMessage.d.ts.map +1 -0
- package/dist/esm/funcs/getMessage.js +86 -0
- package/dist/esm/funcs/getMessage.js.map +1 -0
- package/dist/esm/funcs/getSender.d.ts +16 -0
- package/dist/esm/funcs/getSender.d.ts.map +1 -0
- package/dist/esm/funcs/getSender.js +86 -0
- package/dist/esm/funcs/getSender.js.map +1 -0
- package/dist/esm/funcs/getTemplate.d.ts +16 -0
- package/dist/esm/funcs/getTemplate.d.ts.map +1 -0
- package/dist/esm/funcs/getTemplate.js +86 -0
- package/dist/esm/funcs/getTemplate.js.map +1 -0
- package/dist/esm/funcs/introspectPhone.d.ts +18 -0
- package/dist/esm/funcs/introspectPhone.d.ts.map +1 -0
- package/dist/esm/funcs/introspectPhone.js +83 -0
- package/dist/esm/funcs/introspectPhone.js.map +1 -0
- package/dist/esm/funcs/listContacts.d.ts +15 -0
- package/dist/esm/funcs/listContacts.d.ts.map +1 -0
- package/dist/esm/funcs/listContacts.js +85 -0
- package/dist/esm/funcs/listContacts.js.map +1 -0
- package/dist/esm/funcs/listMessages.d.ts +18 -0
- package/dist/esm/funcs/listMessages.d.ts.map +1 -0
- package/dist/esm/funcs/listMessages.js +90 -0
- package/dist/esm/funcs/listMessages.js.map +1 -0
- package/dist/esm/funcs/listSenders.d.ts +15 -0
- package/dist/esm/funcs/listSenders.d.ts.map +1 -0
- package/dist/esm/funcs/listSenders.js +69 -0
- package/dist/esm/funcs/listSenders.js.map +1 -0
- package/dist/esm/funcs/listTemplates.d.ts +18 -0
- package/dist/esm/funcs/listTemplates.d.ts.map +1 -0
- package/dist/esm/funcs/listTemplates.js +72 -0
- package/dist/esm/funcs/listTemplates.js.map +1 -0
- package/dist/esm/funcs/sendMessage.d.ts +28 -0
- package/dist/esm/funcs/sendMessage.d.ts.map +1 -0
- package/dist/esm/funcs/sendMessage.js +97 -0
- package/dist/esm/funcs/sendMessage.js.map +1 -0
- package/dist/esm/funcs/sendReaction.d.ts +19 -0
- package/dist/esm/funcs/sendReaction.d.ts.map +1 -0
- package/dist/esm/funcs/sendReaction.js +94 -0
- package/dist/esm/funcs/sendReaction.js.map +1 -0
- package/dist/esm/funcs/updateContact.d.ts +16 -0
- package/dist/esm/funcs/updateContact.d.ts.map +1 -0
- package/dist/esm/funcs/updateContact.js +87 -0
- package/dist/esm/funcs/updateContact.js.map +1 -0
- package/dist/esm/funcs/updateSender.d.ts +16 -0
- package/dist/esm/funcs/updateSender.d.ts.map +1 -0
- package/dist/esm/funcs/updateSender.js +87 -0
- package/dist/esm/funcs/updateSender.js.map +1 -0
- package/dist/esm/hooks/hooks.d.ts +25 -0
- package/dist/esm/hooks/hooks.d.ts.map +1 -0
- package/dist/esm/hooks/hooks.js +82 -0
- package/dist/esm/hooks/hooks.js.map +1 -0
- package/dist/esm/hooks/index.d.ts +3 -0
- package/dist/esm/hooks/index.d.ts.map +1 -0
- package/dist/esm/hooks/index.js +6 -0
- package/dist/esm/hooks/index.js.map +1 -0
- package/dist/esm/hooks/registration.d.ts +3 -0
- package/dist/esm/hooks/registration.d.ts.map +1 -0
- package/dist/esm/hooks/registration.js +12 -0
- package/dist/esm/hooks/registration.js.map +1 -0
- package/dist/esm/hooks/types.d.ts +76 -0
- package/dist/esm/hooks/types.d.ts.map +1 -0
- package/dist/esm/hooks/types.js +5 -0
- package/dist/esm/hooks/types.js.map +1 -0
- package/dist/esm/index.d.ts +6 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/base64.d.ts +10 -0
- package/dist/esm/lib/base64.d.ts.map +1 -0
- package/dist/esm/lib/base64.js +31 -0
- package/dist/esm/lib/base64.js.map +1 -0
- package/dist/esm/lib/config.d.ts +38 -0
- package/dist/esm/lib/config.d.ts.map +1 -0
- package/dist/esm/lib/config.js +31 -0
- package/dist/esm/lib/config.js.map +1 -0
- package/dist/esm/lib/dlv.d.ts +14 -0
- package/dist/esm/lib/dlv.d.ts.map +1 -0
- package/dist/esm/lib/dlv.js +46 -0
- package/dist/esm/lib/dlv.js.map +1 -0
- package/dist/esm/lib/encodings.d.ts +53 -0
- package/dist/esm/lib/encodings.d.ts.map +1 -0
- package/dist/esm/lib/encodings.js +370 -0
- package/dist/esm/lib/encodings.js.map +1 -0
- package/dist/esm/lib/files.d.ts +13 -0
- package/dist/esm/lib/files.d.ts.map +1 -0
- package/dist/esm/lib/files.js +73 -0
- package/dist/esm/lib/files.js.map +1 -0
- package/dist/esm/lib/http.d.ts +67 -0
- package/dist/esm/lib/http.d.ts.map +1 -0
- package/dist/esm/lib/http.js +207 -0
- package/dist/esm/lib/http.js.map +1 -0
- package/dist/esm/lib/is-plain-object.d.ts +2 -0
- package/dist/esm/lib/is-plain-object.d.ts.map +1 -0
- package/dist/esm/lib/is-plain-object.js +38 -0
- package/dist/esm/lib/is-plain-object.js.map +1 -0
- package/dist/esm/lib/logger.d.ts +6 -0
- package/dist/esm/lib/logger.d.ts.map +1 -0
- package/dist/esm/lib/logger.js +5 -0
- package/dist/esm/lib/logger.js.map +1 -0
- package/dist/esm/lib/matchers.d.ts +59 -0
- package/dist/esm/lib/matchers.d.ts.map +1 -0
- package/dist/esm/lib/matchers.js +203 -0
- package/dist/esm/lib/matchers.js.map +1 -0
- package/dist/esm/lib/primitives.d.ts +26 -0
- package/dist/esm/lib/primitives.d.ts.map +1 -0
- package/dist/esm/lib/primitives.js +103 -0
- package/dist/esm/lib/primitives.js.map +1 -0
- package/dist/esm/lib/retries.d.ts +38 -0
- package/dist/esm/lib/retries.d.ts.map +1 -0
- package/dist/esm/lib/retries.js +147 -0
- package/dist/esm/lib/retries.js.map +1 -0
- package/dist/esm/lib/schemas.d.ts +21 -0
- package/dist/esm/lib/schemas.d.ts.map +1 -0
- package/dist/esm/lib/schemas.js +57 -0
- package/dist/esm/lib/schemas.js.map +1 -0
- package/dist/esm/lib/sdks.d.ts +63 -0
- package/dist/esm/lib/sdks.d.ts.map +1 -0
- package/dist/esm/lib/sdks.js +265 -0
- package/dist/esm/lib/sdks.js.map +1 -0
- package/dist/esm/lib/security.d.ts +83 -0
- package/dist/esm/lib/security.d.ts.map +1 -0
- package/dist/esm/lib/security.js +136 -0
- package/dist/esm/lib/security.js.map +1 -0
- package/dist/esm/lib/url.d.ts +5 -0
- package/dist/esm/lib/url.d.ts.map +1 -0
- package/dist/esm/lib/url.js +22 -0
- package/dist/esm/lib/url.js.map +1 -0
- package/dist/esm/models/channel.d.ts +18 -0
- package/dist/esm/models/channel.d.ts.map +1 -0
- package/dist/esm/models/channel.js +18 -0
- package/dist/esm/models/channel.js.map +1 -0
- package/dist/esm/models/contact.d.ts +28 -0
- package/dist/esm/models/contact.d.ts.map +1 -0
- package/dist/esm/models/contact.js +21 -0
- package/dist/esm/models/contact.js.map +1 -0
- package/dist/esm/models/contactupdaterequest.d.ts +16 -0
- package/dist/esm/models/contactupdaterequest.d.ts.map +1 -0
- package/dist/esm/models/contactupdaterequest.js +12 -0
- package/dist/esm/models/contactupdaterequest.js.map +1 -0
- package/dist/esm/models/errors/error.d.ts +25 -0
- package/dist/esm/models/errors/error.d.ts.map +1 -0
- package/dist/esm/models/errors/error.js +33 -0
- package/dist/esm/models/errors/error.js.map +1 -0
- package/dist/esm/models/errors/httpclienterrors.d.ts +44 -0
- package/dist/esm/models/errors/httpclienterrors.d.ts.map +1 -0
- package/dist/esm/models/errors/httpclienterrors.js +69 -0
- package/dist/esm/models/errors/httpclienterrors.js.map +1 -0
- package/dist/esm/models/errors/index.d.ts +7 -0
- package/dist/esm/models/errors/index.d.ts.map +1 -0
- package/dist/esm/models/errors/index.js +10 -0
- package/dist/esm/models/errors/index.js.map +1 -0
- package/dist/esm/models/errors/responsevalidationerror.d.ts +26 -0
- package/dist/esm/models/errors/responsevalidationerror.d.ts.map +1 -0
- package/dist/esm/models/errors/responsevalidationerror.js +29 -0
- package/dist/esm/models/errors/responsevalidationerror.js.map +1 -0
- package/dist/esm/models/errors/sdkdefaulterror.d.ts +10 -0
- package/dist/esm/models/errors/sdkdefaulterror.d.ts.map +1 -0
- package/dist/esm/models/errors/sdkdefaulterror.js +30 -0
- package/dist/esm/models/errors/sdkdefaulterror.js.map +1 -0
- package/dist/esm/models/errors/sdkerror.d.ts +19 -0
- package/dist/esm/models/errors/sdkerror.d.ts.map +1 -0
- package/dist/esm/models/errors/sdkerror.js +16 -0
- package/dist/esm/models/errors/sdkerror.js.map +1 -0
- package/dist/esm/models/errors/sdkvalidationerror.d.ts +21 -0
- package/dist/esm/models/errors/sdkvalidationerror.d.ts.map +1 -0
- package/dist/esm/models/errors/sdkvalidationerror.js +44 -0
- package/dist/esm/models/errors/sdkvalidationerror.js.map +1 -0
- package/dist/esm/models/index.d.ts +20 -0
- package/dist/esm/models/index.d.ts.map +1 -0
- package/dist/esm/models/index.js +23 -0
- package/dist/esm/models/index.js.map +1 -0
- package/dist/esm/models/message.d.ts +45 -0
- package/dist/esm/models/message.d.ts.map +1 -0
- package/dist/esm/models/message.js +32 -0
- package/dist/esm/models/message.js.map +1 -0
- package/dist/esm/models/messagecontent.d.ts +164 -0
- package/dist/esm/models/messagecontent.d.ts.map +1 -0
- package/dist/esm/models/messagecontent.js +118 -0
- package/dist/esm/models/messagecontent.js.map +1 -0
- package/dist/esm/models/messagerequest.d.ts +55 -0
- package/dist/esm/models/messagerequest.d.ts.map +1 -0
- package/dist/esm/models/messagerequest.js +21 -0
- package/dist/esm/models/messagerequest.js.map +1 -0
- package/dist/esm/models/messageresponse.d.ts +11 -0
- package/dist/esm/models/messageresponse.d.ts.map +1 -0
- package/dist/esm/models/messageresponse.js +14 -0
- package/dist/esm/models/messageresponse.js.map +1 -0
- package/dist/esm/models/messagestatus.d.ts +16 -0
- package/dist/esm/models/messagestatus.d.ts.map +1 -0
- package/dist/esm/models/messagestatus.js +17 -0
- package/dist/esm/models/messagestatus.js.map +1 -0
- package/dist/esm/models/messagetype.d.ts +28 -0
- package/dist/esm/models/messagetype.d.ts.map +1 -0
- package/dist/esm/models/messagetype.js +26 -0
- package/dist/esm/models/messagetype.js.map +1 -0
- package/dist/esm/models/operations/deletesender.d.ts +12 -0
- package/dist/esm/models/operations/deletesender.d.ts.map +1 -0
- package/dist/esm/models/operations/deletesender.js +12 -0
- package/dist/esm/models/operations/deletesender.js.map +1 -0
- package/dist/esm/models/operations/deletetemplate.d.ts +12 -0
- package/dist/esm/models/operations/deletetemplate.d.ts.map +1 -0
- package/dist/esm/models/operations/deletetemplate.js +12 -0
- package/dist/esm/models/operations/deletetemplate.js.map +1 -0
- package/dist/esm/models/operations/getcontact.d.ts +12 -0
- package/dist/esm/models/operations/getcontact.d.ts.map +1 -0
- package/dist/esm/models/operations/getcontact.js +12 -0
- package/dist/esm/models/operations/getcontact.js.map +1 -0
- package/dist/esm/models/operations/getcontactbyphone.d.ts +15 -0
- package/dist/esm/models/operations/getcontactbyphone.d.ts.map +1 -0
- package/dist/esm/models/operations/getcontactbyphone.js +12 -0
- package/dist/esm/models/operations/getcontactbyphone.js.map +1 -0
- package/dist/esm/models/operations/getmessage.d.ts +12 -0
- package/dist/esm/models/operations/getmessage.d.ts.map +1 -0
- package/dist/esm/models/operations/getmessage.js +12 -0
- package/dist/esm/models/operations/getmessage.js.map +1 -0
- package/dist/esm/models/operations/getsender.d.ts +12 -0
- package/dist/esm/models/operations/getsender.d.ts.map +1 -0
- package/dist/esm/models/operations/getsender.js +12 -0
- package/dist/esm/models/operations/getsender.js.map +1 -0
- package/dist/esm/models/operations/gettemplate.d.ts +12 -0
- package/dist/esm/models/operations/gettemplate.d.ts.map +1 -0
- package/dist/esm/models/operations/gettemplate.js +12 -0
- package/dist/esm/models/operations/gettemplate.js.map +1 -0
- package/dist/esm/models/operations/index.d.ts +16 -0
- package/dist/esm/models/operations/index.d.ts.map +1 -0
- package/dist/esm/models/operations/index.js +19 -0
- package/dist/esm/models/operations/index.js.map +1 -0
- package/dist/esm/models/operations/listcontacts.d.ts +29 -0
- package/dist/esm/models/operations/listcontacts.d.ts.map +1 -0
- package/dist/esm/models/operations/listcontacts.js +25 -0
- package/dist/esm/models/operations/listcontacts.js.map +1 -0
- package/dist/esm/models/operations/listmessages.d.ts +36 -0
- package/dist/esm/models/operations/listmessages.d.ts.map +1 -0
- package/dist/esm/models/operations/listmessages.js +27 -0
- package/dist/esm/models/operations/listmessages.js.map +1 -0
- package/dist/esm/models/operations/listsenders.d.ts +14 -0
- package/dist/esm/models/operations/listsenders.d.ts.map +1 -0
- package/dist/esm/models/operations/listsenders.js +14 -0
- package/dist/esm/models/operations/listsenders.js.map +1 -0
- package/dist/esm/models/operations/listtemplates.d.ts +14 -0
- package/dist/esm/models/operations/listtemplates.d.ts.map +1 -0
- package/dist/esm/models/operations/listtemplates.js +14 -0
- package/dist/esm/models/operations/listtemplates.js.map +1 -0
- package/dist/esm/models/operations/sendmessage.d.ts +18 -0
- package/dist/esm/models/operations/sendmessage.d.ts.map +1 -0
- package/dist/esm/models/operations/sendmessage.js +19 -0
- package/dist/esm/models/operations/sendmessage.js.map +1 -0
- package/dist/esm/models/operations/sendreaction.d.ts +20 -0
- package/dist/esm/models/operations/sendreaction.d.ts.map +1 -0
- package/dist/esm/models/operations/sendreaction.js +20 -0
- package/dist/esm/models/operations/sendreaction.js.map +1 -0
- package/dist/esm/models/operations/updatecontact.d.ts +15 -0
- package/dist/esm/models/operations/updatecontact.d.ts.map +1 -0
- package/dist/esm/models/operations/updatecontact.js +14 -0
- package/dist/esm/models/operations/updatecontact.js.map +1 -0
- package/dist/esm/models/operations/updatesender.d.ts +15 -0
- package/dist/esm/models/operations/updatesender.d.ts.map +1 -0
- package/dist/esm/models/operations/updatesender.js +14 -0
- package/dist/esm/models/operations/updatesender.js.map +1 -0
- package/dist/esm/models/phoneintrospectionrequest.d.ts +12 -0
- package/dist/esm/models/phoneintrospectionrequest.d.ts.map +1 -0
- package/dist/esm/models/phoneintrospectionrequest.js +12 -0
- package/dist/esm/models/phoneintrospectionrequest.js.map +1 -0
- package/dist/esm/models/phoneintrospectionresponse.d.ts +16 -0
- package/dist/esm/models/phoneintrospectionresponse.d.ts.map +1 -0
- package/dist/esm/models/phoneintrospectionresponse.js +17 -0
- package/dist/esm/models/phoneintrospectionresponse.js.map +1 -0
- package/dist/esm/models/reactionrequest.d.ts +15 -0
- package/dist/esm/models/reactionrequest.d.ts.map +1 -0
- package/dist/esm/models/reactionrequest.js +12 -0
- package/dist/esm/models/reactionrequest.js.map +1 -0
- package/dist/esm/models/security.d.ts +12 -0
- package/dist/esm/models/security.d.ts.map +1 -0
- package/dist/esm/models/security.js +12 -0
- package/dist/esm/models/security.js.map +1 -0
- package/dist/esm/models/sender.d.ts +35 -0
- package/dist/esm/models/sender.d.ts.map +1 -0
- package/dist/esm/models/sender.js +28 -0
- package/dist/esm/models/sender.js.map +1 -0
- package/dist/esm/models/sendercreaterequest.d.ts +16 -0
- package/dist/esm/models/sendercreaterequest.d.ts.map +1 -0
- package/dist/esm/models/sendercreaterequest.js +14 -0
- package/dist/esm/models/sendercreaterequest.js.map +1 -0
- package/dist/esm/models/senderupdaterequest.d.ts +14 -0
- package/dist/esm/models/senderupdaterequest.d.ts.map +1 -0
- package/dist/esm/models/senderupdaterequest.js +13 -0
- package/dist/esm/models/senderupdaterequest.js.map +1 -0
- package/dist/esm/models/template.d.ts +43 -0
- package/dist/esm/models/template.d.ts.map +1 -0
- package/dist/esm/models/template.js +33 -0
- package/dist/esm/models/template.js.map +1 -0
- package/dist/esm/models/templatecreaterequest.d.ts +24 -0
- package/dist/esm/models/templatecreaterequest.d.ts.map +1 -0
- package/dist/esm/models/templatecreaterequest.js +17 -0
- package/dist/esm/models/templatecreaterequest.js.map +1 -0
- package/dist/esm/models/whatsappcategory.d.ts +19 -0
- package/dist/esm/models/whatsappcategory.d.ts.map +1 -0
- package/dist/esm/models/whatsappcategory.js +17 -0
- package/dist/esm/models/whatsappcategory.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/sdk/index.d.ts +2 -0
- package/dist/esm/sdk/index.d.ts.map +1 -0
- package/dist/esm/sdk/index.js +5 -0
- package/dist/esm/sdk/index.js.map +1 -0
- package/dist/esm/sdk/sdk.d.ts +105 -0
- package/dist/esm/sdk/sdk.d.ts.map +1 -0
- package/dist/esm/sdk/sdk.js +161 -0
- package/dist/esm/sdk/sdk.js.map +1 -0
- package/dist/esm/types/async.d.ts +23 -0
- package/dist/esm/types/async.d.ts.map +1 -0
- package/dist/esm/types/async.js +40 -0
- package/dist/esm/types/async.js.map +1 -0
- package/dist/esm/types/blobs.d.ts +4 -0
- package/dist/esm/types/blobs.d.ts.map +1 -0
- package/dist/esm/types/blobs.js +25 -0
- package/dist/esm/types/blobs.js.map +1 -0
- package/dist/esm/types/constdatetime.d.ts +3 -0
- package/dist/esm/types/constdatetime.d.ts.map +1 -0
- package/dist/esm/types/constdatetime.js +10 -0
- package/dist/esm/types/constdatetime.js.map +1 -0
- package/dist/esm/types/defaultToZeroValue.d.ts +12 -0
- package/dist/esm/types/defaultToZeroValue.d.ts.map +1 -0
- package/dist/esm/types/defaultToZeroValue.js +31 -0
- package/dist/esm/types/defaultToZeroValue.js.map +1 -0
- package/dist/esm/types/enums.d.ts +9 -0
- package/dist/esm/types/enums.d.ts.map +1 -0
- package/dist/esm/types/enums.js +27 -0
- package/dist/esm/types/enums.js.map +1 -0
- package/dist/esm/types/fp.d.ts +31 -0
- package/dist/esm/types/fp.d.ts.map +1 -0
- package/dist/esm/types/fp.js +31 -0
- package/dist/esm/types/fp.js.map +1 -0
- package/dist/esm/types/index.d.ts +10 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +10 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/operations.d.ts +27 -0
- package/dist/esm/types/operations.d.ts.map +1 -0
- package/dist/esm/types/operations.js +77 -0
- package/dist/esm/types/operations.js.map +1 -0
- package/dist/esm/types/primitives.d.ts +11 -0
- package/dist/esm/types/primitives.d.ts.map +1 -0
- package/dist/esm/types/primitives.js +132 -0
- package/dist/esm/types/primitives.js.map +1 -0
- package/dist/esm/types/rfcdate.d.ts +21 -0
- package/dist/esm/types/rfcdate.d.ts.map +1 -0
- package/dist/esm/types/rfcdate.js +42 -0
- package/dist/esm/types/rfcdate.js.map +1 -0
- package/dist/esm/types/smartUnion.d.ts +7 -0
- package/dist/esm/types/smartUnion.d.ts.map +1 -0
- package/dist/esm/types/smartUnion.js +110 -0
- package/dist/esm/types/smartUnion.js.map +1 -0
- package/dist/esm/types/streams.d.ts +2 -0
- package/dist/esm/types/streams.d.ts.map +1 -0
- package/dist/esm/types/streams.js +15 -0
- package/dist/esm/types/streams.js.map +1 -0
- package/dist/esm/types/unrecognized.d.ts +16 -0
- package/dist/esm/types/unrecognized.d.ts.map +1 -0
- package/dist/esm/types/unrecognized.js +31 -0
- package/dist/esm/types/unrecognized.js.map +1 -0
- package/examples/node_modules/.package-lock.json +174 -0
- package/examples/node_modules/@esbuild/darwin-arm64/package.json +20 -0
- package/examples/node_modules/@types/node/assert/strict.d.ts +8 -0
- package/examples/node_modules/@types/node/assert.d.ts +1062 -0
- package/examples/node_modules/@types/node/async_hooks.d.ts +605 -0
- package/examples/node_modules/@types/node/buffer.buffer.d.ts +471 -0
- package/examples/node_modules/@types/node/buffer.d.ts +1936 -0
- package/examples/node_modules/@types/node/child_process.d.ts +1475 -0
- package/examples/node_modules/@types/node/cluster.d.ts +577 -0
- package/examples/node_modules/@types/node/compatibility/disposable.d.ts +16 -0
- package/examples/node_modules/@types/node/compatibility/index.d.ts +9 -0
- package/examples/node_modules/@types/node/compatibility/indexable.d.ts +20 -0
- package/examples/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
- package/examples/node_modules/@types/node/console.d.ts +452 -0
- package/examples/node_modules/@types/node/constants.d.ts +21 -0
- package/examples/node_modules/@types/node/crypto.d.ts +4590 -0
- package/examples/node_modules/@types/node/dgram.d.ts +597 -0
- package/examples/node_modules/@types/node/diagnostics_channel.d.ts +578 -0
- package/examples/node_modules/@types/node/dns/promises.d.ts +479 -0
- package/examples/node_modules/@types/node/dns.d.ts +871 -0
- package/examples/node_modules/@types/node/domain.d.ts +170 -0
- package/examples/node_modules/@types/node/events.d.ts +977 -0
- package/examples/node_modules/@types/node/fs/promises.d.ts +1270 -0
- package/examples/node_modules/@types/node/fs.d.ts +4375 -0
- package/examples/node_modules/@types/node/globals.d.ts +172 -0
- package/examples/node_modules/@types/node/globals.typedarray.d.ts +38 -0
- package/examples/node_modules/@types/node/http.d.ts +2049 -0
- package/examples/node_modules/@types/node/http2.d.ts +2631 -0
- package/examples/node_modules/@types/node/https.d.ts +578 -0
- package/examples/node_modules/@types/node/index.d.ts +93 -0
- package/examples/node_modules/@types/node/inspector.generated.d.ts +3966 -0
- package/examples/node_modules/@types/node/module.d.ts +539 -0
- package/examples/node_modules/@types/node/net.d.ts +1012 -0
- package/examples/node_modules/@types/node/os.d.ts +506 -0
- package/examples/node_modules/@types/node/package.json +140 -0
- package/examples/node_modules/@types/node/path.d.ts +200 -0
- package/examples/node_modules/@types/node/perf_hooks.d.ts +961 -0
- package/examples/node_modules/@types/node/process.d.ts +1952 -0
- package/examples/node_modules/@types/node/punycode.d.ts +117 -0
- package/examples/node_modules/@types/node/querystring.d.ts +152 -0
- package/examples/node_modules/@types/node/readline/promises.d.ts +162 -0
- package/examples/node_modules/@types/node/readline.d.ts +589 -0
- package/examples/node_modules/@types/node/repl.d.ts +430 -0
- package/examples/node_modules/@types/node/sea.d.ts +153 -0
- package/examples/node_modules/@types/node/stream/consumers.d.ts +38 -0
- package/examples/node_modules/@types/node/stream/promises.d.ts +90 -0
- package/examples/node_modules/@types/node/stream/web.d.ts +533 -0
- package/examples/node_modules/@types/node/stream.d.ts +1675 -0
- package/examples/node_modules/@types/node/string_decoder.d.ts +67 -0
- package/examples/node_modules/@types/node/test.d.ts +1787 -0
- package/examples/node_modules/@types/node/timers/promises.d.ts +108 -0
- package/examples/node_modules/@types/node/timers.d.ts +286 -0
- package/examples/node_modules/@types/node/tls.d.ts +1255 -0
- package/examples/node_modules/@types/node/trace_events.d.ts +197 -0
- package/examples/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +468 -0
- package/examples/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +34 -0
- package/examples/node_modules/@types/node/ts5.6/index.d.ts +93 -0
- package/examples/node_modules/@types/node/tty.d.ts +208 -0
- package/examples/node_modules/@types/node/url.d.ts +964 -0
- package/examples/node_modules/@types/node/util.d.ts +2331 -0
- package/examples/node_modules/@types/node/v8.d.ts +809 -0
- package/examples/node_modules/@types/node/vm.d.ts +1001 -0
- package/examples/node_modules/@types/node/wasi.d.ts +181 -0
- package/examples/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
- package/examples/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
- package/examples/node_modules/@types/node/web-globals/events.d.ts +97 -0
- package/examples/node_modules/@types/node/web-globals/fetch.d.ts +46 -0
- package/examples/node_modules/@types/node/worker_threads.d.ts +715 -0
- package/examples/node_modules/@types/node/zlib.d.ts +540 -0
- package/examples/node_modules/dotenv/config.d.ts +1 -0
- package/examples/node_modules/dotenv/config.js +9 -0
- package/examples/node_modules/dotenv/lib/cli-options.js +17 -0
- package/examples/node_modules/dotenv/lib/env-options.js +28 -0
- package/examples/node_modules/dotenv/lib/main.d.ts +162 -0
- package/examples/node_modules/dotenv/lib/main.js +386 -0
- package/examples/node_modules/dotenv/package.json +62 -0
- package/examples/node_modules/esbuild/install.js +289 -0
- package/examples/node_modules/esbuild/lib/main.d.ts +716 -0
- package/examples/node_modules/esbuild/lib/main.js +2242 -0
- package/examples/node_modules/esbuild/package.json +49 -0
- package/examples/node_modules/fsevents/fsevents.d.ts +46 -0
- package/examples/node_modules/fsevents/fsevents.js +83 -0
- package/examples/node_modules/fsevents/package.json +62 -0
- package/examples/node_modules/get-tsconfig/dist/index.mjs +7 -0
- package/examples/node_modules/get-tsconfig/package.json +46 -0
- package/examples/node_modules/resolve-pkg-maps/dist/index.mjs +1 -0
- package/examples/node_modules/resolve-pkg-maps/package.json +42 -0
- package/examples/node_modules/tsx/dist/cjs/api/index.mjs +1 -0
- package/examples/node_modules/tsx/dist/cjs/index.mjs +1 -0
- package/examples/node_modules/tsx/dist/cli.mjs +55 -0
- package/examples/node_modules/tsx/dist/client-BQVF1NaW.mjs +1 -0
- package/examples/node_modules/tsx/dist/esm/api/index.mjs +1 -0
- package/examples/node_modules/tsx/dist/esm/index.mjs +2 -0
- package/examples/node_modules/tsx/dist/get-pipe-path-BHW2eJdv.mjs +1 -0
- package/examples/node_modules/tsx/dist/index-7AaEi15b.mjs +14 -0
- package/examples/node_modules/tsx/dist/index-gbaejti9.mjs +1 -0
- package/examples/node_modules/tsx/dist/lexer-DQCqS3nf.mjs +3 -0
- package/examples/node_modules/tsx/dist/loader.mjs +1 -0
- package/examples/node_modules/tsx/dist/node-features-_8ZFwP_x.mjs +1 -0
- package/examples/node_modules/tsx/dist/package-CeBgXWuR.mjs +1 -0
- package/examples/node_modules/tsx/dist/patch-repl.mjs +1 -0
- package/examples/node_modules/tsx/dist/preflight.mjs +1 -0
- package/examples/node_modules/tsx/dist/register-B7jrtLTO.mjs +1 -0
- package/examples/node_modules/tsx/dist/register-CFH5oNdT.mjs +4 -0
- package/examples/node_modules/tsx/dist/repl.mjs +3 -0
- package/examples/node_modules/tsx/dist/require-DQxpCAr4.mjs +1 -0
- package/examples/node_modules/tsx/dist/suppress-warnings.mjs +1 -0
- package/examples/node_modules/tsx/dist/temporary-directory-CwHp0_NW.mjs +1 -0
- package/examples/node_modules/tsx/dist/types-Cxp8y2TL.d.ts +5 -0
- package/examples/node_modules/tsx/package.json +68 -0
- package/examples/node_modules/undici-types/agent.d.ts +31 -0
- package/examples/node_modules/undici-types/api.d.ts +43 -0
- package/examples/node_modules/undici-types/balanced-pool.d.ts +29 -0
- package/examples/node_modules/undici-types/cache.d.ts +36 -0
- package/examples/node_modules/undici-types/client.d.ts +108 -0
- package/examples/node_modules/undici-types/connector.d.ts +34 -0
- package/examples/node_modules/undici-types/content-type.d.ts +21 -0
- package/examples/node_modules/undici-types/cookies.d.ts +28 -0
- package/examples/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
- package/examples/node_modules/undici-types/dispatcher.d.ts +256 -0
- package/examples/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
- package/examples/node_modules/undici-types/errors.d.ts +149 -0
- package/examples/node_modules/undici-types/eventsource.d.ts +61 -0
- package/examples/node_modules/undici-types/fetch.d.ts +209 -0
- package/examples/node_modules/undici-types/file.d.ts +39 -0
- package/examples/node_modules/undici-types/filereader.d.ts +54 -0
- package/examples/node_modules/undici-types/formdata.d.ts +108 -0
- package/examples/node_modules/undici-types/global-dispatcher.d.ts +9 -0
- package/examples/node_modules/undici-types/global-origin.d.ts +7 -0
- package/examples/node_modules/undici-types/handlers.d.ts +15 -0
- package/examples/node_modules/undici-types/header.d.ts +4 -0
- package/examples/node_modules/undici-types/index.d.ts +71 -0
- package/examples/node_modules/undici-types/interceptors.d.ts +17 -0
- package/examples/node_modules/undici-types/mock-agent.d.ts +50 -0
- package/examples/node_modules/undici-types/mock-client.d.ts +25 -0
- package/examples/node_modules/undici-types/mock-errors.d.ts +12 -0
- package/examples/node_modules/undici-types/mock-interceptor.d.ts +93 -0
- package/examples/node_modules/undici-types/mock-pool.d.ts +25 -0
- package/examples/node_modules/undici-types/package.json +55 -0
- package/examples/node_modules/undici-types/patch.d.ts +33 -0
- package/examples/node_modules/undici-types/pool-stats.d.ts +19 -0
- package/examples/node_modules/undici-types/pool.d.ts +39 -0
- package/examples/node_modules/undici-types/proxy-agent.d.ts +28 -0
- package/examples/node_modules/undici-types/readable.d.ts +65 -0
- package/examples/node_modules/undici-types/retry-agent.d.ts +8 -0
- package/examples/node_modules/undici-types/retry-handler.d.ts +116 -0
- package/examples/node_modules/undici-types/util.d.ts +18 -0
- package/examples/node_modules/undici-types/webidl.d.ts +228 -0
- package/examples/node_modules/undici-types/websocket.d.ts +150 -0
- package/examples/package-lock.json +611 -0
- package/examples/package.json +18 -0
- package/examples/sendMessage.example.ts +32 -0
- package/jsr.json +27 -0
- package/package.json +122 -0
- package/src/core.ts +13 -0
- package/src/funcs/createSender.ts +167 -0
- package/src/funcs/createTemplate.ts +170 -0
- package/src/funcs/deleteSender.ts +173 -0
- package/src/funcs/deleteTemplate.ts +173 -0
- package/src/funcs/getContact.ts +174 -0
- package/src/funcs/getContactByPhone.ts +175 -0
- package/src/funcs/getMessage.ts +174 -0
- package/src/funcs/getSender.ts +174 -0
- package/src/funcs/getTemplate.ts +174 -0
- package/src/funcs/introspectPhone.ts +170 -0
- package/src/funcs/listContacts.ts +174 -0
- package/src/funcs/listMessages.ts +179 -0
- package/src/funcs/listSenders.ts +148 -0
- package/src/funcs/listTemplates.ts +151 -0
- package/src/funcs/sendMessage.ts +185 -0
- package/src/funcs/sendReaction.ts +182 -0
- package/src/funcs/updateContact.ts +175 -0
- package/src/funcs/updateSender.ts +175 -0
- package/src/hooks/hooks.ts +132 -0
- package/src/hooks/index.ts +6 -0
- package/src/hooks/registration.ts +14 -0
- package/src/hooks/types.ts +107 -0
- package/src/index.ts +9 -0
- package/src/lib/base64.ts +39 -0
- package/src/lib/config.ts +64 -0
- package/src/lib/dlv.ts +53 -0
- package/src/lib/encodings.ts +501 -0
- package/src/lib/files.ts +82 -0
- package/src/lib/http.ts +323 -0
- package/src/lib/is-plain-object.ts +43 -0
- package/src/lib/logger.ts +9 -0
- package/src/lib/matchers.ts +352 -0
- package/src/lib/primitives.ts +150 -0
- package/src/lib/retries.ts +218 -0
- package/src/lib/schemas.ts +94 -0
- package/src/lib/sdks.ts +402 -0
- package/src/lib/security.ts +263 -0
- package/src/lib/url.ts +33 -0
- package/src/models/channel.ts +26 -0
- package/src/models/contact.ts +51 -0
- package/src/models/contactupdaterequest.ts +30 -0
- package/src/models/errors/error.ts +53 -0
- package/src/models/errors/httpclienterrors.ts +62 -0
- package/src/models/errors/index.ts +10 -0
- package/src/models/errors/responsevalidationerror.ts +50 -0
- package/src/models/errors/sdkdefaulterror.ts +40 -0
- package/src/models/errors/sdkerror.ts +35 -0
- package/src/models/errors/sdkvalidationerror.ts +54 -0
- package/src/models/index.ts +23 -0
- package/src/models/message.ts +78 -0
- package/src/models/messagecontent.ts +317 -0
- package/src/models/messagerequest.ts +75 -0
- package/src/models/messageresponse.ts +31 -0
- package/src/models/messagestatus.ts +28 -0
- package/src/models/messagetype.ts +36 -0
- package/src/models/operations/deletesender.ts +30 -0
- package/src/models/operations/deletetemplate.ts +30 -0
- package/src/models/operations/getcontact.ts +30 -0
- package/src/models/operations/getcontactbyphone.ts +33 -0
- package/src/models/operations/getmessage.ts +30 -0
- package/src/models/operations/getsender.ts +30 -0
- package/src/models/operations/gettemplate.ts +30 -0
- package/src/models/operations/index.ts +19 -0
- package/src/models/operations/listcontacts.ts +68 -0
- package/src/models/operations/listmessages.ts +77 -0
- package/src/models/operations/listsenders.ts +34 -0
- package/src/models/operations/listtemplates.ts +34 -0
- package/src/models/operations/sendmessage.ts +45 -0
- package/src/models/operations/sendreaction.ts +48 -0
- package/src/models/operations/updatecontact.ts +34 -0
- package/src/models/operations/updatesender.ts +34 -0
- package/src/models/phoneintrospectionrequest.ts +30 -0
- package/src/models/phoneintrospectionresponse.ts +40 -0
- package/src/models/reactionrequest.ts +31 -0
- package/src/models/security.ts +26 -0
- package/src/models/sender.ts +74 -0
- package/src/models/sendercreaterequest.ts +36 -0
- package/src/models/senderupdaterequest.ts +33 -0
- package/src/models/template.ts +77 -0
- package/src/models/templatecreaterequest.ts +49 -0
- package/src/models/whatsappcategory.ts +31 -0
- package/src/sdk/index.ts +5 -0
- package/src/sdk/sdk.ts +303 -0
- package/src/types/async.ts +68 -0
- package/src/types/blobs.ts +33 -0
- package/src/types/constdatetime.ts +15 -0
- package/src/types/defaultToZeroValue.ts +33 -0
- package/src/types/enums.ts +45 -0
- package/src/types/fp.ts +50 -0
- package/src/types/index.ts +13 -0
- package/src/types/operations.ts +105 -0
- package/src/types/primitives.ts +168 -0
- package/src/types/rfcdate.ts +54 -0
- package/src/types/smartUnion.ts +145 -0
- package/src/types/streams.ts +21 -0
- package/src/types/unrecognized.ts +35 -0
- package/temp/example.ts +15 -0
- package/tsconfig.json +40 -0
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { ResponseValidationError } from "../models/errors/responsevalidationerror.js";
|
|
6
|
+
import { SDKDefaultError } from "../models/errors/sdkdefaulterror.js";
|
|
7
|
+
import { ERR, OK, Result } from "../types/fp.js";
|
|
8
|
+
import { matchResponse, matchStatusCode, StatusCodePredicate } from "./http.js";
|
|
9
|
+
import { isPlainObject } from "./is-plain-object.js";
|
|
10
|
+
|
|
11
|
+
export type Encoding =
|
|
12
|
+
| "jsonl"
|
|
13
|
+
| "json"
|
|
14
|
+
| "text"
|
|
15
|
+
| "bytes"
|
|
16
|
+
| "stream"
|
|
17
|
+
| "sse"
|
|
18
|
+
| "nil"
|
|
19
|
+
| "fail";
|
|
20
|
+
|
|
21
|
+
const DEFAULT_CONTENT_TYPES: Record<Encoding, string> = {
|
|
22
|
+
jsonl: "application/jsonl",
|
|
23
|
+
json: "application/json",
|
|
24
|
+
text: "text/plain",
|
|
25
|
+
bytes: "application/octet-stream",
|
|
26
|
+
stream: "application/octet-stream",
|
|
27
|
+
sse: "text/event-stream",
|
|
28
|
+
nil: "*",
|
|
29
|
+
fail: "*",
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
type Schema<T> = { parse(raw: unknown): T };
|
|
33
|
+
|
|
34
|
+
type MatchOptions = {
|
|
35
|
+
ctype?: string;
|
|
36
|
+
hdrs?: boolean;
|
|
37
|
+
key?: string;
|
|
38
|
+
sseSentinel?: string;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export type ValueMatcher<V> = MatchOptions & {
|
|
42
|
+
enc: Encoding;
|
|
43
|
+
codes: StatusCodePredicate;
|
|
44
|
+
schema: Schema<V>;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export type ErrorMatcher<E> = MatchOptions & {
|
|
48
|
+
enc: Encoding;
|
|
49
|
+
codes: StatusCodePredicate;
|
|
50
|
+
schema: Schema<E>;
|
|
51
|
+
err: true;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export type FailMatcher = {
|
|
55
|
+
enc: "fail";
|
|
56
|
+
codes: StatusCodePredicate;
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export type Matcher<T, E> = ValueMatcher<T> | ErrorMatcher<E> | FailMatcher;
|
|
60
|
+
|
|
61
|
+
export function jsonErr<E>(
|
|
62
|
+
codes: StatusCodePredicate,
|
|
63
|
+
schema: Schema<E>,
|
|
64
|
+
options?: MatchOptions,
|
|
65
|
+
): ErrorMatcher<E> {
|
|
66
|
+
return { ...options, err: true, enc: "json", codes, schema };
|
|
67
|
+
}
|
|
68
|
+
export function json<T>(
|
|
69
|
+
codes: StatusCodePredicate,
|
|
70
|
+
schema: Schema<T>,
|
|
71
|
+
options?: MatchOptions,
|
|
72
|
+
): ValueMatcher<T> {
|
|
73
|
+
return { ...options, enc: "json", codes, schema };
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export function jsonl<T>(
|
|
77
|
+
codes: StatusCodePredicate,
|
|
78
|
+
schema: Schema<T>,
|
|
79
|
+
options?: MatchOptions,
|
|
80
|
+
): ValueMatcher<T> {
|
|
81
|
+
return { ...options, enc: "jsonl", codes, schema };
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export function jsonlErr<E>(
|
|
85
|
+
codes: StatusCodePredicate,
|
|
86
|
+
schema: Schema<E>,
|
|
87
|
+
options?: MatchOptions,
|
|
88
|
+
): ErrorMatcher<E> {
|
|
89
|
+
return { ...options, err: true, enc: "jsonl", codes, schema };
|
|
90
|
+
}
|
|
91
|
+
export function textErr<E>(
|
|
92
|
+
codes: StatusCodePredicate,
|
|
93
|
+
schema: Schema<E>,
|
|
94
|
+
options?: MatchOptions,
|
|
95
|
+
): ErrorMatcher<E> {
|
|
96
|
+
return { ...options, err: true, enc: "text", codes, schema };
|
|
97
|
+
}
|
|
98
|
+
export function text<T>(
|
|
99
|
+
codes: StatusCodePredicate,
|
|
100
|
+
schema: Schema<T>,
|
|
101
|
+
options?: MatchOptions,
|
|
102
|
+
): ValueMatcher<T> {
|
|
103
|
+
return { ...options, enc: "text", codes, schema };
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export function bytesErr<E>(
|
|
107
|
+
codes: StatusCodePredicate,
|
|
108
|
+
schema: Schema<E>,
|
|
109
|
+
options?: MatchOptions,
|
|
110
|
+
): ErrorMatcher<E> {
|
|
111
|
+
return { ...options, err: true, enc: "bytes", codes, schema };
|
|
112
|
+
}
|
|
113
|
+
export function bytes<T>(
|
|
114
|
+
codes: StatusCodePredicate,
|
|
115
|
+
schema: Schema<T>,
|
|
116
|
+
options?: MatchOptions,
|
|
117
|
+
): ValueMatcher<T> {
|
|
118
|
+
return { ...options, enc: "bytes", codes, schema };
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export function streamErr<E>(
|
|
122
|
+
codes: StatusCodePredicate,
|
|
123
|
+
schema: Schema<E>,
|
|
124
|
+
options?: MatchOptions,
|
|
125
|
+
): ErrorMatcher<E> {
|
|
126
|
+
return { ...options, err: true, enc: "stream", codes, schema };
|
|
127
|
+
}
|
|
128
|
+
export function stream<T>(
|
|
129
|
+
codes: StatusCodePredicate,
|
|
130
|
+
schema: Schema<T>,
|
|
131
|
+
options?: MatchOptions,
|
|
132
|
+
): ValueMatcher<T> {
|
|
133
|
+
return { ...options, enc: "stream", codes, schema };
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export function sseErr<E>(
|
|
137
|
+
codes: StatusCodePredicate,
|
|
138
|
+
schema: Schema<E>,
|
|
139
|
+
options?: MatchOptions,
|
|
140
|
+
): ErrorMatcher<E> {
|
|
141
|
+
return { ...options, err: true, enc: "sse", codes, schema };
|
|
142
|
+
}
|
|
143
|
+
export function sse<T>(
|
|
144
|
+
codes: StatusCodePredicate,
|
|
145
|
+
schema: Schema<T>,
|
|
146
|
+
options?: MatchOptions,
|
|
147
|
+
): ValueMatcher<T> {
|
|
148
|
+
return { ...options, enc: "sse", codes, schema };
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export function nilErr<E>(
|
|
152
|
+
codes: StatusCodePredicate,
|
|
153
|
+
schema: Schema<E>,
|
|
154
|
+
options?: MatchOptions,
|
|
155
|
+
): ErrorMatcher<E> {
|
|
156
|
+
return { ...options, err: true, enc: "nil", codes, schema };
|
|
157
|
+
}
|
|
158
|
+
export function nil<T>(
|
|
159
|
+
codes: StatusCodePredicate,
|
|
160
|
+
schema: Schema<T>,
|
|
161
|
+
options?: MatchOptions,
|
|
162
|
+
): ValueMatcher<T> {
|
|
163
|
+
return { ...options, enc: "nil", codes, schema };
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
export function fail(codes: StatusCodePredicate): FailMatcher {
|
|
167
|
+
return { enc: "fail", codes };
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
export type MatchedValue<Matchers> = Matchers extends Matcher<infer T, any>[]
|
|
171
|
+
? T
|
|
172
|
+
: never;
|
|
173
|
+
export type MatchedError<Matchers> = Matchers extends Matcher<any, infer E>[]
|
|
174
|
+
? E
|
|
175
|
+
: never;
|
|
176
|
+
export type MatchFunc<T, E> = (
|
|
177
|
+
response: Response,
|
|
178
|
+
request: Request,
|
|
179
|
+
options?: { resultKey?: string; extraFields?: Record<string, unknown> },
|
|
180
|
+
) => Promise<[result: Result<T, E>, raw: unknown]>;
|
|
181
|
+
|
|
182
|
+
export function match<T, E>(
|
|
183
|
+
...matchers: Array<Matcher<T, E>>
|
|
184
|
+
): MatchFunc<T, E | SDKDefaultError | ResponseValidationError> {
|
|
185
|
+
return async function matchFunc(
|
|
186
|
+
response: Response,
|
|
187
|
+
request: Request,
|
|
188
|
+
options?: { resultKey?: string; extraFields?: Record<string, unknown> },
|
|
189
|
+
): Promise<
|
|
190
|
+
[
|
|
191
|
+
result: Result<T, E | SDKDefaultError | ResponseValidationError>,
|
|
192
|
+
raw: unknown,
|
|
193
|
+
]
|
|
194
|
+
> {
|
|
195
|
+
let raw: unknown;
|
|
196
|
+
let matcher: Matcher<T, E> | undefined;
|
|
197
|
+
for (const match of matchers) {
|
|
198
|
+
const { codes } = match;
|
|
199
|
+
const ctpattern = "ctype" in match
|
|
200
|
+
? match.ctype
|
|
201
|
+
: DEFAULT_CONTENT_TYPES[match.enc];
|
|
202
|
+
if (ctpattern && matchResponse(response, codes, ctpattern)) {
|
|
203
|
+
matcher = match;
|
|
204
|
+
break;
|
|
205
|
+
} else if (!ctpattern && matchStatusCode(response, codes)) {
|
|
206
|
+
matcher = match;
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
if (!matcher) {
|
|
212
|
+
return [{
|
|
213
|
+
ok: false,
|
|
214
|
+
error: new SDKDefaultError("Unexpected Status or Content-Type", {
|
|
215
|
+
response,
|
|
216
|
+
request,
|
|
217
|
+
body: await response.text().catch(() => ""),
|
|
218
|
+
}),
|
|
219
|
+
}, raw];
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
const encoding = matcher.enc;
|
|
223
|
+
let body = "";
|
|
224
|
+
switch (encoding) {
|
|
225
|
+
case "json":
|
|
226
|
+
body = await response.text();
|
|
227
|
+
raw = JSON.parse(body);
|
|
228
|
+
break;
|
|
229
|
+
case "jsonl":
|
|
230
|
+
raw = response.body;
|
|
231
|
+
break;
|
|
232
|
+
case "bytes":
|
|
233
|
+
raw = new Uint8Array(await response.arrayBuffer());
|
|
234
|
+
break;
|
|
235
|
+
case "stream":
|
|
236
|
+
raw = response.body;
|
|
237
|
+
break;
|
|
238
|
+
case "text":
|
|
239
|
+
body = await response.text();
|
|
240
|
+
raw = body;
|
|
241
|
+
break;
|
|
242
|
+
case "sse":
|
|
243
|
+
raw = response.body;
|
|
244
|
+
break;
|
|
245
|
+
case "nil":
|
|
246
|
+
body = await response.text();
|
|
247
|
+
raw = undefined;
|
|
248
|
+
break;
|
|
249
|
+
case "fail":
|
|
250
|
+
body = await response.text();
|
|
251
|
+
raw = body;
|
|
252
|
+
break;
|
|
253
|
+
default:
|
|
254
|
+
encoding satisfies never;
|
|
255
|
+
throw new Error(`Unsupported response type: ${encoding}`);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
if (matcher.enc === "fail") {
|
|
259
|
+
return [{
|
|
260
|
+
ok: false,
|
|
261
|
+
error: new SDKDefaultError("API error occurred", {
|
|
262
|
+
request,
|
|
263
|
+
response,
|
|
264
|
+
body,
|
|
265
|
+
}),
|
|
266
|
+
}, raw];
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
const resultKey = matcher.key || options?.resultKey;
|
|
270
|
+
let data: unknown;
|
|
271
|
+
|
|
272
|
+
if ("err" in matcher) {
|
|
273
|
+
data = {
|
|
274
|
+
...options?.extraFields,
|
|
275
|
+
...(matcher.hdrs ? { Headers: unpackHeaders(response.headers) } : null),
|
|
276
|
+
...(isPlainObject(raw) ? raw : null),
|
|
277
|
+
request$: request,
|
|
278
|
+
response$: response,
|
|
279
|
+
body$: body,
|
|
280
|
+
};
|
|
281
|
+
} else if (resultKey) {
|
|
282
|
+
data = {
|
|
283
|
+
...options?.extraFields,
|
|
284
|
+
...(matcher.hdrs ? { Headers: unpackHeaders(response.headers) } : null),
|
|
285
|
+
[resultKey]: raw,
|
|
286
|
+
};
|
|
287
|
+
} else if (matcher.hdrs) {
|
|
288
|
+
data = {
|
|
289
|
+
...options?.extraFields,
|
|
290
|
+
...(matcher.hdrs ? { Headers: unpackHeaders(response.headers) } : null),
|
|
291
|
+
...(isPlainObject(raw) ? raw : null),
|
|
292
|
+
};
|
|
293
|
+
} else {
|
|
294
|
+
data = raw;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
if ("err" in matcher) {
|
|
298
|
+
const result = safeParseResponse(
|
|
299
|
+
data,
|
|
300
|
+
(v: unknown) => matcher.schema.parse(v),
|
|
301
|
+
"Response validation failed",
|
|
302
|
+
{ request, response, body },
|
|
303
|
+
);
|
|
304
|
+
return [result.ok ? { ok: false, error: result.value } : result, raw];
|
|
305
|
+
} else {
|
|
306
|
+
return [
|
|
307
|
+
safeParseResponse(
|
|
308
|
+
data,
|
|
309
|
+
(v: unknown) => matcher.schema.parse(v),
|
|
310
|
+
"Response validation failed",
|
|
311
|
+
{ request, response, body },
|
|
312
|
+
),
|
|
313
|
+
raw,
|
|
314
|
+
];
|
|
315
|
+
}
|
|
316
|
+
};
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
const headerValRE = /, */;
|
|
320
|
+
/**
|
|
321
|
+
* Iterates over a Headers object and returns an object with all the header
|
|
322
|
+
* entries. Values are represented as an array to account for repeated headers.
|
|
323
|
+
*/
|
|
324
|
+
export function unpackHeaders(headers: Headers): Record<string, string[]> {
|
|
325
|
+
const out: Record<string, string[]> = {};
|
|
326
|
+
|
|
327
|
+
for (const [k, v] of headers.entries()) {
|
|
328
|
+
out[k] = v.split(headerValRE);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
return out;
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
function safeParseResponse<Inp, Out>(
|
|
335
|
+
rawValue: Inp,
|
|
336
|
+
fn: (value: Inp) => Out,
|
|
337
|
+
errorMessage: string,
|
|
338
|
+
httpMeta: { response: Response; request: Request; body: string },
|
|
339
|
+
): Result<Out, ResponseValidationError> {
|
|
340
|
+
try {
|
|
341
|
+
return OK(fn(rawValue));
|
|
342
|
+
} catch (err) {
|
|
343
|
+
return ERR(
|
|
344
|
+
new ResponseValidationError(errorMessage, {
|
|
345
|
+
cause: err,
|
|
346
|
+
rawValue,
|
|
347
|
+
rawMessage: errorMessage,
|
|
348
|
+
...httpMeta,
|
|
349
|
+
}),
|
|
350
|
+
);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
class InvariantError extends Error {
|
|
6
|
+
constructor(message: string) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.name = "InvariantError";
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function invariant(
|
|
13
|
+
condition: unknown,
|
|
14
|
+
message: string,
|
|
15
|
+
): asserts condition {
|
|
16
|
+
if (!condition) {
|
|
17
|
+
throw new InvariantError(message);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export type ExactPartial<T> = {
|
|
22
|
+
[P in keyof T]?: T[P] | undefined;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export type Remap<Inp, Mapping extends { [k in keyof Inp]?: string | null }> = {
|
|
26
|
+
[k in keyof Inp as Mapping[k] extends string /* if we have a string mapping for this key then use it */
|
|
27
|
+
? Mapping[k]
|
|
28
|
+
: Mapping[k] extends null /* if the mapping is to `null` then drop the key */
|
|
29
|
+
? never
|
|
30
|
+
: k /* otherwise keep the key as-is */]: Inp[k];
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Converts or omits an object's keys according to a mapping.
|
|
35
|
+
*
|
|
36
|
+
* @param inp An object whose keys will be remapped
|
|
37
|
+
* @param mappings A mapping of original keys to new keys. If a key is not present in the mapping, it will be left as is. If a key is mapped to `null`, it will be removed in the resulting object.
|
|
38
|
+
* @returns A new object with keys remapped or omitted according to the mappings
|
|
39
|
+
*/
|
|
40
|
+
export function remap<
|
|
41
|
+
Inp extends Record<string, unknown>,
|
|
42
|
+
const Mapping extends { [k in keyof Inp]?: string | null },
|
|
43
|
+
>(inp: Inp, mappings: Mapping): Remap<Inp, Mapping> {
|
|
44
|
+
let out: any = {};
|
|
45
|
+
|
|
46
|
+
if (!Object.keys(mappings).length) {
|
|
47
|
+
out = inp;
|
|
48
|
+
return out;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
for (const [k, v] of Object.entries(inp)) {
|
|
52
|
+
const j = mappings[k];
|
|
53
|
+
if (j === null) {
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
out[j ?? k] = v;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return out;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export function combineSignals(
|
|
63
|
+
...signals: Array<AbortSignal | null | undefined>
|
|
64
|
+
): AbortSignal | null {
|
|
65
|
+
const filtered: AbortSignal[] = [];
|
|
66
|
+
for (const signal of signals) {
|
|
67
|
+
if (signal) {
|
|
68
|
+
filtered.push(signal);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
switch (filtered.length) {
|
|
73
|
+
case 0:
|
|
74
|
+
case 1:
|
|
75
|
+
return filtered[0] || null;
|
|
76
|
+
default:
|
|
77
|
+
if ("any" in AbortSignal && typeof AbortSignal.any === "function") {
|
|
78
|
+
return AbortSignal.any(filtered);
|
|
79
|
+
}
|
|
80
|
+
return abortSignalAny(filtered);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export function abortSignalAny(signals: AbortSignal[]): AbortSignal {
|
|
85
|
+
const controller = new AbortController();
|
|
86
|
+
const result = controller.signal;
|
|
87
|
+
if (!signals.length) {
|
|
88
|
+
return controller.signal;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
if (signals.length === 1) {
|
|
92
|
+
return signals[0] || controller.signal;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
for (const signal of signals) {
|
|
96
|
+
if (signal.aborted) {
|
|
97
|
+
return signal;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
function abort(this: AbortSignal) {
|
|
102
|
+
controller.abort(this.reason);
|
|
103
|
+
clean();
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
const signalRefs: WeakRef<AbortSignal>[] = [];
|
|
107
|
+
function clean() {
|
|
108
|
+
for (const signalRef of signalRefs) {
|
|
109
|
+
const signal = signalRef.deref();
|
|
110
|
+
if (signal) {
|
|
111
|
+
signal.removeEventListener("abort", abort);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
for (const signal of signals) {
|
|
117
|
+
signalRefs.push(new WeakRef(signal));
|
|
118
|
+
signal.addEventListener("abort", abort);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
return result;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export function compactMap<T>(
|
|
125
|
+
values: Record<string, T | undefined>,
|
|
126
|
+
): Record<string, T> {
|
|
127
|
+
const out: Record<string, T> = {};
|
|
128
|
+
|
|
129
|
+
for (const [k, v] of Object.entries(values)) {
|
|
130
|
+
if (typeof v !== "undefined") {
|
|
131
|
+
out[k] = v;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
return out;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
export function allRequired<V extends Record<string, unknown>>(
|
|
139
|
+
v: V,
|
|
140
|
+
):
|
|
141
|
+
| {
|
|
142
|
+
[K in keyof V]: NonNullable<V[K]>;
|
|
143
|
+
}
|
|
144
|
+
| undefined {
|
|
145
|
+
if (Object.values(v).every((x) => x == null)) {
|
|
146
|
+
return void 0;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
return v as ReturnType<typeof allRequired<V>>;
|
|
150
|
+
}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { isConnectionError, isTimeoutError } from "./http.js";
|
|
6
|
+
|
|
7
|
+
export type BackoffStrategy = {
|
|
8
|
+
initialInterval: number;
|
|
9
|
+
maxInterval: number;
|
|
10
|
+
exponent: number;
|
|
11
|
+
maxElapsedTime: number;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const defaultBackoff: BackoffStrategy = {
|
|
15
|
+
initialInterval: 500,
|
|
16
|
+
maxInterval: 60000,
|
|
17
|
+
exponent: 1.5,
|
|
18
|
+
maxElapsedTime: 3600000,
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export type RetryConfig =
|
|
22
|
+
| { strategy: "none" }
|
|
23
|
+
| {
|
|
24
|
+
strategy: "backoff";
|
|
25
|
+
backoff?: BackoffStrategy;
|
|
26
|
+
retryConnectionErrors?: boolean;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* PermanentError is an error that is not recoverable. Throwing this error will
|
|
31
|
+
* cause a retry loop to terminate.
|
|
32
|
+
*/
|
|
33
|
+
export class PermanentError extends Error {
|
|
34
|
+
/** The underlying cause of the error. */
|
|
35
|
+
override readonly cause: unknown;
|
|
36
|
+
|
|
37
|
+
constructor(message: string, options?: { cause?: unknown }) {
|
|
38
|
+
let msg = message;
|
|
39
|
+
if (options?.cause) {
|
|
40
|
+
msg += `: ${options.cause}`;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
super(msg, options);
|
|
44
|
+
this.name = "PermanentError";
|
|
45
|
+
// In older runtimes, the cause field would not have been assigned through
|
|
46
|
+
// the super() call.
|
|
47
|
+
if (typeof this.cause === "undefined") {
|
|
48
|
+
this.cause = options?.cause;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
Object.setPrototypeOf(this, PermanentError.prototype);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* TemporaryError is an error is used to signal that an HTTP request can be
|
|
57
|
+
* retried as part of a retry loop. If retry attempts are exhausted and this
|
|
58
|
+
* error is thrown, the response will be returned to the caller.
|
|
59
|
+
*/
|
|
60
|
+
export class TemporaryError extends Error {
|
|
61
|
+
response: Response;
|
|
62
|
+
|
|
63
|
+
constructor(message: string, response: Response) {
|
|
64
|
+
super(message);
|
|
65
|
+
this.response = response;
|
|
66
|
+
this.name = "TemporaryError";
|
|
67
|
+
|
|
68
|
+
Object.setPrototypeOf(this, TemporaryError.prototype);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export async function retry(
|
|
73
|
+
fetchFn: () => Promise<Response>,
|
|
74
|
+
options: {
|
|
75
|
+
config: RetryConfig;
|
|
76
|
+
statusCodes: string[];
|
|
77
|
+
},
|
|
78
|
+
): Promise<Response> {
|
|
79
|
+
switch (options.config.strategy) {
|
|
80
|
+
case "backoff":
|
|
81
|
+
return retryBackoff(
|
|
82
|
+
wrapFetcher(fetchFn, {
|
|
83
|
+
statusCodes: options.statusCodes,
|
|
84
|
+
retryConnectionErrors: !!options.config.retryConnectionErrors,
|
|
85
|
+
}),
|
|
86
|
+
options.config.backoff ?? defaultBackoff,
|
|
87
|
+
);
|
|
88
|
+
default:
|
|
89
|
+
return await fetchFn();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function wrapFetcher(
|
|
94
|
+
fn: () => Promise<Response>,
|
|
95
|
+
options: {
|
|
96
|
+
statusCodes: string[];
|
|
97
|
+
retryConnectionErrors: boolean;
|
|
98
|
+
},
|
|
99
|
+
): () => Promise<Response> {
|
|
100
|
+
return async () => {
|
|
101
|
+
try {
|
|
102
|
+
const res = await fn();
|
|
103
|
+
if (isRetryableResponse(res, options.statusCodes)) {
|
|
104
|
+
throw new TemporaryError(
|
|
105
|
+
"Response failed with retryable status code",
|
|
106
|
+
res,
|
|
107
|
+
);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return res;
|
|
111
|
+
} catch (err: unknown) {
|
|
112
|
+
if (err instanceof TemporaryError) {
|
|
113
|
+
throw err;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (
|
|
117
|
+
options.retryConnectionErrors &&
|
|
118
|
+
(isTimeoutError(err) || isConnectionError(err))
|
|
119
|
+
) {
|
|
120
|
+
throw err;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
throw new PermanentError("Permanent error", { cause: err });
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
const codeRangeRE = new RegExp("^[0-9]xx$", "i");
|
|
129
|
+
|
|
130
|
+
function isRetryableResponse(res: Response, statusCodes: string[]): boolean {
|
|
131
|
+
const actual = `${res.status}`;
|
|
132
|
+
|
|
133
|
+
return statusCodes.some((code) => {
|
|
134
|
+
if (!codeRangeRE.test(code)) {
|
|
135
|
+
return code === actual;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
const expectFamily = code.charAt(0);
|
|
139
|
+
if (!expectFamily) {
|
|
140
|
+
throw new Error("Invalid status code range");
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
const actualFamily = actual.charAt(0);
|
|
144
|
+
if (!actualFamily) {
|
|
145
|
+
throw new Error(`Invalid response status code: ${actual}`);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
return actualFamily === expectFamily;
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
async function retryBackoff(
|
|
153
|
+
fn: () => Promise<Response>,
|
|
154
|
+
strategy: BackoffStrategy,
|
|
155
|
+
): Promise<Response> {
|
|
156
|
+
const { maxElapsedTime, initialInterval, exponent, maxInterval } = strategy;
|
|
157
|
+
|
|
158
|
+
const start = Date.now();
|
|
159
|
+
let x = 0;
|
|
160
|
+
|
|
161
|
+
while (true) {
|
|
162
|
+
try {
|
|
163
|
+
const res = await fn();
|
|
164
|
+
return res;
|
|
165
|
+
} catch (err: unknown) {
|
|
166
|
+
if (err instanceof PermanentError) {
|
|
167
|
+
throw err.cause;
|
|
168
|
+
}
|
|
169
|
+
const elapsed = Date.now() - start;
|
|
170
|
+
if (elapsed > maxElapsedTime) {
|
|
171
|
+
if (err instanceof TemporaryError) {
|
|
172
|
+
return err.response;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
throw err;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
let retryInterval = 0;
|
|
179
|
+
if (err instanceof TemporaryError) {
|
|
180
|
+
retryInterval = retryIntervalFromResponse(err.response);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
if (retryInterval <= 0) {
|
|
184
|
+
retryInterval =
|
|
185
|
+
initialInterval * Math.pow(x, exponent) + Math.random() * 1000;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
const d = Math.min(retryInterval, maxInterval);
|
|
189
|
+
|
|
190
|
+
await delay(d);
|
|
191
|
+
x++;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
function retryIntervalFromResponse(res: Response): number {
|
|
197
|
+
const retryVal = res.headers.get("retry-after") || "";
|
|
198
|
+
if (!retryVal) {
|
|
199
|
+
return 0;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
const parsedNumber = Number(retryVal);
|
|
203
|
+
if (Number.isInteger(parsedNumber)) {
|
|
204
|
+
return parsedNumber * 1000;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
const parsedDate = Date.parse(retryVal);
|
|
208
|
+
if (Number.isInteger(parsedDate)) {
|
|
209
|
+
const deltaMS = parsedDate - Date.now();
|
|
210
|
+
return deltaMS > 0 ? Math.ceil(deltaMS) : 0;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
return 0;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
async function delay(delay: number): Promise<void> {
|
|
217
|
+
return new Promise((resolve) => setTimeout(resolve, delay));
|
|
218
|
+
}
|