Skip to main content

ControllerManager

type DataBase = {
[name: string]: unknown;
};

type ControllerEventMap<T extends DataBase> = {
[key in keyof T]: (value: T[key]) => void;
};

class ControllerManager<Data extends DataBase = DataBase> {
data: Data;

events: EventsManager<ControllerEventMap<Data>>;
}