capacitor-shamir
Version:
Provides Shamir's Secret Sharing (SSS) functionality for secure splitting and recovering secrets natively on iOS, Android, and Web.
70 lines (69 loc) • 2.5 kB
TypeScript
import { WebPlugin } from '@capacitor/core';
import { IndexedDbConfig, ShamirPlugin } from './definitions';
export declare class ShamirWeb extends WebPlugin implements ShamirPlugin {
private fs;
generateShards({ totalShards, threshold, inputDataBase64 }: {
totalShards: number;
threshold: number;
inputDataBase64: string;
}, callback: (data: {
progress: number;
shardsBase64?: string[];
}, error?: Error) => void): Promise<void>;
restoreFromShards({ inputShardsBase64 }: {
inputShardsBase64: string[];
}, callback: (data: {
progress: number;
dataBase64?: string;
}, error?: Error) => void): Promise<void>;
restoreShard({ shardIndex, inputShardsBase64 }: {
shardIndex: number;
inputShardsBase64: string[];
}, callback: (data: {
progress: number;
dataBase64?: string;
}, error?: Error) => void): Promise<void>;
generateFileShards({ totalShards, threshold, srcPath, dstPathRoot }: {
totalShards: number;
threshold: number;
srcPath: string;
dstPathRoot: string;
}, callback: (data?: {
progress: number;
shardsPaths?: string[];
}, error?: Error) => void): Promise<void>;
generateShardsToFiles({ totalShards, threshold, inputDataBase64, dstPathRoot }: {
totalShards: number;
threshold: number;
inputDataBase64: string;
dstPathRoot: string;
}, callback: (data?: {
progress: number;
shardsPaths?: string[];
}, error?: Error) => void): Promise<void>;
restoreFromFileShards({ shardsPaths, dstPath }: {
shardsPaths: string[];
dstPath: string;
}, callback: (data: {
progress: number;
dstPath?: string;
}, error?: Error) => void): Promise<void>;
restoreFromFileShardsToData({ shardsPaths }: {
shardsPaths: string[];
}, callback: (data: {
progress: number;
dataBase64?: string;
}, error?: Error) => void): Promise<void>;
restoreFileShard({ shardIndex, shardsPaths, dstPathRoot }: {
shardIndex: number;
shardsPaths: string[];
dstPathRoot: string;
}, callback: (data: {
progress: number;
shardPath?: string;
}, error?: Error) => void): Promise<void>;
private formatShardPath;
private generateJobId;
/** Web Filesystem Configuration */
updateShamirWebFsIndexedDbConfig(config: Partial<IndexedDbConfig>): void;
}