import { z } from 'zod'; /** * FAILED-004: Corpse/Loot System Schema * Tracks corpses, loot tables, and harvestable resources */ export declare const CorpseStateSchema: z.ZodEnum<["fresh", "decaying", "skeletal", "gone"]>; export type CorpseState = z.infer; export declare const CorpseSchema: z.ZodObject<{ id: z.ZodString; characterId: z.ZodString; characterName: z.ZodString; characterType: z.ZodEnum<["pc", "npc", "enemy", "neutral"]>; creatureType: z.ZodOptional; cr: z.ZodOptional; worldId: z.ZodNullable; regionId: z.ZodNullable; position: z.ZodNullable>; encounterId: z.ZodNullable; state: z.ZodDefault>; stateUpdatedAt: z.ZodString; lootGenerated: z.ZodDefault; looted: z.ZodDefault; lootedBy: z.ZodNullable; lootedAt: z.ZodNullable; currency: z.ZodDefault; silver: z.ZodDefault; copper: z.ZodDefault; }, "strip", z.ZodTypeAny, { gold: number; silver: number; copper: number; }, { gold?: number | undefined; silver?: number | undefined; copper?: number | undefined; }>>; currencyLooted: z.ZodDefault; harvestable: z.ZodDefault; harvestableResources: z.ZodDefault; }, "strip", z.ZodTypeAny, { quantity: number; resourceType: string; harvested: boolean; }, { quantity: number; resourceType: string; harvested?: boolean | undefined; }>, "many">>; createdAt: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; worldId: string | null; createdAt: string; updatedAt: string; characterId: string; encounterId: string | null; currency: { gold: number; silver: number; copper: number; }; position: { x: number; y: number; } | null; characterType: "npc" | "pc" | "enemy" | "neutral"; regionId: string | null; state: "gone" | "skeletal" | "fresh" | "decaying"; characterName: string; stateUpdatedAt: string; lootGenerated: boolean; looted: boolean; lootedBy: string | null; lootedAt: string | null; currencyLooted: boolean; harvestable: boolean; harvestableResources: { quantity: number; resourceType: string; harvested: boolean; }[]; creatureType?: string | undefined; cr?: number | undefined; }, { id: string; worldId: string | null; createdAt: string; updatedAt: string; characterId: string; encounterId: string | null; position: { x: number; y: number; } | null; characterType: "npc" | "pc" | "enemy" | "neutral"; regionId: string | null; characterName: string; stateUpdatedAt: string; lootedBy: string | null; lootedAt: string | null; currency?: { gold?: number | undefined; silver?: number | undefined; copper?: number | undefined; } | undefined; state?: "gone" | "skeletal" | "fresh" | "decaying" | undefined; creatureType?: string | undefined; cr?: number | undefined; lootGenerated?: boolean | undefined; looted?: boolean | undefined; currencyLooted?: boolean | undefined; harvestable?: boolean | undefined; harvestableResources?: { quantity: number; resourceType: string; harvested?: boolean | undefined; }[] | undefined; }>; export type Corpse = z.infer; export declare const LootTableEntrySchema: z.ZodObject<{ itemId: z.ZodNullable; itemTemplateId: z.ZodNullable; itemName: z.ZodOptional; quantity: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, "strip", z.ZodTypeAny, { max: number; min: number; }, { max: number; min: number; }>; weight: z.ZodNumber; conditions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }, { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }>; export type LootTableEntry = z.infer; export declare const LootTableSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; creatureTypes: z.ZodArray; crRange: z.ZodOptional>; guaranteedDrops: z.ZodDefault; itemTemplateId: z.ZodNullable; itemName: z.ZodOptional; quantity: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, "strip", z.ZodTypeAny, { max: number; min: number; }, { max: number; min: number; }>; weight: z.ZodNumber; conditions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }, { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }>, "many">>; randomDrops: z.ZodDefault; itemTemplateId: z.ZodNullable; itemName: z.ZodOptional; quantity: z.ZodObject<{ min: z.ZodNumber; max: z.ZodNumber; }, "strip", z.ZodTypeAny, { max: number; min: number; }, { max: number; min: number; }>; weight: z.ZodNumber; conditions: z.ZodOptional>; }, "strip", z.ZodTypeAny, { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }, { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }>, "many">>; currencyRange: z.ZodOptional; silver: z.ZodOptional>; copper: z.ZodOptional>; }, "strip", z.ZodTypeAny, { gold: { max: number; min: number; }; silver?: { max: number; min: number; } | undefined; copper?: { max: number; min: number; } | undefined; }, { gold: { max: number; min: number; }; silver?: { max: number; min: number; } | undefined; copper?: { max: number; min: number; } | undefined; }>>; harvestableResources: z.ZodOptional; dcRequired: z.ZodOptional; }, "strip", z.ZodTypeAny, { quantity: { max: number; min: number; }; resourceType: string; dcRequired?: number | undefined; }, { quantity: { max: number; min: number; }; resourceType: string; dcRequired?: number | undefined; }>, "many">>; createdAt: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; name: string; createdAt: string; updatedAt: string; creatureTypes: string[]; guaranteedDrops: { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }[]; randomDrops: { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }[]; harvestableResources?: { quantity: { max: number; min: number; }; resourceType: string; dcRequired?: number | undefined; }[] | undefined; crRange?: { max: number; min: number; } | undefined; currencyRange?: { gold: { max: number; min: number; }; silver?: { max: number; min: number; } | undefined; copper?: { max: number; min: number; } | undefined; } | undefined; }, { id: string; name: string; createdAt: string; updatedAt: string; creatureTypes: string[]; harvestableResources?: { quantity: { max: number; min: number; }; resourceType: string; dcRequired?: number | undefined; }[] | undefined; crRange?: { max: number; min: number; } | undefined; guaranteedDrops?: { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }[] | undefined; randomDrops?: { itemId: string | null; weight: number; quantity: { max: number; min: number; }; itemTemplateId: string | null; conditions?: string[] | undefined; itemName?: string | undefined; }[] | undefined; currencyRange?: { gold: { max: number; min: number; }; silver?: { max: number; min: number; } | undefined; copper?: { max: number; min: number; } | undefined; } | undefined; }>; export type LootTable = z.infer; export declare const CORPSE_DECAY_RULES: { fresh_to_decaying: number; decaying_to_skeletal: number; skeletal_to_gone: number; }; export declare const DEFAULT_LOOT_TABLES: Omit[]; //# sourceMappingURL=corpse.d.ts.map