import { z } from 'zod'; /** * Concentration state for a character actively maintaining a concentration spell */ export declare const ConcentrationStateSchema: z.ZodObject<{ characterId: z.ZodString; activeSpell: z.ZodString; spellLevel: z.ZodNumber; targetIds: z.ZodOptional>; startedAt: z.ZodNumber; maxDuration: z.ZodOptional; saveDCBase: z.ZodDefault; }, "strip", z.ZodTypeAny, { characterId: string; activeSpell: string; spellLevel: number; startedAt: number; saveDCBase: number; targetIds?: string[] | undefined; maxDuration?: number | undefined; }, { characterId: string; activeSpell: string; spellLevel: number; startedAt: number; targetIds?: string[] | undefined; maxDuration?: number | undefined; saveDCBase?: number | undefined; }>; export type ConcentrationState = z.infer; /** * Result of a concentration check (saving throw) */ export declare const ConcentrationCheckResultSchema: z.ZodObject<{ characterId: z.ZodString; spell: z.ZodString; broken: z.ZodBoolean; reason: z.ZodEnum<["damage", "incapacitated", "death", "new_spell", "voluntary", "duration", "failed_save"]>; saveRoll: z.ZodOptional; saveDC: z.ZodOptional; saveTotal: z.ZodOptional; damageAmount: z.ZodOptional; constitutionModifier: z.ZodOptional; }, "strip", z.ZodTypeAny, { characterId: string; reason: "damage" | "duration" | "incapacitated" | "death" | "new_spell" | "voluntary" | "failed_save"; spell: string; broken: boolean; saveDC?: number | undefined; saveRoll?: number | undefined; saveTotal?: number | undefined; damageAmount?: number | undefined; constitutionModifier?: number | undefined; }, { characterId: string; reason: "damage" | "duration" | "incapacitated" | "death" | "new_spell" | "voluntary" | "failed_save"; spell: string; broken: boolean; saveDC?: number | undefined; saveRoll?: number | undefined; saveTotal?: number | undefined; damageAmount?: number | undefined; constitutionModifier?: number | undefined; }>; export type ConcentrationCheckResult = z.infer; /** * Request to break concentration (manual or automatic) */ export declare const BreakConcentrationRequestSchema: z.ZodObject<{ characterId: z.ZodString; reason: z.ZodEnum<["damage", "incapacitated", "death", "new_spell", "voluntary", "duration"]>; damageAmount: z.ZodOptional; }, "strip", z.ZodTypeAny, { characterId: string; reason: "damage" | "duration" | "incapacitated" | "death" | "new_spell" | "voluntary"; damageAmount?: number | undefined; }, { characterId: string; reason: "damage" | "duration" | "incapacitated" | "death" | "new_spell" | "voluntary"; damageAmount?: number | undefined; }>; export type BreakConcentrationRequest = z.infer; //# sourceMappingURL=concentration.d.ts.map