@siafoundation/sia-storage 0.1.5 → 0.2.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.
@@ -58,6 +58,40 @@ export interface PackedUploadOptions {
58
58
  }
59
59
 
60
60
 
61
+ /**
62
+ * A signed request to create a pre-authorized key in indexd.
63
+ */
64
+ export type SignedPreAuthorizedKeyRequest = {
65
+ publicKey: string;
66
+ signature: string;
67
+ connectKey: string;
68
+ expiration: string;
69
+ totalUses: number;
70
+ allowedAppID?: string;
71
+ };
72
+
73
+ /**
74
+ * An unsigned request to create a pre-authorized key in indexd.
75
+ */
76
+ export interface PreAuthorizedKeyRequest {
77
+ /**
78
+ * The connect key used to authorize connections.
79
+ */
80
+ connectKey: string;
81
+ /**
82
+ * When the authorization expires.
83
+ */
84
+ expiration: Date;
85
+ /**
86
+ * The maximum number of authorized connections.
87
+ */
88
+ totalUses: number;
89
+ /**
90
+ * The permitted application, or any application when absent.
91
+ */
92
+ allowedAppID?: string | null;
93
+ }
94
+
61
95
  /**
62
96
  * Application info registered with the indexer.
63
97
  */
@@ -129,8 +163,9 @@ export interface AppMetadata {
129
163
  }
130
164
 
131
165
  /**
132
- * TS interface for `Sdk::objectEvents`'s `cursor` parameter. Field
133
- * names must match the Reflect reads in `sdk.rs`.
166
+ * TS interface for the `cursor` parameter of `Sdk::objectEvents` and
167
+ * `Sdk::objectEventSummaries`. Field names must match the Reflect reads in
168
+ * `objects_cursor_from_js`.
134
169
  */
135
170
  export interface ObjectsCursor {
136
171
  id: string;
@@ -205,10 +240,9 @@ export class Builder {
205
240
  [Symbol.dispose](): void;
206
241
  /**
207
242
  * Connects using a pre-authorized key, bypassing the interactive approval
208
- * flow, and returns a Sdk. `preAuthorizedKeySeed` is the 32-byte
209
- * pre-authorized private key (Uint8Array); `mnemonic` derives the app key.
243
+ * flow, and returns a Sdk. `mnemonic` derives the app key.
210
244
  */
211
- connectPreAuthorized(pre_authorized_key_seed: Uint8Array, mnemonic: string): Promise<Sdk>;
245
+ connectPreAuthorized(pre_authorized_key: PreAuthorizedKey, mnemonic: string): Promise<Sdk>;
212
246
  /**
213
247
  * Attempts to connect using an existing AppKey.
214
248
  * Returns a Sdk if the key is valid, or undefined if not registered.
@@ -323,9 +357,29 @@ export class ObjectEvent {
323
357
  }
324
358
 
325
359
  /**
326
- * An object listed without its slabs, as `SharedSdk.objectSummaries` returns
327
- * it. It describes the object but cannot be downloaded. Fetch the full
328
- * object with `SharedSdk.object(id)` to download it.
360
+ * An object event from the indexer, without the object's slabs.
361
+ */
362
+ export class ObjectEventSummary {
363
+ private constructor();
364
+ free(): void;
365
+ [Symbol.dispose](): void;
366
+ readonly deleted: boolean;
367
+ readonly id: string;
368
+ /**
369
+ * Returns the object associated with this event, if it exists.
370
+ */
371
+ readonly object: ObjectSummary | undefined;
372
+ /**
373
+ * Returns the time the event occurred.
374
+ */
375
+ readonly updatedAt: Date;
376
+ }
377
+
378
+ /**
379
+ * An object listed without its slabs, as `Sdk.objectEventSummaries` and
380
+ * `SharedSdk.objectSummaries` return it. It describes the object but cannot
381
+ * be downloaded. Fetch the full object with `Sdk.object(id)` or
382
+ * `SharedSdk.object(id)` to download it.
329
383
  */
330
384
  export class ObjectSummary {
331
385
  private constructor();
@@ -477,6 +531,42 @@ export class PinnedObject {
477
531
  updatedAt(): Date;
478
532
  }
479
533
 
534
+ /**
535
+ * A key used to authorize application connections with indexd.
536
+ */
537
+ export class PreAuthorizedKey {
538
+ free(): void;
539
+ [Symbol.dispose](): void;
540
+ /**
541
+ * Exports the key as a 32-byte seed.
542
+ */
543
+ export(): Uint8Array;
544
+ /**
545
+ * Imports a pre-authorized key from a 32-byte seed.
546
+ */
547
+ static import(seed: Uint8Array): PreAuthorizedKey;
548
+ /**
549
+ * Generates a new pre-authorized key.
550
+ */
551
+ constructor();
552
+ /**
553
+ * Returns the Ed25519 public key as a string.
554
+ */
555
+ publicKey(): string;
556
+ /**
557
+ * Signs a message and returns its 64-byte signature.
558
+ */
559
+ sign(message: Uint8Array): Uint8Array;
560
+ /**
561
+ * Returns a signed request for creating a pre-authorized key in indexd.
562
+ */
563
+ signRequest(request: PreAuthorizedKeyRequest): SignedPreAuthorizedKeyRequest;
564
+ /**
565
+ * Verifies a message signature using this key.
566
+ */
567
+ verifySignature(message: Uint8Array, signature: Uint8Array): boolean;
568
+ }
569
+
480
570
  /**
481
571
  * The main Sia storage SDK. Provides methods for uploading, downloading,
482
572
  * and managing objects on the Sia storage network via an indexer.
@@ -525,6 +615,10 @@ export class Sdk {
525
615
  * Returns a `PinnedObject` handle for use with download, share, seal, etc.
526
616
  */
527
617
  object(key_hex: string): Promise<PinnedObject>;
618
+ /**
619
+ * Returns object events from the indexer without the objects' slabs.
620
+ */
621
+ objectEventSummaries(cursor: ObjectsCursor | null | undefined, limit: number): Promise<ObjectEventSummary[]>;
528
622
  /**
529
623
  * Returns object events for syncing local state with the indexer.
530
624
  */
@@ -717,6 +811,7 @@ export interface InitOutput {
717
811
  readonly __wbg_builder_free: (a: number, b: number) => void;
718
812
  readonly __wbg_keyrecord_free: (a: number, b: number) => void;
719
813
  readonly __wbg_objectevent_free: (a: number, b: number) => void;
814
+ readonly __wbg_objecteventsummary_free: (a: number, b: number) => void;
720
815
  readonly __wbg_objectsummary_free: (a: number, b: number) => void;
721
816
  readonly __wbg_packedupload_free: (a: number, b: number) => void;
722
817
  readonly __wbg_pinnedobject_free: (a: number, b: number) => void;
@@ -727,7 +822,7 @@ export interface InitOutput {
727
822
  readonly appkey_publicKey: (a: number) => [number, number];
728
823
  readonly appkey_sign: (a: number, b: number, c: number) => [number, number];
729
824
  readonly appkey_verifySignature: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
730
- readonly builder_connectPreAuthorized: (a: number, b: number, c: number, d: number, e: number) => any;
825
+ readonly builder_connectPreAuthorized: (a: number, b: number, c: number, d: number) => any;
731
826
  readonly builder_connected: (a: number, b: number) => any;
732
827
  readonly builder_matchesExistingAppKey: (a: number, b: number, c: number) => any;
733
828
  readonly builder_new: (a: number, b: number, c: any) => [number, number, number];
@@ -746,6 +841,10 @@ export interface InitOutput {
746
841
  readonly objectevent_id: (a: number) => [number, number];
747
842
  readonly objectevent_object: (a: number) => number;
748
843
  readonly objectevent_updatedAt: (a: number) => any;
844
+ readonly objecteventsummary_deleted: (a: number) => number;
845
+ readonly objecteventsummary_id: (a: number) => [number, number];
846
+ readonly objecteventsummary_object: (a: number) => number;
847
+ readonly objecteventsummary_updatedAt: (a: number) => any;
749
848
  readonly objectsummary_createdAt: (a: number) => any;
750
849
  readonly objectsummary_id: (a: number) => [number, number];
751
850
  readonly objectsummary_metadata: (a: number) => [number, number];
@@ -770,6 +869,13 @@ export interface InitOutput {
770
869
  readonly pinnedobject_truncate: (a: number, b: bigint) => number;
771
870
  readonly pinnedobject_updateMetadata: (a: number, b: number, c: number) => void;
772
871
  readonly pinnedobject_updatedAt: (a: number) => any;
872
+ readonly preauthorizedkey_export: (a: number) => [number, number];
873
+ readonly preauthorizedkey_import: (a: number, b: number) => [number, number, number];
874
+ readonly preauthorizedkey_new: () => number;
875
+ readonly preauthorizedkey_publicKey: (a: number) => [number, number];
876
+ readonly preauthorizedkey_sign: (a: number, b: number, c: number) => [number, number];
877
+ readonly preauthorizedkey_signRequest: (a: number, b: any) => [number, number, number];
878
+ readonly preauthorizedkey_verifySignature: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
773
879
  readonly sdk_account: (a: number) => any;
774
880
  readonly sdk_appKey: (a: number) => number;
775
881
  readonly sdk_createSharingKey: (a: number, b: number, c: number, d: number) => any;
@@ -777,6 +883,7 @@ export interface InitOutput {
777
883
  readonly sdk_download: (a: number, b: number, c: number) => [number, number, number];
778
884
  readonly sdk_hosts: (a: number, b: number) => any;
779
885
  readonly sdk_object: (a: number, b: number, c: number) => any;
886
+ readonly sdk_objectEventSummaries: (a: number, b: any, c: number) => any;
780
887
  readonly sdk_objectEvents: (a: number, b: any, c: number) => any;
781
888
  readonly sdk_objectFromShareUrl: (a: number, b: number, c: number) => any;
782
889
  readonly sdk_objectShareUrl: (a: number, b: number, c: any) => [number, number, number, number];
@@ -803,6 +910,7 @@ export interface InitOutput {
803
910
  readonly sharingkey_publicKey: (a: number) => [number, number];
804
911
  readonly sharingkey_seed: (a: number) => [number, number];
805
912
  readonly validateRecoveryPhrase: (a: number, b: number) => [number, number];
913
+ readonly __wbg_preauthorizedkey_free: (a: number, b: number) => void;
806
914
  readonly __wbg_sharingkey_free: (a: number, b: number) => void;
807
915
  readonly __wbg_intounderlyingbytesource_free: (a: number, b: number) => void;
808
916
  readonly __wbg_intounderlyingsink_free: (a: number, b: number) => void;
@@ -821,7 +929,7 @@ export interface InitOutput {
821
929
  readonly wasm_bindgen_63576b009277873___convert__closures_____invoke___wasm_bindgen_63576b009277873___sys__Undefined__core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_63576b009277873___JsError___true_: (a: number, b: number, c: any) => [number, number];
822
930
  readonly wasm_bindgen_63576b009277873___convert__closures_____invoke___wasm_bindgen_63576b009277873___sys__Undefined__core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_63576b009277873___JsError___true__3: (a: number, b: number, c: any) => [number, number];
823
931
  readonly wasm_bindgen_63576b009277873___convert__closures_____invoke___wasm_bindgen_63576b009277873___sys__Undefined__core_37ee0ce0c4cd57d5___result__Result_____wasm_bindgen_63576b009277873___JsError___true__4: (a: number, b: number, c: any) => [number, number];
824
- readonly wasm_bindgen_63576b009277873___convert__closures_____invoke___js_sys_eaf17bee0f0de45e___Function_fn_wasm_bindgen_63576b009277873___JsValue_____wasm_bindgen_63576b009277873___sys__Undefined___js_sys_eaf17bee0f0de45e___Function_fn_wasm_bindgen_63576b009277873___JsValue_____wasm_bindgen_63576b009277873___sys__Undefined_______true_: (a: number, b: number, c: any, d: any) => void;
932
+ readonly wasm_bindgen_63576b009277873___convert__closures_____invoke___js_sys_89dff7ebd9bf220e___Function_fn_wasm_bindgen_63576b009277873___JsValue_____wasm_bindgen_63576b009277873___sys__Undefined___js_sys_89dff7ebd9bf220e___Function_fn_wasm_bindgen_63576b009277873___JsValue_____wasm_bindgen_63576b009277873___sys__Undefined_______true_: (a: number, b: number, c: any, d: any) => void;
825
933
  readonly wasm_bindgen_63576b009277873___convert__closures_____invoke___wasm_bindgen_63576b009277873___JsValue______true_: (a: number, b: number, c: any) => void;
826
934
  readonly wasm_bindgen_63576b009277873___convert__closures_____invoke_______true_: (a: number, b: number) => void;
827
935
  readonly __wbindgen_malloc: (a: number, b: number) => number;