UNPKG

@bscotch/stitch

Version:

Stitch: The GameMaker Studio 2 Asset Pipeline Development Kit.

82 lines 2.46 kB
import type { GameMakerCliBuildWorker, GameMakerCliOptions } from '../types/gameMakerCli.js'; /** * GameMaker CLI workers that are for making builds * and that are supported by Stitch. */ export type StitchSupportedBuilder = Exclude<GameMakerCliBuildWorker, 'amazonfire' | 'html5' | 'operagx' | 'ps4' | 'ps5' | 'tvos' | 'wasm'>; export interface GameMakerRuntimeConfig { active: string; [version: string]: string; } export interface GameMakerUserData { deviceID?: string; /** * User email address. The 'name' part is * used as the local username. */ login?: `${string}@${string}`; userID?: string; } export type GameMakerSupportedArchitecture = 'x64' | 'arm' | 'arm64'; export interface GameMakerLogOptions { logDir?: string; /** * If `true`, will not include the timestamp * in the logfile names. This is useful when * you want to clobber the logs files with the * latest logs. */ excludeLogFileTimestamps?: boolean; } export interface GameMakerRunOptions extends GameMakerLogOptions { /** * @default 'windows' */ targetPlatform?: StitchSupportedBuilder; config?: string; yyc?: boolean; } export interface GameMakerBuildOptions extends GameMakerRunOptions { /** * The name of the compiled artifact. */ outDir?: string; } export interface GameMakerExecuteOptions extends Omit<Partial<GameMakerCliOptions>, 'project'> { } /** * The subset of Stitch's `Gms2Project` * interface that the `GameMakerEngine` * class makes use of. */ export interface GameMakerEngineProject { readonly name: string; readonly yypPathAbsolute: string; readonly yypDirAbsolute: string; } export interface GameMakerExecutionResults { /** * Whether just building *or* running, we * always attempt to compile. If `false`, * Igor exited before finishing the compile. */ compileSucceeded: boolean; /** * If we are only building, the runner's * success is `undefined` * * Otherwise, this value is `true` if * the runner exits normally (e.g. via * the user closing the window or via * the GML function `game_end()`) and * `false` otherwise. */ runnerSucceeded?: boolean; stdout: string; stderr: string; compilerLogsPath: string; runnerLogsPath?: string; compilerLogs: string; runnerLogs?: string; } //# sourceMappingURL=GameMakerEngine.types.d.ts.map