@tokenizedrealutility/sdk 1.0.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.
Files changed (115) hide show
  1. package/API.md +210 -0
  2. package/CHANGELOG.md +19 -0
  3. package/LICENSE +201 -0
  4. package/NOTICE +40 -0
  5. package/README.md +559 -0
  6. package/SECURITY.md +34 -0
  7. package/dist/client.d.ts +59 -0
  8. package/dist/client.d.ts.map +1 -0
  9. package/dist/client.js +83 -0
  10. package/dist/client.js.map +1 -0
  11. package/dist/errors.d.ts +38 -0
  12. package/dist/errors.d.ts.map +1 -0
  13. package/dist/errors.js +71 -0
  14. package/dist/errors.js.map +1 -0
  15. package/dist/events.d.ts +8 -0
  16. package/dist/events.d.ts.map +1 -0
  17. package/dist/events.js +52 -0
  18. package/dist/events.js.map +1 -0
  19. package/dist/explorer.d.ts +53 -0
  20. package/dist/explorer.d.ts.map +1 -0
  21. package/dist/explorer.js +39 -0
  22. package/dist/explorer.js.map +1 -0
  23. package/dist/index.d.ts +13 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +9 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/modules/ai.d.ts +20 -0
  28. package/dist/modules/ai.d.ts.map +1 -0
  29. package/dist/modules/ai.js +18 -0
  30. package/dist/modules/ai.js.map +1 -0
  31. package/dist/modules/base.d.ts +8 -0
  32. package/dist/modules/base.d.ts.map +1 -0
  33. package/dist/modules/base.js +8 -0
  34. package/dist/modules/base.js.map +1 -0
  35. package/dist/modules/chain.d.ts +15 -0
  36. package/dist/modules/chain.d.ts.map +1 -0
  37. package/dist/modules/chain.js +12 -0
  38. package/dist/modules/chain.js.map +1 -0
  39. package/dist/modules/contracts.d.ts +13 -0
  40. package/dist/modules/contracts.d.ts.map +1 -0
  41. package/dist/modules/contracts.js +16 -0
  42. package/dist/modules/contracts.js.map +1 -0
  43. package/dist/modules/htlc.d.ts +43 -0
  44. package/dist/modules/htlc.d.ts.map +1 -0
  45. package/dist/modules/htlc.js +25 -0
  46. package/dist/modules/htlc.js.map +1 -0
  47. package/dist/modules/identity.d.ts +9 -0
  48. package/dist/modules/identity.d.ts.map +1 -0
  49. package/dist/modules/identity.js +15 -0
  50. package/dist/modules/identity.js.map +1 -0
  51. package/dist/modules/magic.d.ts +17 -0
  52. package/dist/modules/magic.d.ts.map +1 -0
  53. package/dist/modules/magic.js +14 -0
  54. package/dist/modules/magic.js.map +1 -0
  55. package/dist/modules/mining.d.ts +16 -0
  56. package/dist/modules/mining.d.ts.map +1 -0
  57. package/dist/modules/mining.js +23 -0
  58. package/dist/modules/mining.js.map +1 -0
  59. package/dist/modules/network.d.ts +6 -0
  60. package/dist/modules/network.d.ts.map +1 -0
  61. package/dist/modules/network.js +5 -0
  62. package/dist/modules/network.js.map +1 -0
  63. package/dist/modules/raw.d.ts +8 -0
  64. package/dist/modules/raw.d.ts.map +1 -0
  65. package/dist/modules/raw.js +10 -0
  66. package/dist/modules/raw.js.map +1 -0
  67. package/dist/modules/swaps.d.ts +12 -0
  68. package/dist/modules/swaps.d.ts.map +1 -0
  69. package/dist/modules/swaps.js +16 -0
  70. package/dist/modules/swaps.js.map +1 -0
  71. package/dist/modules/system.d.ts +11 -0
  72. package/dist/modules/system.d.ts.map +1 -0
  73. package/dist/modules/system.js +64 -0
  74. package/dist/modules/system.js.map +1 -0
  75. package/dist/modules/tokens.d.ts +65 -0
  76. package/dist/modules/tokens.d.ts.map +1 -0
  77. package/dist/modules/tokens.js +54 -0
  78. package/dist/modules/tokens.js.map +1 -0
  79. package/dist/modules/transactions.d.ts +22 -0
  80. package/dist/modules/transactions.d.ts.map +1 -0
  81. package/dist/modules/transactions.js +30 -0
  82. package/dist/modules/transactions.js.map +1 -0
  83. package/dist/modules/truscripts.d.ts +22 -0
  84. package/dist/modules/truscripts.d.ts.map +1 -0
  85. package/dist/modules/truscripts.js +14 -0
  86. package/dist/modules/truscripts.js.map +1 -0
  87. package/dist/modules/wallet.d.ts +18 -0
  88. package/dist/modules/wallet.d.ts.map +1 -0
  89. package/dist/modules/wallet.js +16 -0
  90. package/dist/modules/wallet.js.map +1 -0
  91. package/dist/neromesh.d.ts +58 -0
  92. package/dist/neromesh.d.ts.map +1 -0
  93. package/dist/neromesh.js +92 -0
  94. package/dist/neromesh.js.map +1 -0
  95. package/dist/rpc-catalog.d.ts +4 -0
  96. package/dist/rpc-catalog.d.ts.map +1 -0
  97. package/dist/rpc-catalog.js +115 -0
  98. package/dist/rpc-catalog.js.map +1 -0
  99. package/dist/transport.d.ts +29 -0
  100. package/dist/transport.d.ts.map +1 -0
  101. package/dist/transport.js +144 -0
  102. package/dist/transport.js.map +1 -0
  103. package/dist/types.d.ts +66 -0
  104. package/dist/types.d.ts.map +1 -0
  105. package/dist/types.js +2 -0
  106. package/dist/types.js.map +1 -0
  107. package/dist/utils/address.d.ts +4 -0
  108. package/dist/utils/address.d.ts.map +1 -0
  109. package/dist/utils/address.js +12 -0
  110. package/dist/utils/address.js.map +1 -0
  111. package/dist/utils/amount.d.ts +6 -0
  112. package/dist/utils/amount.d.ts.map +1 -0
  113. package/dist/utils/amount.js +23 -0
  114. package/dist/utils/amount.js.map +1 -0
  115. package/package.json +57 -0
package/dist/client.js ADDED
@@ -0,0 +1,83 @@
1
+ import { RpcTransport } from "./transport.js";
2
+ import { SystemModule } from "./modules/system.js";
3
+ import { ChainModule } from "./modules/chain.js";
4
+ import { NetworkModule } from "./modules/network.js";
5
+ import { WalletModule } from "./modules/wallet.js";
6
+ import { TransactionsModule } from "./modules/transactions.js";
7
+ import { TokensModule } from "./modules/tokens.js";
8
+ import { TruScriptsModule } from "./modules/truscripts.js";
9
+ import { ContractsModule } from "./modules/contracts.js";
10
+ import { MagicLocksModule } from "./modules/magic.js";
11
+ import { MiningModule } from "./modules/mining.js";
12
+ import { AiModule } from "./modules/ai.js";
13
+ import { IdentityModule } from "./modules/identity.js";
14
+ import { HtlcModule } from "./modules/htlc.js";
15
+ import { SwapsModule } from "./modules/swaps.js";
16
+ import { RawRpcModule } from "./modules/raw.js";
17
+ import { ExplorerClient } from "./explorer.js";
18
+ import { NeromeshClient } from "./neromesh.js";
19
+ import { TruEvents } from "./events.js";
20
+ export class TruClient {
21
+ rpc;
22
+ system;
23
+ chain;
24
+ network;
25
+ wallet;
26
+ transactions;
27
+ tokens;
28
+ scripts;
29
+ contracts;
30
+ magic;
31
+ mining;
32
+ ai;
33
+ identity;
34
+ htlc;
35
+ swaps;
36
+ raw;
37
+ events;
38
+ explorer;
39
+ neromesh;
40
+ constructor(options) {
41
+ this.rpc = new RpcTransport(options.core);
42
+ this.system = new SystemModule(this.rpc);
43
+ this.chain = new ChainModule(this.rpc);
44
+ this.network = new NetworkModule(this.rpc);
45
+ this.wallet = new WalletModule(this.rpc);
46
+ this.transactions = new TransactionsModule(this.rpc);
47
+ this.tokens = new TokensModule(this.rpc);
48
+ this.scripts = new TruScriptsModule(this.rpc);
49
+ this.contracts = new ContractsModule(this.rpc);
50
+ this.magic = new MagicLocksModule(this.rpc);
51
+ this.mining = new MiningModule(this.rpc);
52
+ this.ai = new AiModule(this.rpc);
53
+ this.identity = new IdentityModule(this.rpc);
54
+ this.htlc = new HtlcModule(this.rpc);
55
+ this.swaps = new SwapsModule(this.rpc);
56
+ this.raw = new RawRpcModule(this.rpc);
57
+ this.events = new TruEvents(this.chain);
58
+ if (options.explorerUrl)
59
+ this.explorer = new ExplorerClient(options.explorerUrl);
60
+ if (options.neromesh)
61
+ this.neromesh = new NeromeshClient(options.neromesh);
62
+ }
63
+ static direct(endpoint, token, extras = {}) {
64
+ return new TruClient({
65
+ core: { endpoint, token, ...(extras.timeoutMs !== undefined ? { timeoutMs: extras.timeoutMs } : {}), ...(extras.fetch ? { fetch: extras.fetch } : {}) },
66
+ ...(extras.explorerUrl ? { explorerUrl: extras.explorerUrl } : {}),
67
+ ...(extras.neromesh ? { neromesh: extras.neromesh } : {})
68
+ });
69
+ }
70
+ static public(options) {
71
+ const base = options.explorerUrl.replace(/\/$/, "");
72
+ const gateway = options.gateway ?? "wallet";
73
+ return new TruClient({
74
+ core: {
75
+ endpoint: `${base}/api/${gateway}/rpc`,
76
+ ...(options.timeoutMs !== undefined ? { timeoutMs: options.timeoutMs } : {}),
77
+ ...(options.fetch ? { fetch: options.fetch } : {})
78
+ },
79
+ explorerUrl: base
80
+ });
81
+ }
82
+ }
83
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import type { JsonValue, RpcErrorShape } from "./types.js";
2
+ export declare class TruError extends Error {
3
+ readonly code?: number | string;
4
+ readonly data?: JsonValue;
5
+ readonly status?: number;
6
+ readonly causeValue?: unknown;
7
+ constructor(message: string, options?: {
8
+ code?: number | string;
9
+ data?: JsonValue;
10
+ status?: number;
11
+ cause?: unknown;
12
+ });
13
+ }
14
+ export declare class TruRpcError extends TruError {
15
+ }
16
+ export declare class TruHttpError extends TruError {
17
+ }
18
+ export declare class TruAuthError extends TruError {
19
+ }
20
+ export declare class TruNodeBusyError extends TruError {
21
+ }
22
+ export declare class TruTimeoutError extends TruError {
23
+ }
24
+ export declare class TruNetworkError extends TruError {
25
+ }
26
+ export declare class TruInvalidAddressError extends TruError {
27
+ }
28
+ export declare class TruInsufficientFundsError extends TruError {
29
+ }
30
+ export declare class TruTokenNotFoundError extends TruError {
31
+ }
32
+ export declare class TruTransactionRejectedError extends TruError {
33
+ }
34
+ export declare class TruContractExecutionError extends TruError {
35
+ }
36
+ export declare function classifyRpcError(error: RpcErrorShape): TruError;
37
+ export declare function classifyHttpError(status: number, message: string): TruError;
38
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3D,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;CAQ1H;AAED,qBAAa,WAAY,SAAQ,QAAQ;CAAG;AAC5C,qBAAa,YAAa,SAAQ,QAAQ;CAAG;AAC7C,qBAAa,YAAa,SAAQ,QAAQ;CAAG;AAC7C,qBAAa,gBAAiB,SAAQ,QAAQ;CAAG;AACjD,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAChD,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAChD,qBAAa,sBAAuB,SAAQ,QAAQ;CAAG;AACvD,qBAAa,yBAA0B,SAAQ,QAAQ;CAAG;AAC1D,qBAAa,qBAAsB,SAAQ,QAAQ;CAAG;AACtD,qBAAa,2BAA4B,SAAQ,QAAQ;CAAG;AAC5D,qBAAa,yBAA0B,SAAQ,QAAQ;CAAG;AAE1D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,QAAQ,CAuB/D;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,CAI3E"}
package/dist/errors.js ADDED
@@ -0,0 +1,71 @@
1
+ export class TruError extends Error {
2
+ code;
3
+ data;
4
+ status;
5
+ causeValue;
6
+ constructor(message, options = {}) {
7
+ super(message);
8
+ this.name = new.target.name;
9
+ if (options.code !== undefined)
10
+ this.code = options.code;
11
+ if (options.data !== undefined)
12
+ this.data = options.data;
13
+ if (options.status !== undefined)
14
+ this.status = options.status;
15
+ if (options.cause !== undefined)
16
+ this.causeValue = options.cause;
17
+ }
18
+ }
19
+ export class TruRpcError extends TruError {
20
+ }
21
+ export class TruHttpError extends TruError {
22
+ }
23
+ export class TruAuthError extends TruError {
24
+ }
25
+ export class TruNodeBusyError extends TruError {
26
+ }
27
+ export class TruTimeoutError extends TruError {
28
+ }
29
+ export class TruNetworkError extends TruError {
30
+ }
31
+ export class TruInvalidAddressError extends TruError {
32
+ }
33
+ export class TruInsufficientFundsError extends TruError {
34
+ }
35
+ export class TruTokenNotFoundError extends TruError {
36
+ }
37
+ export class TruTransactionRejectedError extends TruError {
38
+ }
39
+ export class TruContractExecutionError extends TruError {
40
+ }
41
+ export function classifyRpcError(error) {
42
+ const m = error.message.toLowerCase();
43
+ const common = { code: error.code, data: error.data };
44
+ if (m.includes("busy") || m.includes("retry") || m.includes("rate limit")) {
45
+ return new TruNodeBusyError(error.message, common);
46
+ }
47
+ if (m.includes("insufficient") || m.includes("not enough") || m.includes("balance")) {
48
+ return new TruInsufficientFundsError(error.message, common);
49
+ }
50
+ if (m.includes("invalid address") || m.includes("address invalid")) {
51
+ return new TruInvalidAddressError(error.message, common);
52
+ }
53
+ if (m.includes("token") && (m.includes("not found") || m.includes("metadata not found"))) {
54
+ return new TruTokenNotFoundError(error.message, common);
55
+ }
56
+ if (m.includes("contract") && (m.includes("failed") || m.includes("execution"))) {
57
+ return new TruContractExecutionError(error.message, common);
58
+ }
59
+ if (m.includes("reject") || m.includes("invalid transaction") || m.includes("mempool")) {
60
+ return new TruTransactionRejectedError(error.message, common);
61
+ }
62
+ return new TruRpcError(error.message, common);
63
+ }
64
+ export function classifyHttpError(status, message) {
65
+ if (status === 401 || status === 403)
66
+ return new TruAuthError(message, { status });
67
+ if (status === 429 || status === 503)
68
+ return new TruNodeBusyError(message, { status });
69
+ return new TruHttpError(message, { status });
70
+ }
71
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { BlockEvent, PollingOptions } from "./types.js";
2
+ import { ChainModule } from "./modules/chain.js";
3
+ export declare class TruEvents {
4
+ private readonly chain;
5
+ constructor(chain: ChainModule);
6
+ watchBlocks(onBlock: (event: BlockEvent) => void | Promise<void>, options?: PollingOptions): Promise<void>;
7
+ }
8
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAa,cAAc,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAejD,qBAAa,SAAS;IACR,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,WAAW;IAEzC,WAAW,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;CAyBrH"}
package/dist/events.js ADDED
@@ -0,0 +1,52 @@
1
+ function numericHeight(value) {
2
+ if (typeof value === "number")
3
+ return value;
4
+ if (typeof value === "string" && /^\d+$/.test(value))
5
+ return Number(value);
6
+ if (value && typeof value === "object" && !Array.isArray(value)) {
7
+ for (const key of ["height", "blocks", "blockcount", "count"]) {
8
+ const candidate = value[key];
9
+ if (typeof candidate === "number")
10
+ return candidate;
11
+ if (typeof candidate === "string" && /^\d+$/.test(candidate))
12
+ return Number(candidate);
13
+ }
14
+ }
15
+ throw new TypeError("Could not determine block height from Core response");
16
+ }
17
+ export class TruEvents {
18
+ chain;
19
+ constructor(chain) {
20
+ this.chain = chain;
21
+ }
22
+ async watchBlocks(onBlock, options = {}) {
23
+ const intervalMs = options.intervalMs ?? 2000;
24
+ let lastHeight;
25
+ while (!options.signal?.aborted) {
26
+ try {
27
+ const height = numericHeight(await this.chain.getBlockCount());
28
+ if (lastHeight === undefined) {
29
+ lastHeight = height;
30
+ if (options.emitExistingTip)
31
+ await onBlock({ height, block: await this.chain.getBlockByHeight(height) });
32
+ }
33
+ else if (height > lastHeight) {
34
+ for (let h = lastHeight + 1; h <= height; h++) {
35
+ await onBlock({ height: h, block: await this.chain.getBlockByHeight(h) });
36
+ }
37
+ lastHeight = height;
38
+ }
39
+ else if (height < lastHeight) {
40
+ // Reorg/rewind: reset baseline; callers can compare hashes if they need richer semantics.
41
+ lastHeight = height;
42
+ await onBlock({ height, block: await this.chain.getBlockByHeight(height) });
43
+ }
44
+ }
45
+ catch {
46
+ // Event polling is intentionally resilient; direct RPC methods still throw normally.
47
+ }
48
+ await new Promise(resolve => setTimeout(resolve, intervalMs));
49
+ }
50
+ }
51
+ }
52
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAGA,SAAS,aAAa,CAAC,KAAgB;IACrC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3E,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;YAC9D,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,OAAO,SAAS,KAAK,QAAQ;gBAAE,OAAO,SAAS,CAAC;YACpD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;gBAAE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,OAAO,SAAS;IACS;IAA7B,YAA6B,KAAkB;QAAlB,UAAK,GAAL,KAAK,CAAa;IAAG,CAAC;IAEnD,KAAK,CAAC,WAAW,CAAC,OAAoD,EAAE,UAA0B,EAAE;QAClG,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QAC9C,IAAI,UAA8B,CAAC;QACnC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;gBAC/D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,UAAU,GAAG,MAAM,CAAC;oBACpB,IAAI,OAAO,CAAC,eAAe;wBAAE,MAAM,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC3G,CAAC;qBAAM,IAAI,MAAM,GAAG,UAAU,EAAE,CAAC;oBAC/B,KAAK,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC9C,MAAM,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC5E,CAAC;oBACD,UAAU,GAAG,MAAM,CAAC;gBACtB,CAAC;qBAAM,IAAI,MAAM,GAAG,UAAU,EAAE,CAAC;oBAC/B,0FAA0F;oBAC1F,UAAU,GAAG,MAAM,CAAC;oBACpB,MAAM,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,qFAAqF;YACvF,CAAC;YACD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,53 @@
1
+ import { HttpTransport } from "./transport.js";
2
+ import type { HttpClientOptions, JsonValue } from "./types.js";
3
+ export declare class ExplorerClient {
4
+ readonly http: HttpTransport;
5
+ constructor(options: HttpClientOptions | string);
6
+ stats<T = JsonValue>(): Promise<T>;
7
+ blocks<T = JsonValue>(): Promise<T>;
8
+ block<T = JsonValue>(hash: string): Promise<T>;
9
+ addresses<T = JsonValue>(query?: {
10
+ limit?: number;
11
+ search?: string;
12
+ sort?: string;
13
+ start?: number;
14
+ }): Promise<T>;
15
+ address<T = JsonValue>(address: string): Promise<T>;
16
+ transactions<T = JsonValue>(query?: {
17
+ address?: string;
18
+ limit?: number;
19
+ start?: number;
20
+ }): Promise<T>;
21
+ transaction<T = JsonValue>(txid: string): Promise<T>;
22
+ tokenBurn<T = JsonValue>(): Promise<T>;
23
+ tokens<T = JsonValue>(query?: {
24
+ address?: string;
25
+ limit?: number;
26
+ start?: number;
27
+ }): Promise<T>;
28
+ contracts<T = JsonValue>(): Promise<T>;
29
+ contractTransactions<T = JsonValue>(address: string): Promise<T>;
30
+ minerReports<T = JsonValue>(): Promise<T>;
31
+ miners<T = JsonValue>(query?: {
32
+ timeout?: number;
33
+ recent?: number;
34
+ }): Promise<T>;
35
+ hashrateHistory<T = JsonValue>(blocks?: number): Promise<T>;
36
+ difficultyHistory<T = JsonValue>(): Promise<T>;
37
+ truScripts<T = JsonValue>(query?: {
38
+ limit?: number;
39
+ page?: number;
40
+ }): Promise<T>;
41
+ truScript<T = JsonValue>(id: string): Promise<T>;
42
+ uptime<T = JsonValue>(): Promise<T>;
43
+ peers<T = JsonValue>(): Promise<T>;
44
+ peer<T = JsonValue>(ip: string, port: number, session?: string): Promise<T>;
45
+ did<T = JsonValue>(did: string): Promise<T>;
46
+ didPostCount<T = JsonValue>(did: string): Promise<T>;
47
+ feed<T = JsonValue>(did: string): Promise<T>;
48
+ walletTokens<T = JsonValue>(address: string): Promise<T>;
49
+ walletTokenTransactions<T = JsonValue>(address: string): Promise<T>;
50
+ price<T = JsonValue>(): Promise<T>;
51
+ hashrate<T = JsonValue>(): Promise<T>;
52
+ }
53
+ //# sourceMappingURL=explorer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explorer.d.ts","sourceRoot":"","sources":["../src/explorer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { HttpTransport } from "./transport.js";
2
+ export class ExplorerClient {
3
+ http;
4
+ constructor(options) {
5
+ this.http = new HttpTransport(typeof options === "string" ? { baseUrl: options } : options);
6
+ }
7
+ stats() { return this.http.request("GET", "/api/stats"); }
8
+ blocks() { return this.http.request("GET", "/api/blocks"); }
9
+ block(hash) { return this.http.request("GET", `/block/${encodeURIComponent(hash)}`); }
10
+ addresses(query = {}) {
11
+ return this.http.request("GET", "/api/addresses", { query });
12
+ }
13
+ address(address) { return this.http.request("GET", `/api/address/${encodeURIComponent(address)}`); }
14
+ transactions(query = {}) {
15
+ return this.http.request("GET", "/api/transactions", { query });
16
+ }
17
+ transaction(txid) { return this.http.request("GET", `/api/transaction/${encodeURIComponent(txid)}`); }
18
+ tokenBurn() { return this.http.request("GET", "/api/token-burn"); }
19
+ tokens(query = {}) { return this.http.request("GET", "/api/tokens", { query }); }
20
+ contracts() { return this.http.request("GET", "/api/contracts"); }
21
+ contractTransactions(address) { return this.http.request("GET", `/api/contracts/${encodeURIComponent(address)}/txs`); }
22
+ minerReports() { return this.http.request("GET", "/api/miner-reports"); }
23
+ miners(query = {}) { return this.http.request("GET", "/api/miners", { query }); }
24
+ hashrateHistory(blocks) { return this.http.request("GET", "/api/hashrate_history", { query: { blocks } }); }
25
+ difficultyHistory() { return this.http.request("GET", "/api/difficulty_history"); }
26
+ truScripts(query = {}) { return this.http.request("GET", "/api/truscripts", { query }); }
27
+ truScript(id) { return this.http.request("GET", `/api/truscripts/${encodeURIComponent(id)}`); }
28
+ uptime() { return this.http.request("GET", "/api/uptime"); }
29
+ peers() { return this.http.request("GET", "/api/peers"); }
30
+ peer(ip, port, session) { return this.http.request("GET", `/api/peer/${encodeURIComponent(ip)}/${port}`, { query: { session } }); }
31
+ did(did) { return this.http.request("GET", `/api/did/${encodeURIComponent(did)}`); }
32
+ didPostCount(did) { return this.http.request("GET", `/api/did/${encodeURIComponent(did)}/posts/count`); }
33
+ feed(did) { return this.http.request("GET", `/api/feed/${encodeURIComponent(did)}`); }
34
+ walletTokens(address) { return this.http.request("GET", `/api/wallet/tokens/${encodeURIComponent(address)}`); }
35
+ walletTokenTransactions(address) { return this.http.request("GET", `/api/wallet/token-transactions/${encodeURIComponent(address)}`); }
36
+ price() { return this.http.request("GET", "/api/price/tru"); }
37
+ hashrate() { return this.http.request("GET", "/api/hashrate"); }
38
+ }
39
+ //# sourceMappingURL=explorer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explorer.js","sourceRoot":"","sources":["../src/explorer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export { TruClient } from "./client.js";
2
+ export { ExplorerClient } from "./explorer.js";
3
+ export { NeromeshClient } from "./neromesh.js";
4
+ export { RpcTransport, HttpTransport } from "./transport.js";
5
+ export { RPC_CATALOG, rpcMethod } from "./rpc-catalog.js";
6
+ export { TRU_ATOMS_PER_TRU, TRU_DECIMALS, parseTru, formatTru, formatTruTrimmed } from "./utils/amount.js";
7
+ export { TRU_MAINNET_ADDRESS_RE, isTruAddress, assertTruAddress } from "./utils/address.js";
8
+ export * from "./errors.js";
9
+ export type * from "./types.js";
10
+ export type { TruClientOptions, PublicTruClientOptions } from "./client.js";
11
+ export type { NeromeshOptions } from "./neromesh.js";
12
+ export type { IssueTokenParams } from "./modules/tokens.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5F,cAAc,aAAa,CAAC;AAC5B,mBAAmB,YAAY,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC5E,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,9 @@
1
+ export { TruClient } from "./client.js";
2
+ export { ExplorerClient } from "./explorer.js";
3
+ export { NeromeshClient } from "./neromesh.js";
4
+ export { RpcTransport, HttpTransport } from "./transport.js";
5
+ export { RPC_CATALOG, rpcMethod } from "./rpc-catalog.js";
6
+ export { TRU_ATOMS_PER_TRU, TRU_DECIMALS, parseTru, formatTru, formatTruTrimmed } from "./utils/amount.js";
7
+ export { TRU_MAINNET_ADDRESS_RE, isTruAddress, assertTruAddress } from "./utils/address.js";
8
+ export * from "./errors.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5F,cAAc,aAAa,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { JsonObject, JsonValue } from "../types.js";
2
+ import { RpcModule } from "./base.js";
3
+ export declare class AiModule extends RpcModule {
4
+ configureProvider<T = JsonValue>(params: {
5
+ provider: string;
6
+ endpoint?: string;
7
+ model?: string;
8
+ api_key?: string;
9
+ address?: string;
10
+ config?: JsonValue;
11
+ }): Promise<T>;
12
+ providers<T = JsonValue>(): Promise<T>;
13
+ testProvider<T = JsonValue>(provider: string): Promise<T>;
14
+ createToken<T = JsonValue>(params: JsonObject): Promise<T>;
15
+ interact<T = JsonValue>(tokenID: string, address: string, message: string): Promise<T>;
16
+ response<T = JsonValue>(requestID: string): Promise<T>;
17
+ tokenState<T = JsonValue>(tokenID: string): Promise<T>;
18
+ train<T = JsonValue>(tokenID: string, address: string, training_data: JsonValue): Promise<T>;
19
+ }
20
+ //# sourceMappingURL=ai.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/modules/ai.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,qBAAa,QAAS,SAAQ,SAAS;IACrC,iBAAiB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,SAAS,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAGrK,SAAS,CAAC,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC;IACtC,YAAY,CAAC,CAAC,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IACzD,WAAW,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAC1D,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAGtF,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IACtD,UAAU,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IACtD,KAAK,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC;CAG7F"}
@@ -0,0 +1,18 @@
1
+ import { RpcModule } from "./base.js";
2
+ export class AiModule extends RpcModule {
3
+ configureProvider(params) {
4
+ return this.call("configureAIProvider", params);
5
+ }
6
+ providers() { return this.call("getAIProviders"); }
7
+ testProvider(provider) { return this.call("testAIProvider", { provider }); }
8
+ createToken(params) { return this.call("createAIToken", params); }
9
+ interact(tokenID, address, message) {
10
+ return this.call("interactWithAIToken", { tokenID, address, message });
11
+ }
12
+ response(requestID) { return this.call("getAIResponse", { requestID }); }
13
+ tokenState(tokenID) { return this.call("getAITokenState", { tokenID }); }
14
+ train(tokenID, address, training_data) {
15
+ return this.call("trainAIToken", { tokenID, address, training_data });
16
+ }
17
+ }
18
+ //# sourceMappingURL=ai.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/modules/ai.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,iBAAiB,CAAgB,MAAuH;QACtJ,OAAO,IAAI,CAAC,IAAI,CAAI,qBAAqB,EAAE,MAAoB,CAAC,CAAC;IACnE,CAAC;IACD,SAAS,KAAgC,OAAO,IAAI,CAAC,IAAI,CAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACjF,YAAY,CAAgB,QAAgB,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,gBAAgB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAClH,WAAW,CAAgB,MAAkB,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5G,QAAQ,CAAgB,OAAe,EAAE,OAAe,EAAE,OAAe;QACvE,OAAO,IAAI,CAAC,IAAI,CAAI,qBAAqB,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,QAAQ,CAAgB,SAAiB,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,eAAe,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/G,UAAU,CAAgB,OAAe,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,iBAAiB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/G,KAAK,CAAgB,OAAe,EAAE,OAAe,EAAE,aAAwB;QAC7E,OAAO,IAAI,CAAC,IAAI,CAAI,cAAc,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import type { JsonObject, JsonValue, RpcCallOptions } from "../types.js";
2
+ import { RpcTransport } from "../transport.js";
3
+ export declare abstract class RpcModule {
4
+ protected readonly rpc: RpcTransport;
5
+ constructor(rpc: RpcTransport);
6
+ protected call<T = JsonValue>(method: string, params?: JsonObject, options?: RpcCallOptions): Promise<T>;
7
+ }
8
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/modules/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,8BAAsB,SAAS;IAC7B,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;gBACzB,GAAG,EAAE,YAAY;IAC7B,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,UAAe,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;CAG7G"}
@@ -0,0 +1,8 @@
1
+ export class RpcModule {
2
+ rpc;
3
+ constructor(rpc) { this.rpc = rpc; }
4
+ call(method, params = {}, options) {
5
+ return this.rpc.call(method, params, options);
6
+ }
7
+ }
8
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/modules/base.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,SAAS;IACV,GAAG,CAAe;IACrC,YAAY,GAAiB,IAAI,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;IACxC,IAAI,CAAgB,MAAc,EAAE,SAAqB,EAAE,EAAE,OAAwB;QAC7F,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAI,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;CACF"}
@@ -0,0 +1,15 @@
1
+ import type { JsonObject, JsonValue } from "../types.js";
2
+ import { RpcModule } from "./base.js";
3
+ export declare class ChainModule extends RpcModule {
4
+ getChainInfo<T = JsonValue>(): Promise<T>;
5
+ getBlockCount<T = JsonValue>(): Promise<T>;
6
+ getBlock<T = JsonValue>(hash: string): Promise<T>;
7
+ getBlockByHeight<T = JsonValue>(height: number): Promise<T>;
8
+ getBlockTemplate<T = JsonValue>(params?: JsonObject): Promise<T>;
9
+ submitBlock<T = JsonValue>(params: {
10
+ blockHex?: string;
11
+ browserCandidate?: JsonValue;
12
+ nonce?: number;
13
+ }): Promise<T>;
14
+ }
15
+ //# sourceMappingURL=chain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/modules/chain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,qBAAa,WAAY,SAAQ,SAAS;IACxC,YAAY,CAAC,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC;IACzC,aAAa,CAAC,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC;IAC1C,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IACjD,gBAAgB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAC3D,gBAAgB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,GAAE,UAAe,GAAG,OAAO,CAAC,CAAC,CAAC;IACpE,WAAW,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,SAAS,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;CAGpH"}
@@ -0,0 +1,12 @@
1
+ import { RpcModule } from "./base.js";
2
+ export class ChainModule extends RpcModule {
3
+ getChainInfo() { return this.call("getchaininfo"); }
4
+ getBlockCount() { return this.call("getblockcount"); }
5
+ getBlock(hash) { return this.call("getblock", { hash }); }
6
+ getBlockByHeight(height) { return this.call("getblockbyheight", { height }); }
7
+ getBlockTemplate(params = {}) { return this.call("getblocktemplate", params); }
8
+ submitBlock(params) {
9
+ return this.call("submitblock", params);
10
+ }
11
+ }
12
+ //# sourceMappingURL=chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/modules/chain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC,YAAY,KAAgC,OAAO,IAAI,CAAC,IAAI,CAAI,cAAc,CAAC,CAAC,CAAC,CAAC;IAClF,aAAa,KAAgC,OAAO,IAAI,CAAC,IAAI,CAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IACpF,QAAQ,CAAgB,IAAY,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChG,gBAAgB,CAAgB,MAAc,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACpH,gBAAgB,CAAgB,SAAqB,EAAE,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACzH,WAAW,CAAgB,MAA2E;QACpG,OAAO,IAAI,CAAC,IAAI,CAAI,aAAa,EAAE,MAAoB,CAAC,CAAC;IAC3D,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ import type { JsonObject, JsonValue } from "../types.js";
2
+ import { RpcModule } from "./base.js";
3
+ export declare class ContractsModule extends RpcModule {
4
+ createTransaction<T = JsonValue>(params: JsonObject): Promise<T>;
5
+ list<T = JsonValue>(): Promise<T>;
6
+ redeemHashLock<T = JsonValue>(contractAddress: string, address: string, preimage: string): Promise<T>;
7
+ redeemTimeLock<T = JsonValue>(contractAddress: string, address: string): Promise<T>;
8
+ getOutpoint07b<T = JsonValue>(txid: string, vout: number): Promise<T>;
9
+ getVotingSnapshot07b<T = JsonValue>(params?: JsonObject): Promise<T>;
10
+ prepareVotingCreate07b<T = JsonValue>(params?: JsonObject): Promise<T>;
11
+ prepareVotingBallot07b<T = JsonValue>(params?: JsonObject): Promise<T>;
12
+ }
13
+ //# sourceMappingURL=contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/modules/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,iBAAiB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC;IACjC,cAAc,CAAC,CAAC,GAAG,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAGrG,cAAc,CAAC,CAAC,GAAG,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAGnF,cAAc,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IACrE,oBAAoB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,GAAE,UAAe,GAAG,OAAO,CAAC,CAAC,CAAC;IACxE,sBAAsB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,GAAE,UAAe,GAAG,OAAO,CAAC,CAAC,CAAC;IAC1E,sBAAsB,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,GAAE,UAAe,GAAG,OAAO,CAAC,CAAC,CAAC;CAC3E"}
@@ -0,0 +1,16 @@
1
+ import { RpcModule } from "./base.js";
2
+ export class ContractsModule extends RpcModule {
3
+ createTransaction(params) { return this.call("createcontracttransaction", params); }
4
+ list() { return this.call("getcontracts"); }
5
+ redeemHashLock(contractAddress, address, preimage) {
6
+ return this.call("redeemhashlock", { contractAddress, address, preimage });
7
+ }
8
+ redeemTimeLock(contractAddress, address) {
9
+ return this.call("redeemtimelock", { contractAddress, address });
10
+ }
11
+ getOutpoint07b(txid, vout) { return this.call("getcontractoutpoint07b", { txid, vout }); }
12
+ getVotingSnapshot07b(params = {}) { return this.call("getvotingv1snapshot07b", params); }
13
+ prepareVotingCreate07b(params = {}) { return this.call("preparevotingv1create07b", params); }
14
+ prepareVotingBallot07b(params = {}) { return this.call("preparevotingv1ballot07b", params); }
15
+ }
16
+ //# sourceMappingURL=contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/modules/contracts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAC5C,iBAAiB,CAAgB,MAAkB,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,2BAA2B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9H,IAAI,KAAgC,OAAO,IAAI,CAAC,IAAI,CAAI,cAAc,CAAC,CAAC,CAAC,CAAC;IAC1E,cAAc,CAAgB,eAAuB,EAAE,OAAe,EAAE,QAAgB;QACtF,OAAO,IAAI,CAAC,IAAI,CAAI,gBAAgB,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,cAAc,CAAgB,eAAuB,EAAE,OAAe;QACpE,OAAO,IAAI,CAAC,IAAI,CAAI,gBAAgB,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,cAAc,CAAgB,IAAY,EAAE,IAAY,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,wBAAwB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACxI,oBAAoB,CAAgB,SAAqB,EAAE,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,wBAAwB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACnI,sBAAsB,CAAgB,SAAqB,EAAE,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,0BAA0B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACvI,sBAAsB,CAAgB,SAAqB,EAAE,IAAgB,OAAO,IAAI,CAAC,IAAI,CAAI,0BAA0B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;CACxI"}