@prestizni-software/client-dem 0.5.8 → 0.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,29 +1,35 @@
1
- import { AutoUpdatedClientObject, DEMClientCallbacks } from "./AutoUpdatedClientObjectClass.js";
2
- import { AutoUpdateManager } from "./AutoUpdateManagerClass.js";
3
- import { Constructor, EventEmitter3, IsData, LoggersType, MongoId, InstanceOf, IDEMSocket } from "./CommonTypes.js";
4
1
  import { Socket } from "socket.io-client";
5
- export type AUCDefinitions<T extends Record<string, Constructor<AutoUpdatedClientObject<any, any>>> = any> = {
6
- [K in keyof T]: T[K];
2
+ import { AutoUpdateManager } from "./AutoUpdateManagerClass";
3
+ import { AutoUpdatedClientObject, DEMClientCallbacks } from "./AutoUpdatedClientObjectClass";
4
+ import { Constructor, IsData, LoggersType, Pure } from "./CommonTypes";
5
+ import { EventEmitter } from "eventemitter3";
6
+ export type WrappedInstances<T extends Record<string, Constructor<AutoUpdatedClientObject<any>>>> = {
7
+ [K in keyof T]: AutoUpdateClientManager<InstanceType<T[K]>>;
7
8
  };
8
- export type WrappedClientInstances<T extends Record<string, Constructor<AutoUpdatedClientObject<any, any>>>> = {
9
- [K in keyof T]: AutoUpdateClientManager<InstanceOf<T[K]>, WrappedClientInstances<T>>;
10
- };
11
- export declare function AUCManagerFactory<T extends Record<string, Constructor<AutoUpdatedClientObject<any, any>>>>(defs: T, loggers: LoggersType, socket: Socket, doDebug?: boolean, emitter?: EventEmitter3): Promise<WrappedClientInstances<T>>;
12
- export declare class AutoUpdateClientManager<T extends AutoUpdatedClientObject<T, M>, M extends Record<string, any> = Record<string, any>> extends AutoUpdateManager<T, M> {
13
- protected objects_: Record<string, T>;
9
+ export declare function AUCManagerFactory<T extends Record<string, Constructor<AutoUpdatedClientObject<any>>>>(defs: T, loggers: LoggersType, socket: Socket, doDebug?: boolean, emitter?: EventEmitter, callbacks?: Partial<{
10
+ [K in keyof T]: Partial<DEMClientCallbacks<InstanceType<T[K]>>>;
11
+ } & Partial<DEMClientCallbacks<any>>>): Promise<WrappedInstances<T>>;
12
+ export declare class AutoUpdateClientManager<T extends AutoUpdatedClientObject<any>> extends AutoUpdateManager<T> {
13
+ protected objects_: {
14
+ [_id: string]: T;
15
+ };
16
+ readonly managers: Record<string, AutoUpdateClientManager<AutoUpdatedClientObject<any>>>;
14
17
  callbacks: DEMClientCallbacks<T>;
15
- constructor(classParam: Constructor<T>, className: string, socket: IDEMSocket, loggers: LoggersType, managers: M, emitter: EventEmitter3, callbacks?: DEMClientCallbacks<T>);
16
- preLoad(data: (IsData<T> | string)[]): Promise<void>;
18
+ readonly socket: Socket;
19
+ totalObjects: number;
20
+ loadedObjects: number;
21
+ constructor(classParam: Constructor<T>, className: string, socket: Socket, loggers: LoggersType, managers: Record<string, AutoUpdateClientManager<AutoUpdatedClientObject<any>>>, emitter: EventEmitter, callbacks: DEMClientCallbacks<T>);
22
+ private startSocketListeners;
23
+ loadFromServer(t?: {
24
+ s: number;
25
+ f: number;
26
+ }): Promise<void>;
27
+ private checkLoadability;
17
28
  getObject(_id?: string): T | null | undefined;
18
- get objects(): Record<string, T>;
29
+ get objects(): {
30
+ [_id: string]: T;
31
+ };
19
32
  get objectsAsArray(): T[];
20
33
  handleGetMissingObject(_id: string): Promise<T>;
21
- createObject(data: Omit<IsData<T>, "_id">): Promise<T>;
22
- startSocketListeners(): void;
23
- deleteObject(_id: MongoId): Promise<{
24
- success: boolean;
25
- message: string;
26
- }>;
27
- loadFromServer(): Promise<void>;
28
- close(): Promise<void>;
34
+ createObject(data: Omit<IsData<Pure<T>>, "_id">): Promise<T>;
29
35
  }
@@ -1,68 +1,238 @@
1
- import { AutoUpdateManager } from "./AutoUpdateManagerClass.js";
2
- import { EVENT_STARTUP, globalCache, EVENT_NEW, EVENT_DELETE, } from "./CommonTypes.js";
1
+ import { AutoUpdateManager } from "./AutoUpdateManagerClass";
2
+ import { globalCache } from "./CommonTypes";
3
3
  import { EventEmitter } from "eventemitter3";
4
- export async function AUCManagerFactory(defs, loggers, socket, doDebug = false, emitter = new EventEmitter()) {
4
+ export async function AUCManagerFactory(defs, loggers, socket, doDebug = false, emitter = new EventEmitter(), callbacks = {}) {
5
+ const defaultCallbacks = {
6
+ new: callbacks.new ?? ((x) => { }),
7
+ update: callbacks.update ?? ((x, y) => { }),
8
+ delete: callbacks.delete ?? ((x) => { }),
9
+ progress: callbacks.progress ?? ((x) => { }),
10
+ };
11
+ if (!doDebug) {
12
+ loggers.debug = (_) => { };
13
+ }
14
+ let wholeProgress = 0;
15
+ let numberOfManagers = Object.keys(defs).length || 1;
16
+ const progressUpdater = callbacks.progress ?? ((x) => { });
17
+ const innerProgressUpdater = (fraction) => {
18
+ progressUpdater(wholeProgress + (numberOfManagers == 0 ? 1 : fraction / numberOfManagers));
19
+ if (fraction == 1)
20
+ wholeProgress += numberOfManagers == 0 ? 1 : fraction / numberOfManagers;
21
+ };
5
22
  const managers = {};
23
+ const startStartTime = Date.now();
24
+ let startTime = Date.now();
6
25
  for (const key in defs) {
7
- const className = key;
8
- const classParam = defs[key];
9
- const manager = new AutoUpdateClientManager(classParam, className, socket, loggers, managers, emitter);
10
- managers[key] = manager;
11
- manager.startSocketListeners();
12
- }
13
- const individualStartup = Promise.all(Object.entries(managers).map(([key, manager]) => {
14
- return new Promise((res) => {
15
- if (!socket || typeof socket.emit !== "function")
16
- return res();
17
- socket.emit(EVENT_STARTUP + key, null, async (response) => {
18
- if (response.success && response.data) {
19
- const data = response.data.ids ||
20
- (Array.isArray(response.data) ? response.data : []);
21
- await manager.preLoad(data);
22
- }
23
- else if (!response.success) {
24
- loggers?.error?.("Error starting up " + key + ": " + response.message);
25
- }
26
- res();
26
+ try {
27
+ const Model = defs[key];
28
+ const c = new AutoUpdateClientManager(Model, key, socket, loggers, managers, emitter, {
29
+ ...defaultCallbacks,
30
+ ...callbacks[key],
31
+ progress: innerProgressUpdater,
27
32
  });
28
- });
29
- }));
30
- await individualStartup;
31
- for (const manager of Object.values(managers)) {
32
- await manager.loadReferences();
33
+ managers[key] = c;
34
+ }
35
+ catch (error) {
36
+ if (error.message.includes("Local type does not match server type for manager"))
37
+ throw error;
38
+ let message = `Creating manager for: ${key}`;
39
+ message += "\n Error creating manager: " + key;
40
+ message += "\n " + error.message;
41
+ loggers.error?.(message);
42
+ loggers.error?.(error.stack);
43
+ continue;
44
+ }
33
45
  }
46
+ loggers.debug?.("Created all managers in " + (Date.now() - startTime) + "ms");
47
+ startTime = Date.now();
48
+ const loadPromises = Object.keys(defs).map(async (key) => {
49
+ let temp2 = { s: Date.now(), f: 0 };
50
+ try {
51
+ if (!managers[key]) {
52
+ throw new Error(`Manager ${key} was not created due to previous error`);
53
+ }
54
+ await managers[key].loadFromServer(temp2);
55
+ loggers.debug?.("Loaded data from server for manager: " +
56
+ key +
57
+ " in " +
58
+ (temp2.f - temp2.s) +
59
+ "ms");
60
+ }
61
+ catch (error) {
62
+ if (error.message.includes("Local type does not match server type for manager"))
63
+ throw error;
64
+ let message = "Error loading data from server for manager: " + key;
65
+ message += "\n " + error.message;
66
+ message += "\n Failed in " + (temp2.f - temp2.s) + "ms";
67
+ loggers.error?.(message);
68
+ loggers.error?.(error.stack);
69
+ }
70
+ });
71
+ await Promise.all(loadPromises);
72
+ loggers.debug?.("Loaded data from server for all managers in " +
73
+ (Date.now() - startTime) +
74
+ "ms");
75
+ loggers.info?.("Loaded all managers in " + (Date.now() - startStartTime) + "ms");
34
76
  return managers;
35
77
  }
36
78
  export class AutoUpdateClientManager extends AutoUpdateManager {
37
79
  objects_ = {};
80
+ managers;
38
81
  callbacks;
82
+ socket;
83
+ totalObjects = 0;
84
+ loadedObjects = 0;
39
85
  constructor(classParam, className, socket, loggers, managers, emitter, callbacks) {
40
86
  super(classParam, className, socket, loggers, managers, emitter);
41
- this.callbacks = callbacks || {
42
- new: () => { },
43
- update: () => { },
44
- delete: () => { },
45
- progress: () => { },
46
- };
87
+ this.socket = socket;
88
+ this.managers = managers;
89
+ this.callbacks = callbacks;
47
90
  }
48
- async preLoad(data) {
49
- const promises = data.map(async (d) => {
50
- const id = typeof d === "string" ? d : d._id?.toString();
51
- if (!id)
52
- return;
53
- if (this.objects_[id])
54
- return;
55
- const obj = new this.classParam(this.classParam, this.socket, d, this.loggers, this.className, this, this.callbacks, this.emitter);
56
- this.objects_[id] = obj;
57
- globalCache.objects[id] = { className: this.className, object: obj };
58
- await obj.waitForPreloaded();
91
+ startSocketListeners() {
92
+ this.socket.on("new" + this.className, async (id) => {
93
+ this.loggers.debug("Applying new object from manager " + this.className + " - " + id);
94
+ try {
95
+ this.totalObjects += 1;
96
+ await this.handleGetMissingObject(id);
97
+ this.loadedObjects += 1;
98
+ }
99
+ catch (error) {
100
+ this.loggers.error("Error loading object " +
101
+ id +
102
+ " from manager " +
103
+ this.className +
104
+ " - " +
105
+ error.message);
106
+ this.loggers.error(error.stack);
107
+ }
108
+ });
109
+ this.socket.on("delete" + this.className, async (id) => {
110
+ this.loggers.debug("Applying object deletion from manager " + this.className + " - " + id);
111
+ try {
112
+ this.totalObjects -= 1;
113
+ this.loadedObjects -= 1;
114
+ await this.deleteObject(id);
115
+ }
116
+ catch (error) {
117
+ this.loggers.error("Error applying object deletion from manager " +
118
+ this.className +
119
+ " - " +
120
+ id);
121
+ this.loggers.error(error.message);
122
+ this.loggers.error(error.stack);
123
+ }
59
124
  });
60
- await Promise.all(promises);
61
- this.isLoaded_ = true;
62
- this.loggers.info(`Created manager [${Object.keys(this.objects_).length}/${data.length}]`);
125
+ }
126
+ async loadFromServer(t) {
127
+ await new Promise((resolve, reject) => {
128
+ this.socket.emit("startup" + this.className, null, async (res) => {
129
+ if (!res.success) {
130
+ this.loggers.error("Error loading ids from server for manager");
131
+ this.loggers.error(res.message);
132
+ reject(new Error(res.message));
133
+ return;
134
+ }
135
+ const data = res.data;
136
+ let extraProperties = [];
137
+ for (const property of this.properties) {
138
+ if (typeof property !== "string")
139
+ throw new Error("Only string keys allowed. Not this shit: " + String(property));
140
+ if (property === "_id")
141
+ continue;
142
+ if (data.properties.includes(property))
143
+ data.properties.splice(data.properties.indexOf(property), 1);
144
+ else
145
+ extraProperties.push(property);
146
+ }
147
+ let { allowedToLoad, errorMessage } = this.checkLoadability(extraProperties, data);
148
+ if (!allowedToLoad) {
149
+ this.loggers.error?.(errorMessage);
150
+ reject(new Error(errorMessage));
151
+ return;
152
+ }
153
+ this.loggers.debug("Loading manager DB " +
154
+ this.className +
155
+ " - [" +
156
+ data.ids.length +
157
+ "] entries");
158
+ if (this.loggers.debug && this.loggers.debug.toString().length > 15) {
159
+ this.loggers.debug(data.ids.join(", "));
160
+ }
161
+ this.totalObjects = data.ids.length;
162
+ for (const id of data.ids) {
163
+ try {
164
+ this.objects_[id] = new this.classParam(this.classParam, this.socket, id, this.loggers, this.className, this, this.callbacks, this.emitter);
165
+ globalCache.objects[id] = {
166
+ className: this.className,
167
+ object: this.objects_[id],
168
+ };
169
+ }
170
+ catch (error) {
171
+ this.loggers.error("Error loading object " +
172
+ id +
173
+ " from manager " +
174
+ this.className +
175
+ " - " +
176
+ error.message);
177
+ this.loggers.error(error.stack);
178
+ }
179
+ }
180
+ const objectPromises = Object.keys(this.objects_).map(async (id) => {
181
+ const obj = this.objects_[id];
182
+ try {
183
+ await obj.isPreLoadedAsync();
184
+ await obj.loadMissingReferences();
185
+ this.loadedObjects += 1;
186
+ if (this.totalObjects < 100 || this.loadedObjects % Math.ceil(this.totalObjects / 100) === 0 || this.loadedObjects === this.totalObjects) {
187
+ this.callbacks.progress(this.loadedObjects / this.totalObjects);
188
+ }
189
+ }
190
+ catch (error) {
191
+ this.loggers.error("Error loading object " +
192
+ id +
193
+ " from manager " +
194
+ this.className +
195
+ " - " +
196
+ error.message);
197
+ this.loggers.error(error.stack);
198
+ }
199
+ });
200
+ await Promise.all(objectPromises);
201
+ this.loggers.info("Loaded " + this.className + " - [" + Object.keys(this.objects_).length + "] entries");
202
+ this.startSocketListeners();
203
+ this.isLoaded_ = true;
204
+ resolve();
205
+ });
206
+ });
207
+ if (t)
208
+ t.f = Date.now();
209
+ }
210
+ checkLoadability(extraProperties, data) {
211
+ let allowedToLoad = true;
212
+ let errorMessage = "Local type does not match server type for manager " + this.className;
213
+ if (extraProperties.length > 0) {
214
+ allowedToLoad = false;
215
+ errorMessage +=
216
+ "\n\nLocal type has " +
217
+ (extraProperties.length > 1
218
+ ? "these extra properties"
219
+ : "this extra property") +
220
+ ":\n" +
221
+ extraProperties.join("\n");
222
+ }
223
+ const filteredProperties = data.properties.filter(p => p !== "_id");
224
+ if (filteredProperties.length > 0) {
225
+ allowedToLoad = false;
226
+ errorMessage +=
227
+ "\n\nLocal type is missing " +
228
+ (filteredProperties.length > 1 ? "these properties" : "this property") +
229
+ ":\n" +
230
+ filteredProperties.join("\n");
231
+ }
232
+ return { allowedToLoad, errorMessage };
63
233
  }
64
234
  getObject(_id) {
65
- if (_id === undefined)
235
+ if (!_id)
66
236
  return null;
67
237
  return this.objects_[_id] || undefined;
68
238
  }
@@ -73,121 +243,45 @@ export class AutoUpdateClientManager extends AutoUpdateManager {
73
243
  return Object.values(this.objects_);
74
244
  }
75
245
  async handleGetMissingObject(_id) {
246
+ if (this.getObject(_id))
247
+ return this.getObject(_id);
248
+ if (!_id)
249
+ throw new Error("No id.");
250
+ if (!this.managers)
251
+ throw new Error(`No managers.`);
76
252
  if (this.objects_[_id])
77
253
  return this.objects_[_id];
78
- return new Promise((resolve, reject) => {
79
- // console.log("handleGetMissingObject socket check", typeof this.socket?.emit);
80
- if (!this.socket || typeof this.socket.emit !== "function") {
81
- return reject(new Error("this.socket.emit is not a function"));
82
- }
83
- this.socket.emit("get" + this.className + _id, null, async (res) => {
84
- if (res.success && res.data) {
85
- const dataRec = res.data;
86
- const objId = dataRec._id ||
87
- (Array.isArray(dataRec.ids) && dataRec.ids.length > 0
88
- ? dataRec.ids[0]
89
- : undefined) ||
90
- _id;
91
- const obj = new this.classParam(this.classParam, this.socket, res.data, this.loggers, this.className, this, this.callbacks, this.emitter);
92
- this.objects_[objId] = obj;
93
- globalCache.objects[objId] = {
94
- className: this.className,
95
- object: obj,
96
- };
97
- await obj.waitForPreloaded?.();
98
- try {
99
- await obj.resolveReferences();
100
- }
101
- catch (e) {
102
- this.loggers.error(`Error resolving references for missing object ${objId}: ${e}`);
103
- }
104
- resolve(obj);
105
- }
106
- else {
107
- reject(new Error(res.message || "Non existent or not accesable."));
108
- }
109
- });
110
- });
254
+ const object = new this.classParam(this.classParam, this.socket, _id, this.loggers, this.className, this, this.callbacks, this.emitter);
255
+ await object.waitForPreloaded();
256
+ if (object.loadError)
257
+ throw new Error(object.loadError);
258
+ this.objects_[object._id] = object;
259
+ globalCache.objects[object._id] = { className: this.className, object };
260
+ await object.isPreLoadedAsync();
261
+ await object.loadMissingReferences();
262
+ this.callbacks.new(this);
263
+ return object;
111
264
  }
112
265
  async createObject(data) {
113
- let obj;
266
+ if (!this.managers)
267
+ throw new Error(`No managers.`);
268
+ this.loggers.debug("Creating new object from manager " + this.className);
114
269
  try {
115
- obj = new this.classParam(this.classParam, this.socket, data, this.loggers, this.className, this, this.callbacks, this.emitter);
116
- await obj.waitForPreloaded?.();
117
- const id = obj._id?.toString();
118
- if (id) {
119
- this.objects_[id] = obj;
120
- globalCache.objects[id] = { className: this.className, object: obj };
121
- try {
122
- await obj.resolveReferences();
123
- }
124
- catch (e) {
125
- this.loggers.error(`Error resolving references for created object ${id}: ${e}`);
126
- }
127
- }
128
- await this.callbacks.new(obj);
129
- return obj;
270
+ const object = new this.classParam(this.classParam, this.socket, data, this.loggers, this.className, this, this.callbacks, this.emitter);
271
+ await object.waitForPreloaded();
272
+ const id = object._id;
273
+ this.objects_[id] = object;
274
+ await this.objects_[id].isPreLoadedAsync();
275
+ await this.objects_[id].loadMissingReferences();
276
+ await this.objects_[id].contactChildren();
277
+ this.callbacks.new(this.objects_[id]);
278
+ return this.objects_[id];
130
279
  }
131
280
  catch (error) {
132
- if (obj)
133
- obj.destroyImmediate?.();
134
- this.loggers?.error?.("Error creating object: " + error.message);
281
+ this.loggers.error("Error creating new object from manager " + this.className);
282
+ this.loggers.error(error.message);
135
283
  throw error;
136
284
  }
137
285
  }
138
- startSocketListeners() {
139
- if (!this.socket || typeof this.socket.on !== "function")
140
- return;
141
- this.socket.on(EVENT_NEW + this.className, async (data) => {
142
- const id = typeof data === "string" ? data : data._id?.toString();
143
- if (!id)
144
- return;
145
- if (this.objects_[id])
146
- return;
147
- const objData = typeof data === "string" ? { _id: id } : data;
148
- const obj = new this.classParam(this.classParam, this.socket, objData, this.loggers, this.className, this, this.callbacks, this.emitter);
149
- this.objects_[id] = obj;
150
- globalCache.objects[id] = { className: this.className, object: obj };
151
- await obj.waitForPreloaded?.();
152
- try {
153
- await obj.resolveReferences();
154
- }
155
- catch (e) {
156
- this.loggers.error(`Error resolving references for new object ${id}: ${e}`);
157
- }
158
- await this.callbacks.new(obj);
159
- });
160
- this.socket.on(EVENT_DELETE + this.className, async (idStr) => {
161
- await this.deleteObject(idStr);
162
- });
163
- }
164
- async deleteObject(_id) {
165
- const idStr = typeof _id === "string" ? _id : _id.id.toString();
166
- const obj = this.objects_[idStr];
167
- if (obj) {
168
- let res = {
169
- success: true,
170
- message: "Deleted",
171
- };
172
- if (typeof obj.destroy === "function") {
173
- res = await obj.destroy(true);
174
- }
175
- if (res.success) {
176
- delete this.objects_[idStr];
177
- delete globalCache.objects[idStr];
178
- await this.callbacks.delete(obj);
179
- }
180
- return res;
181
- }
182
- return { success: true, message: "Already gone" };
183
- }
184
- async loadFromServer() {
185
- this.loggers?.error?.("loadFromServer property mismatch");
186
- throw new Error("Property mismatch or not implemented");
187
- }
188
- async close() {
189
- Object.values(this.objects_).forEach((obj) => obj.destroyImmediate());
190
- this.objects_ = {};
191
- }
192
286
  }
193
287
  //# sourceMappingURL=AutoUpdateClientManagerClass.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutoUpdateClientManagerClass.js","sourceRoot":"","sources":["../AutoUpdateClientManagerClass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoUpdateClientManagerClass.js","sourceRoot":"","sources":["../AutoUpdateClientManagerClass.ts"],"names":[],"mappings":"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"}
@@ -1,36 +1,37 @@
1
- import { AutoUpdatedClientObject } from "./AutoUpdatedClientObjectClass.js";
2
- import { Constructor, EventEmitter3, LoggersType, Cache, IsData, MongoId, IDEMSocket } from "./CommonTypes.js";
1
+ import { AutoUpdatedClientObject } from "./AutoUpdatedClientObjectClass";
2
+ import { Constructor, EventEmitter3, LoggersType, Cache } from "./CommonTypes";
3
3
  import "reflect-metadata";
4
- export declare abstract class AutoUpdateManager<T extends AutoUpdatedClientObject<T, any>, M = any> {
5
- protected abstract objects_: Record<string, T>;
4
+ export declare abstract class AutoUpdateManager<T extends AutoUpdatedClientObject<any>> {
5
+ protected abstract objects_: {
6
+ [_id: string]: T;
7
+ };
6
8
  protected isLoaded_: boolean;
7
- readonly socket: IDEMSocket;
9
+ readonly socket: any;
8
10
  protected classParam: Constructor<T>;
9
- protected properties: string[];
11
+ protected properties: (keyof any)[];
10
12
  readonly className: string;
11
- readonly cache: Cache<T>;
12
- readonly managers: M;
13
+ readonly cache: Cache<any>;
14
+ readonly managers: Record<string, AutoUpdateManager<AutoUpdatedClientObject<any>>>;
13
15
  protected preloaded: boolean;
14
- protected waitingToResolveReferences: Record<string, string>;
16
+ protected waitingToResolveReferences: {
17
+ [_id: string]: string;
18
+ };
15
19
  protected loggers: LoggersType;
16
20
  protected emitter: EventEmitter3;
17
- constructor(classParam: Constructor<T>, className: string, socket: IDEMSocket, loggers: LoggersType, managers: M, emitter: EventEmitter3);
21
+ constructor(classParam: Constructor<T>, className: string, socket: any, loggers: LoggersType, managers: Record<string, AutoUpdateManager<AutoUpdatedClientObject<any>>>, emitter: EventEmitter3);
18
22
  get isLoaded(): boolean;
19
23
  close(): void;
20
24
  loadReferences(): Promise<void>;
21
- deleteObject(_id: MongoId): Promise<{
25
+ deleteObject(_id: string): Promise<{
22
26
  success: boolean;
23
27
  message: string;
24
28
  }>;
25
29
  get objectIDs(): string[];
26
30
  abstract handleGetMissingObject(_id: string): Promise<T>;
27
- abstract createObject(data: Omit<IsData<T>, "_id">): Promise<T>;
28
- /**
29
- * Returns the object with the given ID.
30
- * If _id is undefined, returns null.
31
- * If _id is provided but object is not found, returns undefined.
32
- */
31
+ abstract createObject(data: Omit<any, "_id">): Promise<T>;
33
32
  abstract getObject(_id?: string): T | null | undefined;
34
- abstract get objects(): Record<string, T>;
33
+ abstract get objects(): {
34
+ [_id: string]: T;
35
+ };
35
36
  abstract get objectsAsArray(): T[];
36
37
  }