/** * `synap market` — the template AUTHORING loop. * ============================================= * * The other half of `market` (browse/install/update/installed lives in * `market.ts`): the create→publish path an author walks. * * synap market scaffold — write a minimal valid .template.yaml * synap market validate — run the ONE shared validator, fast feedback * synap market publish — validate, then upsert to the CP (private by default) * synap market publish --from-workspace — serialize a LIVE workspace, then publish * synap market unpublish — flip a published package back to private * * REUSE: validation is the shared `validateTemplate` (via `lib/template-file`); * CP transport is `lib/cp-packages` (`publishPackage`/`unpublishPackage`); the * pod `to-template` serializer is reached through the standard hub client. No * fetch is hand-rolled here. */ import { type PackageDefinitionLike } from "../lib/template-file.js"; export declare function marketValidate(file: string, opts: { json?: boolean; }): Promise; export declare function marketScaffold(slug: string, opts: { json?: boolean; }): Promise; /** * POST `/api/hub/workspaces/:id/to-template` — the pod-native serializer that * turns a LIVE workspace into a full `PackageDefinition`. The one door for the * `--from-workspace` publish path; mirrors every other `/api/hub/*` call. */ export declare function fetchWorkspaceAsTemplate(workspaceId: string, opts: { podUrl?: string; apiKey?: string; }): Promise; export declare function marketPublish(file: string | undefined, opts: { public?: boolean; private?: boolean; fromWorkspace?: string; json?: boolean; podUrl?: string; apiKey?: string; }): Promise; export declare function marketUnpublish(slug: string, opts: { json?: boolean; }): Promise;