import { type RemoteSkillRunContract } from "./remote-run-contract.js"; export declare class RemoteSkillsClient { private apiUrl; private apiKey; constructor(apiKey: string, apiUrl?: string); private request; listSkills(): Promise; getSkillMd(slug: string): Promise; getSkill(slug: string): Promise; submitRun(slug: string, input?: Record, args?: string[]): Promise; getRun(runId: string): Promise; getRunLogs(runId: string): Promise; listRuns(limit?: number): Promise; getRunArtifacts(runId: string): Promise; downloadRunArtifact(runId: string, artifactId: string): Promise; /** * Publish a skill to the configured instance. * * Sent as multipart rather than as JSON with a base64 field. A base64 body would inflate * the bundle by a third and would have to pass through the server's JSON reader, whose * 1 MB cap exists to keep JSON bodies sane; multipart keeps the tarball on its own path * with its own, larger limit. * * Note the deliberate absence of `request()`: that helper pins * `Content-Type: application/json`, and a multipart body whose Content-Type does not * carry the generated boundary is unparseable at the other end. */ publishSkill(manifest: Record, bundle?: Uint8Array): Promise; deleteSkill(slug: string): Promise; downloadSkillBundle(slug: string): Promise; } export declare function createRemoteSkillsClient(): RemoteSkillsClient | null;