@sinch/fax 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/README.md +126 -0
  2. package/dist/index.d.ts +3 -0
  3. package/dist/index.js +20 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/models/index.d.ts +1 -0
  6. package/dist/models/index.js +18 -0
  7. package/dist/models/index.js.map +1 -0
  8. package/dist/models/v3/bar-code/bar-code.d.ts +11 -0
  9. package/dist/models/v3/bar-code/bar-code.js +3 -0
  10. package/dist/models/v3/bar-code/bar-code.js.map +1 -0
  11. package/dist/models/v3/bar-code/index.d.ts +1 -0
  12. package/dist/models/v3/bar-code/index.js +3 -0
  13. package/dist/models/v3/bar-code/index.js.map +1 -0
  14. package/dist/models/v3/email/email.d.ts +12 -0
  15. package/dist/models/v3/email/email.js +3 -0
  16. package/dist/models/v3/email/email.js.map +1 -0
  17. package/dist/models/v3/email/index.d.ts +1 -0
  18. package/dist/models/v3/email/index.js +3 -0
  19. package/dist/models/v3/email/index.js.map +1 -0
  20. package/dist/models/v3/enums.d.ts +16 -0
  21. package/dist/models/v3/enums.js +10 -0
  22. package/dist/models/v3/enums.js.map +1 -0
  23. package/dist/models/v3/fax/fax.d.ts +62 -0
  24. package/dist/models/v3/fax/fax.js +3 -0
  25. package/dist/models/v3/fax/fax.js.map +1 -0
  26. package/dist/models/v3/fax/index.d.ts +1 -0
  27. package/dist/models/v3/fax/index.js +3 -0
  28. package/dist/models/v3/fax/index.js.map +1 -0
  29. package/dist/models/v3/fax-base64-file/fax-base64-file.d.ts +7 -0
  30. package/dist/models/v3/fax-base64-file/fax-base64-file.js +3 -0
  31. package/dist/models/v3/fax-base64-file/fax-base64-file.js.map +1 -0
  32. package/dist/models/v3/fax-base64-file/index.d.ts +1 -0
  33. package/dist/models/v3/fax-base64-file/index.js +3 -0
  34. package/dist/models/v3/fax-base64-file/index.js.map +1 -0
  35. package/dist/models/v3/fax-content-url/fax-content-url.d.ts +4 -0
  36. package/dist/models/v3/fax-content-url/fax-content-url.js +3 -0
  37. package/dist/models/v3/fax-content-url/fax-content-url.js.map +1 -0
  38. package/dist/models/v3/fax-content-url/index.d.ts +1 -0
  39. package/dist/models/v3/fax-content-url/index.js +3 -0
  40. package/dist/models/v3/fax-content-url/index.js.map +1 -0
  41. package/dist/models/v3/fax-money/fax-money.d.ts +9 -0
  42. package/dist/models/v3/fax-money/fax-money.js +3 -0
  43. package/dist/models/v3/fax-money/fax-money.js.map +1 -0
  44. package/dist/models/v3/fax-money/index.d.ts +1 -0
  45. package/dist/models/v3/fax-money/index.js +3 -0
  46. package/dist/models/v3/fax-money/index.js.map +1 -0
  47. package/dist/models/v3/fax-request/fax-request.d.ts +43 -0
  48. package/dist/models/v3/fax-request/fax-request.js +3 -0
  49. package/dist/models/v3/fax-request/fax-request.js.map +1 -0
  50. package/dist/models/v3/fax-request/index.d.ts +1 -0
  51. package/dist/models/v3/fax-request/index.js +3 -0
  52. package/dist/models/v3/fax-request/index.js.map +1 -0
  53. package/dist/models/v3/index.d.ts +13 -0
  54. package/dist/models/v3/index.js +47 -0
  55. package/dist/models/v3/index.js.map +1 -0
  56. package/dist/models/v3/mod-events/base-fax-event/base-fax-event.d.ts +16 -0
  57. package/dist/models/v3/mod-events/base-fax-event/base-fax-event.js +3 -0
  58. package/dist/models/v3/mod-events/base-fax-event/base-fax-event.js.map +1 -0
  59. package/dist/models/v3/mod-events/base-fax-event/index.d.ts +1 -0
  60. package/dist/models/v3/mod-events/base-fax-event/index.js +3 -0
  61. package/dist/models/v3/mod-events/base-fax-event/index.js.map +1 -0
  62. package/dist/models/v3/mod-events/fax-completed-event/fax-completed-event.d.ts +13 -0
  63. package/dist/models/v3/mod-events/fax-completed-event/fax-completed-event.js +3 -0
  64. package/dist/models/v3/mod-events/fax-completed-event/fax-completed-event.js.map +1 -0
  65. package/dist/models/v3/mod-events/fax-completed-event/index.d.ts +1 -0
  66. package/dist/models/v3/mod-events/fax-completed-event/index.js +3 -0
  67. package/dist/models/v3/mod-events/fax-completed-event/index.js.map +1 -0
  68. package/dist/models/v3/mod-events/incoming-fax-event/incoming-fax-event.d.ts +15 -0
  69. package/dist/models/v3/mod-events/incoming-fax-event/incoming-fax-event.js +3 -0
  70. package/dist/models/v3/mod-events/incoming-fax-event/incoming-fax-event.js.map +1 -0
  71. package/dist/models/v3/mod-events/incoming-fax-event/index.d.ts +1 -0
  72. package/dist/models/v3/mod-events/incoming-fax-event/index.js +3 -0
  73. package/dist/models/v3/mod-events/incoming-fax-event/index.js.map +1 -0
  74. package/dist/models/v3/mod-events/index.d.ts +2 -0
  75. package/dist/models/v3/mod-events/index.js +19 -0
  76. package/dist/models/v3/mod-events/index.js.map +1 -0
  77. package/dist/models/v3/service/index.d.ts +1 -0
  78. package/dist/models/v3/service/index.js +3 -0
  79. package/dist/models/v3/service/index.js.map +1 -0
  80. package/dist/models/v3/service/service.d.ts +35 -0
  81. package/dist/models/v3/service/service.js +3 -0
  82. package/dist/models/v3/service/service.js.map +1 -0
  83. package/dist/models/v3/service-email-settings/index.d.ts +1 -0
  84. package/dist/models/v3/service-email-settings/index.js +3 -0
  85. package/dist/models/v3/service-email-settings/index.js.map +1 -0
  86. package/dist/models/v3/service-email-settings/service-email-settings.d.ts +6 -0
  87. package/dist/models/v3/service-email-settings/service-email-settings.js +3 -0
  88. package/dist/models/v3/service-email-settings/service-email-settings.js.map +1 -0
  89. package/dist/models/v3/service-phone-number/index.d.ts +1 -0
  90. package/dist/models/v3/service-phone-number/index.js +3 -0
  91. package/dist/models/v3/service-phone-number/index.js.map +1 -0
  92. package/dist/models/v3/service-phone-number/service-phone-number.d.ts +8 -0
  93. package/dist/models/v3/service-phone-number/service-phone-number.js +3 -0
  94. package/dist/models/v3/service-phone-number/service-phone-number.js.map +1 -0
  95. package/dist/models/v3/update-email-request/index.d.ts +1 -0
  96. package/dist/models/v3/update-email-request/index.js +3 -0
  97. package/dist/models/v3/update-email-request/index.js.map +1 -0
  98. package/dist/models/v3/update-email-request/update-email-request.d.ts +4 -0
  99. package/dist/models/v3/update-email-request/update-email-request.js +3 -0
  100. package/dist/models/v3/update-email-request/update-email-request.js.map +1 -0
  101. package/dist/rest/index.d.ts +1 -0
  102. package/dist/rest/index.js +18 -0
  103. package/dist/rest/index.js.map +1 -0
  104. package/dist/rest/v3/callbacks/callbacks-webhook.d.ts +16 -0
  105. package/dist/rest/v3/callbacks/callbacks-webhook.js +61 -0
  106. package/dist/rest/v3/callbacks/callbacks-webhook.js.map +1 -0
  107. package/dist/rest/v3/callbacks/index.d.ts +1 -0
  108. package/dist/rest/v3/callbacks/index.js +18 -0
  109. package/dist/rest/v3/callbacks/index.js.map +1 -0
  110. package/dist/rest/v3/emails/emails-api.d.ts +71 -0
  111. package/dist/rest/v3/emails/emails-api.jest.fixture.d.ts +26 -0
  112. package/dist/rest/v3/emails/emails-api.jest.fixture.js +29 -0
  113. package/dist/rest/v3/emails/emails-api.jest.fixture.js.map +1 -0
  114. package/dist/rest/v3/emails/emails-api.js +148 -0
  115. package/dist/rest/v3/emails/emails-api.js.map +1 -0
  116. package/dist/rest/v3/emails/index.d.ts +2 -0
  117. package/dist/rest/v3/emails/index.js +19 -0
  118. package/dist/rest/v3/emails/index.js.map +1 -0
  119. package/dist/rest/v3/enums.d.ts +1 -0
  120. package/dist/rest/v3/enums.js +3 -0
  121. package/dist/rest/v3/enums.js.map +1 -0
  122. package/dist/rest/v3/fax-domain-api.d.ts +26 -0
  123. package/dist/rest/v3/fax-domain-api.js +68 -0
  124. package/dist/rest/v3/fax-domain-api.js.map +1 -0
  125. package/dist/rest/v3/fax-service.d.ts +16 -0
  126. package/dist/rest/v3/fax-service.js +25 -0
  127. package/dist/rest/v3/fax-service.js.map +1 -0
  128. package/dist/rest/v3/faxes/faxes-api.d.ts +85 -0
  129. package/dist/rest/v3/faxes/faxes-api.jest.fixture.d.ts +26 -0
  130. package/dist/rest/v3/faxes/faxes-api.jest.fixture.js +29 -0
  131. package/dist/rest/v3/faxes/faxes-api.jest.fixture.js.map +1 -0
  132. package/dist/rest/v3/faxes/faxes-api.js +222 -0
  133. package/dist/rest/v3/faxes/faxes-api.js.map +1 -0
  134. package/dist/rest/v3/faxes/index.d.ts +2 -0
  135. package/dist/rest/v3/faxes/index.js +19 -0
  136. package/dist/rest/v3/faxes/index.js.map +1 -0
  137. package/dist/rest/v3/index.d.ts +6 -0
  138. package/dist/rest/v3/index.js +23 -0
  139. package/dist/rest/v3/index.js.map +1 -0
  140. package/dist/rest/v3/services/index.d.ts +2 -0
  141. package/dist/rest/v3/services/index.js +19 -0
  142. package/dist/rest/v3/services/index.js.map +1 -0
  143. package/dist/rest/v3/services/services-api.d.ts +98 -0
  144. package/dist/rest/v3/services/services-api.jest.fixture.d.ts +34 -0
  145. package/dist/rest/v3/services/services-api.jest.fixture.js +37 -0
  146. package/dist/rest/v3/services/services-api.jest.fixture.js.map +1 -0
  147. package/dist/rest/v3/services/services-api.js +199 -0
  148. package/dist/rest/v3/services/services-api.js.map +1 -0
  149. package/package.json +37 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/models/v3/mod-events/base-fax-event/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import { FaxBase64File } from '../../fax-base64-file';
2
+ import { FaxEventFormData, FaxEventJson } from '../base-fax-event';
3
+ export type FaxCompletedEvent = FaxCompletedEventJson | FaxCompletedEventFormData;
4
+ export interface FaxCompletedEventJson extends FaxEventJson {
5
+ /** Always FAX_COMPLETED for this event. */
6
+ event?: 'FAX_COMPLETED';
7
+ /** */
8
+ files?: FaxBase64File[];
9
+ }
10
+ export interface FaxCompletedEventFormData extends FaxEventFormData {
11
+ /** Always FAX_COMPLETED for this event. */
12
+ event?: 'FAX_COMPLETED';
13
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=fax-completed-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fax-completed-event.js","sourceRoot":"","sources":["../../../../../src/models/v3/mod-events/fax-completed-event/fax-completed-event.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type { FaxCompletedEvent, FaxCompletedEventJson, FaxCompletedEventFormData } from './fax-completed-event';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/models/v3/mod-events/fax-completed-event/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { FaxEventFormData, FaxEventJson } from '../base-fax-event';
2
+ import { FaxBase64FileType } from '../../enums';
3
+ export type IncomingFaxEvent = IncomingFaxEventJson | IncomingFaxEventFormData;
4
+ export interface IncomingFaxEventJson extends FaxEventJson {
5
+ /** Always INCOMING_FAX for this event. */
6
+ event?: 'INCOMING_FAX';
7
+ /** The base64 encoded file. */
8
+ file?: string;
9
+ /** The file type of the attached file. */
10
+ fileType?: FaxBase64FileType;
11
+ }
12
+ export interface IncomingFaxEventFormData extends FaxEventFormData {
13
+ /** Always INCOMING_FAX for this event. */
14
+ event?: 'INCOMING_FAX';
15
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=incoming-fax-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incoming-fax-event.js","sourceRoot":"","sources":["../../../../../src/models/v3/mod-events/incoming-fax-event/incoming-fax-event.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type { IncomingFaxEvent, IncomingFaxEventJson, IncomingFaxEventFormData } from './incoming-fax-event';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/models/v3/mod-events/incoming-fax-event/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './fax-completed-event';
2
+ export * from './incoming-fax-event';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./fax-completed-event"), exports);
18
+ __exportStar(require("./incoming-fax-event"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/v3/mod-events/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,uDAAqC"}
@@ -0,0 +1 @@
1
+ export type { ServiceRequest, ServiceResponse } from './service';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/v3/service/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import { ImageConversionMethod, WebhookContentType } from '../enums';
2
+ import { ServiceEmailSettings } from '../service-email-settings';
3
+ /**
4
+ * You can use the default created service, or create multiple services within the same project to have different default behavior for all your different faxing use cases.
5
+ */
6
+ export interface ServiceRequest {
7
+ /** A friendly name for the service. Maximum is 60 characters. */
8
+ name?: string;
9
+ /** The URL to which Sinch will post when someone sends a fax to your Sinch number. To accept incoming faxes this must be set and your Sinch phone number must be configured to receive faxes. */
10
+ incomingWebhookUrl?: string;
11
+ /** The content type of the webhook. */
12
+ webhookContentType?: WebhookContentType;
13
+ /** If set to true this is the service used to create faxes when no serviceId is specified in the API endpoints. */
14
+ defaultForProject?: boolean;
15
+ /** One of your sinch numbers connected to this service or any of your verified numbers */
16
+ defaultFrom?: string;
17
+ /** The number of times to retry sending a fax if it fails. Default is 3. Maximum is 5. */
18
+ numberOfRetries?: number;
19
+ /** The number of seconds to wait between retries if the fax is not yet completed. */
20
+ retryDelaySeconds?: number;
21
+ /** Determines how documents are converted to black and white. Value should be halftone or monochrome. Defaults to value selected on Fax Settings page */
22
+ imageConversionMethod?: ImageConversionMethod;
23
+ /** Save fax documents with sinch when you send faxes */
24
+ saveOutboundFaxDocuments?: boolean;
25
+ /** Save fax documents with sinch when you receive faxes */
26
+ saveInboundFaxDocuments?: boolean;
27
+ /** @see ServiceEmailSettings */
28
+ emailSettings?: ServiceEmailSettings;
29
+ }
30
+ export interface ServiceResponse extends ServiceRequest {
31
+ /** ID of the fax service used. */
32
+ id?: string;
33
+ /** The `Id` of the project associated with the call. */
34
+ projectId?: string;
35
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/models/v3/service/service.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type { ServiceEmailSettings } from './service-email-settings';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/v3/service-email-settings/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export interface ServiceEmailSettings {
2
+ /** The password to encrypt the PDF file */
3
+ pdfPassword?: string;
4
+ /** Use the body of the email as the cover page */
5
+ useBodyAsCoverPage?: boolean;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=service-email-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-email-settings.js","sourceRoot":"","sources":["../../../../src/models/v3/service-email-settings/service-email-settings.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type { ServicePhoneNumber } from './service-phone-number';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/v3/service-phone-number/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ export interface ServicePhoneNumber {
2
+ /** A phone number in [E.164](https://community.sinch.com/t5/Glossary/E-164/ta-p/7537) format, including the leading \'+\'. */
3
+ phoneNumber?: string;
4
+ /** The `Id` of the project associated with the call. */
5
+ projectId?: string;
6
+ /** ID of the fax service used. */
7
+ serviceId?: string;
8
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=service-phone-number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-phone-number.js","sourceRoot":"","sources":["../../../../src/models/v3/service-phone-number/service-phone-number.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type { UpdateEmailRequest } from './update-email-request';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/v3/update-email-request/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export interface UpdateEmailRequest {
2
+ /** List of numbers */
3
+ phoneNumbers: string[];
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=update-email-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-email-request.js","sourceRoot":"","sources":["../../../../src/models/v3/update-email-request/update-email-request.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from './v3';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./v3"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rest/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB"}
@@ -0,0 +1,16 @@
1
+ /// <reference types="node" />
2
+ import { CallbackProcessor } from '@sinch/sdk-client';
3
+ import { IncomingHttpHeaders } from 'http';
4
+ import { FaxCompletedEvent, IncomingFaxEvent } from '../../../models';
5
+ export type FaxWebhookEventParsed = IncomingFaxEvent | FaxCompletedEvent;
6
+ export declare class FaxCallbackWebhooks implements CallbackProcessor<FaxWebhookEventParsed> {
7
+ /**
8
+ * Reviver for a Fax Event
9
+ * This method ensures the object can be treated as a Fax Event and should be called before any action is taken to manipulate the object.
10
+ * @param {any} eventBody - the event body or form containing the Fax event notification.
11
+ * @return {FaxWebhookEventParsed} - The parsed Fax event object
12
+ */
13
+ parseEvent(eventBody: any): FaxWebhookEventParsed;
14
+ private reviveFax;
15
+ validateAuthenticationHeader(_headers: IncomingHttpHeaders, _body: any, _path: string, _method: string): boolean;
16
+ }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FaxCallbackWebhooks = void 0;
4
+ class FaxCallbackWebhooks {
5
+ /**
6
+ * Reviver for a Fax Event
7
+ * This method ensures the object can be treated as a Fax Event and should be called before any action is taken to manipulate the object.
8
+ * @param {any} eventBody - the event body or form containing the Fax event notification.
9
+ * @return {FaxWebhookEventParsed} - The parsed Fax event object
10
+ */
11
+ parseEvent(eventBody) {
12
+ let incomingFaxEvent = null;
13
+ let faxCompletedEvent = null;
14
+ if (eventBody.event) {
15
+ switch (eventBody.event) {
16
+ case 'INCOMING_FAX':
17
+ incomingFaxEvent = eventBody;
18
+ if (eventBody.eventTime) {
19
+ incomingFaxEvent.eventTime = new Date(eventBody.eventTime);
20
+ }
21
+ // In case of multipart/form-data, the server may not have parsed the 'fax' property as a JSON object, so we do it here
22
+ if (typeof eventBody.fax === 'string') {
23
+ incomingFaxEvent.fax = this.reviveFax(eventBody.fax);
24
+ }
25
+ return incomingFaxEvent;
26
+ case 'FAX_COMPLETED':
27
+ faxCompletedEvent = eventBody;
28
+ if (faxCompletedEvent.eventTime) {
29
+ faxCompletedEvent.eventTime = new Date(faxCompletedEvent.eventTime);
30
+ }
31
+ // In case of multipart/form-data, the server may not have parsed the 'fax' property as a JSON object, so we do it here
32
+ if (typeof eventBody.fax === 'string') {
33
+ faxCompletedEvent.fax = this.reviveFax(eventBody.fax);
34
+ }
35
+ return faxCompletedEvent;
36
+ default:
37
+ throw new Error(`Unknown Fax event: ${eventBody.event}`);
38
+ }
39
+ }
40
+ console.log(eventBody);
41
+ throw new Error('Unknown Fax event');
42
+ }
43
+ reviveFax(faxAsString) {
44
+ const fax = JSON.parse(faxAsString);
45
+ if (fax.createTime) {
46
+ fax.createTime = new Date(fax.createTime);
47
+ }
48
+ if (fax.completedTime) {
49
+ fax.completedTime = new Date(fax.completedTime);
50
+ }
51
+ return fax;
52
+ }
53
+ validateAuthenticationHeader(
54
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
55
+ _headers, _body, _path, _method) {
56
+ // No header validation is implemented for Fax API
57
+ return true;
58
+ }
59
+ }
60
+ exports.FaxCallbackWebhooks = FaxCallbackWebhooks;
61
+ //# sourceMappingURL=callbacks-webhook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callbacks-webhook.js","sourceRoot":"","sources":["../../../../src/rest/v3/callbacks/callbacks-webhook.ts"],"names":[],"mappings":";;;AAMA,MAAa,mBAAmB;IAE9B;;;;;OAKG;IACI,UAAU,CAAC,SAAc;QAC9B,IAAI,gBAAgB,GAA4B,IAAI,CAAC;QACrD,IAAI,iBAAiB,GAA6B,IAAI,CAAC;QACvD,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,QAAQ,SAAS,CAAC,KAAK,EAAE,CAAC;gBAC1B,KAAK,cAAc;oBACjB,gBAAgB,GAAG,SAA6B,CAAC;oBACjD,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;wBACxB,gBAAgB,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;oBAC7D,CAAC;oBACD,uHAAuH;oBACvH,IAAI,OAAO,SAAS,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;wBACtC,gBAAgB,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACvD,CAAC;oBACD,OAAO,gBAAgB,CAAC;gBAC1B,KAAK,eAAe;oBAClB,iBAAiB,GAAG,SAA8B,CAAC;oBACnD,IAAI,iBAAiB,CAAC,SAAS,EAAE,CAAC;wBAChC,iBAAiB,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;oBACtE,CAAC;oBACD,uHAAuH;oBACvH,IAAI,OAAO,SAAS,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;wBACtC,iBAAiB,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACxD,CAAC;oBACD,OAAO,iBAAiB,CAAC;gBAC3B;oBACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAEO,SAAS,CAAC,WAAmB;QACnC,MAAM,GAAG,GAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACnB,GAAG,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YACtB,GAAG,CAAC,aAAa,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,4BAA4B;IACjC,6DAA6D;IAC7D,QAA6B,EAAE,KAAU,EAAE,KAAa,EAAE,OAAe;QACzE,kDAAkD;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;CAEF;AA3DD,kDA2DC"}
@@ -0,0 +1 @@
1
+ export * from './callbacks-webhook';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./callbacks-webhook"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rest/v3/callbacks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
@@ -0,0 +1,71 @@
1
+ import { Email, EmailRequest, ServicePhoneNumber, UpdateEmailRequest } from '../../../models';
2
+ import { ApiListPromise, SinchClientParameters } from '@sinch/sdk-client';
3
+ import { FaxDomainApi } from '../fax-domain-api';
4
+ export interface AddEmailToNumbersRequestData {
5
+ /** */
6
+ 'emailRequestBody': EmailRequest;
7
+ }
8
+ export interface DeleteEmailRequestData {
9
+ /** The email you want to delete. */
10
+ 'email': string;
11
+ }
12
+ export interface ListEmailsForProjectRequestData {
13
+ /** Number of items to return on each page. */
14
+ 'pageSize'?: number;
15
+ /** Optional. The page to fetch. If not specified, the first page will be returned. */
16
+ 'page'?: string;
17
+ }
18
+ export interface ListNumbersByEmailRequestData {
19
+ /** The email you want to get numbers for. */
20
+ 'email': string;
21
+ /** Number of items to return on each page. */
22
+ 'pageSize'?: number;
23
+ /** Optional. The page to fetch. If not specified, the first page will be returned. */
24
+ 'page'?: string;
25
+ }
26
+ export interface UpdateEmailRequestData {
27
+ /** The email you want to work with. */
28
+ 'email': string;
29
+ /** */
30
+ 'updateEmailRequestBody'?: UpdateEmailRequest;
31
+ }
32
+ export declare class EmailsApi extends FaxDomainApi {
33
+ /**
34
+ * Initialize your interface
35
+ *
36
+ * @param {SinchClientParameters} sinchClientParameters - The parameters used to initialize the API Client.
37
+ */
38
+ constructor(sinchClientParameters: SinchClientParameters);
39
+ /**
40
+ * Add an email
41
+ * Add an email to be used for sending and receiving faxes.
42
+ * @param { AddEmailToNumbersRequestData } data - The data to provide to the API call.
43
+ */
44
+ addToNumbers(data: AddEmailToNumbersRequestData): Promise<Email>;
45
+ /**
46
+ * Remove email
47
+ * Delete an email and associated numbers to that email to disable that email from sending and receiving faxes.
48
+ * @param { DeleteEmailRequestData } data - The data to provide to the API call.
49
+ */
50
+ delete(data: DeleteEmailRequestData): Promise<void>;
51
+ /**
52
+ * List emails
53
+ * List emails for the project.
54
+ * @param { ListEmailsForProjectRequestData } data - The data to provide to the API call.
55
+ * @return {ApiListPromise<Email>} - The list of emails for the project
56
+ */
57
+ list(data: ListEmailsForProjectRequestData): ApiListPromise<Email>;
58
+ /**
59
+ * Get numbers for email
60
+ * Get configured numbers for an email
61
+ * @param { ListNumbersByEmailRequestData } data - The data to provide to the API call.
62
+ * @return {ApiListPromise<ServicePhoneNumber>}
63
+ */
64
+ listNumbers(data: ListNumbersByEmailRequestData): ApiListPromise<ServicePhoneNumber>;
65
+ /**
66
+ * Update numbers for email
67
+ * Set the numbers for an email.
68
+ * @param { UpdateEmailRequestData } data - The data to provide to the API call.
69
+ */
70
+ update(data: UpdateEmailRequestData): Promise<Email>;
71
+ }
@@ -0,0 +1,26 @@
1
+ /// <reference types="jest" />
2
+ import { Email, ServicePhoneNumber } from '../../../models';
3
+ import { EmailsApi, DeleteEmailRequestData, ListEmailsForProjectRequestData, ListNumbersByEmailRequestData, UpdateEmailRequestData, AddEmailToNumbersRequestData } from './emails-api';
4
+ import { ApiListPromise } from '@sinch/sdk-client';
5
+ export declare class EmailsApiFixture implements Partial<Readonly<EmailsApi>> {
6
+ /**
7
+ * Fixture associated to function addToNumbers
8
+ */
9
+ addToNumbers: jest.Mock<Promise<Email>, [AddEmailToNumbersRequestData]>;
10
+ /**
11
+ * Fixture associated to function deleteEmail
12
+ */
13
+ delete: jest.Mock<Promise<void>, [DeleteEmailRequestData]>;
14
+ /**
15
+ * Fixture associated to function getEmailsForProject
16
+ */
17
+ list: jest.Mock<ApiListPromise<Email>, [ListEmailsForProjectRequestData]>;
18
+ /**
19
+ * Fixture associated to function getNumbersByEmail
20
+ */
21
+ listNumbers: jest.Mock<ApiListPromise<ServicePhoneNumber>, [ListNumbersByEmailRequestData]>;
22
+ /**
23
+ * Fixture associated to function updateEmail
24
+ */
25
+ update: jest.Mock<Promise<Email>, [UpdateEmailRequestData]>;
26
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmailsApiFixture = void 0;
4
+ class EmailsApiFixture {
5
+ constructor() {
6
+ /**
7
+ * Fixture associated to function addToNumbers
8
+ */
9
+ this.addToNumbers = jest.fn();
10
+ /**
11
+ * Fixture associated to function deleteEmail
12
+ */
13
+ this.delete = jest.fn();
14
+ /**
15
+ * Fixture associated to function getEmailsForProject
16
+ */
17
+ this.list = jest.fn();
18
+ /**
19
+ * Fixture associated to function getNumbersByEmail
20
+ */
21
+ this.listNumbers = jest.fn();
22
+ /**
23
+ * Fixture associated to function updateEmail
24
+ */
25
+ this.update = jest.fn();
26
+ }
27
+ }
28
+ exports.EmailsApiFixture = EmailsApiFixture;
29
+ //# sourceMappingURL=emails-api.jest.fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emails-api.jest.fixture.js","sourceRoot":"","sources":["../../../../src/rest/v3/emails/emails-api.jest.fixture.ts"],"names":[],"mappings":";;;AAWA,MAAa,gBAAgB;IAA7B;QAEE;;WAEG;QACI,iBAAY,GAA8D,IAAI,CAAC,EAAE,EAAE,CAAC;QAC3F;;WAEG;QACI,WAAM,GAAuD,IAAI,CAAC,EAAE,EAAE,CAAC;QAC9E;;WAEG;QACI,SAAI,GAAwE,IAAI,CAAC,EAAE,EAAE,CAAC;QAC7F;;WAEG;QACI,gBAAW,GAAmF,IAAI,CAAC,EAAE,EAAE,CAAC;QAC/G;;WAEG;QACI,WAAM,GAAwD,IAAI,CAAC,EAAE,EAAE,CAAC;IACjF,CAAC;CAAA;AAtBD,4CAsBC"}