import { IStorageProvider, RevocationList, CredentialSchema, StorageConfig } from '../types'; import { VerifiableCredential, PhoneNumber, Address, EmailAddress } from '../../types'; import { DIDDocument } from '../../types/did'; export declare class IPFSStorageProvider implements IStorageProvider { private ipfsClient; private localIndex; private localKeyStore; constructor(config: StorageConfig); private initializeIPFSClient; private storeToIPFS; private retrieveFromIPFS; storeDID(did: string, document: DIDDocument): Promise; resolveDID(did: string): Promise; listDIDs(owner?: string): Promise; storeCredential(credential: VerifiableCredential): Promise; getCredential(id: string): Promise; listCredentials(holder: string): Promise; deleteCredential(id: string): Promise; publishRevocation(issuerDID: string, revocationList: RevocationList): Promise; checkRevocation(issuerDID: string, credentialId: string): Promise; getRevocationList(issuerDID: string): Promise; storeKeyPair(identifier: string, encryptedKeyPair: string): Promise; retrieveKeyPair(identifier: string): Promise; deleteKeyPair(identifier: string): Promise; registerSchema(schema: CredentialSchema): Promise; getSchema(schemaId: string): Promise; listSchemas(issuerDID?: string): Promise; clear(): Promise; pin(cid: string): Promise; unpin(cid: string): Promise; getStorageStats(): Promise<{ totalItems: number; indexSize: number; ipfsNodeInfo: any; }>; storePhoneNumber(userDID: string, phoneNumber: PhoneNumber): Promise; getPhoneNumber(userDID: string, phoneId: string): Promise; listPhoneNumbers(userDID: string): Promise; updatePhoneNumber(userDID: string, phoneId: string, phoneNumber: Partial): Promise; deletePhoneNumber(userDID: string, phoneId: string): Promise; storeAddress(userDID: string, address: Address): Promise; getAddress(userDID: string, addressId: string): Promise
; listAddresses(userDID: string): Promise; updateAddress(userDID: string, addressId: string, address: Partial
): Promise; deleteAddress(userDID: string, addressId: string): Promise; storeEmailAddress(userDID: string, emailAddress: EmailAddress): Promise; getEmailAddress(userDID: string, emailId: string): Promise; listEmailAddresses(userDID: string): Promise; updateEmailAddress(userDID: string, emailId: string, emailAddress: Partial): Promise; deleteEmailAddress(userDID: string, emailId: string): Promise; } //# sourceMappingURL=ipfs-storage-provider.d.ts.map