onesignal-vue 1.0.0-beta3 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.ts CHANGED
@@ -66,7 +66,7 @@ interface IOneSignalFunctionCall {
66
66
  promiseResolver?: Function;
67
67
  }
68
68
 
69
- interface Action<T>{ (item: T): void; }
69
+ type Action<T> = (item: T) => void;
70
70
  interface AutoPromptOptions { force?: boolean; forceSlidedownOverNative?: boolean; slidedownPromptOptions?: IOneSignalAutoPromptOptions; }
71
71
  interface RegisterOptions { modalPrompt?: boolean; httpPermissionRequest?: boolean; slidedown?: boolean; autoAccept?: boolean }
72
72
  interface SetSMSOptions { identifierAuthHash?: string; }
@@ -76,16 +76,15 @@ interface IOneSignalAutoPromptOptions { force?: boolean; forceSlidedownOverNativ
76
76
  interface IOneSignalCategories { positiveUpdateButton: string; negativeUpdateButton: string; savingButtonText: string; errorButtonText: string; updateMessage: string; tags: IOneSignalTagCategory[]; }
77
77
  interface IOneSignalTagCategory { tag: string; label: string; checked?: boolean; }
78
78
 
79
-
80
79
  interface IInitObject {
81
80
  appId: string;
82
81
  subdomainName?: string;
83
82
  requiresUserPrivacyConsent?: boolean;
84
- promptOptions?: Object;
85
- welcomeNotification?: Object;
86
- notifyButton?: Object;
83
+ promptOptions?: object;
84
+ welcomeNotification?: object;
85
+ notifyButton?: object;
87
86
  persistNotification?: boolean;
88
- webhooks?: Object;
87
+ webhooks?: object;
89
88
  autoResubscribe?: boolean;
90
89
  autoRegister?: boolean;
91
90
  notificationClickHandlerMatch?: string;
@@ -100,9 +99,9 @@ interface IInitObject {
100
99
 
101
100
  interface IOneSignal {
102
101
  init(options: IInitObject): Promise<void>
103
- on(event: string, listener: Function): void
104
- off(event: string, listener: Function): void
105
- once(event: string, listener: Function): void
102
+ on(event: string, listener: () => void): void
103
+ off(event: string, listener: () => void): void
104
+ once(event: string, listener: () => void): void
106
105
  isPushNotificationsEnabled(callback?: Action<boolean>): Promise<boolean>
107
106
  showHttpPrompt(options?: AutoPromptOptions): Promise<void>
108
107
  registerForPushNotifications(options?: RegisterOptions): Promise<void>
@@ -122,7 +121,7 @@ interface IOneSignal {
122
121
  showSmsSlidedown(options?: AutoPromptOptions): Promise<void>
123
122
  showEmailSlidedown(options?: AutoPromptOptions): Promise<void>
124
123
  showSmsAndEmailSlidedown(options?: AutoPromptOptions): Promise<void>
125
- getNotificationPermission(onComplete?: Function): Promise<NotificationPermission>
124
+ getNotificationPermission(onComplete?: Action<NotificationPermission>): Promise<NotificationPermission>
126
125
  getUserId(callback?: Action<string | undefined | null>): Promise<string | undefined | null>
127
126
  getSubscription(callback?: Action<boolean>): Promise<boolean>
128
127
  setEmail(email: string, options?: SetEmailOptions): Promise<string|null>
@@ -167,10 +166,10 @@ function init(options: IInitObject) {
167
166
  });
168
167
  }
169
168
 
170
- function on(event, listener): void {
169
+ function on(event: string, listener: () => void): void {
171
170
  if (!doesOneSignalExist()) {
172
171
  vueOneSignalFunctionQueue.push({
173
- name: "on",
172
+ name: 'on',
174
173
  args: arguments,
175
174
  });
176
175
  return;
@@ -179,12 +178,12 @@ function init(options: IInitObject) {
179
178
  window.OneSignal.push(() => {
180
179
  window.OneSignal.on(event, listener)
181
180
  });
182
- };
181
+ }
183
182
 
184
- function off(event, listener): void {
183
+ function off(event: string, listener: () => void): void {
185
184
  if (!doesOneSignalExist()) {
186
185
  vueOneSignalFunctionQueue.push({
187
- name: "off",
186
+ name: 'off',
188
187
  args: arguments,
189
188
  });
190
189
  return;
@@ -193,12 +192,12 @@ function init(options: IInitObject) {
193
192
  window.OneSignal.push(() => {
194
193
  window.OneSignal.off(event, listener)
195
194
  });
196
- };
195
+ }
197
196
 
198
- function once(event, listener): void {
197
+ function once(event: string, listener: () => void): void {
199
198
  if (!doesOneSignalExist()) {
200
199
  vueOneSignalFunctionQueue.push({
201
- name: "once",
200
+ name: 'once',
202
201
  args: arguments,
203
202
  });
204
203
  return;
@@ -207,13 +206,13 @@ function init(options: IInitObject) {
207
206
  window.OneSignal.push(() => {
208
207
  window.OneSignal.once(event, listener)
209
208
  });
210
- };
209
+ }
211
210
 
212
- function isPushNotificationsEnabled(callback): Promise<boolean> {
211
+ function isPushNotificationsEnabled(callback?: Action<boolean>): Promise<boolean> {
213
212
  return new Promise(function (resolve, reject) {
214
213
  if (!doesOneSignalExist()) {
215
214
  vueOneSignalFunctionQueue.push({
216
- name: "isPushNotificationsEnabled",
215
+ name: 'isPushNotificationsEnabled',
217
216
  args: arguments,
218
217
  promiseResolver: resolve,
219
218
  });
@@ -222,17 +221,17 @@ function init(options: IInitObject) {
222
221
 
223
222
  window.OneSignal.push(() => {
224
223
  window.OneSignal.isPushNotificationsEnabled(callback)
225
- .then((value) => resolve(value))
226
- .catch((error) => reject(error));
224
+ .then(value => resolve(value))
225
+ .catch(error => reject(error));
227
226
  });
228
227
  });
229
- };
228
+ }
230
229
 
231
- function showHttpPrompt(options): Promise<void> {
230
+ function showHttpPrompt(options?: AutoPromptOptions): Promise<void> {
232
231
  return new Promise(function (resolve, reject) {
233
232
  if (!doesOneSignalExist()) {
234
233
  vueOneSignalFunctionQueue.push({
235
- name: "showHttpPrompt",
234
+ name: 'showHttpPrompt',
236
235
  args: arguments,
237
236
  promiseResolver: resolve,
238
237
  });
@@ -241,17 +240,17 @@ function init(options: IInitObject) {
241
240
 
242
241
  window.OneSignal.push(() => {
243
242
  window.OneSignal.showHttpPrompt(options)
244
- .then((value) => resolve(value))
245
- .catch((error) => reject(error));
243
+ .then(value => resolve(value))
244
+ .catch(error => reject(error));
246
245
  });
247
246
  });
248
- };
247
+ }
249
248
 
250
- function registerForPushNotifications(options): Promise<void> {
249
+ function registerForPushNotifications(options?: RegisterOptions): Promise<void> {
251
250
  return new Promise(function (resolve, reject) {
252
251
  if (!doesOneSignalExist()) {
253
252
  vueOneSignalFunctionQueue.push({
254
- name: "registerForPushNotifications",
253
+ name: 'registerForPushNotifications',
255
254
  args: arguments,
256
255
  promiseResolver: resolve,
257
256
  });
@@ -260,17 +259,17 @@ function init(options: IInitObject) {
260
259
 
261
260
  window.OneSignal.push(() => {
262
261
  window.OneSignal.registerForPushNotifications(options)
263
- .then((value) => resolve(value))
264
- .catch((error) => reject(error));
262
+ .then(value => resolve(value))
263
+ .catch(error => reject(error));
265
264
  });
266
265
  });
267
- };
266
+ }
268
267
 
269
- function setDefaultNotificationUrl(url): Promise<void> {
268
+ function setDefaultNotificationUrl(url: string): Promise<void> {
270
269
  return new Promise(function (resolve, reject) {
271
270
  if (!doesOneSignalExist()) {
272
271
  vueOneSignalFunctionQueue.push({
273
- name: "setDefaultNotificationUrl",
272
+ name: 'setDefaultNotificationUrl',
274
273
  args: arguments,
275
274
  promiseResolver: resolve,
276
275
  });
@@ -279,17 +278,17 @@ function init(options: IInitObject) {
279
278
 
280
279
  window.OneSignal.push(() => {
281
280
  window.OneSignal.setDefaultNotificationUrl(url)
282
- .then((value) => resolve(value))
283
- .catch((error) => reject(error));
281
+ .then(value => resolve(value))
282
+ .catch(error => reject(error));
284
283
  });
285
284
  });
286
- };
285
+ }
287
286
 
288
- function setDefaultTitle(title): Promise<void> {
287
+ function setDefaultTitle(title: string): Promise<void> {
289
288
  return new Promise(function (resolve, reject) {
290
289
  if (!doesOneSignalExist()) {
291
290
  vueOneSignalFunctionQueue.push({
292
- name: "setDefaultTitle",
291
+ name: 'setDefaultTitle',
293
292
  args: arguments,
294
293
  promiseResolver: resolve,
295
294
  });
@@ -298,17 +297,17 @@ function init(options: IInitObject) {
298
297
 
299
298
  window.OneSignal.push(() => {
300
299
  window.OneSignal.setDefaultTitle(title)
301
- .then((value) => resolve(value))
302
- .catch((error) => reject(error));
300
+ .then(value => resolve(value))
301
+ .catch(error => reject(error));
303
302
  });
304
303
  });
305
- };
304
+ }
306
305
 
307
- function getTags(callback): Promise<void> {
306
+ function getTags(callback?: Action<any>): Promise<void> {
308
307
  return new Promise(function (resolve, reject) {
309
308
  if (!doesOneSignalExist()) {
310
309
  vueOneSignalFunctionQueue.push({
311
- name: "getTags",
310
+ name: 'getTags',
312
311
  args: arguments,
313
312
  promiseResolver: resolve,
314
313
  });
@@ -317,17 +316,17 @@ function init(options: IInitObject) {
317
316
 
318
317
  window.OneSignal.push(() => {
319
318
  window.OneSignal.getTags(callback)
320
- .then((value) => resolve(value))
321
- .catch((error) => reject(error));
319
+ .then(value => resolve(value))
320
+ .catch(error => reject(error));
322
321
  });
323
322
  });
324
- };
323
+ }
325
324
 
326
- function sendTag(key, value, callback): Promise<Object | null> {
325
+ function sendTag(key: string, value: any, callback?: Action<Object>): Promise<Object | null> {
327
326
  return new Promise(function (resolve, reject) {
328
327
  if (!doesOneSignalExist()) {
329
328
  vueOneSignalFunctionQueue.push({
330
- name: "sendTag",
329
+ name: 'sendTag',
331
330
  args: arguments,
332
331
  promiseResolver: resolve,
333
332
  });
@@ -336,17 +335,17 @@ function init(options: IInitObject) {
336
335
 
337
336
  window.OneSignal.push(() => {
338
337
  window.OneSignal.sendTag(key, value, callback)
339
- .then((value) => resolve(value))
340
- .catch((error) => reject(error));
338
+ .then(value => resolve(value))
339
+ .catch(error => reject(error));
341
340
  });
342
341
  });
343
- };
342
+ }
344
343
 
345
- function sendTags(tags, callback): Promise<Object | null> {
344
+ function sendTags(tags: TagsObject<any>, callback?: Action<Object>): Promise<Object | null> {
346
345
  return new Promise(function (resolve, reject) {
347
346
  if (!doesOneSignalExist()) {
348
347
  vueOneSignalFunctionQueue.push({
349
- name: "sendTags",
348
+ name: 'sendTags',
350
349
  args: arguments,
351
350
  promiseResolver: resolve,
352
351
  });
@@ -355,17 +354,17 @@ function init(options: IInitObject) {
355
354
 
356
355
  window.OneSignal.push(() => {
357
356
  window.OneSignal.sendTags(tags, callback)
358
- .then((value) => resolve(value))
359
- .catch((error) => reject(error));
357
+ .then(value => resolve(value))
358
+ .catch(error => reject(error));
360
359
  });
361
360
  });
362
- };
361
+ }
363
362
 
364
- function deleteTag(tag): Promise<Array<string>> {
363
+ function deleteTag(tag: string): Promise<Array<string>> {
365
364
  return new Promise(function (resolve, reject) {
366
365
  if (!doesOneSignalExist()) {
367
366
  vueOneSignalFunctionQueue.push({
368
- name: "deleteTag",
367
+ name: 'deleteTag',
369
368
  args: arguments,
370
369
  promiseResolver: resolve,
371
370
  });
@@ -374,17 +373,17 @@ function init(options: IInitObject) {
374
373
 
375
374
  window.OneSignal.push(() => {
376
375
  window.OneSignal.deleteTag(tag)
377
- .then((value) => resolve(value))
378
- .catch((error) => reject(error));
376
+ .then(value => resolve(value))
377
+ .catch(error => reject(error));
379
378
  });
380
379
  });
381
- };
380
+ }
382
381
 
383
- function deleteTags(tags, callback): Promise<Array<string>> {
382
+ function deleteTags(tags: Array<string>, callback?: Action<Array<string>>): Promise<Array<string>> {
384
383
  return new Promise(function (resolve, reject) {
385
384
  if (!doesOneSignalExist()) {
386
385
  vueOneSignalFunctionQueue.push({
387
- name: "deleteTags",
386
+ name: 'deleteTags',
388
387
  args: arguments,
389
388
  promiseResolver: resolve,
390
389
  });
@@ -393,17 +392,17 @@ function init(options: IInitObject) {
393
392
 
394
393
  window.OneSignal.push(() => {
395
394
  window.OneSignal.deleteTags(tags, callback)
396
- .then((value) => resolve(value))
397
- .catch((error) => reject(error));
395
+ .then(value => resolve(value))
396
+ .catch(error => reject(error));
398
397
  });
399
398
  });
400
- };
399
+ }
401
400
 
402
- function addListenerForNotificationOpened(callback): Promise<void> {
401
+ function addListenerForNotificationOpened(callback?: Action<Notification>): Promise<void> {
403
402
  return new Promise(function (resolve, reject) {
404
403
  if (!doesOneSignalExist()) {
405
404
  vueOneSignalFunctionQueue.push({
406
- name: "addListenerForNotificationOpened",
405
+ name: 'addListenerForNotificationOpened',
407
406
  args: arguments,
408
407
  promiseResolver: resolve,
409
408
  });
@@ -412,17 +411,17 @@ function init(options: IInitObject) {
412
411
 
413
412
  window.OneSignal.push(() => {
414
413
  window.OneSignal.addListenerForNotificationOpened(callback)
415
- .then((value) => resolve(value))
416
- .catch((error) => reject(error));
414
+ .then(value => resolve(value))
415
+ .catch(error => reject(error));
417
416
  });
418
417
  });
419
- };
418
+ }
420
419
 
421
- function setSubscription(newSubscription): Promise<void> {
420
+ function setSubscription(newSubscription: boolean): Promise<void> {
422
421
  return new Promise(function (resolve, reject) {
423
422
  if (!doesOneSignalExist()) {
424
423
  vueOneSignalFunctionQueue.push({
425
- name: "setSubscription",
424
+ name: 'setSubscription',
426
425
  args: arguments,
427
426
  promiseResolver: resolve,
428
427
  });
@@ -431,17 +430,17 @@ function init(options: IInitObject) {
431
430
 
432
431
  window.OneSignal.push(() => {
433
432
  window.OneSignal.setSubscription(newSubscription)
434
- .then((value) => resolve(value))
435
- .catch((error) => reject(error));
433
+ .then(value => resolve(value))
434
+ .catch(error => reject(error));
436
435
  });
437
436
  });
438
- };
437
+ }
439
438
 
440
- function showHttpPermissionRequest(options): Promise<any> {
439
+ function showHttpPermissionRequest(options?: AutoPromptOptions): Promise<any> {
441
440
  return new Promise(function (resolve, reject) {
442
441
  if (!doesOneSignalExist()) {
443
442
  vueOneSignalFunctionQueue.push({
444
- name: "showHttpPermissionRequest",
443
+ name: 'showHttpPermissionRequest',
445
444
  args: arguments,
446
445
  promiseResolver: resolve,
447
446
  });
@@ -450,17 +449,17 @@ function init(options: IInitObject) {
450
449
 
451
450
  window.OneSignal.push(() => {
452
451
  window.OneSignal.showHttpPermissionRequest(options)
453
- .then((value) => resolve(value))
454
- .catch((error) => reject(error));
452
+ .then(value => resolve(value))
453
+ .catch(error => reject(error));
455
454
  });
456
455
  });
457
- };
456
+ }
458
457
 
459
458
  function showNativePrompt(): Promise<void> {
460
459
  return new Promise(function (resolve, reject) {
461
460
  if (!doesOneSignalExist()) {
462
461
  vueOneSignalFunctionQueue.push({
463
- name: "showNativePrompt",
462
+ name: 'showNativePrompt',
464
463
  args: arguments,
465
464
  promiseResolver: resolve,
466
465
  });
@@ -469,17 +468,17 @@ function init(options: IInitObject) {
469
468
 
470
469
  window.OneSignal.push(() => {
471
470
  window.OneSignal.showNativePrompt()
472
- .then((value) => resolve(value))
473
- .catch((error) => reject(error));
471
+ .then(value => resolve(value))
472
+ .catch(error => reject(error));
474
473
  });
475
474
  });
476
- };
475
+ }
477
476
 
478
- function showSlidedownPrompt(options): Promise<void> {
477
+ function showSlidedownPrompt(options?: AutoPromptOptions): Promise<void> {
479
478
  return new Promise(function (resolve, reject) {
480
479
  if (!doesOneSignalExist()) {
481
480
  vueOneSignalFunctionQueue.push({
482
- name: "showSlidedownPrompt",
481
+ name: 'showSlidedownPrompt',
483
482
  args: arguments,
484
483
  promiseResolver: resolve,
485
484
  });
@@ -488,17 +487,17 @@ function init(options: IInitObject) {
488
487
 
489
488
  window.OneSignal.push(() => {
490
489
  window.OneSignal.showSlidedownPrompt(options)
491
- .then((value) => resolve(value))
492
- .catch((error) => reject(error));
490
+ .then(value => resolve(value))
491
+ .catch(error => reject(error));
493
492
  });
494
493
  });
495
- };
494
+ }
496
495
 
497
- function showCategorySlidedown(options): Promise<void> {
496
+ function showCategorySlidedown(options?: AutoPromptOptions): Promise<void> {
498
497
  return new Promise(function (resolve, reject) {
499
498
  if (!doesOneSignalExist()) {
500
499
  vueOneSignalFunctionQueue.push({
501
- name: "showCategorySlidedown",
500
+ name: 'showCategorySlidedown',
502
501
  args: arguments,
503
502
  promiseResolver: resolve,
504
503
  });
@@ -507,17 +506,17 @@ function init(options: IInitObject) {
507
506
 
508
507
  window.OneSignal.push(() => {
509
508
  window.OneSignal.showCategorySlidedown(options)
510
- .then((value) => resolve(value))
511
- .catch((error) => reject(error));
509
+ .then(value => resolve(value))
510
+ .catch(error => reject(error));
512
511
  });
513
512
  });
514
- };
513
+ }
515
514
 
516
- function showSmsSlidedown(options): Promise<void> {
515
+ function showSmsSlidedown(options?: AutoPromptOptions): Promise<void> {
517
516
  return new Promise(function (resolve, reject) {
518
517
  if (!doesOneSignalExist()) {
519
518
  vueOneSignalFunctionQueue.push({
520
- name: "showSmsSlidedown",
519
+ name: 'showSmsSlidedown',
521
520
  args: arguments,
522
521
  promiseResolver: resolve,
523
522
  });
@@ -526,17 +525,17 @@ function init(options: IInitObject) {
526
525
 
527
526
  window.OneSignal.push(() => {
528
527
  window.OneSignal.showSmsSlidedown(options)
529
- .then((value) => resolve(value))
530
- .catch((error) => reject(error));
528
+ .then(value => resolve(value))
529
+ .catch(error => reject(error));
531
530
  });
532
531
  });
533
- };
532
+ }
534
533
 
535
- function showEmailSlidedown(options): Promise<void> {
534
+ function showEmailSlidedown(options?: AutoPromptOptions): Promise<void> {
536
535
  return new Promise(function (resolve, reject) {
537
536
  if (!doesOneSignalExist()) {
538
537
  vueOneSignalFunctionQueue.push({
539
- name: "showEmailSlidedown",
538
+ name: 'showEmailSlidedown',
540
539
  args: arguments,
541
540
  promiseResolver: resolve,
542
541
  });
@@ -545,17 +544,17 @@ function init(options: IInitObject) {
545
544
 
546
545
  window.OneSignal.push(() => {
547
546
  window.OneSignal.showEmailSlidedown(options)
548
- .then((value) => resolve(value))
549
- .catch((error) => reject(error));
547
+ .then(value => resolve(value))
548
+ .catch(error => reject(error));
550
549
  });
551
550
  });
552
- };
551
+ }
553
552
 
554
- function showSmsAndEmailSlidedown(options): Promise<void> {
553
+ function showSmsAndEmailSlidedown(options?: AutoPromptOptions): Promise<void> {
555
554
  return new Promise(function (resolve, reject) {
556
555
  if (!doesOneSignalExist()) {
557
556
  vueOneSignalFunctionQueue.push({
558
- name: "showSmsAndEmailSlidedown",
557
+ name: 'showSmsAndEmailSlidedown',
559
558
  args: arguments,
560
559
  promiseResolver: resolve,
561
560
  });
@@ -564,17 +563,17 @@ function init(options: IInitObject) {
564
563
 
565
564
  window.OneSignal.push(() => {
566
565
  window.OneSignal.showSmsAndEmailSlidedown(options)
567
- .then((value) => resolve(value))
568
- .catch((error) => reject(error));
566
+ .then(value => resolve(value))
567
+ .catch(error => reject(error));
569
568
  });
570
569
  });
571
- };
570
+ }
572
571
 
573
- function getNotificationPermission(onComplete): Promise<NotificationPermission> {
572
+ function getNotificationPermission(onComplete?: Action<NotificationPermission>): Promise<NotificationPermission> {
574
573
  return new Promise(function (resolve, reject) {
575
574
  if (!doesOneSignalExist()) {
576
575
  vueOneSignalFunctionQueue.push({
577
- name: "getNotificationPermission",
576
+ name: 'getNotificationPermission',
578
577
  args: arguments,
579
578
  promiseResolver: resolve,
580
579
  });
@@ -583,17 +582,17 @@ function init(options: IInitObject) {
583
582
 
584
583
  window.OneSignal.push(() => {
585
584
  window.OneSignal.getNotificationPermission(onComplete)
586
- .then((value) => resolve(value))
587
- .catch((error) => reject(error));
585
+ .then(value => resolve(value))
586
+ .catch(error => reject(error));
588
587
  });
589
588
  });
590
- };
589
+ }
591
590
 
592
- function getUserId(callback): Promise<string | undefined | null> {
591
+ function getUserId(callback?: Action<string | undefined | null>): Promise<string | undefined | null> {
593
592
  return new Promise(function (resolve, reject) {
594
593
  if (!doesOneSignalExist()) {
595
594
  vueOneSignalFunctionQueue.push({
596
- name: "getUserId",
595
+ name: 'getUserId',
597
596
  args: arguments,
598
597
  promiseResolver: resolve,
599
598
  });
@@ -602,17 +601,17 @@ function init(options: IInitObject) {
602
601
 
603
602
  window.OneSignal.push(() => {
604
603
  window.OneSignal.getUserId(callback)
605
- .then((value) => resolve(value))
606
- .catch((error) => reject(error));
604
+ .then(value => resolve(value))
605
+ .catch(error => reject(error));
607
606
  });
608
607
  });
609
- };
608
+ }
610
609
 
611
- function getSubscription(callback): Promise<boolean> {
610
+ function getSubscription(callback?: Action<boolean>): Promise<boolean> {
612
611
  return new Promise(function (resolve, reject) {
613
612
  if (!doesOneSignalExist()) {
614
613
  vueOneSignalFunctionQueue.push({
615
- name: "getSubscription",
614
+ name: 'getSubscription',
616
615
  args: arguments,
617
616
  promiseResolver: resolve,
618
617
  });
@@ -621,17 +620,17 @@ function init(options: IInitObject) {
621
620
 
622
621
  window.OneSignal.push(() => {
623
622
  window.OneSignal.getSubscription(callback)
624
- .then((value) => resolve(value))
625
- .catch((error) => reject(error));
623
+ .then(value => resolve(value))
624
+ .catch(error => reject(error));
626
625
  });
627
626
  });
628
- };
627
+ }
629
628
 
630
- function setEmail(email, options): Promise<string|null> {
629
+ function setEmail(email: string, options?: SetEmailOptions): Promise<string|null> {
631
630
  return new Promise(function (resolve, reject) {
632
631
  if (!doesOneSignalExist()) {
633
632
  vueOneSignalFunctionQueue.push({
634
- name: "setEmail",
633
+ name: 'setEmail',
635
634
  args: arguments,
636
635
  promiseResolver: resolve,
637
636
  });
@@ -640,17 +639,17 @@ function init(options: IInitObject) {
640
639
 
641
640
  window.OneSignal.push(() => {
642
641
  window.OneSignal.setEmail(email, options)
643
- .then((value) => resolve(value))
644
- .catch((error) => reject(error));
642
+ .then(value => resolve(value))
643
+ .catch(error => reject(error));
645
644
  });
646
645
  });
647
- };
646
+ }
648
647
 
649
- function setSMSNumber(smsNumber, options): Promise<string | null> {
648
+ function setSMSNumber(smsNumber: string, options?: SetSMSOptions): Promise<string | null> {
650
649
  return new Promise(function (resolve, reject) {
651
650
  if (!doesOneSignalExist()) {
652
651
  vueOneSignalFunctionQueue.push({
653
- name: "setSMSNumber",
652
+ name: 'setSMSNumber',
654
653
  args: arguments,
655
654
  promiseResolver: resolve,
656
655
  });
@@ -659,17 +658,17 @@ function init(options: IInitObject) {
659
658
 
660
659
  window.OneSignal.push(() => {
661
660
  window.OneSignal.setSMSNumber(smsNumber, options)
662
- .then((value) => resolve(value))
663
- .catch((error) => reject(error));
661
+ .then(value => resolve(value))
662
+ .catch(error => reject(error));
664
663
  });
665
664
  });
666
- };
665
+ }
667
666
 
668
667
  function logoutEmail(): Promise<void> {
669
668
  return new Promise(function (resolve, reject) {
670
669
  if (!doesOneSignalExist()) {
671
670
  vueOneSignalFunctionQueue.push({
672
- name: "logoutEmail",
671
+ name: 'logoutEmail',
673
672
  args: arguments,
674
673
  promiseResolver: resolve,
675
674
  });
@@ -678,17 +677,17 @@ function init(options: IInitObject) {
678
677
 
679
678
  window.OneSignal.push(() => {
680
679
  window.OneSignal.logoutEmail()
681
- .then((value) => resolve(value))
682
- .catch((error) => reject(error));
680
+ .then(value => resolve(value))
681
+ .catch(error => reject(error));
683
682
  });
684
683
  });
685
- };
684
+ }
686
685
 
687
686
  function logoutSMS(): Promise<void> {
688
687
  return new Promise(function (resolve, reject) {
689
688
  if (!doesOneSignalExist()) {
690
689
  vueOneSignalFunctionQueue.push({
691
- name: "logoutSMS",
690
+ name: 'logoutSMS',
692
691
  args: arguments,
693
692
  promiseResolver: resolve,
694
693
  });
@@ -697,17 +696,17 @@ function init(options: IInitObject) {
697
696
 
698
697
  window.OneSignal.push(() => {
699
698
  window.OneSignal.logoutSMS()
700
- .then((value) => resolve(value))
701
- .catch((error) => reject(error));
699
+ .then(value => resolve(value))
700
+ .catch(error => reject(error));
702
701
  });
703
702
  });
704
- };
703
+ }
705
704
 
706
- function setExternalUserId(externalUserId, authHash): Promise<void> {
705
+ function setExternalUserId(externalUserId: string | undefined | null, authHash?: string): Promise<void> {
707
706
  return new Promise(function (resolve, reject) {
708
707
  if (!doesOneSignalExist()) {
709
708
  vueOneSignalFunctionQueue.push({
710
- name: "setExternalUserId",
709
+ name: 'setExternalUserId',
711
710
  args: arguments,
712
711
  promiseResolver: resolve,
713
712
  });
@@ -716,17 +715,17 @@ function init(options: IInitObject) {
716
715
 
717
716
  window.OneSignal.push(() => {
718
717
  window.OneSignal.setExternalUserId(externalUserId, authHash)
719
- .then((value) => resolve(value))
720
- .catch((error) => reject(error));
718
+ .then(value => resolve(value))
719
+ .catch(error => reject(error));
721
720
  });
722
721
  });
723
- };
722
+ }
724
723
 
725
724
  function removeExternalUserId(): Promise<void> {
726
725
  return new Promise(function (resolve, reject) {
727
726
  if (!doesOneSignalExist()) {
728
727
  vueOneSignalFunctionQueue.push({
729
- name: "removeExternalUserId",
728
+ name: 'removeExternalUserId',
730
729
  args: arguments,
731
730
  promiseResolver: resolve,
732
731
  });
@@ -735,17 +734,17 @@ function init(options: IInitObject) {
735
734
 
736
735
  window.OneSignal.push(() => {
737
736
  window.OneSignal.removeExternalUserId()
738
- .then((value) => resolve(value))
739
- .catch((error) => reject(error));
737
+ .then(value => resolve(value))
738
+ .catch(error => reject(error));
740
739
  });
741
740
  });
742
- };
741
+ }
743
742
 
744
743
  function getExternalUserId(): Promise<string | undefined | null> {
745
744
  return new Promise(function (resolve, reject) {
746
745
  if (!doesOneSignalExist()) {
747
746
  vueOneSignalFunctionQueue.push({
748
- name: "getExternalUserId",
747
+ name: 'getExternalUserId',
749
748
  args: arguments,
750
749
  promiseResolver: resolve,
751
750
  });
@@ -754,17 +753,17 @@ function init(options: IInitObject) {
754
753
 
755
754
  window.OneSignal.push(() => {
756
755
  window.OneSignal.getExternalUserId()
757
- .then((value) => resolve(value))
758
- .catch((error) => reject(error));
756
+ .then(value => resolve(value))
757
+ .catch(error => reject(error));
759
758
  });
760
759
  });
761
- };
760
+ }
762
761
 
763
- function provideUserConsent(consent): Promise<void> {
762
+ function provideUserConsent(consent: boolean): Promise<void> {
764
763
  return new Promise(function (resolve, reject) {
765
764
  if (!doesOneSignalExist()) {
766
765
  vueOneSignalFunctionQueue.push({
767
- name: "provideUserConsent",
766
+ name: 'provideUserConsent',
768
767
  args: arguments,
769
768
  promiseResolver: resolve,
770
769
  });
@@ -773,17 +772,17 @@ function init(options: IInitObject) {
773
772
 
774
773
  window.OneSignal.push(() => {
775
774
  window.OneSignal.provideUserConsent(consent)
776
- .then((value) => resolve(value))
777
- .catch((error) => reject(error));
775
+ .then(value => resolve(value))
776
+ .catch(error => reject(error));
778
777
  });
779
778
  });
780
- };
779
+ }
781
780
 
782
- function getEmailId(callback): Promise<string | null | undefined> {
781
+ function getEmailId(callback?: Action<string | undefined>): Promise<string | null | undefined> {
783
782
  return new Promise(function (resolve, reject) {
784
783
  if (!doesOneSignalExist()) {
785
784
  vueOneSignalFunctionQueue.push({
786
- name: "getEmailId",
785
+ name: 'getEmailId',
787
786
  args: arguments,
788
787
  promiseResolver: resolve,
789
788
  });
@@ -792,17 +791,17 @@ function init(options: IInitObject) {
792
791
 
793
792
  window.OneSignal.push(() => {
794
793
  window.OneSignal.getEmailId(callback)
795
- .then((value) => resolve(value))
796
- .catch((error) => reject(error));
794
+ .then(value => resolve(value))
795
+ .catch(error => reject(error));
797
796
  });
798
797
  });
799
- };
798
+ }
800
799
 
801
- function getSMSId(callback): Promise<string | null | undefined> {
800
+ function getSMSId(callback?: Action<string | undefined>): Promise<string | null | undefined> {
802
801
  return new Promise(function (resolve, reject) {
803
802
  if (!doesOneSignalExist()) {
804
803
  vueOneSignalFunctionQueue.push({
805
- name: "getSMSId",
804
+ name: 'getSMSId',
806
805
  args: arguments,
807
806
  promiseResolver: resolve,
808
807
  });
@@ -811,17 +810,17 @@ function init(options: IInitObject) {
811
810
 
812
811
  window.OneSignal.push(() => {
813
812
  window.OneSignal.getSMSId(callback)
814
- .then((value) => resolve(value))
815
- .catch((error) => reject(error));
813
+ .then(value => resolve(value))
814
+ .catch(error => reject(error));
816
815
  });
817
816
  });
818
- };
817
+ }
819
818
 
820
- function sendOutcome(outcomeName, outcomeWeight): Promise<void> {
819
+ function sendOutcome(outcomeName: string, outcomeWeight?: number | undefined): Promise<void> {
821
820
  return new Promise(function (resolve, reject) {
822
821
  if (!doesOneSignalExist()) {
823
822
  vueOneSignalFunctionQueue.push({
824
- name: "sendOutcome",
823
+ name: 'sendOutcome',
825
824
  args: arguments,
826
825
  promiseResolver: resolve,
827
826
  });
@@ -830,11 +829,11 @@ function init(options: IInitObject) {
830
829
 
831
830
  window.OneSignal.push(() => {
832
831
  window.OneSignal.sendOutcome(outcomeName, outcomeWeight)
833
- .then((value) => resolve(value))
834
- .catch((error) => reject(error));
832
+ .then(value => resolve(value))
833
+ .catch(error => reject(error));
835
834
  });
836
835
  });
837
- };
836
+ }
838
837
 
839
838
  const OneSignalVue: IOneSignal = {
840
839
  init,
@@ -883,4 +882,3 @@ const OneSignalVuePlugin = {
883
882
  }
884
883
 
885
884
  export default OneSignalVuePlugin;
886
-