@tradeport/sui-trading-sdk 0.5.0 → 0.5.1

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,193 @@
1
+ import { Transaction } from '@mysten/sui/transactions';
2
+ import { GraphQLClient } from 'graphql-request';
3
+ import { KioskTransaction } from '@mysten/kiosk';
4
+
5
+ type AcceptCollectionBid = {
6
+ bidId: string;
7
+ nftId: string;
8
+ walletAddress: string;
9
+ };
10
+
11
+ type AcceptNftBids = {
12
+ bidIds: string[];
13
+ walletAddress: string;
14
+ tx?: Transaction;
15
+ kioskTx?: KioskTransaction;
16
+ beforeResolveKioskTransferRequest?: (coin: any, transferRequest: any) => void | Promise<void>;
17
+ };
18
+
19
+ type ApplyFtStrategy = {
20
+ collectionId: string;
21
+ strategyFtType?: string;
22
+ tx?: Transaction;
23
+ collectionChainState?: Record<string, unknown>;
24
+ };
25
+
26
+ type ApplyNftStrategy = {
27
+ collectionId: string;
28
+ strategyFtType?: string;
29
+ tx?: Transaction;
30
+ };
31
+
32
+ type BuyListings = {
33
+ listingIds: string[];
34
+ walletAddress: string;
35
+ tx?: Transaction;
36
+ kioskTx?: KioskTransaction;
37
+ coinToSplit?: any;
38
+ beforeResolveKioskTransferRequest?: (transferRequest: any) => void | Promise<void>;
39
+ };
40
+
41
+ interface CancelMultiBid {
42
+ walletAddress: string;
43
+ multiBidId: string;
44
+ }
45
+
46
+ type CancelNftTransfers = {
47
+ nftIds: string[];
48
+ walletAddress: string;
49
+ };
50
+
51
+ type ClaimNfts = {
52
+ nftIds: string[];
53
+ walletAddress: string;
54
+ tx?: Transaction;
55
+ };
56
+
57
+ interface CreateMultiBid {
58
+ walletAddress: string;
59
+ name?: string;
60
+ amount?: bigint;
61
+ tx?: Transaction;
62
+ }
63
+
64
+ type SponsorNftListingOptions = {
65
+ shouldSponsor?: boolean;
66
+ numOfPeriods?: number;
67
+ usdcFeeAmountPerPeriod?: number;
68
+ coinToSplit?: any;
69
+ };
70
+ type SponsorNftListing = {
71
+ tx?: Transaction;
72
+ nftTokenId: string;
73
+ options: SponsorNftListingOptions;
74
+ };
75
+
76
+ type ListNfts = {
77
+ nfts: Array<{
78
+ id: string;
79
+ listPriceInMist: number;
80
+ sponsorOptions?: SponsorNftListingOptions;
81
+ }>;
82
+ walletAddress: string;
83
+ tx?: Transaction;
84
+ };
85
+
86
+ type MigrateNftsFromUnsharedToSharedKiosks = {
87
+ walletAddress: string;
88
+ max?: number;
89
+ };
90
+
91
+ type PlaceCollectionBid = {
92
+ collectionId: string;
93
+ bidAmountInMist: number;
94
+ numOfBids: number;
95
+ walletAddress: string;
96
+ multiBidId?: string;
97
+ multiBidChainId?: any;
98
+ expireAt?: Date;
99
+ tx?: Transaction;
100
+ };
101
+
102
+ type PlaceNftBids = {
103
+ bids: Array<{
104
+ nftId: string;
105
+ bidAmountInMist: number;
106
+ expireAt?: Date;
107
+ }>;
108
+ walletAddress: string;
109
+ multiBidId?: string;
110
+ multiBidChainId?: any;
111
+ tx?: Transaction;
112
+ coinToSplit?: any;
113
+ };
114
+
115
+ type RemoveCollectionBids = {
116
+ bidIds: string[];
117
+ tx?: Transaction | string;
118
+ };
119
+
120
+ type RemoveNftBids = {
121
+ bidIds: string[];
122
+ tx?: Transaction | string;
123
+ };
124
+
125
+ type TransferNfts = {
126
+ nftIds: string[];
127
+ recipientAddress: string;
128
+ walletAddress: string;
129
+ };
130
+
131
+ type UnlistListings = {
132
+ listingIds: string[];
133
+ walletAddress: string;
134
+ };
135
+
136
+ interface UpdateMultiBid {
137
+ walletAddress: string;
138
+ multiBidId?: string;
139
+ name?: string;
140
+ amount?: bigint;
141
+ amountToWithdraw?: bigint;
142
+ tx?: Transaction;
143
+ multiBidChainId?: any;
144
+ coinToSplit?: any;
145
+ }
146
+
147
+ type WithdrawProfitsFromKiosks = {
148
+ walletAddress: string;
149
+ };
150
+
151
+ type ApiConfig = {
152
+ apiUser: string;
153
+ apiKey: string;
154
+ apiUrl?: string;
155
+ tradeportRouterUrl?: string;
156
+ apiVercelId?: string;
157
+ suiNodeUrl?: string;
158
+ graphQLClient?: GraphQLClient;
159
+ };
160
+ declare class SuiTradingClient {
161
+ private readonly apiUser;
162
+ private readonly apiKey;
163
+ private readonly tradeportRouterUrl?;
164
+ private readonly suiClient;
165
+ private readonly kioskClient;
166
+ private readonly allowedApiUsersForUnsharedKiosksMigration;
167
+ constructor({ apiUser, apiKey, apiVercelId, apiUrl, tradeportRouterUrl, suiNodeUrl, graphQLClient, }: ApiConfig);
168
+ buyListings(args: BuyListings): Promise<Transaction>;
169
+ listNfts({ nfts, walletAddress, tx }: ListNfts): Promise<Transaction>;
170
+ unlistListings({ listingIds, walletAddress }: UnlistListings): Promise<Transaction>;
171
+ placeNftBids(data: PlaceNftBids): Promise<Transaction>;
172
+ removeNftBids({ bidIds, tx }: RemoveNftBids): Promise<Transaction>;
173
+ acceptNftBids({ bidIds, walletAddress }: AcceptNftBids): Promise<Transaction>;
174
+ placeCollectionBid({ collectionId, bidAmountInMist, numOfBids, walletAddress, multiBidId, multiBidChainId, expireAt, tx, }: PlaceCollectionBid): Promise<Transaction>;
175
+ acceptCollectionBid({ bidId, nftId, walletAddress }: AcceptCollectionBid): Promise<Transaction>;
176
+ removeCollectionBids({ bidIds, tx }: RemoveCollectionBids): Promise<Transaction>;
177
+ transferNfts({ nftIds, recipientAddress, walletAddress }: TransferNfts): Promise<Transaction>;
178
+ cancelNftTransfers({ nftIds, walletAddress }: CancelNftTransfers): Promise<Transaction>;
179
+ claimNfts({ nftIds, walletAddress }: ClaimNfts): Promise<Transaction>;
180
+ withdrawProfitsFromKiosks(args: WithdrawProfitsFromKiosks): Promise<Transaction>;
181
+ migrateNftsFromUnsharedToSharedKiosks(args: MigrateNftsFromUnsharedToSharedKiosks): Promise<Transaction>;
182
+ createMultiBid(args: CreateMultiBid): Promise<{
183
+ multiBidChainId: any;
184
+ tx: Transaction;
185
+ }>;
186
+ cancelMultiBid(args: CancelMultiBid): Promise<Transaction>;
187
+ updateMultiBid(args: UpdateMultiBid): Promise<Transaction>;
188
+ sponsorNftListing(args: SponsorNftListing): Promise<Transaction>;
189
+ applyFtStrategy(args: ApplyFtStrategy): Promise<Transaction>;
190
+ applyTradeportNftStrategy(args: ApplyNftStrategy): Promise<Transaction>;
191
+ }
192
+
193
+ export { SuiTradingClient };
@@ -0,0 +1,194 @@
1
+ import { Transaction } from '@mysten/sui/transactions';
2
+ import { GraphQLClient } from 'graphql-request';
3
+ import { KioskTransaction } from '@mysten/kiosk';
4
+
5
+ type AcceptCollectionBid = {
6
+ bidId: string;
7
+ nftId: string;
8
+ walletAddress: string;
9
+ };
10
+
11
+ type AcceptNftBids = {
12
+ bidIds: string[];
13
+ walletAddress: string;
14
+ tx?: Transaction;
15
+ kioskTx?: KioskTransaction;
16
+ beforeResolveKioskTransferRequest?: (coin: any, transferRequest: any) => void | Promise<void>;
17
+ };
18
+
19
+ type ApplyFtStrategy = {
20
+ collectionId: string;
21
+ strategyFtType?: string;
22
+ tx?: Transaction;
23
+ collectionChainState?: Record<string, unknown>;
24
+ };
25
+
26
+ type ApplyNftStrategy = {
27
+ collectionId: string;
28
+ strategyFtType?: string;
29
+ tx?: Transaction;
30
+ };
31
+
32
+ type BuyListings = {
33
+ listingIds: string[];
34
+ walletAddress: string;
35
+ tx?: Transaction;
36
+ kioskTx?: KioskTransaction;
37
+ coinToSplit?: any;
38
+ beforeResolveKioskTransferRequest?: (transferRequest: any) => void | Promise<void>;
39
+ };
40
+
41
+ interface CancelMultiBid {
42
+ walletAddress: string;
43
+ multiBidId: string;
44
+ }
45
+
46
+ type CancelNftTransfers = {
47
+ nftIds: string[];
48
+ walletAddress: string;
49
+ };
50
+
51
+ type ClaimNfts = {
52
+ nftIds: string[];
53
+ walletAddress: string;
54
+ tx?: Transaction;
55
+ };
56
+
57
+ interface CreateMultiBid {
58
+ walletAddress: string;
59
+ name?: string;
60
+ amount?: bigint;
61
+ tx?: Transaction;
62
+ }
63
+
64
+ type SponsorNftListingOptions = {
65
+ shouldSponsor?: boolean;
66
+ numOfPeriods?: number;
67
+ usdcFeeAmountPerPeriod?: number;
68
+ coinToSplit?: any;
69
+ };
70
+ type SponsorNftListing = {
71
+ tx?: Transaction;
72
+ nftTokenId: string;
73
+ options: SponsorNftListingOptions;
74
+ };
75
+
76
+ type ListNfts = {
77
+ nfts: Array<{
78
+ id: string;
79
+ listPriceInMist: number;
80
+ sponsorOptions?: SponsorNftListingOptions;
81
+ }>;
82
+ walletAddress: string;
83
+ tx?: Transaction;
84
+ };
85
+
86
+ type MigrateNftsFromUnsharedToSharedKiosks = {
87
+ walletAddress: string;
88
+ max?: number;
89
+ };
90
+
91
+ type PlaceCollectionBid = {
92
+ collectionId: string;
93
+ bidAmountInMist: number;
94
+ numOfBids: number;
95
+ walletAddress: string;
96
+ multiBidId?: string;
97
+ multiBidChainId?: any;
98
+ expireAt?: Date;
99
+ tx?: Transaction;
100
+ };
101
+
102
+ type PlaceNftBids = {
103
+ bids: Array<{
104
+ nftId: string;
105
+ bidAmountInMist: number;
106
+ expireAt?: Date;
107
+ }>;
108
+ walletAddress: string;
109
+ multiBidId?: string;
110
+ multiBidChainId?: any;
111
+ tx?: Transaction;
112
+ coinToSplit?: any;
113
+ };
114
+
115
+ type RemoveCollectionBids = {
116
+ bidIds: string[];
117
+ tx?: Transaction | string;
118
+ };
119
+
120
+ type RemoveNftBids = {
121
+ bidIds: string[];
122
+ tx?: Transaction | string;
123
+ };
124
+
125
+ type TransferNfts = {
126
+ nftIds: string[];
127
+ recipientAddress: string;
128
+ walletAddress: string;
129
+ };
130
+
131
+ type UnlistListings = {
132
+ listingIds: string[];
133
+ walletAddress: string;
134
+ };
135
+
136
+ interface UpdateMultiBid {
137
+ walletAddress: string;
138
+ multiBidId?: string;
139
+ name?: string;
140
+ amount?: bigint;
141
+ amountToWithdraw?: bigint;
142
+ tx?: Transaction;
143
+ multiBidChainId?: any;
144
+ coinToSplit?: any;
145
+ }
146
+
147
+ type WithdrawProfitsFromKiosks = {
148
+ walletAddress: string;
149
+ };
150
+
151
+ type ApiConfig = {
152
+ apiUser: string;
153
+ apiKey: string;
154
+ apiUrl?: string;
155
+ tradeportRouterUrl?: string;
156
+ apiVercelId?: string;
157
+ suiNodeUrl?: string;
158
+ suiGraphqlUrl?: string;
159
+ graphQLClient?: GraphQLClient;
160
+ };
161
+ declare class SuiTradingClient {
162
+ private readonly apiUser;
163
+ private readonly apiKey;
164
+ private readonly tradeportRouterUrl?;
165
+ private readonly suiClient;
166
+ private readonly kioskClient;
167
+ private readonly allowedApiUsersForUnsharedKiosksMigration;
168
+ constructor({ apiUser, apiKey, apiVercelId, apiUrl, tradeportRouterUrl, suiNodeUrl, suiGraphqlUrl, graphQLClient, }: ApiConfig);
169
+ buyListings(args: BuyListings): Promise<Transaction>;
170
+ listNfts({ nfts, walletAddress, tx }: ListNfts): Promise<Transaction>;
171
+ unlistListings({ listingIds, walletAddress }: UnlistListings): Promise<Transaction>;
172
+ placeNftBids(data: PlaceNftBids): Promise<Transaction>;
173
+ removeNftBids({ bidIds, tx }: RemoveNftBids): Promise<Transaction>;
174
+ acceptNftBids({ bidIds, walletAddress }: AcceptNftBids): Promise<Transaction>;
175
+ placeCollectionBid({ collectionId, bidAmountInMist, numOfBids, walletAddress, multiBidId, multiBidChainId, expireAt, tx, }: PlaceCollectionBid): Promise<Transaction>;
176
+ acceptCollectionBid({ bidId, nftId, walletAddress }: AcceptCollectionBid): Promise<Transaction>;
177
+ removeCollectionBids({ bidIds, tx }: RemoveCollectionBids): Promise<Transaction>;
178
+ transferNfts({ nftIds, recipientAddress, walletAddress }: TransferNfts): Promise<Transaction>;
179
+ cancelNftTransfers({ nftIds, walletAddress }: CancelNftTransfers): Promise<Transaction>;
180
+ claimNfts({ nftIds, walletAddress }: ClaimNfts): Promise<Transaction>;
181
+ withdrawProfitsFromKiosks(args: WithdrawProfitsFromKiosks): Promise<Transaction>;
182
+ migrateNftsFromUnsharedToSharedKiosks(args: MigrateNftsFromUnsharedToSharedKiosks): Promise<Transaction>;
183
+ createMultiBid(args: CreateMultiBid): Promise<{
184
+ multiBidChainId: any;
185
+ tx: Transaction;
186
+ }>;
187
+ cancelMultiBid(args: CancelMultiBid): Promise<Transaction>;
188
+ updateMultiBid(args: UpdateMultiBid): Promise<Transaction>;
189
+ sponsorNftListing(args: SponsorNftListing): Promise<Transaction>;
190
+ applyFtStrategy(args: ApplyFtStrategy): Promise<Transaction>;
191
+ applyTradeportNftStrategy(args: ApplyNftStrategy): Promise<Transaction>;
192
+ }
193
+
194
+ export { SuiTradingClient };