/** * @implements {Types.ProvisionsStorage} */ export class ProvisionsStorage implements Types.ProvisionsStorage { /** * * @param {Record} providers */ constructor(providers?: Record); /** * @type {Record} */ provisions: Record; providers: Record<`did:web:${string}`, number>; /** * @returns {Types.ServiceDID[]} */ get services(): Types.ServiceDID[]; /** * * @param {Types.DIDKey} consumer */ getStorageProviders(consumer: Types.DIDKey): Promise<{ ok: any[]; }>; /** * * @param {Types.DIDKey} consumer */ hasStorageProvider(consumer: Types.DIDKey): Promise<{ ok: boolean; }>; /** * * @param {Types.Provision} item * @returns the ID generated by the system to identify this "provision" */ put(item: Types.Provision): Promise<{ error: { name: string; message: string; }; ok?: undefined; } | { ok: { id: string; }; error?: undefined; }>; /** * * @param {Types.ProviderDID} provider * @param {Types.DID<'mailto'>} customer * @returns */ getCustomer(provider: Types.ProviderDID, customer: Types.DID<"mailto">): Promise<{ ok: { did: `did:mailto:${string}`; subscriptions: string[]; }; error?: undefined; } | { error: { name: string; message: string; }; ok?: undefined; }>; /** * * @param {Types.ProviderDID} provider * @param {string} subscription * @returns */ getSubscription(provider: Types.ProviderDID, subscription: string): Promise<{ ok: Types.Provision; error?: undefined; } | { error: { name: string; message: string; }; ok?: undefined; }>; /** * * @param {Types.ProviderDID} provider * @param {string} consumer * @returns */ getConsumer(provider: Types.ProviderDID, consumer: string): Promise<{ ok: { did: `did:key:${string}`; allocated: number; limit: number; subscription: string; customer: `did:mailto:${string}`; }; error?: undefined; } | { error: { name: string; message: string; }; ok?: undefined; }>; count(): Promise; } import * as Types from '../../types.js'; //# sourceMappingURL=provisions-storage.d.ts.map