import { z } from "zod"; import type { AdditiveAgentReceipt, AdditiveTeamAttempt, AdditiveTeamReceipt } from "./team-additive-attempt.js"; declare const Intent: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; kind: z.ZodLiteral<"additive-agent-removal-attempt">; deploymentId: z.ZodString; root: z.ZodString; space: z.ZodString; managerInstanceId: z.ZodString; originalReceiptDigest: z.ZodString; createdAt: z.ZodISODateTime; }, z.core.$strict>; declare const Retired: z.ZodObject<{ name: z.ZodString; id: z.ZodString; lifecycleUid: z.ZodString; managerInstanceId: z.ZodString; managerEpoch: z.ZodNumber; slotRevision: z.ZodNumber; headRevision: z.ZodNumber; cleanupComplete: z.ZodLiteral; slotPhase: z.ZodLiteral<"retired">; headState: z.ZodLiteral<"retired">; observedAt: z.ZodISODateTime; }, z.core.$strict>; export type AgentRetirementObservation = z.infer; declare const Step: z.ZodDiscriminatedUnion<[z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; deploymentId: z.ZodString; ordinal: z.ZodNumber; phase: z.ZodLiteral<"submitted">; requestId: z.ZodUUID; recordedAt: z.ZodISODateTime; }, z.core.$strict>, z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; deploymentId: z.ZodString; ordinal: z.ZodNumber; phase: z.ZodLiteral<"retired">; requestId: z.ZodOptional; observation: z.ZodObject<{ name: z.ZodString; id: z.ZodString; lifecycleUid: z.ZodString; managerInstanceId: z.ZodString; managerEpoch: z.ZodNumber; slotRevision: z.ZodNumber; headRevision: z.ZodNumber; cleanupComplete: z.ZodLiteral; slotPhase: z.ZodLiteral<"retired">; headState: z.ZodLiteral<"retired">; observedAt: z.ZodISODateTime; }, z.core.$strict>; recordedAt: z.ZodISODateTime; }, z.core.$strict>], "phase">; declare const Receipt: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; space: z.ZodString; root: z.ZodString; managerInstanceId: z.ZodString; deploymentId: z.ZodString; originalReceiptDigest: z.ZodString; kind: z.ZodLiteral<"additive-agent-removal-receipt">; retiredAgents: z.ZodArray; slotPhase: z.ZodLiteral<"retired">; headState: z.ZodLiteral<"retired">; observedAt: z.ZodISODateTime; }, z.core.$strict>>; recordedAt: z.ZodISODateTime; }, z.core.$strict>; export type AgentRemovalAttempt = z.infer; export type AgentRemovalStep = z.infer; export type AgentRemovalReceipt = z.infer; export interface AgentRemovalInventory { attempts: AgentRemovalAttempt[]; steps: AgentRemovalStep[]; returned: AgentRemovalReceipt[]; refused: { path: string; why: string; }[]; } /** Removal history is never authority to stop a name. Only a full original-receipt-bound sequence * can release the root's known additive blocker; malformed and orphan records stay blocking. */ export declare function readAgentTeamRemovals(root: string, attempts: readonly AdditiveTeamAttempt[], receipts: readonly AdditiveTeamReceipt[]): AgentRemovalInventory; export declare function writeAgentRemovalAttempt(root: string, attempt: AdditiveTeamAttempt, receipt: AdditiveAgentReceipt): AgentRemovalAttempt; export declare function writeAgentRemovalStep(root: string, intent: AgentRemovalAttempt, ordinal: number, value: { phase: "submitted"; requestId: string; } | { phase: "retired"; requestId?: string; observation: AgentRetirementObservation; }): void; export declare function writeAgentRemovalReceipt(root: string, intent: AgentRemovalAttempt, retiredAgents: readonly AgentRetirementObservation[]): void; export {}; //# sourceMappingURL=team-agent-removal.d.ts.map