Skip to content

Claims


Calls


attest

See [Pallet::attest].

Attributes

Name Type
statement Vec<u8>

Python

call = substrate.compose_call(
    'Claims', 'attest', {'statement': 'Bytes'}
)

claim

See [Pallet::claim].

Attributes

Name Type
dest T::AccountId
ethereum_signature EcdsaSignature

Python

call = substrate.compose_call(
    'Claims', 'claim', {
    'dest': 'AccountId',
    'ethereum_signature': '[u8; 65]',
}
)

claim_attest

See [Pallet::claim_attest].

Attributes

Name Type
dest T::AccountId
ethereum_signature EcdsaSignature
statement Vec<u8>

Python

call = substrate.compose_call(
    'Claims', 'claim_attest', {
    'dest': 'AccountId',
    'ethereum_signature': '[u8; 65]',
    'statement': 'Bytes',
}
)

mint_claim

See [Pallet::mint_claim].

Attributes

Name Type
who EthereumAddress
value BalanceOf<T>
vesting_schedule Option<(BalanceOf<T>, BalanceOf<T>, BlockNumberFor<T>)>
statement Option<StatementKind>

Python

call = substrate.compose_call(
    'Claims', 'mint_claim', {
    'statement': (
        None,
        ('Regular', 'Saft'),
    ),
    'value': 'u128',
    'vesting_schedule': (
        None,
        ('u128', 'u128', 'u32'),
    ),
    'who': '[u8; 20]',
}
)

move_claim

See [Pallet::move_claim].

Attributes

Name Type
old EthereumAddress
new EthereumAddress
maybe_preclaim Option<T::AccountId>

Python

call = substrate.compose_call(
    'Claims', 'move_claim', {
    'maybe_preclaim': (
        None,
        'AccountId',
    ),
    'new': '[u8; 20]',
    'old': '[u8; 20]',
}
)

Events


Claimed

Someone claimed some DOTs.

Attributes

Name Type Composition
who T::AccountId AccountId
ethereum_address EthereumAddress [u8; 20]
amount BalanceOf<T> u128

Storage functions


Claims

Python

result = substrate.query(
    'Claims', 'Claims', ['[u8; 20]']
)

Return value

'u128'

Preclaims

Pre-claimed Ethereum accounts, by the Account ID that they are claimed to.

Python

result = substrate.query(
    'Claims', 'Preclaims', ['AccountId']
)

Return value

'[u8; 20]'

Signing

The statement kind that must be signed, if any.

Python

result = substrate.query(
    'Claims', 'Signing', ['[u8; 20]']
)

Return value

('Regular', 'Saft')

Total

Python

result = substrate.query(
    'Claims', 'Total', []
)

Return value

'u128'

Vesting

Vesting schedule for a claim. First balance is the total amount that should be held for vesting. Second balance is how much should be unlocked per block. The block number is when the vesting should start.

Python

result = substrate.query(
    'Claims', 'Vesting', ['[u8; 20]']
)

Return value

('u128', 'u128', 'u32')

Constants


Prefix

Value

'Pay KSMs to the Kusama account:'

Python

constant = substrate.get_constant('Claims', 'Prefix')

Errors


InvalidEthereumSignature

Invalid Ethereum signature.


InvalidStatement

A needed statement was not included.


PotUnderflow

There&#x27;s not enough in the pot to pay out some unvested amount. Generally implies a logic error.


SenderHasNoClaim

Account ID sending transaction has no claim.


SignerHasNoClaim

Ethereum address has no claim.


VestedBalanceExists

The account already has a vested balance.