import { type ComponentCtor } from "./Component.js";
import { type Entity } from "./Entity.js";
import { World } from "./World.js";
export interface SerializedEntity {
    id: number;
    generation: number;
    components: Record<string, unknown>;
}
export interface SerializedWorld {
    version: 1;
    entities: SerializedEntity[];
}
export declare function serializeWorld(world: World): SerializedWorld;
export declare function deserializeWorld(serialized: SerializedWorld, componentTypes: ComponentCtor[]): {
    world: World;
    remap: Map<string, Entity>;
};
//# sourceMappingURL=ECSSerializer.d.ts.map