import { PaymentSessionStatus } from '@medusajs/framework/types';
export type SolanaClientOptions = {
    rpcUrl: string;
    mnemonic: string;
    coldStorageWallet: string;
    currencyConverter: {
        provider: 'default' | 'coingecko';
        apiKey?: string;
    };
};
export type PaymentDetails = {
    id: string;
    amount: number;
    currency_code: string;
    sol_amount: number;
    received_sol_amount?: number;
    solana_one_time_address: string;
    status: PaymentSessionStatus;
    created_at: Date;
    updated_at: Date;
    expiration_date?: Date;
};
export type PaymentVerificationResult = {
    receivedAmount: number;
    lastTransactionTime: Date | null;
};
export declare class SolanaClient {
    private connection;
    private converter;
    protected mnemonic: string;
    private coldStorageWallet;
    private seed;
    constructor(options: SolanaClientOptions);
    private getOneTimeKeypair;
    transferToColdStorage(paymentId: string): Promise<string>;
    convertToSol(amount: number, currencyCode: string): Promise<number>;
    paymentIdToBip44Index(paymentId: string): number;
    generateAddress(paymentId: string): string;
    checkPayment(paymentDetails: PaymentDetails): Promise<PaymentVerificationResult>;
}
export default SolanaClient;
//# sourceMappingURL=solana-client.d.ts.map