/** @typedef {import('../../types/usage.js').UsageStorage} UsageStore */ /** @implements {UsageStore} */ export class UsageStorage implements UsageStore { /** * @param {import('./blob-registry.js').Registry} blobRegistry */ constructor(blobRegistry: import("./blob-registry.js").Registry); blobRegistry: import("./blob-registry.js").Registry; /** * @type {import('../types.js').EgressData[]} */ _egressRecords: import("../types.js").EgressData[]; get items(): { blob: import("../../types/blob.js").Blob; cause: import("multiformats/link/interface").Link; insertedAt: Date; space: `did:key:${string}`; size: number; }[]; /** * @param {import('../types.js').ProviderDID} provider * @param {import('../types.js').SpaceDID} space * @param {{ from: Date, to: Date }} period */ report(provider: import("../types.js").ProviderDID, space: import("../types.js").SpaceDID, period: { from: Date; to: Date; }): Promise<{ ok: { provider: `did:web:${string}`; space: `did:key:${string}`; period: { from: string; to: string; }; size: { initial: number; final: number; }; events: { cause: import("../types.js").Link; delta: number; receiptAt: string; }[]; }; }>; /** * @param {import('../types.js').ProviderDID} provider * @param {import('../types.js').SpaceDID} space * @param {{ from: Date, to: Date }} period */ reportEgress(provider: import("../types.js").ProviderDID, space: import("../types.js").SpaceDID, period: { from: Date; to: Date; }): Promise<{ ok: { provider: `did:web:${string}`; space: `did:key:${string}`; period: { from: string; to: string; }; total: number; }; }>; /** * Simulate a record of egress data for a customer. * * @param {import('../types.js').SpaceDID} space * @param {import('../types.js').AccountDID} customer * @param {import('../types.js').UnknownLink} resource * @param {number} bytes * @param {Date} servedAt * @param {import('../types.js').UnknownLink} cause */ record(space: import("../types.js").SpaceDID, customer: import("../types.js").AccountDID, resource: import("../types.js").UnknownLink, bytes: number, servedAt: Date, cause: import("../types.js").UnknownLink): Promise<{ ok: import("@storacha/capabilities/types").EgressData; }>; get egressRecords(): import("@storacha/capabilities/types").EgressData[]; } export type UsageStore = import("../../types/usage.js").UsageStorage; //# sourceMappingURL=usage-storage.d.ts.map