eigensdk.types

This module defines the core data structures and types used throughout the EigenSDK Python library. These dataclasses provide type-safe representations of various EigenLayer entities and operations.

class eigensdk.types_.BLSApkRegistryTypesApkUpdate(apk_hash, update_block_number, next_update_block_number)

Bases: object

Represents an aggregate public key update in the BLS registry.

Parameters:
  • apk_hash (bytes)

  • update_block_number (int)

  • next_update_block_number (int)

apk_hash: bytes
next_update_block_number: int
update_block_number: int
class eigensdk.types_.Operator(address, earnings_receiver_address, staker_opt_out_window_blocks, metadata_url, allocation_delay=50, delegation_approver_address='0x0000000000000000000000000000000000000000')

Bases: object

Represents an EigenLayer operator with their configuration and metadata.

Parameters:
  • address (ChecksumAddress)

  • earnings_receiver_address (ChecksumAddress)

  • staker_opt_out_window_blocks (int)

  • metadata_url (str)

  • allocation_delay (int)

  • delegation_approver_address (ChecksumAddress)

address: NewType(ChecksumAddress, NewType(HexAddress, NewType(HexStr, str)))
allocation_delay: int = 50
delegation_approver_address: NewType(ChecksumAddress, NewType(HexAddress, NewType(HexStr, str))) = '0x0000000000000000000000000000000000000000'
earnings_receiver_address: NewType(ChecksumAddress, NewType(HexAddress, NewType(HexStr, str)))
metadata_url: str
staker_opt_out_window_blocks: int
class eigensdk.types_.OperatorPubkeys(g1_pub_key, g2_pub_key)

Bases: object

Contains the BLS public keys for an operator.

Parameters:
g1_pub_key: G1Point
g2_pub_key: G2Point
class eigensdk.types_.OperatorStateRetrieverCheckSignaturesIndices(non_signer_quorum_bitmap_indices, quorum_apk_indices, total_stake_indices, non_signer_stake_indices)

Bases: object

Contains indices required for signature verification operations.

Parameters:
  • non_signer_quorum_bitmap_indices (list[int])

  • quorum_apk_indices (list[int])

  • total_stake_indices (list[int])

  • non_signer_stake_indices (list[list[int]])

non_signer_quorum_bitmap_indices: list[int]
non_signer_stake_indices: list[list[int]]
quorum_apk_indices: list[int]
total_stake_indices: list[int]
class eigensdk.types_.OperatorStateRetrieverOperator(operator, operator_id, stake)

Bases: object

Represents operator data retrieved from the OperatorStateRetriever contract.

Parameters:
  • operator (ChecksumAddress)

  • operator_id (bytes)

  • stake (int)

operator: NewType(ChecksumAddress, NewType(HexAddress, NewType(HexStr, str)))
operator_id: bytes
stake: int
class eigensdk.types_.StakeRegistryTypesStakeUpdate(update_block_number, next_update_block_number, stake)

Bases: object

Represents a stake update event in the registry.

Parameters:
  • update_block_number (int)

  • next_update_block_number (int)

  • stake (int)

next_update_block_number: int
stake: int
update_block_number: int
class eigensdk.types_.StakeRegistryTypesStrategyParams(strategy, multiplier)

Bases: object

Parameters for strategies in the stake registry.

Parameters:
  • strategy (str)

  • multiplier (int)

multiplier: int
strategy: str