@interest-protocol/xbridge-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.
@@ -0,0 +1,127 @@
1
+ import { z } from 'zod';
2
+ export declare const MintRequestFieldsRawSchema: z.ZodObject<{
3
+ id: z.ZodObject<{
4
+ id: z.ZodString;
5
+ }, z.core.$strip>;
6
+ mint_cap: z.ZodString;
7
+ wallet_key: z.ZodString;
8
+ source_chain: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
9
+ source_token: z.ZodArray<z.ZodNumber>;
10
+ source_decimals: z.ZodNumber;
11
+ source_address: z.ZodArray<z.ZodNumber>;
12
+ source_amount: z.ZodString;
13
+ digest: z.ZodNullable<z.ZodArray<z.ZodNumber>>;
14
+ cancel_sign_id: z.ZodNullable<z.ZodString>;
15
+ status: z.ZodNumber;
16
+ votes: z.ZodObject<{
17
+ fields: z.ZodObject<{
18
+ contents: z.ZodArray<z.ZodObject<{
19
+ fields: z.ZodObject<{
20
+ name: z.ZodString;
21
+ }, z.core.$strip>;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>;
24
+ }, z.core.$strip>;
25
+ }, z.core.$strip>;
26
+ export declare const BurnRequestFieldsRawSchema: z.ZodObject<{
27
+ id: z.ZodObject<{
28
+ id: z.ZodString;
29
+ }, z.core.$strip>;
30
+ wallet_key: z.ZodString;
31
+ source_chain: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
32
+ source_token: z.ZodArray<z.ZodNumber>;
33
+ source_decimals: z.ZodNumber;
34
+ destination_address: z.ZodArray<z.ZodNumber>;
35
+ source_amount: z.ZodString;
36
+ balance: z.ZodString;
37
+ message: z.ZodArray<z.ZodNumber>;
38
+ sign_id: z.ZodNullable<z.ZodString>;
39
+ status: z.ZodNumber;
40
+ votes: z.ZodObject<{
41
+ fields: z.ZodObject<{
42
+ contents: z.ZodArray<z.ZodObject<{
43
+ fields: z.ZodObject<{
44
+ name: z.ZodString;
45
+ }, z.core.$strip>;
46
+ }, z.core.$strip>>;
47
+ }, z.core.$strip>;
48
+ }, z.core.$strip>;
49
+ }, z.core.$strip>;
50
+ export declare const LockRequestFieldsRawSchema: z.ZodObject<{
51
+ id: z.ZodObject<{
52
+ id: z.ZodString;
53
+ }, z.core.$strip>;
54
+ lock_cap: z.ZodString;
55
+ wallet_key: z.ZodString;
56
+ target_chain: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
57
+ foreign_token: z.ZodArray<z.ZodNumber>;
58
+ foreign_decimals: z.ZodNumber;
59
+ recipient_address: z.ZodArray<z.ZodNumber>;
60
+ lock_amount: z.ZodString;
61
+ foreign_amount: z.ZodString;
62
+ message: z.ZodArray<z.ZodNumber>;
63
+ sign_id: z.ZodNullable<z.ZodString>;
64
+ status: z.ZodNumber;
65
+ votes: z.ZodObject<{
66
+ fields: z.ZodObject<{
67
+ contents: z.ZodArray<z.ZodObject<{
68
+ fields: z.ZodObject<{
69
+ name: z.ZodString;
70
+ }, z.core.$strip>;
71
+ }, z.core.$strip>>;
72
+ }, z.core.$strip>;
73
+ }, z.core.$strip>;
74
+ }, z.core.$strip>;
75
+ export declare const UnlockRequestFieldsRawSchema: z.ZodObject<{
76
+ id: z.ZodObject<{
77
+ id: z.ZodString;
78
+ }, z.core.$strip>;
79
+ unlock_cap: z.ZodString;
80
+ wallet_key: z.ZodString;
81
+ source_chain: z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>;
82
+ foreign_token: z.ZodArray<z.ZodNumber>;
83
+ foreign_decimals: z.ZodNumber;
84
+ sender_address: z.ZodArray<z.ZodNumber>;
85
+ sui_recipient: z.ZodString;
86
+ foreign_amount: z.ZodString;
87
+ lock_amount: z.ZodString;
88
+ digest: z.ZodNullable<z.ZodArray<z.ZodNumber>>;
89
+ cancel_sign_id: z.ZodNullable<z.ZodString>;
90
+ status: z.ZodNumber;
91
+ votes: z.ZodObject<{
92
+ fields: z.ZodObject<{
93
+ contents: z.ZodArray<z.ZodObject<{
94
+ fields: z.ZodObject<{
95
+ name: z.ZodString;
96
+ }, z.core.$strip>;
97
+ }, z.core.$strip>>;
98
+ }, z.core.$strip>;
99
+ }, z.core.$strip>;
100
+ }, z.core.$strip>;
101
+ export declare const PresignCapFieldsRawSchema: z.ZodObject<{
102
+ id: z.ZodObject<{
103
+ id: z.ZodString;
104
+ }, z.core.$strip>;
105
+ app_type_name: z.ZodObject<{
106
+ fields: z.ZodObject<{
107
+ name: z.ZodString;
108
+ }, z.core.$strip>;
109
+ }, z.core.$strip>;
110
+ wallet_key: z.ZodString;
111
+ cap: z.ZodObject<{
112
+ fields: z.ZodObject<{
113
+ presign_id: z.ZodString;
114
+ }, z.core.$strip>;
115
+ }, z.core.$strip>;
116
+ }, z.core.$strip>;
117
+ export declare const PresignSessionFieldsRawSchema: z.ZodObject<{
118
+ id: z.ZodObject<{
119
+ id: z.ZodString;
120
+ }, z.core.$strip>;
121
+ state: z.ZodObject<{
122
+ fields: z.ZodObject<{
123
+ presign: z.ZodArray<z.ZodNumber>;
124
+ }, z.core.$strip>;
125
+ }, z.core.$strip>;
126
+ }, z.core.$strip>;
127
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;iBAuBrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;iBAuBrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;iBAwBrC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBvC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;iBAapC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;iBAOxC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const parseU256LittleEndian: (bytes: number[]) => bigint;
2
+ export declare const u256ToLittleEndianBytes: (value: bigint) => Uint8Array;
3
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,EAAE,KAAG,MAMvD,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,OAAO,MAAM,KAAG,UAQvD,CAAC"}
@@ -0,0 +1,132 @@
1
+ import type { SuiClient } from '@mysten/sui/client';
2
+ import { Transaction, type TransactionObjectArgument } from '@mysten/sui/transactions';
3
+ import type { z } from 'zod';
4
+ import { BurnRequestFieldsRawSchema, MintRequestFieldsRawSchema } from './schemas';
5
+ import type { AddChainArgs, AddTokenArgs, AddValidatorArgs, AddWalletArgs, BurnRequest, CancelBurnRequestArgs, CancelMintRequestArgs, CollectFeesArgs, ExecuteBurnRequestArgs, ExecuteMintRequestArgs, GetFirstPresignArgs, GetPresignCapsArgs, GetRequestArgs, InboundSetRateLimitArgs, InitAppArgs, IsDigestConsumedArgs, MintPresignArgs, MintRequest, NewBurnRequestArgs, NewMintRequestArgs, PauseArgs, PresignData, RemoveChainArgs, RemoveValidatorArgs, SetExpectedPcrsArgs, SetFeeArgs, SetMaxSupplyArgs, SetMintDigestArgs, SetMinVotesArgs, UnpauseArgs, VoteBurnProof, VoteBurnProofRaw, VoteBurnRequestArgs, VoteMintProof, VoteMintProofRaw, VoteMintRequestArgs, XBridgeInboundConstructorArgs } from './xbridge.types';
6
+ type MintRequestFieldsRaw = z.infer<typeof MintRequestFieldsRawSchema>;
7
+ type BurnRequestFieldsRaw = z.infer<typeof BurnRequestFieldsRawSchema>;
8
+ export declare class XBridgeInbound {
9
+ #private;
10
+ static parseVoteMintProof(raw: VoteMintProofRaw): VoteMintProof;
11
+ static parseVoteBurnProof(raw: VoteBurnProofRaw): VoteBurnProof;
12
+ constructor({ suiClient, packageId, xbridgeConfigSharedObjectData, xbridgeInboundSharedObjectData, xcoreSharedObjectData, registrySharedObjectData, dwalletCoordinatorSharedObjectData, }: XBridgeInboundConstructorArgs);
13
+ initApp({ tx }?: InitAppArgs): Transaction;
14
+ newMintRequest({ tx, sourceChain, sourceToken, sourceDecimals, sourceAddress, sourceAmount, fee, coinType, }: NewMintRequestArgs): {
15
+ tx: Transaction;
16
+ result: TransactionObjectArgument;
17
+ mintCap: TransactionObjectArgument;
18
+ };
19
+ setMintDigest({ tx, requestId, mintCapId, digest, }: SetMintDigestArgs): Transaction;
20
+ voteMintRequest({ tx, requestId, enclaveId, validatorType, signature, timestampMs, }: VoteMintRequestArgs): Transaction;
21
+ executeMintRequest({ tx, requestId, mintCapId, coinType, }: ExecuteMintRequestArgs): {
22
+ tx: Transaction;
23
+ result: TransactionObjectArgument;
24
+ };
25
+ cancelMintRequest({ tx, requestId, mintCapId, presignCapId, enclaveId, validatorType, signature, timestampMs, messageCentralizedSignature, message, nonce, nonceAccount, nonceAuthority, destinationAta, coinType, }: CancelMintRequestArgs): {
26
+ tx: Transaction;
27
+ result: TransactionObjectArgument;
28
+ };
29
+ newBurnRequest({ tx, sourceChain, sourceToken, sourceDecimals, destinationAddress, sourceAmount, dwalletAddress, message, nonce, nonceAccount, nonceAuthority, destinationWallet, destinationAta, burnCoin, fee, coinType, }: NewBurnRequestArgs): {
30
+ tx: Transaction;
31
+ result: TransactionObjectArgument;
32
+ burnCap: TransactionObjectArgument;
33
+ refund: TransactionObjectArgument;
34
+ };
35
+ voteBurnRequest({ tx, requestId, enclaveId, validatorType, signature, timestampMs, coinType, }: VoteBurnRequestArgs): Transaction;
36
+ executeBurnRequest({ tx, requestId, burnCapId, presignCapId, messageCentralizedSignature, coinType, }: ExecuteBurnRequestArgs): {
37
+ tx: Transaction;
38
+ result: TransactionObjectArgument;
39
+ };
40
+ cancelBurnRequest({ tx, requestId, burnCapId, coinType, }: CancelBurnRequestArgs): {
41
+ tx: Transaction;
42
+ result: TransactionObjectArgument;
43
+ };
44
+ mintPresign({ tx, chainId, fee }: MintPresignArgs): {
45
+ tx: Transaction;
46
+ result: TransactionObjectArgument;
47
+ };
48
+ addToken({ tx, adminCapId, sourceChain, sourceToken, sourceDecimals, mintDecimals, sourceAta, symbol, name, description, iconUrl, coinType, }: AddTokenArgs): Transaction;
49
+ addWallet({ tx, adminCapId, chainId, dwalletNetworkEncryptionKeyId, centralizedPublicKeyShareAndProof, userPublicOutput, publicUserSecretKeyShare, sessionIdentifier, curve, hashScheme, signatureAlgorithm, }: AddWalletArgs): Transaction;
50
+ addChain({ tx, adminCapId, chainId }: AddChainArgs): Transaction;
51
+ removeChain({ tx, adminCapId, chainId }: RemoveChainArgs): Transaction;
52
+ addValidator({ tx, adminCapId, validatorType, }: AddValidatorArgs): Transaction;
53
+ removeValidator({ tx, adminCapId, validatorType, }: RemoveValidatorArgs): Transaction;
54
+ setMintFee({ tx, adminCapId, fee }: SetFeeArgs): Transaction;
55
+ setBurnFee({ tx, adminCapId, fee }: SetFeeArgs): Transaction;
56
+ setPresignFee({ tx, adminCapId, fee }: SetFeeArgs): Transaction;
57
+ setExpectedPcrs({ tx, adminCapId, pcr0, pcr2, }: SetExpectedPcrsArgs): Transaction;
58
+ setMinVotes({ tx, adminCapId, minVotes }: SetMinVotesArgs): Transaction;
59
+ setMaxSupply({ tx, adminCapId, sourceChain, sourceToken, maxSupply, coinType, }: SetMaxSupplyArgs): Transaction;
60
+ setRateLimit({ tx, adminCapId, sourceChain, sourceToken, windowMs, amount, coinType, }: InboundSetRateLimitArgs): Transaction;
61
+ collectFees({ tx, adminCapId }: CollectFeesArgs): {
62
+ tx: Transaction;
63
+ result: TransactionObjectArgument;
64
+ };
65
+ pause({ tx, adminCapId }: PauseArgs): Transaction;
66
+ unpause({ tx, adminCapId }: UnpauseArgs): Transaction;
67
+ getMintRequest({ requestId }: GetRequestArgs): Promise<MintRequest>;
68
+ static parseMintRequestFields(fields: MintRequestFieldsRaw): MintRequest;
69
+ getBurnRequest({ requestId }: GetRequestArgs): Promise<BurnRequest>;
70
+ static parseBurnRequestFields(fields: BurnRequestFieldsRaw): BurnRequest;
71
+ getFirstPresign({ owner, walletKey, appTypeName, }: GetFirstPresignArgs): Promise<PresignData>;
72
+ getPresignCaps({ owner, walletKey, appTypeName, }: GetPresignCapsArgs): Promise<PresignData[]>;
73
+ isDigestConsumed({ chain, digest }: IsDigestConsumedArgs): Promise<boolean>;
74
+ getEventTypes(): {
75
+ mintRequestCreated: string;
76
+ mintDigestSet: string;
77
+ mintCompleted: string;
78
+ mintRequestCancelled: string;
79
+ burnRequestCreated: string;
80
+ burnCompleted: string;
81
+ burnRequestCancelled: string;
82
+ tokenAdded: string;
83
+ walletAdded: string;
84
+ chainAdded: string;
85
+ chainRemoved: string;
86
+ paused: string;
87
+ unpaused: string;
88
+ };
89
+ immutableXBridgeConfigRef(tx: Transaction): {
90
+ $kind: "Input";
91
+ Input: number;
92
+ type?: "object";
93
+ };
94
+ mutableXBridgeConfigRef(tx: Transaction): {
95
+ $kind: "Input";
96
+ Input: number;
97
+ type?: "object";
98
+ };
99
+ immutableXBridgeInboundRef(tx: Transaction): {
100
+ $kind: "Input";
101
+ Input: number;
102
+ type?: "object";
103
+ };
104
+ mutableXBridgeInboundRef(tx: Transaction): {
105
+ $kind: "Input";
106
+ Input: number;
107
+ type?: "object";
108
+ };
109
+ immutableXCoreRef(tx: Transaction): {
110
+ $kind: "Input";
111
+ Input: number;
112
+ type?: "object";
113
+ };
114
+ mutableXCoreRef(tx: Transaction): {
115
+ $kind: "Input";
116
+ Input: number;
117
+ type?: "object";
118
+ };
119
+ immutableRegistryRef(tx: Transaction): {
120
+ $kind: "Input";
121
+ Input: number;
122
+ type?: "object";
123
+ };
124
+ mutableDwalletCoordinatorRef(tx: Transaction): {
125
+ $kind: "Input";
126
+ Input: number;
127
+ type?: "object";
128
+ };
129
+ get suiClient(): SuiClient;
130
+ }
131
+ export {};
132
+ //# sourceMappingURL=xbridge-inbound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xbridge-inbound.d.ts","sourceRoot":"","sources":["../src/xbridge-inbound.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,KAAK,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAGvF,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAe7B,OAAO,EACH,0BAA0B,EAC1B,0BAA0B,EAG7B,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EACR,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EAEf,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,6BAA6B,EAChC,MAAM,iBAAiB,CAAC;AAEzB,KAAK,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACvE,KAAK,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAIvE,qBAAa,cAAc;;IACvB,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,GAAG,aAAa;IAe/D,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,GAAG,aAAa;gBAuBnD,EACR,SAAS,EACT,SAAS,EACT,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,wBAAwB,EACxB,kCAAkC,GACrC,EAAE,6BAA6B;IAUhC,OAAO,CAAC,EAAE,EAAsB,EAAE,GAAE,WAAgB,GAAG,WAAW;IASlE,cAAc,CAAC,EACX,EAAsB,EACtB,WAAW,EACX,WAAW,EACX,cAAc,EACd,aAAa,EACb,YAAY,EACZ,GAAG,EACH,QAAQ,GACX,EAAE,kBAAkB,GAAG;QACpB,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;QAClC,OAAO,EAAE,yBAAyB,CAAC;KACtC;IAoBD,aAAa,CAAC,EACV,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,MAAM,GACT,EAAE,iBAAiB,GAAG,WAAW;IAelC,eAAe,CAAC,EACZ,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,aAAa,EACb,SAAS,EACT,WAAW,GACd,EAAE,mBAAmB,GAAG,WAAW;IAgBpC,kBAAkB,CAAC,EACf,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,QAAQ,GACX,EAAE,sBAAsB,GAAG;QACxB,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;KACrC;IAgBD,iBAAiB,CAAC,EACd,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,YAAY,EACZ,SAAS,EACT,aAAa,EACb,SAAS,EACT,WAAW,EACX,2BAA2B,EAC3B,OAAO,EACP,KAAK,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,QAAQ,GACX,EAAE,qBAAqB,GAAG;QACvB,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;KACrC;IA2BD,cAAc,CAAC,EACX,EAAsB,EACtB,WAAW,EACX,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,OAAO,EACP,KAAK,EACL,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,GAAG,EACH,QAAQ,GACX,EAAE,kBAAkB,GAAG;QACpB,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;QAClC,OAAO,EAAE,yBAAyB,CAAC;QACnC,MAAM,EAAE,yBAAyB,CAAC;KACrC;IAkCD,eAAe,CAAC,EACZ,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,aAAa,EACb,SAAS,EACT,WAAW,EACX,QAAQ,GACX,EAAE,mBAAmB,GAAG,WAAW;IAgBpC,kBAAkB,CAAC,EACf,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,YAAY,EACZ,2BAA2B,EAC3B,QAAQ,GACX,EAAE,sBAAsB,GAAG;QACxB,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;KACrC;IAoBD,iBAAiB,CAAC,EACd,EAAsB,EACtB,SAAS,EACT,SAAS,EACT,QAAQ,GACX,EAAE,qBAAqB,GAAG;QACvB,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;KACrC;IAeD,WAAW,CAAC,EAAE,EAAsB,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,eAAe,GAAG;QACpE,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;KACrC;IAeD,QAAQ,CAAC,EACL,EAAsB,EACtB,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,YAAY,EACZ,SAAS,EACT,MAAM,EACN,IAAI,EACJ,WAAW,EACX,OAAO,EACP,QAAQ,GACX,EAAE,YAAY,GAAG,WAAW;IA6B7B,SAAS,CAAC,EACN,EAAsB,EACtB,UAAU,EACV,OAAO,EACP,6BAA6B,EAC7B,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,EACL,UAAU,EACV,kBAAkB,GACrB,EAAE,aAAa,GAAG,WAAW;IAuB9B,QAAQ,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,YAAY,GAAG,WAAW;IAapF,WAAW,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,eAAe,GAAG,WAAW;IAa1F,YAAY,CAAC,EACT,EAAsB,EACtB,UAAU,EACV,aAAa,GAChB,EAAE,gBAAgB,GAAG,WAAW;IAUjC,eAAe,CAAC,EACZ,EAAsB,EACtB,UAAU,EACV,aAAa,GAChB,EAAE,mBAAmB,GAAG,WAAW;IAUpC,UAAU,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,UAAU,GAAG,WAAW;IAShF,UAAU,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,UAAU,GAAG,WAAW;IAShF,aAAa,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,UAAU,GAAG,WAAW;IASnF,eAAe,CAAC,EACZ,EAAsB,EACtB,UAAU,EACV,IAAI,EACJ,IAAI,GACP,EAAE,mBAAmB,GAAG,WAAW;IAcpC,WAAW,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,eAAe,GAAG,WAAW;IAa3F,YAAY,CAAC,EACT,EAAsB,EACtB,UAAU,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,GACX,EAAE,gBAAgB,GAAG,WAAW;IAgBjC,YAAY,CAAC,EACT,EAAsB,EACtB,UAAU,EACV,WAAW,EACX,WAAW,EACX,QAAQ,EACR,MAAM,EACN,QAAQ,GACX,EAAE,uBAAuB,GAAG,WAAW;IAiBxC,WAAW,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,EAAE,eAAe,GAAG;QAClE,EAAE,EAAE,WAAW,CAAC;QAChB,MAAM,EAAE,yBAAyB,CAAC;KACrC;IASD,KAAK,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,EAAE,SAAS,GAAG,WAAW;IASrE,OAAO,CAAC,EAAE,EAAsB,EAAE,UAAU,EAAE,EAAE,WAAW,GAAG,WAAW;IASnE,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;IAezE,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,oBAAoB,GAAG,WAAW;IAiBlE,cAAc,CAAC,EAAE,SAAS,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;IAezE,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,oBAAoB,GAAG,WAAW;IAiBlE,eAAe,CAAC,EAClB,KAAK,EACL,SAAS,EACT,WAAW,GACd,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC;IAavC,cAAc,CAAC,EACjB,KAAK,EACL,SAAS,EACT,WAAW,GACd,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAuDxC,gBAAgB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BjF,aAAa;;;;;;;;;;;;;;;IAkBb,yBAAyB,CAAC,EAAE,EAAE,WAAW;;;;;IAQzC,uBAAuB,CAAC,EAAE,EAAE,WAAW;;;;;IAQvC,0BAA0B,CAAC,EAAE,EAAE,WAAW;;;;;IAQ1C,wBAAwB,CAAC,EAAE,EAAE,WAAW;;;;;IAQxC,iBAAiB,CAAC,EAAE,EAAE,WAAW;;;;;IAQjC,eAAe,CAAC,EAAE,EAAE,WAAW;;;;;IAQ/B,oBAAoB,CAAC,EAAE,EAAE,WAAW;;;;;IAQpC,4BAA4B,CAAC,EAAE,EAAE,WAAW;;;;;IAQ5C,IAAI,SAAS,IAAI,SAAS,CAEzB;CACJ"}
@@ -0,0 +1,131 @@
1
+ import type { SuiClient } from '@mysten/sui/client';
2
+ import { Transaction, type TransactionObjectArgument } from '@mysten/sui/transactions';
3
+ import type { z } from 'zod';
4
+ import { LockRequestFieldsRawSchema, UnlockRequestFieldsRawSchema } from './schemas';
5
+ import type { AddChainArgs, AddValidatorArgs, AddWalletArgs, CancelLockRequestArgs, CancelUnlockRequestArgs, CollectFeesArgs, ExecuteLockRequestArgs, ExecuteUnlockRequestArgs, GetFirstPresignArgs, GetPresignCapsArgs, GetRequestArgs, IsDigestConsumedArgs, LockRequest, MintPresignArgs, NewLockRequestArgs, NewUnlockRequestArgs, PauseArgs, PresignData, RegisterTokenArgs, RemoveChainArgs, RemoveValidatorArgs, SetExpectedPcrsArgs, SetFeeArgs, SetMaxLockArgs, SetMinVotesArgs, SetRateLimitArgs, SetUnlockDigestArgs, UnlockRequest, UnpauseArgs, VoteLockProof, VoteLockProofRaw, VoteLockRequestArgs, VoteUnlockProof, VoteUnlockProofRaw, VoteUnlockRequestArgs, XBridgeOutboundConstructorArgs } from './xbridge.types';
6
+ type LockRequestFieldsRaw = z.infer<typeof LockRequestFieldsRawSchema>;
7
+ type UnlockRequestFieldsRaw = z.infer<typeof UnlockRequestFieldsRawSchema>;
8
+ export declare class XBridgeOutbound {
9
+ #private;
10
+ static parseVoteLockProof(raw: VoteLockProofRaw): VoteLockProof;
11
+ static parseVoteUnlockProof(raw: VoteUnlockProofRaw): VoteUnlockProof;
12
+ constructor({ suiClient, packageId, xbridgeConfigSharedObjectData, xbridgeOutboundSharedObjectData, xcoreSharedObjectData, registrySharedObjectData, dwalletCoordinatorSharedObjectData, }: XBridgeOutboundConstructorArgs);
13
+ newLockRequest({ tx, targetChain, recipientAddress, dwalletAddress, message, nonce, nonceAccount, nonceAuthority, destinationWallet, destinationAta, lockCoin, fee, coinType, }: NewLockRequestArgs): {
14
+ tx: Transaction;
15
+ result: TransactionObjectArgument;
16
+ lockCap: TransactionObjectArgument;
17
+ refund: TransactionObjectArgument;
18
+ };
19
+ voteLockRequest({ tx, requestId, enclaveId, validatorType, signature, timestampMs, coinType, }: VoteLockRequestArgs): Transaction;
20
+ executeLockRequest({ tx, requestId, lockCapId, presignCapId, messageCentralizedSignature, coinType, }: ExecuteLockRequestArgs): {
21
+ tx: Transaction;
22
+ result: TransactionObjectArgument;
23
+ };
24
+ cancelLockRequest({ tx, requestId, lockCapId, coinType, }: CancelLockRequestArgs): {
25
+ tx: Transaction;
26
+ result: TransactionObjectArgument;
27
+ };
28
+ newUnlockRequest({ tx, sourceChain, senderAddress, foreignAmount, fee, coinType, }: NewUnlockRequestArgs): {
29
+ tx: Transaction;
30
+ result: TransactionObjectArgument;
31
+ unlockCap: TransactionObjectArgument;
32
+ };
33
+ setUnlockDigest({ tx, requestId, unlockCapId, digest, coinType, }: SetUnlockDigestArgs): Transaction;
34
+ voteUnlockRequest({ tx, requestId, enclaveId, validatorType, signature, timestampMs, coinType, }: VoteUnlockRequestArgs): Transaction;
35
+ executeUnlockRequest({ tx, requestId, unlockCapId, coinType, }: ExecuteUnlockRequestArgs): {
36
+ tx: Transaction;
37
+ result: TransactionObjectArgument;
38
+ };
39
+ cancelUnlockRequest({ tx, requestId, unlockCapId, presignCapId, enclaveId, validatorType, signature, timestampMs, messageCentralizedSignature, message, nonce, nonceAccount, nonceAuthority, destinationWallet, destinationAta, coinType, }: CancelUnlockRequestArgs): {
40
+ tx: Transaction;
41
+ result: TransactionObjectArgument;
42
+ };
43
+ mintPresign({ tx, chainId, fee }: MintPresignArgs): {
44
+ tx: Transaction;
45
+ result: TransactionObjectArgument;
46
+ };
47
+ registerToken({ tx, adminCapId, targetChain, foreignToken, foreignDecimals, decimals, sourceAta, coinType, }: RegisterTokenArgs): Transaction;
48
+ setMaxLock({ tx, adminCapId, maxLock, coinType, }: SetMaxLockArgs): Transaction;
49
+ addWallet({ tx, adminCapId, chainId, dwalletNetworkEncryptionKeyId, centralizedPublicKeyShareAndProof, userPublicOutput, publicUserSecretKeyShare, sessionIdentifier, curve, hashScheme, signatureAlgorithm, }: AddWalletArgs): Transaction;
50
+ addChain({ tx, adminCapId, chainId }: AddChainArgs): Transaction;
51
+ removeChain({ tx, adminCapId, chainId }: RemoveChainArgs): Transaction;
52
+ addValidator({ tx, adminCapId, validatorType, }: AddValidatorArgs): Transaction;
53
+ removeValidator({ tx, adminCapId, validatorType, }: RemoveValidatorArgs): Transaction;
54
+ setLockFee({ tx, adminCapId, fee }: SetFeeArgs): Transaction;
55
+ setUnlockFee({ tx, adminCapId, fee }: SetFeeArgs): Transaction;
56
+ setPresignFee({ tx, adminCapId, fee }: SetFeeArgs): Transaction;
57
+ setExpectedPcrs({ tx, adminCapId, pcr0, pcr2, }: SetExpectedPcrsArgs): Transaction;
58
+ setMinVotes({ tx, adminCapId, minVotes }: SetMinVotesArgs): Transaction;
59
+ setRateLimit({ tx, adminCapId, windowMs, amount, coinType, }: SetRateLimitArgs): Transaction;
60
+ collectFees({ tx, adminCapId }: CollectFeesArgs): {
61
+ tx: Transaction;
62
+ result: TransactionObjectArgument;
63
+ };
64
+ pause({ tx, adminCapId }: PauseArgs): Transaction;
65
+ unpause({ tx, adminCapId }: UnpauseArgs): Transaction;
66
+ getLockRequest({ requestId }: GetRequestArgs): Promise<LockRequest>;
67
+ static parseLockRequestFields(fields: LockRequestFieldsRaw): LockRequest;
68
+ getUnlockRequest({ requestId }: GetRequestArgs): Promise<UnlockRequest>;
69
+ static parseUnlockRequestFields(fields: UnlockRequestFieldsRaw): UnlockRequest;
70
+ getFirstPresign({ owner, walletKey, appTypeName, }: GetFirstPresignArgs): Promise<PresignData>;
71
+ getPresignCaps({ owner, walletKey, appTypeName, }: GetPresignCapsArgs): Promise<PresignData[]>;
72
+ isDigestConsumed({ chain, digest }: IsDigestConsumedArgs): Promise<boolean>;
73
+ getEventTypes(): {
74
+ lockRequestCreated: string;
75
+ lockCompleted: string;
76
+ lockRequestCancelled: string;
77
+ unlockRequestCreated: string;
78
+ unlockDigestSet: string;
79
+ unlockCompleted: string;
80
+ unlockRequestCancelled: string;
81
+ outTokenRegistered: string;
82
+ walletAdded: string;
83
+ chainAdded: string;
84
+ chainRemoved: string;
85
+ paused: string;
86
+ unpaused: string;
87
+ };
88
+ immutableXBridgeConfigRef(tx: Transaction): {
89
+ $kind: "Input";
90
+ Input: number;
91
+ type?: "object";
92
+ };
93
+ mutableXBridgeConfigRef(tx: Transaction): {
94
+ $kind: "Input";
95
+ Input: number;
96
+ type?: "object";
97
+ };
98
+ immutableXBridgeOutboundRef(tx: Transaction): {
99
+ $kind: "Input";
100
+ Input: number;
101
+ type?: "object";
102
+ };
103
+ mutableXBridgeOutboundRef(tx: Transaction): {
104
+ $kind: "Input";
105
+ Input: number;
106
+ type?: "object";
107
+ };
108
+ immutableXCoreRef(tx: Transaction): {
109
+ $kind: "Input";
110
+ Input: number;
111
+ type?: "object";
112
+ };
113
+ mutableXCoreRef(tx: Transaction): {
114
+ $kind: "Input";
115
+ Input: number;
116
+ type?: "object";
117
+ };
118
+ immutableRegistryRef(tx: Transaction): {
119
+ $kind: "Input";
120
+ Input: number;
121
+ type?: "object";
122
+ };
123
+ mutableDwalletCoordinatorRef(tx: Transaction): {
124
+ $kind: "Input";
125
+ Input: number;
126
+ type?: "object";
127
+ };
128
+ get suiClient(): SuiClient;
129
+ }
130
+ export {};
131
+ //# sourceMappingURL=xbridge-outbound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xbridge-outbound.d.ts","sourceRoot":"","sources":["../src/xbridge-outbound.ts"],"names":[],"mappings":"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"}