import { z } from 'zod'; import { type PluginInspection } from './validation.js'; import type { AgentPluginSourceProvenance } from './sources.js'; declare const receiptSchema: z.ZodObject<{ id: z.ZodString; revision: z.ZodString; source: z.ZodString; installedAt: z.ZodString; enabled: z.ZodBoolean; integrity: z.ZodString; capabilities: z.ZodArray; provenance: z.ZodOptional; packageName: z.ZodString; packageType: z.ZodEnum<{ extension: "extension"; plugin: "plugin"; }>; version: z.ZodString; sha256: z.ZodString; publisherVerification: z.ZodOptional>; sourceRepository: z.ZodOptional; sourceCommit: z.ZodOptional; artifactFormat: z.ZodOptional; riskTier: z.ZodOptional>; }, z.core.$strict>>; previous: z.ZodOptional; provenance: z.ZodOptional; packageName: z.ZodString; packageType: z.ZodEnum<{ extension: "extension"; plugin: "plugin"; }>; version: z.ZodString; sha256: z.ZodString; publisherVerification: z.ZodOptional>; sourceRepository: z.ZodOptional; sourceCommit: z.ZodOptional; artifactFormat: z.ZodOptional; riskTier: z.ZodOptional>; }, z.core.$strict>>; }, z.core.$strip>>; }, z.core.$strip>; export type PluginReceipt = z.infer; export interface InstalledAgentPlugin extends PluginInspection { id: string; format: 'agent-plugin'; receipt: PluginReceipt; readiness: 'ready' | 'setup_required' | 'degraded' | 'blocked'; } export interface PluginInstallPlan extends PluginInspection { integrity: string; reviewHash: string; addedCapabilities: string[]; installed: boolean; } export declare class AgentPluginStore { readonly stateDir: string; constructor(stateDir?: string); private receiptsDir; revisionKey(): string; dataDir(id: string): string; private revisionDir; private receiptPath; receipt(id: string): PluginReceipt | undefined; private write; private mutate; get(id: string): InstalledAgentPlugin | undefined; list(): InstalledAgentPlugin[]; active(): InstalledAgentPlugin[]; inspect(source: string): PluginInstallPlan; private plan; install(source: string, options?: { reviewHash?: string; replace?: boolean; expectedId?: string; sourceLabel?: string; provenance?: AgentPluginSourceProvenance; }): InstalledAgentPlugin; setEnabled(id: string, enabled: boolean): InstalledAgentPlugin; rollback(id: string): InstalledAgentPlugin; remove(id: string, removeData?: boolean): void; private withSource; } export {};