import { TransactionInstruction } from "@solana/web3.js"; import { WalletType } from "../omni/config"; import { OmniConnector } from "../OmniConnector"; import { OmniWallet } from "../OmniWallet"; import { Token } from "../omni/token"; import { ReviewFee } from "../omni/bridge"; import { ISolanaProtocolWallet } from "./protocol"; declare class SolanaWallet extends OmniWallet { readonly connector: OmniConnector; readonly wallet: ISolanaProtocolWallet; readonly type = WalletType.SOLANA; constructor(connector: OmniConnector, wallet: ISolanaProtocolWallet); get address(): string; get publicKey(): string; get omniAddress(): string; fetchBalance(_: number, address: string): Promise; disconnect(): Promise; signIntentsWithAuth(domain: string, intents?: Record[]): Promise<{ signed: Record; publicKey: string; chainId: WalletType; address: string; seed: string; }>; buildTranferInstructions(token: Token, amount: bigint, receiver: string, fee: ReviewFee): Promise<{ reserve: number; additionalFee: bigint; instructions: TransactionInstruction[]; }>; transferFee(token: Token, receiver: string): Promise; getPriorityFeeEstimate(params: any): Promise; transfer(args: { token: Token; receiver: string; amount: bigint; comment?: string; gasFee: ReviewFee; }): Promise; sendTransaction(instructions: TransactionInstruction[]): Promise; fetchBalances(chain: number, whitelist: string[]): Promise>; signMessage(message: string): Promise>; signIntents(intents: Record[], options?: { deadline?: number; nonce?: Uint8Array; }): Promise>; } export default SolanaWallet;