diff --git a/modules/mod/src/main/typescript/events.ts b/modules/mod/src/main/typescript/events.ts index 50b08ad..98eb668 100644 --- a/modules/mod/src/main/typescript/events.ts +++ b/modules/mod/src/main/typescript/events.ts @@ -8,16 +8,10 @@ // thingType: Object.values(defines.events) // } -import {JsonTable, Serdes} from "./serdes/serdes" +import {Serdes} from "./serdes/serdes" +import {FactorioEvent, JsonTable} from "./model/model"; -interface FactorioEvent extends JsonTable { - tick: uint - object_name: string, - event_type: string, - data: JsonTable, -} - const FactorioEvent = ((tick: uint, objectName: string, eventType: string, data: JsonTable) => { return { tick: tick, diff --git a/modules/mod/src/main/typescript/model/model.ts b/modules/mod/src/main/typescript/model/model.ts new file mode 100644 index 0000000..b8e4152 --- /dev/null +++ b/modules/mod/src/main/typescript/model/model.ts @@ -0,0 +1,21 @@ +export type JsonPrimitiveType = number | string | boolean | undefined | null | void + +export type JsonArray = T[] + +export type JsonTableValueType = + JsonPrimitiveType + | JsonTable + | JsonArray + | undefined + | null + +export interface JsonTable { + [key: string]: JsonTableValueType +} + +export interface FactorioEvent extends JsonTable { + tick: uint + object_name: string, + event_type: string, + data: JsonTable, +} diff --git a/modules/mod/src/main/typescript/serdes/serdes.ts b/modules/mod/src/main/typescript/serdes/serdes.ts index d2fad48..5a9cfe3 100644 --- a/modules/mod/src/main/typescript/serdes/serdes.ts +++ b/modules/mod/src/main/typescript/serdes/serdes.ts @@ -1,18 +1,3 @@ -export type JsonPrimitiveType = number | string | boolean | undefined | null | void - -export type JsonArray = T[] - -export type JsonTableValueType = - JsonPrimitiveType - | JsonTable - | JsonArray - | undefined - | null - -export interface JsonTable { - [key: string]: JsonTableValueType -} - // export type JsonArray = TValue[] // export class JsonArray extends Array { // } @@ -29,6 +14,8 @@ export interface JsonTable { // declare const JsonTable: JsonTableConstructor +import {JsonTable, JsonArray} from "../model/model"; + export namespace Serdes { export namespace Player {