UNPKG

@hyperlane-xyz/sdk

Version:

The official SDK for the Hyperlane Network

35 lines 2.3 kB
import { AccountInterface, Contract, ParsedEvents, ProviderInterface } from 'starknet'; import { ContractType } from '@hyperlane-xyz/starknet-core'; import { Address } from '@hyperlane-xyz/utils'; import { DispatchedMessage } from '../core/types.js'; import { ChainMap, ChainName } from '../types.js'; export declare enum StarknetContractName { MAILBOX = "mailbox", HYP_ERC20 = "HypErc20", HYP_ERC20_COLLATERAL = "HypErc20Collateral", HYP_NATIVE = "HypNative", ETHER = "Ether", MERKLE_TREE_HOOK = "merkle_tree_hook", NOOP_ISM = "noop_ism", HOOK = "hook", PROTOCOL_FEE = "protocol_fee", VALIDATOR_ANNOUNCE = "validator_announce", MESSAGE_RECIPIENT = "message_recipient", DOMAIN_ROUTING_HOOK = "domain_routing_hook", FALLBACK_DOMAIN_ROUTING_HOOK = "fallback_domain_routing_hook", STATIC_AGGREGATION_HOOK = "static_aggregation_hook" } export declare const STARKNET_FEE_TOKEN_ADDRESSES: ChainMap<Address>; /** * Creates a Starknet contract instance with the given parameters */ export declare function getStarknetContract(contractName: string, address: string, providerOrAccount?: ProviderInterface | AccountInterface, contractType?: ContractType): Contract; export declare function getStarknetMailboxContract(address: string, providerOrAccount?: ProviderInterface | AccountInterface): Contract; export declare function getStarknetHypERC20Contract(address: string, providerOrAccount?: ProviderInterface | AccountInterface): Contract; export declare function getStarknetHypERC20CollateralContract(address: string, providerOrAccount?: ProviderInterface | AccountInterface): Contract; export declare function getStarknetEtherContract(address: string, providerOrAccount?: ProviderInterface | AccountInterface): Contract; export declare function parseStarknetDispatchEvents(parsedEvents: ParsedEvents, chainNameResolver: (domain: number) => string | undefined): DispatchedMessage[]; export declare function parseStarknetDispatchIdEvents(parsedEvents: ParsedEvents): string[]; export declare function isStarknetFeeToken(chainName: ChainName, address: string): boolean; export declare function getStarknetFeeTokenContract(chainName: ChainName, providerOrAccount?: ProviderInterface | AccountInterface): Contract; //# sourceMappingURL=starknet.d.ts.map