@ckb-ccc/core 0.0.4-alpha.1 → 0.0.4-alpha.3

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 (104) hide show
  1. package/README.md +12 -7
  2. package/dist/address/address.advanced.d.ts +34 -0
  3. package/dist/address/address.advanced.d.ts.map +1 -1
  4. package/dist/address/address.advanced.js +41 -7
  5. package/dist/address/index.d.ts +36 -0
  6. package/dist/address/index.d.ts.map +1 -1
  7. package/dist/address/index.js +44 -5
  8. package/dist/bytes/advanced.d.ts +3 -0
  9. package/dist/bytes/advanced.d.ts.map +1 -1
  10. package/dist/bytes/index.d.ts +57 -0
  11. package/dist/bytes/index.d.ts.map +1 -1
  12. package/dist/bytes/index.js +57 -0
  13. package/dist/ckb/script.d.ts +98 -1
  14. package/dist/ckb/script.d.ts.map +1 -1
  15. package/dist/ckb/script.js +98 -1
  16. package/dist/ckb/transaction.d.ts +392 -1
  17. package/dist/ckb/transaction.d.ts.map +1 -1
  18. package/dist/ckb/transaction.js +403 -1
  19. package/dist/client/client.d.ts +10 -8
  20. package/dist/client/client.d.ts.map +1 -1
  21. package/dist/client/client.js +18 -0
  22. package/dist/client/clientPublicMainnet.advanced.d.ts +2 -2
  23. package/dist/client/clientPublicMainnet.advanced.d.ts.map +1 -1
  24. package/dist/client/clientPublicMainnet.d.ts +2 -2
  25. package/dist/client/clientPublicMainnet.d.ts.map +1 -1
  26. package/dist/client/clientPublicTestnet.advanced.d.ts +2 -2
  27. package/dist/client/clientPublicTestnet.advanced.d.ts.map +1 -1
  28. package/dist/client/clientPublicTestnet.d.ts +2 -2
  29. package/dist/client/clientPublicTestnet.d.ts.map +1 -1
  30. package/dist/client/clientTypes.d.ts +6 -0
  31. package/dist/client/clientTypes.d.ts.map +1 -1
  32. package/dist/client/jsonRpc/advanced.d.ts +2 -87
  33. package/dist/client/jsonRpc/advanced.d.ts.map +1 -1
  34. package/dist/client/jsonRpc/advanced.js +2 -65
  35. package/dist/client/jsonRpc/index.d.ts +60 -6
  36. package/dist/client/jsonRpc/index.d.ts.map +1 -1
  37. package/dist/client/jsonRpc/index.js +72 -7
  38. package/dist/client/jsonRpc/transformers.d.ts +28 -0
  39. package/dist/client/jsonRpc/transformers.d.ts.map +1 -0
  40. package/dist/client/jsonRpc/transformers.js +122 -0
  41. package/dist/client/jsonRpc/types.d.ts +41 -0
  42. package/dist/client/jsonRpc/types.d.ts.map +1 -0
  43. package/dist/client/jsonRpc/types.js +1 -0
  44. package/dist/fixedPoint/index.d.ts +43 -1
  45. package/dist/fixedPoint/index.d.ts.map +1 -1
  46. package/dist/fixedPoint/index.js +39 -1
  47. package/dist/hasher/index.d.ts +43 -2
  48. package/dist/hasher/index.d.ts.map +1 -1
  49. package/dist/hasher/index.js +42 -0
  50. package/dist/hex/index.d.ts +19 -0
  51. package/dist/hex/index.d.ts.map +1 -1
  52. package/dist/hex/index.js +12 -0
  53. package/dist/num/index.d.ts +99 -0
  54. package/dist/num/index.d.ts.map +1 -1
  55. package/dist/num/index.js +92 -0
  56. package/dist/signer/btc/signerBtc.d.ts +33 -2
  57. package/dist/signer/btc/signerBtc.d.ts.map +1 -1
  58. package/dist/signer/btc/signerBtc.js +25 -3
  59. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts +36 -0
  60. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -1
  61. package/dist/signer/btc/signerBtcPublicKeyReadonly.js +36 -0
  62. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts +35 -0
  63. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -1
  64. package/dist/signer/ckb/signerCkbScriptReadonly.js +35 -0
  65. package/dist/signer/evm/signerEvm.d.ts +27 -2
  66. package/dist/signer/evm/signerEvm.d.ts.map +1 -1
  67. package/dist/signer/evm/signerEvm.js +24 -3
  68. package/dist/signer/evm/signerEvmAddressReadonly.d.ts +30 -0
  69. package/dist/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -1
  70. package/dist/signer/evm/signerEvmAddressReadonly.js +30 -0
  71. package/dist/signer/helpers.d.ts +19 -1
  72. package/dist/signer/helpers.d.ts.map +1 -1
  73. package/dist/signer/helpers.js +26 -9
  74. package/dist/signer/signer.d.ts +75 -4
  75. package/dist/signer/signer.d.ts.map +1 -1
  76. package/dist/signer/signer.js +53 -0
  77. package/package.json +3 -3
  78. package/src/address/address.advanced.ts +54 -18
  79. package/src/address/index.ts +51 -7
  80. package/src/bytes/advanced.ts +12 -9
  81. package/src/bytes/index.ts +60 -0
  82. package/src/ckb/script.ts +111 -2
  83. package/src/ckb/transaction.ts +455 -2
  84. package/src/client/client.ts +31 -8
  85. package/src/client/clientPublicMainnet.advanced.ts +5 -2
  86. package/src/client/clientPublicMainnet.ts +4 -2
  87. package/src/client/clientPublicTestnet.advanced.ts +5 -2
  88. package/src/client/clientPublicTestnet.ts +4 -2
  89. package/src/client/clientTypes.ts +13 -0
  90. package/src/client/jsonRpc/advanced.ts +2 -93
  91. package/src/client/jsonRpc/index.ts +99 -11
  92. package/src/client/jsonRpc/transformers.ts +159 -0
  93. package/src/client/jsonRpc/types.ts +48 -0
  94. package/src/fixedPoint/index.ts +52 -2
  95. package/src/hasher/index.ts +47 -1
  96. package/src/hex/index.ts +19 -0
  97. package/src/num/index.ts +101 -0
  98. package/src/signer/btc/signerBtc.ts +35 -3
  99. package/src/signer/btc/signerBtcPublicKeyReadonly.ts +36 -0
  100. package/src/signer/ckb/signerCkbScriptReadonly.ts +36 -0
  101. package/src/signer/evm/signerEvm.ts +30 -3
  102. package/src/signer/evm/signerEvmAddressReadonly.ts +31 -0
  103. package/src/signer/helpers.ts +28 -8
  104. package/src/signer/signer.ts +77 -4
@@ -2,6 +2,20 @@ import { bytesFrom } from "../bytes";
2
2
  import { hexFrom } from "../hex";
3
3
  import * as mol from "./molecule.advanced";
4
4
  import { HASH_TYPES, HASH_TYPE_TO_NUM, NUM_TO_HASH_TYPE, } from "./script.advanced";
5
+ /**
6
+ * Converts a HashTypeLike value to a HashType.
7
+ *
8
+ * @param val - The value to convert, which can be a string, number, or bigint.
9
+ * @returns The corresponding HashType.
10
+ *
11
+ * @throws Will throw an error if the input value is not a valid hash type.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const hashType = hashTypeFrom(1); // Outputs "data"
16
+ * const hashType = hashTypeFrom("type"); // Outputs "type"
17
+ * ```
18
+ */
5
19
  export function hashTypeFrom(val) {
6
20
  const hashType = (() => {
7
21
  if (typeof val === "number") {
@@ -20,24 +34,75 @@ export function hashTypeFrom(val) {
20
34
  }
21
35
  return hashType;
22
36
  }
37
+ /**
38
+ * Converts a HashTypeLike value to its corresponding byte representation.
39
+ *
40
+ * @param hashType - The hash type value to convert.
41
+ * @returns A Uint8Array containing the byte representation of the hash type.
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * const hashTypeBytes = hashTypeToBytes("type"); // Outputs Uint8Array [0]
46
+ * ```
47
+ */
23
48
  export function hashTypeToBytes(hashType) {
24
- return bytesFrom([HASH_TYPE_TO_NUM[hashType]]);
49
+ return bytesFrom([HASH_TYPE_TO_NUM[hashTypeFrom(hashType)]]);
25
50
  }
51
+ /**
52
+ * Converts a byte-like value to a HashType.
53
+ *
54
+ * @param bytes - The byte-like value to convert.
55
+ * @returns The corresponding HashType.
56
+ *
57
+ * @throws Will throw an error if the input bytes do not correspond to a valid hash type.
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * const hashType = hashTypeFromBytes(new Uint8Array([0])); // Outputs "type"
62
+ * ```
63
+ */
26
64
  export function hashTypeFromBytes(bytes) {
27
65
  return NUM_TO_HASH_TYPE[bytesFrom(bytes)[0]];
28
66
  }
29
67
  export class Script {
68
+ /**
69
+ * Creates an instance of Script.
70
+ *
71
+ * @param codeHash - The code hash of the script.
72
+ * @param hashType - The hash type of the script.
73
+ * @param args - The arguments for the script.
74
+ */
30
75
  constructor(codeHash, hashType, args) {
31
76
  this.codeHash = codeHash;
32
77
  this.hashType = hashType;
33
78
  this.args = args;
34
79
  }
80
+ /**
81
+ * Creates a Script instance from a ScriptLike object.
82
+ *
83
+ * @param script - A ScriptLike object or an instance of Script.
84
+ * @returns A Script instance.
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * const script = Script.from({
89
+ * codeHash: "0x1234...",
90
+ * hashType: "type",
91
+ * args: "0xabcd..."
92
+ * });
93
+ * ```
94
+ */
35
95
  static from(script) {
36
96
  if (script instanceof Script) {
37
97
  return script;
38
98
  }
39
99
  return new Script(hexFrom(script.codeHash), hashTypeFrom(script.hashType), hexFrom(script.args));
40
100
  }
101
+ /**
102
+ * Converts the Script instance to molecule data format.
103
+ *
104
+ * @returns An object representing the script in molecule data format.
105
+ */
41
106
  _toMolData() {
42
107
  return {
43
108
  codeHash: bytesFrom(this.codeHash),
@@ -45,13 +110,45 @@ export class Script {
45
110
  args: bytesFrom(this.args),
46
111
  };
47
112
  }
113
+ /**
114
+ * Converts the Script instance to bytes.
115
+ *
116
+ * @returns A Uint8Array containing the script bytes.
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * const scriptBytes = script.toBytes();
121
+ * ```
122
+ */
48
123
  toBytes() {
49
124
  return bytesFrom(mol.SerializeScript(this._toMolData()));
50
125
  }
126
+ /**
127
+ * Creates a Script instance from a byte-like value or molecule Script.
128
+ *
129
+ * @param bytes - The byte-like value or molecule Script to convert.
130
+ * @returns A Script instance.
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * const script = Script.fromBytes(new Uint8Array([/* script bytes *\/]));
135
+ * ```
136
+ */
51
137
  static fromBytes(bytes) {
52
138
  const view = bytes instanceof mol.Script ? bytes : new mol.Script(bytesFrom(bytes));
53
139
  return new Script(hexFrom(view.getCodeHash().raw()), hashTypeFromBytes([view.getHashType()]), hexFrom(view.getArgs().raw()));
54
140
  }
141
+ /**
142
+ * Compares the current Script instance with another ScriptLike object for equality.
143
+ *
144
+ * @param val - The ScriptLike object to compare with.
145
+ * @returns True if the scripts are equal, otherwise false.
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * const isEqual = script.eq(anotherScript);
150
+ * ```
151
+ */
55
152
  eq(val) {
56
153
  const script = Script.from(val);
57
154
  return (this.codeHash === script.codeHash &&
@@ -1,5 +1,6 @@
1
1
  import type { TransactionSkeletonType } from "@ckb-lumos/helpers";
2
2
  import { Bytes, BytesLike } from "../bytes";
3
+ import { Client } from "../client";
3
4
  import { Hasher } from "../hasher";
4
5
  import { Hex, HexLike } from "../hex";
5
6
  import { Num, NumLike } from "../num";
@@ -7,8 +8,46 @@ import * as mol from "./molecule.advanced";
7
8
  import { Script, ScriptLike } from "./script";
8
9
  export type DepTypeLike = string | number | bigint;
9
10
  export type DepType = "depGroup" | "code";
11
+ /**
12
+ * Converts a DepTypeLike value to a DepType.
13
+ *
14
+ * @param val - The value to convert, which can be a string, number, or bigint.
15
+ * @returns The corresponding DepType.
16
+ *
17
+ * @throws Will throw an error if the input value is not a valid dep type.
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * const depType = depTypeFrom(1); // Outputs "code"
22
+ * const depType = depTypeFrom("depGroup"); // Outputs "depGroup"
23
+ * ```
24
+ */
10
25
  export declare function depTypeFrom(val: DepTypeLike): DepType;
11
- export declare function depTypeToBytes(depType: DepType): Bytes;
26
+ /**
27
+ * Converts a DepTypeLike value to its corresponding byte representation.
28
+ *
29
+ * @param depType - The dep type value to convert.
30
+ * @returns A Uint8Array containing the byte representation of the dep type.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * const depTypeBytes = depTypeToBytes("code"); // Outputs Uint8Array [1]
35
+ * ```
36
+ */
37
+ export declare function depTypeToBytes(depType: DepTypeLike): Bytes;
38
+ /**
39
+ * Converts a byte-like value to a DepType.
40
+ *
41
+ * @param bytes - The byte-like value to convert.
42
+ * @returns The corresponding DepType.
43
+ *
44
+ * @throws Will throw an error if the input bytes do not correspond to a valid dep type.
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const depType = depTypeFromBytes(new Uint8Array([1])); // Outputs "code"
49
+ * ```
50
+ */
12
51
  export declare function depTypeFromBytes(bytes: BytesLike): DepType;
13
52
  export type OutPointLike = {
14
53
  txHash: HexLike;
@@ -17,13 +56,56 @@ export type OutPointLike = {
17
56
  export declare class OutPoint {
18
57
  txHash: Hex;
19
58
  index: Num;
59
+ /**
60
+ * Creates an instance of OutPoint.
61
+ *
62
+ * @param txHash - The transaction hash.
63
+ * @param index - The index of the output in the transaction.
64
+ */
20
65
  constructor(txHash: Hex, index: Num);
66
+ /**
67
+ * Creates an OutPoint instance from an OutPointLike object.
68
+ *
69
+ * @param outPoint - An OutPointLike object or an instance of OutPoint.
70
+ * @returns An OutPoint instance.
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * const outPoint = OutPoint.from({ txHash: "0x...", index: 0 });
75
+ * ```
76
+ */
21
77
  static from(outPoint: OutPointLike): OutPoint;
78
+ /**
79
+ * Converts the OutPoint instance to molecule data format.
80
+ *
81
+ * @returns An object representing the outpoint in molecule data format.
82
+ */
22
83
  _toMolData(): {
23
84
  txHash: Uint8Array;
24
85
  index: Uint8Array;
25
86
  };
87
+ /**
88
+ * Converts the OutPoint instance to bytes.
89
+ *
90
+ * @returns A Uint8Array containing the outpoint bytes.
91
+ *
92
+ * @example
93
+ * ```typescript
94
+ * const outPointBytes = outPoint.encode();
95
+ * ```
96
+ */
26
97
  encode(): Bytes;
98
+ /**
99
+ * Creates an OutPoint instance from a byte-like value or molecule OutPoint.
100
+ *
101
+ * @param bytes - The byte-like value or molecule OutPoint to convert.
102
+ * @returns An OutPoint instance.
103
+ *
104
+ * @example
105
+ * ```typescript
106
+ * const outPoint = OutPoint.fromBytes(new Uint8Array([/* outpoint bytes *\/]));
107
+ * ```
108
+ */
27
109
  static fromBytes(bytes: BytesLike | mol.OutPoint): OutPoint;
28
110
  }
29
111
  export type CellOutputLike = {
@@ -35,8 +117,35 @@ export declare class CellOutput {
35
117
  capacity: Num;
36
118
  lock: Script;
37
119
  type?: Script | undefined;
120
+ /**
121
+ * Creates an instance of CellOutput.
122
+ *
123
+ * @param capacity - The capacity of the cell.
124
+ * @param lock - The lock script of the cell.
125
+ * @param type - The optional type script of the cell.
126
+ */
38
127
  constructor(capacity: Num, lock: Script, type?: Script | undefined);
128
+ /**
129
+ * Creates a CellOutput instance from a CellOutputLike object.
130
+ *
131
+ * @param cellOutput - A CellOutputLike object or an instance of CellOutput.
132
+ * @returns A CellOutput instance.
133
+ *
134
+ * @example
135
+ * ```typescript
136
+ * const cellOutput = CellOutput.from({
137
+ * capacity: 1000n,
138
+ * lock: { codeHash: "0x...", hashType: "type", args: "0x..." },
139
+ * type: { codeHash: "0x...", hashType: "type", args: "0x..." }
140
+ * });
141
+ * ```
142
+ */
39
143
  static from(cellOutput: CellOutputLike): CellOutput;
144
+ /**
145
+ * Converts the CellOutput instance to molecule data format.
146
+ *
147
+ * @returns An object representing the cell output in molecule data format.
148
+ */
40
149
  _toMolData(): {
41
150
  capacity: Uint8Array;
42
151
  lock: {
@@ -50,9 +159,52 @@ export declare class CellOutput {
50
159
  args: Uint8Array;
51
160
  } | undefined;
52
161
  };
162
+ /**
163
+ * Converts the CellOutput instance to bytes.
164
+ *
165
+ * @returns A Uint8Array containing the cell output bytes.
166
+ *
167
+ * @example
168
+ * ```typescript
169
+ * const cellOutputBytes = cellOutput.toBytes();
170
+ * ```
171
+ */
53
172
  toBytes(): Bytes;
173
+ /**
174
+ * Creates a CellOutput instance from a byte-like value or molecule CellOutput.
175
+ *
176
+ * @param bytes - The byte-like value or molecule CellOutput to convert.
177
+ * @returns A CellOutput instance.
178
+ *
179
+ * @example
180
+ * ```typescript
181
+ * const cellOutput = CellOutput.fromBytes(new Uint8Array([/* cell output bytes *\/]));
182
+ * ```
183
+ */
54
184
  static fromBytes(bytes: BytesLike | mol.CellOutput): CellOutput;
55
185
  }
186
+ export type CellLike = {
187
+ cellOutput: CellOutputLike;
188
+ outputData: HexLike;
189
+ };
190
+ export declare class Cell {
191
+ cellOutput: CellOutput;
192
+ outputData: Hex;
193
+ /**
194
+ * Creates an instance of Cell.
195
+ *
196
+ * @param cellOutput - The cell output of the cell.
197
+ * @param outputData - The output data of the cell.
198
+ */
199
+ constructor(cellOutput: CellOutput, outputData: Hex);
200
+ /**
201
+ * Creates a Cell instance from a CellLike object.
202
+ *
203
+ * @param cell - A CellLike object or an instance of Cell.
204
+ * @returns A Cell instance.
205
+ */
206
+ static from(cell: CellLike): Cell;
207
+ }
56
208
  export type CellInputLike = {
57
209
  previousOutput: OutPointLike;
58
210
  since: NumLike;
@@ -64,8 +216,48 @@ export declare class CellInput {
64
216
  since: Num;
65
217
  cellOutput?: CellOutput | undefined;
66
218
  outputData?: `0x${string}` | undefined;
219
+ /**
220
+ * Creates an instance of CellInput.
221
+ *
222
+ * @param previousOutput - The previous outpoint of the cell.
223
+ * @param since - The since value of the cell input.
224
+ * @param cellOutput - The optional cell output associated with the cell input.
225
+ * @param outputData - The optional output data associated with the cell input.
226
+ */
67
227
  constructor(previousOutput: OutPoint, since: Num, cellOutput?: CellOutput | undefined, outputData?: `0x${string}` | undefined);
228
+ /**
229
+ * Creates a CellInput instance from a CellInputLike object.
230
+ *
231
+ * @param cellInput - A CellInputLike object or an instance of CellInput.
232
+ * @returns A CellInput instance.
233
+ *
234
+ * @example
235
+ * ```typescript
236
+ * const cellInput = CellInput.from({
237
+ * previousOutput: { txHash: "0x...", index: 0 },
238
+ * since: 0n
239
+ * });
240
+ * ```
241
+ */
68
242
  static from(cellInput: CellInputLike): CellInput;
243
+ /**
244
+ * Complete extra infos in the input. Like the output of the out point.
245
+ * The instance will be modified.
246
+ *
247
+ * @returns The completed instance.
248
+ * @example
249
+ * ```typescript
250
+ * if (!cellInput.cellOutput) {
251
+ * await cellInput.completeExtraInfos();
252
+ * }
253
+ * ```
254
+ */
255
+ completeExtraInfos(client: Client): Promise<CellInput>;
256
+ /**
257
+ * Converts the CellInput instance to molecule data format.
258
+ *
259
+ * @returns An object representing the cell input in molecule data format.
260
+ */
69
261
  _toMolData(): {
70
262
  previousOutput: {
71
263
  txHash: Uint8Array;
@@ -73,7 +265,28 @@ export declare class CellInput {
73
265
  };
74
266
  since: Uint8Array;
75
267
  };
268
+ /**
269
+ * Converts the CellInput instance to bytes.
270
+ *
271
+ * @returns A Uint8Array containing the cell input bytes.
272
+ *
273
+ * @example
274
+ * ```typescript
275
+ * const cellInputBytes = cellInput.toBytes();
276
+ * ```
277
+ */
76
278
  toBytes(): Bytes;
279
+ /**
280
+ * Creates a CellInput instance from a byte-like value or molecule CellInput.
281
+ *
282
+ * @param bytes - The byte-like value or molecule CellInput to convert.
283
+ * @returns A CellInput instance.
284
+ *
285
+ * @example
286
+ * ```typescript
287
+ * const cellInput = CellInput.fromBytes(new Uint8Array([/* cell input bytes *\/]));
288
+ * ```
289
+ */
77
290
  static fromBytes(bytes: BytesLike | mol.CellInput): CellInput;
78
291
  }
79
292
  export type CellDepLike = {
@@ -83,8 +296,33 @@ export type CellDepLike = {
83
296
  export declare class CellDep {
84
297
  outPoint: OutPoint;
85
298
  depType: DepType;
299
+ /**
300
+ * Creates an instance of CellDep.
301
+ *
302
+ * @param outPoint - The outpoint of the cell dependency.
303
+ * @param depType - The dependency type.
304
+ */
86
305
  constructor(outPoint: OutPoint, depType: DepType);
306
+ /**
307
+ * Creates a CellDep instance from a CellDepLike object.
308
+ *
309
+ * @param cellDep - A CellDepLike object or an instance of CellDep.
310
+ * @returns A CellDep instance.
311
+ *
312
+ * @example
313
+ * ```typescript
314
+ * const cellDep = CellDep.from({
315
+ * outPoint: { txHash: "0x...", index: 0 },
316
+ * depType: "depGroup"
317
+ * });
318
+ * ```
319
+ */
87
320
  static from(cellDep: CellDepLike): CellDep;
321
+ /**
322
+ * Converts the CellDep instance to molecule data format.
323
+ *
324
+ * @returns An object representing the cell dependency in molecule data format.
325
+ */
88
326
  _toMolData(): {
89
327
  outPoint: {
90
328
  txHash: Uint8Array;
@@ -92,7 +330,28 @@ export declare class CellDep {
92
330
  };
93
331
  depType: Uint8Array;
94
332
  };
333
+ /**
334
+ * Converts the CellDep instance to bytes.
335
+ *
336
+ * @returns A Uint8Array containing the cell dependency bytes.
337
+ *
338
+ * @example
339
+ * ```typescript
340
+ * const cellDepBytes = cellDep.toBytes();
341
+ * ```
342
+ */
95
343
  toBytes(): Bytes;
344
+ /**
345
+ * Creates a CellDep instance from a byte-like value or molecule CellDep.
346
+ *
347
+ * @param bytes - The byte-like value or molecule CellDep to convert.
348
+ * @returns A CellDep instance.
349
+ *
350
+ * @example
351
+ * ```typescript
352
+ * const cellDep = CellDep.fromBytes(new Uint8Array([/* cell dep bytes *\/]));
353
+ * ```
354
+ */
96
355
  fromBytes(bytes: BytesLike | mol.CellDep): CellDep;
97
356
  }
98
357
  export type WitnessArgsLike = {
@@ -104,14 +363,62 @@ export declare class WitnessArgs {
104
363
  lock?: `0x${string}` | undefined;
105
364
  inputType?: `0x${string}` | undefined;
106
365
  outputType?: `0x${string}` | undefined;
366
+ /**
367
+ * Creates an instance of WitnessArgs.
368
+ *
369
+ * @param lock - The optional lock field of the witness.
370
+ * @param inputType - The optional input type field of the witness.
371
+ * @param outputType - The optional output type field of the witness.
372
+ */
107
373
  constructor(lock?: `0x${string}` | undefined, inputType?: `0x${string}` | undefined, outputType?: `0x${string}` | undefined);
374
+ /**
375
+ * Creates a WitnessArgs instance from a WitnessArgsLike object.
376
+ *
377
+ * @param witnessArgs - A WitnessArgsLike object or an instance of WitnessArgs.
378
+ * @returns A WitnessArgs instance.
379
+ *
380
+ * @example
381
+ * ```typescript
382
+ * const witnessArgs = WitnessArgs.from({
383
+ * lock: "0x...",
384
+ * inputType: "0x...",
385
+ * outputType: "0x..."
386
+ * });
387
+ * ```
388
+ */
108
389
  static from(witnessArgs: WitnessArgsLike): WitnessArgs;
390
+ /**
391
+ * Converts the WitnessArgs instance to molecule data format.
392
+ *
393
+ * @returns An object representing the witness arguments in molecule data format.
394
+ */
109
395
  _toMolData(): {
110
396
  lock: Uint8Array | undefined;
111
397
  inputType: Uint8Array | undefined;
112
398
  outputType: Uint8Array | undefined;
113
399
  };
400
+ /**
401
+ * Converts the WitnessArgs instance to bytes.
402
+ *
403
+ * @returns A Uint8Array containing the witness arguments bytes.
404
+ *
405
+ * @example
406
+ * ```typescript
407
+ * const witnessArgsBytes = witnessArgs.toBytes();
408
+ * ```
409
+ */
114
410
  toBytes(): Bytes;
411
+ /**
412
+ * Creates a WitnessArgs instance from a byte-like value or molecule WitnessArgs.
413
+ *
414
+ * @param bytes - The byte-like value or molecule WitnessArgs to convert.
415
+ * @returns A WitnessArgs instance.
416
+ *
417
+ * @example
418
+ * ```typescript
419
+ * const witnessArgs = WitnessArgs.fromBytes(new Uint8Array([/* witness args bytes *\/]));
420
+ * ```
421
+ */
115
422
  static fromBytes(bytes: BytesLike | mol.WitnessArgs): WitnessArgs;
116
423
  }
117
424
  export type TransactionLike = {
@@ -131,12 +438,96 @@ export declare class Transaction {
131
438
  outputs: CellOutput[];
132
439
  outputsData: Hex[];
133
440
  witnesses: Hex[];
441
+ /**
442
+ * Creates an instance of Transaction.
443
+ *
444
+ * @param version - The version of the transaction.
445
+ * @param cellDeps - The cell dependencies of the transaction.
446
+ * @param headerDeps - The header dependencies of the transaction.
447
+ * @param inputs - The inputs of the transaction.
448
+ * @param outputs - The outputs of the transaction.
449
+ * @param outputsData - The data associated with the outputs.
450
+ * @param witnesses - The witnesses of the transaction.
451
+ */
134
452
  constructor(version: Num, cellDeps: CellDep[], headerDeps: Hex[], inputs: CellInput[], outputs: CellOutput[], outputsData: Hex[], witnesses: Hex[]);
453
+ /**
454
+ * Creates a default Transaction instance with empty fields.
455
+ *
456
+ * @returns A default Transaction instance.
457
+ *
458
+ * @example
459
+ * ```typescript
460
+ * const defaultTx = Transaction.default();
461
+ * ```
462
+ */
135
463
  static default(): Transaction;
464
+ /**
465
+ * Creates a Transaction instance from a TransactionLike object.
466
+ *
467
+ * @param tx - A TransactionLike object or an instance of Transaction.
468
+ * @returns A Transaction instance.
469
+ *
470
+ * @example
471
+ * ```typescript
472
+ * const transaction = Transaction.from({
473
+ * version: 0,
474
+ * cellDeps: [],
475
+ * headerDeps: [],
476
+ * inputs: [],
477
+ * outputs: [],
478
+ * outputsData: [],
479
+ * witnesses: []
480
+ * });
481
+ * ```
482
+ */
136
483
  static from(tx: TransactionLike): Transaction;
484
+ /**
485
+ * Creates a Transaction instance from a Lumos skeleton.
486
+ *
487
+ * @param skeleton - The Lumos transaction skeleton.
488
+ * @returns A Transaction instance.
489
+ *
490
+ * @throws Will throw an error if an input's outPoint is missing.
491
+ *
492
+ * @example
493
+ * ```typescript
494
+ * const transaction = Transaction.fromLumosSkeleton(skeleton);
495
+ * ```
496
+ */
137
497
  static fromLumosSkeleton(skeleton: TransactionSkeletonType): Transaction;
498
+ /**
499
+ * Converts the raw transaction data to bytes.
500
+ *
501
+ * @returns A Uint8Array containing the raw transaction bytes.
502
+ *
503
+ * @example
504
+ * ```typescript
505
+ * const rawTxBytes = transaction.rawToBytes();
506
+ * ```
507
+ */
138
508
  rawToBytes(): Bytes;
509
+ /**
510
+ * Calculates the hash of the transaction.
511
+ *
512
+ * @returns The hash of the transaction.
513
+ *
514
+ * @example
515
+ * ```typescript
516
+ * const txHash = transaction.hash();
517
+ * ```
518
+ */
139
519
  hash(): `0x${string}`;
520
+ /**
521
+ * Hashes a witness and updates the hasher.
522
+ *
523
+ * @param witness - The witness to hash.
524
+ * @param hasher - The hasher instance to update.
525
+ *
526
+ * @example
527
+ * ```typescript
528
+ * Transaction.hashWitnessToHasher("0x...", hasher);
529
+ * ```
530
+ */
140
531
  static hashWitnessToHasher(witness: HexLike, hasher: Hasher): void;
141
532
  }
142
533
  //# sourceMappingURL=transaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}