UNPKG

@polkadot/types

Version:
366 lines (365 loc) • 13.2 kB
import type { BTreeMap, Bytes, Enum, Option, Raw, Struct, Text, U8aFixed, Vec, bool, u32, u64 } from '@polkadot/types-codec'; import type { ITuple } from '@polkadot/types-codec/types'; import type { PortableType } from '@polkadot/types/interfaces/metadata'; import type { Si0Type, SiLookupTypeId, SiPath } from '@polkadot/types/interfaces/scaleInfo'; /** @name ContractConstructorSpecLatest */ export interface ContractConstructorSpecLatest extends ContractConstructorSpecV4 { } /** @name ContractConstructorSpecV0 */ export interface ContractConstructorSpecV0 extends Struct { readonly name: Text; readonly selector: ContractSelector; readonly args: Vec<ContractMessageParamSpecV0>; readonly docs: Vec<Text>; } /** @name ContractConstructorSpecV1 */ export interface ContractConstructorSpecV1 extends Struct { readonly name: Vec<Text>; readonly selector: ContractSelector; readonly args: Vec<ContractMessageParamSpecV0>; readonly docs: Vec<Text>; } /** @name ContractConstructorSpecV2 */ export interface ContractConstructorSpecV2 extends Struct { readonly label: Text; readonly selector: ContractSelector; readonly args: Vec<ContractMessageParamSpecV2>; readonly docs: Vec<Text>; } /** @name ContractConstructorSpecV3 */ export interface ContractConstructorSpecV3 extends Struct { readonly label: Text; readonly selector: ContractSelector; readonly payable: bool; readonly args: Vec<ContractMessageParamSpecV2>; readonly docs: Vec<Text>; } /** @name ContractConstructorSpecV4 */ export interface ContractConstructorSpecV4 extends Struct { readonly label: Text; readonly selector: ContractSelector; readonly payable: bool; readonly args: Vec<ContractMessageParamSpecV2>; readonly docs: Vec<Text>; readonly default: bool; readonly returnType: Option<ContractTypeSpec>; } /** @name ContractContractSpecV0 */ export interface ContractContractSpecV0 extends Struct { readonly constructors: Vec<ContractConstructorSpecV0>; readonly messages: Vec<ContractMessageSpecV0>; readonly events: Vec<ContractEventSpecV0>; readonly docs: Vec<Text>; } /** @name ContractContractSpecV1 */ export interface ContractContractSpecV1 extends Struct { readonly constructors: Vec<ContractConstructorSpecV1>; readonly messages: Vec<ContractMessageSpecV1>; readonly events: Vec<ContractEventSpecV1>; readonly docs: Vec<Text>; } /** @name ContractContractSpecV2 */ export interface ContractContractSpecV2 extends Struct { readonly constructors: Vec<ContractConstructorSpecV2>; readonly messages: Vec<ContractMessageSpecV2>; readonly events: Vec<ContractEventSpecV2>; readonly docs: Vec<Text>; } /** @name ContractContractSpecV3 */ export interface ContractContractSpecV3 extends Struct { readonly constructors: Vec<ContractConstructorSpecV3>; readonly messages: Vec<ContractMessageSpecV2>; readonly events: Vec<ContractEventSpecV2>; readonly docs: Vec<Text>; } /** @name ContractContractSpecV4 */ export interface ContractContractSpecV4 extends Struct { readonly constructors: Vec<ContractConstructorSpecV4>; readonly messages: Vec<ContractMessageSpecV3>; readonly events: Vec<ContractEventSpecV2>; readonly docs: Vec<Text>; readonly environment: ContractEnvironmentV4; } /** @name ContractContractSpecV5 */ export interface ContractContractSpecV5 extends Struct { readonly constructors: Vec<ContractConstructorSpecV4>; readonly messages: Vec<ContractMessageSpecV3>; readonly events: Vec<ContractEventSpecV3>; readonly docs: Vec<Text>; readonly environment: ContractEnvironmentV4; } /** @name ContractCryptoHasher */ export interface ContractCryptoHasher extends Enum { readonly isBlake2x256: boolean; readonly isSha2x256: boolean; readonly isKeccak256: boolean; readonly type: 'Blake2x256' | 'Sha2x256' | 'Keccak256'; } /** @name ContractDiscriminant */ export interface ContractDiscriminant extends u32 { } /** @name ContractDisplayName */ export interface ContractDisplayName extends SiPath { } /** @name ContractEnvironmentV4 */ export interface ContractEnvironmentV4 extends Struct { readonly accountId: Option<ContractTypeSpec>; readonly balance: Option<ContractTypeSpec>; readonly blockNumber: Option<ContractTypeSpec>; readonly hashType: Option<ContractTypeSpec>; readonly timestamp: Option<ContractTypeSpec>; readonly maxEventTopics: Option<u32>; } /** @name ContractEventParamSpecLatest */ export interface ContractEventParamSpecLatest extends ContractEventParamSpecV2 { } /** @name ContractEventParamSpecV0 */ export interface ContractEventParamSpecV0 extends Struct { readonly name: Text; readonly indexed: bool; readonly type: ContractTypeSpec; readonly docs: Vec<Text>; } /** @name ContractEventParamSpecV2 */ export interface ContractEventParamSpecV2 extends Struct { readonly label: Text; readonly indexed: bool; readonly type: ContractTypeSpec; readonly docs: Vec<Text>; } /** @name ContractEventSpecLatest */ export interface ContractEventSpecLatest extends ContractEventSpecV3 { } /** @name ContractEventSpecV0 */ export interface ContractEventSpecV0 extends Struct { readonly name: Text; readonly args: Vec<ContractEventParamSpecV0>; readonly docs: Vec<Text>; } /** @name ContractEventSpecV1 */ export interface ContractEventSpecV1 extends Struct { readonly name: Text; readonly args: Vec<ContractEventParamSpecV0>; readonly docs: Vec<Text>; } /** @name ContractEventSpecV2 */ export interface ContractEventSpecV2 extends Struct { readonly label: Text; readonly args: Vec<ContractEventParamSpecV2>; readonly docs: Vec<Text>; } /** @name ContractEventSpecV3 */ export interface ContractEventSpecV3 extends Struct { readonly label: Text; readonly args: Vec<ContractEventParamSpecV2>; readonly docs: Vec<Text>; readonly module_path: Text; readonly signature_topic: Option<U8aFixed>; } /** @name ContractLayoutArray */ export interface ContractLayoutArray extends Struct { readonly offset: ContractLayoutKey; readonly len: u32; readonly cellsPerElem: u64; readonly layout: ContractStorageLayout; } /** @name ContractLayoutCell */ export interface ContractLayoutCell extends Struct { readonly key: ContractLayoutKey; readonly ty: SiLookupTypeId; } /** @name ContractLayoutEnum */ export interface ContractLayoutEnum extends Struct { readonly dispatchKey: ContractLayoutKey; readonly variants: BTreeMap<ContractDiscriminant, ContractLayoutStruct>; } /** @name ContractLayoutHash */ export interface ContractLayoutHash extends Struct { readonly offset: ContractLayoutKey; readonly strategy: ContractLayoutHashingStrategy; readonly layout: ContractStorageLayout; } /** @name ContractLayoutHashingStrategy */ export interface ContractLayoutHashingStrategy extends Struct { readonly hasher: ContractCryptoHasher; readonly postfix: Bytes; readonly prefix: Bytes; } /** @name ContractLayoutKey */ export interface ContractLayoutKey extends U8aFixed { } /** @name ContractLayoutStruct */ export interface ContractLayoutStruct extends Struct { readonly fields: Vec<ContractLayoutStructField>; } /** @name ContractLayoutStructField */ export interface ContractLayoutStructField extends Struct { readonly layout: ContractStorageLayout; readonly name: Text; } /** @name ContractMessageParamSpecLatest */ export interface ContractMessageParamSpecLatest extends ContractMessageParamSpecV2 { } /** @name ContractMessageParamSpecV0 */ export interface ContractMessageParamSpecV0 extends Struct { readonly name: Text; readonly type: ContractTypeSpec; } /** @name ContractMessageParamSpecV2 */ export interface ContractMessageParamSpecV2 extends Struct { readonly label: Text; readonly type: ContractTypeSpec; } /** @name ContractMessageSpecLatest */ export interface ContractMessageSpecLatest extends ContractMessageSpecV3 { } /** @name ContractMessageSpecV0 */ export interface ContractMessageSpecV0 extends Struct { readonly name: Text; readonly selector: ContractSelector; readonly mutates: bool; readonly payable: bool; readonly args: Vec<ContractMessageParamSpecV0>; readonly returnType: Option<ContractTypeSpec>; readonly docs: Vec<Text>; } /** @name ContractMessageSpecV1 */ export interface ContractMessageSpecV1 extends Struct { readonly name: Vec<Text>; readonly selector: ContractSelector; readonly mutates: bool; readonly payable: bool; readonly args: Vec<ContractMessageParamSpecV0>; readonly returnType: Option<ContractTypeSpec>; readonly docs: Vec<Text>; } /** @name ContractMessageSpecV2 */ export interface ContractMessageSpecV2 extends Struct { readonly label: Text; readonly selector: ContractSelector; readonly mutates: bool; readonly payable: bool; readonly args: Vec<ContractMessageParamSpecV2>; readonly returnType: Option<ContractTypeSpec>; readonly docs: Vec<Text>; } /** @name ContractMessageSpecV3 */ export interface ContractMessageSpecV3 extends Struct { readonly label: Text; readonly selector: ContractSelector; readonly mutates: bool; readonly payable: bool; readonly args: Vec<ContractMessageParamSpecV2>; readonly returnType: Option<ContractTypeSpec>; readonly docs: Vec<Text>; readonly default: bool; } /** @name ContractMetadata */ export interface ContractMetadata extends Enum { readonly isV0: boolean; readonly asV0: ContractMetadataV0; readonly isV1: boolean; readonly asV1: ContractMetadataV1; readonly isV2: boolean; readonly asV2: ContractMetadataV2; readonly isV3: boolean; readonly asV3: ContractMetadataV3; readonly isV4: boolean; readonly asV4: ContractMetadataV4; readonly isV5: boolean; readonly asV5: ContractMetadataV5; readonly type: 'V0' | 'V1' | 'V2' | 'V3' | 'V4' | 'V5'; } /** @name ContractMetadataLatest */ export interface ContractMetadataLatest extends ContractMetadataV5 { } /** @name ContractMetadataV0 */ export interface ContractMetadataV0 extends Struct { readonly metadataVersion: Text; readonly types: Vec<Si0Type>; readonly spec: ContractContractSpecV0; } /** @name ContractMetadataV1 */ export interface ContractMetadataV1 extends Struct { readonly types: Vec<PortableType>; readonly spec: ContractContractSpecV1; } /** @name ContractMetadataV2 */ export interface ContractMetadataV2 extends Struct { readonly types: Vec<PortableType>; readonly spec: ContractContractSpecV2; } /** @name ContractMetadataV3 */ export interface ContractMetadataV3 extends Struct { readonly types: Vec<PortableType>; readonly spec: ContractContractSpecV3; } /** @name ContractMetadataV4 */ export interface ContractMetadataV4 extends Struct { readonly types: Vec<PortableType>; readonly spec: ContractContractSpecV4; readonly version: Text; } /** @name ContractMetadataV5 */ export interface ContractMetadataV5 extends Struct { readonly types: Vec<PortableType>; readonly spec: ContractContractSpecV5; readonly version: u64; } /** @name ContractProject */ export interface ContractProject extends ITuple<[ContractProjectInfo, ContractMetadata]> { } /** @name ContractProjectContract */ export interface ContractProjectContract extends Struct { readonly name: Text; readonly version: Text; readonly authors: Vec<Text>; readonly description: Option<Text>; readonly docs: Option<Text>; readonly repository: Option<Text>; readonly homepage: Option<Text>; readonly license: Option<Text>; } /** @name ContractProjectInfo */ export interface ContractProjectInfo extends Struct { readonly source: ContractProjectSource; readonly contract: ContractProjectContract; } /** @name ContractProjectSource */ export interface ContractProjectSource extends Struct { readonly wasmHash: U8aFixed; readonly language: Text; readonly compiler: Text; readonly wasm: Raw; } /** @name ContractProjectV0 */ export interface ContractProjectV0 extends Struct { readonly metadataVersion: Text; readonly source: ContractProjectSource; readonly contract: ContractProjectContract; readonly types: Vec<Si0Type>; readonly spec: ContractContractSpecV0; } /** @name ContractSelector */ export interface ContractSelector extends U8aFixed { } /** @name ContractStorageLayout */ export interface ContractStorageLayout extends Enum { readonly isCell: boolean; readonly asCell: ContractLayoutCell; readonly isHash: boolean; readonly asHash: ContractLayoutHash; readonly isArray: boolean; readonly asArray: ContractLayoutArray; readonly isStruct: boolean; readonly asStruct: ContractLayoutStruct; readonly isEnum: boolean; readonly asEnum: ContractLayoutEnum; readonly type: 'Cell' | 'Hash' | 'Array' | 'Struct' | 'Enum'; } /** @name ContractTypeSpec */ export interface ContractTypeSpec extends Struct { readonly type: SiLookupTypeId; readonly displayName: ContractDisplayName; } export type PHANTOM_CONTRACTSABI = 'contractsAbi';