import { z } from 'zod';
export declare const sessionIdSchema: z.core.$ZodBranded<z.ZodString, "SessionId", "out">;
export type SessionId = z.infer<typeof sessionIdSchema>;
export declare function parseSessionId(value: string): SessionId;
export declare const claudeSessionStatusSchema: z.ZodEnum<{
    completed: "completed";
    failed: "failed";
    dispatched: "dispatched";
    "timed-out": "timed-out";
    cleaned: "cleaned";
}>;
export declare const claudeSessionJobTypeSchema: z.ZodEnum<{
    review: "review";
    followup: "followup";
    "ember-chat": "ember-chat";
}>;
export declare const claudeSessionSchema: z.ZodObject<{
    sessionId: z.core.$ZodBranded<z.ZodString, "SessionId", "out">;
    jobId: z.ZodString;
    jobType: z.ZodEnum<{
        review: "review";
        followup: "followup";
        "ember-chat": "ember-chat";
    }>;
    localPath: z.ZodString;
    mergeRequestId: z.ZodString;
    dispatchedAt: z.ZodDate;
    status: z.ZodEnum<{
        completed: "completed";
        failed: "failed";
        dispatched: "dispatched";
        "timed-out": "timed-out";
        cleaned: "cleaned";
    }>;
    failureReason: z.ZodNullable<z.ZodString>;
}, z.core.$strip>;
export type ClaudeSession = z.infer<typeof claudeSessionSchema>;
export type ClaudeSessionStatus = z.infer<typeof claudeSessionStatusSchema>;
export type ClaudeSessionJobType = z.infer<typeof claudeSessionJobTypeSchema>;
//# sourceMappingURL=claudeSession.schema.d.ts.map