From 3e23793e11243e72329ccf0bef3171490b19c215 Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 25 Dec 2018 19:24:49 +0100 Subject: [PATCH] [git-repo-name] Add types --- types/git-repo-name/git-repo-name-tests.ts | 26 ++++++++++++++++++++++ types/git-repo-name/index.d.ts | 23 +++++++++++++++++++ types/git-repo-name/tsconfig.json | 23 +++++++++++++++++++ types/git-repo-name/tslint.json | 1 + 4 files changed, 73 insertions(+) create mode 100644 types/git-repo-name/git-repo-name-tests.ts create mode 100644 types/git-repo-name/index.d.ts create mode 100644 types/git-repo-name/tsconfig.json create mode 100644 types/git-repo-name/tslint.json diff --git a/types/git-repo-name/git-repo-name-tests.ts b/types/git-repo-name/git-repo-name-tests.ts new file mode 100644 index 0000000000..6b9fe45b00 --- /dev/null +++ b/types/git-repo-name/git-repo-name-tests.ts @@ -0,0 +1,26 @@ +import repoName = require('git-repo-name'); + +repoName('foo'); // $ExpectType Promise +repoName({ cwd: 'foo' }); // $ExpectType Promise +repoName({ path: 'foo' }); // $ExpectType Promise +// $ExpectType void +repoName((err, repoName) => { + err; // $ExpectType Error | null + repoName; // $ExpectType string +}); +// $ExpectType void +repoName('foo', (err, repoName) => { + err; // $ExpectType Error | null + repoName; // $ExpectType string +}); +// $ExpectType void +repoName({ cwd: 'foo' }, (err, repoName) => { + err; // $ExpectType Error | null + repoName; // $ExpectType string +}); + +repoName.promise('foo'); // $ExpectType Promise +repoName.promise({ cwd: 'foo' }); // $ExpectType Promise + +repoName.sync('foo'); // $ExpectType string +repoName.sync({ cwd: 'foo' }); // $ExpectType string diff --git a/types/git-repo-name/index.d.ts b/types/git-repo-name/index.d.ts new file mode 100644 index 0000000000..c6a99b9072 --- /dev/null +++ b/types/git-repo-name/index.d.ts @@ -0,0 +1,23 @@ +// Type definitions for git-repo-name 1.0 +// Project: https://github.com/jonschlinkert/git-repo-name +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export = gitRepoName; + +declare function gitRepoName(options?: string | gitRepoName.Options): Promise; +declare function gitRepoName(callback: (err: Error | null, repoName: string) => void): void; +declare function gitRepoName( + options: string | gitRepoName.Options, + callback: (err: Error | null, repoName: string) => void +): void; + +declare namespace gitRepoName { + function promise(options?: string | Options): Promise; + function sync(options?: string | Options): string; + + interface Options { + cwd?: string; + path?: string; + } +} diff --git a/types/git-repo-name/tsconfig.json b/types/git-repo-name/tsconfig.json new file mode 100644 index 0000000000..224d7cacaa --- /dev/null +++ b/types/git-repo-name/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "git-repo-name-tests.ts" + ] +} diff --git a/types/git-repo-name/tslint.json b/types/git-repo-name/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/git-repo-name/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" }