diff --git a/username/username-tests.ts b/username/username-tests.ts new file mode 100644 index 000000000..46265958b --- /dev/null +++ b/username/username-tests.ts @@ -0,0 +1,10 @@ +/// + +import username = require("username"); + +username(function(err, username) { + err === new Error(); + username === "string"; +}); + +username.sync() === "string"; diff --git a/username/username.d.ts b/username/username.d.ts new file mode 100644 index 000000000..5784f46ff --- /dev/null +++ b/username/username.d.ts @@ -0,0 +1,27 @@ +// Type definitions for username v1.0.1 +// Project: https://www.npmjs.com/package/username +// Definitions by: Klaus Reimer +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare module "username" { + /** + * Tries to get the username from the LOGNAME, USER, LNAME or USERNAME environment variables. + * Falls back to `id -un` on OS X / Linux and `whoami` on Windows in the rare case none of the environment + * variables are set. The result is cached. + * + * @param callback The callback function to call asynchronously with the result. + */ + function username(callback: (err: Error, result: string) => void): void; + + module username { + /** + * Tries to get the username from the LOGNAME, USER, LNAME or USERNAME environment variables. Falls back + * to returning an empty string in the reare case none of the environment variables are set. + * + * @return The username or empty string if not found. + */ + function sync(): string; + } + + export = username; +}