nucypher-experimental-taco-storage
Version:
TypeScript SDK for encrypted data storage with TACo (Threshold Access Control), supporting multiple storage providers including IPFS and SQLite
53 lines • 2.97 kB
JavaScript
;
/**
* TACo Storage SDK - Professional SDK for encrypted data storage and retrieval
*
* This SDK provides a high-level interface for storing and retrieving encrypted data
* using TACo (Threshold Access Control) with multiple storage provider adapters.
*
* @example
* ```typescript
* import { TacoStorage, IPFSAdapter } from '@nucypher/taco-storage';
* import { ethers } from 'ethers';
*
* // Create storage instance with IPFS adapter
* const storage = TacoStorage.createWithIPFS({
* domain: 'devnet',
* ritualId: 123,
* });
*
* // Store encrypted data
* const signer = new ethers.Wallet('...');
* const data = new TextEncoder().encode('Hello, encrypted world!');
* const result = await storage.store(data, signer, {
* contentType: 'text/plain',
* expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1000), // 24 hours
* });
*
* // Retrieve and decrypt data
* const retrieved = await storage.retrieve(result.id, signer);
* console.log(new TextDecoder().decode(retrieved.data));
* ```
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.VERSION = exports.TacoStorageErrorType = exports.TacoStorageError = exports.SQLiteAdapter = exports.IPFSAdapter = exports.HeliaAdapter = exports.KuboAdapter = exports.BaseIPFSAdapter = exports.BaseStorageAdapter = exports.TacoEncryptionService = exports.TacoStorage = void 0;
// Core exports
var storage_1 = require("./core/storage");
Object.defineProperty(exports, "TacoStorage", { enumerable: true, get: function () { return storage_1.TacoStorage; } });
var encryption_1 = require("./core/encryption");
Object.defineProperty(exports, "TacoEncryptionService", { enumerable: true, get: function () { return encryption_1.TacoEncryptionService; } });
// Storage adapters
var adapters_1 = require("./adapters");
Object.defineProperty(exports, "BaseStorageAdapter", { enumerable: true, get: function () { return adapters_1.BaseStorageAdapter; } });
Object.defineProperty(exports, "BaseIPFSAdapter", { enumerable: true, get: function () { return adapters_1.BaseIPFSAdapter; } });
Object.defineProperty(exports, "KuboAdapter", { enumerable: true, get: function () { return adapters_1.KuboAdapter; } });
Object.defineProperty(exports, "HeliaAdapter", { enumerable: true, get: function () { return adapters_1.HeliaAdapter; } });
Object.defineProperty(exports, "IPFSAdapter", { enumerable: true, get: function () { return adapters_1.IPFSAdapter; } });
Object.defineProperty(exports, "SQLiteAdapter", { enumerable: true, get: function () { return adapters_1.SQLiteAdapter; } });
// Error handling
var types_1 = require("./types");
Object.defineProperty(exports, "TacoStorageError", { enumerable: true, get: function () { return types_1.TacoStorageError; } });
Object.defineProperty(exports, "TacoStorageErrorType", { enumerable: true, get: function () { return types_1.TacoStorageErrorType; } });
// Version information
exports.VERSION = '0.1.0';
//# sourceMappingURL=index.js.map