import { RpcTransport, RpcFromTransport, SolanaRpcApiFromTransport } from "@solana/kit";
import { CachingMechanismInterface } from "../../interfaces";
import { SolanaClusterRpcFactory } from "./baseRpcFactories";
import { RetrySolanaRpcFactory } from "./retryRpcFactory";
export declare class CachedSolanaRpcFactory extends SolanaClusterRpcFactory {
    readonly redisClient?: CachingMechanismInterface | undefined;
    readonly getTransactionCachePrefix: string;
    protected retryTransport: RpcTransport;
    protected retryRpcClient: RpcFromTransport<SolanaRpcApiFromTransport<RpcTransport>, RpcTransport>;
    constructor(providerCacheNamespace: string, redisClient?: CachingMechanismInterface | undefined, ...retryConstructorParams: ConstructorParameters<typeof RetrySolanaRpcFactory>);
    createTransport(): RpcTransport;
    private requestAndCacheFinalized;
    private buildRedisKey;
    private cacheType;
    private isGetTransactionParams;
}
//# sourceMappingURL=cachedRpcFactory.d.ts.map