mirror of
https://github.com/denoland/deno.git
synced 2025-01-05 22:09:02 -05:00
1f8b83ba1a
This commit adds support for process.on("exit") by appending a listener to the unload event. Luckily, unload works pretty much the same as on("exit") since it won't schedule any additional work in the even loop either. This commit also solves an error in the Node implementation, since "process.argv" didn't contained the main module route as it was supposed to.
33 lines
877 B
TypeScript
33 lines
877 B
TypeScript
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
|
|
import processModule from "./process.ts";
|
|
import { Buffer as bufferModule } from "./buffer.ts";
|
|
import timers from "./timers.ts";
|
|
|
|
// d.ts files allow us to declare Buffer as a value and as a type
|
|
// type something = Buffer | something_else; is quite common
|
|
|
|
type GlobalType = {
|
|
process: typeof processModule;
|
|
Buffer: typeof bufferModule;
|
|
setImmediate: typeof timers.setImmediate;
|
|
clearImmediate: typeof timers.clearImmediate;
|
|
};
|
|
|
|
declare global {
|
|
interface Window {
|
|
global: GlobalType;
|
|
}
|
|
|
|
interface globalThis {
|
|
global: GlobalType;
|
|
}
|
|
|
|
var global: GlobalType;
|
|
var process: typeof processModule;
|
|
var Buffer: typeof bufferModule;
|
|
type Buffer = bufferModule;
|
|
var setImmediate: typeof timers.setImmediate;
|
|
var clearImmediate: typeof timers.clearImmediate;
|
|
}
|
|
|
|
export {};
|