module eu.jonahbauer.wizard.common {
    exports eu.jonahbauer.wizard.common.machine;
    exports eu.jonahbauer.wizard.common.messages;
    exports eu.jonahbauer.wizard.common.messages.client;
    exports eu.jonahbauer.wizard.common.messages.data;
    exports eu.jonahbauer.wizard.common.messages.observer;
    exports eu.jonahbauer.wizard.common.messages.player;
    exports eu.jonahbauer.wizard.common.messages.server;
    exports eu.jonahbauer.wizard.common.model;
    exports eu.jonahbauer.wizard.common.util;

    opens eu.jonahbauer.wizard.common.messages.client to com.fasterxml.jackson.databind;
    opens eu.jonahbauer.wizard.common.messages.data to com.fasterxml.jackson.databind;
    opens eu.jonahbauer.wizard.common.messages.observer to com.fasterxml.jackson.databind;
    opens eu.jonahbauer.wizard.common.messages.player to com.fasterxml.jackson.databind;
    opens eu.jonahbauer.wizard.common.messages.server to com.fasterxml.jackson.databind;

    requires com.fasterxml.jackson.databind;
    requires com.fasterxml.jackson.module.paramnames;

    requires static lombok;
    requires static org.jetbrains.annotations;
}