ox 0.14.36 → 0.14.38

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.
@@ -0,0 +1,71 @@
1
+ import { expectTypeOf, test } from 'vitest'
2
+ import type * as Hex from '../core/Hex.js'
3
+ import * as MultisigOperation from './MultisigOperation.js'
4
+ import type * as TxEnvelopeTempo from './TxEnvelopeTempo.js'
5
+
6
+ declare const transaction: MultisigOperation.TransactionOperation
7
+ declare const transactionRpc: MultisigOperation.TransactionRpc
8
+ declare const keyAuthorization: MultisigOperation.KeyAuthorizationOperation
9
+ declare const keyAuthorizationRpc: MultisigOperation.KeyAuthorizationRpc
10
+ declare const operation: MultisigOperation.Operation
11
+ declare const operationRpc: MultisigOperation.Rpc
12
+ declare const getHashOptions: MultisigOperation.getHash.Options
13
+ declare const selectApprovalsOptions: MultisigOperation.selectApprovals.Options
14
+ declare const serializeTransactionOptions: MultisigOperation.serializeTransaction.Options
15
+
16
+ test('preserves operation kinds during validation', () => {
17
+ expectTypeOf(
18
+ MultisigOperation.from(transaction),
19
+ ).toEqualTypeOf<MultisigOperation.TransactionOperation>()
20
+ expectTypeOf(
21
+ MultisigOperation.from(keyAuthorization),
22
+ ).toEqualTypeOf<MultisigOperation.KeyAuthorizationOperation>()
23
+ expectTypeOf(
24
+ MultisigOperation.from(operation),
25
+ ).toEqualTypeOf<MultisigOperation.Operation>()
26
+ })
27
+
28
+ test('preserves operation kinds during RPC conversion', () => {
29
+ expectTypeOf(
30
+ MultisigOperation.fromRpc(transactionRpc),
31
+ ).toEqualTypeOf<MultisigOperation.TransactionOperation>()
32
+ expectTypeOf(
33
+ MultisigOperation.fromRpc(keyAuthorizationRpc),
34
+ ).toEqualTypeOf<MultisigOperation.KeyAuthorizationOperation>()
35
+ expectTypeOf(
36
+ MultisigOperation.toRpc(transaction),
37
+ ).toEqualTypeOf<MultisigOperation.TransactionRpc>()
38
+ expectTypeOf(
39
+ MultisigOperation.toRpc(keyAuthorization),
40
+ ).toEqualTypeOf<MultisigOperation.KeyAuthorizationRpc>()
41
+ expectTypeOf(
42
+ MultisigOperation.fromRpc(operationRpc),
43
+ ).toEqualTypeOf<MultisigOperation.Operation>()
44
+ expectTypeOf(
45
+ MultisigOperation.toRpc(operation),
46
+ ).toEqualTypeOf<MultisigOperation.Rpc>()
47
+ })
48
+
49
+ test('uses JSON-RPC quantities only in RPC operations', () => {
50
+ expectTypeOf<
51
+ MultisigOperation.Operation['configVersion']
52
+ >().toEqualTypeOf<bigint>()
53
+ expectTypeOf<
54
+ MultisigOperation.Rpc['configVersion']
55
+ >().toEqualTypeOf<Hex.Hex>()
56
+ })
57
+
58
+ test('operation helpers return narrow types', async () => {
59
+ expectTypeOf(
60
+ MultisigOperation.getHash(getHashOptions),
61
+ ).toEqualTypeOf<Hex.Hex>()
62
+ expectTypeOf(
63
+ await MultisigOperation.selectApprovals(selectApprovalsOptions),
64
+ ).toEqualTypeOf<MultisigOperation.selectApprovals.ReturnValue>()
65
+ expectTypeOf(
66
+ MultisigOperation.serializeTransaction(
67
+ transaction,
68
+ serializeTransactionOptions,
69
+ ),
70
+ ).toEqualTypeOf<TxEnvelopeTempo.Serialized>()
71
+ })