diff --git a/overcooked_simulator/utils.py b/overcooked_simulator/utils.py
index ecfb5958a982c084ce46db849fa9568483fea3e5..d380799587a28f19c67345cf8a273662de020759 100644
--- a/overcooked_simulator/utils.py
+++ b/overcooked_simulator/utils.py
@@ -3,8 +3,27 @@ import os
 import sys
 from datetime import datetime
 from enum import Enum
+from typing import TypedDict, Literal, Type, Any, Callable, Tuple
 
 from overcooked_simulator import ROOT_DIR
+from overcooked_simulator.counters import PlateConfig
+from overcooked_simulator.game_items import Item
+from overcooked_simulator.order import OrderGeneration
+from overcooked_simulator.player import PlayerConfig
+
+
+class OrderConfig(TypedDict):
+    order_gen_class: Type[OrderGeneration]
+    order_gen_kwargs: dict[str, Any]
+    serving_not_ordered_meals: Callable[[Item], Tuple[bool, float]]
+
+
+class EnvironmentConfig(TypedDict):
+    plates: PlateConfig
+    game: dict[Literal["time_limit_seconds"], int]
+    meals: dict[Literal["all"] | Literal["list"], bool | list[str]]
+    orders: OrderConfig
+    player_config: PlayerConfig
 
 
 def create_init_env_time():