import { z } from "zod"; import type { CodexTokenPoolV4AssignmentTarget } from "./protocol.js"; export declare const ManagedCodexV3AssignmentTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ mode: z.ZodLiteral<"UNBOUND_POOL">; }, z.core.$strict>, z.ZodObject<{ mode: z.ZodLiteral<"DIRECTORY_PRINCIPAL">; principal: z.ZodString; }, z.core.$strict>, z.ZodObject<{ mode: z.ZodLiteral<"SUBJECT">; userSubject: z.ZodString; explicitlyConfirmed: z.ZodLiteral; }, z.core.$strict>], "mode">; export declare const ManagedCodexV3EnrollmentAssignmentJournalSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; uploaderAuditSubject: z.ZodString; target: z.ZodDiscriminatedUnion<[z.ZodObject<{ mode: z.ZodLiteral<"UNBOUND_POOL">; }, z.core.$strict>, z.ZodObject<{ mode: z.ZodLiteral<"DIRECTORY_PRINCIPAL">; principal: z.ZodString; }, z.core.$strict>, z.ZodObject<{ mode: z.ZodLiteral<"SUBJECT">; userSubject: z.ZodString; explicitlyConfirmed: z.ZodLiteral; }, z.core.$strict>], "mode">; }, z.core.$strict>; export type ManagedCodexV3AssignmentTarget = z.infer; export type ManagedCodexV3EnrollmentAssignmentJournal = z.infer; export declare function resolveManagedCodexV3AssignmentTarget(options: { assignTo?: string; assignToSubject?: string; yes?: boolean; }): ManagedCodexV3AssignmentTarget; export declare function codexTokenPoolV4AssignmentTarget(target: ManagedCodexV3AssignmentTarget): CodexTokenPoolV4AssignmentTarget; export declare function prepareManagedCodexV3EnrollmentAssignment(input: { uploaderAuditSubject: string; target: ManagedCodexV3AssignmentTarget; }): ManagedCodexV3EnrollmentAssignmentJournal;