@trufnetwork/sdk-js 0.4.1 → 0.4.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.
@@ -2,6 +2,8 @@ import { KwilSigner, NodeKwil, WebKwil } from "@trufnetwork/kwil-js";
2
2
  import { GenericResponse } from "@trufnetwork/kwil-js/dist/core/resreq";
3
3
  import { TxReceipt } from "@trufnetwork/kwil-js/dist/core/tx";
4
4
  import { StreamLocator } from "../types/stream";
5
+ import { EthereumAddress } from "../util/EthereumAddress";
6
+ import { StreamId } from "../util/StreamId";
5
7
  import { Action } from "./action";
6
8
  export declare const ErrorStreamNotComposed = "stream is not a composed stream";
7
9
  export interface TaxonomySet {
@@ -20,6 +22,42 @@ export interface DescribeTaxonomiesParams {
20
22
  */
21
23
  latestGroupSequence: boolean;
22
24
  }
25
+ export interface ListTaxonomiesByHeightParams {
26
+ /** Start height (inclusive). If null, uses earliest available. */
27
+ fromHeight?: number;
28
+ /** End height (inclusive). If null, uses current height. */
29
+ toHeight?: number;
30
+ /** Maximum number of results to return. Default: 1000 */
31
+ limit?: number;
32
+ /** Number of results to skip for pagination. Default: 0 */
33
+ offset?: number;
34
+ /** If true, returns only latest group_sequence per stream. Default: false */
35
+ latestOnly?: boolean;
36
+ }
37
+ export interface GetTaxonomiesForStreamsParams {
38
+ /** Array of stream locators to query */
39
+ streams: StreamLocator[];
40
+ /** If true, returns only latest group_sequence per stream. Default: false */
41
+ latestOnly?: boolean;
42
+ }
43
+ export interface TaxonomyQueryResult {
44
+ /** Parent stream data provider */
45
+ dataProvider: EthereumAddress;
46
+ /** Parent stream ID */
47
+ streamId: StreamId;
48
+ /** Child stream data provider */
49
+ childDataProvider: EthereumAddress;
50
+ /** Child stream ID */
51
+ childStreamId: StreamId;
52
+ /** Weight of the child stream in the taxonomy */
53
+ weight: string;
54
+ /** Block height when taxonomy was created */
55
+ createdAt: number;
56
+ /** Group sequence number for this taxonomy set */
57
+ groupSequence: number;
58
+ /** Start time timestamp for this taxonomy */
59
+ startTime: number;
60
+ }
23
61
  export declare class ComposedAction extends Action {
24
62
  constructor(kwilClient: WebKwil | NodeKwil, kwilSigner: KwilSigner);
25
63
  /**
@@ -34,6 +72,43 @@ export declare class ComposedAction extends Action {
34
72
  * @returns A promise that resolves to the transaction receipt
35
73
  */
36
74
  setTaxonomy(taxonomy: TaxonomySet): Promise<GenericResponse<TxReceipt>>;
75
+ /**
76
+ * Lists taxonomies by block height range for incremental synchronization.
77
+ * Enables efficient detection of taxonomy changes since a specific block height.
78
+ *
79
+ * @param params Height range and pagination parameters
80
+ * @returns Promise resolving to taxonomy query results
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * const taxonomies = await composedAction.listTaxonomiesByHeight({
85
+ * fromHeight: 1000,
86
+ * toHeight: 2000,
87
+ * limit: 100,
88
+ * latestOnly: true
89
+ * });
90
+ * ```
91
+ */
92
+ listTaxonomiesByHeight(params?: ListTaxonomiesByHeightParams): Promise<TaxonomyQueryResult[]>;
93
+ /**
94
+ * Gets taxonomies for specific streams in batch.
95
+ * Useful for validating taxonomy data for known streams.
96
+ *
97
+ * @param params Stream locators and filtering options
98
+ * @returns Promise resolving to taxonomy query results
99
+ *
100
+ * @example
101
+ * ```typescript
102
+ * const taxonomies = await composedAction.getTaxonomiesForStreams({
103
+ * streams: [
104
+ * { dataProvider: provider1, streamId: streamId1 },
105
+ * { dataProvider: provider2, streamId: streamId2 }
106
+ * ],
107
+ * latestOnly: true
108
+ * });
109
+ * ```
110
+ */
111
+ getTaxonomiesForStreams(params: GetTaxonomiesForStreamsParams): Promise<TaxonomyQueryResult[]>;
37
112
  /**
38
113
  * Creates a ComposedStream from a base Stream
39
114
  * @param stream The base stream to convert
@@ -1 +1 @@
1
- {"version":3,"file":"composedAction.d.ts","sourceRoot":"","sources":["../../../src/contracts-api/composedAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAS,OAAO,EAAC,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,eAAO,MAAM,sBAAsB,oCAAoC,CAAC;AAExE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,aAAa,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,aAAa,CAAC;IACtB;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,qBAAa,cAAe,SAAQ,MAAM;gBAEtC,UAAU,EAAE,OAAO,GAAG,QAAQ,EAC9B,UAAU,EAAE,UAAU;IAKxB;;;;OAIG;IACU,kBAAkB,CAC7B,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,WAAW,EAAE,CAAC;IA2DzB;;;;OAIG;IACU,WAAW,CACtB,QAAQ,EAAE,WAAW,GACpB,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAqCtC;;;;OAIG;WACW,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc;CAMzD"}
1
+ {"version":3,"file":"composedAction.d.ts","sourceRoot":"","sources":["../../../src/contracts-api/composedAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAS,OAAO,EAAC,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,eAAO,MAAM,sBAAsB,oCAAoC,CAAC;AAExE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,aAAa,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,aAAa,CAAC;IACtB;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,4BAA4B;IAC3C,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC5C,wCAAwC;IACxC,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,YAAY,EAAE,eAAe,CAAC;IAC9B,uBAAuB;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,iCAAiC;IACjC,iBAAiB,EAAE,eAAe,CAAC;IACnC,sBAAsB;IACtB,aAAa,EAAE,QAAQ,CAAC;IACxB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,cAAe,SAAQ,MAAM;gBAEtC,UAAU,EAAE,OAAO,GAAG,QAAQ,EAC9B,UAAU,EAAE,UAAU;IAKxB;;;;OAIG;IACU,kBAAkB,CAC7B,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,WAAW,EAAE,CAAC;IA2DzB;;;;OAIG;IACU,WAAW,CACtB,QAAQ,EAAE,WAAW,GACpB,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAqCtC;;;;;;;;;;;;;;;;OAgBG;IACU,sBAAsB,CACjC,MAAM,GAAE,4BAAiC,GACxC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAuCjC;;;;;;;;;;;;;;;;;OAiBG;IACU,uBAAuB,CAClC,MAAM,EAAE,6BAA6B,GACpC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA6CjC;;;;OAIG;WACW,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc;CAMzD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=composedAction.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composedAction.test.d.ts","sourceRoot":"","sources":["../../../src/contracts-api/composedAction.test.ts"],"names":[],"mappings":""}
@@ -4,7 +4,7 @@ export type { StreamLocator } from "./types/stream";
4
4
  export type { StreamRecord } from "./contracts-api/action";
5
5
  export type { GetRecordInput, GetFirstRecordInput } from "./contracts-api/action";
6
6
  export type { InsertRecordInput } from "./contracts-api/primitiveAction";
7
- export type { TaxonomySet, TaxonomyItem } from "./contracts-api/composedAction";
7
+ export type { TaxonomySet, TaxonomyItem, ListTaxonomiesByHeightParams, GetTaxonomiesForStreamsParams, TaxonomyQueryResult } from "./contracts-api/composedAction";
8
8
  export { StreamId } from "./util/StreamId";
9
9
  export { EthereumAddress } from "./util/EthereumAddress";
10
10
  export { visibility } from "./util/visibility";
@@ -1 +1 @@
1
- {"version":3,"file":"index.common.d.ts","sourceRoot":"","sources":["../../src/index.common.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGjE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClF,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAGhF,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.common.d.ts","sourceRoot":"","sources":["../../src/index.common.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGjE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClF,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAGlK,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trufnetwork/sdk-js",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "description": "TRUF.NETWORK SDK for JavaScript/TypeScript",
5
5
  "type": "module",
6
6
  "keywords": [