@xoxno/sdk-js 0.1.354 → 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.
@@ -1,311 +0,0 @@
1
- import type { ISocials } from './collection';
2
- import type { ActivityChain, NftData, Owner } from './nft';
3
- import type { StakingSummaryPools } from './staking';
4
- export interface BulkAccount {
5
- address: string;
6
- nonce: number;
7
- username?: string;
8
- balance: string;
9
- balanceShort: number;
10
- }
11
- export interface IUserProfileSearch {
12
- address: string;
13
- isVerified: boolean;
14
- profile: string;
15
- herotag: string;
16
- addressTrimmed: string;
17
- chain?: ActivityChain;
18
- }
19
- export interface IUserSettings {
20
- dataType: 'userSettings';
21
- emailNotifications: {
22
- enabled: boolean;
23
- emailAddress: string;
24
- isEmailVerificationPending: boolean;
25
- isEmailVerified: boolean;
26
- isWeb2User: boolean;
27
- timestamp?: number;
28
- };
29
- notificationPreferences: {
30
- sales: boolean;
31
- bids: boolean;
32
- offersReceived: boolean;
33
- offersAccepted: boolean;
34
- offersRejected: boolean;
35
- deposits: boolean;
36
- };
37
- address: string;
38
- id: string;
39
- _ts: number;
40
- }
41
- export interface IUserProfile {
42
- dataType: 'userProfile';
43
- hasKYC?: boolean;
44
- address: string;
45
- isBanned: boolean;
46
- isVerified: boolean;
47
- socials: ISocials;
48
- favorites: string[];
49
- joinedDate: number;
50
- id: string;
51
- profile: string;
52
- banner: string;
53
- description: string;
54
- herotag: string;
55
- isCreator: boolean;
56
- creatorInfo: {
57
- contractAddress?: string;
58
- name?: string;
59
- };
60
- isPoolOwner: boolean;
61
- followedCollections: string[];
62
- userDeposit: UserDeposit[];
63
- _ts: number;
64
- shard: number;
65
- followCount: number;
66
- userSettings?: IUserSettings;
67
- chain?: ActivityChain;
68
- }
69
- export interface UserDeposit {
70
- balanceShort: number;
71
- balance: string;
72
- paymentToken: string;
73
- paymentTokenNonce: number;
74
- usdPrice: number;
75
- }
76
- export interface UserInventory {
77
- collection: string;
78
- inventoryCount: number;
79
- listedCount: number;
80
- stakedCount: number;
81
- floorPrice: number;
82
- name: string;
83
- isVerified: boolean;
84
- profile: string;
85
- banner: string;
86
- value: number;
87
- chain?: ActivityChain;
88
- }
89
- export interface UserOffers {
90
- hasMoreResults: boolean;
91
- count: number;
92
- resources: OfferBody[];
93
- }
94
- export interface ArgsUserOffers {
95
- address: string;
96
- type: OfferType;
97
- skip: number;
98
- top: number;
99
- }
100
- export declare enum OfferType {
101
- Received = "received",
102
- Placed = "placed"
103
- }
104
- export interface OfferBody {
105
- dataType: string;
106
- identifier: string;
107
- collection: string;
108
- offerId: number;
109
- paymentToken: string;
110
- paymentTokenNonce: number;
111
- price: string;
112
- priceShort: number;
113
- deadline: number;
114
- timestamp: number;
115
- owner: Owner;
116
- quantity: number;
117
- marketplace: string;
118
- id: string;
119
- _ts: number;
120
- nftInfo: NftData;
121
- isActive: boolean;
122
- usdValue: number;
123
- floorPriceMargin: number;
124
- floorPrice: number;
125
- chain?: ActivityChain;
126
- }
127
- export type Nfts = {
128
- count: number;
129
- resultsCount: number;
130
- results: NftData[];
131
- empty: boolean;
132
- };
133
- export declare enum Type {
134
- NonFungibleESDT = "NonFungibleESDT"
135
- }
136
- export type TickerElement = {
137
- ticker: string;
138
- name: string;
139
- };
140
- export type UserTokenInventory = {
141
- tokens: EsdtToken[];
142
- esdts: TokenWorth;
143
- stables: TokenWorth;
144
- wallet: TokenWorth;
145
- chain?: ActivityChain;
146
- };
147
- export type TokenWorth = {
148
- usdValue: number;
149
- egldValue: number;
150
- weight: number;
151
- };
152
- export type UserNetworkAccount = {
153
- address: string;
154
- nonce: number;
155
- balance: string;
156
- balanceShort: number;
157
- usdValue: number;
158
- username?: string;
159
- shard: number;
160
- guarded: boolean;
161
- activeGuardian: ActiveGuardian;
162
- };
163
- export type ActiveGuardian = {
164
- activationEpoch: number;
165
- address: string;
166
- serviceUID: string;
167
- };
168
- export interface SuiCoinObject {
169
- objectId: string;
170
- balance: string;
171
- digest: string;
172
- version: string;
173
- }
174
- export type EsdtToken = {
175
- nonce: number;
176
- identifier: string;
177
- decimals: number;
178
- balance: string;
179
- ticker: string;
180
- name: string;
181
- shortBalance: number;
182
- usdPrice: number;
183
- usdValue: number;
184
- egldValue: number;
185
- assets: Assets;
186
- isAshSupported: boolean;
187
- weight: number;
188
- objects?: SuiCoinObject[];
189
- };
190
- export type Assets = {
191
- pngUrl: string;
192
- svgUrl: string;
193
- };
194
- export type CreatorProfile = {
195
- name: string;
196
- profile: string;
197
- banner: string;
198
- description?: string;
199
- socials?: ISocials;
200
- joinedDate?: number;
201
- contractAddress: string;
202
- ticketingContractAddress?: string;
203
- address: string;
204
- followCount: number;
205
- creatorTag: string;
206
- _ts: number;
207
- };
208
- export interface RewardStakinSummary {
209
- tokenIdentifier: string;
210
- tokenNonce: number;
211
- amount: string;
212
- amountShort: number;
213
- usdValue: number;
214
- }
215
- export interface RewardAvaiblePools {
216
- tokenIdentifier: string;
217
- tokenNonce: number;
218
- rewardPerEpochShort: number;
219
- rewardBalanceShort: number;
220
- rewardBalance: string;
221
- rewardPerDayPerNft: number;
222
- usdValue: number;
223
- }
224
- export interface UserPoolStakingInfo {
225
- nftDocs: NftData[];
226
- poolDoc: StakingSummaryPools;
227
- }
228
- export interface UserAnalyticSummary {
229
- Purchase: Purchase;
230
- Sale: Purchase;
231
- }
232
- export interface Purchase {
233
- count: number;
234
- volume: number;
235
- min: Max;
236
- max: Max;
237
- avg: Avg;
238
- }
239
- export interface Avg {
240
- price: number;
241
- }
242
- export interface Max {
243
- price: number;
244
- txHash: string;
245
- timestamp: number;
246
- identifier: string;
247
- }
248
- export interface UserStats {
249
- wallet: Wallet & {
250
- isCreator: boolean;
251
- owned: number;
252
- listed: number;
253
- followCount: number;
254
- };
255
- totalVolume: number;
256
- totalTrades: number;
257
- totalCollections: number;
258
- totalNfts: number;
259
- totalPartners: number;
260
- buyerVolume: number;
261
- buyerTrades: number;
262
- buyerNfts: number;
263
- buyerCollections: number;
264
- buyerPartners: number;
265
- buyerMaxPriceData: PriceData | null;
266
- buyerMinPriceData: PriceData | null;
267
- sellerVolume: number;
268
- sellerTrades: number;
269
- sellerNfts: number;
270
- sellerCollections: number;
271
- sellerPartners: number;
272
- sellerMaxPriceData: PriceData;
273
- sellerMinPriceData: PriceData;
274
- }
275
- export interface PriceData {
276
- price: number;
277
- timestamp: number;
278
- identifier: string;
279
- txHash: string;
280
- usdValue: number;
281
- nftInfo: Pick<NftData, 'identifier' | 'collection' | 'name' | 'metadata' | 'url' | 'wasProcessed' | 'media'>;
282
- }
283
- export interface StakingCreatorInfo {
284
- address: string;
285
- ownedPools: number[];
286
- ownedCollections: string[];
287
- cutFee: number;
288
- _ts: number;
289
- }
290
- export interface UserXOXNODrop {
291
- wallet: Wallet;
292
- rank: number;
293
- tokenAllocation: number;
294
- totalScore: number;
295
- }
296
- export interface Wallet {
297
- address: string;
298
- addressTrimmed: string;
299
- profile: string;
300
- username: string;
301
- isVerified: boolean;
302
- chain?: ActivityChain;
303
- }
304
- export interface IOwnerInfo {
305
- registered: string[];
306
- availableForRegister: string[];
307
- }
308
- export type IApiShareholder = {
309
- address: string;
310
- share: number;
311
- };
@@ -1,209 +0,0 @@
1
- import type { NftDocFilter } from '@xoxno/types';
2
- import type { CollectionCreatorInfo, CreatorInfo, EventCreatorInfo, PublicOnly, SearchNFTsResponse, StakingStatus, StakingSummaryPools, StakingSummaryPoolsSlim, StatusResponse, SuggestNFTsArgs, SuggestResults, TradincActivityArgs, TradingActivityResponse } from '../types';
3
- import type { ArgsUserOffers, BulkAccount, CreatorProfile, IApiShareholder, IOwnerInfo, IUserProfile, StakingCreatorInfo, UserAnalyticSummary, UserInventory, UserNetworkAccount, UserOffers, UserPoolStakingInfo, UserStats, UserTokenInventory, UserXOXNODrop } from '../types/user';
4
- export declare class UserModule {
5
- private api;
6
- private collection;
7
- constructor();
8
- /**
9
- * Returns the user profile
10
- *
11
- * @param {String} address - Address of the user
12
- * @returns {IUserProfile}
13
- */
14
- getUserProfile: (address: string) => Promise<IUserProfile>;
15
- /**
16
- * Returns the wallet accounts
17
- *
18
- * @param {String[]} addresses - Addresses of the user
19
- * @returns {BulkAccount[]}
20
- */
21
- getBulkAccounts: (addresses: string[]) => Promise<BulkAccount[]>;
22
- /**
23
- * Returns the user account info that inclues nonce, guardian data, esdtTokens
24
- *
25
- * @param {String} address - Address of the user
26
- * @returns {UserAccountInfo}
27
- */
28
- getUserAccount: (address: string) => Promise<UserNetworkAccount>;
29
- /**
30
- * Returns the user account info that inclues nonce, guardian data, esdtTokens
31
- *
32
- * @param {String} address - Address of the user
33
- * @returns {UserAccountInfo}
34
- */
35
- getUserTokenInventory: (address: string) => Promise<UserTokenInventory>;
36
- /**
37
- * Gets user's inventory
38
- *
39
- * @param {String} address - User's address
40
- * @returns {UserInventory} User's inventory
41
- */
42
- getUserSummaryInventory: (address: string, activeAuctions?: boolean) => Promise<UserInventory[]>;
43
- /**
44
- * Fetches the user's NFTs listed on the marketplaces
45
- * @param address - The user's address
46
- * @returns {UserInventory} - A list of token ids and the price
47
- */
48
- getUserNFTs: (args: PublicOnly<NftDocFilter>) => Promise<import("@xoxno/types").NftCosmosResponse>;
49
- /**
50
- * @name getUserOffers
51
- * @description Fetches all offers sent or received associated with a user address
52
- * @param {String} address - The user's wallet address
53
- * @returns {UserOffers} - The user's listings
54
- */
55
- getUserOffers: (args: ArgsUserOffers) => Promise<UserOffers>;
56
- /**
57
- * @public
58
- * @async
59
- * @function suggestUsers
60
- * @param {SuggestNFTsArgs} args - An object containing the necessary parameters to fetch suggested users results.
61
- * @returns {Promise<SuggestResults>} A promise that resolves to the fetched users results.
62
- *
63
- * This function fetches suggested users results based on the provided arguments. It takes an object with the following properties:
64
- * - name (string): The name to search for (required).
65
- * - top (number, optional): The maximum number of results to return (default is 35, cannot be greater than 100).
66
- * - skip (number, optional): The number of results to skip (default is 0).
67
- *
68
- * Finally, it returns a promise that resolves to the fetched users results.
69
- */
70
- suggestUsers: (args: SuggestNFTsArgs) => Promise<SuggestResults>;
71
- /**
72
- * Retrieves trading history based on the provided arguments.
73
- *
74
- * @param {TradincActivityArgs} args - The arguments for filtering the trading activity.
75
- * @returns {Promise<TradingActivityResponse>} A promise resolving to a TradingActivityResponse object containing the activity.
76
- * @throws {Error} Throws an error if the 'top' argument is greater than 100.
77
- */
78
- getTradingActivity: (args: TradincActivityArgs) => Promise<TradingActivityResponse>;
79
- /** Gets user's creator profile
80
- * @param {String} address - User's address
81
- * @returns {CreatorProfile} User's creator profile struct
82
- * @throws {Error} Throws an error if the address is invalid
83
- * */
84
- getUserCreatorProfile: (address: string) => Promise<CreatorProfile>;
85
- /** Gets user's creator profile
86
- * @param {String} address - User's address
87
- * @returns {IMintInfo[]} User's creator profile struct
88
- * @throws {Error} Throws an error if the address is invalid
89
- * */
90
- getCreatorListings: (address: string) => Promise<CollectionCreatorInfo>;
91
- /** Gets user's creator info
92
- * @param {String} address - User's address
93
- * @returns {EventCreatorInfo} User's creator info
94
- * @throws {Error} Throws an error if the address is invalid
95
- * */
96
- getCreatorEvents: (address: string, extra?: RequestInit) => Promise<EventCreatorInfo>;
97
- /** Gets user's staking info
98
- * @param {String} address - User's address
99
- * @returns {UserStakingSummary[]} User's staking info
100
- * @throws {Error} Throws an error if the address is invalid
101
- * */
102
- getUserStakingSummary: (address: string) => Promise<StakingSummaryPoolsSlim[]>;
103
- /** Gets user's staking info
104
- * @param {String} address - User's address
105
- * @returns {UserStakingAvaiblePools[]} User's staking info
106
- * @throws {Error} Throws an error if the address is invalid
107
- * */
108
- getUserStakingAailable: (address: string) => Promise<StakingSummaryPools[]>;
109
- /** Gets user's creator info
110
- * @param {String} address - User's address
111
- * @returns {CreatorInfo} User's creator info
112
- * @throws {Error} Throws an error if the address is invalid
113
- * */
114
- getUserCreatorInfo: (address: string, extra?: RequestInit) => Promise<CreatorInfo>;
115
- /** Gets pool details
116
- * @param {String} address - User's address
117
- * @param {String} collection - Collection ticker
118
- * @returns {UserCollectionStaking} User's creator info
119
- * @throws {Error} Throws an error if the address is invalid
120
- * */
121
- getUserCollectionStaking: (address: string, collection: string) => Promise<StakingSummaryPools[]>;
122
- /** Gets pool details
123
- * @param {number} poolId - User's address
124
- * @returns {CreatoPoolDetailsrInfo} User's creator info
125
- * @throws {Error} Throws an error if the address is invalid
126
- * */
127
- getUserPoolStaking: (address: string, poolId: number, status: StakingStatus) => Promise<UserPoolStakingInfo>;
128
- /** Gets owned pools by address
129
- * @param {string} address - User's address
130
- * @returns {StakingSummaryPools[]} User pools
131
- * @throws {Error} Throws an error if the address is invalid
132
- * */
133
- getOwnedPoolsByAddress: (address: string) => Promise<StakingSummaryPools[]>;
134
- /**
135
- * Gets user's analytics summary
136
- *
137
- * @param {String} address - User's address
138
- * @returns {UserAnalyticSummary} User's analytics summary
139
- */
140
- getUserAnalyticsSummary: (address: string) => Promise<UserAnalyticSummary>;
141
- /** Gets user's favorite NFTs
142
- * @param {String} address - User's address
143
- * @param {number} top - Top
144
- * @param {number} skip - Skip
145
- * @returns {NftDoc[]} Array of NFTs
146
- * @throws {Error} Throws an error if the address is invalid
147
- * */
148
- getUserFavoriteNFTs: (address: string, top: number, skip: number) => Promise<SearchNFTsResponse>;
149
- /** Gets user's favorite collection tickers
150
- * @param {String} address - User's address
151
- * @returns {String[]} Array of tickers
152
- * @throws {Error} Throws an error if the address is invalid
153
- * */
154
- getUserFavoriteCollectionTickers: (address: string) => Promise<string[]>;
155
- /** Get if the creator tag is registered already
156
- * @param {String} creatorTag - The creator tag that needs to be checked
157
- * @returns {StatusResponse} True or false
158
- * */
159
- getIsCreatorRegistered: (creatorTag: string) => Promise<StatusResponse>;
160
- /**
161
- * @public
162
- * @async
163
- * @function getUsersStats
164
- * @returns {Promise<UserStats[]>} A promise that resolves to the fetched users results.
165
- */
166
- getUsersStats: ({ top, skip, orderBy, orderDirection, }: {
167
- top: number;
168
- skip: number;
169
- orderBy: string;
170
- orderDirection?: string;
171
- }) => Promise<UserStats[]>;
172
- /**
173
- * @public
174
- * @async
175
- * @function getStakingCreatorInfo
176
- * @param {String} address - The user's address.
177
- * @returns {Promise<StakingCreatorInfo>} A promise that resolves to the fetched staking creator info.
178
- */
179
- getStakingCreatorInfo: (address: string) => Promise<StakingCreatorInfo>;
180
- /**
181
- * @public
182
- * @async
183
- * @function getUsersDrop
184
- * @returns {Promise<UserXOXNODrop[]>} A promise that resolves to the fetched users results.
185
- */
186
- getUsersDrop: ({ top, skip, address, }: {
187
- top: number;
188
- skip: number;
189
- address?: string;
190
- }) => Promise<UserXOXNODrop[]>;
191
- /** Gets user's creator info
192
- * @param {String} address - User's address
193
- * @returns {IOwnerInfo} User's creator info
194
- * @throws {Error} Throws an error if the address is invalid
195
- * */
196
- getUserOwnerCollections: (address: string) => Promise<IOwnerInfo>;
197
- /** Gets royalties shares creator info
198
- * @param {String} address - User's address
199
- * @returns {IApiShareholder[]} Royalties shares creator info
200
- * @throws {Error} Throws an error if the address is invalid
201
- * */
202
- getRoyaltiesSharesCreator: (address: string) => Promise<IApiShareholder[]>;
203
- /** Gets mint shares creator info
204
- * @param {String} address - User's address
205
- * @returns {IApiShareholder[]} Mint revenue shares creator info
206
- * @throws {Error} Throws an error if the address is invalid
207
- * */
208
- getMintSharesCreator: (address: string, collectionTag: string) => Promise<IApiShareholder[]>;
209
- }
@@ -1,10 +0,0 @@
1
- import type { TradincActivityArgs, TradingActivityResponse } from '../types/trading';
2
- import type { XOXNOClient } from './api';
3
- /**
4
- * Fetches the trading activity of the given collections
5
- * @param args - The trading activity arguments
6
- * @param api - The API client
7
- * @returns - The trading activity response
8
- * @throws - If the top is greater than 100
9
- */
10
- export declare const getActivity: (args: TradincActivityArgs, api: XOXNOClient) => Promise<TradingActivityResponse>;