import { Hex } from "viem";
import { MerkleTree } from "merkletreejs";
import { SmartAccountSigner } from "@alchemy/aa-core";
import { SessionKeyManagerModuleConfig, ModuleVersion, CreateSessionDataParams, ModuleInfo, CreateSessionDataResponse } from "./utils/Types.js";
import { BaseValidationModule } from "./BaseValidationModule.js";
import { ISessionStorage, SessionSearchParam, SessionStatus } from "./interfaces/ISessionStorage.js";
export declare class SessionKeyManagerModule extends BaseValidationModule {
    version: ModuleVersion;
    moduleAddress: Hex;
    merkleTree: MerkleTree;
    sessionStorageClient: ISessionStorage;
    readonly mockEcdsaSessionKeySig: Hex;
    private constructor();
    static create(moduleConfig: SessionKeyManagerModuleConfig): Promise<SessionKeyManagerModule>;
    createSessionData: (leavesData: CreateSessionDataParams[]) => Promise<CreateSessionDataResponse>;
    signUserOpHash(userOpHash: string, params?: ModuleInfo): Promise<Hex>;
    private getLeafInfo;
    updateSessionStatus(param: SessionSearchParam, status: SessionStatus): Promise<void>;
    clearPendingSessions(): Promise<void>;
    getAddress(): Hex;
    getSigner(): Promise<SmartAccountSigner>;
    getDummySignature(params?: ModuleInfo): Promise<Hex>;
    getInitData(): Promise<Hex>;
    signMessage(_message: Uint8Array | string): Promise<string>;
}
