diff --git a/types/github-url-from-git/github-url-from-git-tests.ts b/types/github-url-from-git/github-url-from-git-tests.ts new file mode 100644 index 0000000000..d0660f49c0 --- /dev/null +++ b/types/github-url-from-git/github-url-from-git-tests.ts @@ -0,0 +1,6 @@ +import * as parse from 'github-url-from-git'; + +parse('https://github.com/jamesor/mongoose-versioner'); // $ExpectType string +parse('git://github.internal.example.com/treygriffith/cellar.git', { extraBaseUrls: ['github.internal.example.com'] }); // $ExpectType string +parse.re(); // $ExpectType RegExp +parse.re({ extraBaseUrls: ['github.internal.example.com'] }); // $ExpectType RegExp diff --git a/types/github-url-from-git/index.d.ts b/types/github-url-from-git/index.d.ts new file mode 100644 index 0000000000..df6bcf3411 --- /dev/null +++ b/types/github-url-from-git/index.d.ts @@ -0,0 +1,32 @@ +// Type definitions for node-github-url-from-git 1.5 +// Project: https://github.com/tj/node-github-url-from-git +// Definitions by: Christian Murphy +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.0 + +declare namespace githubUrlFromGit { + interface githubUrlFromGitOptions { + /** + * additional URLs that should be treated as GitHub repos + */ + extraBaseUrls?: string[]; + } + + /** + * Create a regular expression to parse GitHub URLs + * + * @param opts options for regular expression generator + */ + function re(opts?: githubUrlFromGitOptions): RegExp; +} + +/** + * Normalize Git URLs into GitHub URLs + * + * @param url Git URL to process + * @param opts options for URL parser + * @returns GitHub URL + */ +declare function githubUrlFromGit(url: string, opts?: githubUrlFromGit.githubUrlFromGitOptions): string; + +export = githubUrlFromGit; diff --git a/types/github-url-from-git/tsconfig.json b/types/github-url-from-git/tsconfig.json new file mode 100644 index 0000000000..64924b79e6 --- /dev/null +++ b/types/github-url-from-git/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", + "github-url-from-git-tests.ts" + ] +} diff --git a/types/github-url-from-git/tslint.json b/types/github-url-from-git/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/github-url-from-git/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" }