@zyphr-dev/node-sdk 0.1.5 → 0.1.6

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 (50) hide show
  1. package/dist/src/models/Device.d.ts +9 -21
  2. package/dist/src/models/Device.d.ts.map +1 -1
  3. package/dist/src/models/Device.js +11 -20
  4. package/dist/src/models/Device.js.map +1 -1
  5. package/dist/src/models/DeviceStats.d.ts +6 -0
  6. package/dist/src/models/DeviceStats.d.ts.map +1 -1
  7. package/dist/src/models/DeviceStats.js +4 -2
  8. package/dist/src/models/DeviceStats.js.map +1 -1
  9. package/dist/src/models/PushMessage.d.ts +35 -14
  10. package/dist/src/models/PushMessage.d.ts.map +1 -1
  11. package/dist/src/models/PushMessage.js +24 -17
  12. package/dist/src/models/PushMessage.js.map +1 -1
  13. package/dist/src/models/PushMessageDetail.d.ts +44 -36
  14. package/dist/src/models/PushMessageDetail.d.ts.map +1 -1
  15. package/dist/src/models/PushMessageDetail.js +29 -25
  16. package/dist/src/models/PushMessageDetail.js.map +1 -1
  17. package/dist/src/models/PushMessageDetailAllOfActionButtons.d.ts +51 -0
  18. package/dist/src/models/PushMessageDetailAllOfActionButtons.d.ts.map +1 -0
  19. package/dist/src/models/PushMessageDetailAllOfActionButtons.js +55 -0
  20. package/dist/src/models/PushMessageDetailAllOfActionButtons.js.map +1 -0
  21. package/dist/src/models/RegisterDeviceRequest.d.ts +7 -35
  22. package/dist/src/models/RegisterDeviceRequest.d.ts.map +1 -1
  23. package/dist/src/models/RegisterDeviceRequest.js +6 -14
  24. package/dist/src/models/RegisterDeviceRequest.js.map +1 -1
  25. package/dist/src/models/SendPushRequest.d.ts +83 -29
  26. package/dist/src/models/SendPushRequest.d.ts.map +1 -1
  27. package/dist/src/models/SendPushRequest.js +35 -27
  28. package/dist/src/models/SendPushRequest.js.map +1 -1
  29. package/dist/src/models/{PushPayload.d.ts → SendPushRequestActionButtonsInner.d.ts} +17 -43
  30. package/dist/src/models/SendPushRequestActionButtonsInner.d.ts.map +1 -0
  31. package/dist/src/models/{PushPayload.js → SendPushRequestActionButtonsInner.js} +22 -30
  32. package/dist/src/models/SendPushRequestActionButtonsInner.js.map +1 -0
  33. package/dist/src/models/index.d.ts +2 -1
  34. package/dist/src/models/index.d.ts.map +1 -1
  35. package/dist/src/models/index.js +2 -1
  36. package/dist/src/models/index.js.map +1 -1
  37. package/package.json +1 -1
  38. package/src/.openapi-generator/FILES +2 -1
  39. package/src/src/models/Device.ts +17 -34
  40. package/src/src/models/DeviceStats.ts +10 -2
  41. package/src/src/models/PushMessage.ts +47 -22
  42. package/src/src/models/PushMessageDetail.ts +66 -50
  43. package/src/src/models/PushMessageDetailAllOfActionButtons.ts +89 -0
  44. package/src/src/models/RegisterDeviceRequest.ts +10 -49
  45. package/src/src/models/SendPushRequest.ts +118 -52
  46. package/src/src/models/SendPushRequestActionButtonsInner.ts +91 -0
  47. package/src/src/models/index.ts +2 -1
  48. package/dist/src/models/PushPayload.d.ts.map +0 -1
  49. package/dist/src/models/PushPayload.js.map +0 -1
  50. package/src/src/models/PushPayload.ts +0 -123
@@ -36,7 +36,13 @@ export interface PushMessage {
36
36
  * @type {string}
37
37
  * @memberof PushMessage
38
38
  */
39
- subscriberId?: string | null;
39
+ userId?: string;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof PushMessage
44
+ */
45
+ platform?: PushMessagePlatformEnum;
40
46
  /**
41
47
  *
42
48
  * @type {string}
@@ -49,6 +55,12 @@ export interface PushMessage {
49
55
  * @memberof PushMessage
50
56
  */
51
57
  body?: string;
58
+ /**
59
+ *
60
+ * @type {{ [key: string]: any; }}
61
+ * @memberof PushMessage
62
+ */
63
+ data?: { [key: string]: any; };
52
64
  /**
53
65
  *
54
66
  * @type {string}
@@ -57,16 +69,16 @@ export interface PushMessage {
57
69
  status?: PushMessageStatusEnum;
58
70
  /**
59
71
  *
60
- * @type {string}
72
+ * @type {Array<string>}
61
73
  * @memberof PushMessage
62
74
  */
63
- platform?: PushMessagePlatformEnum;
75
+ tags?: Array<string>;
64
76
  /**
65
77
  *
66
78
  * @type {Date}
67
79
  * @memberof PushMessage
68
80
  */
69
- createdAt?: Date;
81
+ queuedAt?: Date | null;
70
82
  /**
71
83
  *
72
84
  * @type {Date}
@@ -79,21 +91,15 @@ export interface PushMessage {
79
91
  * @memberof PushMessage
80
92
  */
81
93
  deliveredAt?: Date | null;
94
+ /**
95
+ *
96
+ * @type {Date}
97
+ * @memberof PushMessage
98
+ */
99
+ createdAt?: Date;
82
100
  }
83
101
 
84
102
 
85
- /**
86
- * @export
87
- */
88
- export const PushMessageStatusEnum = {
89
- PENDING: 'pending',
90
- QUEUED: 'queued',
91
- SENT: 'sent',
92
- DELIVERED: 'delivered',
93
- FAILED: 'failed'
94
- } as const;
95
- export type PushMessageStatusEnum = typeof PushMessageStatusEnum[keyof typeof PushMessageStatusEnum];
96
-
97
103
  /**
98
104
  * @export
99
105
  */
@@ -104,6 +110,19 @@ export const PushMessagePlatformEnum = {
104
110
  } as const;
105
111
  export type PushMessagePlatformEnum = typeof PushMessagePlatformEnum[keyof typeof PushMessagePlatformEnum];
106
112
 
113
+ /**
114
+ * @export
115
+ */
116
+ export const PushMessageStatusEnum = {
117
+ QUEUED: 'queued',
118
+ SENDING: 'sending',
119
+ SENT: 'sent',
120
+ DELIVERED: 'delivered',
121
+ FAILED: 'failed',
122
+ EXPIRED: 'expired'
123
+ } as const;
124
+ export type PushMessageStatusEnum = typeof PushMessageStatusEnum[keyof typeof PushMessageStatusEnum];
125
+
107
126
 
108
127
  /**
109
128
  * Check if a given object implements the PushMessage interface.
@@ -124,14 +143,17 @@ export function PushMessageFromJSONTyped(json: any, ignoreDiscriminator: boolean
124
143
 
125
144
  'id': json['id'] == null ? undefined : json['id'],
126
145
  'deviceId': json['device_id'] == null ? undefined : json['device_id'],
127
- 'subscriberId': json['subscriber_id'] == null ? undefined : json['subscriber_id'],
146
+ 'userId': json['user_id'] == null ? undefined : json['user_id'],
147
+ 'platform': json['platform'] == null ? undefined : json['platform'],
128
148
  'title': json['title'] == null ? undefined : json['title'],
129
149
  'body': json['body'] == null ? undefined : json['body'],
150
+ 'data': json['data'] == null ? undefined : json['data'],
130
151
  'status': json['status'] == null ? undefined : json['status'],
131
- 'platform': json['platform'] == null ? undefined : json['platform'],
132
- 'createdAt': json['created_at'] == null ? undefined : (new Date(json['created_at'])),
152
+ 'tags': json['tags'] == null ? undefined : json['tags'],
153
+ 'queuedAt': json['queued_at'] == null ? undefined : (new Date(json['queued_at'])),
133
154
  'sentAt': json['sent_at'] == null ? undefined : (new Date(json['sent_at'])),
134
155
  'deliveredAt': json['delivered_at'] == null ? undefined : (new Date(json['delivered_at'])),
156
+ 'createdAt': json['created_at'] == null ? undefined : (new Date(json['created_at'])),
135
157
  };
136
158
  }
137
159
 
@@ -148,14 +170,17 @@ export function PushMessageToJSONTyped(value?: PushMessage | null, ignoreDiscrim
148
170
 
149
171
  'id': value['id'],
150
172
  'device_id': value['deviceId'],
151
- 'subscriber_id': value['subscriberId'],
173
+ 'user_id': value['userId'],
174
+ 'platform': value['platform'],
152
175
  'title': value['title'],
153
176
  'body': value['body'],
177
+ 'data': value['data'],
154
178
  'status': value['status'],
155
- 'platform': value['platform'],
156
- 'created_at': value['createdAt'] == null ? undefined : ((value['createdAt']).toISOString()),
179
+ 'tags': value['tags'],
180
+ 'queued_at': value['queuedAt'] == null ? undefined : ((value['queuedAt'] as any).toISOString()),
157
181
  'sent_at': value['sentAt'] == null ? undefined : ((value['sentAt'] as any).toISOString()),
158
182
  'delivered_at': value['deliveredAt'] == null ? undefined : ((value['deliveredAt'] as any).toISOString()),
183
+ 'created_at': value['createdAt'] == null ? undefined : ((value['createdAt']).toISOString()),
159
184
  };
160
185
  }
161
186
 
@@ -20,6 +20,13 @@ import {
20
20
  PushEventToJSON,
21
21
  PushEventToJSONTyped,
22
22
  } from './PushEvent';
23
+ import type { PushMessageDetailAllOfActionButtons } from './PushMessageDetailAllOfActionButtons';
24
+ import {
25
+ PushMessageDetailAllOfActionButtonsFromJSON,
26
+ PushMessageDetailAllOfActionButtonsFromJSONTyped,
27
+ PushMessageDetailAllOfActionButtonsToJSON,
28
+ PushMessageDetailAllOfActionButtonsToJSONTyped,
29
+ } from './PushMessageDetailAllOfActionButtons';
23
30
 
24
31
  /**
25
32
  *
@@ -44,7 +51,13 @@ export interface PushMessageDetail {
44
51
  * @type {string}
45
52
  * @memberof PushMessageDetail
46
53
  */
47
- subscriberId?: string | null;
54
+ userId?: string;
55
+ /**
56
+ *
57
+ * @type {string}
58
+ * @memberof PushMessageDetail
59
+ */
60
+ platform?: PushMessageDetailPlatformEnum;
48
61
  /**
49
62
  *
50
63
  * @type {string}
@@ -57,6 +70,12 @@ export interface PushMessageDetail {
57
70
  * @memberof PushMessageDetail
58
71
  */
59
72
  body?: string;
73
+ /**
74
+ *
75
+ * @type {{ [key: string]: any; }}
76
+ * @memberof PushMessageDetail
77
+ */
78
+ data?: { [key: string]: any; };
60
79
  /**
61
80
  *
62
81
  * @type {string}
@@ -65,16 +84,16 @@ export interface PushMessageDetail {
65
84
  status?: PushMessageDetailStatusEnum;
66
85
  /**
67
86
  *
68
- * @type {string}
87
+ * @type {Array<string>}
69
88
  * @memberof PushMessageDetail
70
89
  */
71
- platform?: PushMessageDetailPlatformEnum;
90
+ tags?: Array<string>;
72
91
  /**
73
92
  *
74
93
  * @type {Date}
75
94
  * @memberof PushMessageDetail
76
95
  */
77
- createdAt?: Date;
96
+ queuedAt?: Date | null;
78
97
  /**
79
98
  *
80
99
  * @type {Date}
@@ -89,70 +108,64 @@ export interface PushMessageDetail {
89
108
  deliveredAt?: Date | null;
90
109
  /**
91
110
  *
92
- * @type {string}
111
+ * @type {Date}
93
112
  * @memberof PushMessageDetail
94
113
  */
95
- batchId?: string | null;
114
+ createdAt?: Date;
96
115
  /**
97
116
  *
98
117
  * @type {string}
99
118
  * @memberof PushMessageDetail
100
119
  */
101
- userId?: string | null;
120
+ batchId?: string | null;
102
121
  /**
103
122
  *
104
- * @type {{ [key: string]: any; }}
123
+ * @type {number}
105
124
  * @memberof PushMessageDetail
106
125
  */
107
- data?: { [key: string]: any; };
126
+ badge?: number | null;
108
127
  /**
109
128
  *
110
129
  * @type {string}
111
130
  * @memberof PushMessageDetail
112
131
  */
113
- badge?: string;
132
+ sound?: string | null;
114
133
  /**
115
134
  *
116
135
  * @type {string}
117
136
  * @memberof PushMessageDetail
118
137
  */
119
- sound?: string;
138
+ imageUrl?: string | null;
120
139
  /**
121
140
  *
122
- * @type {string}
141
+ * @type {boolean}
123
142
  * @memberof PushMessageDetail
124
143
  */
125
- imageUrl?: string;
144
+ contentAvailable?: boolean;
126
145
  /**
127
146
  *
128
- * @type {string}
147
+ * @type {Array<PushMessageDetailAllOfActionButtons>}
129
148
  * @memberof PushMessageDetail
130
149
  */
131
- statusReason?: string | null;
150
+ actionButtons?: Array<PushMessageDetailAllOfActionButtons> | null;
132
151
  /**
133
152
  *
134
153
  * @type {string}
135
154
  * @memberof PushMessageDetail
136
155
  */
137
- providerMessageId?: string | null;
156
+ statusReason?: string | null;
138
157
  /**
139
158
  *
140
- * @type {Array<string>}
159
+ * @type {string}
141
160
  * @memberof PushMessageDetail
142
161
  */
143
- tags?: Array<string>;
162
+ providerMessageId?: string | null;
144
163
  /**
145
164
  *
146
165
  * @type {{ [key: string]: any; }}
147
166
  * @memberof PushMessageDetail
148
167
  */
149
168
  metadata?: { [key: string]: any; };
150
- /**
151
- *
152
- * @type {Date}
153
- * @memberof PushMessageDetail
154
- */
155
- queuedAt?: Date | null;
156
169
  /**
157
170
  *
158
171
  * @type {Date}
@@ -168,18 +181,6 @@ export interface PushMessageDetail {
168
181
  }
169
182
 
170
183
 
171
- /**
172
- * @export
173
- */
174
- export const PushMessageDetailStatusEnum = {
175
- PENDING: 'pending',
176
- QUEUED: 'queued',
177
- SENT: 'sent',
178
- DELIVERED: 'delivered',
179
- FAILED: 'failed'
180
- } as const;
181
- export type PushMessageDetailStatusEnum = typeof PushMessageDetailStatusEnum[keyof typeof PushMessageDetailStatusEnum];
182
-
183
184
  /**
184
185
  * @export
185
186
  */
@@ -190,6 +191,19 @@ export const PushMessageDetailPlatformEnum = {
190
191
  } as const;
191
192
  export type PushMessageDetailPlatformEnum = typeof PushMessageDetailPlatformEnum[keyof typeof PushMessageDetailPlatformEnum];
192
193
 
194
+ /**
195
+ * @export
196
+ */
197
+ export const PushMessageDetailStatusEnum = {
198
+ QUEUED: 'queued',
199
+ SENDING: 'sending',
200
+ SENT: 'sent',
201
+ DELIVERED: 'delivered',
202
+ FAILED: 'failed',
203
+ EXPIRED: 'expired'
204
+ } as const;
205
+ export type PushMessageDetailStatusEnum = typeof PushMessageDetailStatusEnum[keyof typeof PushMessageDetailStatusEnum];
206
+
193
207
 
194
208
  /**
195
209
  * Check if a given object implements the PushMessageDetail interface.
@@ -210,25 +224,26 @@ export function PushMessageDetailFromJSONTyped(json: any, ignoreDiscriminator: b
210
224
 
211
225
  'id': json['id'] == null ? undefined : json['id'],
212
226
  'deviceId': json['device_id'] == null ? undefined : json['device_id'],
213
- 'subscriberId': json['subscriber_id'] == null ? undefined : json['subscriber_id'],
227
+ 'userId': json['user_id'] == null ? undefined : json['user_id'],
228
+ 'platform': json['platform'] == null ? undefined : json['platform'],
214
229
  'title': json['title'] == null ? undefined : json['title'],
215
230
  'body': json['body'] == null ? undefined : json['body'],
231
+ 'data': json['data'] == null ? undefined : json['data'],
216
232
  'status': json['status'] == null ? undefined : json['status'],
217
- 'platform': json['platform'] == null ? undefined : json['platform'],
218
- 'createdAt': json['created_at'] == null ? undefined : (new Date(json['created_at'])),
233
+ 'tags': json['tags'] == null ? undefined : json['tags'],
234
+ 'queuedAt': json['queued_at'] == null ? undefined : (new Date(json['queued_at'])),
219
235
  'sentAt': json['sent_at'] == null ? undefined : (new Date(json['sent_at'])),
220
236
  'deliveredAt': json['delivered_at'] == null ? undefined : (new Date(json['delivered_at'])),
237
+ 'createdAt': json['created_at'] == null ? undefined : (new Date(json['created_at'])),
221
238
  'batchId': json['batch_id'] == null ? undefined : json['batch_id'],
222
- 'userId': json['user_id'] == null ? undefined : json['user_id'],
223
- 'data': json['data'] == null ? undefined : json['data'],
224
239
  'badge': json['badge'] == null ? undefined : json['badge'],
225
240
  'sound': json['sound'] == null ? undefined : json['sound'],
226
241
  'imageUrl': json['image_url'] == null ? undefined : json['image_url'],
242
+ 'contentAvailable': json['content_available'] == null ? undefined : json['content_available'],
243
+ 'actionButtons': json['action_buttons'] == null ? undefined : ((json['action_buttons'] as Array<any>).map(PushMessageDetailAllOfActionButtonsFromJSON)),
227
244
  'statusReason': json['status_reason'] == null ? undefined : json['status_reason'],
228
245
  'providerMessageId': json['provider_message_id'] == null ? undefined : json['provider_message_id'],
229
- 'tags': json['tags'] == null ? undefined : json['tags'],
230
246
  'metadata': json['metadata'] == null ? undefined : json['metadata'],
231
- 'queuedAt': json['queued_at'] == null ? undefined : (new Date(json['queued_at'])),
232
247
  'failedAt': json['failed_at'] == null ? undefined : (new Date(json['failed_at'])),
233
248
  'events': json['events'] == null ? undefined : ((json['events'] as Array<any>).map(PushEventFromJSON)),
234
249
  };
@@ -247,25 +262,26 @@ export function PushMessageDetailToJSONTyped(value?: PushMessageDetail | null, i
247
262
 
248
263
  'id': value['id'],
249
264
  'device_id': value['deviceId'],
250
- 'subscriber_id': value['subscriberId'],
265
+ 'user_id': value['userId'],
266
+ 'platform': value['platform'],
251
267
  'title': value['title'],
252
268
  'body': value['body'],
269
+ 'data': value['data'],
253
270
  'status': value['status'],
254
- 'platform': value['platform'],
255
- 'created_at': value['createdAt'] == null ? undefined : ((value['createdAt']).toISOString()),
271
+ 'tags': value['tags'],
272
+ 'queued_at': value['queuedAt'] == null ? undefined : ((value['queuedAt'] as any).toISOString()),
256
273
  'sent_at': value['sentAt'] == null ? undefined : ((value['sentAt'] as any).toISOString()),
257
274
  'delivered_at': value['deliveredAt'] == null ? undefined : ((value['deliveredAt'] as any).toISOString()),
275
+ 'created_at': value['createdAt'] == null ? undefined : ((value['createdAt']).toISOString()),
258
276
  'batch_id': value['batchId'],
259
- 'user_id': value['userId'],
260
- 'data': value['data'],
261
277
  'badge': value['badge'],
262
278
  'sound': value['sound'],
263
279
  'image_url': value['imageUrl'],
280
+ 'content_available': value['contentAvailable'],
281
+ 'action_buttons': value['actionButtons'] == null ? undefined : ((value['actionButtons'] as Array<any>).map(PushMessageDetailAllOfActionButtonsToJSON)),
264
282
  'status_reason': value['statusReason'],
265
283
  'provider_message_id': value['providerMessageId'],
266
- 'tags': value['tags'],
267
284
  'metadata': value['metadata'],
268
- 'queued_at': value['queuedAt'] == null ? undefined : ((value['queuedAt'] as any).toISOString()),
269
285
  'failed_at': value['failedAt'] == null ? undefined : ((value['failedAt'] as any).toISOString()),
270
286
  'events': value['events'] == null ? undefined : ((value['events'] as Array<any>).map(PushEventToJSON)),
271
287
  };
@@ -0,0 +1,89 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Zyphr API
5
+ * Zyphr is a multi-channel notification platform that enables developers to send emails, push notifications, SMS, and in-app messages through a unified API. ## Authentication All API requests require authentication using an API key. Include your API key in the `X-API-Key` header: ``` X-API-Key: zy_live_xxxxxxxxxxxx ``` API keys can be created in the Zyphr Dashboard. Use `zy_test_*` keys for testing and `zy_live_*` keys for production. ## Rate Limiting The API implements rate limiting to ensure fair usage. Rate limit information is included in response headers: - `X-RateLimit-Limit`: Maximum requests per window - `X-RateLimit-Remaining`: Remaining requests in current window - `X-RateLimit-Reset`: Unix timestamp when the window resets ## Errors All errors follow a consistent format: ```json { \"error\": { \"code\": \"error_code\", \"message\": \"Human readable message\", \"details\": {} }, \"meta\": { \"request_id\": \"req_xxxx\" } } ```
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@zyphr.dev
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface PushMessageDetailAllOfActionButtons
20
+ */
21
+ export interface PushMessageDetailAllOfActionButtons {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof PushMessageDetailAllOfActionButtons
26
+ */
27
+ id?: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof PushMessageDetailAllOfActionButtons
32
+ */
33
+ title?: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof PushMessageDetailAllOfActionButtons
38
+ */
39
+ action?: string;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof PushMessageDetailAllOfActionButtons
44
+ */
45
+ deepLink?: string;
46
+ }
47
+
48
+ /**
49
+ * Check if a given object implements the PushMessageDetailAllOfActionButtons interface.
50
+ */
51
+ export function instanceOfPushMessageDetailAllOfActionButtons(value: object): value is PushMessageDetailAllOfActionButtons {
52
+ return true;
53
+ }
54
+
55
+ export function PushMessageDetailAllOfActionButtonsFromJSON(json: any): PushMessageDetailAllOfActionButtons {
56
+ return PushMessageDetailAllOfActionButtonsFromJSONTyped(json, false);
57
+ }
58
+
59
+ export function PushMessageDetailAllOfActionButtonsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PushMessageDetailAllOfActionButtons {
60
+ if (json == null) {
61
+ return json;
62
+ }
63
+ return {
64
+
65
+ 'id': json['id'] == null ? undefined : json['id'],
66
+ 'title': json['title'] == null ? undefined : json['title'],
67
+ 'action': json['action'] == null ? undefined : json['action'],
68
+ 'deepLink': json['deep_link'] == null ? undefined : json['deep_link'],
69
+ };
70
+ }
71
+
72
+ export function PushMessageDetailAllOfActionButtonsToJSON(json: any): PushMessageDetailAllOfActionButtons {
73
+ return PushMessageDetailAllOfActionButtonsToJSONTyped(json, false);
74
+ }
75
+
76
+ export function PushMessageDetailAllOfActionButtonsToJSONTyped(value?: PushMessageDetailAllOfActionButtons | null, ignoreDiscriminator: boolean = false): any {
77
+ if (value == null) {
78
+ return value;
79
+ }
80
+
81
+ return {
82
+
83
+ 'id': value['id'],
84
+ 'title': value['title'],
85
+ 'action': value['action'],
86
+ 'deep_link': value['deepLink'],
87
+ };
88
+ }
89
+
@@ -20,17 +20,11 @@ import { mapValues } from '../runtime';
20
20
  */
21
21
  export interface RegisterDeviceRequest {
22
22
  /**
23
- *
23
+ * User or subscriber ID to associate with the device
24
24
  * @type {string}
25
25
  * @memberof RegisterDeviceRequest
26
26
  */
27
- subscriberId?: string;
28
- /**
29
- * External ID to look up subscriber
30
- * @type {string}
31
- * @memberof RegisterDeviceRequest
32
- */
33
- externalUserId?: string;
27
+ userId: string;
34
28
  /**
35
29
  *
36
30
  * @type {string}
@@ -44,35 +38,11 @@ export interface RegisterDeviceRequest {
44
38
  */
45
39
  token: string;
46
40
  /**
47
- *
48
- * @type {string}
49
- * @memberof RegisterDeviceRequest
50
- */
51
- appVersion?: string;
52
- /**
53
- *
54
- * @type {string}
55
- * @memberof RegisterDeviceRequest
56
- */
57
- deviceModel?: string;
58
- /**
59
- *
60
- * @type {string}
61
- * @memberof RegisterDeviceRequest
62
- */
63
- osVersion?: string;
64
- /**
65
- *
66
- * @type {string}
67
- * @memberof RegisterDeviceRequest
68
- */
69
- timezone?: string;
70
- /**
71
- *
72
- * @type {string}
41
+ * Additional device metadata
42
+ * @type {{ [key: string]: any; }}
73
43
  * @memberof RegisterDeviceRequest
74
44
  */
75
- locale?: string;
45
+ metadata?: { [key: string]: any; };
76
46
  }
77
47
 
78
48
 
@@ -91,6 +61,7 @@ export type RegisterDeviceRequestPlatformEnum = typeof RegisterDeviceRequestPlat
91
61
  * Check if a given object implements the RegisterDeviceRequest interface.
92
62
  */
93
63
  export function instanceOfRegisterDeviceRequest(value: object): value is RegisterDeviceRequest {
64
+ if (!('userId' in value) || value['userId'] === undefined) return false;
94
65
  if (!('platform' in value) || value['platform'] === undefined) return false;
95
66
  if (!('token' in value) || value['token'] === undefined) return false;
96
67
  return true;
@@ -106,15 +77,10 @@ export function RegisterDeviceRequestFromJSONTyped(json: any, ignoreDiscriminato
106
77
  }
107
78
  return {
108
79
 
109
- 'subscriberId': json['subscriber_id'] == null ? undefined : json['subscriber_id'],
110
- 'externalUserId': json['external_user_id'] == null ? undefined : json['external_user_id'],
80
+ 'userId': json['user_id'],
111
81
  'platform': json['platform'],
112
82
  'token': json['token'],
113
- 'appVersion': json['app_version'] == null ? undefined : json['app_version'],
114
- 'deviceModel': json['device_model'] == null ? undefined : json['device_model'],
115
- 'osVersion': json['os_version'] == null ? undefined : json['os_version'],
116
- 'timezone': json['timezone'] == null ? undefined : json['timezone'],
117
- 'locale': json['locale'] == null ? undefined : json['locale'],
83
+ 'metadata': json['metadata'] == null ? undefined : json['metadata'],
118
84
  };
119
85
  }
120
86
 
@@ -129,15 +95,10 @@ export function RegisterDeviceRequestToJSONTyped(value?: RegisterDeviceRequest |
129
95
 
130
96
  return {
131
97
 
132
- 'subscriber_id': value['subscriberId'],
133
- 'external_user_id': value['externalUserId'],
98
+ 'user_id': value['userId'],
134
99
  'platform': value['platform'],
135
100
  'token': value['token'],
136
- 'app_version': value['appVersion'],
137
- 'device_model': value['deviceModel'],
138
- 'os_version': value['osVersion'],
139
- 'timezone': value['timezone'],
140
- 'locale': value['locale'],
101
+ 'metadata': value['metadata'],
141
102
  };
142
103
  }
143
104