///
import type { Signer } from "arbundles";
import BigNumber from "bignumber.js";
import type { TokenConfig, Tx } from "../../common/types.js";
import { BaseNodeToken } from "./base.js";
import type { Finality } from "@solana/web3.js";
import { Connection, Transaction } from "@solana/web3.js";
export type GetFeeResult = {
computeBudget: BigNumber;
computeUnitPrice: BigNumber;
};
type Config = TokenConfig;
export default class SolanaConfig extends BaseNodeToken {
protected providerInstance: Connection;
minConfirm: number;
protected finality: Finality;
config: Config;
constructor(config: Config);
private getProvider;
private getKeyPair;
getTx(txId: string): Promise;
ownerToAddress(owner: any): string;
sign(data: Uint8Array): Promise;
getSigner(): Signer;
verify(pub: any, data: Uint8Array, signature: Uint8Array): Promise;
getCurrentHeight(): Promise;
getFee(amount: BigNumber.Value, to?: string, multiplier?: BigNumber.Value): Promise;
sendTx(data: Transaction): Promise;
_createTxUnsigned(amount: BigNumber.Value, to: string, fee?: GetFeeResult): Promise;
createTx(amount: BigNumber.Value, to: string, fee?: GetFeeResult): Promise<{
txId: string | undefined;
tx: any;
}>;
getPublicKey(): string | Buffer;
}
export {};