@hyperlane-xyz/sdk
Version:
The official SDK for the Hyperlane Network
35 lines • 1.55 kB
TypeScript
import { PublicKey } from '@solana/web3.js';
import { Address, Domain } from '@hyperlane-xyz/utils';
import { BaseSealevelAdapter } from '../../app/MultiProtocolApp.js';
import type { MultiProviderAdapter } from '../../providers/MultiProviderAdapter.js';
import { ChainName } from '../../types.js';
import { IGasRouterAdapter, IRouterAdapter } from './types.js';
export declare class SealevelRouterAdapter extends BaseSealevelAdapter implements IRouterAdapter {
readonly chainName: ChainName;
readonly multiProvider: MultiProviderAdapter<any>;
readonly addresses: {
router: Address;
};
constructor(chainName: ChainName, multiProvider: MultiProviderAdapter<any>, addresses: {
router: Address;
});
interchainSecurityModule(): Promise<Address>;
owner(): Promise<Address>;
remoteDomains(): Promise<Domain[]>;
remoteRouter(remoteDomain: Domain): Promise<Address>;
remoteRouters(): Promise<Array<{
domain: Domain;
address: Address;
}>>;
getRouterAccountInfo(): Promise<{
owner_pub_key?: PublicKey;
interchain_security_module?: Uint8Array;
interchain_security_module_pubkey?: PublicKey;
remote_router_pubkeys: Map<Domain, PublicKey>;
}>;
deriveMessageRecipientPda(routerAddress: Address | PublicKey): PublicKey;
}
export declare class SealevelGasRouterAdapter extends SealevelRouterAdapter implements IGasRouterAdapter {
quoteGasPayment(_destination: ChainName): Promise<string>;
}
//# sourceMappingURL=SealevelRouterAdapter.d.ts.map