@bscotch/stitch
Version:
Stitch: The GameMaker Studio 2 Asset Pipeline Development Kit.
61 lines • 2.81 kB
TypeScript
import { Pathy } from '@bscotch/pathy';
import { GameMakerCliCommand, GameMakerCliWorker } from '../types/gameMakerCli.js';
import { GameMakerEngineStatic } from './GameMakerEngine.static.js';
import { GameMakerBuildOptions, GameMakerEngineProject, GameMakerExecuteOptions, GameMakerLogOptions, GameMakerRunOptions, GameMakerRuntimeConfig, GameMakerSupportedArchitecture, GameMakerUserData } from './GameMakerEngine.types.js';
import { GameMakerUser } from './GameMakerUser.js';
export * from './GameMakerEngine.types.js';
/**
* Discover and convert the currently installed GameMaker Studio
* into an internal representation that can
* be manipulated programmatically.
*/
export declare class GameMakerEngine extends GameMakerEngineStatic {
readonly dir: Pathy;
readonly isBeta: boolean;
constructor(options?: {
beta?: boolean;
});
get name(): string;
get runtimesConfigPath(): Pathy<unknown>;
get uiLogPath(): Pathy<unknown>;
get appDataPath(): Pathy;
get usersDirectory(): Pathy;
get usersConfigFilePath(): Pathy;
get currentOs(): "linux" | "windows" | "osx";
get currentArchitecture(): GameMakerSupportedArchitecture;
run(project: GameMakerEngineProject, options?: GameMakerRunOptions): Promise<import("./GameMakerEngine.types.js").GameMakerExecutionResults>;
build(project: GameMakerEngineProject, options?: GameMakerBuildOptions): Promise<import("./GameMakerEngine.types.js").GameMakerExecutionResults>;
protected runBuildCommand(project: GameMakerEngineProject, options?: GameMakerBuildOptions & {
compile?: boolean;
}): Promise<import("./GameMakerEngine.types.js").GameMakerExecutionResults>;
/**
* The local directory for the currently active user.
*/
userDirectory(): Promise<Pathy>;
/**
* The currently active user.
*/
user(): Promise<GameMakerUser>;
/**
* The contents of the config file for the active
* user.
*/
userConfig(): Promise<GameMakerUserData>;
runtimesConfig(): Promise<GameMakerRuntimeConfig>;
/**
* The path to the current runtime's folder,
* which contains config information and the
* runtime executable, plus Igor etc.
*/
runtimeDirectory(): Promise<Pathy<unknown>>;
/**
* Path to the most recently used rumtime CLI executable.
*/
cliPath(): Promise<Pathy>;
/**
* The most recently used runtime version.
*/
runtimeVersion(): Promise<string>;
protected execute<W extends GameMakerCliWorker>(project: GameMakerEngineProject, worker: W, command: GameMakerCliCommand<W>, executionOptions: GameMakerExecuteOptions, otherOptions?: GameMakerLogOptions): Promise<import("./GameMakerEngine.types.js").GameMakerExecutionResults>;
}
//# sourceMappingURL=GameMakerEngine.d.ts.map