From 85f74adbaeac5cd0765b7b4b25f5cd64210d263b Mon Sep 17 00:00:00 2001 From: Emily Marigold Klassen Date: Mon, 22 Jun 2020 11:34:40 -0700 Subject: [PATCH] [logstub] Add types (#45642) --- types/logstub/index.d.ts | 44 ++++++++++++++++++++++++++++++++++ types/logstub/logstub-tests.ts | 8 +++++++ types/logstub/tsconfig.json | 23 ++++++++++++++++++ types/logstub/tslint.json | 1 + 4 files changed, 76 insertions(+) create mode 100644 types/logstub/index.d.ts create mode 100644 types/logstub/logstub-tests.ts create mode 100644 types/logstub/tsconfig.json create mode 100644 types/logstub/tslint.json diff --git a/types/logstub/index.d.ts b/types/logstub/index.d.ts new file mode 100644 index 0000000000..1e9ffbd6b0 --- /dev/null +++ b/types/logstub/index.d.ts @@ -0,0 +1,44 @@ +// Type definitions for logstub 1.3 +// Project: https://github.com/OutOfSyncStudios/logstub#readme +// Definitions by: Emily M Klassen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export = LogStub; + +declare class LogStub { + constructor(...args: any[]); + + log(...args: any[]): void; + + silly(...args: any[]): void; + debug(...args: any[]): void; + verbose(...args: any[]): void; + info(...args: any[]): void; + warn(...args: any[]): void; + error(...args: any[]): void; + + assert(...args: any[]): void; + clear(...args: any[]): void; + count(...args: any[]): void; + countReset(...args: any[]): void; + dir(...args: any[]): void; + dirxml(...args: any[]): void; + group(...args: any[]): void; + groupCollapsed(...args: any[]): void; + groupEnd(...args: any[]): void; + table(...args: any[]): void; + time(...args: any[]): void; + timeEnd(...args: any[]): void; + timeLog(...args: any[]): void; + + fatal(...args: any[]): void; + trace(...args: any[]): void; + all(...args: any[]): void; + + critical(...args: any[]): void; + + child( + ...args: any[] + ): Pick; + level(...args: any[]): number; +} diff --git a/types/logstub/logstub-tests.ts b/types/logstub/logstub-tests.ts new file mode 100644 index 0000000000..5f77657976 --- /dev/null +++ b/types/logstub/logstub-tests.ts @@ -0,0 +1,8 @@ +import LogStub = require('logstub'); + +// Ensure type compatability with bunyan +// tslint:disable-next-line: no-object-literal-type-assertion +const bunyanStub: Pick> = {} as import('bunyan'); + +// Ensure type compatability with console +const consoleStub: Pick> = console; diff --git a/types/logstub/tsconfig.json b/types/logstub/tsconfig.json new file mode 100644 index 0000000000..7ce9fd0831 --- /dev/null +++ b/types/logstub/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "logstub-tests.ts" + ] +} diff --git a/types/logstub/tslint.json b/types/logstub/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/logstub/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" }