@monimesl/dot-dash 0.1.0-alpha.21 → 0.1.0-alpha.23

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/dist/index.d.ts CHANGED
@@ -1,4 +1,106 @@
1
1
  import { HostCallOptions, HostError, HostError as DashError, HostError as HostError$1, HostErrorCode, HostErrorCode as DashErrorCode, HostErrorCode as HostErrorCode$1, HostRequest } from "@monimesl/dot-core";
2
+ //#region src/contacts/pick-phone.d.ts
3
+ interface PickedContact {
4
+ name: string;
5
+ phone: string;
6
+ }
7
+ interface PickPhoneMethods {
8
+ 'dash.contacts.pickPhone': {
9
+ params: Record<string, never>;
10
+ result: PickedContact;
11
+ };
12
+ }
13
+ /**
14
+ * Shows the phone's contacts so the person chooses one phone number, such as who to send money to.
15
+ * Needs the `contacts` permission. The dot sees only the chosen contact. Rejects with `cancelled` if
16
+ * the person closes it.
17
+ * @since 1.0
18
+ */
19
+ declare function pickPhone(callOptions?: CallOptions): DashRequest<PickedContact>;
20
+ declare namespace index_d_exports$9 {
21
+ export { ContactsMethods, PickedContact, pickPhone };
22
+ }
23
+ type ContactsMethods = PickPhoneMethods;
24
+ declare namespace index_d_exports$8 {
25
+ export { CryptoInput, CryptoMethods, CryptoOutputOptions, HmacAlgorithm, hmac, randomBytes, randomUUID, sha256, sha512 };
26
+ }
27
+ type CryptoInput = string | {
28
+ base64: string;
29
+ };
30
+ interface CryptoOutputOptions {
31
+ as?: 'hex' | 'base64';
32
+ }
33
+ type HmacAlgorithm = 'sha256' | 'sha512';
34
+ type InputEncoding = 'text' | 'base64';
35
+ type OutputEncoding = 'hex' | 'base64';
36
+ interface WireInput {
37
+ data: string;
38
+ dataEncoding: InputEncoding;
39
+ as: OutputEncoding;
40
+ }
41
+ interface CryptoMethods {
42
+ 'dash.crypto.sha256': {
43
+ params: WireInput;
44
+ result: string;
45
+ };
46
+ 'dash.crypto.sha512': {
47
+ params: WireInput;
48
+ result: string;
49
+ };
50
+ 'dash.crypto.hmac': {
51
+ params: WireInput & {
52
+ algorithm: HmacAlgorithm;
53
+ key: string;
54
+ keyEncoding: InputEncoding;
55
+ };
56
+ result: string;
57
+ };
58
+ 'dash.crypto.randomBytes': {
59
+ params: {
60
+ count: number;
61
+ as: OutputEncoding;
62
+ };
63
+ result: string;
64
+ };
65
+ 'dash.crypto.randomUUID': {
66
+ params: Record<string, never>;
67
+ result: string;
68
+ };
69
+ }
70
+ /** @since 1.0 */
71
+ declare function sha256(data: CryptoInput, options?: CryptoOutputOptions, callOptions?: CallOptions): DashRequest<string>;
72
+ /** @since 1.0 */
73
+ declare function sha512(data: CryptoInput, options?: CryptoOutputOptions, callOptions?: CallOptions): DashRequest<string>;
74
+ /**
75
+ * Signs `data` with `key`, as HMAC-SHA256 or HMAC-SHA512.
76
+ * @since 1.0
77
+ */
78
+ declare function hmac(algorithm: HmacAlgorithm, key: CryptoInput, data: CryptoInput, options?: CryptoOutputOptions, callOptions?: CallOptions): DashRequest<string>;
79
+ /**
80
+ * `count` secure random bytes, from 1 to 1024, such as for a nonce.
81
+ * @since 1.0
82
+ */
83
+ declare function randomBytes(count: number, options?: CryptoOutputOptions, callOptions?: CallOptions): DashRequest<string>;
84
+ /**
85
+ * A random version 4 UUID, such as "3f0e5c3a-6d1b-4c8e-9a2f-1b7d4e6a9c05".
86
+ * @since 1.0
87
+ */
88
+ declare function randomUUID(callOptions?: CallOptions): DashRequest<string>;
89
+ declare namespace index_d_exports$7 {
90
+ export { DotMethods, close };
91
+ }
92
+ interface DotMethods {
93
+ 'dash.dot.close': {
94
+ params: Record<string, never>;
95
+ result: void;
96
+ };
97
+ }
98
+ /**
99
+ * Closes the dot, as going back from its first page does. Calls still running are cancelled.
100
+ * @since 1.0
101
+ */
102
+ declare function close(callOptions?: CallOptions): DashRequest<void>;
103
+ //#endregion
2
104
  //#region src/files.d.ts
3
105
  interface DotFile {
4
106
  id: string;
@@ -8,6 +110,26 @@ interface DotFile {
8
110
  url: string;
9
111
  }
10
112
  //#endregion
113
+ //#region src/media/pick-file.d.ts
114
+ interface PickFileOptions {
115
+ types?: string[];
116
+ }
117
+ interface PickFileMethods {
118
+ 'dash.media.pickFile': {
119
+ params: {
120
+ types?: string[];
121
+ };
122
+ result: DotFile;
123
+ };
124
+ }
125
+ /**
126
+ * Lets the person choose a file from their phone, of at most 25 MB. Needs the `files` permission.
127
+ * Rejects with `cancelled` if they close the picker, and with `invalid` for a larger file. Like a
128
+ * download, it lasts until the dot closes, so `dash.storage.file.save` it to keep it.
129
+ * @since 1.0
130
+ */
131
+ declare function pickFile(options?: PickFileOptions, callOptions?: CallOptions): DashRequest<DotFile>;
132
+ //#endregion
11
133
  //#region src/media/pick-photo.d.ts
12
134
  type PhotoSource = 'library' | 'camera';
13
135
  interface PickPhotoOptions {
@@ -21,6 +143,13 @@ interface PickPhotoMethods {
21
143
  result: DotFile;
22
144
  };
23
145
  }
146
+ /**
147
+ * Lets the person choose a photo or take one. Resolves with it as a JPEG of at most 2048 pixels on its
148
+ * longest side, without its location or other details. Rejects with `cancelled` if they close the
149
+ * picker, and with `unsupported` on a device without a camera. Save it with `dash.storage.file.save`
150
+ * to keep it after the dot closes.
151
+ * @since 1.0
152
+ */
24
153
  declare function pickPhoto(options: PickPhotoOptions, callOptions?: CallOptions): DashRequest<DotFile>;
25
154
  //#endregion
26
155
  //#region src/media/scan-code.d.ts
@@ -35,11 +164,16 @@ interface ScanCodeMethods {
35
164
  result: ScannedCode;
36
165
  };
37
166
  }
167
+ /**
168
+ * Opens Dash's scanner until it reads a QR code. Needs the `camera` permission. Rejects with
169
+ * `cancelled` if the person closes it, and with `unsupported` where Dash has no scanner.
170
+ * @since 1.0
171
+ */
38
172
  declare function scanCode(callOptions?: CallOptions): DashRequest<ScannedCode>;
39
- declare namespace index_d_exports$5 {
40
- export { CodeFormat, MediaMethods, PhotoSource, PickPhotoOptions, ScannedCode, pickPhoto, scanCode };
173
+ declare namespace index_d_exports$6 {
174
+ export { CodeFormat, MediaMethods, PhotoSource, PickFileOptions, PickPhotoOptions, ScannedCode, pickFile, pickPhoto, scanCode };
41
175
  }
42
- type MediaMethods = PickPhotoMethods & ScanCodeMethods;
176
+ type MediaMethods = PickFileMethods & PickPhotoMethods & ScanCodeMethods;
43
177
  declare namespace http_d_exports {
44
178
  export { HttpDownloadRequest, HttpDownloadResponse, HttpMethod, HttpMethods, HttpReadOptions, HttpRequest, HttpRequestBody, HttpResponse, HttpUploadFile, HttpUploadRequest, download, request, upload };
45
179
  }
@@ -74,7 +208,7 @@ type HttpDownloadResponse = (Omit<HttpResponse, 'ok' | 'body'> & {
74
208
  });
75
209
  interface HttpUploadFile {
76
210
  field: string;
77
- file: DotFile | string;
211
+ file: DotFile;
78
212
  name?: string;
79
213
  }
80
214
  interface HttpUploadRequest {
@@ -108,8 +242,20 @@ interface HttpMethods {
108
242
  result: HttpResponse;
109
243
  };
110
244
  }
245
+ /**
246
+ * Like fetch, resolves with any response, even a 404. An object body is sent as JSON.
247
+ * @since 1.0
248
+ */
111
249
  declare function request<ResponseBody = string, RequestBody extends HttpRequestBody = HttpRequestBody>(options: HttpRequest<RequestBody> & HttpReadOptions<ResponseBody>, callOptions?: CallOptions): DashRequest<HttpResponse<ResponseBody>>;
250
+ /**
251
+ * Saves a 2xx response's body, up to 256 MB, to a temporary file.
252
+ * @since 1.0
253
+ */
112
254
  declare function download(options: HttpDownloadRequest, callOptions?: CallOptions): DashRequest<HttpDownloadResponse>;
255
+ /**
256
+ * Sends the dot's files as a multipart form.
257
+ * @since 1.0
258
+ */
113
259
  declare function upload<ResponseBody = string>(options: HttpUploadRequest & HttpReadOptions<ResponseBody>, callOptions?: CallOptions): DashRequest<HttpResponse<ResponseBody>>;
114
260
  //#endregion
115
261
  //#region src/network/status.d.ts
@@ -124,8 +270,12 @@ interface StatusMethods {
124
270
  result: NetworkStatus;
125
271
  };
126
272
  }
273
+ /**
274
+ * Whether the phone is online now, and how. It can still be online without reaching a server.
275
+ * @since 1.0
276
+ */
127
277
  declare function status(callOptions?: CallOptions): DashRequest<NetworkStatus>;
128
- declare namespace index_d_exports$4 {
278
+ declare namespace index_d_exports$5 {
129
279
  export { ConnectionType, HttpDownloadRequest, HttpDownloadResponse, HttpMethod, HttpReadOptions, HttpRequest, HttpRequestBody, HttpResponse, HttpUploadFile, HttpUploadRequest, NetworkMethods, NetworkStatus, http_d_exports as http, status };
130
280
  }
131
281
  type NetworkMethods = HttpMethods & StatusMethods;
@@ -174,14 +324,26 @@ interface CacheMethods {
174
324
  interface CacheSetOptions {
175
325
  ttl?: number | undefined;
176
326
  }
327
+ /**
328
+ * Resolves with null for a missing or expired key.
329
+ * @since 1.0
330
+ */
177
331
  declare function get$1<Value extends CacheValue = CacheValue>(key: string, callOptions?: CallOptions): DashRequest<Value | null>;
332
+ /** @since 1.0 */
178
333
  declare function set$1(key: string, value: CacheValue, options?: CacheSetOptions, callOptions?: CallOptions): DashRequest<void>;
334
+ /** @since 1.0 */
179
335
  declare function remove$2(key: string, callOptions?: CallOptions): DashRequest<void>;
336
+ /** @since 1.0 */
180
337
  declare function exists(key: string, callOptions?: CallOptions): DashRequest<boolean>;
338
+ /**
339
+ * The keys, sorted.
340
+ * @since 1.0
341
+ */
181
342
  declare function keys(callOptions?: CallOptions): DashRequest<string[]>;
343
+ /** @since 1.0 */
182
344
  declare function clear$1(callOptions?: CallOptions): DashRequest<void>;
183
345
  declare namespace file_d_exports {
184
- export { FileEncoding, FileEntry, FileMethods, PickFileOptions, ReadOptions, ReplaceOptions, StorageUsage, WriteOptions, copy, createFolder, list, move, open, pick, read, remove$1 as remove, save, stat, usage, write };
346
+ export { FileEncoding, FileEntry, FileMethods, ReadOptions, ReplaceOptions, StorageUsage, WriteOptions, copy, createFolder, list, move, open, read, remove$1 as remove, save, stat, usage, write };
185
347
  }
186
348
  interface FileEntry {
187
349
  name: string;
@@ -273,15 +435,6 @@ interface FileMethods {
273
435
  params: Record<string, never>;
274
436
  result: StorageUsage;
275
437
  };
276
- 'dash.storage.file.pick': {
277
- params: {
278
- types?: string[];
279
- };
280
- result: DotFile;
281
- };
282
- }
283
- interface PickFileOptions {
284
- types?: string[];
285
438
  }
286
439
  interface ReadOptions {
287
440
  as?: FileEncoding;
@@ -293,22 +446,50 @@ interface WriteOptions {
293
446
  interface ReplaceOptions {
294
447
  overwrite?: boolean;
295
448
  }
449
+ /**
450
+ * Reads a file of up to 5 MB.
451
+ * @since 1.0
452
+ */
296
453
  declare function read(path: string, options?: ReadOptions, callOptions?: CallOptions): DashRequest<string>;
454
+ /**
455
+ * Creates any missing folders above the file.
456
+ * @since 1.0
457
+ */
297
458
  declare function write(path: string, data: string, options?: WriteOptions, callOptions?: CallOptions): DashRequest<FileEntry>;
459
+ /** @since 1.0 */
298
460
  declare function stat(path: string, callOptions?: CallOptions): DashRequest<FileEntry | null>;
461
+ /**
462
+ * Sorted by path.
463
+ * @since 1.0
464
+ */
299
465
  declare function list(path?: string, options?: {
300
466
  recursive?: boolean;
301
467
  }, callOptions?: CallOptions): DashRequest<FileEntry[]>;
468
+ /** @since 1.0 */
302
469
  declare function createFolder(path: string, callOptions?: CallOptions): DashRequest<FileEntry>;
470
+ /** @since 1.0 */
303
471
  declare function move(from: string, to: string, options?: ReplaceOptions, callOptions?: CallOptions): DashRequest<FileEntry>;
472
+ /** @since 1.0 */
304
473
  declare function copy(from: string, to: string, options?: ReplaceOptions, callOptions?: CallOptions): DashRequest<FileEntry>;
474
+ /**
475
+ * Removing a folder that isn't empty needs `recursive`.
476
+ * @since 1.0
477
+ */
305
478
  declare function remove$1(path: string, options?: {
306
479
  recursive?: boolean;
307
480
  }, callOptions?: CallOptions): DashRequest<void>;
308
- declare function save(file: DotFile | string, path: string, options?: ReplaceOptions, callOptions?: CallOptions): DashRequest<FileEntry>;
481
+ /**
482
+ * Keeps a temporary file, such as a download, at `path`.
483
+ * @since 1.0
484
+ */
485
+ declare function save(file: DotFile, path: string, options?: ReplaceOptions, callOptions?: CallOptions): DashRequest<FileEntry>;
486
+ /**
487
+ * A stored file as a DotFile, to show with its `url` or send with `http.upload`.
488
+ * @since 1.0
489
+ */
309
490
  declare function open(path: string, callOptions?: CallOptions): DashRequest<DotFile>;
491
+ /** @since 1.0 */
310
492
  declare function usage(callOptions?: CallOptions): DashRequest<StorageUsage>;
311
- declare function pick(options?: PickFileOptions, callOptions?: CallOptions): DashRequest<DotFile>;
312
493
  declare namespace secret_d_exports {
313
494
  export { SecretMethods, clear, get, remove, set };
314
495
  }
@@ -337,12 +518,16 @@ interface SecretMethods {
337
518
  result: void;
338
519
  };
339
520
  }
521
+ /** @since 1.0 */
340
522
  declare function get(key: string, callOptions?: CallOptions): DashRequest<string | null>;
523
+ /** @since 1.0 */
341
524
  declare function set(key: string, value: string, callOptions?: CallOptions): DashRequest<void>;
525
+ /** @since 1.0 */
342
526
  declare function remove(key: string, callOptions?: CallOptions): DashRequest<void>;
527
+ /** @since 1.0 */
343
528
  declare function clear(callOptions?: CallOptions): DashRequest<void>;
344
- declare namespace index_d_exports$3 {
345
- export { CacheSetOptions, CacheValue, FileEncoding, FileEntry, PickFileOptions, ReadOptions, ReplaceOptions, StorageMethods, StorageUsage, WriteOptions, cache_d_exports as cache, file_d_exports as file, secret_d_exports as secret };
529
+ declare namespace index_d_exports$4 {
530
+ export { CacheSetOptions, CacheValue, FileEncoding, FileEntry, ReadOptions, ReplaceOptions, StorageMethods, StorageUsage, WriteOptions, cache_d_exports as cache, file_d_exports as file, secret_d_exports as secret };
346
531
  }
347
532
  type StorageMethods = FileMethods & CacheMethods & SecretMethods;
348
533
  //#endregion
@@ -355,6 +540,7 @@ interface ClipboardMethods {
355
540
  result: void;
356
541
  };
357
542
  }
543
+ /** @since 1.0 */
358
544
  declare function copyText(text: string, callOptions?: CallOptions): DashRequest<void>;
359
545
  //#endregion
360
546
  //#region src/system/delay.d.ts
@@ -366,6 +552,10 @@ interface DelayMethods {
366
552
  result: void;
367
553
  };
368
554
  }
555
+ /**
556
+ * Resolves after `milliseconds`. The host keeps the time, since a dot's logic has no timers.
557
+ * @since 1.0
558
+ */
369
559
  declare function delay(milliseconds: number, callOptions?: CallOptions): DashRequest<void>;
370
560
  //#endregion
371
561
  //#region src/system/dial.d.ts
@@ -377,6 +567,12 @@ interface DialMethods {
377
567
  result: void;
378
568
  };
379
569
  }
570
+ /**
571
+ * Opens the phone's dialer with `number` ready, such as "+232 76 123456" or a USSD code such as
572
+ * "*715#". The person taps Call. Spaces and dashes are fine; anything else but digits, +, * and #
573
+ * rejects with `invalid`.
574
+ * @since 1.0
575
+ */
380
576
  declare function dial(number: string, callOptions?: CallOptions): DashRequest<void>;
381
577
  //#endregion
382
578
  //#region src/system/haptics.d.ts
@@ -390,6 +586,10 @@ interface HapticsMethods {
390
586
  result: void;
391
587
  };
392
588
  }
589
+ /**
590
+ * Plays a short vibration. Resolves once it's done.
591
+ * @since 1.0
592
+ */
393
593
  declare function vibrate(options?: VibrateOptions, callOptions?: CallOptions): DashRequest<void>;
394
594
  //#endregion
395
595
  //#region src/system/info.d.ts
@@ -402,6 +602,7 @@ interface SystemInfo {
402
602
  timeZone: string;
403
603
  dashVersion: string;
404
604
  hostVersion: string;
605
+ apiVersions: string[];
405
606
  }
406
607
  interface InfoMethods {
407
608
  'dash.system.info': {
@@ -409,6 +610,10 @@ interface InfoMethods {
409
610
  result: SystemInfo;
410
611
  };
411
612
  }
613
+ /**
614
+ * The phone and the Dash the dot runs in. It has nothing that identifies the person or the phone.
615
+ * @since 1.0
616
+ */
412
617
  declare function info(callOptions?: CallOptions): DashRequest<SystemInfo>;
413
618
  //#endregion
414
619
  //#region src/system/open-url.d.ts
@@ -420,6 +625,10 @@ interface OpenUrlMethods {
420
625
  result: void;
421
626
  };
422
627
  }
628
+ /**
629
+ * Opens an https address in the device's browser. Any other address rejects with `invalid`.
630
+ * @since 1.0
631
+ */
423
632
  declare function openUrl(url: string, callOptions?: CallOptions): DashRequest<void>;
424
633
  //#endregion
425
634
  //#region src/system/screen.d.ts
@@ -438,7 +647,17 @@ interface ScreenMethods {
438
647
  result: void;
439
648
  };
440
649
  }
650
+ /**
651
+ * Keeps the screen from dimming and locking while the dot shows, such as while a ticket's QR code is
652
+ * up. Dash undoes it when the dot closes.
653
+ * @since 1.0
654
+ */
441
655
  declare function keepAwake(on: boolean, callOptions?: CallOptions): DashRequest<void>;
656
+ /**
657
+ * `max` makes the screen as bright as it goes, so a scanner can read a QR code on it, and `normal`
658
+ * puts it back. Dash puts it back too when the dot closes or the person leaves the app.
659
+ * @since 1.0
660
+ */
442
661
  declare function brightness(level: BrightnessLevel, callOptions?: CallOptions): DashRequest<void>;
443
662
  //#endregion
444
663
  //#region src/system/share.d.ts
@@ -446,7 +665,7 @@ interface ShareOptions {
446
665
  title?: string;
447
666
  text?: string;
448
667
  url?: string;
449
- file?: DotFile | string;
668
+ file?: DotFile;
450
669
  }
451
670
  interface ShareMethods {
452
671
  'dash.system.share': {
@@ -459,21 +678,28 @@ interface ShareMethods {
459
678
  result: void;
460
679
  };
461
680
  }
681
+ /**
682
+ * Opens the device's share sheet. Resolves once it shows.
683
+ * @since 1.0
684
+ */
462
685
  declare function share(options: ShareOptions, callOptions?: CallOptions): DashRequest<void>;
463
686
  //#endregion
464
687
  //#region src/system/torch.d.ts
465
- type TorchState = 'on' | 'off';
466
688
  interface TorchMethods {
467
689
  'dash.system.torch': {
468
690
  params: {
469
- state: TorchState;
691
+ on: boolean;
470
692
  };
471
693
  result: void;
472
694
  };
473
695
  }
474
- declare function torch(state: TorchState, callOptions?: CallOptions): DashRequest<void>;
475
- declare namespace index_d_exports$2 {
476
- export { BrightnessLevel, Platform, ShareOptions, SystemInfo, SystemMethods, TorchState, VibrateOptions, VibrationStyle, brightness, copyText, delay, dial, info, keepAwake, openUrl, share, torch, vibrate };
696
+ /**
697
+ * Turns the torch on or off. Rejects with `unsupported` on a device without one.
698
+ * @since 1.0
699
+ */
700
+ declare function torch(on: boolean, callOptions?: CallOptions): DashRequest<void>;
701
+ declare namespace index_d_exports$3 {
702
+ export { BrightnessLevel, Platform, ShareOptions, SystemInfo, SystemMethods, VibrateOptions, VibrationStyle, brightness, copyText, delay, dial, info, keepAwake, openUrl, share, torch, vibrate };
477
703
  }
478
704
  type SystemMethods = ClipboardMethods & DelayMethods & DialMethods & HapticsMethods & InfoMethods & OpenUrlMethods & ScreenMethods & ShareMethods & TorchMethods;
479
705
  //#endregion
@@ -497,6 +723,10 @@ interface DialogMethods {
497
723
  result: AlertResult;
498
724
  };
499
725
  }
726
+ /**
727
+ * Shows a native alert. Resolves with the action the person chose.
728
+ * @since 1.0
729
+ */
500
730
  declare function alert(options: AlertOptions, callOptions?: CallOptions): DashRequest<AlertResult>;
501
731
  //#endregion
502
732
  //#region src/ui/pickers.d.ts
@@ -520,37 +750,131 @@ interface PickerMethods {
520
750
  result: string;
521
751
  };
522
752
  }
753
+ /**
754
+ * Opens the phone's own calendar. Resolves with the chosen date, such as "2026-10-24", or rejects
755
+ * with `cancelled` if the person closes it.
756
+ * @since 1.0
757
+ */
523
758
  declare function pickDate(options?: PickDateOptions, callOptions?: CallOptions): DashRequest<string>;
759
+ /**
760
+ * Opens the phone's own clock. Resolves with the chosen time in 24 hours, such as "19:30", or
761
+ * rejects with `cancelled` if the person closes it.
762
+ * @since 1.0
763
+ */
524
764
  declare function pickTime(options?: PickTimeOptions, callOptions?: CallOptions): DashRequest<string>;
525
- declare namespace index_d_exports$1 {
765
+ declare namespace index_d_exports$2 {
526
766
  export { AlertAction, AlertOptions, AlertResult, PickDateOptions, PickTimeOptions, UIMethods, alert, pickDate, pickTime };
527
767
  }
528
768
  type UIMethods = DialogMethods & PickerMethods;
529
769
  //#endregion
530
770
  //#region src/methods.d.ts
531
- type DashMethods = UIMethods & SystemMethods & NetworkMethods & StorageMethods & MediaMethods & ContactsMethods;
771
+ type DashMethods = UIMethods & SystemMethods & NetworkMethods & StorageMethods & MediaMethods & ContactsMethods & DotMethods & AccountMethods & CryptoMethods;
532
772
  type DashMethod = keyof DashMethods;
533
773
  //#endregion
534
774
  //#region src/call.d.ts
535
775
  type CallOptions = HostCallOptions;
536
776
  type DashRequest<Result> = HostRequest<Result>;
537
- //#endregion
538
- //#region src/contacts/pick-phone.d.ts
539
- interface PickedContact {
540
- name: string;
541
- phone: string;
777
+ declare namespace index_d_exports$1 {
778
+ export { AccountMethods, AccountProfile, ReadProfileOptions, readProfile };
542
779
  }
543
- interface PickPhoneMethods {
544
- 'dash.contacts.pickPhone': {
545
- params: Record<string, never>;
546
- result: PickedContact;
780
+ interface ReadProfileOptions {
781
+ nonce: string;
782
+ }
783
+ interface AccountProfile {
784
+ accountIdToken: string;
785
+ fullName: string;
786
+ }
787
+ interface AccountMethods {
788
+ 'dash.account.readProfile': {
789
+ params: {
790
+ nonce: string;
791
+ };
792
+ result: AccountProfile;
547
793
  };
548
794
  }
549
- declare function pickPhone(callOptions?: CallOptions): DashRequest<PickedContact>;
795
+ /**
796
+ * The person signed in to Dash: their full name, and a token that names them in this dot. Needs the
797
+ * `account` permission. Rejects with `invalid` for a nonce that's empty or longer than 128
798
+ * characters, and with `failed` when no one is signed in.
799
+ * @since 1.0
800
+ */
801
+ declare function readProfile(options: ReadProfileOptions, callOptions?: CallOptions): DashRequest<AccountProfile>;
802
+ //#endregion
803
+ //#region src/api-versions.d.ts
804
+ export declare const DASH_API_VERSION = "1.0";
805
+ export declare const DASH_API_SINCE: {
806
+ readonly 'account.readProfile': "1.0";
807
+ readonly 'contacts.pickPhone': "1.0";
808
+ readonly 'crypto.hmac': "1.0";
809
+ readonly 'crypto.randomBytes': "1.0";
810
+ readonly 'crypto.randomUUID': "1.0";
811
+ readonly 'crypto.sha256': "1.0";
812
+ readonly 'crypto.sha512': "1.0";
813
+ readonly 'dot.close': "1.0";
814
+ readonly 'media.pickFile': "1.0";
815
+ readonly 'media.pickPhoto': "1.0";
816
+ readonly 'media.scanCode': "1.0";
817
+ readonly 'network.http.download': "1.0";
818
+ readonly 'network.http.request': "1.0";
819
+ readonly 'network.http.upload': "1.0";
820
+ readonly 'network.status': "1.0";
821
+ readonly 'storage.cache.clear': "1.0";
822
+ readonly 'storage.cache.exists': "1.0";
823
+ readonly 'storage.cache.get': "1.0";
824
+ readonly 'storage.cache.keys': "1.0";
825
+ readonly 'storage.cache.remove': "1.0";
826
+ readonly 'storage.cache.set': "1.0";
827
+ readonly 'storage.file.copy': "1.0";
828
+ readonly 'storage.file.createFolder': "1.0";
829
+ readonly 'storage.file.list': "1.0";
830
+ readonly 'storage.file.move': "1.0";
831
+ readonly 'storage.file.open': "1.0";
832
+ readonly 'storage.file.read': "1.0";
833
+ readonly 'storage.file.remove': "1.0";
834
+ readonly 'storage.file.save': "1.0";
835
+ readonly 'storage.file.stat': "1.0";
836
+ readonly 'storage.file.usage': "1.0";
837
+ readonly 'storage.file.write': "1.0";
838
+ readonly 'storage.secret.clear': "1.0";
839
+ readonly 'storage.secret.get': "1.0";
840
+ readonly 'storage.secret.remove': "1.0";
841
+ readonly 'storage.secret.set': "1.0";
842
+ readonly 'system.brightness': "1.0";
843
+ readonly 'system.copyText': "1.0";
844
+ readonly 'system.delay': "1.0";
845
+ readonly 'system.dial': "1.0";
846
+ readonly 'system.info': "1.0";
847
+ readonly 'system.keepAwake': "1.0";
848
+ readonly 'system.openUrl': "1.0";
849
+ readonly 'system.share': "1.0";
850
+ readonly 'system.torch': "1.0";
851
+ readonly 'system.vibrate': "1.0";
852
+ readonly 'ui.alert': "1.0";
853
+ readonly 'ui.pickDate': "1.0";
854
+ readonly 'ui.pickTime': "1.0";
855
+ };
856
+ type DashFeature = keyof typeof DASH_API_SINCE;
857
+ export declare function useHostDashApiVersions(versions: readonly string[]): void;
858
+ export declare function warnAboveDashApiVersion(minApiVersion: string | undefined): void;
859
+ /**
860
+ * Whether the Dash the dot runs in has `feature`: a call, such as "contacts.pickPhone", or a field
861
+ * added to a call later. Check it before using one that's newer than the dot's minApiVersion.
862
+ * @since 1.0
863
+ */
864
+ declare function supports(feature: DashFeature): boolean;
865
+ //#endregion
866
+ //#region src/utils/encoding.d.ts
867
+ declare const base64: {
868
+ encode(text: string): string;
869
+ decode(encoded: string): string;
870
+ };
871
+ declare const hex: {
872
+ encode(text: string): string;
873
+ decode(encoded: string): string;
874
+ };
550
875
  declare namespace index_d_exports {
551
- export { ContactsMethods, PickedContact, pickPhone };
876
+ export { base64, hex };
552
877
  }
553
- type ContactsMethods = PickPhoneMethods;
554
878
  //#endregion
555
879
  //#region src/tracked.d.ts
556
880
  export declare function tracked<Group extends object>(group: Group, track: (request: DashRequest<unknown>) => void): Group;
@@ -575,14 +899,19 @@ export declare function debounce(milliseconds: number): (dash: Dash) => Promise<
575
899
  //#endregion
576
900
  //#region src/index.d.ts
577
901
  export declare const dash: {
578
- ui: typeof index_d_exports$1;
579
- system: typeof index_d_exports$2;
580
- network: typeof index_d_exports$4;
581
- storage: typeof index_d_exports$3;
582
- media: typeof index_d_exports$5;
583
- contacts: typeof index_d_exports;
902
+ ui: typeof index_d_exports$2;
903
+ system: typeof index_d_exports$3;
904
+ network: typeof index_d_exports$5;
905
+ storage: typeof index_d_exports$4;
906
+ media: typeof index_d_exports$6;
907
+ contacts: typeof index_d_exports$9;
908
+ dot: typeof index_d_exports$7;
909
+ account: typeof index_d_exports$1;
910
+ crypto: typeof index_d_exports$8;
911
+ utils: typeof index_d_exports;
912
+ supports: typeof supports;
584
913
  };
585
914
  export type Dash = typeof dash;
586
915
  //#endregion
587
- export { type AlertAction, type AlertOptions, type AlertResult, type BrightnessLevel, type CacheSetOptions, type CacheValue, type CallOptions, type CodeFormat, type ConnectionType, type ContactsMethods, DashError, type DashErrorCode, type DashMethod, type DashMethods, type DashRequest, type DotFile, type FileEncoding, type FileEntry, HostError, type HostErrorCode, type HttpDownloadRequest, type HttpDownloadResponse, type HttpMethod, type HttpReadOptions, type HttpRequest, type HttpRequestBody, type HttpResponse, type HttpUploadFile, type HttpUploadRequest, type MediaMethods, type NetworkMethods, type NetworkStatus, type PhotoSource, type PickDateOptions, type PickFileOptions, type PickPhotoOptions, type PickTimeOptions, type PickedContact, type Platform, type ReadOptions, type ReplaceOptions, type ScannedCode, type ShareOptions, type StorageMethods, type StorageUsage, type SystemInfo, type SystemMethods, type TorchState, type UIMethods, type VibrateOptions, type VibrationStyle, type WriteOptions };
916
+ export { type AccountProfile, type AlertAction, type AlertOptions, type AlertResult, type BrightnessLevel, type CacheSetOptions, type CacheValue, type CallOptions, type CodeFormat, type ConnectionType, type ContactsMethods, type CryptoInput, type CryptoOutputOptions, DashError, type DashErrorCode, type DashFeature, type DashMethod, type DashMethods, type DashRequest, type DotFile, type FileEncoding, type FileEntry, type HmacAlgorithm, HostError, type HostErrorCode, type HttpDownloadRequest, type HttpDownloadResponse, type HttpMethod, type HttpReadOptions, type HttpRequest, type HttpRequestBody, type HttpResponse, type HttpUploadFile, type HttpUploadRequest, type MediaMethods, type NetworkMethods, type NetworkStatus, type PhotoSource, type PickDateOptions, type PickFileOptions, type PickPhotoOptions, type PickTimeOptions, type PickedContact, type Platform, type ReadOptions, type ReadProfileOptions, type ReplaceOptions, type ScannedCode, type ShareOptions, type StorageMethods, type StorageUsage, type SystemInfo, type SystemMethods, type UIMethods, type VibrateOptions, type VibrationStyle, type WriteOptions };
588
917
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/files.ts","../src/media/pick-photo.ts","../src/media/scan-code.ts","../src/media/index.ts","../src/network/http.ts","../src/network/status.ts","../src/network/index.ts","../src/storage/cache.ts","../src/storage/file.ts","../src/storage/secret.ts","../src/storage/index.ts","../src/system/clipboard.ts","../src/system/delay.ts","../src/system/dial.ts","../src/system/haptics.ts","../src/system/info.ts","../src/system/open-url.ts","../src/system/screen.ts","../src/system/share.ts","../src/system/torch.ts","../src/system/index.ts","../src/ui/dialogs.ts","../src/ui/pickers.ts","../src/ui/index.ts","../src/methods.ts","../src/call.ts","../src/contacts/pick-phone.ts","../src/contacts/index.ts","../src/tracked.ts","../src/errors.ts","../src/latest.ts","../src/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/contacts/pick-phone.ts","../src/contacts/index.ts","../src/crypto/index.ts","../src/dot/index.ts","../src/files.ts","../src/media/pick-file.ts","../src/media/pick-photo.ts","../src/media/scan-code.ts","../src/media/index.ts","../src/network/http.ts","../src/network/status.ts","../src/network/index.ts","../src/storage/cache.ts","../src/storage/file.ts","../src/storage/secret.ts","../src/storage/index.ts","../src/system/clipboard.ts","../src/system/delay.ts","../src/system/dial.ts","../src/system/haptics.ts","../src/system/info.ts","../src/system/open-url.ts","../src/system/screen.ts","../src/system/share.ts","../src/system/torch.ts","../src/system/index.ts","../src/ui/dialogs.ts","../src/ui/pickers.ts","../src/ui/index.ts","../src/methods.ts","../src/call.ts","../src/account/index.ts","../src/api-versions.ts","../src/utils/encoding.ts","../src/utils/index.ts","../src/tracked.ts","../src/errors.ts","../src/latest.ts","../src/index.ts"],"mappings":"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"}