UNPKG

@digitak/esrun

Version:

Execute directly your Typescript files using Esbuild

45 lines (44 loc) 1.68 kB
/// <reference types="node" resolution-mode="require"/> import { BuildOptions, type BuildContext } from "esbuild"; import type { BuildResult, OutputFile } from "esbuild"; import { ChildProcess } from "child_process"; import { Options } from "../types/Options.js"; import { SendCodeMode } from "../types/SendCodeMode.js"; export declare type BuildOutput = null | (BuildResult & { outputFiles: OutputFile[]; }); export default class Runner { inputFile: string; outputFile: undefined | string; output: string; stdout: string; stderr: string; outputCode: string; args: string[]; tsConfigFile: string | undefined; preserveConsole: boolean; fileConstants: boolean; beforeRun: Options["beforeRun"]; afterRun: Options["afterRun"]; nodeOptions: Options["nodeOptions"]; sendCodeMode: SendCodeMode; sudo: boolean; esbuildOptions: BuildOptions; protected watched: boolean | string[]; protected inspect: boolean; protected interProcessCommunication: boolean; protected makeAllPackagesExternal: boolean; protected exitAfterExecution: boolean; protected buildContext?: BuildContext; protected buildOutput?: BuildResult<BuildOptions>; protected dependencies: string[]; protected childProcess?: ChildProcess; getDependencies(): readonly string[]; protected retrieveDependencies(): string[]; constructor(inputFile: string, options?: Options); run(): Promise<void>; build(buildOptions?: BuildOptions): Promise<void>; transform(transformer: (content: string) => string | Promise<string>): Promise<void>; execute(): Promise<number>; getOutputCode(): string; }