Starknet API
The Starknet API provides access to block headers and storage values. All functions live under hdp_cairo::starknet::*.
Header methods
header_get_block_numberheader_get_state_rootheader_get_sequencer_addressheader_get_block_timestampheader_get_transaction_countheader_get_transaction_commitmentheader_get_event_countheader_get_event_commitmentheader_get_parent_block_hashheader_get_state_diff_commitmentheader_get_state_diff_lengthheader_get_l1_gas_price_in_weiheader_get_l1_gas_price_in_friheader_get_l1_data_gas_price_in_weiheader_get_l1_data_gas_price_in_friheader_get_receipts_commitmentheader_get_l1_data_modeheader_get_protocol_version
Source: hdp_cairo/src/starknet/header.cairo
Return type: all header getters return felt252.
Storage method
storage_get_slot
Source: hdp_cairo/src/starknet/storage.cairo
Return type: felt252.
Chain ID constants
STARKNET_MAINNET_CHAIN_IDSTARKNET_TESTNET_CHAIN_ID
Example
use hdp_cairo::HDP;
use hdp_cairo::starknet::{STARKNET_MAINNET_CHAIN_ID, header::{HeaderImpl, HeaderKey}};
let key = HeaderKey { chain_id: STARKNET_MAINNET_CHAIN_ID, block_number: 1_000_000 };
let sequencer = hdp.starknet.header_get_sequencer_address(key);