@agoric/notifier 0.6.3-dev-d15cb41.0 → 0.6.3-dev-e456308.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.
package/exported.js CHANGED
@@ -1,3 +1,2 @@
1
- // @jessie-check
2
-
3
- import './src/types-ambient.js';
1
+ // Dummy file for .d.ts twin to declare ambients
2
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agoric/notifier",
3
- "version": "0.6.3-dev-d15cb41.0+d15cb41",
3
+ "version": "0.6.3-dev-e456308.0+e456308",
4
4
  "description": "Notifier allows services to update clients about state changes using a stream of promises",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -9,7 +9,7 @@
9
9
  },
10
10
  "scripts": {
11
11
  "build": "exit 0",
12
- "prepack": "echo \"export {}; \" | cat - src/types-ambient.js > src/types.js && tsc --build tsconfig.build.json",
12
+ "prepack": "tsc --build tsconfig.build.json",
13
13
  "postpack": "git clean -f '*.d.ts*' src/types.js",
14
14
  "test": "ava",
15
15
  "test:c8": "c8 $C8_OPTIONS ava --config=ava-nesm.config.js",
@@ -33,19 +33,19 @@
33
33
  },
34
34
  "homepage": "https://github.com/Agoric/agoric-sdk#readme",
35
35
  "dependencies": {
36
- "@agoric/assert": "0.6.1-dev-d15cb41.0+d15cb41",
37
- "@agoric/internal": "0.3.3-dev-d15cb41.0+d15cb41",
38
- "@agoric/vat-data": "0.5.3-dev-d15cb41.0+d15cb41",
36
+ "@agoric/assert": "0.6.1-dev-e456308.0+e456308",
37
+ "@agoric/internal": "0.3.3-dev-e456308.0+e456308",
38
+ "@agoric/vat-data": "0.5.3-dev-e456308.0+e456308",
39
39
  "@endo/far": "^1.1.1",
40
40
  "@endo/marshal": "^1.4.1",
41
41
  "@endo/patterns": "^1.3.1",
42
42
  "@endo/promise-kit": "^1.1.1"
43
43
  },
44
44
  "devDependencies": {
45
- "@agoric/kmarshal": "0.1.1-dev-d15cb41.0+d15cb41",
46
- "@agoric/swing-store": "0.9.2-dev-d15cb41.0+d15cb41",
47
- "@agoric/swingset-liveslots": "0.10.3-dev-d15cb41.0+d15cb41",
48
- "@agoric/swingset-vat": "0.32.3-dev-d15cb41.0+d15cb41",
45
+ "@agoric/kmarshal": "0.1.1-dev-e456308.0+e456308",
46
+ "@agoric/swing-store": "0.9.2-dev-e456308.0+e456308",
47
+ "@agoric/swingset-liveslots": "0.10.3-dev-e456308.0+e456308",
48
+ "@agoric/swingset-vat": "0.32.3-dev-e456308.0+e456308",
49
49
  "@endo/init": "^1.1.1",
50
50
  "@endo/ses-ava": "^1.2.1",
51
51
  "ava": "^5.3.0",
@@ -78,5 +78,5 @@
78
78
  "typeCoverage": {
79
79
  "atLeast": 89.76
80
80
  },
81
- "gitHead": "d15cb41b5dc7d3c47a1bc4c034ae74adfc7f838a"
81
+ "gitHead": "e4563081e57304520ee75f85aff490fcdb640c20"
82
82
  }
@@ -1,3 +1,7 @@
1
+ /**
2
+ * @import {ERef} from '@endo/far';
3
+ * @import {BaseNotifier, IterationObserver, LatestTopic} from '../src/types.js';
4
+ */
1
5
  /**
2
6
  * @deprecated Use `subscribeLatest` from `@agoric/notifier/subscribe.js` instead.
3
7
  *
@@ -30,11 +34,14 @@
30
34
  * @returns {ForkableAsyncIterable<T>}
31
35
  */
32
36
  export const makeAsyncIterableFromNotifier: <T_1>(topic: ERef<LatestTopic<T_1>>) => {
33
- [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T_1, T_1, undefined>;
37
+ [Symbol.asyncIterator]: () => import("../src/types.js").ForkableAsyncIterableIterator<T_1, T_1>;
34
38
  } & import("@endo/eventual-send").RemotableBrand<{}, {
35
- [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T_1, T_1, undefined>;
39
+ [Symbol.asyncIterator]: () => import("../src/types.js").ForkableAsyncIterableIterator<T_1, T_1>;
36
40
  }>;
37
41
  export function observeIterator<T_1>(asyncIteratorP: ERef<AsyncIterator<T_1, any, undefined>>, iterationObserver: Partial<IterationObserver<T_1>>): Promise<undefined>;
38
42
  export function observeIteration<T_1>(asyncIterableP: ERef<AsyncIterable<T_1>>, iterationObserver: Partial<IterationObserver<T_1>>): Promise<undefined>;
39
43
  export function observeNotifier<T_1>(notifierP: ERef<LatestTopic<T_1>>, iterationObserver: Partial<IterationObserver<T_1>>): Promise<undefined>;
44
+ import type { LatestTopic } from '../src/types.js';
45
+ import type { ERef } from '@endo/far';
46
+ import type { IterationObserver } from '../src/types.js';
40
47
  //# sourceMappingURL=asyncIterableAdaptor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"asyncIterableAdaptor.d.ts","sourceRoot":"","sources":["asyncIterableAdaptor.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH;;;;GAA6D;AAatD,gCAH8B,GAAC,+EAA3B,OAAO,CAAC,iBAAiB,CAAC,GAAC,CAAC,CAAC,GAC3B,OAAO,CAAC,SAAS,CAAC,CAyB9B;AAaM,iCAH8B,GAAC,+DAA3B,OAAO,CAAC,iBAAiB,CAAC,GAAC,CAAC,CAAC,GAC3B,OAAO,CAAC,SAAS,CAAC,CAK9B;AAaM,gCAH8B,GAAC,wDAA3B,OAAO,CAAC,iBAAiB,CAAC,GAAC,CAAC,CAAC,GAC3B,OAAO,CAAC,SAAS,CAAC,CAGkC"}
1
+ {"version":3,"file":"asyncIterableAdaptor.d.ts","sourceRoot":"","sources":["asyncIterableAdaptor.js"],"names":[],"mappings":"AAKA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH;;;;GAA6D;AAatD,gCAH8B,GAAC,iHACzB,OAAO,CAAC,SAAS,CAAC,CAyB9B;AAaM,iCAH8B,GAAC,iGACzB,OAAO,CAAC,SAAS,CAAC,CAK9B;AAaM,gCAH8B,GAAC,0FACzB,OAAO,CAAC,SAAS,CAAC,CAGkC;iCApGF,iBAAiB;0BADzD,WAAW;uCAC6B,iBAAiB"}
@@ -3,7 +3,10 @@
3
3
  import { E } from '@endo/far';
4
4
  import { subscribeLatest } from './subscribe.js';
5
5
 
6
- import './types-ambient.js';
6
+ /**
7
+ * @import {ERef} from '@endo/far';
8
+ * @import {BaseNotifier, IterationObserver, LatestTopic} from '../src/types.js';
9
+ */
7
10
 
8
11
  /**
9
12
  * @deprecated Use `subscribeLatest` from `@agoric/notifier/subscribe.js` instead.
package/src/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export { makePinnedHistoryTopic } from "./topic.js";
2
2
  export * from "./storesub.js";
3
3
  export * from "./stored-notifier.js";
4
+ export * from "./types.js";
4
5
  export { makePublishKit, prepareDurablePublishKit, ForkableAsyncIterableIteratorShape, IterableEachTopicI, IterableLatestTopicI, SubscriberShape } from "./publish-kit.js";
5
6
  export { subscribeEach, subscribeLatest } from "./subscribe.js";
6
7
  export { makeNotifier, makeNotifierKit, makeNotifierFromAsyncIterable, makeNotifierFromSubscriber } from "./notifier.js";
package/src/index.js CHANGED
@@ -1,5 +1,8 @@
1
1
  // @jessie-check
2
2
 
3
+ // XXX ambient types runtime imports until https://github.com/Agoric/agoric-sdk/issues/6512
4
+ import '@agoric/internal/exported.js';
5
+
3
6
  export {
4
7
  makePublishKit,
5
8
  prepareDurablePublishKit,
@@ -26,3 +29,6 @@ export {
26
29
  } from './asyncIterableAdaptor.js';
27
30
  export * from './storesub.js';
28
31
  export * from './stored-notifier.js';
32
+
33
+ // eslint-disable-next-line import/export -- doesn't know types
34
+ export * from './types.js';
package/src/notifier.d.ts CHANGED
@@ -1,5 +1,9 @@
1
- export function makeNotifier<T>(sharableInternalsP: ERef<LatestTopic<T>>): Notifier<T>;
2
- export function makeNotifierFromSubscriber<T>(subscriber: ERef<Subscriber<T>>): Notifier<T>;
1
+ export function makeNotifier<T>(sharableInternalsP: globalThis.ERef<LatestTopic<T>>): Notifier<T>;
2
+ export function makeNotifierFromSubscriber<T>(subscriber: globalThis.ERef<Subscriber<T>>): Notifier<T>;
3
3
  export function makeNotifierKit<T>(...initialStateArr: [] | [T]): NotifierRecord<T>;
4
4
  export function makeNotifierFromAsyncIterable<T>(asyncIterableP: ERef<AsyncIterable<T>>): Notifier<T>;
5
+ import type { LatestTopic } from './types.js';
6
+ import type { Notifier } from './types.js';
7
+ import type { Subscriber } from './types.js';
8
+ import type { NotifierRecord } from './types.js';
5
9
  //# sourceMappingURL=notifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"notifier.d.ts","sourceRoot":"","sources":["notifier.js"],"names":[],"mappings":"AAcO,6BAFe,CAAC,6CAAV,QAAQ,CAAC,CAAC,CAAC,CAwBvB;AAOM,2CAFe,CAAC,oCAAV,QAAQ,CAAC,CAAC,CAAC,CAiBvB;AAoBM,gCAFqB,CAAC,sBADlB,EAAE,GAAG,CACY,CAAC,AADX,CAAC,GACN,cAAc,CAAC,CAAC,CAAC,CAsB7B;AAcM,8CAFe,CAAC,2CAAV,QAAQ,CAAC,CAAC,CAAC,CAuEvB"}
1
+ {"version":3,"file":"notifier.d.ts","sourceRoot":"","sources":["notifier.js"],"names":[],"mappings":"AAiBO,6BAFe,CAAC,oEAwBtB;AAOM,2CAFe,CAAC,2DAiBtB;AAoBM,gCAFqB,CAAC,sBADlB,EAAE,GAAG,CACY,CAAC,AADX,CAAC,qBAuBlB;AAcM,8CAFe,CAAC,kBADZ,IAAI,CAAC,aAAa,CACP,CAAC,AADQ,CAAC,CAAC,eAwEhC;iCA/K6F,YAAY;8BAAZ,YAAY;gCAAZ,YAAY;oCAAZ,YAAY"}
package/src/notifier.js CHANGED
@@ -3,10 +3,13 @@
3
3
  import { assert } from '@agoric/assert';
4
4
  import { E, Far } from '@endo/far';
5
5
 
6
- import './types-ambient.js';
7
6
  import { makePublishKit } from './publish-kit.js';
8
7
  import { subscribeLatest } from './subscribe.js';
9
8
 
9
+ /**
10
+ * @import {LatestTopic, Notifier, NotifierRecord, PublishKit, Subscriber, UpdateRecord} from './types.js';
11
+ */
12
+
10
13
  /**
11
14
  * @template T
12
15
  * @param {ERef<LatestTopic<T>>} sharableInternalsP
@@ -26,7 +26,7 @@ export const IterableLatestTopicI: import("@endo/patterns").InterfaceGuard<{
26
26
  [Symbol.asyncIterator]: import("@endo/patterns").MethodGuard;
27
27
  }>;
28
28
  export function makePublishKit<T>(): PublishKit<T>;
29
- export function prepareDurablePublishKit(baggage: MapStore<string, any>, kindName: string): (options?: {
29
+ export function prepareDurablePublishKit(baggage: import("@agoric/swingset-liveslots").Baggage, kindName: string): (options?: {
30
30
  valueDurability?: "mandatory" | undefined;
31
31
  } | undefined) => import("@endo/exo").GuardedKit<{
32
32
  publisher: {
@@ -40,7 +40,11 @@ export function prepareDurablePublishKit(baggage: MapStore<string, any>, kindNam
40
40
  };
41
41
  }>;
42
42
  export const SubscriberShape: import("@endo/patterns").Matcher;
43
- export type DurablePublishKitEphemeralKey = Publisher<any>;
43
+ export type DurablePublishKitEphemeralKey = {
44
+ publish: (nonFinalValue: any) => void;
45
+ finish: (completion: any) => void;
46
+ fail: (reason: any) => void;
47
+ };
44
48
  export type DurablePublishKitEphemeralData = {
45
49
  /**
46
50
  * The current-result promise
@@ -57,4 +61,5 @@ export type DurablePublishKitEphemeralData = {
57
61
  */
58
62
  tailR: ((value: any) => void) | undefined;
59
63
  };
64
+ import type { PublishKit } from '../src/types.js';
60
65
  //# sourceMappingURL=publish-kit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"publish-kit.d.ts","sourceRoot":"","sources":["publish-kit.js"],"names":[],"mappings":"AAqBA;;;;GAIG;AAGH,gEAA6D;AAC7D;;;GAGG;;;;;AAMH;;;;GAOE;AAEF;;;GAMG;AAEH;;;GAMG;AA+CI,+BAFiB,CAAC,KAAZ,UAAU,CAAC,CAAC,CAAC,CA4FzB;AA6MM,mFAFI,MAAM;;;;;;;;;;;;GA2EhB;AAGD,+DAAyD;4CAlP3C,SAAS,KAAG;;;;;;cASZ,OAAO,KAAG,GAAG,SAAS;;;;WAEtB,OAAO,KAAG;;;;;WACV,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,SAAS"}
1
+ {"version":3,"file":"publish-kit.d.ts","sourceRoot":"","sources":["publish-kit.js"],"names":[],"mappings":"AAwBA;;;;GAIG;AAGH,gEAA6D;AAC7D;;;GAGG;;;;;AAMH;;;;GAOE;AAEF;;;GAMG;AAEH;;;GAMG;AA+CI,+BAFiB,CAAC,mBA4FxB;AA6MM,kDAHI,OAAO,4BAA4B,EAAE,OAAO,YAC5C,MAAM;;;;;;;;;;;;GA2EhB;AAGD,+DAAyD;;;;;;;;;;;cAzO3C,OAAO,KAAG,GAAG,SAAS;;;;WAEtB,OAAO,KAAG;;;;;WACV,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,SAAS;;gCAnPsI,iBAAiB"}
@@ -5,7 +5,10 @@ import { E, Far } from '@endo/far';
5
5
  import { M, getInterfaceGuardPayload } from '@endo/patterns';
6
6
  import { makePromiseKit } from '@endo/promise-kit';
7
7
 
8
- import './types-ambient.js';
8
+ /**
9
+ * @import {ERef} from '@endo/far';
10
+ * @import {DurablePublishKitState, DurablePublishKitValueDurability, LatestTopic, Notifier, NotifierRecord, PublicationRecord, Publisher, PublishKit, Subscriber, UpdateRecord} from '../src/types.js';
11
+ */
9
12
 
10
13
  const { Fail, quote: q } = assert;
11
14
 
@@ -1,3 +1,37 @@
1
- export function makeStoredNotifier<T>(notifier: ERef<Notifier<T>>, storageNode: ERef<StorageNode>, marshaller: ERef<Marshaller<unknown>>): StoredNotifier<T>;
1
+ export function makeStoredNotifier<T>(notifier: ERef<Notifier<T>>, storageNode: ERef<StorageNode>, marshaller: ERef<{
2
+ /**
3
+ * @import {ERef} from '@endo/far';
4
+ * @import {BaseNotifier, Notifier} from './types.js';
5
+ * @import {Marshaller, StoredFacet, StorageNode, Unserializer} from '@agoric/internal/src/lib-chainStorage.js';
6
+ */
7
+ /**
8
+ * @template T
9
+ * @typedef {BaseNotifier<T> & Omit<StoredFacet, 'getStoreKey'>} StoredNotifier
10
+ */
11
+ /**
12
+ * Begin iterating the source, storing serialized iteration values. If the
13
+ * storageNode's `setValue` operation rejects, no further writes to it will
14
+ * be attempted (but results will remain available from the subscriber).
15
+ *
16
+ * Returns a StoredNotifier that can be used by a client to directly follow
17
+ * the iteration themselves, or obtain information to subscribe to the stored
18
+ * data out-of-band.
19
+ *
20
+ * @template T
21
+ * @param {ERef<Notifier<T>>} notifier
22
+ * @param {ERef<StorageNode>} storageNode
23
+ * @param {ERef<Marshaller>} marshaller
24
+ * @returns {StoredNotifier<T>}
25
+ */
26
+ toCapData: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
27
+ fromCapData: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
28
+ serialize: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
29
+ unserialize: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
30
+ }>): StoredNotifier<T>;
2
31
  export type StoredNotifier<T> = BaseNotifier<T> & Omit<StoredFacet, "getStoreKey">;
32
+ import type { Notifier } from './types.js';
33
+ import type { ERef } from '@endo/far';
34
+ import type { StorageNode } from '@agoric/internal/src/lib-chainStorage.js';
35
+ import type { BaseNotifier } from './types.js';
36
+ import type { StoredFacet } from '@agoric/internal/src/lib-chainStorage.js';
3
37
  //# sourceMappingURL=stored-notifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stored-notifier.d.ts","sourceRoot":"","sources":["stored-notifier.js"],"names":[],"mappings":"AA2BO,mCAFqB,CAAC,uGAAhB,cAAc,CAAC,CAAC,CAAC,CAiC7B;2BAjDyB,CAAC,IAAd,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC"}
1
+ {"version":3,"file":"stored-notifier.d.ts","sourceRoot":"","sources":["stored-notifier.js"],"names":[],"mappings":"AAiCO,mCAFqB,CAAC;IAxB7B;;;;OAIG;IAEH;;;OAGG;IAEH;;;;;;;;;;;;;;OAcG;;;;;KADU,cAAc,CAAC,CAAC,CAAC,CAiC7B;2BAjDyB,CAAC;8BANc,YAAY;0BAD9B,WAAW;iCAEmC,0CAA0C;kCADtE,YAAY;iCACgB,0CAA0C"}
@@ -5,6 +5,12 @@ import { makeSerializeToStorage } from '@agoric/internal/src/lib-chainStorage.js
5
5
  import { E, Far } from '@endo/far';
6
6
  import { observeNotifier } from './asyncIterableAdaptor.js';
7
7
 
8
+ /**
9
+ * @import {ERef} from '@endo/far';
10
+ * @import {BaseNotifier, Notifier} from './types.js';
11
+ * @import {Marshaller, StoredFacet, StorageNode, Unserializer} from '@agoric/internal/src/lib-chainStorage.js';
12
+ */
13
+
8
14
  /**
9
15
  * @template T
10
16
  * @typedef {BaseNotifier<T> & Omit<StoredFacet, 'getStoreKey'>} StoredNotifier
package/src/storesub.d.ts CHANGED
@@ -11,11 +11,29 @@ export function makeStoredSubscription<T>(subscription: Subscription<T>, storage
11
11
  serialize: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
12
12
  unserialize: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
13
13
  }> | undefined): StoredSubscription<T>;
14
- export function makeStoredPublisherKit<T = unknown>(storageNode?: ERef<StorageNode> | undefined, marshaller?: ERef<Marshaller<unknown>> | undefined, childPath?: string | undefined): StoredPublisherKit<T>;
15
- export function makeStoredPublishKit<T = unknown>(storageNode: ERef<StorageNode>, marshaller: ERef<Marshaller<unknown>>): StoredPublishKit<T>;
14
+ export function makeStoredPublisherKit<T = unknown>(storageNode?: ERef<StorageNode> | undefined, marshaller?: ERef<{
15
+ toCapData: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
16
+ fromCapData: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
17
+ serialize: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
18
+ unserialize: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
19
+ }> | undefined, childPath?: string | undefined): StoredPublisherKit<T>;
20
+ export function makeStoredPublishKit<T = unknown>(storageNode: ERef<StorageNode>, marshaller: ERef<{
21
+ toCapData: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
22
+ fromCapData: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
23
+ serialize: import("../../../node_modules/@endo/marshal/src/marshal.js").ToCapData<unknown>;
24
+ unserialize: import("../../../node_modules/@endo/marshal/src/marshal.js").FromCapData<unknown>;
25
+ }>): StoredPublishKit<T>;
16
26
  export type StoredPublisherKit<T> = {
17
27
  subscriber: StoredSubscription<T>;
18
28
  publisher: IterationObserver<T>;
19
29
  };
30
+ import type { Subscriber } from '../src/types.js';
31
+ import type { StorageNode } from '@agoric/internal/src/lib-chainStorage.js';
32
+ import type { ERef } from '@endo/far';
20
33
  import { makeMarshal } from '@endo/marshal';
34
+ import type { StoredSubscriber } from '../src/types.js';
35
+ import type { Subscription } from '../src/types.js';
36
+ import type { StoredSubscription } from '../src/types.js';
37
+ import type { StoredPublishKit } from '../src/types.js';
38
+ import type { IterationObserver } from '../src/types.js';
21
39
  //# sourceMappingURL=storesub.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storesub.d.ts","sourceRoot":"","sources":["storesub.js"],"names":[],"mappings":"AAiBO,yCAFQ,CAAC,cADL,UAAU,CACN,CAAC,AADO,CAAC,gBACb,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,iBAcxB;AAiBM,qCAFuB,CAAC,cAHpB,UAAU,CAGS,CAAC,AAHR,CAAC;;;;;KAGX,gBAAgB,CAAC,CAAC,CAAC,CA6B/B;AAkBM,uCAFyB,CAAC,gBAHtB,YAAY,CAGS,CAAC,AAHR,CAAC;;;;;iBAGb,kBAAkB,CAAC,CAAC,CAAC,CAqEjC;AAoBM,uCAFyB,CAAC,8IAApB,kBAAkB,CAAC,CAAC,CAAC,CAoBjC;AAgBM,qCAFuB,CAAC,oFAAlB,gBAAgB,CAAC,CAAC,CAAC,CAU/B;+BAtD+B,CAAC;gBADnB,kBAAkB,CACA,CAAC,AADC,CAAC;eACrB,iBAAiB,CAAC,CAAC,CAAC;;4BArKN,eAAe"}
1
+ {"version":3,"file":"storesub.d.ts","sourceRoot":"","sources":["storesub.js"],"names":[],"mappings":"AAuBO,yCAFQ,CAAC,2CAAL,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,iBAcxB;AAiBM,qCAFuB,CAAC;;;;;yBA6B9B;AAkBM,uCAFyB,CAAC;;;;;uCAqEhC;AAoBM,uCAFyB,CAAC;;;;;iDAApB,kBAAkB,CAAC,CAAC,CAAC,CAoBjC;AAgBM,qCAFuB,CAAC;;;;;yBAU9B;+BAtD+B,CAAC;;;;gCAjKoL,iBAAiB;iCAC9K,0CAA0C;0BAF3E,WAAW;4BATN,eAAe;sCAU0K,iBAAiB;kCAAjB,iBAAiB;wCAAjB,iBAAiB;sCAAjB,iBAAiB;uCAAjB,iBAAiB"}
package/src/storesub.js CHANGED
@@ -7,6 +7,12 @@ import { makePublishKit } from './publish-kit.js';
7
7
  import { makeSubscriptionKit } from './subscriber.js';
8
8
  import { subscribeEach } from './subscribe.js';
9
9
 
10
+ /**
11
+ * @import {ERef} from '@endo/far';
12
+ * @import {IterationObserver, LatestTopic, Notifier, NotifierRecord, PublicationRecord, Publisher, PublishKit, StoredPublishKit, StoredSubscription, StoredSubscriber, Subscriber, Subscription, UpdateRecord} from '../src/types.js';
13
+ * @import {Marshaller, StorageNode, Unserializer} from '@agoric/internal/src/lib-chainStorage.js';
14
+ */
15
+
10
16
  /**
11
17
  * NB: does not yet survive upgrade https://github.com/Agoric/agoric-sdk/issues/6893
12
18
  *
@@ -97,7 +103,7 @@ export const makeStoredSubscription = (
97
103
  serializeBodyFormat: 'smallcaps',
98
104
  }),
99
105
  ) => {
100
- /** @type {Unserializer} */
106
+ /** @type {import('@agoric/internal/src/lib-chainStorage.js').Unserializer} */
101
107
  const unserializer = Far('unserializer', {
102
108
  fromCapData: data => E(marshaller).fromCapData(data),
103
109
  unserialize: data => E(marshaller).fromCapData(data),
@@ -16,13 +16,17 @@ export function subscribe<T>(itP: ERef<AsyncIterableIterator<T>>): {
16
16
  }>;
17
17
  }>;
18
18
  export function subscribeEach<T>(topic: ERef<EachTopic<T>>): {
19
- [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T, undefined>;
19
+ [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T>;
20
20
  } & import("@endo/eventual-send").RemotableBrand<{}, {
21
- [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T, undefined>;
21
+ [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T>;
22
22
  }>;
23
23
  export function subscribeLatest<T>(topic: ERef<LatestTopic<T>>): {
24
- [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T, undefined>;
24
+ [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T>;
25
25
  } & import("@endo/eventual-send").RemotableBrand<{}, {
26
- [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T, undefined>;
26
+ [Symbol.asyncIterator]: () => ForkableAsyncIterableIterator<T, T>;
27
27
  }>;
28
+ import type { ERef } from '@endo/far';
29
+ import type { EachTopic } from '../src/types.js';
30
+ import type { ForkableAsyncIterableIterator } from '../src/types.js';
31
+ import type { LatestTopic } from '../src/types.js';
28
32
  //# sourceMappingURL=subscribe.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["subscribe.js"],"names":[],"mappings":"AAkEO,0BAF+B,CAAC;;;;;;;;;;;;;;;;GAYnC;AAuEG,8BAFmB,CAAC;;;;GAU1B;AAsGM,gCAFqB,CAAC;;;;GAO5B"}
1
+ {"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["subscribe.js"],"names":[],"mappings":"AAqEO,0BAF+B,CAAC;;;;;;;;;;;;;;;;GAYnC;AAuEG,8BAFmB,CAAC;;;;GAU1B;AAsGM,gCAFqB,CAAC;;;;GAO5B;0BApQsB,WAAW;+BAC6N,iBAAiB;mDAAjB,iBAAiB;iCAAjB,iBAAiB"}
package/src/subscribe.js CHANGED
@@ -2,7 +2,10 @@ import { E, Far } from '@endo/far';
2
2
  import { isObject } from '@endo/marshal';
3
3
  import { isUpgradeDisconnection } from '@agoric/internal/src/upgrade-api.js';
4
4
 
5
- import './types-ambient.js';
5
+ /**
6
+ * @import {ERef} from '@endo/far';
7
+ * @import {IterationObserver, LatestTopic, Notifier, NotifierRecord, PublicationRecord, Publisher, PublishKit, StoredPublishKit, StoredSubscription, StoredSubscriber, Subscriber, Subscription, UpdateRecord, EachTopic, ForkableAsyncIterableIterator} from '../src/types.js';
8
+ */
6
9
 
7
10
  const { details: X, Fail } = assert;
8
11
  const sink = () => {};
@@ -50,7 +53,7 @@ const reconnectAsNeeded = async (getter, seed = []) => {
50
53
  X`Attempting to recover from disconnection: ${disconnection}`,
51
54
  );
52
55
  } catch (_err) {
53
- // eslint-disable-next-line no-empty
56
+ // noop
54
57
  }
55
58
  }
56
59
  throw err;
@@ -1,9 +1,12 @@
1
+ /**
2
+ * @import {EachTopic, IterationObserver, LatestTopic, Notifier, NotifierRecord, SubscriptionRecord, Publisher, PublishKit, StoredPublishKit, StoredSubscription, StoredSubscriber, Subscriber, Subscription, UpdateRecord} from '../src/types.js';
3
+ */
1
4
  /**
2
5
  * @template T
3
6
  * @param {ERef<EachTopic<T>>} topic
4
7
  * @returns {Subscription<T>}
5
8
  */
6
- export function makeSubscription<T>(topic: ERef<EachTopic<T>>): Subscription<T>;
9
+ export function makeSubscription<T>(topic: globalThis.ERef<EachTopic<T>>): Subscription<T>;
7
10
  /**
8
11
  * @deprecated Producers should use
9
12
  * ```js
@@ -23,4 +26,7 @@ export function makeSubscription<T>(topic: ERef<EachTopic<T>>): Subscription<T>;
23
26
  * @returns {SubscriptionRecord<T>}
24
27
  */
25
28
  export function makeSubscriptionKit<T>(): SubscriptionRecord<T>;
29
+ import type { EachTopic } from '../src/types.js';
30
+ import type { Subscription } from '../src/types.js';
31
+ import type { SubscriptionRecord } from '../src/types.js';
26
32
  //# sourceMappingURL=subscriber.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.d.ts","sourceRoot":"","sources":["subscriber.js"],"names":[],"mappings":"AAYA;;;;GAIG;AACH,iCAF0B,CAAC,8BAAd,YAAY,CAAC,CAAC,CAAC,CAkB3B;AAID;;;;;;;;;;;;;;;;;GAiBG;AACH,oCAFgC,CAAC,KAApB,kBAAkB,CAAC,CAAC,CAAC,CAmBjC"}
1
+ {"version":3,"file":"subscriber.d.ts","sourceRoot":"","sources":["subscriber.js"],"names":[],"mappings":"AAUA;;GAEG;AAEH;;;;GAIG;AACH,iCAF0B,CAAC,yDAkB1B;AAID;;;;;;;;;;;;;;;;;GAiBG;AACH,oCAFgC,CAAC,2BAmBhC;+BA/DgO,iBAAiB;kCAAjB,iBAAiB;wCAAjB,iBAAiB"}
package/src/subscriber.js CHANGED
@@ -8,7 +8,9 @@ import { makePublishKit } from './publish-kit.js';
8
8
 
9
9
  import { makePinnedHistoryTopic } from './topic.js';
10
10
 
11
- import './types-ambient.js';
11
+ /**
12
+ * @import {EachTopic, IterationObserver, LatestTopic, Notifier, NotifierRecord, SubscriptionRecord, Publisher, PublishKit, StoredPublishKit, StoredSubscription, StoredSubscriber, Subscriber, Subscription, UpdateRecord} from '../src/types.js';
13
+ */
12
14
 
13
15
  /**
14
16
  * @template T
package/src/topic.d.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export function makePinnedHistoryTopic<T>(topic: EachTopic<T> & LatestTopic<T>): EachTopic<T> & LatestTopic<T>;
2
+ import type { EachTopic } from '../src/types.js';
3
+ import type { LatestTopic } from '../src/types.js';
2
4
  //# sourceMappingURL=topic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"topic.d.ts","sourceRoot":"","sources":["topic.js"],"names":[],"mappings":"AAcO,uCAFiC,CAAC,SAF9B,SAAS,CAEoB,CAAC,AAFnB,CAAC,GAAG,WAAW,CAEG,CAAC,AAFF,CAAC,GAE3B,SAAS,CAAkB,CAAC,AAAjB,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAoBzC"}
1
+ {"version":3,"file":"topic.d.ts","sourceRoot":"","sources":["topic.js"],"names":[],"mappings":"AAiBO,uCAFiC,CAAC,uEAoBxC;+BA9BwC,iBAAiB;iCAAjB,iBAAiB"}
package/src/topic.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // @jessie-check
2
2
 
3
3
  import { Far } from '@endo/far';
4
- import './types-ambient.js';
4
+
5
+ /**
6
+ * @import {EachTopic, LatestTopic} from '../src/types.js';
7
+ */
5
8
 
6
9
  /**
7
10
  * @deprecated A pinned-history topic preserves all of its published values in
package/src/types.d.ts CHANGED
@@ -19,7 +19,6 @@ export type ForkableAsyncIterable<T, TReturn = any, TNext = undefined> = {
19
19
  [Symbol.asyncIterator]: () => ForkableAsyncIterator<T, TReturn, TNext>;
20
20
  };
21
21
  /**
22
- * <T>
23
22
  * A valid sequence of calls to the methods of an `IterationObserver`
24
23
  * represents an iteration. A valid sequence consists of any number of calls
25
24
  * to `updateState` with the successive non-final values, followed by a
@@ -113,16 +112,10 @@ export type Publisher<T> = {
113
112
  fail: (reason: any) => void;
114
113
  };
115
114
  export type PublishObserver<T> = Partial<Publisher<T>>;
116
- /**
117
- * <T>
118
- */
119
115
  export type PublishKit<T> = {
120
116
  publisher: Publisher<T>;
121
117
  subscriber: Subscriber<T>;
122
118
  };
123
- /**
124
- * <T>
125
- */
126
119
  export type StoredPublishKit<T> = {
127
120
  publisher: Publisher<T>;
128
121
  subscriber: StoredSubscriber<T>;
@@ -159,9 +152,6 @@ export type DurablePublishKitState = {
159
152
  */
160
153
  value: any;
161
154
  };
162
- /**
163
- * <T>
164
- */
165
155
  export type UpdateRecord<T> = {
166
156
  /**
167
157
  * is whatever state the service wants to publish
@@ -180,7 +170,7 @@ export type UpdateRecord<T> = {
180
170
  */
181
171
  export type NotifierInternals<T> = BaseNotifier<T>;
182
172
  /**
183
- * <T> an object that can be used to get the current state or updates
173
+ * an object that can be used to get the current state or updates
184
174
  */
185
175
  export type Notifier<T> = NotifierInternals<T> & ForkableAsyncIterable<T, T> & SharableNotifier<T>;
186
176
  export type SharableNotifier<T> = {
@@ -197,7 +187,7 @@ export type SharableNotifier<T> = {
197
187
  getSharableNotifierInternals: () => Promise<NotifierInternals<T>>;
198
188
  };
199
189
  /**
200
- * <T> the produced notifier/updater pair
190
+ * the produced notifier/updater pair
201
191
  */
202
192
  export type NotifierRecord<T> = {
203
193
  /**
@@ -210,7 +200,6 @@ export type NotifierRecord<T> = {
210
200
  notifier: Notifier<T>;
211
201
  };
212
202
  /**
213
- * <T>
214
203
  * A form of AsyncIterable supporting distributed and multicast usage.
215
204
  */
216
205
  export type Subscription<T> = IterableEachTopic<T> & EachTopic<T> & SharableSubscription<T>;
@@ -227,69 +216,17 @@ export type SharableSubscription<T> = {
227
216
  */
228
217
  getSharableSubscriptionInternals: () => Promise<EachTopic<T>>;
229
218
  };
230
- /**
231
- * <T>
232
- */
233
219
  export type SubscriptionRecord<T> = {
234
220
  publication: IterationObserver<T>;
235
221
  subscription: Subscription<T>;
236
222
  };
237
- export type Marshaller<Slot = unknown> = import("@endo/marshal").Marshal<Slot>;
238
- export type Unserializer = Pick<Marshaller, "fromCapData">;
239
- /**
240
- * Defined by vstorageStoreKey in vstorage.go
241
- */
242
- export type VStorageKey = {
243
- storeName: string;
244
- storeSubkey: string;
245
- dataPrefixBytes: string;
246
- noDataValue?: string | undefined;
247
- };
248
- /**
249
- * This represents a node in an IAVL tree.
250
- *
251
- * The active implementation is x/vstorage, an Agoric extension of the Cosmos SDK.
252
- *
253
- * Vstorage is a hierarchical externally-reachable storage structure that
254
- * identifies children by restricted ASCII name and is associated with arbitrary
255
- * string-valued data for each node, defaulting to the empty string.
256
- */
257
- export type StorageNode = {
258
- /**
259
- * publishes some data (append to the node)
260
- */
261
- setValue: (data: string) => Promise<void>;
262
- /**
263
- * the chain storage path at which the node was constructed
264
- */
265
- getPath: () => string;
266
- /**
267
- * DEPRECATED use getPath
268
- */
269
- getStoreKey: () => Promise<VStorageKey>;
270
- makeChildNode: (subPath: string, options?: {
271
- sequence?: boolean;
272
- }) => StorageNode;
273
- };
274
- export type StoredFacet = {
275
- /**
276
- * the chain storage path at which the node was constructed
277
- */
278
- getPath: () => Promise<string>;
279
- /**
280
- * DEPRECATED use getPath
281
- */
282
- getStoreKey: StorageNode["getStoreKey"];
283
- /**
284
- * get the unserializer for the stored data
285
- */
286
- getUnserializer: () => Unserializer;
287
- };
288
- export type StoredSubscription<T> = Subscription<T> & {
223
+ export type StoredSubscription<T> = ForkableAsyncIterable<T, T, undefined> & EachTopic<T> & SharableSubscription<T> & {
289
224
  getStoreKey: () => Promise<VStorageKey & {
290
225
  subscription: Subscription<T>;
291
226
  }>;
292
227
  getUnserializer: () => Unserializer;
293
228
  };
294
- export type StoredSubscriber<T> = Subscriber<T> & StoredFacet;
229
+ export type StoredSubscriber<T> = LatestTopic<T> & EachTopic<T> & StoredFacet;
230
+ import type { Unserializer } from '@agoric/internal/src/lib-chainStorage.js';
231
+ import type { StoredFacet } from '@agoric/internal/src/lib-chainStorage.js';
295
232
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"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"}