@overlayed/app 1.4.0 → 1.6.0

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.
@@ -2,7 +2,7 @@ import { createRequire } from "node:module";
2
2
 
3
3
  //#region index.ts
4
4
  const require = createRequire(import.meta.url);
5
- const { PipeEventServer, PipeEventClient, PipeEventBase, ProcessMonitor, Process, HardwareInterface } = require("@overlayed/app/dist/native-interface/build/overlayed_native_interface_x64.node");
5
+ const { PipeEventServer, PipeEventClient, PipeEventBase, GameMonitor, GameInstance, HardwareInterface } = require("@overlayed/app/dist/native-interface/build/overlayed_native_interface_x64.node");
6
6
  let AccessLevel = /* @__PURE__ */ function(AccessLevel$1) {
7
7
  AccessLevel$1[AccessLevel$1["Default"] = 0] = "Default";
8
8
  AccessLevel$1[AccessLevel$1["Global"] = 1] = "Global";
@@ -15,4 +15,4 @@ let InjectionMethod = /* @__PURE__ */ function(InjectionMethod$1) {
15
15
  }({});
16
16
 
17
17
  //#endregion
18
- export { AccessLevel, HardwareInterface, InjectionMethod, PipeEventBase, PipeEventClient, PipeEventServer, Process, ProcessMonitor };
18
+ export { AccessLevel, GameInstance, GameMonitor, HardwareInterface, InjectionMethod, PipeEventBase, PipeEventClient, PipeEventServer };
@@ -10,68 +10,55 @@ declare const enum InjectionMethod {
10
10
  }
11
11
  //#endregion
12
12
  //#region types.d.ts
13
- declare class Process {
14
- constructor(id: number);
13
+ declare class GameInstance {
14
+ private constructor();
15
15
  injectDll(path: string, injector: string, options?: {
16
16
  method?: InjectionMethod;
17
- //maxAttemptCount?: number;
18
- //attemptRate?: number;
19
- //windowPollRate?: number;
20
- //windowWaitTimeout?: number;
21
- //processHandlePollRate?: number;
22
- //processHandleTimeout?: number;
23
- //notifyWaitTimeout?: number;
24
- }): Promise<void>; // defaults: { method: InjectionMethod.windowsHook, maxAttemptCount: 10, attemptRate: 500, windowPollRate: 100, windowWaitTimeout: 4294967295, processHandlePollRate: 1000, processHandleTimeout: 4294967295, notifyWaitTimeout: 3000 }, all times are declared in miliseconds
17
+ }): Promise<void>; // defaults: { method: InjectionMethod.windowsHook }
25
18
 
26
- readonly id: number;
27
- readonly name?: string;
28
- readonly path?: string;
29
- readonly commandLine?: string;
30
- readonly createdAt?: Date;
31
- readonly destroyedAt?: Date;
19
+ readonly identifier: string;
20
+ readonly modules: string[];
21
+ readonly allowDllInjections: boolean;
22
+ readonly hasRenderSupport: boolean;
23
+ readonly injectionDelayMs: number;
24
+ readonly processId: number;
25
+ readonly executableName: string;
26
+ readonly executablePath?: string;
32
27
  readonly is32Bit?: boolean;
33
- readonly exitCode?: number;
34
28
  readonly isElevated?: boolean;
35
- static readonly currentProcess: Process;
29
+ readonly hasElevationMismatch?: boolean;
36
30
  }
37
- declare class ProcessMonitor {
38
- constructor(options?: {
39
- pollRate?: number;
40
- }); // default: { pollRate: 1000 }; pollRate - integer in miliseconds
31
+ declare class GameMonitor {
32
+ constructor(); // the monitored games come from the raven config, fetched and registered natively
41
33
 
42
- wipeProcesses(): void;
43
- isProcessRegistered(name: string): boolean;
44
- registerProcess(name: string): void;
45
- unRegisterProcess(name: string): void;
46
34
  eventNames(): string[];
47
35
  getMaxListeners(): number;
48
36
  removeAllListeners(): this;
49
- listeners(eventName: "create"): Function[];
50
- rawListeners(eventName: "create"): Function[];
51
- listenerCount(eventName: "create", listener?: (process: Process) => void): number;
52
- on(eventName: "create", listener: (process: Process) => void): this;
53
- once(eventName: "create", listener: (process: Process) => void): this;
54
- addListener(eventName: "create", listener: (process: Process) => void): this;
55
- prependListener(eventName: "create", listener: (process: Process) => void): this;
56
- prependOnceListener(eventName: "create", listener: (process: Process) => void): this;
57
- off(eventName: "create", listener: (process: Process) => void): this;
58
- removeListener(eventName: "create", listener: (process: Process) => void): this;
59
- removeAllListeners(eventName: "create"): this;
60
- listeners(eventName: "destroy"): Function[];
61
- rawListeners(eventName: "destroy"): Function[];
62
- listenerCount(eventName: "destroy", listener?: (process: Process) => void): number;
63
- on(eventName: "destroy", listener: (process: Process) => void): this;
64
- once(eventName: "destroy", listener: (process: Process) => void): this;
65
- addListener(eventName: "destroy", listener: (process: Process) => void): this;
66
- prependListener(eventName: "destroy", listener: (process: Process) => void): this;
67
- prependOnceListener(eventName: "destroy", listener: (process: Process) => void): this;
68
- off(eventName: "destroy", listener: (process: Process) => void): this;
69
- removeListener(eventName: "destroy", listener: (process: Process) => void): this;
70
- removeAllListeners(eventName: "destroy"): this;
37
+ listeners(eventName: "launch"): Function[];
38
+ rawListeners(eventName: "launch"): Function[];
39
+ listenerCount(eventName: "launch", listener?: (game: GameInstance) => void): number;
40
+ on(eventName: "launch", listener: (game: GameInstance) => void): this;
41
+ once(eventName: "launch", listener: (game: GameInstance) => void): this;
42
+ addListener(eventName: "launch", listener: (game: GameInstance) => void): this;
43
+ prependListener(eventName: "launch", listener: (game: GameInstance) => void): this;
44
+ prependOnceListener(eventName: "launch", listener: (game: GameInstance) => void): this;
45
+ off(eventName: "launch", listener: (game: GameInstance) => void): this;
46
+ removeListener(eventName: "launch", listener: (game: GameInstance) => void): this;
47
+ removeAllListeners(eventName: "launch"): this;
48
+ listeners(eventName: "close"): Function[];
49
+ rawListeners(eventName: "close"): Function[];
50
+ listenerCount(eventName: "close", listener?: (game: GameInstance) => void): number;
51
+ on(eventName: "close", listener: (game: GameInstance) => void): this;
52
+ once(eventName: "close", listener: (game: GameInstance) => void): this;
53
+ addListener(eventName: "close", listener: (game: GameInstance) => void): this;
54
+ prependListener(eventName: "close", listener: (game: GameInstance) => void): this;
55
+ prependOnceListener(eventName: "close", listener: (game: GameInstance) => void): this;
56
+ off(eventName: "close", listener: (game: GameInstance) => void): this;
57
+ removeListener(eventName: "close", listener: (game: GameInstance) => void): this;
58
+ removeAllListeners(eventName: "close"): this;
71
59
  }
72
60
  declare class PipeEventBase {
73
61
  isConnected(): boolean;
74
- dispatch(event: string): void;
75
62
  eventNames(): string[];
76
63
  getMaxListeners(): number;
77
64
  removeAllListeners(): this;
@@ -133,5 +120,5 @@ declare class HardwareInterface {
133
120
  static generateUniqueIdentifier(): string; // results in a uuid version 4
134
121
  }
135
122
  //#endregion
136
- export { HardwareInterface, PipeEventBase, PipeEventClient, PipeEventServer, Process, ProcessMonitor };
123
+ export { GameInstance, GameMonitor, HardwareInterface, PipeEventBase, PipeEventClient, PipeEventServer };
137
124
  //# sourceMappingURL=types.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.mts","names":["AccessLevel","InjectionMethod","Process","Promise","Date","ProcessMonitor","Function","PipeEventBase","PipeEventServer","PipeEventClient","HardwareInterface"],"sources":["../index.ts","../types.d.ts"],"sourcesContent":["/// <reference types=\"node\" />\n\nimport type { AccessLevel, InjectionMethod } from \".\";\n\nexport class Process {\n\tconstructor(id: number);\n\n\tinjectDll(\n\t\tpath: string,\n\t\tinjector: string,\n\t\toptions?: {\n\t\t\tmethod?: InjectionMethod;\n\t\t\t//maxAttemptCount?: number;\n\t\t\t//attemptRate?: number;\n\t\t\t//windowPollRate?: number;\n\t\t\t//windowWaitTimeout?: number;\n\t\t\t//processHandlePollRate?: number;\n\t\t\t//processHandleTimeout?: number;\n\t\t\t//notifyWaitTimeout?: number;\n\t\t},\n\t): Promise<void>; // defaults: { method: InjectionMethod.windowsHook, maxAttemptCount: 10, attemptRate: 500, windowPollRate: 100, windowWaitTimeout: 4294967295, processHandlePollRate: 1000, processHandleTimeout: 4294967295, notifyWaitTimeout: 3000 }, all times are declared in miliseconds\n\n\treadonly id: number;\n\treadonly name?: string;\n\treadonly path?: string;\n\treadonly commandLine?: string;\n\n\treadonly createdAt?: Date;\n\treadonly destroyedAt?: Date;\n\n\treadonly is32Bit?: boolean;\n\treadonly exitCode?: number;\n\n\treadonly isElevated?: boolean;\n\n\tstatic readonly currentProcess: Process;\n}\n\nexport class ProcessMonitor {\n\tconstructor(options?: { pollRate?: number }); // default: { pollRate: 1000 }; pollRate - integer in miliseconds\n\n\twipeProcesses(): void;\n\n\tisProcessRegistered(name: string): boolean;\n\tregisterProcess(name: string): void;\n\tunRegisterProcess(name: string): void;\n\n\teventNames(): string[];\n\tgetMaxListeners(): number;\n\tremoveAllListeners(): this;\n\n\tlisteners(eventName: \"create\"): Function[];\n\trawListeners(eventName: \"create\"): Function[];\n\tlistenerCount(eventName: \"create\", listener?: (process: Process) => void): number;\n\n\ton(eventName: \"create\", listener: (process: Process) => void): this;\n\tonce(eventName: \"create\", listener: (process: Process) => void): this;\n\taddListener(eventName: \"create\", listener: (process: Process) => void): this;\n\tprependListener(eventName: \"create\", listener: (process: Process) => void): this;\n\tprependOnceListener(eventName: \"create\", listener: (process: Process) => void): this;\n\n\toff(eventName: \"create\", listener: (process: Process) => void): this;\n\tremoveListener(eventName: \"create\", listener: (process: Process) => void): this;\n\tremoveAllListeners(eventName: \"create\"): this;\n\n\tlisteners(eventName: \"destroy\"): Function[];\n\trawListeners(eventName: \"destroy\"): Function[];\n\tlistenerCount(eventName: \"destroy\", listener?: (process: Process) => void): number;\n\n\ton(eventName: \"destroy\", listener: (process: Process) => void): this;\n\tonce(eventName: \"destroy\", listener: (process: Process) => void): this;\n\taddListener(eventName: \"destroy\", listener: (process: Process) => void): this;\n\tprependListener(eventName: \"destroy\", listener: (process: Process) => void): this;\n\tprependOnceListener(eventName: \"destroy\", listener: (process: Process) => void): this;\n\n\toff(eventName: \"destroy\", listener: (process: Process) => void): this;\n\tremoveListener(eventName: \"destroy\", listener: (process: Process) => void): this;\n\tremoveAllListeners(eventName: \"destroy\"): this;\n}\n\nexport class PipeEventBase {\n\tisConnected(): boolean;\n\n\tdispatch(event: string): void;\n\n\teventNames(): string[];\n\tgetMaxListeners(): number;\n\tremoveAllListeners(): this;\n\n\tlisteners(eventName: \"event\"): Function[];\n\trawListeners(eventName: \"event\"): Function[];\n\tlistenerCount(eventName: \"event\", listener?: (event: string) => void): number;\n\n\ton(eventName: \"event\", listener: (event: string) => void): this;\n\tonce(eventName: \"event\", listener: (event: string) => void): this;\n\taddListener(eventName: \"event\", listener: (event: string) => void): this;\n\tprependListener(eventName: \"event\", listener: (event: string) => void): this;\n\tprependOnceListener(eventName: \"event\", listener: (event: string) => void): this;\n\n\toff(eventName: \"event\", listener: (event: string) => void): this;\n\tremoveListener(eventName: \"event\", listener: (event: string) => void): this;\n\tremoveAllListeners(eventName: \"event\"): this;\n\n\tlisteners(eventName: \"connected\"): Function[];\n\trawListeners(eventName: \"connected\"): Function[];\n\tlistenerCount(eventName: \"connected\", listener?: () => void): number;\n\n\ton(eventName: \"connected\", listener: () => void): this;\n\tonce(eventName: \"connected\", listener: () => void): this;\n\taddListener(eventName: \"connected\", listener: () => void): this;\n\tprependListener(eventName: \"connected\", listener: () => void): this;\n\tprependOnceListener(eventName: \"connected\", listener: () => void): this;\n\n\toff(eventName: \"connected\", listener: () => void): this;\n\tremoveListener(eventName: \"connected\", listener: () => void): this;\n\tremoveAllListeners(eventName: \"connected\"): this;\n\n\tlisteners(eventName: \"disconnected\"): Function[];\n\trawListeners(eventName: \"disconnected\"): Function[];\n\tlistenerCount(eventName: \"disconnected\", listener?: () => void): number;\n\n\ton(eventName: \"disconnected\", listener: () => void): this;\n\tonce(eventName: \"disconnected\", listener: () => void): this;\n\taddListener(eventName: \"disconnected\", listener: () => void): this;\n\tprependListener(eventName: \"disconnected\", listener: () => void): this;\n\tprependOnceListener(eventName: \"disconnected\", listener: () => void): this;\n\n\toff(eventName: \"disconnected\", listener: () => void): this;\n\tremoveListener(eventName: \"disconnected\", listener: () => void): this;\n\tremoveAllListeners(eventName: \"disconnected\"): this;\n\n\tlisteners(eventName: \"error\"): Function[];\n\trawListeners(eventName: \"error\"): Function[];\n\tlistenerCount(eventName: \"error\", listener?: () => void): number;\n\n\ton(eventName: \"error\", listener: () => void): this;\n\tonce(eventName: \"error\", listener: () => void): this;\n\taddListener(eventName: \"error\", listener: () => void): this;\n\tprependListener(eventName: \"error\", listener: () => void): this;\n\tprependOnceListener(eventName: \"error\", listener: () => void): this;\n\n\toff(eventName: \"error\", listener: () => void): this;\n\tremoveListener(eventName: \"error\", listener: () => void): this;\n\tremoveAllListeners(eventName: \"error\"): this;\n}\n\nexport class PipeEventServer extends PipeEventBase {\n\tconstructor(name: string, options?: { clientCount?: number; access?: AccessLevel }); // default: { clientCount: 1, access: AccessLevel.Default };\n}\n\nexport class PipeEventClient extends PipeEventBase {\n\tconstructor(name: string, options?: {}); // default: {};\n}\n\nexport class HardwareInterface {\n\tstatic generateUniqueIdentifier(): string; // results in a uuid version 4\n}\n"],"mappings":";;AAYkB,mBAAA,WAAA;EAMA,OAAA,GAAA,CAAA;;;;ACdLE,mBDcK,eAAA;ECPND,WAAAA,GAAAA,CAAAA;;;;cAPCC,OAAAA;;EAODD,SAAAA,CASRE,IAAAA,EAAAA,MAAAA,EAOkBC,QAAAA,EAAAA,MAAAA,EACEA,OA6B8BF,CA7B9BE,EAAAA;IAOSF,MAAAA,CAAAA,EAxBrBD,eAwBqBC;IAAO;IAGxC;IAaiCI;IACGA;IACqBJ;IAEZA;IACEA;EACOA,CAAAA,CACIA,EAtCtDC,OAsCsDD,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;;EAGZA,SAAAA,EAAAA,EAAAA,MAAAA;EACWA,SAAAA,IAAAA,CAAAA,EAAAA,MAAAA;EAGvBI,SAAAA,IAAAA,CAAAA,EAAAA,MAAAA;EACGA,SAAAA,WAAAA,CAAAA,EAAAA,MAAAA;EAGSJ,SAAAA,SAAAA,CAAAA,EA1CxBE,IA0CwBF;EACEA,SAAAA,WAAAA,CAAAA,EA1CxBE,IA0CwBF;EAEWA,SAAAA,OAAAA,CAAAA,EAAAA,OAAAA;EACIA,SAAAA,QAAAA,CAAAA,EAAAA,MAAAA;EAGLA,SAAAA,UAAAA,CAAAA,EAAAA,OAAAA;EAI1D,gBAAaK,cAAa,EA7COL,OA6CP;;AAuBUI,cAjEvBD,cAAAA,CAiEuBC;EACGA,WAAAA,CAAAA,OAAAA,CAAAA,EAAAA;IAAAA,QAAAA,CAAAA,EAAAA,MAAAA;EAAAA,CAAAA,EAAAA,CAAAA;;EAcGA,aAAAA,CAAAA,CAAAA,EAAAA,IAAAA;EAcPA,mBAAAA,CAAAA,IAAAA,EAAAA,MAAAA,CAAAA,EAAAA,OAAAA;EAAQ,eAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAc3C,iBAAaE,CAAAA,IAAe,EAAA,MAAA,CAAA,EAC0CR,IAAAA;EAOtE,UAAaU,CAAAA,CAAAA,EAAAA,MAAAA,EAAAA;;;kCAvGoBJ;qCACGA;0DACqBJ;8CAEZA;gDACEA;uDACOA;2DACIA;+DACIA;+CAEhBA;0DACWA;;mCAGvBI;sCACGA;2DACqBJ;+CAEZA;iDACEA;wDACOA;4DACIA;gEACIA;gDAEhBA;2DACWA;;;cAI7CK,aAAAA;;;;;;iCASmBD;oCACGA;;;;;;;;;;qCAaCA;wCACGA;;;;;;;;;;wCAaAA;2CACGA;;;;;;;;;;iCAaVA;oCACGA;;;;;;;;;;;cActBE,eAAAA,SAAwBD,aAAAA;;;aACiCP;;;cAGzDS,eAAAA,SAAwBF,aAAAA;;;cAIxBG,iBAAAA"}
1
+ {"version":3,"file":"types.d.mts","names":["AccessLevel","InjectionMethod","GameInstance","Promise","GameMonitor","Function","PipeEventBase","PipeEventServer","PipeEventClient","HardwareInterface"],"sources":["../index.ts","../types.d.ts"],"sourcesContent":["/// <reference types=\"node\" />\n\nimport type { AccessLevel, InjectionMethod } from \".\";\n\nexport class GameInstance {\n\tprivate constructor();\n\n\tinjectDll(\n\t\tpath: string,\n\t\tinjector: string,\n\t\toptions?: {\n\t\t\tmethod?: InjectionMethod;\n\t\t},\n\t): Promise<void>; // defaults: { method: InjectionMethod.windowsHook }\n\n\treadonly identifier: string;\n\treadonly modules: string[];\n\n\treadonly allowDllInjections: boolean;\n\treadonly hasRenderSupport: boolean;\n\n\treadonly injectionDelayMs: number;\n\n\treadonly processId: number;\n\n\treadonly executableName: string;\n\treadonly executablePath?: string;\n\n\treadonly is32Bit?: boolean;\n\treadonly isElevated?: boolean;\n\treadonly hasElevationMismatch?: boolean;\n}\n\nexport class GameMonitor {\n\tconstructor(); // the monitored games come from the raven config, fetched and registered natively\n\n\teventNames(): string[];\n\tgetMaxListeners(): number;\n\tremoveAllListeners(): this;\n\n\tlisteners(eventName: \"launch\"): Function[];\n\trawListeners(eventName: \"launch\"): Function[];\n\tlistenerCount(eventName: \"launch\", listener?: (game: GameInstance) => void): number;\n\n\ton(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\tonce(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\taddListener(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\tprependListener(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\tprependOnceListener(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\n\toff(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\tremoveListener(eventName: \"launch\", listener: (game: GameInstance) => void): this;\n\tremoveAllListeners(eventName: \"launch\"): this;\n\n\tlisteners(eventName: \"close\"): Function[];\n\trawListeners(eventName: \"close\"): Function[];\n\tlistenerCount(eventName: \"close\", listener?: (game: GameInstance) => void): number;\n\n\ton(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\tonce(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\taddListener(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\tprependListener(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\tprependOnceListener(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\n\toff(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\tremoveListener(eventName: \"close\", listener: (game: GameInstance) => void): this;\n\tremoveAllListeners(eventName: \"close\"): this;\n}\n\nexport class PipeEventBase {\n\tisConnected(): boolean;\n\n\teventNames(): string[];\n\tgetMaxListeners(): number;\n\tremoveAllListeners(): this;\n\n\tlisteners(eventName: \"event\"): Function[];\n\trawListeners(eventName: \"event\"): Function[];\n\tlistenerCount(eventName: \"event\", listener?: (event: string) => void): number;\n\n\ton(eventName: \"event\", listener: (event: string) => void): this;\n\tonce(eventName: \"event\", listener: (event: string) => void): this;\n\taddListener(eventName: \"event\", listener: (event: string) => void): this;\n\tprependListener(eventName: \"event\", listener: (event: string) => void): this;\n\tprependOnceListener(eventName: \"event\", listener: (event: string) => void): this;\n\n\toff(eventName: \"event\", listener: (event: string) => void): this;\n\tremoveListener(eventName: \"event\", listener: (event: string) => void): this;\n\tremoveAllListeners(eventName: \"event\"): this;\n\n\tlisteners(eventName: \"connected\"): Function[];\n\trawListeners(eventName: \"connected\"): Function[];\n\tlistenerCount(eventName: \"connected\", listener?: () => void): number;\n\n\ton(eventName: \"connected\", listener: () => void): this;\n\tonce(eventName: \"connected\", listener: () => void): this;\n\taddListener(eventName: \"connected\", listener: () => void): this;\n\tprependListener(eventName: \"connected\", listener: () => void): this;\n\tprependOnceListener(eventName: \"connected\", listener: () => void): this;\n\n\toff(eventName: \"connected\", listener: () => void): this;\n\tremoveListener(eventName: \"connected\", listener: () => void): this;\n\tremoveAllListeners(eventName: \"connected\"): this;\n\n\tlisteners(eventName: \"disconnected\"): Function[];\n\trawListeners(eventName: \"disconnected\"): Function[];\n\tlistenerCount(eventName: \"disconnected\", listener?: () => void): number;\n\n\ton(eventName: \"disconnected\", listener: () => void): this;\n\tonce(eventName: \"disconnected\", listener: () => void): this;\n\taddListener(eventName: \"disconnected\", listener: () => void): this;\n\tprependListener(eventName: \"disconnected\", listener: () => void): this;\n\tprependOnceListener(eventName: \"disconnected\", listener: () => void): this;\n\n\toff(eventName: \"disconnected\", listener: () => void): this;\n\tremoveListener(eventName: \"disconnected\", listener: () => void): this;\n\tremoveAllListeners(eventName: \"disconnected\"): this;\n\n\tlisteners(eventName: \"error\"): Function[];\n\trawListeners(eventName: \"error\"): Function[];\n\tlistenerCount(eventName: \"error\", listener?: () => void): number;\n\n\ton(eventName: \"error\", listener: () => void): this;\n\tonce(eventName: \"error\", listener: () => void): this;\n\taddListener(eventName: \"error\", listener: () => void): this;\n\tprependListener(eventName: \"error\", listener: () => void): this;\n\tprependOnceListener(eventName: \"error\", listener: () => void): this;\n\n\toff(eventName: \"error\", listener: () => void): this;\n\tremoveListener(eventName: \"error\", listener: () => void): this;\n\tremoveAllListeners(eventName: \"error\"): this;\n}\n\nexport class PipeEventServer extends PipeEventBase {\n\tconstructor(name: string, options?: { clientCount?: number; access?: AccessLevel }); // default: { clientCount: 1, access: AccessLevel.Default };\n}\n\nexport class PipeEventClient extends PipeEventBase {\n\tconstructor(name: string, options?: {}); // default: {};\n}\n\nexport class HardwareInterface {\n\tstatic generateUniqueIdentifier(): string; // results in a uuid version 4\n}\n"],"mappings":";;AAYkB,mBAAA,WAAA;EAMA,OAAA,GAAA,CAAA;;;;ACdLE,mBDcK,eAAA;ECeLE,WAAAA,GAAW,CAAA;;;;cA7BXF,YAAAA;;EA6Bb,SAAaE,CAOoBC,IAAAA,EAAAA,MAAAA,EACGA,QAAAA,EAAAA,MAAAA,EACkBH,OAGVA,CAHUA,EAAAA;IAEZA,MAAAA,CAAAA,EAjC9BD,eAiC8BC;EACEA,CAAAA,CACOA,EAjC/CC,OAiC+CD,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA;;EAEQA,SAAAA,UAAAA,EAAAA,MAAAA;EAEhBA,SAAAA,OAAAA,EAAAA,MAAAA,EAAAA;EAIXG,SAAAA,kBAAAA,EAAAA,OAAAA;EACGA,SAAAA,gBAAAA,EAAAA,OAAAA;EAGMH,SAAAA,gBAAAA,EAAAA,MAAAA;EAESA,SAAAA,SAAAA,EAAAA,MAAAA;EAEQA,SAAAA,cAAAA,EAAAA,MAAAA;EAEhBA,SAAAA,cAAAA,CAAAA,EAAAA,MAAAA;EACuB,SAAA,OAAA,CAAA,EAAA,OAAA;EAIjE,SAAaI,UAAa,CAAA,EAAA,OAAA;EAOMD,SAAAA,oBAAAA,CAAAA,EAAAA,OAAAA;;AAeOA,cA1D1BD,WAAAA,CA0D0BC;EAaAA,WAAAA,CAAAA,EAAAA,CAAAA;;EAcPA,UAAAA,CAAAA,CAAAA,EAAAA,MAAAA,EAAAA;EACGA,eAAAA,CAAAA,CAAAA,EAAAA,MAAAA;EAAQ,kBAAA,CAAA,CAAA,EAAA,IAAA;EAkB3C,SAAaG,CAAAA,SAAAA,EAAe,QAAA,CAAA,EAjGKH,QAiGIC,EAAAA;EAIrC,YAAaG,CAAAA,SAAAA,EAAiB,QAAA,CAAA,EApGMJ,QAoGN,EAAA;uDAnGwBH;2CAEZA;6CACEA;oDACOA;wDACIA;4DACIA;4CAEhBA;uDACWA;;iCAGtBG;oCACGA;sDACkBH;0CAEZA;4CACEA;mDACOA;uDACIA;2DACIA;2CAEhBA;sDACWA;;;cAIxCI,aAAAA;;;;;iCAOmBD;oCACGA;;;;;;;;;;qCAaCA;wCACGA;;;;;;;;;;wCAaAA;2CACGA;;;;;;;;;;iCAaVA;oCACGA;;;;;;;;;;;cActBE,eAAAA,SAAwBD,aAAAA;;;aACiCN;;;cAGzDQ,eAAAA,SAAwBF,aAAAA;;;cAIxBG,iBAAAA"}
package/dist/sand.d.ts CHANGED
@@ -115,6 +115,37 @@ declare function module(): {
115
115
  readonly key: "sand";
116
116
  readonly events: import("arktype").Module<{
117
117
  event: {
118
+ game: "sand";
119
+ type: "storm_changed";
120
+ creation_time: number;
121
+ content: {
122
+ stage: number;
123
+ total_stages: number;
124
+ state: "delay" | "idle" | "invalid" | "moving" | (string & {});
125
+ end_time: number;
126
+ radius: number;
127
+ center: {
128
+ x: number;
129
+ y: number;
130
+ z: number;
131
+ };
132
+ next_radius: number;
133
+ next_center: {
134
+ x: number;
135
+ y: number;
136
+ z: number;
137
+ };
138
+ };
139
+ } | {
140
+ game: "sand";
141
+ type: "tech_tree_item_unlocked";
142
+ creation_time: number;
143
+ content: {
144
+ id: SandTechNodeId;
145
+ name: string;
146
+ tier: number;
147
+ };
148
+ } | {
118
149
  game: "sand";
119
150
  type: "logged_in";
120
151
  creation_time: number;
@@ -159,7 +190,7 @@ declare function module(): {
159
190
  };
160
191
  } | {
161
192
  game: "sand";
162
- type: "inventory_changed";
193
+ type: "storage_changed";
163
194
  creation_time: number;
164
195
  content: {
165
196
  slots_used: number;
@@ -175,7 +206,7 @@ declare function module(): {
175
206
  };
176
207
  } | {
177
208
  game: "sand";
178
- type: "inventory_item_changed";
209
+ type: "storage_item_changed";
179
210
  creation_time: number;
180
211
  content: {
181
212
  definition: SandItemDefinition;
@@ -197,15 +228,6 @@ declare function module(): {
197
228
  is_available: boolean;
198
229
  }[];
199
230
  };
200
- } | {
201
- game: "sand";
202
- type: "tech_tree_item_unlocked";
203
- creation_time: number;
204
- content: {
205
- id: SandTechNodeId;
206
- name: string;
207
- tier: number;
208
- };
209
231
  } | {
210
232
  game: "sand";
211
233
  type: "walker_changed";
@@ -283,28 +305,6 @@ declare function module(): {
283
305
  content: {
284
306
  extraction_id: SandExtractionId;
285
307
  };
286
- } | {
287
- game: "sand";
288
- type: "storm_changed";
289
- creation_time: number;
290
- content: {
291
- stage: number;
292
- total_stages: number;
293
- state: "delay" | "idle" | "invalid" | "moving" | (string & {});
294
- end_time: number;
295
- radius: number;
296
- center: {
297
- x: number;
298
- y: number;
299
- z: number;
300
- };
301
- next_radius: number;
302
- next_center: {
303
- x: number;
304
- y: number;
305
- z: number;
306
- };
307
- };
308
308
  } | {
309
309
  game: "sand";
310
310
  type: "trampler_acquired";
@@ -374,33 +374,6 @@ declare function module(): {
374
374
  state: "aborted" | "all_left" | "decayed" | "extracted" | "failed" | "in_progress" | "invalid" | "loot_division" | "match_found" | "matchmaking" | "menu" | "waiting_for_players" | (string & {});
375
375
  };
376
376
  };
377
- inventory_changed: {
378
- game: "sand";
379
- type: "inventory_changed";
380
- creation_time: number;
381
- content: {
382
- slots_used: number;
383
- slots_total: number;
384
- crowns: number;
385
- mechanical_parts: number;
386
- pneumatic_parts: number;
387
- computing_modules: number;
388
- items: {
389
- definition: SandItemDefinition;
390
- amount: number;
391
- }[];
392
- };
393
- };
394
- inventory_item_changed: {
395
- game: "sand";
396
- type: "inventory_item_changed";
397
- creation_time: number;
398
- content: {
399
- definition: SandItemDefinition;
400
- amount: number;
401
- delta: number;
402
- };
403
- };
404
377
  logged_in: {
405
378
  game: "sand";
406
379
  type: "logged_in";
@@ -483,6 +456,33 @@ declare function module(): {
483
456
  playfab_id: SandPlayfabId;
484
457
  };
485
458
  };
459
+ storage_changed: {
460
+ game: "sand";
461
+ type: "storage_changed";
462
+ creation_time: number;
463
+ content: {
464
+ slots_used: number;
465
+ slots_total: number;
466
+ crowns: number;
467
+ mechanical_parts: number;
468
+ pneumatic_parts: number;
469
+ computing_modules: number;
470
+ items: {
471
+ definition: SandItemDefinition;
472
+ amount: number;
473
+ }[];
474
+ };
475
+ };
476
+ storage_item_changed: {
477
+ game: "sand";
478
+ type: "storage_item_changed";
479
+ creation_time: number;
480
+ content: {
481
+ definition: SandItemDefinition;
482
+ amount: number;
483
+ delta: number;
484
+ };
485
+ };
486
486
  storm_changed: {
487
487
  game: "sand";
488
488
  type: "storm_changed";
@@ -633,11 +633,11 @@ declare const AccountIdentitySchema: import("arktype/internal/variants/object.ts
633
633
  playfab_id: SandPlayfabId;
634
634
  }, {}>;
635
635
  type AccountIdentity = typeof AccountIdentitySchema.infer;
636
- declare const InventoryItemSchema: import("arktype/internal/variants/object.ts").ObjectType<{
636
+ declare const StorageItemSchema: import("arktype/internal/variants/object.ts").ObjectType<{
637
637
  definition: SandItemDefinition;
638
638
  amount: number;
639
639
  }, {}>;
640
- type InventoryItem = typeof InventoryItemSchema.infer;
640
+ type StorageItem = typeof StorageItemSchema.infer;
641
641
  declare const TechTreeNodeSchema: import("arktype/internal/variants/object.ts").ObjectType<{
642
642
  id: SandTechNodeId;
643
643
  name: string;
@@ -704,10 +704,10 @@ declare const PartyMemberLeft: import("arktype/internal/variants/object.ts").Obj
704
704
  };
705
705
  }, {}>;
706
706
  type PartyMemberLeftEvent = typeof PartyMemberLeft.infer; //#endregion
707
- //#region src/events/inventoryChanged.d.ts
708
- declare const InventoryChanged: import("arktype/internal/variants/object.ts").ObjectType<{
707
+ //#region src/events/storageChanged.d.ts
708
+ declare const StorageChanged: import("arktype/internal/variants/object.ts").ObjectType<{
709
709
  game: "sand";
710
- type: "inventory_changed";
710
+ type: "storage_changed";
711
711
  creation_time: number;
712
712
  content: {
713
713
  slots_used: number;
@@ -722,11 +722,11 @@ declare const InventoryChanged: import("arktype/internal/variants/object.ts").Ob
722
722
  }[];
723
723
  };
724
724
  }, {}>;
725
- type InventoryChangedEvent = typeof InventoryChanged.infer; //#endregion
726
- //#region src/events/inventoryItemChanged.d.ts
727
- declare const InventoryItemChanged: import("arktype/internal/variants/object.ts").ObjectType<{
725
+ type StorageChangedEvent = typeof StorageChanged.infer; //#endregion
726
+ //#region src/events/storageItemChanged.d.ts
727
+ declare const StorageItemChanged: import("arktype/internal/variants/object.ts").ObjectType<{
728
728
  game: "sand";
729
- type: "inventory_item_changed";
729
+ type: "storage_item_changed";
730
730
  creation_time: number;
731
731
  content: {
732
732
  definition: SandItemDefinition;
@@ -734,7 +734,7 @@ declare const InventoryItemChanged: import("arktype/internal/variants/object.ts"
734
734
  delta: number;
735
735
  };
736
736
  }, {}>;
737
- type InventoryItemChangedEvent = typeof InventoryItemChanged.infer; //#endregion
737
+ type StorageItemChangedEvent = typeof StorageItemChanged.infer; //#endregion
738
738
  //#region src/events/techTreeChanged.d.ts
739
739
  declare const TechTreeChanged: import("arktype/internal/variants/object.ts").ObjectType<{
740
740
  game: "sand";
@@ -938,6 +938,37 @@ type TramplerLostEvent = typeof TramplerLost.infer; //#endregion
938
938
  //#region src/events/index.d.ts
939
939
  declare const sandEvents: import("arktype").Module<{
940
940
  event: {
941
+ game: "sand";
942
+ type: "storm_changed";
943
+ creation_time: number;
944
+ content: {
945
+ stage: number;
946
+ total_stages: number;
947
+ state: "delay" | "idle" | "invalid" | "moving" | (string & {});
948
+ end_time: number;
949
+ radius: number;
950
+ center: {
951
+ x: number;
952
+ y: number;
953
+ z: number;
954
+ };
955
+ next_radius: number;
956
+ next_center: {
957
+ x: number;
958
+ y: number;
959
+ z: number;
960
+ };
961
+ };
962
+ } | {
963
+ game: "sand";
964
+ type: "tech_tree_item_unlocked";
965
+ creation_time: number;
966
+ content: {
967
+ id: SandTechNodeId;
968
+ name: string;
969
+ tier: number;
970
+ };
971
+ } | {
941
972
  game: "sand";
942
973
  type: "logged_in";
943
974
  creation_time: number;
@@ -982,7 +1013,7 @@ declare const sandEvents: import("arktype").Module<{
982
1013
  };
983
1014
  } | {
984
1015
  game: "sand";
985
- type: "inventory_changed";
1016
+ type: "storage_changed";
986
1017
  creation_time: number;
987
1018
  content: {
988
1019
  slots_used: number;
@@ -998,7 +1029,7 @@ declare const sandEvents: import("arktype").Module<{
998
1029
  };
999
1030
  } | {
1000
1031
  game: "sand";
1001
- type: "inventory_item_changed";
1032
+ type: "storage_item_changed";
1002
1033
  creation_time: number;
1003
1034
  content: {
1004
1035
  definition: SandItemDefinition;
@@ -1020,15 +1051,6 @@ declare const sandEvents: import("arktype").Module<{
1020
1051
  is_available: boolean;
1021
1052
  }[];
1022
1053
  };
1023
- } | {
1024
- game: "sand";
1025
- type: "tech_tree_item_unlocked";
1026
- creation_time: number;
1027
- content: {
1028
- id: SandTechNodeId;
1029
- name: string;
1030
- tier: number;
1031
- };
1032
1054
  } | {
1033
1055
  game: "sand";
1034
1056
  type: "walker_changed";
@@ -1106,28 +1128,6 @@ declare const sandEvents: import("arktype").Module<{
1106
1128
  content: {
1107
1129
  extraction_id: SandExtractionId;
1108
1130
  };
1109
- } | {
1110
- game: "sand";
1111
- type: "storm_changed";
1112
- creation_time: number;
1113
- content: {
1114
- stage: number;
1115
- total_stages: number;
1116
- state: "delay" | "idle" | "invalid" | "moving" | (string & {});
1117
- end_time: number;
1118
- radius: number;
1119
- center: {
1120
- x: number;
1121
- y: number;
1122
- z: number;
1123
- };
1124
- next_radius: number;
1125
- next_center: {
1126
- x: number;
1127
- y: number;
1128
- z: number;
1129
- };
1130
- };
1131
1131
  } | {
1132
1132
  game: "sand";
1133
1133
  type: "trampler_acquired";
@@ -1197,33 +1197,6 @@ declare const sandEvents: import("arktype").Module<{
1197
1197
  state: "aborted" | "all_left" | "decayed" | "extracted" | "failed" | "in_progress" | "invalid" | "loot_division" | "match_found" | "matchmaking" | "menu" | "waiting_for_players" | (string & {});
1198
1198
  };
1199
1199
  };
1200
- inventory_changed: {
1201
- game: "sand";
1202
- type: "inventory_changed";
1203
- creation_time: number;
1204
- content: {
1205
- slots_used: number;
1206
- slots_total: number;
1207
- crowns: number;
1208
- mechanical_parts: number;
1209
- pneumatic_parts: number;
1210
- computing_modules: number;
1211
- items: {
1212
- definition: SandItemDefinition;
1213
- amount: number;
1214
- }[];
1215
- };
1216
- };
1217
- inventory_item_changed: {
1218
- game: "sand";
1219
- type: "inventory_item_changed";
1220
- creation_time: number;
1221
- content: {
1222
- definition: SandItemDefinition;
1223
- amount: number;
1224
- delta: number;
1225
- };
1226
- };
1227
1200
  logged_in: {
1228
1201
  game: "sand";
1229
1202
  type: "logged_in";
@@ -1306,6 +1279,33 @@ declare const sandEvents: import("arktype").Module<{
1306
1279
  playfab_id: SandPlayfabId;
1307
1280
  };
1308
1281
  };
1282
+ storage_changed: {
1283
+ game: "sand";
1284
+ type: "storage_changed";
1285
+ creation_time: number;
1286
+ content: {
1287
+ slots_used: number;
1288
+ slots_total: number;
1289
+ crowns: number;
1290
+ mechanical_parts: number;
1291
+ pneumatic_parts: number;
1292
+ computing_modules: number;
1293
+ items: {
1294
+ definition: SandItemDefinition;
1295
+ amount: number;
1296
+ }[];
1297
+ };
1298
+ };
1299
+ storage_item_changed: {
1300
+ game: "sand";
1301
+ type: "storage_item_changed";
1302
+ creation_time: number;
1303
+ content: {
1304
+ definition: SandItemDefinition;
1305
+ amount: number;
1306
+ delta: number;
1307
+ };
1308
+ };
1309
1309
  storm_changed: {
1310
1310
  game: "sand";
1311
1311
  type: "storm_changed";
@@ -1420,4 +1420,4 @@ declare const sandEvents: import("arktype").Module<{
1420
1420
  type SandEvent = typeof sandEvents.event.infer;
1421
1421
  type SandEventType = SandEvent["type"]; //#endregion
1422
1422
  //#endregion
1423
- export { type AccountIdentity, type AccountIdentitySchema, BaseEvent, type ExtractionAddedEvent, type ExtractionRemovedEvent, type GameStateChangedEvent, type InventoryChangedEvent, type InventoryItem, type InventoryItemChangedEvent, type InventoryItemSchema, type Landmark, type LandmarkSchema, type LoggedInEvent, type MatchEndedEvent, type MatchStartedEvent, type PartyChangedEvent, type PartyMemberJoinedEvent, type PartyMemberLeftEvent, type PlayerJoinedEvent, type Position, type PositionSchema, SAND_GAME_MODES, SAND_GAME_STATES, SAND_STORM_STATES, SandAccountId, SandBlueprintId, SandCharacterId, type SandEvent, type SandEventType, SandExtractionId, SandGameMode, SandGameModeSchema, SandGameState, SandGameStateSchema, SandItemDefinition, SandLandmarkId, SandMatchId, SandPartyJoinCode, SandPlatformId, SandPlayerId, SandPlayfabId, SandStormState, SandStormStateSchema, SandTechNodeId, SandTramplerId, SandWalkerId, type StormChangedEvent, type TechTreeChangedEvent, type TechTreeItemUnlockedEvent, type TechTreeNode, type TechTreeNodeSchema, type TramplerAcquiredEvent, type TramplerChangedEvent, type TramplerLostEvent, type WalkerChangedEvent, type WorldBounds, type WorldBoundsSchema, type WorldTimeChangedEvent, module, type sandEvents };
1423
+ export { type AccountIdentity, type AccountIdentitySchema, BaseEvent, type ExtractionAddedEvent, type ExtractionRemovedEvent, type GameStateChangedEvent, type Landmark, type LandmarkSchema, type LoggedInEvent, type MatchEndedEvent, type MatchStartedEvent, type PartyChangedEvent, type PartyMemberJoinedEvent, type PartyMemberLeftEvent, type PlayerJoinedEvent, type Position, type PositionSchema, SAND_GAME_MODES, SAND_GAME_STATES, SAND_STORM_STATES, SandAccountId, SandBlueprintId, SandCharacterId, type SandEvent, type SandEventType, SandExtractionId, SandGameMode, SandGameModeSchema, SandGameState, SandGameStateSchema, SandItemDefinition, SandLandmarkId, SandMatchId, SandPartyJoinCode, SandPlatformId, SandPlayerId, SandPlayfabId, SandStormState, SandStormStateSchema, SandTechNodeId, SandTramplerId, SandWalkerId, type StorageChangedEvent, type StorageItem, type StorageItemChangedEvent, type StorageItemSchema, type StormChangedEvent, type TechTreeChangedEvent, type TechTreeItemUnlockedEvent, type TechTreeNode, type TechTreeNodeSchema, type TramplerAcquiredEvent, type TramplerChangedEvent, type TramplerLostEvent, type WalkerChangedEvent, type WorldBounds, type WorldBoundsSchema, type WorldTimeChangedEvent, module, type sandEvents };
package/dist/sand.js CHANGED
@@ -1 +1 @@
1
- import{scope as e,type as t}from"arktype";function n(e){return e}function r(e){return e}function i(e){return e?t=>(e(t),t):r}const a=[`menu`,`waiting_for_players`,`matchmaking`,`match_found`,`in_progress`,`loot_division`,`extracted`,`all_left`,`aborted`,`failed`,`decayed`,`invalid`],o=t(`string`),s=[`storm_dive`,`voyage`,`invalid`],c=t(`string`),l=[`idle`,`delay`,`moving`,`invalid`],u=t(`string`),d=i(),f=i(),p=i(),m=i(),h=i(),g=i(),_=i(),v=i(),y=i(),b=i(),x=i(),S=i(),C=i(),w=i(),T=t({game:`string`,type:`string`,creation_time:`number`}),E=T.and({game:`'sand'`}),D=t({x:`number`,y:`number`,z:`number`}),O=t({min_x:`number`,min_z:`number`,max_x:`number`,max_z:`number`}),k=t({id:n(t.string),name:`string`,position:D}),A=t({account_id:n(t.string),display_name:`string`,platform_id:n(t.string),playfab_id:n(t.string)}),j=t({definition:n(t.string),amount:`number`}),M=t({id:n(t.string),name:`string`,tier:`number`,is_unlocked:`boolean`,is_available:`boolean`}),N=e({"#event1":`logged_in | game_state_changed | party_changed | party_member_joined | party_member_left | inventory_changed | inventory_item_changed | tech_tree_changed | tech_tree_item_unlocked | walker_changed`,"#event2":`match_started | match_ended | world_time_changed | player_joined | extraction_added | extraction_removed | storm_changed | trampler_acquired | trampler_changed | trampler_lost`,event:`event1 | event2`,logged_in:E.and({type:`'logged_in'`,content:A}),game_state_changed:E.and({type:`'game_state_changed'`,content:{state:o}}),party_changed:E.and({type:`'party_changed'`,content:{join_code:n(t.string)}}),party_member_joined:E.and({type:`'party_member_joined'`,content:A.and({character_id:n(t.number),is_captain:`boolean`})}),party_member_left:E.and({type:`'party_member_left'`,content:{account_id:n(t.string)}}),inventory_changed:E.and({type:`'inventory_changed'`,content:{slots_used:`number`,slots_total:`number`,crowns:`number`,mechanical_parts:`number`,pneumatic_parts:`number`,computing_modules:`number`,items:j.array()}}),inventory_item_changed:E.and({type:`'inventory_item_changed'`,content:{definition:n(t.string),amount:`number`,delta:`number`}}),tech_tree_changed:E.and({type:`'tech_tree_changed'`,content:{unlocked:`number`,total:`number`,nodes:M.array()}}),tech_tree_item_unlocked:E.and({type:`'tech_tree_item_unlocked'`,content:{id:n(t.string),name:`string`,tier:`number`}}),walker_changed:E.and({type:`'walker_changed'`,content:{walker_id:n(t.number),blueprint_unique_id:n(t.string),blueprint_file:`string`,first_name_index:`number`,second_name_index:`number`}}),match_started:E.and({type:`'match_started'`,content:{match_id:n(t.number),game_mode:c,seed:`number >= 0`,server_start_time:`number >= 0`,world_bounds:O,landmarks:k.array()}}),match_ended:E.and({type:`'match_ended'`}),world_time_changed:E.and({type:`'world_time_changed'`,content:{hour:`0 <= number <= 23`}}),player_joined:E.and({type:`'player_joined'`,content:{player_id:n(t(`number >= 0`)),username:`string`,platform_id:n(t.string),playfab_id:n(t.string)}}),extraction_added:E.and({type:`'extraction_added'`,content:{extraction_id:n(t.number),radius:`number`,position:D}}),extraction_removed:E.and({type:`'extraction_removed'`,content:{extraction_id:n(t.number)}}),storm_changed:E.and({type:`'storm_changed'`,content:{stage:`number`,total_stages:`number`,state:u,end_time:`number >= 0`,radius:`number`,center:D,next_radius:`number`,next_center:D}}),trampler_acquired:E.and({type:`'trampler_acquired'`,content:{trampler_id:n(t.number),master_server_id:n(t.number),blueprint:`string`,creator_account_id:n(t(`number >= 0`)),first_name_index:`number`,second_name_index:`number`}}),trampler_changed:E.and({type:`'trampler_changed'`,content:{trampler_id:n(t.number),position:D,yaw:`number`,speed:`number`,velocity:D}}),trampler_lost:E.and({type:`'trampler_lost'`,content:{trampler_id:n(t.number)}})}).export();function P(){return{key:`sand`,events:N}}export{T as BaseEvent,s as SAND_GAME_MODES,a as SAND_GAME_STATES,l as SAND_STORM_STATES,d as SandAccountId,C as SandBlueprintId,v as SandCharacterId,g as SandExtractionId,c as SandGameModeSchema,o as SandGameStateSchema,b as SandItemDefinition,_ as SandLandmarkId,h as SandMatchId,y as SandPartyJoinCode,p as SandPlatformId,f as SandPlayerId,m as SandPlayfabId,u as SandStormStateSchema,x as SandTechNodeId,w as SandTramplerId,S as SandWalkerId,P as module};
1
+ import{scope as e,type as t}from"arktype";function n(e){return e}function r(e){return e}function i(e){return e?t=>(e(t),t):r}const a=[`menu`,`waiting_for_players`,`matchmaking`,`match_found`,`in_progress`,`loot_division`,`extracted`,`all_left`,`aborted`,`failed`,`decayed`,`invalid`],o=t(`string`),s=[`storm_dive`,`voyage`,`invalid`],c=t(`string`),l=[`idle`,`delay`,`moving`,`invalid`],u=t(`string`),d=i(),f=i(),p=i(),m=i(),h=i(),g=i(),_=i(),v=i(),y=i(),b=i(),x=i(),S=i(),C=i(),w=i(),T=t({game:`string`,type:`string`,creation_time:`number`}),E=T.and({game:`'sand'`}),D=t({x:`number`,y:`number`,z:`number`}),O=t({min_x:`number`,min_z:`number`,max_x:`number`,max_z:`number`}),k=t({id:n(t.string),name:`string`,position:D}),A=t({account_id:n(t.string),display_name:`string`,platform_id:n(t.string),playfab_id:n(t.string)}),j=t({definition:n(t.string),amount:`number`}),M=t({id:n(t.string),name:`string`,tier:`number`,is_unlocked:`boolean`,is_available:`boolean`}),N=e({"#event1":`logged_in | game_state_changed | party_changed | party_member_joined | party_member_left | storage_changed | storage_item_changed | tech_tree_changed | tech_tree_item_unlocked | walker_changed`,"#event2":`match_started | match_ended | world_time_changed | player_joined | extraction_added | extraction_removed | storm_changed | trampler_acquired | trampler_changed | trampler_lost`,event:`event1 | event2`,logged_in:E.and({type:`'logged_in'`,content:A}),game_state_changed:E.and({type:`'game_state_changed'`,content:{state:o}}),party_changed:E.and({type:`'party_changed'`,content:{join_code:n(t.string)}}),party_member_joined:E.and({type:`'party_member_joined'`,content:A.and({character_id:n(t.number),is_captain:`boolean`})}),party_member_left:E.and({type:`'party_member_left'`,content:{account_id:n(t.string)}}),storage_changed:E.and({type:`'storage_changed'`,content:{slots_used:`number`,slots_total:`number`,crowns:`number`,mechanical_parts:`number`,pneumatic_parts:`number`,computing_modules:`number`,items:j.array()}}),storage_item_changed:E.and({type:`'storage_item_changed'`,content:{definition:n(t.string),amount:`number`,delta:`number`}}),tech_tree_changed:E.and({type:`'tech_tree_changed'`,content:{unlocked:`number`,total:`number`,nodes:M.array()}}),tech_tree_item_unlocked:E.and({type:`'tech_tree_item_unlocked'`,content:{id:n(t.string),name:`string`,tier:`number`}}),walker_changed:E.and({type:`'walker_changed'`,content:{walker_id:n(t.number),blueprint_unique_id:n(t.string),blueprint_file:`string`,first_name_index:`number`,second_name_index:`number`}}),match_started:E.and({type:`'match_started'`,content:{match_id:n(t.number),game_mode:c,seed:`number >= 0`,server_start_time:`number >= 0`,world_bounds:O,landmarks:k.array()}}),match_ended:E.and({type:`'match_ended'`}),world_time_changed:E.and({type:`'world_time_changed'`,content:{hour:`0 <= number <= 23`}}),player_joined:E.and({type:`'player_joined'`,content:{player_id:n(t(`number >= 0`)),username:`string`,platform_id:n(t.string),playfab_id:n(t.string)}}),extraction_added:E.and({type:`'extraction_added'`,content:{extraction_id:n(t.number),radius:`number`,position:D}}),extraction_removed:E.and({type:`'extraction_removed'`,content:{extraction_id:n(t.number)}}),storm_changed:E.and({type:`'storm_changed'`,content:{stage:`number`,total_stages:`number`,state:u,end_time:`number >= 0`,radius:`number`,center:D,next_radius:`number`,next_center:D}}),trampler_acquired:E.and({type:`'trampler_acquired'`,content:{trampler_id:n(t.number),master_server_id:n(t.number),blueprint:`string`,creator_account_id:n(t(`number >= 0`)),first_name_index:`number`,second_name_index:`number`}}),trampler_changed:E.and({type:`'trampler_changed'`,content:{trampler_id:n(t.number),position:D,yaw:`number`,speed:`number`,velocity:D}}),trampler_lost:E.and({type:`'trampler_lost'`,content:{trampler_id:n(t.number)}})}).export();function P(){return{key:`sand`,events:N}}export{T as BaseEvent,s as SAND_GAME_MODES,a as SAND_GAME_STATES,l as SAND_STORM_STATES,d as SandAccountId,C as SandBlueprintId,v as SandCharacterId,g as SandExtractionId,c as SandGameModeSchema,o as SandGameStateSchema,b as SandItemDefinition,_ as SandLandmarkId,h as SandMatchId,y as SandPartyJoinCode,p as SandPlatformId,f as SandPlayerId,m as SandPlayfabId,u as SandStormStateSchema,x as SandTechNodeId,w as SandTramplerId,S as SandWalkerId,P as module};