/// <reference types="node" />
import { AuthDetails, BNString, IModule, ITKeyApi, ShareStore, StringifiedType } from "@tkey-singularity/common-types";
export declare const WEB_STORAGE_MODULE_NAME = "webStorage";
declare class WebStorageModule implements IModule {
    moduleName: string;
    tbSDK: ITKeyApi;
    canUseFileStorage: boolean;
    constructor(canUseFileStorage?: boolean);
    setFileStorageAccess(): Promise<void>;
    setModuleReferences(tbSDK: ITKeyApi): void;
    initialize(): Promise<void>;
    storeDeviceShare(url: string, authDetails: AuthDetails, deviceShareStore: ShareStore, customDeviceInfo?: StringifiedType): Promise<unknown>;
    storeDeviceShareOnFileStorage(shareIndex: BNString): Promise<void>;
    getDeviceShare(encryptedMessage: string, verifier: string): Promise<ShareStore>;
    inputShareFromWebStorage(authDetails: AuthDetails, encryptedMessage: string): Promise<unknown>;
    encryptShareWithPublicKey(share: ShareStore): Promise<{
        privateKey: Buffer;
        publickey: Buffer;
        encryptedShare: string;
    }>;
    getCookieShare(encryptedString: string, verifier: any): Promise<ShareStore>;
    storeCookieShare(encryptedShare: any, verifier: any, apikey: any, bearerToken: any, url: any): Promise<unknown>;
    getMetaData(url: any, apikey: any, bearerToken: any): Promise<unknown>;
    getMetaDataFlow(url: any, apikey: any, bearerToken: any): Promise<unknown>;
    storeMetadata(url: any, apikey: any, bearerToken: any, sdkMetadata: any): Promise<unknown>;
}
export default WebStorageModule;
