import { type Static, Type } from "typebox"; import type { ToolDefinition } from "../extensions/types.ts"; import type { SkillLoadResult, SkillReadResult, SkillSearchResult, SkillVaultController, SkillVaultStatus } from "../skill-vault.ts"; declare const skillSchema: Type.TObject<{ action: Type.TUnion<[Type.TLiteral<"search">, Type.TLiteral<"load">, Type.TLiteral<"unload">, Type.TLiteral<"status">]>; query: Type.TOptional; name: Type.TOptional; pin: Type.TOptional; }>; export type SkillToolInput = Static; export type SkillToolDetails = { action: "search"; result: SkillSearchResult; } | { action: "load"; result: SkillLoadResult; } | { action: "unload"; result: { ok: true; unloaded: string[]; }; } | { action: "status"; result: SkillVaultStatus; }; export interface ReadOnlySkillBroker { search(query: string): SkillSearchResult; read(name: string): SkillReadResult; } declare const readOnlySkillSchema: Type.TObject<{ action: Type.TUnion<[Type.TLiteral<"search">, Type.TLiteral<"read">]>; query: Type.TOptional; name: Type.TOptional; }>; /** Worker-only read/search surface; it cannot load, unload, pin, or inspect vault slots. */ export declare function createReadOnlySkillToolDefinition(broker: ReadOnlySkillBroker): ToolDefinition; /** One compact agent surface over the host-owned skill lifecycle. */ export declare function createSkillVaultToolDefinition(vault: SkillVaultController): ToolDefinition; export {}; //# sourceMappingURL=skill.d.ts.map