/** * In-memory {@link SkillPackStore} reference (plan `skill-pack-delivery-channel`). * * The interesting property is what `publish` refuses. This store cannot hash — * core has no crypto — so it is NOT the integrity authority for a pack, and it * does not pretend to be: the publisher mints the addresses and the installing * device re-derives and verifies every one of them. What this store CAN check * without crypto, it checks, and rejects rather than storing a pack whose * manifest and bytes already disagree at publish time: the declared path set * must be exactly the delivered path set, and every delivered file's UTF-8 byte * length must equal what its row declared. * * Storing that pair unchecked would be the worse failure mode by far — the * device would fetch, verify, reject, and have no way to tell a corrupt * publication from a tampered response. */ import { type SkillPackFileContent, type SkillPackListQuery, type SkillPackManifest, type SkillPackPublishInput, type SkillPackStore } from '../skill-pack'; import { type TenantId } from '../tenant'; export declare class InMemorySkillPackStore implements SkillPackStore { #private; publish(tenant: TenantId, input: SkillPackPublishInput): Promise; get(tenant: TenantId, name: string): Promise; list(tenant: TenantId, query: SkillPackListQuery): Promise; readFile(tenant: TenantId, name: string, path: string): Promise; }