@cogcoin/client 1.1.8 → 1.1.9

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 (266) hide show
  1. package/README.md +1 -1
  2. package/dist/cli/commands/mining-read.js +1 -1
  3. package/dist/cli/commands/wallet-mutation/anchor.d.ts +2 -0
  4. package/dist/cli/commands/wallet-mutation/anchor.js +33 -0
  5. package/dist/cli/commands/wallet-mutation/bitcoin-transfer.d.ts +2 -0
  6. package/dist/cli/commands/wallet-mutation/bitcoin-transfer.js +32 -0
  7. package/dist/cli/commands/wallet-mutation/cog.d.ts +2 -0
  8. package/dist/cli/commands/wallet-mutation/cog.js +131 -0
  9. package/dist/cli/commands/wallet-mutation/context.d.ts +3 -0
  10. package/dist/cli/commands/wallet-mutation/context.js +18 -0
  11. package/dist/cli/commands/wallet-mutation/domain-admin.d.ts +2 -0
  12. package/dist/cli/commands/wallet-mutation/domain-admin.js +173 -0
  13. package/dist/cli/commands/wallet-mutation/domain-market.d.ts +2 -0
  14. package/dist/cli/commands/wallet-mutation/domain-market.js +107 -0
  15. package/dist/cli/commands/wallet-mutation/field.d.ts +2 -0
  16. package/dist/cli/commands/wallet-mutation/field.js +125 -0
  17. package/dist/cli/commands/wallet-mutation/register.d.ts +2 -0
  18. package/dist/cli/commands/wallet-mutation/register.js +38 -0
  19. package/dist/cli/commands/wallet-mutation/registry.d.ts +3 -0
  20. package/dist/cli/commands/wallet-mutation/registry.js +39 -0
  21. package/dist/cli/commands/wallet-mutation/reputation.d.ts +2 -0
  22. package/dist/cli/commands/wallet-mutation/reputation.js +57 -0
  23. package/dist/cli/commands/wallet-mutation/types.d.ts +32 -0
  24. package/dist/cli/commands/wallet-mutation/types.js +1 -0
  25. package/dist/cli/commands/wallet-mutation.js +13 -765
  26. package/dist/cli/commands/wallet-read.js +4 -4
  27. package/dist/cli/mutation-success.d.ts +0 -2
  28. package/dist/cli/output/classify.d.ts +7 -0
  29. package/dist/cli/output/classify.js +94 -0
  30. package/dist/cli/output/render.d.ts +2 -0
  31. package/dist/cli/output/render.js +13 -0
  32. package/dist/cli/output/rules/cli-surface.d.ts +2 -0
  33. package/dist/cli/output/rules/cli-surface.js +110 -0
  34. package/dist/cli/output/rules/generic.d.ts +2 -0
  35. package/dist/cli/output/rules/generic.js +13 -0
  36. package/dist/cli/output/rules/index.d.ts +2 -0
  37. package/dist/cli/output/rules/index.js +24 -0
  38. package/dist/cli/output/rules/mining-update.d.ts +2 -0
  39. package/dist/cli/output/rules/mining-update.js +68 -0
  40. package/dist/cli/output/rules/services.d.ts +2 -0
  41. package/dist/cli/output/rules/services.js +110 -0
  42. package/dist/cli/output/rules/wallet-admin.d.ts +2 -0
  43. package/dist/cli/output/rules/wallet-admin.js +224 -0
  44. package/dist/cli/output/rules/wallet-mutations.d.ts +2 -0
  45. package/dist/cli/output/rules/wallet-mutations.js +274 -0
  46. package/dist/cli/output/types.d.ts +16 -0
  47. package/dist/cli/output/types.js +1 -0
  48. package/dist/cli/output.d.ts +2 -168
  49. package/dist/cli/output.js +6 -989
  50. package/dist/cli/pagination.d.ts +15 -0
  51. package/dist/cli/pagination.js +16 -0
  52. package/dist/cli/recommendations.d.ts +4 -0
  53. package/dist/cli/recommendations.js +108 -0
  54. package/dist/cli/wallet-format/availability.d.ts +5 -0
  55. package/dist/cli/wallet-format/availability.js +96 -0
  56. package/dist/cli/wallet-format/balance.d.ts +2 -0
  57. package/dist/cli/wallet-format/balance.js +162 -0
  58. package/dist/cli/wallet-format/domains.d.ts +8 -0
  59. package/dist/cli/wallet-format/domains.js +84 -0
  60. package/dist/cli/wallet-format/fields.d.ts +6 -0
  61. package/dist/cli/wallet-format/fields.js +61 -0
  62. package/dist/cli/wallet-format/identity.d.ts +5 -0
  63. package/dist/cli/wallet-format/identity.js +19 -0
  64. package/dist/cli/wallet-format/locks.d.ts +7 -0
  65. package/dist/cli/wallet-format/locks.js +52 -0
  66. package/dist/cli/wallet-format/overview.d.ts +2 -0
  67. package/dist/cli/wallet-format/overview.js +122 -0
  68. package/dist/cli/wallet-format/pending.d.ts +13 -0
  69. package/dist/cli/wallet-format/pending.js +101 -0
  70. package/dist/cli/wallet-format/shared.d.ts +7 -0
  71. package/dist/cli/wallet-format/shared.js +31 -0
  72. package/dist/cli/wallet-format/status.d.ts +3 -0
  73. package/dist/cli/wallet-format/status.js +27 -0
  74. package/dist/cli/wallet-format.d.ts +8 -30
  75. package/dist/cli/wallet-format.js +8 -830
  76. package/dist/cli/wallet-read-helpers.d.ts +6 -0
  77. package/dist/cli/wallet-read-helpers.js +17 -0
  78. package/dist/wallet/mining/candidate.d.ts +1 -1
  79. package/dist/wallet/mining/candidate.js +3 -3
  80. package/dist/wallet/mining/constants.d.ts +2 -2
  81. package/dist/wallet/mining/constants.js +2 -2
  82. package/dist/wallet/mining/sentence-protocol.d.ts +2 -2
  83. package/dist/wallet/mining/sentences.js +8 -8
  84. package/dist/wallet/tx/anchor/confirm.d.ts +15 -0
  85. package/dist/wallet/tx/anchor/confirm.js +60 -0
  86. package/dist/wallet/tx/anchor/draft.d.ts +39 -0
  87. package/dist/wallet/tx/anchor/draft.js +167 -0
  88. package/dist/wallet/tx/anchor/index.d.ts +5 -0
  89. package/dist/wallet/tx/anchor/index.js +148 -0
  90. package/dist/wallet/tx/anchor/intent.d.ts +61 -0
  91. package/dist/wallet/tx/anchor/intent.js +101 -0
  92. package/dist/wallet/tx/anchor/plan.d.ts +3 -0
  93. package/dist/wallet/tx/anchor/plan.js +18 -0
  94. package/dist/wallet/tx/anchor/result.d.ts +25 -0
  95. package/dist/wallet/tx/anchor/result.js +20 -0
  96. package/dist/wallet/tx/anchor.d.ts +1 -39
  97. package/dist/wallet/tx/anchor.js +1 -494
  98. package/dist/wallet/tx/bitcoin-transfer/confirm.d.ts +7 -0
  99. package/dist/wallet/tx/bitcoin-transfer/confirm.js +11 -0
  100. package/dist/wallet/tx/bitcoin-transfer/index.d.ts +5 -0
  101. package/dist/wallet/tx/bitcoin-transfer/index.js +112 -0
  102. package/dist/wallet/tx/bitcoin-transfer/intent.d.ts +52 -0
  103. package/dist/wallet/tx/bitcoin-transfer/intent.js +74 -0
  104. package/dist/wallet/tx/bitcoin-transfer/plan.d.ts +5 -0
  105. package/dist/wallet/tx/bitcoin-transfer/plan.js +21 -0
  106. package/dist/wallet/tx/bitcoin-transfer/result.d.ts +19 -0
  107. package/dist/wallet/tx/bitcoin-transfer/result.js +16 -0
  108. package/dist/wallet/tx/bitcoin-transfer.d.ts +1 -35
  109. package/dist/wallet/tx/bitcoin-transfer.js +1 -200
  110. package/dist/wallet/tx/cog/confirm.d.ts +13 -0
  111. package/dist/wallet/tx/cog/confirm.js +59 -0
  112. package/dist/wallet/tx/cog/draft.d.ts +20 -0
  113. package/dist/wallet/tx/cog/draft.js +114 -0
  114. package/dist/wallet/tx/cog/index.d.ts +6 -0
  115. package/dist/wallet/tx/cog/index.js +117 -0
  116. package/dist/wallet/tx/cog/intent.d.ts +30 -0
  117. package/dist/wallet/tx/cog/intent.js +169 -0
  118. package/dist/wallet/tx/cog/plan.d.ts +19 -0
  119. package/dist/wallet/tx/cog/plan.js +65 -0
  120. package/dist/wallet/tx/cog/result.d.ts +27 -0
  121. package/dist/wallet/tx/cog/result.js +28 -0
  122. package/dist/wallet/tx/cog/types.d.ts +186 -0
  123. package/dist/wallet/tx/cog/types.js +2 -0
  124. package/dist/wallet/tx/cog/variants/claim.d.ts +3 -0
  125. package/dist/wallet/tx/cog/variants/claim.js +92 -0
  126. package/dist/wallet/tx/cog/variants/lock.d.ts +2 -0
  127. package/dist/wallet/tx/cog/variants/lock.js +102 -0
  128. package/dist/wallet/tx/cog/variants/send.d.ts +2 -0
  129. package/dist/wallet/tx/cog/variants/send.js +77 -0
  130. package/dist/wallet/tx/cog.d.ts +1 -96
  131. package/dist/wallet/tx/cog.js +1 -824
  132. package/dist/wallet/tx/common.d.ts +14 -199
  133. package/dist/wallet/tx/common.js +10 -493
  134. package/dist/wallet/tx/domain-admin/confirm.d.ts +17 -0
  135. package/dist/wallet/tx/domain-admin/confirm.js +58 -0
  136. package/dist/wallet/tx/domain-admin/draft.d.ts +20 -0
  137. package/dist/wallet/tx/domain-admin/draft.js +161 -0
  138. package/dist/wallet/tx/domain-admin/index.d.ts +9 -0
  139. package/dist/wallet/tx/domain-admin/index.js +150 -0
  140. package/dist/wallet/tx/domain-admin/intent.d.ts +12 -0
  141. package/dist/wallet/tx/domain-admin/intent.js +61 -0
  142. package/dist/wallet/tx/domain-admin/plan.d.ts +19 -0
  143. package/dist/wallet/tx/domain-admin/plan.js +64 -0
  144. package/dist/wallet/tx/domain-admin/result.d.ts +19 -0
  145. package/dist/wallet/tx/domain-admin/result.js +33 -0
  146. package/dist/wallet/tx/domain-admin/types.d.ts +162 -0
  147. package/dist/wallet/tx/domain-admin/types.js +1 -0
  148. package/dist/wallet/tx/domain-admin/variants/canonical.d.ts +2 -0
  149. package/dist/wallet/tx/domain-admin/variants/canonical.js +22 -0
  150. package/dist/wallet/tx/domain-admin/variants/delegate.d.ts +3 -0
  151. package/dist/wallet/tx/domain-admin/variants/delegate.js +60 -0
  152. package/dist/wallet/tx/domain-admin/variants/endpoint.d.ts +3 -0
  153. package/dist/wallet/tx/domain-admin/variants/endpoint.js +102 -0
  154. package/dist/wallet/tx/domain-admin/variants/miner.d.ts +3 -0
  155. package/dist/wallet/tx/domain-admin/variants/miner.js +59 -0
  156. package/dist/wallet/tx/domain-admin.d.ts +1 -107
  157. package/dist/wallet/tx/domain-admin.js +1 -729
  158. package/dist/wallet/tx/domain-market/confirm.d.ts +6 -0
  159. package/dist/wallet/tx/domain-market/confirm.js +52 -0
  160. package/dist/wallet/tx/domain-market/draft.d.ts +43 -0
  161. package/dist/wallet/tx/domain-market/draft.js +286 -0
  162. package/dist/wallet/tx/domain-market/index.d.ts +6 -0
  163. package/dist/wallet/tx/domain-market/index.js +145 -0
  164. package/dist/wallet/tx/domain-market/intent.d.ts +15 -0
  165. package/dist/wallet/tx/domain-market/intent.js +131 -0
  166. package/dist/wallet/tx/domain-market/plan.d.ts +31 -0
  167. package/dist/wallet/tx/domain-market/plan.js +98 -0
  168. package/dist/wallet/tx/domain-market/result.d.ts +45 -0
  169. package/dist/wallet/tx/domain-market/result.js +88 -0
  170. package/dist/wallet/tx/domain-market/types.d.ts +221 -0
  171. package/dist/wallet/tx/domain-market/types.js +1 -0
  172. package/dist/wallet/tx/domain-market/variants/buy.d.ts +2 -0
  173. package/dist/wallet/tx/domain-market/variants/buy.js +103 -0
  174. package/dist/wallet/tx/domain-market/variants/sell.d.ts +2 -0
  175. package/dist/wallet/tx/domain-market/variants/sell.js +91 -0
  176. package/dist/wallet/tx/domain-market/variants/transfer.d.ts +2 -0
  177. package/dist/wallet/tx/domain-market/variants/transfer.js +105 -0
  178. package/dist/wallet/tx/domain-market.d.ts +1 -116
  179. package/dist/wallet/tx/domain-market.js +1 -1078
  180. package/dist/wallet/tx/draft-build.d.ts +60 -0
  181. package/dist/wallet/tx/draft-build.js +127 -0
  182. package/dist/wallet/tx/executor.d.ts +6 -40
  183. package/dist/wallet/tx/executor.js +6 -100
  184. package/dist/wallet/tx/fee.d.ts +30 -0
  185. package/dist/wallet/tx/fee.js +98 -0
  186. package/dist/wallet/tx/field/confirm.d.ts +11 -0
  187. package/dist/wallet/tx/field/confirm.js +19 -0
  188. package/dist/wallet/tx/field/draft.d.ts +23 -0
  189. package/dist/wallet/tx/field/draft.js +202 -0
  190. package/dist/wallet/tx/field/index.d.ts +5 -0
  191. package/dist/wallet/tx/field/index.js +140 -0
  192. package/dist/wallet/tx/field/intent.d.ts +5 -0
  193. package/dist/wallet/tx/field/intent.js +50 -0
  194. package/dist/wallet/tx/field/plan.d.ts +20 -0
  195. package/dist/wallet/tx/field/plan.js +65 -0
  196. package/dist/wallet/tx/field/result.d.ts +29 -0
  197. package/dist/wallet/tx/field/result.js +103 -0
  198. package/dist/wallet/tx/field/types.d.ts +163 -0
  199. package/dist/wallet/tx/field/types.js +1 -0
  200. package/dist/wallet/tx/field/variants/clear.d.ts +2 -0
  201. package/dist/wallet/tx/field/variants/clear.js +60 -0
  202. package/dist/wallet/tx/field/variants/create.d.ts +2 -0
  203. package/dist/wallet/tx/field/variants/create.js +67 -0
  204. package/dist/wallet/tx/field/variants/set.d.ts +2 -0
  205. package/dist/wallet/tx/field/variants/set.js +195 -0
  206. package/dist/wallet/tx/field.d.ts +1 -95
  207. package/dist/wallet/tx/field.js +1 -920
  208. package/dist/wallet/tx/mining-preemption.d.ts +6 -0
  209. package/dist/wallet/tx/mining-preemption.js +7 -0
  210. package/dist/wallet/tx/primitives.d.ts +13 -0
  211. package/dist/wallet/tx/primitives.js +42 -0
  212. package/dist/wallet/tx/psbt-assert.d.ts +14 -0
  213. package/dist/wallet/tx/psbt-assert.js +39 -0
  214. package/dist/wallet/tx/publish.d.ts +37 -0
  215. package/dist/wallet/tx/publish.js +88 -0
  216. package/dist/wallet/tx/readiness.d.ts +7 -0
  217. package/dist/wallet/tx/readiness.js +61 -0
  218. package/dist/wallet/tx/reconcile.d.ts +24 -0
  219. package/dist/wallet/tx/reconcile.js +72 -0
  220. package/dist/wallet/tx/register/confirm.d.ts +6 -0
  221. package/dist/wallet/tx/register/confirm.js +66 -0
  222. package/dist/wallet/tx/register/draft.d.ts +42 -0
  223. package/dist/wallet/tx/register/draft.js +181 -0
  224. package/dist/wallet/tx/register/index.d.ts +6 -0
  225. package/dist/wallet/tx/register/index.js +158 -0
  226. package/dist/wallet/tx/register/intent.d.ts +74 -0
  227. package/dist/wallet/tx/register/intent.js +119 -0
  228. package/dist/wallet/tx/register/plan.d.ts +43 -0
  229. package/dist/wallet/tx/register/plan.js +168 -0
  230. package/dist/wallet/tx/register/result.d.ts +78 -0
  231. package/dist/wallet/tx/register/result.js +41 -0
  232. package/dist/wallet/tx/register.d.ts +1 -70
  233. package/dist/wallet/tx/register.js +1 -681
  234. package/dist/wallet/tx/reputation/confirm.d.ts +11 -0
  235. package/dist/wallet/tx/reputation/confirm.js +51 -0
  236. package/dist/wallet/tx/reputation/draft.d.ts +20 -0
  237. package/dist/wallet/tx/reputation/draft.js +130 -0
  238. package/dist/wallet/tx/reputation/index.d.ts +4 -0
  239. package/dist/wallet/tx/reputation/index.js +162 -0
  240. package/dist/wallet/tx/reputation/intent.d.ts +36 -0
  241. package/dist/wallet/tx/reputation/intent.js +157 -0
  242. package/dist/wallet/tx/reputation/plan.d.ts +19 -0
  243. package/dist/wallet/tx/reputation/plan.js +64 -0
  244. package/dist/wallet/tx/reputation/result.d.ts +21 -0
  245. package/dist/wallet/tx/reputation/result.js +31 -0
  246. package/dist/wallet/tx/reputation/types.d.ts +130 -0
  247. package/dist/wallet/tx/reputation/types.js +1 -0
  248. package/dist/wallet/tx/reputation.d.ts +1 -74
  249. package/dist/wallet/tx/reputation.js +1 -556
  250. package/dist/wallet/tx/signing.d.ts +18 -0
  251. package/dist/wallet/tx/signing.js +31 -0
  252. package/dist/wallet/tx/state-persist.d.ts +27 -0
  253. package/dist/wallet/tx/state-persist.js +54 -0
  254. package/dist/wallet/tx/types.d.ts +44 -0
  255. package/dist/wallet/tx/types.js +1 -0
  256. package/package.json +1 -1
  257. package/dist/cli/mining-json.d.ts +0 -20
  258. package/dist/cli/mining-json.js +0 -46
  259. package/dist/cli/mutation-json.d.ts +0 -325
  260. package/dist/cli/mutation-json.js +0 -269
  261. package/dist/cli/mutation-resolved-json.d.ts +0 -117
  262. package/dist/cli/mutation-resolved-json.js +0 -123
  263. package/dist/cli/preview-json.d.ts +0 -319
  264. package/dist/cli/preview-json.js +0 -254
  265. package/dist/cli/read-json.d.ts +0 -190
  266. package/dist/cli/read-json.js +0 -627
@@ -0,0 +1,21 @@
1
+ import type { PendingMutationRecord } from "../../types.js";
2
+ import type { WalletMutationFeeSummary } from "../common.js";
3
+ import type { ReputationMutationKind, ReputationMutationResult, StandaloneReputationOperation } from "./types.js";
4
+ export declare function createReputationReuseResult(options: {
5
+ kind: ReputationMutationKind;
6
+ operation: StandaloneReputationOperation;
7
+ amountCogtoshi: bigint;
8
+ mutation: PendingMutationRecord;
9
+ resolution: "confirmed" | "live";
10
+ fees: WalletMutationFeeSummary;
11
+ }): ReputationMutationResult;
12
+ export declare function createReputationResult(options: {
13
+ kind: ReputationMutationKind;
14
+ operation: StandaloneReputationOperation;
15
+ amountCogtoshi: bigint;
16
+ mutation: PendingMutationRecord;
17
+ builtTxid: string | null;
18
+ status: "live" | "confirmed";
19
+ reusedExisting: boolean;
20
+ fees: WalletMutationFeeSummary;
21
+ }): ReputationMutationResult;
@@ -0,0 +1,31 @@
1
+ function mapResultKind(kind) {
2
+ return kind === "rep-give" ? "give" : "revoke";
3
+ }
4
+ export function createReputationReuseResult(options) {
5
+ return {
6
+ kind: mapResultKind(options.kind),
7
+ sourceDomainName: options.operation.normalizedSourceDomainName,
8
+ targetDomainName: options.operation.normalizedTargetDomainName,
9
+ amountCogtoshi: options.amountCogtoshi,
10
+ txid: options.mutation.attemptedTxid ?? "unknown",
11
+ status: options.resolution,
12
+ reusedExisting: true,
13
+ reviewIncluded: options.operation.review.payloadHex !== null,
14
+ resolved: options.operation.resolved,
15
+ fees: options.fees,
16
+ };
17
+ }
18
+ export function createReputationResult(options) {
19
+ return {
20
+ kind: mapResultKind(options.kind),
21
+ sourceDomainName: options.operation.normalizedSourceDomainName,
22
+ targetDomainName: options.operation.normalizedTargetDomainName,
23
+ amountCogtoshi: options.amountCogtoshi,
24
+ txid: options.mutation.attemptedTxid ?? options.builtTxid ?? "unknown",
25
+ status: options.status,
26
+ reusedExisting: options.reusedExisting,
27
+ reviewIncluded: options.operation.review.payloadHex !== null,
28
+ resolved: options.operation.resolved,
29
+ fees: options.fees,
30
+ };
31
+ }
@@ -0,0 +1,130 @@
1
+ import type { lookupDomain } from "@cogcoin/indexer/queries";
2
+ import type { RpcWalletTransaction } from "../../../bitcoind/types.js";
3
+ import type { WalletPrompter } from "../../lifecycle.js";
4
+ import type { WalletReadContext } from "../../read/index.js";
5
+ import type { WalletRuntimePaths } from "../../runtime.js";
6
+ import type { WalletSecretProvider } from "../../state/provider.js";
7
+ import type { PendingMutationRecord, WalletStateV1 } from "../../types.js";
8
+ import type { BuiltWalletMutationTransaction, FixedWalletInput, MutationSender, WalletMutationFeeSummary, WalletMutationRpcClient } from "../common.js";
9
+ export type ReputationMutationKind = "rep-give" | "rep-revoke";
10
+ export interface ReputationRpcClient extends WalletMutationRpcClient {
11
+ getBlockchainInfo(): Promise<{
12
+ blocks: number;
13
+ }>;
14
+ sendRawTransaction(hex: string): Promise<string>;
15
+ getTransaction(walletName: string, txid: string): Promise<RpcWalletTransaction>;
16
+ }
17
+ export interface ReputationPlan {
18
+ sender: MutationSender;
19
+ changeAddress: string;
20
+ fixedInputs: FixedWalletInput[];
21
+ outputs: unknown[];
22
+ changePosition: number;
23
+ expectedOpReturnScriptHex: string;
24
+ allowedFundingScriptPubKeyHex: string;
25
+ eligibleFundingOutpointKeys: Set<string>;
26
+ errorPrefix: string;
27
+ }
28
+ export type ReadyWalletReadContext = WalletReadContext & {
29
+ localState: {
30
+ availability: "ready";
31
+ state: WalletStateV1;
32
+ };
33
+ snapshot: NonNullable<WalletReadContext["snapshot"]>;
34
+ model: NonNullable<WalletReadContext["model"]>;
35
+ };
36
+ export interface ReputationOperation {
37
+ readContext: ReadyWalletReadContext;
38
+ state: WalletStateV1;
39
+ sender: MutationSender;
40
+ senderSelector: string;
41
+ sourceDomain: NonNullable<ReturnType<typeof lookupDomain>>;
42
+ targetDomain: NonNullable<ReturnType<typeof lookupDomain>>;
43
+ availableBalanceCogtoshi: bigint;
44
+ currentNetSupportCogtoshi: bigint;
45
+ }
46
+ export interface ReputationReview {
47
+ text: string | null;
48
+ payload: Uint8Array | undefined;
49
+ payloadHex: string | null;
50
+ }
51
+ export interface StandaloneReputationOperation extends ReputationOperation {
52
+ normalizedSourceDomainName: string;
53
+ normalizedTargetDomainName: string;
54
+ review: ReputationReview;
55
+ resolved: ReputationResolvedSummary;
56
+ }
57
+ export interface BuiltReputationTransaction extends BuiltWalletMutationTransaction {
58
+ }
59
+ export interface ReputationMutationResult {
60
+ kind: "give" | "revoke";
61
+ sourceDomainName: string;
62
+ targetDomainName: string;
63
+ amountCogtoshi: bigint;
64
+ txid: string;
65
+ status: "live" | "confirmed";
66
+ reusedExisting: boolean;
67
+ reviewIncluded: boolean;
68
+ resolved?: ReputationResolvedSummary | null;
69
+ fees: WalletMutationFeeSummary;
70
+ }
71
+ export interface ReputationResolvedSenderSummary {
72
+ selector: string;
73
+ localIndex: number;
74
+ scriptPubKeyHex: string;
75
+ address: string;
76
+ }
77
+ export type ReputationResolvedEffect = {
78
+ kind: "give-support";
79
+ burnCogtoshi: string;
80
+ } | {
81
+ kind: "revoke-support";
82
+ burnCogtoshi: string;
83
+ };
84
+ export interface ReputationResolvedReviewSummary {
85
+ included: boolean;
86
+ byteLength: number | null;
87
+ }
88
+ export interface ReputationResolvedSummary {
89
+ sender: ReputationResolvedSenderSummary;
90
+ effect: ReputationResolvedEffect;
91
+ review: ReputationResolvedReviewSummary;
92
+ selfStake: boolean;
93
+ }
94
+ interface ReputationBaseOptions {
95
+ sourceDomainName: string;
96
+ targetDomainName: string;
97
+ amountCogtoshi: bigint;
98
+ reviewText?: string | null;
99
+ feeRateSatVb?: number | null;
100
+ dataDir: string;
101
+ databasePath: string;
102
+ provider?: WalletSecretProvider;
103
+ prompter: WalletPrompter;
104
+ assumeYes?: boolean;
105
+ nowUnixMs?: number;
106
+ paths?: WalletRuntimePaths;
107
+ openReadContext?: typeof import("../../read/index.js").openWalletReadContext;
108
+ attachService?: typeof import("../../../bitcoind/service.js").attachOrStartManagedBitcoindService;
109
+ rpcFactory?: (config: Parameters<typeof import("../../../bitcoind/node.js").createRpcClient>[0]) => ReputationRpcClient;
110
+ }
111
+ export interface GiveReputationOptions extends ReputationBaseOptions {
112
+ }
113
+ export interface RevokeReputationOptions extends ReputationBaseOptions {
114
+ }
115
+ export interface ReputationDraftMutationOptions {
116
+ kind: ReputationMutationKind;
117
+ sourceDomainName: string;
118
+ targetDomainName: string;
119
+ amountCogtoshi: bigint;
120
+ sender: MutationSender;
121
+ intentFingerprintHex: string;
122
+ nowUnixMs: number;
123
+ reviewPayloadHex: string | null;
124
+ feeSelection: {
125
+ feeRateSatVb: number;
126
+ source: "custom-satvb" | "estimated-next-block-plus-one" | "fallback-default";
127
+ };
128
+ existing?: PendingMutationRecord | null;
129
+ }
130
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -1,74 +1 @@
1
- import { attachOrStartManagedBitcoindService } from "../../bitcoind/service.js";
2
- import { createRpcClient } from "../../bitcoind/node.js";
3
- import type { RpcWalletTransaction } from "../../bitcoind/types.js";
4
- import type { WalletPrompter } from "../lifecycle.js";
5
- import { type WalletRuntimePaths } from "../runtime.js";
6
- import { type WalletSecretProvider } from "../state/provider.js";
7
- import { openWalletReadContext } from "../read/index.js";
8
- import { type WalletMutationFeeSummary, type WalletMutationRpcClient } from "./common.js";
9
- interface ReputationRpcClient extends WalletMutationRpcClient {
10
- getBlockchainInfo(): Promise<{
11
- blocks: number;
12
- }>;
13
- sendRawTransaction(hex: string): Promise<string>;
14
- getTransaction(walletName: string, txid: string): Promise<RpcWalletTransaction>;
15
- }
16
- export interface ReputationMutationResult {
17
- kind: "give" | "revoke";
18
- sourceDomainName: string;
19
- targetDomainName: string;
20
- amountCogtoshi: bigint;
21
- txid: string;
22
- status: "live" | "confirmed";
23
- reusedExisting: boolean;
24
- reviewIncluded: boolean;
25
- resolved?: ReputationResolvedSummary | null;
26
- fees: WalletMutationFeeSummary;
27
- }
28
- export interface ReputationResolvedSenderSummary {
29
- selector: string;
30
- localIndex: number;
31
- scriptPubKeyHex: string;
32
- address: string;
33
- }
34
- export type ReputationResolvedEffect = {
35
- kind: "give-support";
36
- burnCogtoshi: string;
37
- } | {
38
- kind: "revoke-support";
39
- burnCogtoshi: string;
40
- };
41
- export interface ReputationResolvedReviewSummary {
42
- included: boolean;
43
- byteLength: number | null;
44
- }
45
- export interface ReputationResolvedSummary {
46
- sender: ReputationResolvedSenderSummary;
47
- effect: ReputationResolvedEffect;
48
- review: ReputationResolvedReviewSummary;
49
- selfStake: boolean;
50
- }
51
- interface ReputationBaseOptions {
52
- sourceDomainName: string;
53
- targetDomainName: string;
54
- amountCogtoshi: bigint;
55
- reviewText?: string | null;
56
- feeRateSatVb?: number | null;
57
- dataDir: string;
58
- databasePath: string;
59
- provider?: WalletSecretProvider;
60
- prompter: WalletPrompter;
61
- assumeYes?: boolean;
62
- nowUnixMs?: number;
63
- paths?: WalletRuntimePaths;
64
- openReadContext?: typeof openWalletReadContext;
65
- attachService?: typeof attachOrStartManagedBitcoindService;
66
- rpcFactory?: (config: Parameters<typeof createRpcClient>[0]) => ReputationRpcClient;
67
- }
68
- export interface GiveReputationOptions extends ReputationBaseOptions {
69
- }
70
- export interface RevokeReputationOptions extends ReputationBaseOptions {
71
- }
72
- export declare function giveReputation(options: GiveReputationOptions): Promise<ReputationMutationResult>;
73
- export declare function revokeReputation(options: RevokeReputationOptions): Promise<ReputationMutationResult>;
74
- export {};
1
+ export * from "./reputation/index.js";