///
import { Ctx, PlatformUtils, SignatureRes, PopupType } from '@usecapsule/core-sdk';
import { LocalStorage } from './LocalStorage.js';
import { SessionStorage } from './SessionStorage.js';
import { BackupKitEmailProps, WalletType } from '@usecapsule/user-management-client';
import { TPregenIdentifierType } from '@usecapsule/core-sdk';
export declare class WebUtils implements PlatformUtils {
getPrivateKey(ctx: Ctx, userId: string, walletId: string, share: string, sessionCookie: string): Promise;
keygen(ctx: Ctx, userId: string, type: Exclude, secretKey: string | null, // should be acceptable as null in RN as we don't pre-gen them
sessionCookie: string, emailProps?: BackupKitEmailProps): Promise<{
signer: string;
walletId: string;
}>;
refresh(ctx: Ctx, sessionCookie: string, userId: string, walletId: string, share: string, oldPartnerId?: string, newPartnerId?: string, keyShareProtocolId?: string): Promise<{
signer: string;
}>;
preKeygen(ctx: Ctx, partnerId: string | undefined, pregenIdentifier: string, pregenIdentifierType: TPregenIdentifierType, type: Exclude, secretKey: string | null, // should be acceptable as null in RN as we don't pre-gen them
sessionCookie: string): Promise<{
signer: string;
walletId: string;
}>;
signMessage(ctx: Ctx, userId: string, walletId: string, share: string, message: string, sessionCookie: string, isDKLS?: boolean, cosmosSignDoc?: string): Promise;
signTransaction(ctx: Ctx, userId: string, walletId: string, share: string, tx: string, chainId: string, sessionCookie: string, isDKLS?: boolean): Promise;
sendTransaction(ctx: Ctx, userId: string, walletId: string, share: string, tx: string, chainId: string, sessionCookie: string, isDKLS?: boolean): Promise;
signHash(_address: string, _hash: string): Promise<{
v: number;
r: Buffer;
s: Buffer;
}>;
ed25519Keygen(ctx: Ctx, userId: string, sessionCookie: string, emailProps?: BackupKitEmailProps): Promise<{
signer: string;
walletId: string;
}>;
ed25519PreKeygen(ctx: Ctx, pregenIdentifier: string, pregenIdentifierType: TPregenIdentifierType, sessionCookie: string): Promise<{
signer: string;
walletId: string;
}>;
ed25519Sign(ctx: Ctx, userId: string, walletId: string, share: string, base64Bytes: string, sessionCookie: string): Promise;
localStorage: LocalStorage;
sessionStorage: SessionStorage;
secureStorage: any;
isSyncStorage: boolean;
disableProviderModal: boolean;
openPopup(popupUrl: string, opts?: {
type: PopupType;
}): Window;
}