// Copyright 2017-2021 @polkadot/types authors & contributors // SPDX-License-Identifier: Apache-2.0 // order important in structs... :) /* eslint-disable sort-keys */ import type { Definitions } from '../../types'; import hrmpTypes from './hrmp'; import slotTypes from './slots'; // proposeParachain const proposeTypes = { ParachainProposal: { proposer: 'AccountId', genesisHead: 'HeadData', validators: 'Vec', name: 'Bytes', balance: 'Balance' }, RegisteredParachainInfo: { validators: 'Vec', proposer: 'AccountId' } }; export default { rpc: {}, types: { ...proposeTypes, ...hrmpTypes, ...slotTypes, AbridgedCandidateReceipt: { parachainIndex: 'ParaId', relayParent: 'Hash', headData: 'HeadData', collator: 'CollatorId', signature: 'CollatorSignature', povBlockHash: 'Hash', commitments: 'CandidateCommitments' }, AbridgedHostConfiguration: { maxCodeSize: 'u32', maxHeadDataSize: 'u32', maxUpwardQueueCount: 'u32', maxUpwardQueueSize: 'u32', maxUpwardMessageSize: 'u32', maxUpwardMessageNumPerCandidate: 'u32', hrmpMaxMessageNumPerCandidate: 'u32', validationUpgradeFrequency: 'BlockNumber', validationUpgradeDelay: 'BlockNumber' }, AbridgedHrmpChannel: { maxCapacity: 'u32', maxTotalSize: 'u32', maxMessageSize: 'u32', msgCount: 'u32', totalSize: 'u32', mqcHead: 'Option' }, AssignmentId: 'AccountId', AssignmentKind: { _enum: { Parachain: 'Null', Parathread: '(CollatorId, u32)' } }, AttestedCandidate: { candidate: 'AbridgedCandidateReceipt', validityVotes: 'Vec', validatorIndices: 'BitVec' }, AuthorityDiscoveryId: 'AccountId', AvailabilityBitfield: 'BitVec', AvailabilityBitfieldRecord: { bitfield: 'AvailabilityBitfield', submittedTt: 'BlockNumber' }, BackedCandidate: { candidate: 'CommittedCandidateReceipt', validityVotes: 'Vec', validatorIndices: 'BitVec' }, BufferedSessionChange: { applyAt: 'BlockNumber', validators: 'Vec', queued: 'Vec', sessionIndex: 'SessionIndex' }, CandidateCommitments: { upwardMessages: 'Vec', horizontalMessages: 'Vec', newValidationCode: 'Option', headData: 'HeadData', processedDownwardMessages: 'u32', hrmpWatermark: 'BlockNumber' }, CandidateDescriptor: { paraId: 'ParaId', relayParent: 'Hash', collatorId: 'CollatorId', persistedValidationDataHash: 'Hash', povHash: 'Hash', erasureRoot: 'Hash', signature: 'CollatorSignature', paraHead: 'Hash' }, CandidateHash: 'Hash', CandidatePendingAvailability: { core: 'CoreIndex', hash: 'CandidateHash', descriptor: 'CandidateDescriptor', availabilityVotes: 'BitVec', backers: 'BitVec', relayParentNumber: 'BlockNumber', backedInNumber: 'BlockNumber' }, CandidateReceipt: { descriptor: 'CandidateDescriptor', commitmentsHash: 'Hash' }, CollatorId: 'H256', CollatorSignature: 'Signature', CommittedCandidateReceipt: { descriptor: 'CandidateDescriptor', commitments: 'CandidateCommitments' }, CoreAssignment: { core: 'CoreIndex', paraId: 'ParaId', kind: 'AssignmentKind', groupIdx: 'GroupIndex' }, CoreIndex: 'u32', CoreOccupied: { _enum: { Parathread: 'ParathreadEntry', Parachain: 'Null' } }, DoubleVoteReport: { identity: 'ValidatorId', first: '(Statement, ValidatorSignature)', second: '(Statement, ValidatorSignature)', proof: 'MembershipProof', signingContext: 'SigningContext' }, DownwardMessage: 'Bytes', GroupIndex: 'u32', GlobalValidationSchedule: { maxCodeSize: 'u32', maxHeadDataSize: 'u32', blockNumber: 'BlockNumber' }, HeadData: 'Bytes', HostConfiguration: { maxCodeSize: 'u32', maxHeadDataSize: 'u32', maxUpwardQueueCount: 'u32', maxUpwardQueueSize: 'u32', maxUpwardMessageSize: 'u32', maxUpwardMessageNumPerCandidate: 'u32', hrmpMaxMessageNumPerCandidate: 'u32', validationUpgradeFrequency: 'BlockNumber', validationUpgradeDelay: 'BlockNumber', maxPovSize: 'u32', maxDownwardMessageSize: 'u32', preferredDispatchableUpwardMessagesStepWeight: 'Weight', hrmpMaxParachainOutboundChannels: 'u32', hrmpMaxParathreadOutboundChannels: 'u32', hrmpOpenRequestTtl: 'u32', hrmpSenderDeposit: 'Balance', hrmpRecipientDeposit: 'Balance', hrmpChannelMaxCapacity: 'u32', hrmpChannelMaxTotalSize: 'u32', hrmpMaxParachainInboundChannels: 'u32', hrmpMaxParathreadInboundChannels: 'u32', hrmpChannelMaxMessageSize: 'u32', acceptancePeriod: 'BlockNumber', parathreadCores: 'u32', parathreadRetries: 'u32', groupRotationFrequency: 'BlockNumber', chainAvailabilityPeriod: 'BlockNumber', threadAvailabilityPeriod: 'BlockNumber', schedulingLookahead: 'u32', maxValidatorsPerCore: 'Option', maxValidators: 'Option', disputePeriod: 'SessionIndex', noShowSlots: 'u32', nDelayTranches: 'u32', zerothDelayTrancheWidth: 'u32', neededApprovals: 'u32', relayVrfModuloSamples: 'u32' }, InboundDownwardMessage: { pubSentAt: 'BlockNumber', pubMsg: 'DownwardMessage' }, InboundHrmpMessage: { sentAt: 'BlockNumber', data: 'Bytes' }, InboundHrmpMessages: 'Vec', LocalValidationData: { parentHead: 'HeadData', balance: 'Balance', codeUpgradeAllowed: 'Option' }, MessageIngestionType: { downwardMessages: 'Vec', horizontalMessages: 'BTreeMap' }, MessageQueueChain: 'RelayChainHash', OutboundHrmpMessage: { recipient: 'u32', data: 'Bytes' }, ParachainDispatchOrigin: { _enum: ['Signed', 'Parachain', 'Root'] }, ParachainInherentData: { validationData: 'PersistedValidationData', relayChainState: 'StorageProof', downwardMessages: 'Vec', horizontalMessages: 'BTreeMap' }, ParaGenesisArgs: { genesisHead: 'Bytes', validationCode: 'Bytes', parachain: 'bool' }, ParaId: 'u32', ParaInfo: { scheduling: 'Scheduling' }, ParaLifecycle: { _enum: ['Onboarding', 'Parathread', 'Parachain', 'UpgradingToParachain', 'DowngradingToParathread', 'OutgoingParathread', 'OutgoingParachain'] }, ParaPastCodeMeta: { upgradeTimes: 'Vec', lastPruned: 'Option' }, ParaScheduling: { _enum: ['Always', 'Dynamic'] }, ParathreadClaim: '(ParaId, CollatorId)', ParathreadClaimQueue: { queue: 'Vec', nextCoreOffset: 'u32' }, ParathreadEntry: { claim: 'ParathreadClaim', retries: 'u32' }, ParaValidatorIndex: 'u32', PersistedValidationData: { parentHead: 'HeadData', relayParentNumber: 'RelayChainBlockNumber', relayParentStorageRoot: 'Hash', maxPovSize: 'u32' }, RelayChainBlockNumber: 'u32', RelayChainHash: 'Hash', QueuedParathread: { claim: 'ParathreadEntry', coreOffset: 'u32' }, Remark: '[u8; 32]', Retriable: { _enum: { Never: 'Null', WithRetries: 'u32' } }, Scheduling: { _enum: ['Always', 'Dynamic'] }, SessionInfo: { validators: 'Vec', discoveryKeys: 'Vec', assignmentKeys: 'Vec', validatorGroups: 'Vec', nCores: 'u32', zerothDelayTrancheWidth: 'u32', relayVrfModuloSamples: 'u32', nDelayTranches: 'u32', noShowSlots: 'u32', neededApprovals: 'u32' }, SessionInfoValidatorGroup: 'Vec', SignedAvailabilityBitfield: { payload: 'BitVec', validatorIndex: 'ParaValidatorIndex', signature: 'ValidatorSignature' }, SignedAvailabilityBitfields: 'Vec', SigningContext: { sessionIndex: 'SessionIndex', parentHash: 'Hash' }, Statement: { _enum: { Never: 'Null', // starts at 1 Candidate: 'Hash', Valid: 'Hash', Invalid: 'Hash' } }, TransientValidationData: { maxCodeSize: 'u32', maxHeadDataSize: 'u32', balance: 'Balance', codeUpgradeAllowed: 'Option', dmqLength: 'u32' }, UpwardMessage: 'Bytes', ValidationFunctionParams: { maxCodeSize: 'u32', relayChainHeight: 'RelayChainBlockNumber', codeUpgradeAllowed: 'Option' }, ValidationCode: 'Bytes', ValidationData: { persisted: 'PersistedValidationData', transient: 'TransientValidationData' }, ValidationDataType: { validationData: 'ValidationData', relayChainState: 'Vec' }, ValidatorSignature: 'Signature', ValidityAttestation: { _enum: { Never: 'Null', // starts at 1 Implicit: 'ValidatorSignature', Explicit: 'ValidatorSignature' } }, VersionedXcm: { _enum: { V0: 'Xcm' } }, WithdrawAsset: { assets: 'Vec', effects: 'Vec' }, ReserveAssetDeposit: { assets: 'Vec', effects: 'Vec' }, TeleportAsset: { assets: 'Vec', effects: 'Vec' }, Balances: { queryId: 'Compact', assets: 'Vec' }, Transact: { originType: 'OriginKind', call: 'Vec' }, RelayTo: { dest: 'MultiLocation', inner: 'VersionedXcm' }, RelayedFrom: { superorigin: 'MultiLocation', inner: 'VersionedXcm' }, Xcm: { _enum: { WithdrawAsset: 'WithdrawAsset', ReserveAssetDeposit: 'ReserveAssetDeposit', TeleportAsset: 'TeleportAsset', Balances: 'Balances', Transact: 'Transact', RelayTo: 'RelayTo', RelayedFrom: 'RelayedFrom' } }, XcmError: { _enum: ['Undefined', 'Unimplemented', 'UnhandledXcmVersion', 'UnhandledXcmMessage', 'UnhandledEffect', 'EscalationOfPrivilege', 'UntrustedReserveLocation', 'UntrustedTeleportLocation', 'DestinationBufferOverflow', 'CannotReachDestination', 'MultiLocationFull', 'FailedToDecode', 'BadOrigin'] }, XcmResult: { _enum: { Ok: '()', Err: 'XcmError' } }, OriginKind: { _enum: ['Native', 'SovereignAccount', 'Superuser'] }, NetworkId: { _enum: { Any: 'Null', Named: 'Vec', Polkadot: 'Null', Kusama: 'Null' } }, MultiLocation: { _enum: { Null: 'Null', X1: 'Junction', X2: '(Junction, Junction)', X3: '(Junction, Junction, Junction)', X4: '(Junction, Junction, Junction, Junction)' } }, AccountId32Junction: { network: 'NetworkId', id: 'AccountId' }, AccountIndex64Junction: { network: 'NetworkId', index: 'Compact' }, AccountKey20Junction: { network: 'NetworkId', index: '[u8; 20]' }, Junction: { _enum: { Parent: 'Null', Parachain: 'Compact', AccountId32: 'AccountId32Junction', AccountIndex64: 'AccountIndex64Junction', AccountKey20: 'AccountKey20Junction', PalletInstance: 'u8', GeneralIndex: 'Compact', GeneralKey: 'Vec', OnlyChild: 'Null' } }, VersionedMultiLocation: { _enum: { V0: 'MultiLocation' } }, AssetInstance: { _enum: { Undefined: 'Null', Index8: 'u8', Index16: 'Compact', Index32: 'Compact', Index64: 'Compact', Index128: 'Compact', Array4: '[u8; 4]', Array8: '[u8; 8]', Array16: '[u8; 16]', Array32: '[u8; 32]', Blob: 'Vec' } }, AbstractFungible: { id: 'Vec', instance: 'Compact' }, AbstractNonFungible: { class: 'Vec', instance: 'AssetInstance' }, ConcreteFungible: { id: 'MultiLocation', amount: 'Compact' }, ConcreteNonFungible: { class: 'MultiLocation', instance: 'AssetInstance' }, MultiAsset: { _enum: { None: 'Null', All: 'Null', AllFungible: 'Null', AllNonFungible: 'Null', AllAbstractFungible: 'Vec', AllAbstractNonFungible: 'Vec', AllConcreteFungible: 'MultiLocation', AllConcreteNonFungible: 'MultiLocation', AbstractFungible: 'AbstractFungible', AbstractNonFungible: 'AbstractNonFungible', ConcreteFungible: 'ConcreteFungible', ConcreteNonFungible: 'ConcreteNonFungible' } }, VersionedMultiAsset: { _enum: { V0: 'MultiAsset' } }, DepositAsset: { assets: 'Vec', dest: 'MultiLocation' }, DepositReserveAsset: { assets: 'Vec', dest: 'MultiLocation', effects: 'Vec' }, ExchangeAsset: { give: 'Vec', receive: 'Vec' }, InitiateReserveWithdraw: { assets: 'Vec', reserve: 'MultiLocation', effects: 'Vec' }, InitiateTeleport: { assets: 'Vec', dest: 'MultiLocation', effects: 'Vec' }, QueryHolding: { queryId: 'Compact', dest: 'MultiLocation', assets: 'Vec' }, Order: { _enum: { Null: 'Null', DepositAsset: 'DepositAsset', DepositReserveAsset: 'DepositReserveAsset', ExchangeAsset: 'ExchangeAsset', InitiateReserveWithdraw: 'InitiateReserveWithdraw', InitiateTeleport: 'InitiateTeleport', QueryHolding: 'QueryHolding' } }, MessagingStateSnapshot: { relayDispatchQueueSize: '(u32, u32)', egressChannels: 'Vec' }, MessagingStateSnapshotEgressEntry: '(ParaId, AbridgedHrmpChannel)', SystemInherentData: 'ParachainInherentData', VecInboundHrmpMessage: 'Vec' } } as Definitions;