/**
 * Child - Base class for embedded objects like abilities, talents, upgrades
 * These don't have their own files but live inside entities
 */
import { Universal } from "./universal.js";
/**
 * Child class for embedded content that needs parent context
 * Usage: new SomeChild("Name", parentId, (child) => { child.description = "..."; })
 */
export declare abstract class Child extends Universal {
    _parentId?: string | (() => string);
    _parentUUID?: string | (() => string);
    _uuid?: string;
    get parentId(): string;
    protected set parentId(value: string | (() => string));
    get parentUUID(): string;
    set parentUUID(value: string | (() => string));
    /** Auto-generated slug from name */
    get slug(): string;
    /** Auto-generated ID from parent ID + type + slug */
    get id(): string;
    /**
     * Auto-generated hierarchical UUID from parent UUID + child path
     * Format: {parentUuid}:{childPathSuffix}
     */
    get uuid(): string;
    set uuid(value: string);
    /** JSON.stringify() calls this automatically */
    toJSON(): Record<string, any>;
}
//# sourceMappingURL=child.d.ts.map