@dcl/schemas 7.3.1 → 7.3.2-5257178677.commit-14f408d

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.
package/dist/schemas.d.ts DELETED
@@ -1,2185 +0,0 @@
1
- import Ajv from 'ajv';
2
- import { ErrorObject } from 'ajv';
3
- import { JSONSchemaType } from 'ajv';
4
- import { KeywordDefinition } from 'ajv';
5
-
6
- /**
7
- * Common structure to use types as values in TS.
8
- * @public
9
- */
10
- export declare type AbstractTypedSchema<T> = {
11
- schema: JSONSchema<T>;
12
- validate: ValidateFunction<T>;
13
- };
14
-
15
- export declare type Account = {
16
- id: string;
17
- address: string;
18
- sales: number;
19
- purchases: number;
20
- spent: string;
21
- earned: string;
22
- royalties: string;
23
- collections: number;
24
- };
25
-
26
- export declare namespace Account {
27
- const schema: JSONSchema<Account>;
28
- const validate: ValidateFunction<Account>;
29
- }
30
-
31
- export declare type AccountFilters = {
32
- first?: number;
33
- skip?: number;
34
- sortBy?: AccountSortBy;
35
- id?: string;
36
- address?: string[];
37
- network?: Network;
38
- };
39
-
40
- export declare enum AccountSortBy {
41
- MOST_SALES = "most_sales",
42
- MOST_PURCHASES = "most_purchases",
43
- MOST_SPENT = "most_spent",
44
- MOST_EARNED = "most_earned",
45
- MOST_ROYALTIES = "most_royalties",
46
- MOST_COLLECTIONS = "most_collections"
47
- }
48
-
49
- /** @public */
50
- declare type Actions = typeof SCENE_UPDATE | typeof UPDATE;
51
-
52
- export { Ajv }
53
-
54
- export declare type AnalyticsDayData = {
55
- id: string;
56
- date: number;
57
- sales: number;
58
- volume: string;
59
- creatorsEarnings: string;
60
- daoEarnings: string;
61
- };
62
-
63
- export declare type AnalyticsDayDataFilters = {
64
- from?: number;
65
- network?: Network;
66
- };
67
-
68
- export declare enum AnalyticsDayDataSortBy {
69
- DATE = "date",
70
- MOST_SALES = "most_sales"
71
- }
72
-
73
- /**
74
- * AuthChain is an array of elements used to create and verify signatures
75
- * and ephemeral keys.
76
- *
77
- * @public
78
- */
79
- export declare type AuthChain = AuthLink[];
80
-
81
- /** @public */
82
- export declare namespace AuthChain {
83
- const schema: JSONSchema<AuthChain>;
84
- const validate: ValidateFunction<AuthChain>;
85
- }
86
-
87
- /**
88
- * @public
89
- */
90
- export declare type AuthLink = {
91
- type: AuthLinkType;
92
- payload: string;
93
- signature?: string;
94
- };
95
-
96
- /**
97
- * @public
98
- */
99
- export declare namespace AuthLink {
100
- const schema: JSONSchema<AuthLink>;
101
- const validate: ValidateFunction<AuthLink>;
102
- }
103
-
104
- /**
105
- * @public
106
- */
107
- export declare enum AuthLinkType {
108
- 'SIGNER' = "SIGNER",
109
- 'ECDSA_PERSONAL_EPHEMERAL' = "ECDSA_EPHEMERAL",
110
- 'ECDSA_PERSONAL_SIGNED_ENTITY' = "ECDSA_SIGNED_ENTITY",
111
- /**
112
- * See https://github.com/ethereum/EIPs/issues/1654
113
- */
114
- 'ECDSA_EIP_1654_EPHEMERAL' = "ECDSA_EIP_1654_EPHEMERAL",
115
- /**
116
- * See https://github.com/ethereum/EIPs/issues/1654
117
- */
118
- 'ECDSA_EIP_1654_SIGNED_ENTITY' = "ECDSA_EIP_1654_SIGNED_ENTITY"
119
- }
120
-
121
- /**
122
- * Avatar represents a profile avatar. Used both for comms, internal state of the
123
- * explorer and the deployed profiles.
124
- * @alpha
125
- */
126
- export declare type Avatar = {
127
- userId: string;
128
- name: string;
129
- description: string;
130
- ethAddress: EthAddress;
131
- version: number;
132
- tutorialStep: number;
133
- email?: string;
134
- blocked?: string[];
135
- muted?: string[];
136
- interests?: string[];
137
- hasClaimedName: boolean;
138
- avatar: AvatarInfo;
139
- /**
140
- * Whether or not the player has connected web3 wallet or is a guest user.
141
- * This is always true for deployed profiles.
142
- */
143
- hasConnectedWeb3?: boolean;
144
- };
145
-
146
- /**
147
- * Avatar
148
- * @alpha
149
- */
150
- export declare namespace Avatar {
151
- const schema: JSONSchema<Avatar>;
152
- const validate: ValidateFunction<Avatar>;
153
- }
154
-
155
- /**
156
- * AvatarInfo
157
- * @alpha
158
- */
159
- export declare type AvatarInfo = {
160
- bodyShape: WearableId;
161
- eyes: {
162
- color: Color3;
163
- };
164
- hair: {
165
- color: Color3;
166
- };
167
- skin: {
168
- color: Color3;
169
- };
170
- wearables: WearableId[];
171
- forceRender?: WearableCategory[];
172
- emotes?: {
173
- slot: number;
174
- urn: string;
175
- }[];
176
- snapshots: Snapshots;
177
- };
178
-
179
- /**
180
- * AvatarInfo
181
- * @alpha
182
- */
183
- export declare namespace AvatarInfo {
184
- const schema: JSONSchema<AvatarInfo>;
185
- const validate: ValidateFunction<AvatarInfo>;
186
- }
187
-
188
- /**
189
- * @public
190
- *
191
- * Describes common properties to an item of a collection.
192
- */
193
- declare type BaseItem = DisplayableDeployment & {
194
- id: string;
195
- name: string;
196
- description: string;
197
- i18n: I18N[];
198
- thumbnail: string;
199
- image: string;
200
- metrics?: Metrics;
201
- };
202
-
203
- export declare type Bid = {
204
- id: string;
205
- bidAddress: string;
206
- bidder: string;
207
- seller: string;
208
- price: string;
209
- fingerprint: string;
210
- status: ListingStatus;
211
- blockchainId: string;
212
- blockNumber: string;
213
- expiresAt: number;
214
- createdAt: number;
215
- updatedAt: number;
216
- contractAddress: string;
217
- tokenId: string;
218
- network: Network;
219
- chainId: ChainId;
220
- };
221
-
222
- export declare namespace Bid {
223
- const schema: JSONSchema<Bid>;
224
- const validate: ValidateFunction<Bid>;
225
- }
226
-
227
- export declare type BidFilters = {
228
- first?: number;
229
- skip?: number;
230
- sortBy?: BidSortBy;
231
- bidAddress?: string;
232
- bidder?: string;
233
- seller?: string;
234
- contractAddress?: string;
235
- tokenId?: string;
236
- status?: ListingStatus;
237
- network?: Network;
238
- };
239
-
240
- export declare enum BidSortBy {
241
- RECENTLY_OFFERED = "recently_offered",
242
- RECENTLY_UPDATED = "recently_updated",
243
- MOST_EXPENSIVE = "most_expensive"
244
- }
245
-
246
- /** @alpha */
247
- export declare enum BodyShape {
248
- MALE = "urn:decentraland:off-chain:base-avatars:BaseMale",
249
- FEMALE = "urn:decentraland:off-chain:base-avatars:BaseFemale"
250
- }
251
-
252
- /** @alpha */
253
- export declare namespace BodyShape {
254
- const schema: JSONSchema<BodyShape>;
255
- const validate: ValidateFunction<BodyShape>;
256
- }
257
-
258
- /**
259
- * All the possible Marketplace's catalog filters.
260
- * @public
261
- */
262
- export declare type CatalogFilters = Pick<ItemFilters, 'ids' | 'first' | 'skip' | 'category' | 'creator' | 'isSoldOut' | 'isOnSale' | 'search' | 'isWearableHead' | 'isWearableSmart' | 'isWearableAccessory' | 'isWearableAccessory' | 'wearableCategory' | 'rarities' | 'wearableGenders' | 'emoteCategory' | 'emoteGenders' | 'emotePlayMode' | 'contractAddresses' | 'itemId' | 'network' | 'minPrice' | 'maxPrice'> & {
263
- onlyMinting?: boolean;
264
- onlyListing?: boolean;
265
- sortBy?: CatalogSortBy;
266
- sortDirection?: CatalogSortDirection;
267
- limit?: number;
268
- offset?: number;
269
- };
270
-
271
- /**
272
- * All the possible sort options for the Marketplace's catalog.
273
- * @public
274
- */
275
- export declare enum CatalogSortBy {
276
- NEWEST = "newest",
277
- RECENTLY_SOLD = "recently_sold",
278
- CHEAPEST = "cheapest",
279
- MOST_EXPENSIVE = "most_expensive",
280
- RECENTLY_LISTED = "recently_listed"
281
- }
282
-
283
- /**
284
- * All the possible sort directions.
285
- * @public
286
- */
287
- export declare enum CatalogSortDirection {
288
- ASC = "asc",
289
- DESC = "desc"
290
- }
291
-
292
- /**
293
- * Different supported chain ids
294
- * @alpha
295
- */
296
- export declare enum ChainId {
297
- ETHEREUM_MAINNET = 1,
298
- ETHEREUM_ROPSTEN = 3,
299
- ETHEREUM_RINKEBY = 4,
300
- ETHEREUM_GOERLI = 5,
301
- ETHEREUM_KOVAN = 42,
302
- MATIC_MAINNET = 137,
303
- MATIC_MUMBAI = 80001
304
- }
305
-
306
- /**
307
- * @alpha
308
- */
309
- export declare namespace ChainId {
310
- const schema: JSONSchema<ChainId>;
311
- const validate: ValidateFunction<ChainId>;
312
- }
313
-
314
- /**
315
- * Different supported chain names
316
- * @alpha
317
- */
318
- export declare enum ChainName {
319
- ETHEREUM_MAINNET = "Ethereum Mainnet",
320
- ETHEREUM_ROPSTEN = "Ropsten",
321
- ETHEREUM_RINKEBY = "Rinkeby",
322
- ETHEREUM_GOERLI = "Goerli",
323
- ETHEREUM_KOVAN = "Kovan",
324
- MATIC_MAINNET = "Polygon",
325
- MATIC_MUMBAI = "Mumbai"
326
- }
327
-
328
- /**
329
- * @alpha
330
- */
331
- export declare namespace ChainName {
332
- const schema: JSONSchema<ChainName>;
333
- const validate: ValidateFunction<ChainName>;
334
- }
335
-
336
- export declare type Collection = {
337
- urn: string;
338
- name: string;
339
- creator: string;
340
- contractAddress: string;
341
- isOnSale: boolean;
342
- size: number;
343
- createdAt: number;
344
- updatedAt: number;
345
- reviewedAt: number;
346
- network: Network;
347
- chainId: ChainId;
348
- /** The timestamp in seconds since epoch when the collection was listed for sale for the first time */
349
- firstListedAt: number | null;
350
- };
351
-
352
- export declare namespace Collection {
353
- const schema: JSONSchema<Collection>;
354
- const validate: ValidateFunction<Collection>;
355
- }
356
-
357
- export declare type CollectionFilters = {
358
- first?: number;
359
- skip?: number;
360
- sortBy?: CollectionSortBy;
361
- name?: string;
362
- search?: string;
363
- creator?: string;
364
- contractAddress?: string;
365
- urn?: string;
366
- isOnSale?: boolean;
367
- network?: Network;
368
- };
369
-
370
- export declare enum CollectionSortBy {
371
- NEWEST = "newest",
372
- NAME = "name",
373
- RECENTLY_REVIEWED = "recently_reviewed",
374
- RECENTLY_LISTED = "recently_listed",
375
- SIZE = "size"
376
- }
377
-
378
- /**
379
- * Color3 is a data type that describes a color using R, G and B components
380
- * @alpha
381
- */
382
- export declare type Color3 = {
383
- r: number;
384
- g: number;
385
- b: number;
386
- };
387
-
388
- /**
389
- * Color3
390
- * @alpha
391
- */
392
- export declare namespace Color3 {
393
- const schema: JSONSchema<Color3>;
394
- const validate: ValidateFunction<Color3>;
395
- }
396
-
397
- /**
398
- * Represents a content mapping. The Decentraland file system is
399
- * case-insensitive. `file` must be lower cased.
400
- *
401
- * Duplicated files will throw a validation error.
402
- *
403
- * .file is a relative path
404
- * .hash is a valid IPFS hash.
405
- *
406
- * @public
407
- */
408
- export declare type ContentMapping = {
409
- file: string;
410
- hash: IPFSv1 | IPFSv2;
411
- };
412
-
413
- /** @public */
414
- export declare namespace ContentMapping {
415
- const schema: JSONSchema<ContentMapping>;
416
- const validate: ValidateFunction<ContentMapping>;
417
- }
418
-
419
- export declare type Contract = {
420
- name: string;
421
- address: string;
422
- category: NFTCategory;
423
- network: Network;
424
- chainId: ChainId;
425
- };
426
-
427
- export declare namespace Contract {
428
- const schema: JSONSchema<Contract>;
429
- const validate: ValidateFunction<Contract>;
430
- }
431
-
432
- export declare type ContractFilters = {
433
- category?: NFTCategory;
434
- network?: Network;
435
- };
436
-
437
- export declare enum ContractSortBy {
438
- NAME = "name"
439
- }
440
-
441
- /**
442
- * This type describes the minimum deployment + AuthChain needed to synchronize
443
- * a deployed entity across catalysts.
444
- * @public @deprecated
445
- */
446
- export declare type DeploymentWithAuthChain = {
447
- entityId: string;
448
- entityType: string;
449
- pointers: string[];
450
- localTimestamp: number;
451
- authChain: AuthChain;
452
- };
453
-
454
- /**
455
- * @public
456
- * @deprecated use SyncDeployment instead
457
- */
458
- export declare namespace DeploymentWithAuthChain {
459
- const schema: JSONSchema<DeploymentWithAuthChain>;
460
- const validate: ValidateFunction<DeploymentWithAuthChain>;
461
- }
462
-
463
- /**
464
- * @public
465
- *
466
- * Describes common properties to display deployments.
467
- */
468
- export declare type DisplayableDeployment = {
469
- /** Name of the file used as icon for the MenuBar */
470
- menuBarIcon?: string;
471
- };
472
-
473
- /**
474
- * Configuration for deploying a DreamSpace
475
- *
476
- * @alpha
477
- */
478
- export declare type DreamSpaceConfiguration = {
479
- name: string;
480
- miniMapConfig?: MiniMapConfiguration;
481
- skyboxConfig?: SkyboxConfiguration;
482
- fixedAdapter?: string;
483
- placesConfig?: {
484
- optOut?: boolean;
485
- };
486
- };
487
-
488
- /** @alpha */
489
- export declare namespace DreamSpaceConfiguration {
490
- const schema: JSONSchema<DreamSpaceConfiguration>;
491
- const validate: ValidateFunction<DreamSpaceConfiguration>;
492
- }
493
-
494
- /** @alpha */
495
- export declare type Emote = EmoteADR74;
496
-
497
- /** @alpha */
498
- export declare namespace Emote {
499
- const schema: JSONSchema<Emote>;
500
- const validate: ValidateFunction<EmoteADR74>;
501
- }
502
-
503
- declare type EmoteADR74 = BaseItem & (StandardProps | ThirdPartyProps) & {
504
- emoteDataADR74: EmoteDataADR74;
505
- };
506
-
507
- export declare enum EmoteCategory {
508
- DANCE = "dance",
509
- STUNT = "stunt",
510
- GREETINGS = "greetings",
511
- FUN = "fun",
512
- POSES = "poses",
513
- REACTIONS = "reactions",
514
- HORROR = "horror",
515
- MISCELLANEOUS = "miscellaneous"
516
- }
517
-
518
- export declare namespace EmoteCategory {
519
- const schema: JSONSchema<EmoteCategory>;
520
- const validate: ValidateFunction<EmoteCategory>;
521
- }
522
-
523
- export declare type EmoteDataADR74 = {
524
- category: EmoteCategory;
525
- representations: EmoteRepresentationADR74[];
526
- tags: string[];
527
- loop: boolean;
528
- };
529
-
530
- export declare namespace EmoteDataADR74 {
531
- const schema: JSONSchema<EmoteDataADR74>;
532
- const validate: ValidateFunction<EmoteDataADR74>;
533
- }
534
-
535
- export declare type EmoteDefinition = Omit<Emote, 'emoteDataADR74'> & {
536
- emoteDataADR74: Omit<Emote['emoteDataADR74'], 'representations'> & {
537
- representations: EmoteRepresentationDefinition[];
538
- };
539
- };
540
-
541
- declare type EmoteEventPayload<T extends PreviewEmoteEventType> = T extends PreviewEmoteEventType.ANIMATION_PLAYING ? {
542
- length: number;
543
- } : undefined;
544
-
545
- export declare enum EmotePlayMode {
546
- SIMPLE = "simple",
547
- LOOP = "loop"
548
- }
549
-
550
- export declare namespace EmotePlayMode {
551
- const schema: JSONSchema<EmotePlayMode>;
552
- const validate: ValidateFunction<EmotePlayMode>;
553
- }
554
-
555
- /** @alpha */
556
- export declare type EmoteRepresentationADR74 = {
557
- bodyShapes: BodyShape[];
558
- mainFile: string;
559
- contents: string[];
560
- };
561
-
562
- /** @alpha */
563
- export declare namespace EmoteRepresentationADR74 {
564
- const schema: JSONSchema<EmoteRepresentationADR74>;
565
- const validate: ValidateFunction<EmoteRepresentationADR74>;
566
- }
567
-
568
- /** @alpha */
569
- export declare type EmoteRepresentationDefinition = Omit<EmoteRepresentationADR74, 'contents'> & {
570
- contents: {
571
- key: string;
572
- url: string;
573
- }[];
574
- };
575
-
576
- /** @alpha */
577
- export declare type EmoteRepresentationWithBlobs = Omit<EmoteRepresentationDefinition, 'contents'> & {
578
- contents: {
579
- key: string;
580
- blob: any;
581
- }[];
582
- };
583
-
584
- /** @alpha */
585
- export declare type EmoteWithBlobs = Omit<EmoteDefinition, 'emoteDataADR74'> & {
586
- emoteDataADR74: Omit<EmoteDefinition['emoteDataADR74'], 'representations'> & {
587
- representations: EmoteRepresentationWithBlobs[];
588
- };
589
- };
590
-
591
- /**
592
- * Internal representation of an entity in the catalyst.
593
- *
594
- * This Entity's content mappings adhere to ADR45.
595
- *
596
- * @public
597
- */
598
- export declare type Entity = {
599
- /** @deprecated ADR45 removed entity versions. */
600
- version: string;
601
- id: IPFSv1 | IPFSv2;
602
- type: EntityType;
603
- pointers: string[];
604
- timestamp: number;
605
- content: ContentMapping[];
606
- metadata?: any;
607
- };
608
-
609
- /** @public */
610
- export declare namespace Entity {
611
- const schema: JSONSchema<Entity>;
612
- const validate: ValidateFunction<Entity>;
613
- }
614
-
615
- /**
616
- * Non-exhaustive list of EntityTypes.
617
- * @public
618
- */
619
- export declare enum EntityType {
620
- SCENE = "scene",
621
- PROFILE = "profile",
622
- WEARABLE = "wearable",
623
- STORE = "store",
624
- EMOTE = "emote",
625
- OUTFITS = "outfits"
626
- }
627
-
628
- /**
629
- * EthAddress is a data type that describes an Ethereum address
630
- * @alpha
631
- */
632
- export declare type EthAddress = string;
633
-
634
- /**
635
- * EthAddress
636
- * @alpha
637
- */
638
- export declare namespace EthAddress {
639
- const schema: JSONSchema<EthAddress>;
640
- const validate: ValidateFunction<EthAddress>;
641
- }
642
-
643
- /** @alpha */
644
- export declare type FeatureToggles = Record<string, 'enabled' | 'disabled'>;
645
-
646
- /** @alpha */
647
- export declare namespace FeatureToggles {
648
- const schema: JSONSchema<FeatureToggles>;
649
- const validate: ValidateFunction<FeatureToggles>;
650
- }
651
-
652
- export declare enum GenderFilterOption {
653
- MALE = "male",
654
- FEMALE = "female",
655
- UNISEX = "unisex"
656
- }
657
-
658
- /**
659
- * Generates a validator for a specific JSON schema of a type T
660
- * @public
661
- */
662
- export declare function generateLazyValidator<T>(schema: JSONSchema<T>, keywordDefinitions?: KeywordDefinition[]): ValidateFunction<T>;
663
-
664
- /**
665
- * Get chain id by chain name
666
- * @alpha
667
- */
668
- export declare function getChainId(chainName: ChainName): ChainId | null;
669
-
670
- /**
671
- * Get the chain name by chain id
672
- * @alpha
673
- */
674
- export declare function getChainName(chainId: ChainId): ChainName | null;
675
-
676
- /**
677
- * Get the chain name by chain id
678
- * @alpha
679
- */
680
- export declare function getURNProtocol(chainId: ChainId): string;
681
-
682
- /**
683
- * Get World
684
- * @alpha
685
- */
686
- export declare function getWorld(): World;
687
-
688
- /** @alpha */
689
- export declare type I18N = {
690
- code: Locale;
691
- text: string;
692
- };
693
-
694
- /** @alpha */
695
- export declare namespace I18N {
696
- const schema: JSONSchema<I18N>;
697
- const validate: ValidateFunction<I18N>;
698
- }
699
-
700
- export declare interface IEmoteController {
701
- getLength(): Promise<number>;
702
- isPlaying(): Promise<boolean>;
703
- goTo(seconds: number): Promise<void>;
704
- play(): Promise<void>;
705
- pause(): Promise<void>;
706
- stop(): Promise<void>;
707
- events: any;
708
- }
709
-
710
- /**
711
- * @public
712
- */
713
- export declare type IPFSv1 = string;
714
-
715
- /**
716
- * IPFSv1
717
- * @public
718
- */
719
- export declare namespace IPFSv1 {
720
- const schema: JSONSchema<IPFSv1>;
721
- const validate: ValidateFunction<IPFSv1>;
722
- }
723
-
724
- /**
725
- * IPFSv2 is a data type that describes an IPFS v2 hash
726
- * @public
727
- */
728
- export declare type IPFSv2 = string;
729
-
730
- /**
731
- * IPFSv2
732
- * @public
733
- */
734
- export declare namespace IPFSv2 {
735
- const schema: JSONSchema<IPFSv2>;
736
- const validate: ValidateFunction<IPFSv2>;
737
- }
738
-
739
- export declare interface IPreviewController {
740
- scene: ISceneController;
741
- emote: IEmoteController;
742
- }
743
-
744
- export declare interface ISceneController {
745
- getScreenshot(width: number, height: number): Promise<string>;
746
- getMetrics(): Promise<Metrics>;
747
- changeZoom(zoom: number): Promise<void>;
748
- panCamera(offset: {
749
- x?: number;
750
- y?: number;
751
- z?: number;
752
- }): Promise<void>;
753
- changeCameraPosition(position: {
754
- alpha?: number;
755
- beta?: number;
756
- radius?: number;
757
- }): Promise<void>;
758
- }
759
-
760
- /**
761
- * Check if is inside World Limits
762
- * @alpha
763
- */
764
- export declare function isInsideWorldLimits(x: number, y: number): boolean;
765
-
766
- export declare function isStandard<T extends BaseItem>(item: T): item is T & StandardProps;
767
-
768
- export declare function isThirdParty<T extends BaseItem>(item: T): item is T & ThirdPartyProps;
769
-
770
- export declare type Item = {
771
- id: string;
772
- name: string;
773
- thumbnail: string;
774
- url: string;
775
- category: NFTCategory;
776
- contractAddress: string;
777
- itemId: string;
778
- rarity: Rarity;
779
- price: string;
780
- available: number;
781
- isOnSale: boolean;
782
- creator: string;
783
- beneficiary: string | null;
784
- createdAt: number;
785
- updatedAt: number;
786
- reviewedAt: number;
787
- soldAt: number;
788
- data: NFT['data'];
789
- network: Network;
790
- chainId: ChainId;
791
- /** The timestamp in seconds since epoch when the item was listed for sale for the first time */
792
- firstListedAt: number | null;
793
- picks?: {
794
- pickedByUser?: boolean;
795
- count: number;
796
- };
797
- /** The following fields are for the items for the Marketplace's catalog */
798
- minPrice?: string;
799
- minListingPrice?: string | null;
800
- maxListingPrice?: string | null;
801
- listings?: number | null;
802
- owners?: number | null;
803
- };
804
-
805
- export declare namespace Item {
806
- const schema: JSONSchema<Item>;
807
- const validate: ValidateFunction<Item>;
808
- }
809
-
810
- export declare type ItemFilters = {
811
- first?: number;
812
- skip?: number;
813
- sortBy?: ItemSortBy;
814
- category?: NFTCategory;
815
- /** The address or the addresses of the creators to filter for */
816
- creator?: string | string[];
817
- rarities?: Rarity[];
818
- isSoldOut?: boolean;
819
- isOnSale?: boolean;
820
- search?: string;
821
- isWearableHead?: boolean;
822
- isWearableAccessory?: boolean;
823
- isWearableSmart?: boolean;
824
- wearableCategory?: WearableCategory;
825
- wearableGenders?: (WearableGender | GenderFilterOption)[];
826
- emoteCategory?: EmoteCategory;
827
- emoteGenders?: (WearableGender | GenderFilterOption)[];
828
- emotePlayMode?: EmotePlayMode | EmotePlayMode[];
829
- ids?: string[];
830
- contractAddresses?: string[];
831
- itemId?: string;
832
- network?: Network;
833
- /**
834
- * Returns items whose price is greater or equal to this value
835
- */
836
- minPrice?: string;
837
- /**
838
- * Returns items whose price is smaller or equal to this value
839
- */
840
- maxPrice?: string;
841
- urns?: string[];
842
- };
843
-
844
- export declare enum ItemSortBy {
845
- NAME = "name",
846
- NEWEST = "newest",
847
- RECENTLY_REVIEWED = "recently_reviewed",
848
- RECENTLY_SOLD = "recently_sold",
849
- RECENTLY_LISTED = "recently_listed",
850
- CHEAPEST = "cheapest"
851
- }
852
-
853
- /**
854
- * This type alias exist only to avoid accidental refactors involving names of ajv
855
- * @public
856
- */
857
- export declare type JSONSchema<T> = JSONSchemaType<T>;
858
-
859
- export declare enum ListingStatus {
860
- OPEN = "open",
861
- SOLD = "sold",
862
- CANCELLED = "cancelled"
863
- }
864
-
865
- export declare namespace ListingStatus {
866
- const schema: JSONSchema<ListingStatus>;
867
- const validate: ValidateFunction<ListingStatus>;
868
- }
869
-
870
- /** @alpha */
871
- export declare enum Locale {
872
- EN = "en",
873
- ES = "es"
874
- }
875
-
876
- /** @alpha */
877
- export declare namespace Locale {
878
- const schema: JSONSchema<Locale>;
879
- const validate: ValidateFunction<Locale>;
880
- }
881
-
882
- /**
883
- * Merkle Proof
884
- * @alpha
885
- */
886
- export declare type MerkleProof = {
887
- proof: string[];
888
- index: number;
889
- hashingKeys: string[];
890
- entityHash: string;
891
- };
892
-
893
- /**
894
- * Merkle Proof
895
- * @alpha
896
- */
897
- export declare namespace MerkleProof {
898
- const schema: JSONSchema<MerkleProof>;
899
- const validate: ValidateFunction<MerkleProof>;
900
- }
901
-
902
- /** @public */
903
- declare type Messages = SceneUpdate | Update;
904
-
905
- /**
906
- * Meta-transaction to be relayed
907
- * @alpha
908
- */
909
- export declare type MetaTransaction = {
910
- from: string;
911
- params: [string, string];
912
- };
913
-
914
- /**
915
- * @alpha
916
- */
917
- export declare namespace MetaTransaction {
918
- const schema: JSONSchema<MetaTransaction>;
919
- const validate: ValidateFunction<MetaTransaction>;
920
- }
921
-
922
- /** @alpha */
923
- export declare type Metrics = {
924
- triangles: number;
925
- materials: number;
926
- textures: number;
927
- meshes: number;
928
- bodies: number;
929
- entities: number;
930
- };
931
-
932
- /** @alpha */
933
- export declare namespace Metrics {
934
- const schema: JSONSchema<Metrics>;
935
- const validate: ValidateFunction<Metrics>;
936
- }
937
-
938
- /** @alpha */
939
- export declare type MiniMapConfiguration = {
940
- visible?: boolean;
941
- dataImage?: string;
942
- estateImage?: string;
943
- };
944
-
945
- export declare type Mint = {
946
- id: string;
947
- creator: string;
948
- beneficiary: string;
949
- minter: string;
950
- itemId: string;
951
- tokenId: string;
952
- issuedId: string;
953
- contractAddress: string;
954
- price: string | null;
955
- timestamp: number;
956
- network: Network;
957
- chainId: ChainId;
958
- };
959
-
960
- export declare namespace Mint {
961
- const schema: JSONSchema<Mint>;
962
- const validate: ValidateFunction<Mint>;
963
- }
964
-
965
- export declare type MintFilters = {
966
- first?: number;
967
- skip?: number;
968
- sortBy?: MintSortBy;
969
- creator?: string;
970
- beneficiary?: string;
971
- minter?: string;
972
- contractAddress?: string;
973
- itemId?: string;
974
- tokenId?: string;
975
- issuedId?: string;
976
- isSale?: boolean;
977
- network?: Network;
978
- };
979
-
980
- export declare enum MintSortBy {
981
- RECENTLY_MINTED = "recently_minted",
982
- MOST_EXPENSIVE = "most_expensive"
983
- }
984
-
985
- declare type MultiPosition = {
986
- x: number[];
987
- y: number[];
988
- z: number[];
989
- };
990
-
991
- /**
992
- * Different supported networks
993
- * @alpha
994
- */
995
- export declare enum Network {
996
- ETHEREUM = "ETHEREUM",
997
- MATIC = "MATIC"
998
- }
999
-
1000
- /**
1001
- * @alpha
1002
- */
1003
- export declare namespace Network {
1004
- const schema: JSONSchema<Network>;
1005
- const validate: ValidateFunction<Network>;
1006
- }
1007
-
1008
- export declare type NFT = {
1009
- id: string;
1010
- contractAddress: string;
1011
- tokenId: string;
1012
- activeOrderId: string | null;
1013
- /** The ID of the open rental listing associated with the NFT */
1014
- openRentalId: string | null;
1015
- owner: string;
1016
- name: string;
1017
- category: NFTCategory;
1018
- image: string;
1019
- url: string;
1020
- issuedId: string | null;
1021
- itemId: string | null;
1022
- data: {
1023
- parcel?: {
1024
- x: string;
1025
- y: string;
1026
- description: string | null;
1027
- estate: {
1028
- tokenId: string;
1029
- name: string;
1030
- } | null;
1031
- };
1032
- estate?: {
1033
- size: number;
1034
- parcels: {
1035
- x: number;
1036
- y: number;
1037
- }[];
1038
- description: string | null;
1039
- };
1040
- wearable?: {
1041
- description: string;
1042
- category: WearableCategory;
1043
- rarity: Rarity;
1044
- bodyShapes: BodyShape[];
1045
- isSmart: boolean;
1046
- };
1047
- ens?: {
1048
- subdomain: string;
1049
- };
1050
- emote?: {
1051
- description: string;
1052
- category: EmoteCategory;
1053
- rarity: Rarity;
1054
- bodyShapes: BodyShape[];
1055
- loop: boolean;
1056
- };
1057
- };
1058
- network: Network;
1059
- chainId: ChainId;
1060
- createdAt: number;
1061
- updatedAt: number;
1062
- soldAt: number;
1063
- };
1064
-
1065
- export declare namespace NFT {
1066
- const schema: JSONSchema<NFT>;
1067
- const validate: ValidateFunction<NFT>;
1068
- }
1069
-
1070
- export declare enum NFTCategory {
1071
- PARCEL = "parcel",
1072
- ESTATE = "estate",
1073
- WEARABLE = "wearable",
1074
- ENS = "ens",
1075
- EMOTE = "emote"
1076
- }
1077
-
1078
- export declare namespace NFTCategory {
1079
- const schema: JSONSchema<NFTCategory>;
1080
- const validate: ValidateFunction<NFTCategory>;
1081
- }
1082
-
1083
- export declare type NFTFilters = {
1084
- first?: number;
1085
- skip?: number;
1086
- sortBy?: NFTSortBy;
1087
- category?: NFTCategory;
1088
- owner?: string;
1089
- isOnSale?: boolean;
1090
- isOnRent?: boolean;
1091
- search?: string;
1092
- itemRarities?: Rarity[];
1093
- isLand?: boolean;
1094
- isWearableHead?: boolean;
1095
- isWearableAccessory?: boolean;
1096
- isWearableSmart?: boolean;
1097
- wearableCategory?: WearableCategory;
1098
- wearableGenders?: (WearableGender | GenderFilterOption)[];
1099
- emoteCategory?: EmoteCategory;
1100
- emoteGenders?: (WearableGender | GenderFilterOption)[];
1101
- emotePlayMode?: EmotePlayMode | EmotePlayMode[];
1102
- contractAddresses?: string[];
1103
- creator?: string | string[];
1104
- tokenId?: string;
1105
- itemId?: string;
1106
- network?: Network;
1107
- rentalStatus?: RentalsListingsFilterBy['status'];
1108
- ids?: string[];
1109
- minPrice?: string;
1110
- maxPrice?: string;
1111
- /** Filter NFTs with a min estate size */
1112
- minEstateSize?: number;
1113
- /** Filter NFTs with a max estate size */
1114
- maxEstateSize?: number;
1115
- /** Filter NFTs with at least this distance to a plaza */
1116
- minDistanceToPlaza?: number;
1117
- /** Filter NFTs with at most this distance to a plaza */
1118
- maxDistanceToPlaza?: number;
1119
- /** Filter NFTs that are next to a road */
1120
- adjacentToRoad?: boolean;
1121
- /** Filter NFTs by rentals that have periods that include any of the rental days */
1122
- rentalDays?: number[];
1123
- } & Pick<RentalsListingsFilterBy, 'tenant'>;
1124
-
1125
- export declare enum NFTSortBy {
1126
- NAME = "name",
1127
- NEWEST = "newest",
1128
- RECENTLY_LISTED = "recently_listed",
1129
- RECENTLY_SOLD = "recently_sold",
1130
- CHEAPEST = "cheapest",
1131
- RENTAL_LISTING_DATE = "rental_listing_date",
1132
- RENTAL_DATE = "rented_date",
1133
- MAX_RENTAL_PRICE = "max_rental_price",
1134
- MIN_RENTAL_PRICE = "min_rental_price"
1135
- }
1136
-
1137
- export declare type Order = {
1138
- id: string;
1139
- marketplaceAddress: string;
1140
- contractAddress: string;
1141
- tokenId: string;
1142
- owner: string;
1143
- buyer: string | null;
1144
- price: string;
1145
- status: ListingStatus;
1146
- expiresAt: number;
1147
- createdAt: number;
1148
- updatedAt: number;
1149
- network: Network;
1150
- chainId: ChainId;
1151
- issuedId: string;
1152
- };
1153
-
1154
- export declare namespace Order {
1155
- const schema: JSONSchema<Order>;
1156
- const validate: ValidateFunction<Order>;
1157
- }
1158
-
1159
- export declare type OrderFilters = {
1160
- first?: number;
1161
- skip?: number;
1162
- sortBy?: OrderSortBy;
1163
- marketplaceAddress?: string;
1164
- owner?: string;
1165
- buyer?: string;
1166
- contractAddress?: string;
1167
- tokenId?: string;
1168
- status?: ListingStatus;
1169
- network?: Network;
1170
- itemId?: string;
1171
- nftName?: string;
1172
- };
1173
-
1174
- export declare enum OrderSortBy {
1175
- RECENTLY_LISTED = "recently_listed",
1176
- RECENTLY_UPDATED = "recently_updated",
1177
- CHEAPEST = "cheapest",
1178
- ISSUED_ID_ASC = "issued_id_asc",
1179
- ISSUED_ID_DESC = "issued_id_desc",
1180
- OLDEST = "oldest"
1181
- }
1182
-
1183
- /**
1184
- * @alpha
1185
- */
1186
- export declare type Outfit = {
1187
- bodyShape: WearableId;
1188
- eyes: {
1189
- color: Color3;
1190
- };
1191
- hair: {
1192
- color: Color3;
1193
- };
1194
- skin: {
1195
- color: Color3;
1196
- };
1197
- wearables: WearableId[];
1198
- };
1199
-
1200
- /**
1201
- * Outfit
1202
- * @alpha
1203
- */
1204
- export declare namespace Outfit {
1205
- const schema: JSONSchema<Outfit>;
1206
- const validate: ValidateFunction<Outfit>;
1207
- }
1208
-
1209
- /**
1210
- * @alpha
1211
- */
1212
- export declare type Outfits = {
1213
- outfits: {
1214
- slot: number;
1215
- outfit: Outfit;
1216
- }[];
1217
- namesForExtraSlots: string[];
1218
- };
1219
-
1220
- /**
1221
- * Outfits
1222
- * @alpha
1223
- */
1224
- export declare namespace Outfits {
1225
- const schema: JSONSchema<Outfits>;
1226
- const validate: ValidateFunction<Outfits>;
1227
- }
1228
-
1229
- /**
1230
- * The input that is required to create a rental listing period.
1231
- */
1232
- export declare type PeriodCreation = {
1233
- /** The minimum amount of days of the period */
1234
- minDays: number;
1235
- /** The maximum amount of days of the period */
1236
- maxDays: number;
1237
- /** The price per day */
1238
- pricePerDay: string;
1239
- };
1240
-
1241
- export declare namespace PeriodCreation {
1242
- const schema: JSONSchemaType<PeriodCreation>;
1243
- const validate: ValidateFunction<PeriodCreation>;
1244
- }
1245
-
1246
- /**
1247
- * This type describes deployment + AuthChain needed to synchronize
1248
- * a deployed entity across catalysts from the old snapshots and /pointer-changes endpoint.
1249
- * @public
1250
- */
1251
- export declare type PointerChangesSyncDeployment = SnapshotSyncDeployment & {
1252
- localTimestamp: number;
1253
- };
1254
-
1255
- /**
1256
- * @public
1257
- */
1258
- export declare namespace PointerChangesSyncDeployment {
1259
- const schema: JSONSchema<PointerChangesSyncDeployment>;
1260
- const validate: ValidateFunction<PointerChangesSyncDeployment>;
1261
- }
1262
-
1263
- export declare enum PreviewCamera {
1264
- STATIC = "static",
1265
- INTERACTIVE = "interactive"
1266
- }
1267
-
1268
- /** @alpha */
1269
- export declare namespace PreviewCamera {
1270
- const schema: JSONSchema<PreviewCamera>;
1271
- const validate: ValidateFunction<PreviewCamera>;
1272
- }
1273
-
1274
- export declare type PreviewConfig = {
1275
- item?: WearableDefinition | EmoteDefinition;
1276
- wearables: WearableDefinition[];
1277
- bodyShape: BodyShape;
1278
- skin: string;
1279
- hair: string;
1280
- eyes: string;
1281
- zoom: number;
1282
- type: PreviewType;
1283
- face: boolean;
1284
- background: {
1285
- image?: string;
1286
- color: string;
1287
- transparent: boolean;
1288
- };
1289
- emote: PreviewEmote | null;
1290
- camera: PreviewCamera;
1291
- projection: PreviewProjection;
1292
- autoRotateSpeed: number;
1293
- centerBoundingBox: boolean;
1294
- fadeEffect: boolean;
1295
- showSceneBoundaries?: boolean;
1296
- showThumbnailBoundaries?: boolean;
1297
- offsetX: number;
1298
- offsetY: number;
1299
- offsetZ: number;
1300
- cameraX: number;
1301
- cameraY: number;
1302
- cameraZ: number;
1303
- wheelZoom: number;
1304
- wheelPrecision: number;
1305
- wheelStart: number;
1306
- };
1307
-
1308
- export declare enum PreviewEmote {
1309
- IDLE = "idle",
1310
- CLAP = "clap",
1311
- DAB = "dab",
1312
- DANCE = "dance",
1313
- FASHION = "fashion",
1314
- FASHION_2 = "fashion-2",
1315
- FASHION_3 = "fashion-3",
1316
- FASHION_4 = "fashion-4",
1317
- LOVE = "love",
1318
- MONEY = "money",
1319
- FIST_PUMP = "fist-pump",
1320
- HEAD_EXPLODE = "head-explode"
1321
- }
1322
-
1323
- /** @alpha */
1324
- export declare namespace PreviewEmote {
1325
- const schema: JSONSchema<PreviewEmote>;
1326
- const validate: ValidateFunction<PreviewEmote>;
1327
- }
1328
-
1329
- export declare enum PreviewEmoteEventType {
1330
- ANIMATION_PLAY = "animation_play",
1331
- ANIMATION_PAUSE = "animation_pause",
1332
- ANIMATION_LOOP = "animation_loop",
1333
- ANIMATION_END = "animation_end",
1334
- ANIMATION_PLAYING = "animation_playing"
1335
- }
1336
-
1337
- /** @alpha */
1338
- export declare namespace PreviewEmoteEventType {
1339
- const schema: JSONSchema<PreviewEmoteEventType>;
1340
- const validate: ValidateFunction<PreviewEmoteEventType>;
1341
- }
1342
-
1343
- export declare type PreviewMessagePayload<T extends PreviewMessageType> = T extends PreviewMessageType.READY ? null : T extends PreviewMessageType.LOAD ? null : T extends PreviewMessageType.ERROR ? {
1344
- message: string;
1345
- } : T extends PreviewMessageType.UPDATE ? {
1346
- options: PreviewOptions;
1347
- } : T extends PreviewMessageType.CONTROLLER_REQUEST ? {
1348
- id: string;
1349
- namespace: 'scene' | 'emote';
1350
- method: 'getScreenshot' | 'getMetrics' | 'changeZoom' | 'changeCameraPosition' | 'panCamera' | 'getLength' | 'isPlaying' | 'play' | 'pause' | 'stop' | 'goTo';
1351
- params: any[];
1352
- } : T extends PreviewMessageType.CONTROLLER_RESPONSE ? {
1353
- id: string;
1354
- ok: true;
1355
- result: any;
1356
- } | {
1357
- id: string;
1358
- ok: false;
1359
- error: string;
1360
- } : T extends PreviewMessageType.EMOTE_EVENT ? {
1361
- type: PreviewEmoteEventType;
1362
- payload: EmoteEventPayload<PreviewEmoteEventType>;
1363
- } : unknown;
1364
-
1365
- export declare enum PreviewMessageType {
1366
- READY = "ready",
1367
- LOAD = "load",
1368
- ERROR = "error",
1369
- UPDATE = "update",
1370
- CONTROLLER_REQUEST = "controller_request",
1371
- CONTROLLER_RESPONSE = "controller_response",
1372
- EMOTE_EVENT = "emote_event"
1373
- }
1374
-
1375
- /** @alpha */
1376
- export declare namespace PreviewMessageType {
1377
- const schema: JSONSchema<PreviewMessageType>;
1378
- const validate: ValidateFunction<PreviewMessageType>;
1379
- }
1380
-
1381
- /** @alpha */
1382
- export declare type PreviewOptions = {
1383
- contractAddress?: string | null;
1384
- tokenId?: string | null;
1385
- itemId?: string | null;
1386
- profile?: string | null;
1387
- bodyShape?: BodyShape | null;
1388
- type?: PreviewType | null;
1389
- skin?: string | null;
1390
- hair?: string | null;
1391
- eyes?: string | null;
1392
- urns?: string[] | null;
1393
- urls?: string[] | null;
1394
- base64s?: string[] | null;
1395
- blob?: WearableWithBlobs | EmoteWithBlobs | null;
1396
- zoom?: number | null;
1397
- emote?: PreviewEmote | null;
1398
- camera?: PreviewCamera | null;
1399
- projection?: PreviewProjection | null;
1400
- autoRotateSpeed?: number | null;
1401
- offsetX?: number | null;
1402
- offsetY?: number | null;
1403
- offsetZ?: number | null;
1404
- cameraX?: number | null;
1405
- cameraY?: number | null;
1406
- cameraZ?: number | null;
1407
- wheelZoom?: number | null;
1408
- wheelPrecision?: number | null;
1409
- wheelStart?: number | null;
1410
- background?: string | null;
1411
- disableBackground?: boolean | null;
1412
- disableAutoCenter?: boolean | null;
1413
- disableAutoRotate?: boolean | null;
1414
- disableFace?: boolean | null;
1415
- disableDefaultWearables?: boolean | null;
1416
- disableDefaultEmotes?: boolean | null;
1417
- disableFadeEffect?: boolean | null;
1418
- showSceneBoundaries?: boolean;
1419
- showThumbnailBoundaries?: boolean;
1420
- peerUrl?: string | null;
1421
- nftServerUrl?: string | null;
1422
- };
1423
-
1424
- export declare enum PreviewProjection {
1425
- ORTHOGRAPHIC = "orthographic",
1426
- PERSPECTIVE = "perspective"
1427
- }
1428
-
1429
- export declare namespace PreviewProjection {
1430
- const schema: JSONSchema<PreviewProjection>;
1431
- const validate: ValidateFunction<PreviewProjection>;
1432
- }
1433
-
1434
- /** @alpha */
1435
- export declare enum PreviewType {
1436
- TEXTURE = "texture",
1437
- WEARABLE = "wearable",
1438
- AVATAR = "avatar"
1439
- }
1440
-
1441
- /** @alpha */
1442
- export declare namespace PreviewType {
1443
- const schema: JSONSchema<PreviewType>;
1444
- const validate: ValidateFunction<PreviewType>;
1445
- }
1446
-
1447
- /**
1448
- * Profile containing one or multiple avatars
1449
- * @alpha
1450
- */
1451
- export declare type Profile = {
1452
- avatars: Avatar[];
1453
- };
1454
-
1455
- /**
1456
- * Profile
1457
- * @alpha
1458
- */
1459
- export declare namespace Profile {
1460
- const schema: JSONSchema<Profile>;
1461
- const validate: ValidateFunction<Profile>;
1462
- }
1463
-
1464
- /** @public */
1465
- declare enum ProjectType {
1466
- SCENE = "scene",
1467
- SMART_ITEM = "smart-item",
1468
- PORTABLE_EXPERIENCE = "portable-experience",
1469
- LIBRARY = "library"
1470
- }
1471
-
1472
- /** @public */
1473
- declare namespace ProjectType {
1474
- const schema: JSONSchema<ProjectType>;
1475
- const validate: ValidateFunction<ProjectType>;
1476
- }
1477
-
1478
- /**
1479
- * Different supported providers
1480
- * @alpha
1481
- */
1482
- export declare enum ProviderType {
1483
- INJECTED = "injected",
1484
- FORTMATIC = "formatic",
1485
- NETWORK = "network",
1486
- WALLET_CONNECT = "wallet_connect",
1487
- WALLET_CONNECT_V2 = "wallet_connect_v2",
1488
- WALLET_LINK = "wallet_link",
1489
- METAMASK_MOBILE = "metamask_mobile"
1490
- }
1491
-
1492
- /**
1493
- * @alpha
1494
- */
1495
- export declare namespace ProviderType {
1496
- const schema: JSONSchema<ProviderType>;
1497
- const validate: ValidateFunction<ProviderType>;
1498
- }
1499
-
1500
- export declare enum Rarity {
1501
- UNIQUE = "unique",
1502
- MYTHIC = "mythic",
1503
- LEGENDARY = "legendary",
1504
- EPIC = "epic",
1505
- RARE = "rare",
1506
- UNCOMMON = "uncommon",
1507
- COMMON = "common"
1508
- }
1509
-
1510
- export declare namespace Rarity {
1511
- const schema: JSONSchema<Rarity>;
1512
- const validate: ValidateFunction<Rarity>;
1513
- export function getMaxSupply(rarity: Rarity): number;
1514
- export function getColor(rarity: Rarity): string;
1515
- export function getGradient(rarity: Rarity): [string, string];
1516
- }
1517
-
1518
- /**
1519
- * A rental listing.
1520
- */
1521
- export declare type RentalListing = {
1522
- /** The ID of the rental listing in the signature server */
1523
- id: string;
1524
- /** The NFT token ID */
1525
- nftId: string;
1526
- /** The category of the NFT being rented */
1527
- category: NFTCategory;
1528
- /** The blockchain search text of the NFT asset */
1529
- searchText: string;
1530
- /** The network where the asset being rented is on */
1531
- network: Network;
1532
- /** The chain id where the asset being rented is on */
1533
- chainId: ChainId;
1534
- /** UTC timestamp in milliseconds since epoch of the signature's expiration */
1535
- expiration: number;
1536
- /** A hex string representation of the rental signature */
1537
- signature: string;
1538
- /** A string representation of the nonces, the first nonce is the contract's nonce, the second one is the signer's nonce and the third is the asset's nonce */
1539
- nonces: string[];
1540
- /** The NFT token id */
1541
- tokenId: string;
1542
- /** The contract address of the NFT */
1543
- contractAddress: string;
1544
- /** The contract address of the rentals contract */
1545
- rentalContractAddress: string;
1546
- /** The address of the lessor */
1547
- lessor: string | null;
1548
- /** The address of the tenant */
1549
- tenant: string | null;
1550
- /** The status of the rental */
1551
- status: RentalStatus;
1552
- /** UTC timestamp in milliseconds since epoch of the time the signature was created */
1553
- createdAt: number;
1554
- /** UTC timestamp in milliseconds since epoch of the time the signature was updated */
1555
- updatedAt: number;
1556
- /** UTC timestamp in milliseconds since epoch of the time the rental started */
1557
- startedAt: number | null;
1558
- /** The periods of the rental */
1559
- periods: RentalListingPeriod[];
1560
- /** The target address that can use the signature. If no target is wanted, the zero address will be used */
1561
- target: string;
1562
- /** The amount of days the land was rented for. NULL if it's in open or cancel status */
1563
- rentedDays: number | null;
1564
- };
1565
-
1566
- /**
1567
- * The input that is required to create a rental listing.
1568
- */
1569
- export declare type RentalListingCreation = {
1570
- /** The network where the asset being rented is on */
1571
- network: Network;
1572
- /** The chain id where the asset being rented is on */
1573
- chainId: ChainId;
1574
- /** UTC timestamp in milliseconds since epoch of the signature's expiration */
1575
- expiration: number;
1576
- /** A hex string representation of the rental signature */
1577
- signature: string;
1578
- /** The NFT token id */
1579
- tokenId: string;
1580
- /** The contract address of the NFT */
1581
- contractAddress: string;
1582
- /** The contract address of the rentals contract */
1583
- rentalContractAddress: string;
1584
- /** A string representation of the nonces, the first nonce is the contract's nonce, the second one is the signer's nonce and the third is the asset's nonce */
1585
- nonces: string[];
1586
- /** The periods of the rental */
1587
- periods: PeriodCreation[];
1588
- /** The target address that can use the signature. If no target is wanted, use the zero address */
1589
- target: string;
1590
- };
1591
-
1592
- export declare namespace RentalListingCreation {
1593
- const schema: JSONSchema<RentalListingCreation>;
1594
- const validate: ValidateFunction<RentalListingCreation>;
1595
- }
1596
-
1597
- /**
1598
- * A period of a rental listing.
1599
- */
1600
- export declare type RentalListingPeriod = {
1601
- /** The minimum amount of days of the period */
1602
- minDays: number;
1603
- /** The maximum amount of days of the period */
1604
- maxDays: number;
1605
- /** The price per day */
1606
- pricePerDay: string;
1607
- };
1608
-
1609
- /**
1610
- * All the possible parameters that a rental can be filtered for.
1611
- */
1612
- export declare type RentalsListingsFilterBy = {
1613
- /** The category of the NFT being rented */
1614
- category?: RentalsListingsFilterByCategory;
1615
- /** The blockchain search text of the NFT asset */
1616
- text?: string;
1617
- /** The listing status or statuses of the NFT asset rental */
1618
- status?: RentalStatus | RentalStatus[];
1619
- /** The periods of the rental listings the NFT assets where put for rent */
1620
- periods?: RentalsListingsFilterByPeriod;
1621
- /** The address of the lessor who put the NFT asset for rent */
1622
- lessor?: string;
1623
- /** The address of the tenant who rented the NFT asset */
1624
- tenant?: string;
1625
- /** The token id of the NFT asset that was put for rent */
1626
- tokenId?: string;
1627
- /** The contract address of the NFT asset that was put for rent */
1628
- contractAddresses?: string[];
1629
- /** The network of the NFT that was put for rent */
1630
- network?: Network;
1631
- /** The NFT ids of the NFT assets that were put for rent */
1632
- nftIds?: string[];
1633
- /** The UTC timestamp in milliseconds since epoch to get the rentals that were updated after it */
1634
- updatedAfter?: number;
1635
- /** The target address of the rental. The default value is the address zero (everyone). */
1636
- target?: string;
1637
- /** The minimum price per day of the rental */
1638
- minPricePerDay?: string;
1639
- /** The maximun price per day of the rental */
1640
- maxPricePerDay?: string;
1641
- /** The minimum amount of parcels to a plaza */
1642
- minDistanceToPlaza?: number;
1643
- /**
1644
- * The maxiumum amount of parcels to a plaza. If this value is more than 10, it will only bring those that
1645
- * are less than 10 as those are the ones which distances were calculated
1646
- */
1647
- maxDistanceToPlaza?: number;
1648
- /** The minimum amount of parcels in the estate */
1649
- minEstateSize?: number;
1650
- /** The maxiumum amount of parcels in the estate */
1651
- maxEstateSize?: number;
1652
- /** If true, it will fetch all parcels and estates that are next to a road */
1653
- adjacentToRoad?: boolean;
1654
- /** The days that a rental should be available */
1655
- rentalDays?: number[];
1656
- };
1657
-
1658
- /**
1659
- * All the possible NFT categories of a rental listing.
1660
- */
1661
- export declare enum RentalsListingsFilterByCategory {
1662
- PARCEL = "parcel",
1663
- ESTATE = "estate"
1664
- }
1665
-
1666
- /**
1667
- * All the possible parameters that a rental can be filtered for based on their periods.
1668
- */
1669
- export declare type RentalsListingsFilterByPeriod = {
1670
- /** The minimum amount of days of the period */
1671
- minDays: number;
1672
- /** The maximum amount of days of the period */
1673
- maxDays: number;
1674
- /** The price per day */
1675
- pricePerDay?: number;
1676
- };
1677
-
1678
- /**
1679
- * All the possible sort directions.
1680
- */
1681
- export declare enum RentalsListingSortDirection {
1682
- ASC = "asc",
1683
- DESC = "desc"
1684
- }
1685
-
1686
- /**
1687
- * All the possible parameters that a rental listing can be sorted by.
1688
- */
1689
- export declare enum RentalsListingsSortBy {
1690
- /** Order by created at of the listing's metadata */
1691
- LAND_CREATION_DATE = "land_creation_date",
1692
- /** Order by created at of the listing */
1693
- RENTAL_LISTING_DATE = "rental_listing_date",
1694
- /** Order by rented at of the listing */
1695
- RENTAL_DATE = "rented_date",
1696
- /** Order by search text of the listing's metadata */
1697
- NAME = "name",
1698
- /** Order by maximum rental price per day of the listing */
1699
- MAX_RENTAL_PRICE = "max_rental_price",
1700
- /** Order by minimum rental price per day of the listing */
1701
- MIN_RENTAL_PRICE = "min_rental_price"
1702
- }
1703
-
1704
- /**
1705
- * All the possible rental statuses.
1706
- * (This will be merged into ListingStatus eventually)
1707
- */
1708
- export declare enum RentalStatus {
1709
- OPEN = "open",
1710
- CANCELLED = "cancelled",
1711
- EXECUTED = "executed",
1712
- CLAIMED = "claimed"
1713
- }
1714
-
1715
- export declare type Sale = {
1716
- id: string;
1717
- type: SaleType;
1718
- buyer: string;
1719
- seller: string;
1720
- itemId: string | null;
1721
- tokenId: string;
1722
- contractAddress: string;
1723
- price: string;
1724
- timestamp: number;
1725
- txHash: string;
1726
- network: Network;
1727
- chainId: ChainId;
1728
- };
1729
-
1730
- export declare namespace Sale {
1731
- const schema: JSONSchema<Sale>;
1732
- const validate: ValidateFunction<Sale>;
1733
- }
1734
-
1735
- export declare type SaleFilters = {
1736
- first?: number;
1737
- skip?: number;
1738
- sortBy?: SaleSortBy;
1739
- type?: SaleType;
1740
- categories?: NFTCategory[];
1741
- buyer?: string;
1742
- seller?: string;
1743
- contractAddress?: string;
1744
- itemId?: string;
1745
- tokenId?: string;
1746
- from?: number;
1747
- to?: number;
1748
- minPrice?: string;
1749
- maxPrice?: string;
1750
- network?: Network;
1751
- };
1752
-
1753
- export declare enum SaleSortBy {
1754
- RECENTLY_SOLD = "recently_sold",
1755
- MOST_EXPENSIVE = "most_expensive"
1756
- }
1757
-
1758
- export declare enum SaleType {
1759
- ORDER = "order",
1760
- BID = "bid",
1761
- MINT = "mint"
1762
- }
1763
-
1764
- export declare namespace SaleType {
1765
- const schema: JSONSchema<SaleType>;
1766
- const validate: ValidateFunction<SaleType>;
1767
- }
1768
-
1769
- /** @alpha */
1770
- export declare type Scene = DisplayableDeployment & {
1771
- main: string;
1772
- scene: SceneParcels;
1773
- display?: {
1774
- title?: string;
1775
- /** @deprecated use menuBarIcon instead */
1776
- favicon?: string;
1777
- description?: string;
1778
- navmapThumbnail?: string;
1779
- };
1780
- owner?: string;
1781
- contact?: {
1782
- name?: string;
1783
- email?: string;
1784
- im?: string;
1785
- url?: string;
1786
- };
1787
- tags?: string[];
1788
- source?: Source;
1789
- spawnPoints?: SpawnPoint[];
1790
- requiredPermissions?: string[];
1791
- featureToggles?: FeatureToggles;
1792
- worldConfiguration?: WorldConfiguration;
1793
- dreamSpaceConfiguration?: DreamSpaceConfiguration;
1794
- allowedMediaHostnames?: string[];
1795
- };
1796
-
1797
- /** @alpha */
1798
- export declare namespace Scene {
1799
- const schema: JSONSchema<Scene>;
1800
- const validate: ValidateFunction<Scene>;
1801
- }
1802
-
1803
- /** @public */
1804
- declare const SCENE_UPDATE = "SCENE_UPDATE";
1805
-
1806
- /** @alpha */
1807
- export declare type SceneParcels = {
1808
- base: string;
1809
- parcels: string[];
1810
- };
1811
-
1812
- /** @alpha */
1813
- export declare namespace SceneParcels {
1814
- const schema: JSONSchema<SceneParcels>;
1815
- const schemaValidator: ValidateFunction<SceneParcels>;
1816
- const validate: ValidateFunction<SceneParcels>;
1817
- }
1818
-
1819
- /** @public */
1820
- declare type SceneUpdate = {
1821
- type: typeof SCENE_UPDATE;
1822
- payload: {
1823
- sceneId: string;
1824
- sceneType: string;
1825
- };
1826
- };
1827
-
1828
- /** @public */
1829
- declare namespace SceneUpdate {
1830
- const schema: JSONSchema<SceneUpdate>;
1831
- const validate: ValidateFunction<SceneUpdate>;
1832
- }
1833
-
1834
- declare namespace sdk {
1835
- export {
1836
- Actions,
1837
- Messages,
1838
- SCENE_UPDATE,
1839
- SceneUpdate,
1840
- UPDATE,
1841
- Update,
1842
- ProjectType,
1843
- WearableJson
1844
- }
1845
- }
1846
- export { sdk }
1847
-
1848
- export declare const sendMessage: <T extends PreviewMessageType>(window: {
1849
- postMessage(event: any, targetOrigin: string): any;
1850
- }, type: T, payload: PreviewMessagePayload<T>, targetOrigin?: string) => void;
1851
-
1852
- declare type SinglePosition = {
1853
- x: number;
1854
- y: number;
1855
- z: number;
1856
- };
1857
-
1858
- /** @alpha */
1859
- export declare type SkyboxConfiguration = {
1860
- fixedTime?: number;
1861
- textures?: string[];
1862
- };
1863
-
1864
- /**
1865
- * Snapshots
1866
- * @alpha
1867
- */
1868
- export declare type Snapshots = {
1869
- face256: IPFSv2;
1870
- body: IPFSv2;
1871
- };
1872
-
1873
- /**
1874
- * Snapshots
1875
- * @alpha
1876
- */
1877
- export declare namespace Snapshots {
1878
- const schema: JSONSchema<Snapshots>;
1879
- const validate: ValidateFunction<Snapshots>;
1880
- }
1881
-
1882
- /**
1883
- * This type describes deployment + AuthChain needed to synchronize
1884
- * a deployed entity across catalysts from the snapshots.
1885
- * @public
1886
- */
1887
- export declare type SnapshotSyncDeployment = {
1888
- entityId: IPFSv1 | IPFSv2;
1889
- entityType: string;
1890
- pointers: string[];
1891
- authChain: AuthChain;
1892
- entityTimestamp: number;
1893
- };
1894
-
1895
- /**
1896
- * @public
1897
- */
1898
- export declare namespace SnapshotSyncDeployment {
1899
- const schema: JSONSchema<SnapshotSyncDeployment>;
1900
- const validate: ValidateFunction<SnapshotSyncDeployment>;
1901
- }
1902
-
1903
- /** @alpha */
1904
- export declare type Source = {
1905
- version?: number;
1906
- origin: string;
1907
- projectId: string;
1908
- point?: {
1909
- x: number;
1910
- y: number;
1911
- };
1912
- rotation?: 'north' | 'east' | 'south' | 'west';
1913
- layout?: {
1914
- rows: number;
1915
- cols: number;
1916
- };
1917
- isEmpty?: boolean;
1918
- };
1919
-
1920
- /** @alpha */
1921
- export declare namespace Source {
1922
- const schema: JSONSchema<Source>;
1923
- const validate: ValidateFunction<Source>;
1924
- }
1925
-
1926
- /** @alpha */
1927
- export declare type SpawnPoint = {
1928
- name?: string;
1929
- position: SinglePosition | MultiPosition;
1930
- default?: boolean;
1931
- cameraTarget?: SinglePosition;
1932
- };
1933
-
1934
- /** @alpha */
1935
- export declare namespace SpawnPoint {
1936
- const schema: JSONSchema<SpawnPoint>;
1937
- const validate: ValidateFunction<SpawnPoint>;
1938
- }
1939
-
1940
- export declare type StandardProps = {
1941
- collectionAddress: string;
1942
- rarity: Rarity;
1943
- };
1944
-
1945
- export declare type Store = {
1946
- id: string;
1947
- owner: string;
1948
- description: string;
1949
- links: {
1950
- name: string;
1951
- url: string;
1952
- }[];
1953
- images: {
1954
- name: string;
1955
- file: string;
1956
- }[];
1957
- version: number;
1958
- };
1959
-
1960
- export declare namespace Store {
1961
- const schema: JSONSchema<Store>;
1962
- const validate: ValidateFunction<Store>;
1963
- }
1964
-
1965
- export declare type SyncDeployment = SnapshotSyncDeployment | PointerChangesSyncDeployment;
1966
-
1967
- export declare type ThirdPartyProps = {
1968
- merkleProof: MerkleProof;
1969
- content: Record<string, string>;
1970
- };
1971
-
1972
- /** @public @deprecated */
1973
- declare const UPDATE = "update";
1974
-
1975
- /** @public @deprecated */
1976
- declare type Update = {
1977
- type: typeof UPDATE;
1978
- };
1979
-
1980
- /** @public @deprecated */
1981
- declare namespace Update {
1982
- const schema: JSONSchema<Update>;
1983
- const validate: ValidateFunction<Update>;
1984
- }
1985
-
1986
- /**
1987
- * This type is a subset of AJV's ValidateFunction, it exists to make
1988
- * .d.ts bundles smaller and to not expose all of AJV context to the
1989
- * world.
1990
- * @public
1991
- */
1992
- export declare interface ValidateFunction<T = unknown> {
1993
- (this: any, data: any, dataCxt?: any): data is T;
1994
- errors?: null | ErrorObject[];
1995
- }
1996
-
1997
- /**
1998
- * Validates a type with a schema in a functional way.
1999
- * @public
2000
- */
2001
- export declare function validateType<T>(theType: Pick<AbstractTypedSchema<T>, 'validate'>, value: T): boolean;
2002
-
2003
- /**
2004
- * World Range
2005
- * @alpha
2006
- */
2007
- export declare type ValidWorldRange = {
2008
- xMin: number;
2009
- yMin: number;
2010
- xMax: number;
2011
- yMax: number;
2012
- };
2013
-
2014
- /** @alpha */
2015
- export declare type Wearable = BaseItem & {
2016
- data: {
2017
- replaces: WearableCategory[];
2018
- hides: WearableCategory[];
2019
- tags: string[];
2020
- representations: WearableRepresentation[];
2021
- category: WearableCategory;
2022
- };
2023
- } & (StandardProps | ThirdPartyProps);
2024
-
2025
- /** @alpha */
2026
- export declare namespace Wearable {
2027
- const schema: JSONSchema<Wearable>;
2028
- /**
2029
- * Validates that the wearable metadata complies with the standard or third party wearable, and doesn't have repeated locales.
2030
- * Some fields are defined as optional but those are validated to be present as standard XOR third party:
2031
- * Standard Wearables should contain:
2032
- * - collectionAddress
2033
- * - rarity
2034
- * Third Party Wearables should contain:
2035
- * - merkleProof
2036
- * - content
2037
- */
2038
- const validate: ValidateFunction<Wearable>;
2039
- }
2040
-
2041
- export declare enum WearableCategory {
2042
- EYEBROWS = "eyebrows",
2043
- EYES = "eyes",
2044
- FACIAL_HAIR = "facial_hair",
2045
- HAIR = "hair",
2046
- HEAD = "head",
2047
- BODY_SHAPE = "body_shape",
2048
- MOUTH = "mouth",
2049
- UPPER_BODY = "upper_body",
2050
- LOWER_BODY = "lower_body",
2051
- FEET = "feet",
2052
- EARRING = "earring",
2053
- EYEWEAR = "eyewear",
2054
- HAT = "hat",
2055
- HELMET = "helmet",
2056
- MASK = "mask",
2057
- TIARA = "tiara",
2058
- TOP_HEAD = "top_head",
2059
- SKIN = "skin"
2060
- }
2061
-
2062
- export declare namespace WearableCategory {
2063
- const schema: JSONSchema<WearableCategory>;
2064
- const validate: ValidateFunction<WearableCategory>;
2065
- }
2066
-
2067
- /** @alpha */
2068
- export declare type WearableDefinition = Omit<Wearable, 'data'> & {
2069
- data: Omit<Wearable['data'], 'representations'> & {
2070
- representations: WearableRepresentationDefinition[];
2071
- };
2072
- };
2073
-
2074
- export declare enum WearableGender {
2075
- MALE = "male",
2076
- FEMALE = "female"
2077
- }
2078
-
2079
- export declare namespace WearableGender {
2080
- const schema: JSONSchema<WearableGender>;
2081
- const validate: ValidateFunction<WearableGender>;
2082
- }
2083
-
2084
- /**
2085
- * @alpha
2086
- */
2087
- export declare type WearableId = string;
2088
-
2089
- /**
2090
- * @alpha
2091
- */
2092
- declare type WearableJson = Pick<Wearable, 'data' | 'name' | 'description'> & {
2093
- rarity: Rarity;
2094
- };
2095
-
2096
- /**
2097
- * @alpha
2098
- */
2099
- declare namespace WearableJson {
2100
- const schema: JSONSchema<WearableJson>;
2101
- const validate: ValidateFunction<WearableJson>;
2102
- }
2103
-
2104
- /** @alpha */
2105
- export declare type WearableRepresentation = {
2106
- bodyShapes: BodyShape[];
2107
- mainFile: string;
2108
- contents: string[];
2109
- overrideHides: WearableCategory[];
2110
- overrideReplaces: WearableCategory[];
2111
- };
2112
-
2113
- /** @alpha */
2114
- export declare namespace WearableRepresentation {
2115
- const schema: JSONSchema<WearableRepresentation>;
2116
- const validate: ValidateFunction<WearableRepresentation>;
2117
- }
2118
-
2119
- /** @alpha */
2120
- export declare type WearableRepresentationDefinition = Omit<WearableRepresentation, 'contents'> & {
2121
- contents: {
2122
- key: string;
2123
- url: string;
2124
- }[];
2125
- };
2126
-
2127
- /** @alpha */
2128
- export declare type WearableRepresentationWithBlobs = Omit<WearableRepresentationDefinition, 'contents'> & {
2129
- contents: {
2130
- key: string;
2131
- blob: any;
2132
- }[];
2133
- };
2134
-
2135
- /** @alpha */
2136
- export declare type WearableWithBlobs = Omit<WearableDefinition, 'data'> & {
2137
- data: Omit<WearableDefinition['data'], 'representations'> & {
2138
- representations: WearableRepresentationWithBlobs[];
2139
- };
2140
- };
2141
-
2142
- /**
2143
- * World
2144
- * @alpha
2145
- */
2146
- export declare type World = {
2147
- validWorldRanges: Array<ValidWorldRange>;
2148
- };
2149
-
2150
- /**
2151
- * @alpha
2152
- */
2153
- export declare namespace World {
2154
- const schema: JSONSchema<World>;
2155
- const validate: ValidateFunction<World>;
2156
- }
2157
-
2158
- /**
2159
- * @deprecated Use `DreamSpaceConfiguration` instead.
2160
- * @alpha
2161
- */
2162
- export declare type WorldConfiguration = {
2163
- name?: string;
2164
- /** @alpha @deprecated Use `skyboxConfig.fixedTime` instead */
2165
- skybox?: number;
2166
- /** @alpha @deprecated Use `miniMapConfig.visible` instead */
2167
- minimapVisible?: boolean;
2168
- miniMapConfig?: MiniMapConfiguration;
2169
- skyboxConfig?: SkyboxConfiguration;
2170
- fixedAdapter?: string;
2171
- placesConfig?: {
2172
- optOut?: boolean;
2173
- };
2174
- };
2175
-
2176
- /**
2177
- * @deprecated Use `DreamSpaceConfiguration` instead.
2178
- * @alpha
2179
- */
2180
- export declare namespace WorldConfiguration {
2181
- const schema: JSONSchema<WorldConfiguration>;
2182
- const validate: ValidateFunction<WorldConfiguration>;
2183
- }
2184
-
2185
- export { }