import type { ActiveWallet, NetworkDomain } from '@/types/wallet';
/** zvaultNewWallet generates new wallet */
export declare const zvaultNewWallet: ({ domain, wallet, serverAddress, token, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
}) => Promise<void>;
/** zvaultNewSplit generates new split key for saved wallet */
export declare const zvaultNewSplit: ({ domain, wallet, clientId, serverAddress, token, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Wallet ID */
    clientId: string;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
}) => Promise<void>;
export declare const zvaultRetrieveRestrictions: ({ domain, wallet, peerPublicKey, serverAddress, token, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Peer public key */
    peerPublicKey: string;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
}) => Promise<string>;
export declare const zvaultUpdateRestrictions: ({ domain, wallet, clientId, peerPublicKey, serverAddress, token, restrictions, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Wallet ID */
    clientId: string;
    /** Peer public key */
    peerPublicKey: string;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
    restrictions: string[];
}) => Promise<void>;
export declare const zvaultStoreKey: ({ domain, wallet, serverAddress, token, privateKey, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
    /** Private key */
    privateKey: string;
}) => Promise<void>;
export declare const zvaultRetrieveKeys: ({ domain, wallet, serverAddress, token, clientId, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
    /** Wallet ID */
    clientId: string;
}) => Promise<string>;
export declare const zvaultRevokeKey: ({ domain, wallet, serverAddress, token, clientId, publicKey, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
    /** Wallet ID */
    clientId: string;
    /** Public key */
    publicKey: string;
}) => Promise<void>;
export declare const zvaultDeletePrimaryKey: ({ domain, wallet, serverAddress, token, clientId, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
    /** Wallet ID */
    clientId: string;
}) => Promise<void>;
export declare const zvaultRetrieveWallets: ({ domain, wallet, serverAddress, token, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
}) => Promise<string>;
export declare const zvaultRetrieveSharedWallets: ({ domain, wallet, serverAddress, token, }: {
    domain: NetworkDomain;
    wallet: ActiveWallet;
    /** Server address */
    serverAddress: string;
    /** JWT Token */
    token: string;
}) => Promise<string>;
