contiguity 0.0.1

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 (111) hide show
  1. package/LICENSE.md +8 -0
  2. package/README.md +1 -0
  3. package/dist/client/fetch.d.ts +30 -0
  4. package/dist/client/fetch.d.ts.map +1 -0
  5. package/dist/client/fetch.js +117 -0
  6. package/dist/contiguity.d.ts +81 -0
  7. package/dist/contiguity.d.ts.map +1 -0
  8. package/dist/contiguity.js +106 -0
  9. package/dist/index.d.ts +28 -0
  10. package/dist/index.d.ts.map +1 -0
  11. package/dist/index.js +12542 -0
  12. package/dist/services/domains/delete.d.ts +32 -0
  13. package/dist/services/domains/delete.d.ts.map +1 -0
  14. package/dist/services/domains/delete.js +43 -0
  15. package/dist/services/domains/get.d.ts +128 -0
  16. package/dist/services/domains/get.d.ts.map +1 -0
  17. package/dist/services/domains/get.js +95 -0
  18. package/dist/services/domains/index.d.ts +34 -0
  19. package/dist/services/domains/index.d.ts.map +1 -0
  20. package/dist/services/domains/index.js +37 -0
  21. package/dist/services/domains/list.d.ts +68 -0
  22. package/dist/services/domains/list.d.ts.map +1 -0
  23. package/dist/services/domains/list.js +52 -0
  24. package/dist/services/domains/register.d.ts +89 -0
  25. package/dist/services/domains/register.d.ts.map +1 -0
  26. package/dist/services/domains/register.js +73 -0
  27. package/dist/services/email/index.d.ts +17 -0
  28. package/dist/services/email/index.d.ts.map +1 -0
  29. package/dist/services/email/index.js +16 -0
  30. package/dist/services/email/send.d.ts +69 -0
  31. package/dist/services/email/send.d.ts.map +1 -0
  32. package/dist/services/email/send.js +84 -0
  33. package/dist/services/imessage/index.d.ts +24 -0
  34. package/dist/services/imessage/index.d.ts.map +1 -0
  35. package/dist/services/imessage/index.js +23 -0
  36. package/dist/services/imessage/send.d.ts +60 -0
  37. package/dist/services/imessage/send.d.ts.map +1 -0
  38. package/dist/services/imessage/send.js +66 -0
  39. package/dist/services/imessage/typing.d.ts +43 -0
  40. package/dist/services/imessage/typing.d.ts.map +1 -0
  41. package/dist/services/imessage/typing.js +55 -0
  42. package/dist/services/lease/available.d.ts +255 -0
  43. package/dist/services/lease/available.d.ts.map +1 -0
  44. package/dist/services/lease/available.js +109 -0
  45. package/dist/services/lease/create.d.ts +139 -0
  46. package/dist/services/lease/create.d.ts.map +1 -0
  47. package/dist/services/lease/create.js +84 -0
  48. package/dist/services/lease/details.d.ts +210 -0
  49. package/dist/services/lease/details.d.ts.map +1 -0
  50. package/dist/services/lease/details.js +71 -0
  51. package/dist/services/lease/get.d.ts +155 -0
  52. package/dist/services/lease/get.d.ts.map +1 -0
  53. package/dist/services/lease/get.js +74 -0
  54. package/dist/services/lease/index.d.ts +50 -0
  55. package/dist/services/lease/index.d.ts.map +1 -0
  56. package/dist/services/lease/index.js +51 -0
  57. package/dist/services/lease/leased.d.ts +308 -0
  58. package/dist/services/lease/leased.d.ts.map +1 -0
  59. package/dist/services/lease/leased.js +114 -0
  60. package/dist/services/lease/terminate.d.ts +81 -0
  61. package/dist/services/lease/terminate.d.ts.map +1 -0
  62. package/dist/services/lease/terminate.js +84 -0
  63. package/dist/services/otp/index.d.ts +28 -0
  64. package/dist/services/otp/index.d.ts.map +1 -0
  65. package/dist/services/otp/index.js +30 -0
  66. package/dist/services/otp/new.d.ts +29 -0
  67. package/dist/services/otp/new.d.ts.map +1 -0
  68. package/dist/services/otp/new.js +44 -0
  69. package/dist/services/otp/resend.d.ts +25 -0
  70. package/dist/services/otp/resend.d.ts.map +1 -0
  71. package/dist/services/otp/resend.js +37 -0
  72. package/dist/services/otp/verify.d.ts +27 -0
  73. package/dist/services/otp/verify.d.ts.map +1 -0
  74. package/dist/services/otp/verify.js +40 -0
  75. package/dist/services/text/index.d.ts +17 -0
  76. package/dist/services/text/index.d.ts.map +1 -0
  77. package/dist/services/text/index.js +16 -0
  78. package/dist/services/text/send.d.ts +28 -0
  79. package/dist/services/text/send.d.ts.map +1 -0
  80. package/dist/services/text/send.js +43 -0
  81. package/dist/services/whatsapp/index.d.ts +24 -0
  82. package/dist/services/whatsapp/index.d.ts.map +1 -0
  83. package/dist/services/whatsapp/index.js +23 -0
  84. package/dist/services/whatsapp/send.d.ts +60 -0
  85. package/dist/services/whatsapp/send.d.ts.map +1 -0
  86. package/dist/services/whatsapp/send.js +66 -0
  87. package/dist/services/whatsapp/typing.d.ts +43 -0
  88. package/dist/services/whatsapp/typing.d.ts.map +1 -0
  89. package/dist/services/whatsapp/typing.js +55 -0
  90. package/dist/types/base.d.ts +38 -0
  91. package/dist/types/base.d.ts.map +1 -0
  92. package/dist/types/base.js +32 -0
  93. package/dist/types/common.d.ts +56 -0
  94. package/dist/types/common.d.ts.map +1 -0
  95. package/dist/types/common.js +48 -0
  96. package/dist/types/error.d.ts +37 -0
  97. package/dist/types/error.d.ts.map +1 -0
  98. package/dist/types/error.js +54 -0
  99. package/dist/types/metadata.d.ts +10 -0
  100. package/dist/types/metadata.d.ts.map +1 -0
  101. package/dist/types/metadata.js +1 -0
  102. package/dist/types/response.d.ts +17 -0
  103. package/dist/types/response.d.ts.map +1 -0
  104. package/dist/types/response.js +17 -0
  105. package/dist/utils/parse.d.ts +8 -0
  106. package/dist/utils/parse.d.ts.map +1 -0
  107. package/dist/utils/parse.js +36 -0
  108. package/dist/utils/request.d.ts +6 -0
  109. package/dist/utils/request.d.ts.map +1 -0
  110. package/dist/utils/request.js +47 -0
  111. package/package.json +46 -0
@@ -0,0 +1,32 @@
1
+ import { z } from "zod";
2
+ export declare const DomainsDeleteRequest: z.ZodObject<{
3
+ domain: z.ZodString;
4
+ }, z.core.$strip>;
5
+ export declare const DomainsDeleteResponse: z.ZodObject<{
6
+ success: z.ZodBoolean;
7
+ message: z.ZodString;
8
+ }, z.core.$strip>;
9
+ export declare const DomainsDeleteResponseBuilder: import("@/types/base").BaseResponseBuilder<z.ZodObject<{
10
+ success: z.ZodBoolean;
11
+ message: z.ZodString;
12
+ }, z.core.$strip>>;
13
+ export type DomainsDeleteParams = z.infer<typeof DomainsDeleteRequest>;
14
+ export type DomainsDeleteResponse = z.infer<typeof DomainsDeleteResponse>;
15
+ /**
16
+ * Deletes a domain from your account
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const response = await contiguity.domains.delete({
21
+ * domain: "example.com"
22
+ * });
23
+ *
24
+ * if (response.success) {
25
+ * console.log(`Domain deleted successfully: ${response.message}`);
26
+ * } else {
27
+ * console.log(`Failed to delete domain: ${response.message}`);
28
+ * }
29
+ * ```
30
+ */
31
+ export declare function _domainsDelete(this: any, params: DomainsDeleteParams): Promise<any>;
32
+ //# sourceMappingURL=delete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/services/domains/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,oBAAoB;;iBAG/B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;iBAKhC,CAAC;AAGH,eAAO,MAAM,4BAA4B;;;kBAAwC,CAAC;AAElF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACvE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE1E;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,CAazF"}
@@ -0,0 +1,43 @@
1
+ import { z } from "zod";
2
+ import { createResponse } from "@/types/base";
3
+ export const DomainsDeleteRequest = z.object({
4
+ /** Domain name to delete */
5
+ domain: z.string().min(1, "Domain cannot be empty"),
6
+ });
7
+ export const DomainsDeleteResponse = z.object({
8
+ /** Whether the deletion was successful */
9
+ success: z.boolean(),
10
+ /** Success message */
11
+ message: z.string(),
12
+ });
13
+ // Using the new base response builder
14
+ export const DomainsDeleteResponseBuilder = createResponse(DomainsDeleteResponse);
15
+ /**
16
+ * Deletes a domain from your account
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const response = await contiguity.domains.delete({
21
+ * domain: "example.com"
22
+ * });
23
+ *
24
+ * if (response.success) {
25
+ * console.log(`Domain deleted successfully: ${response.message}`);
26
+ * } else {
27
+ * console.log(`Failed to delete domain: ${response.message}`);
28
+ * }
29
+ * ```
30
+ */
31
+ export async function _domainsDelete(params) {
32
+ const validatedParams = DomainsDeleteRequest.parse(params);
33
+ const response = await this.request(`/domains/${encodeURIComponent(validatedParams.domain)}`, {
34
+ method: "DELETE",
35
+ });
36
+ return this.parse({
37
+ response,
38
+ schemas: {
39
+ sdk: DomainsDeleteResponse,
40
+ raw: DomainsDeleteResponseBuilder.raw
41
+ }
42
+ });
43
+ }
@@ -0,0 +1,128 @@
1
+ import { z } from "zod";
2
+ export declare const DNSRecord: z.ZodObject<{
3
+ name: z.ZodString;
4
+ value: z.ZodString;
5
+ purpose: z.ZodString;
6
+ }, z.core.$strip>;
7
+ export declare const DNSRecords: z.ZodObject<{
8
+ MX: z.ZodOptional<z.ZodArray<z.ZodObject<{
9
+ name: z.ZodString;
10
+ value: z.ZodString;
11
+ purpose: z.ZodString;
12
+ }, z.core.$strip>>>;
13
+ TXT: z.ZodOptional<z.ZodArray<z.ZodObject<{
14
+ name: z.ZodString;
15
+ value: z.ZodString;
16
+ purpose: z.ZodString;
17
+ }, z.core.$strip>>>;
18
+ CNAME: z.ZodOptional<z.ZodArray<z.ZodObject<{
19
+ name: z.ZodString;
20
+ value: z.ZodString;
21
+ purpose: z.ZodString;
22
+ }, z.core.$strip>>>;
23
+ }, z.core.$strip>;
24
+ export declare const DomainVerifications: z.ZodObject<{
25
+ dkim: z.ZodString;
26
+ mail_from: z.ZodString;
27
+ domain: z.ZodString;
28
+ }, z.core.$strip>;
29
+ export declare const DomainsGetRequest: z.ZodObject<{
30
+ domain: z.ZodString;
31
+ }, z.core.$strip>;
32
+ export declare const DomainsGetResponse: z.ZodObject<{
33
+ domain: z.ZodString;
34
+ status: z.ZodString;
35
+ id: z.ZodString;
36
+ created_at: z.ZodNumber;
37
+ records: z.ZodArray<z.ZodObject<{
38
+ MX: z.ZodOptional<z.ZodArray<z.ZodObject<{
39
+ name: z.ZodString;
40
+ value: z.ZodString;
41
+ purpose: z.ZodString;
42
+ }, z.core.$strip>>>;
43
+ TXT: z.ZodOptional<z.ZodArray<z.ZodObject<{
44
+ name: z.ZodString;
45
+ value: z.ZodString;
46
+ purpose: z.ZodString;
47
+ }, z.core.$strip>>>;
48
+ CNAME: z.ZodOptional<z.ZodArray<z.ZodObject<{
49
+ name: z.ZodString;
50
+ value: z.ZodString;
51
+ purpose: z.ZodString;
52
+ }, z.core.$strip>>>;
53
+ }, z.core.$strip>>;
54
+ region: z.ZodString;
55
+ sending_allowed: z.ZodBoolean;
56
+ verifications: z.ZodObject<{
57
+ dkim: z.ZodString;
58
+ mail_from: z.ZodString;
59
+ domain: z.ZodString;
60
+ }, z.core.$strip>;
61
+ }, z.core.$strip>;
62
+ export declare const DomainsGetResponseBuilder: import("@/types/base").BaseResponseBuilder<z.ZodObject<{
63
+ domain: z.ZodString;
64
+ status: z.ZodString;
65
+ id: z.ZodString;
66
+ created_at: z.ZodNumber;
67
+ records: z.ZodArray<z.ZodObject<{
68
+ MX: z.ZodOptional<z.ZodArray<z.ZodObject<{
69
+ name: z.ZodString;
70
+ value: z.ZodString;
71
+ purpose: z.ZodString;
72
+ }, z.core.$strip>>>;
73
+ TXT: z.ZodOptional<z.ZodArray<z.ZodObject<{
74
+ name: z.ZodString;
75
+ value: z.ZodString;
76
+ purpose: z.ZodString;
77
+ }, z.core.$strip>>>;
78
+ CNAME: z.ZodOptional<z.ZodArray<z.ZodObject<{
79
+ name: z.ZodString;
80
+ value: z.ZodString;
81
+ purpose: z.ZodString;
82
+ }, z.core.$strip>>>;
83
+ }, z.core.$strip>>;
84
+ region: z.ZodString;
85
+ sending_allowed: z.ZodBoolean;
86
+ verifications: z.ZodObject<{
87
+ dkim: z.ZodString;
88
+ mail_from: z.ZodString;
89
+ domain: z.ZodString;
90
+ }, z.core.$strip>;
91
+ }, z.core.$strip>>;
92
+ export type DomainsGetParams = z.infer<typeof DomainsGetRequest>;
93
+ export type DomainsGetResponse = z.infer<typeof DomainsGetResponse>;
94
+ export type DNSRecord = z.infer<typeof DNSRecord>;
95
+ export type DomainVerifications = z.infer<typeof DomainVerifications>;
96
+ /**
97
+ * Gets domain verification status and DNS instructions
98
+ *
99
+ * @example
100
+ * ```typescript
101
+ * const response = await contiguity.domains.get({
102
+ * domain: "example.com"
103
+ * });
104
+ *
105
+ * console.log(`Domain: ${response.domain}`);
106
+ * console.log(`Status: ${response.status}`);
107
+ * console.log(`Sending allowed: ${response.sending_allowed}`);
108
+ * console.log(`DKIM status: ${response.verifications.dkim}`);
109
+ * ```
110
+ *
111
+ * @example
112
+ * ```typescript
113
+ * // Check DNS records
114
+ * const response = await contiguity.domains.get({
115
+ * domain: "example.com"
116
+ * });
117
+ *
118
+ * response.records.forEach(recordGroup => {
119
+ * if (recordGroup.TXT) {
120
+ * recordGroup.TXT.forEach(record => {
121
+ * console.log(`TXT Record: ${record.name} -> ${record.value} (${record.purpose})`);
122
+ * });
123
+ * }
124
+ * });
125
+ * ```
126
+ */
127
+ export declare function _domainsGet(this: any, params: DomainsGetParams): Promise<any>;
128
+ //# sourceMappingURL=get.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../src/services/domains/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,SAAS;;;;iBAOpB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;iBAOrB,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;iBAO9B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;iBAG5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB7B,CAAC;AAGH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAqC,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACjE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACpE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAClD,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAanF"}
@@ -0,0 +1,95 @@
1
+ import { z } from "zod";
2
+ import { createResponse } from "@/types/base";
3
+ // DNS Record schemas based on OpenAPI spec
4
+ export const DNSRecord = z.object({
5
+ /** Record name */
6
+ name: z.string(),
7
+ /** Record value */
8
+ value: z.string(),
9
+ /** Record purpose */
10
+ purpose: z.string(),
11
+ });
12
+ export const DNSRecords = z.object({
13
+ /** MX records */
14
+ MX: z.array(DNSRecord).optional(),
15
+ /** TXT records */
16
+ TXT: z.array(DNSRecord).optional(),
17
+ /** CNAME records */
18
+ CNAME: z.array(DNSRecord).optional(),
19
+ });
20
+ export const DomainVerifications = z.object({
21
+ /** DKIM configuration status */
22
+ dkim: z.string(),
23
+ /** Mail-from domain verification status */
24
+ mail_from: z.string(),
25
+ /** Domain verification status */
26
+ domain: z.string(),
27
+ });
28
+ export const DomainsGetRequest = z.object({
29
+ /** Domain name to get information about */
30
+ domain: z.string().min(1, "Domain cannot be empty"),
31
+ });
32
+ export const DomainsGetResponse = z.object({
33
+ /** The domain name */
34
+ domain: z.string(),
35
+ /** Domain verification status */
36
+ status: z.string(),
37
+ /** Domain ID */
38
+ id: z.string(),
39
+ /** Domain creation timestamp */
40
+ created_at: z.number(),
41
+ /** DNS records grouped by type */
42
+ records: z.array(DNSRecords),
43
+ /** AWS region */
44
+ region: z.string(),
45
+ /** Whether sending is allowed using this domain */
46
+ sending_allowed: z.boolean(),
47
+ /** Verification status details */
48
+ verifications: DomainVerifications,
49
+ });
50
+ // Using the new base response builder - this replaces the manual Flattened/Raw definitions
51
+ export const DomainsGetResponseBuilder = createResponse(DomainsGetResponse);
52
+ /**
53
+ * Gets domain verification status and DNS instructions
54
+ *
55
+ * @example
56
+ * ```typescript
57
+ * const response = await contiguity.domains.get({
58
+ * domain: "example.com"
59
+ * });
60
+ *
61
+ * console.log(`Domain: ${response.domain}`);
62
+ * console.log(`Status: ${response.status}`);
63
+ * console.log(`Sending allowed: ${response.sending_allowed}`);
64
+ * console.log(`DKIM status: ${response.verifications.dkim}`);
65
+ * ```
66
+ *
67
+ * @example
68
+ * ```typescript
69
+ * // Check DNS records
70
+ * const response = await contiguity.domains.get({
71
+ * domain: "example.com"
72
+ * });
73
+ *
74
+ * response.records.forEach(recordGroup => {
75
+ * if (recordGroup.TXT) {
76
+ * recordGroup.TXT.forEach(record => {
77
+ * console.log(`TXT Record: ${record.name} -> ${record.value} (${record.purpose})`);
78
+ * });
79
+ * }
80
+ * });
81
+ * ```
82
+ */
83
+ export async function _domainsGet(params) {
84
+ const validatedParams = DomainsGetRequest.parse(params);
85
+ const response = await this.request(`/domains/${encodeURIComponent(validatedParams.domain)}`, {
86
+ method: "GET",
87
+ });
88
+ return this.parse({
89
+ response,
90
+ schemas: {
91
+ sdk: DomainsGetResponse,
92
+ raw: DomainsGetResponseBuilder.raw
93
+ }
94
+ });
95
+ }
@@ -0,0 +1,34 @@
1
+ import { z } from "zod";
2
+ import { ContiguityClient } from "@/client/fetch";
3
+ import type { WithMetadata } from "@/types/metadata";
4
+ import { DomainsListResponse } from "./list";
5
+ import { type DomainsGetParams, DomainsGetResponse } from "./get";
6
+ import { type DomainsRegisterParams, DomainsRegisterResponse } from "./register";
7
+ import { type DomainsDeleteParams, DomainsDeleteResponse } from "./delete";
8
+ export type DomainsListResponseType = z.infer<typeof DomainsListResponse>;
9
+ export type DomainsGetResponseType = z.infer<typeof DomainsGetResponse>;
10
+ export type DomainsRegisterResponseType = z.infer<typeof DomainsRegisterResponse>;
11
+ export type DomainsDeleteResponseType = z.infer<typeof DomainsDeleteResponse>;
12
+ /**
13
+ * Domains service for managing email domains
14
+ */
15
+ export declare class DomainsService extends ContiguityClient {
16
+ constructor(token: string);
17
+ /**
18
+ * List all domains owned by the user
19
+ */
20
+ list(): Promise<WithMetadata<DomainsListResponseType>>;
21
+ /**
22
+ * Get domain verification status and DNS instructions
23
+ */
24
+ get(params: DomainsGetParams): Promise<WithMetadata<DomainsGetResponseType>>;
25
+ /**
26
+ * Register a domain for email sending
27
+ */
28
+ register(params: DomainsRegisterParams): Promise<WithMetadata<DomainsRegisterResponseType>>;
29
+ /**
30
+ * Delete a domain from your account
31
+ */
32
+ delete(params: DomainsDeleteParams): Promise<WithMetadata<DomainsDeleteResponseType>>;
33
+ }
34
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/domains/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAgB,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,EAAe,KAAK,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAoB,KAAK,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAAkB,KAAK,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAE3F,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACxE,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAClF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE9E;;GAEG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;gBACpC,KAAK,EAAE,MAAM;IAIzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;IAI5D;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;IAIlF;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC;IAIjG;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;CAG9F"}
@@ -0,0 +1,37 @@
1
+ import { ContiguityClient } from "@/client/fetch";
2
+ import { _domainsList } from "./list";
3
+ import { _domainsGet } from "./get";
4
+ import { _domainsRegister } from "./register";
5
+ import { _domainsDelete } from "./delete";
6
+ /**
7
+ * Domains service for managing email domains
8
+ */
9
+ export class DomainsService extends ContiguityClient {
10
+ constructor(token) {
11
+ super(token);
12
+ }
13
+ /**
14
+ * List all domains owned by the user
15
+ */
16
+ async list() {
17
+ return _domainsList.call(this);
18
+ }
19
+ /**
20
+ * Get domain verification status and DNS instructions
21
+ */
22
+ async get(params) {
23
+ return _domainsGet.call(this, params);
24
+ }
25
+ /**
26
+ * Register a domain for email sending
27
+ */
28
+ async register(params) {
29
+ return _domainsRegister.call(this, params);
30
+ }
31
+ /**
32
+ * Delete a domain from your account
33
+ */
34
+ async delete(params) {
35
+ return _domainsDelete.call(this, params);
36
+ }
37
+ }
@@ -0,0 +1,68 @@
1
+ import { z } from "zod";
2
+ export declare const DomainInfo: z.ZodObject<{
3
+ domain: z.ZodString;
4
+ status: z.ZodString;
5
+ created_at: z.ZodNumber;
6
+ id: z.ZodString;
7
+ region: z.ZodString;
8
+ sending_allowed: z.ZodBoolean;
9
+ }, z.core.$strip>;
10
+ export declare const DomainsListResponse: z.ZodObject<{
11
+ domains: z.ZodArray<z.ZodObject<{
12
+ domain: z.ZodString;
13
+ status: z.ZodString;
14
+ created_at: z.ZodNumber;
15
+ id: z.ZodString;
16
+ region: z.ZodString;
17
+ sending_allowed: z.ZodBoolean;
18
+ }, z.core.$strip>>;
19
+ }, z.core.$strip>;
20
+ export declare const DomainsListResponseFlattened: z.ZodObject<{
21
+ metadata: z.ZodObject<{
22
+ id: z.ZodString;
23
+ timestamp: z.ZodNumber;
24
+ api_version: z.ZodString;
25
+ object: z.ZodString;
26
+ }, z.core.$strip>;
27
+ domains: z.ZodArray<z.ZodObject<{
28
+ domain: z.ZodString;
29
+ status: z.ZodString;
30
+ created_at: z.ZodNumber;
31
+ id: z.ZodString;
32
+ region: z.ZodString;
33
+ sending_allowed: z.ZodBoolean;
34
+ }, z.core.$strip>>;
35
+ }, z.core.$strip>;
36
+ export declare const DomainsListResponseRaw: z.ZodObject<{
37
+ id: z.ZodString;
38
+ timestamp: z.ZodNumber;
39
+ api_version: z.ZodString;
40
+ object: z.ZodString;
41
+ data: z.ZodObject<{
42
+ domains: z.ZodArray<z.ZodObject<{
43
+ domain: z.ZodString;
44
+ status: z.ZodString;
45
+ created_at: z.ZodNumber;
46
+ id: z.ZodString;
47
+ region: z.ZodString;
48
+ sending_allowed: z.ZodBoolean;
49
+ }, z.core.$strip>>;
50
+ }, z.core.$strip>;
51
+ }, z.core.$strip>;
52
+ export type DomainsListResponse = z.infer<typeof DomainsListResponse>;
53
+ export type DomainInfo = z.infer<typeof DomainInfo>;
54
+ /**
55
+ * Lists all domains owned by the user
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * const response = await contiguity.domains.list();
60
+ *
61
+ * console.log(`You have ${response.domains.length} domains:`);
62
+ * response.domains.forEach(domain => {
63
+ * console.log(`- ${domain.domain}: ${domain.status} (Region: ${domain.region})`);
64
+ * });
65
+ * ```
66
+ */
67
+ export declare function _domainsList(this: any): Promise<any>;
68
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/services/domains/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,UAAU;;;;;;;iBAarB,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;iBAG9B,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;iBAEvC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;iBAEjC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACtE,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAY1D"}
@@ -0,0 +1,52 @@
1
+ import { z } from "zod";
2
+ import { ContiguityResponse, ContiguityRawResponse } from "@/types/response";
3
+ // Domain object schema based on OpenAPI spec
4
+ export const DomainInfo = z.object({
5
+ /** The domain name */
6
+ domain: z.string(),
7
+ /** Domain verification status */
8
+ status: z.string(),
9
+ /** Domain creation timestamp */
10
+ created_at: z.number(),
11
+ /** Domain ID */
12
+ id: z.string(),
13
+ /** AWS region */
14
+ region: z.string(),
15
+ /** Whether sending is allowed */
16
+ sending_allowed: z.boolean(),
17
+ });
18
+ export const DomainsListResponse = z.object({
19
+ /** List of user's domains */
20
+ domains: z.array(DomainInfo),
21
+ });
22
+ export const DomainsListResponseFlattened = ContiguityResponse.extend({
23
+ domains: z.array(DomainInfo),
24
+ });
25
+ export const DomainsListResponseRaw = ContiguityRawResponse.extend({
26
+ data: DomainsListResponse,
27
+ });
28
+ /**
29
+ * Lists all domains owned by the user
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * const response = await contiguity.domains.list();
34
+ *
35
+ * console.log(`You have ${response.domains.length} domains:`);
36
+ * response.domains.forEach(domain => {
37
+ * console.log(`- ${domain.domain}: ${domain.status} (Region: ${domain.region})`);
38
+ * });
39
+ * ```
40
+ */
41
+ export async function _domainsList() {
42
+ const response = await this.request("/domains/", {
43
+ method: "GET",
44
+ });
45
+ return this.parse({
46
+ response,
47
+ schemas: {
48
+ sdk: DomainsListResponse,
49
+ raw: DomainsListResponseRaw
50
+ }
51
+ });
52
+ }
@@ -0,0 +1,89 @@
1
+ import { z } from "zod";
2
+ export declare const DomainsRegisterRequest: z.ZodObject<{
3
+ domain: z.ZodString;
4
+ region: z.ZodOptional<z.ZodDefault<z.ZodString>>;
5
+ custom_return_path: z.ZodOptional<z.ZodDefault<z.ZodString>>;
6
+ }, z.core.$strip>;
7
+ export declare const DomainsRegisterResponse: z.ZodObject<{
8
+ records: z.ZodArray<z.ZodObject<{
9
+ MX: z.ZodOptional<z.ZodArray<z.ZodObject<{
10
+ name: z.ZodString;
11
+ value: z.ZodString;
12
+ purpose: z.ZodString;
13
+ }, z.core.$strip>>>;
14
+ TXT: z.ZodOptional<z.ZodArray<z.ZodObject<{
15
+ name: z.ZodString;
16
+ value: z.ZodString;
17
+ purpose: z.ZodString;
18
+ }, z.core.$strip>>>;
19
+ CNAME: z.ZodOptional<z.ZodArray<z.ZodObject<{
20
+ name: z.ZodString;
21
+ value: z.ZodString;
22
+ purpose: z.ZodString;
23
+ }, z.core.$strip>>>;
24
+ }, z.core.$strip>>;
25
+ status: z.ZodString;
26
+ region: z.ZodString;
27
+ created_at: z.ZodNumber;
28
+ }, z.core.$strip>;
29
+ export declare const DomainsRegisterResponseBuilder: import("@/types/base").BaseResponseBuilder<z.ZodObject<{
30
+ records: z.ZodArray<z.ZodObject<{
31
+ MX: z.ZodOptional<z.ZodArray<z.ZodObject<{
32
+ name: z.ZodString;
33
+ value: z.ZodString;
34
+ purpose: z.ZodString;
35
+ }, z.core.$strip>>>;
36
+ TXT: z.ZodOptional<z.ZodArray<z.ZodObject<{
37
+ name: z.ZodString;
38
+ value: z.ZodString;
39
+ purpose: z.ZodString;
40
+ }, z.core.$strip>>>;
41
+ CNAME: z.ZodOptional<z.ZodArray<z.ZodObject<{
42
+ name: z.ZodString;
43
+ value: z.ZodString;
44
+ purpose: z.ZodString;
45
+ }, z.core.$strip>>>;
46
+ }, z.core.$strip>>;
47
+ status: z.ZodString;
48
+ region: z.ZodString;
49
+ created_at: z.ZodNumber;
50
+ }, z.core.$strip>>;
51
+ export type DomainsRegisterParams = z.infer<typeof DomainsRegisterRequest>;
52
+ export type DomainsRegisterResponse = z.infer<typeof DomainsRegisterResponse>;
53
+ /**
54
+ * Registers a domain for email sending
55
+ *
56
+ * @example
57
+ * ```typescript
58
+ * const response = await contiguity.domains.register({
59
+ * domain: "example.com"
60
+ * });
61
+ *
62
+ * console.log(`Domain registered with status: ${response.status}`);
63
+ * console.log(`Region: ${response.region}`);
64
+ *
65
+ * // Display DNS records to configure
66
+ * response.records.forEach(recordGroup => {
67
+ * if (recordGroup.TXT) {
68
+ * console.log("TXT Records to add:");
69
+ * recordGroup.TXT.forEach(record => {
70
+ * console.log(` ${record.name}: ${record.value} (${record.purpose})`);
71
+ * });
72
+ * }
73
+ * });
74
+ * ```
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * // Register domain with custom settings
79
+ * const response = await contiguity.domains.register({
80
+ * domain: "example.com",
81
+ * region: "us-east-1",
82
+ * custom_return_path: "mail"
83
+ * });
84
+ *
85
+ * console.log(`Created at: ${new Date(response.created_at).toISOString()}`);
86
+ * ```
87
+ */
88
+ export declare function _domainsRegister(this: any, params: DomainsRegisterParams): Promise<any>;
89
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../src/services/domains/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;iBAOjC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;iBASlC,CAAC;AAGH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;kBAA0C,CAAC;AAEtF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC3E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAgB7F"}
@@ -0,0 +1,73 @@
1
+ import { z } from "zod";
2
+ import { createResponse } from "@/types/base";
3
+ import { DNSRecords } from "./get";
4
+ export const DomainsRegisterRequest = z.object({
5
+ /** Domain name to register */
6
+ domain: z.string().min(1, "Domain cannot be empty"),
7
+ /** AWS region */
8
+ region: z.string().default("us-east-1").optional(),
9
+ /** Custom return path subdomain */
10
+ custom_return_path: z.string().default("contiguity").optional(),
11
+ });
12
+ export const DomainsRegisterResponse = z.object({
13
+ /** DNS records grouped by type */
14
+ records: z.array(DNSRecords),
15
+ /** Domain verification status */
16
+ status: z.string(),
17
+ /** AWS region (us-east-1 is the default and only currently supported region) */
18
+ region: z.string(),
19
+ /** Domain creation timestamp */
20
+ created_at: z.number(),
21
+ });
22
+ // Using the new base response builder
23
+ export const DomainsRegisterResponseBuilder = createResponse(DomainsRegisterResponse);
24
+ /**
25
+ * Registers a domain for email sending
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const response = await contiguity.domains.register({
30
+ * domain: "example.com"
31
+ * });
32
+ *
33
+ * console.log(`Domain registered with status: ${response.status}`);
34
+ * console.log(`Region: ${response.region}`);
35
+ *
36
+ * // Display DNS records to configure
37
+ * response.records.forEach(recordGroup => {
38
+ * if (recordGroup.TXT) {
39
+ * console.log("TXT Records to add:");
40
+ * recordGroup.TXT.forEach(record => {
41
+ * console.log(` ${record.name}: ${record.value} (${record.purpose})`);
42
+ * });
43
+ * }
44
+ * });
45
+ * ```
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * // Register domain with custom settings
50
+ * const response = await contiguity.domains.register({
51
+ * domain: "example.com",
52
+ * region: "us-east-1",
53
+ * custom_return_path: "mail"
54
+ * });
55
+ *
56
+ * console.log(`Created at: ${new Date(response.created_at).toISOString()}`);
57
+ * ```
58
+ */
59
+ export async function _domainsRegister(params) {
60
+ const validatedParams = DomainsRegisterRequest.parse(params);
61
+ const { domain, ...bodyParams } = validatedParams;
62
+ const response = await this.request(`/domains/${encodeURIComponent(domain)}`, {
63
+ method: "POST",
64
+ body: JSON.stringify(bodyParams),
65
+ });
66
+ return this.parse({
67
+ response,
68
+ schemas: {
69
+ sdk: DomainsRegisterResponse,
70
+ raw: DomainsRegisterResponseBuilder.raw
71
+ }
72
+ });
73
+ }