millionsend 0.3.0 → 0.5.0

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 (56) hide show
  1. package/README.md +174 -26
  2. package/dist/http.d.ts +14 -3
  3. package/dist/http.d.ts.map +1 -1
  4. package/dist/http.js +7 -3
  5. package/dist/http.js.map +1 -1
  6. package/dist/index.d.ts +16 -2
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +22 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/resources/api-keys.d.ts +12 -0
  11. package/dist/resources/api-keys.d.ts.map +1 -0
  12. package/dist/resources/api-keys.js +26 -0
  13. package/dist/resources/api-keys.js.map +1 -0
  14. package/dist/resources/broadcasts.d.ts +1 -0
  15. package/dist/resources/broadcasts.d.ts.map +1 -1
  16. package/dist/resources/broadcasts.js +7 -1
  17. package/dist/resources/broadcasts.js.map +1 -1
  18. package/dist/resources/contact-properties.d.ts +15 -0
  19. package/dist/resources/contact-properties.d.ts.map +1 -0
  20. package/dist/resources/contact-properties.js +43 -0
  21. package/dist/resources/contact-properties.js.map +1 -0
  22. package/dist/resources/contacts.d.ts +24 -2
  23. package/dist/resources/contacts.d.ts.map +1 -1
  24. package/dist/resources/contacts.js +52 -3
  25. package/dist/resources/contacts.js.map +1 -1
  26. package/dist/resources/domains.d.ts +18 -0
  27. package/dist/resources/domains.d.ts.map +1 -0
  28. package/dist/resources/domains.js +54 -0
  29. package/dist/resources/domains.js.map +1 -0
  30. package/dist/resources/emails.d.ts +11 -9
  31. package/dist/resources/emails.d.ts.map +1 -1
  32. package/dist/resources/emails.js +29 -1
  33. package/dist/resources/emails.js.map +1 -1
  34. package/dist/resources/suppressions.d.ts +33 -0
  35. package/dist/resources/suppressions.d.ts.map +1 -0
  36. package/dist/resources/suppressions.js +68 -0
  37. package/dist/resources/suppressions.js.map +1 -0
  38. package/dist/resources/templates.d.ts +22 -0
  39. package/dist/resources/templates.d.ts.map +1 -0
  40. package/dist/resources/templates.js +61 -0
  41. package/dist/resources/templates.js.map +1 -0
  42. package/dist/resources/topics.d.ts +4 -5
  43. package/dist/resources/topics.d.ts.map +1 -1
  44. package/dist/resources/topics.js +9 -1
  45. package/dist/resources/topics.js.map +1 -1
  46. package/dist/resources/usage.d.ts +11 -0
  47. package/dist/resources/usage.d.ts.map +1 -0
  48. package/dist/resources/usage.js +12 -0
  49. package/dist/resources/usage.js.map +1 -0
  50. package/dist/resources/webhooks.d.ts +14 -0
  51. package/dist/resources/webhooks.d.ts.map +1 -0
  52. package/dist/resources/webhooks.js +36 -0
  53. package/dist/resources/webhooks.js.map +1 -0
  54. package/dist/types.d.ts +411 -12
  55. package/dist/types.d.ts.map +1 -1
  56. package/package.json +1 -1
@@ -0,0 +1,61 @@
1
+ import { listQuery } from "../query.js";
2
+ function toWire(o) {
3
+ return {
4
+ name: o.name,
5
+ html: o.html,
6
+ subject: o.subject,
7
+ text: o.text,
8
+ alias: o.alias,
9
+ from: o.from,
10
+ reply_to: o.replyTo,
11
+ variables: o.variables,
12
+ };
13
+ }
14
+ /**
15
+ * Email templates. Every save is live, so `publish` is a no-op kept for
16
+ * Resend compatibility. `id` arguments accept the template id or its alias.
17
+ */
18
+ export class Templates {
19
+ http;
20
+ constructor(http) {
21
+ this.http = http;
22
+ }
23
+ create(payload) {
24
+ return this.http.request({ method: "POST", path: "/templates", body: toWire(payload) });
25
+ }
26
+ list(options) {
27
+ return this.http.request({ method: "GET", path: "/templates", query: listQuery(options) });
28
+ }
29
+ get(idOrAlias) {
30
+ return this.http.request({ method: "GET", path: `/templates/${encodeURIComponent(idOrAlias)}` });
31
+ }
32
+ /** PATCH /templates/:idOrAlias — `alias`/`subject`/`text: null` clear the field. */
33
+ update(idOrAlias, payload) {
34
+ return this.http.request({
35
+ method: "PATCH",
36
+ path: `/templates/${encodeURIComponent(idOrAlias)}`,
37
+ body: toWire(payload),
38
+ });
39
+ }
40
+ remove(idOrAlias) {
41
+ return this.http.request({
42
+ method: "DELETE",
43
+ path: `/templates/${encodeURIComponent(idOrAlias)}`,
44
+ });
45
+ }
46
+ /** POST /templates/:idOrAlias/publish — no-op (templates are always live). */
47
+ publish(idOrAlias) {
48
+ return this.http.request({
49
+ method: "POST",
50
+ path: `/templates/${encodeURIComponent(idOrAlias)}/publish`,
51
+ });
52
+ }
53
+ /** POST /templates/:idOrAlias/duplicate — copies into a new template (id of the copy). */
54
+ duplicate(idOrAlias) {
55
+ return this.http.request({
56
+ method: "POST",
57
+ path: `/templates/${encodeURIComponent(idOrAlias)}/duplicate`,
58
+ });
59
+ }
60
+ }
61
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/resources/templates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAYxC,SAAS,MAAM,CAAC,CAAgD;IAC9D,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,QAAQ,EAAE,CAAC,CAAC,OAAO;QACnB,SAAS,EAAE,CAAC,CAAC,SAAS;KACvB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,SAAS;IACS;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,MAAM,CAAC,OAA8B;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,CAAC,OAAqB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,GAAG,CAAC,SAAiB;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IACnG,CAAC;IAED,oFAAoF;IACpF,MAAM,CAAC,SAAiB,EAAE,OAA8B;QACtD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,EAAE;YACnD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;SACtB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,SAAiB;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,EAAE;SACpD,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,OAAO,CAAC,SAAiB;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,UAAU;SAC5D,CAAC,CAAC;IACL,CAAC;IAED,0FAA0F;IAC1F,SAAS,CAAC,SAAiB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,YAAY;SAC9D,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,16 +1,15 @@
1
1
  import type { Result } from "../error.js";
2
2
  import type { HttpClient } from "../http.js";
3
- import type { CreateTopicOptions, RemoveTopicResponse, Topic, TopicId } from "../types.js";
3
+ import type { CreateTopicOptions, List, RemoveTopicResponse, Topic, TopicId, UpdateTopicOptions } from "../types.js";
4
4
  /** Subscription topics — granular unsubscribe categories for a team. */
5
5
  export declare class Topics {
6
6
  private readonly http;
7
7
  constructor(http: HttpClient);
8
8
  create(payload: CreateTopicOptions): Promise<Result<TopicId>>;
9
9
  get(id: string): Promise<Result<Topic>>;
10
- /** GET /topics — a bare `{ data }` list (topics are unpaginated). */
11
- list(): Promise<Result<{
12
- data: Topic[];
13
- }>>;
10
+ /** GET /topics — the list envelope with `has_more` always false (topics are unpaginated). */
11
+ list(): Promise<Result<List<Topic>>>;
12
+ update(id: string, payload: UpdateTopicOptions): Promise<Result<TopicId>>;
14
13
  remove(id: string): Promise<Result<RemoveTopicResponse>>;
15
14
  }
16
15
  //# sourceMappingURL=topics.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"topics.d.ts","sourceRoot":"","sources":["../../src/resources/topics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3F,wEAAwE;AACxE,qBAAa,MAAM;IACL,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAY7D,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAIvC,qEAAqE;IACrE,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;QAAE,IAAI,EAAE,KAAK,EAAE,CAAA;KAAE,CAAC,CAAC;IAI1C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;CAGzD"}
1
+ {"version":3,"file":"topics.d.ts","sourceRoot":"","sources":["../../src/resources/topics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,kBAAkB,EAClB,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,OAAO,EACP,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAErB,wEAAwE;AACxE,qBAAa,MAAM;IACL,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAa7D,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAIvC,6FAA6F;IAC7F,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAIpC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAQzE,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;CAGzD"}
@@ -12,16 +12,24 @@ export class Topics {
12
12
  name: payload.name,
13
13
  description: payload.description,
14
14
  default_subscription: payload.defaultSubscription,
15
+ visibility: payload.visibility,
15
16
  },
16
17
  });
17
18
  }
18
19
  get(id) {
19
20
  return this.http.request({ method: "GET", path: `/topics/${encodeURIComponent(id)}` });
20
21
  }
21
- /** GET /topics — a bare `{ data }` list (topics are unpaginated). */
22
+ /** GET /topics — the list envelope with `has_more` always false (topics are unpaginated). */
22
23
  list() {
23
24
  return this.http.request({ method: "GET", path: "/topics" });
24
25
  }
26
+ update(id, payload) {
27
+ return this.http.request({
28
+ method: "PATCH",
29
+ path: `/topics/${encodeURIComponent(id)}`,
30
+ body: { name: payload.name, description: payload.description, visibility: payload.visibility },
31
+ });
32
+ }
25
33
  remove(id) {
26
34
  return this.http.request({ method: "DELETE", path: `/topics/${encodeURIComponent(id)}` });
27
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"topics.js","sourceRoot":"","sources":["../../src/resources/topics.ts"],"names":[],"mappings":"AAIA,wEAAwE;AACxE,MAAM,OAAO,MAAM;IACY;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,MAAM,CAAC,OAA2B;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,SAAS;YACf,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,oBAAoB,EAAE,OAAO,CAAC,mBAAmB;aAClD;SACF,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,qEAAqE;IACrE,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,EAAU;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;CACF"}
1
+ {"version":3,"file":"topics.js","sourceRoot":"","sources":["../../src/resources/topics.ts"],"names":[],"mappings":"AAWA,wEAAwE;AACxE,MAAM,OAAO,MAAM;IACY;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,MAAM,CAAC,OAA2B;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,SAAS;YACf,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,oBAAoB,EAAE,OAAO,CAAC,mBAAmB;gBACjD,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B;SACF,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,6FAA6F;IAC7F,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,OAA2B;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,WAAW,kBAAkB,CAAC,EAAE,CAAC,EAAE;YACzC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;SAC/F,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,EAAU;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import type { Result } from "../error.js";
2
+ import type { HttpClient } from "../http.js";
3
+ import type { Usage as UsageReport } from "../types.js";
4
+ /** Plan limits and today's send count (MillionSend extension, no Resend equivalent). */
5
+ export declare class Usage {
6
+ private readonly http;
7
+ constructor(http: HttpClient);
8
+ /** GET /usage */
9
+ get(): Promise<Result<UsageReport>>;
10
+ }
11
+ //# sourceMappingURL=usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../src/resources/usage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,aAAa,CAAC;AAExD,wFAAwF;AACxF,qBAAa,KAAK;IACJ,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C,iBAAiB;IACjB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;CAGpC"}
@@ -0,0 +1,12 @@
1
+ /** Plan limits and today's send count (MillionSend extension, no Resend equivalent). */
2
+ export class Usage {
3
+ http;
4
+ constructor(http) {
5
+ this.http = http;
6
+ }
7
+ /** GET /usage */
8
+ get() {
9
+ return this.http.request({ method: "GET", path: "/usage" });
10
+ }
11
+ }
12
+ //# sourceMappingURL=usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/resources/usage.ts"],"names":[],"mappings":"AAIA,wFAAwF;AACxF,MAAM,OAAO,KAAK;IACa;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,iBAAiB;IACjB,GAAG;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ import type { Result } from "../error.js";
2
+ import type { HttpClient } from "../http.js";
3
+ import type { CreateWebhookOptions, CreateWebhookResponse, List, ListOptions, RemoveWebhookResponse, UpdateWebhookOptions, Webhook, WebhookId, WebhookListItem } from "../types.js";
4
+ /** Event webhooks. `create` and `get` return the signing secret. */
5
+ export declare class Webhooks {
6
+ private readonly http;
7
+ constructor(http: HttpClient);
8
+ create(payload: CreateWebhookOptions): Promise<Result<CreateWebhookResponse>>;
9
+ list(options?: ListOptions): Promise<Result<List<WebhookListItem>>>;
10
+ get(id: string): Promise<Result<Webhook>>;
11
+ update(id: string, payload: UpdateWebhookOptions): Promise<Result<WebhookId>>;
12
+ remove(id: string): Promise<Result<RemoveWebhookResponse>>;
13
+ }
14
+ //# sourceMappingURL=webhooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/resources/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACrB,IAAI,EACJ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,EACpB,OAAO,EACP,SAAS,EACT,eAAe,EAChB,MAAM,aAAa,CAAC;AAErB,oEAAoE;AACpE,qBAAa,QAAQ;IACP,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAY7E,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAInE,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAIzC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAQ7E,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;CAG3D"}
@@ -0,0 +1,36 @@
1
+ import { listQuery } from "../query.js";
2
+ /** Event webhooks. `create` and `get` return the signing secret. */
3
+ export class Webhooks {
4
+ http;
5
+ constructor(http) {
6
+ this.http = http;
7
+ }
8
+ create(payload) {
9
+ return this.http.request({
10
+ method: "POST",
11
+ path: "/webhooks",
12
+ body: {
13
+ endpoint: payload.endpoint,
14
+ events: payload.events,
15
+ signing_secret: payload.signingSecret,
16
+ },
17
+ });
18
+ }
19
+ list(options) {
20
+ return this.http.request({ method: "GET", path: "/webhooks", query: listQuery(options) });
21
+ }
22
+ get(id) {
23
+ return this.http.request({ method: "GET", path: `/webhooks/${encodeURIComponent(id)}` });
24
+ }
25
+ update(id, payload) {
26
+ return this.http.request({
27
+ method: "PATCH",
28
+ path: `/webhooks/${encodeURIComponent(id)}`,
29
+ body: { endpoint: payload.endpoint, events: payload.events, status: payload.status },
30
+ });
31
+ }
32
+ remove(id) {
33
+ return this.http.request({ method: "DELETE", path: `/webhooks/${encodeURIComponent(id)}` });
34
+ }
35
+ }
36
+ //# sourceMappingURL=webhooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/resources/webhooks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAaxC,oEAAoE;AACpE,MAAM,OAAO,QAAQ;IACU;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,MAAM,CAAC,OAA6B;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE;gBACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,cAAc,EAAE,OAAO,CAAC,aAAa;aACtC;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,OAAqB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,OAA6B;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,aAAa,kBAAkB,CAAC,EAAE,CAAC,EAAE;YAC3C,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;SACrF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,EAAU;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;CACF"}