ghost-portal/packages/apps-config/src/api/spec/unique.ts
Greg Zaitsev cb7e0b9ba4
Add unique network types, logo, and colors (#4693)
* Add Unique Network types, logo, and color.

* Debug Unique colors and logos

* Lint unique types

* Fix unique types

* Lint unique types
2021-02-18 14:13:43 +01:00

118 lines
3.1 KiB
TypeScript

// Copyright 2017-2021 @polkadot/apps-config authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { OverrideBundleDefinition } from '@polkadot/types/types';
// structs need to be in order
/* eslint-disable sort-keys */
const definitions: OverrideBundleDefinition = {
types: [
{
// on all versions
minmax: [0, undefined],
types: {
AccessMode: {
_enum: ['Normal', 'WhiteList']
},
DecimalPoints: 'u8',
CollectionMode: {
_enum: {
Invalid: null,
NFT: null,
Fungible: 'DecimalPoints',
ReFungible: null
}
},
Ownership: {
Owner: 'AccountId',
Fraction: 'u128'
},
FungibleItemType: {
Value: 'u128'
},
NftItemType: {
Owner: 'AccountId',
ConstData: 'Vec<u8>',
VariableData: 'Vec<u8>'
},
ReFungibleItemType: {
Owner: 'Vec<Ownership<AccountId>>',
ConstData: 'Vec<u8>',
VariableData: 'Vec<u8>'
},
CollectionType: {
Owner: 'AccountId',
Mode: 'CollectionMode',
Access: 'AccessMode',
DecimalPoints: 'DecimalPoints',
Name: 'Vec<u16>',
Description: 'Vec<u16>',
TokenPrefix: 'Vec<u8>',
MintMode: 'bool',
OffchainSchema: 'Vec<u8>',
SchemaVersion: 'SchemaVersion',
Sponsor: 'AccountId',
SponsorConfirmed: 'bool',
Limits: 'CollectionLimits',
VariableOnChainSchema: 'Vec<u8>',
ConstOnChainSchema: 'Vec<u8>'
},
RawData: 'Vec<u8>',
Address: 'AccountId',
LookupSource: 'AccountId',
Weight: 'u64',
CreateNftData: {
const_data: 'Vec<u8>',
variable_data: 'Vec<u8>'
},
CreateFungibleData: {
value: 'u128'
},
CreateReFungibleData: {
const_data: 'Vec<u8>',
variable_data: 'Vec<u8>',
pieces: 'u128'
},
CreateItemData: {
_enum: {
NFT: 'CreateNftData',
Fungible: 'CreateFungibleData',
ReFungible: 'CreateReFungibleData'
}
},
SchemaVersion: {
_enum: [
'ImageURL',
'Unique'
]
},
CollectionId: 'u32',
TokenId: 'u32',
ChainLimits: {
CollectionNumbersLimit: 'u32',
AccountTokenOwnershipLimit: 'u32',
CollectionAdminsLimit: 'u64',
CustomDataLimit: 'u32',
NftSponsorTimeout: 'u32',
FungibleSponsorTimeout: 'u32',
RefungibleSponsorTimeout: 'u32',
OffchainSchemaLimit: 'u32',
VariableOnChainSchemaLimit: 'u32',
ConstOnChainSchemaLimit: 'u32'
},
CollectionLimits: {
AccountTokenOwnershipLimit: 'u32',
SponsoredMintSize: 'u32',
TokenLimit: 'u32',
SponsorTimeout: 'u32',
OwnerCanTransfer: 'bool',
OwnerCanDestroy: 'bool'
}
}
}
]
};
export default definitions;