import type { BlobStore } from '../../storage/domains/blobs/base.js'; import type { SkillVersionTree, StorageBlobEntry, StorageSkillSnapshotType } from '../../storage/types.js'; import type { SkillSource } from './skill-source.js'; /** * Result of collecting a skill's filesystem tree. * Contains the tree manifest, the blob entries to store, and parsed SKILL.md fields. */ export interface SkillPublishResult { /** Denormalized snapshot fields parsed from SKILL.md frontmatter */ snapshot: Omit; /** Content-addressable file tree manifest */ tree: SkillVersionTree; /** Blob entries to store (already deduplicated by hash) */ blobs: StorageBlobEntry[]; } /** * Collect a skill from a SkillSource for publishing. * Walks the skill directory, hashes all files, parses SKILL.md frontmatter, * and returns everything needed to create a new version. * * @param source - The SkillSource to read from (live filesystem or any other source) * @param skillPath - Path to the skill directory (containing SKILL.md) */ export declare function collectSkillForPublish(source: SkillSource, skillPath: string): Promise; /** * Publish a skill: collect files, store blobs, create version. * This is the full publish flow. * * @param source - The SkillSource to read from * @param skillPath - Path to the skill directory * @param blobStore - Where to store file blobs */ export declare function publishSkillFromSource(source: SkillSource, skillPath: string, blobStore: BlobStore): Promise; //# sourceMappingURL=publish.d.ts.map