Source code for evmos.transactions.validator

from __future__ import annotations

from collections.abc import Mapping
from typing import Any

from evmos.eip712 import MSG_EDIT_VALIDATOR_TYPES, create_msg_edit_validator
from evmos.proto import (
    MessageGenerated,
    MsgEditValidator,
    create_msg_edit_validator as proto_msg_edit_validator,
)
from evmos.transactions.common import to_generated


[docs] @to_generated(MSG_EDIT_VALIDATOR_TYPES) def create_tx_msg_edit_validator( *, validator_address: str, # FIXME: was str|None, but not allowed deeper moniker: str | None = None, identity: str | None = None, website: str | None = None, security_contact: str | None = None, details: str | None = None, commission_rate: str | None = None, min_self_delegation: str | None = None, ) -> tuple[Mapping[str, Any], MessageGenerated[MsgEditValidator]]: """Create a transaction with validator editing message.""" # EIP712 msg = create_msg_edit_validator( moniker=moniker, identity=identity, website=website, security_contact=security_contact, details=details, validator_address=validator_address, commission_rate=commission_rate, min_self_delegation=min_self_delegation, ) # Cosmos msg_cosmos = proto_msg_edit_validator( moniker=moniker, identity=identity, website=website, security_contact=security_contact, details=details, validator_address=validator_address, commission_rate=commission_rate, min_self_delegation=min_self_delegation, ) return msg, msg_cosmos