import ShieldStorageService from '../../../protection-plan/domain/services/shield-storage-service';
import APIRepository, { APIRepositoryProps } from '../../../../../core/modules/_shared/infrastructure/api/api-repository';
import { BlockChainStorageOption } from '../../../protection-plan/domain/models/storage-option';
import AppPayloadEncrypter from '../../../../../core/modules/_shared/infrastructure/api/app-payload-encrypter';
interface ServiceProps extends APIRepositoryProps {
    secureStorage: {
        getKey: (params?: any) => Promise<string>;
    };
}
export default class AppShieldStorageService extends APIRepository implements ShieldStorageService {
    protected readonly props: ServiceProps;
    private localStorage;
    constructor(props: ServiceProps);
    getRequestPayloadEncrypter(): Promise<AppPayloadEncrypter>;
    initialize(planId: string, walletConnectionContext?: any): Promise<any>;
    addValidatorShare(data: {
        planId: string;
        shareData: any[];
    }, contractAddress?: string): Promise<{
        passphrase: string;
        privateKey: string;
    }>;
    addBackupShares(data: {
        planId: string;
        sharesData: string[][];
    }, contractAddress?: string): Promise<{
        passphrase: string;
        privateKey: string;
    }>;
    getValidatorShare(data: {
        processId: string;
        chain: BlockChainStorageOption;
    }): Promise<any>;
    getBackupShares(data: {
        processId: string;
        chain: BlockChainStorageOption;
    }): Promise<any>;
    getKeys(data: {
        processId: string;
    }): Promise<any>;
}
export {};
