From 31fff55ca605dfed612f81066563484da7bcba2a Mon Sep 17 00:00:00 2001
From: Mohamed Hegazy <mhegazy@microsoft.com>
Date: Fri, 8 Jul 2016 14:53:08 -0700
Subject: [PATCH 1/7] Add link to templates directory

---
 pages/declaration files/Introduction.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pages/declaration files/Introduction.md b/pages/declaration files/Introduction.md
index de3cc423d..ba31286ac 100644
--- a/pages/declaration files/Introduction.md	
+++ b/pages/declaration files/Introduction.md	
@@ -36,7 +36,7 @@ For seasoned authors interested in the underlying mechanics of how declaration f
 
 ## `/templates`
 
-In the `templates` directory, you'll find a number of declaration files that serve as a useful starting point
+In the [`templates`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates) directory, you'll find a number of declaration files that serve as a useful starting point
   when writing a new file.
 Refer to the documentation in [Library Structures](./Library Structures.md) to figure out which template file to use.
 

From e8bcd2e8d8d29a27556ffe34ec35065b503a24b2 Mon Sep 17 00:00:00 2001
From: Mohamed Hegazy <mhegazy@microsoft.com>
Date: Fri, 8 Jul 2016 14:54:47 -0700
Subject: [PATCH 2/7] Make link to templates absolute

---
 pages/declaration files/Library Structures.md | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/pages/declaration files/Library Structures.md b/pages/declaration files/Library Structures.md
index 414e97fa5..9b75bb5da 100644
--- a/pages/declaration files/Library Structures.md	
+++ b/pages/declaration files/Library Structures.md	
@@ -4,7 +4,7 @@ Broadly speaking, the way you *structure* your declaration file depends on how t
 There are many ways of offering a library for consumption in JavaScript, and you'll need to write your declaration file to match it.
 This guide covers how to identify common library patterns, and how to write declaration files which correspond to that pattern.
 
-Each type of major library structuring pattern has a corresponding file in the [`templates`](./templates) directory.
+Each type of major library structuring pattern has a corresponding file in the [`templates`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates) directory.
 You can start with these templates to help you get going faster.
 
 # Identifying Kinds of Libraries
@@ -76,7 +76,7 @@ However, libraries that are small and require the DOM (or have *no* dependencies
 
 ### Global Library Template
 
-The template file [`global.d.ts`](./templates/global.d.ts) defines an example library `myLib`.
+The template file [`global.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/global.d.ts) defines an example library `myLib`.
 Be sure to read the ["Preventing Name Conflicts" footnote](#preventing-name-conflicts).
 
 ## Modular Libraries
@@ -176,9 +176,9 @@ Examples include [jQuery](https://jquery.com/), [Moment.js](http://momentjs.com/
 ### Template
 
 There are three templates available for modules,
-  [`module.d.ts`](./templates/module.d.ts), [`module-class.d.ts`](./templates/module-class.d.ts) and [`module-function.d.ts`](./templates/module-function.d.ts).
+  [`module.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module.d.ts), [`module-class.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module-class.d.ts) and [`module-function.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module-function.d.ts).
 
-Use [`module-function.d.ts`](./templates/module-function.d.ts) if your module can be *called* like a function:
+Use [`module-function.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module-function.d.ts) if your module can be *called* like a function:
 
 ```ts
 var x = require("foo");
@@ -188,7 +188,7 @@ var y = x(42);
 
 Be sure to read the [footnote "The Impact of ES6 on Module Call Signatures"](#the-impact-of-es6-on-module-plugins)
 
-Use [`module-class.d.ts`](./templates/module-class.d.ts) if your module can be *constructed* using `new`:
+Use [`module-class.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module-class.d.ts) if your module can be *constructed* using `new`:
 
 ```ts
 var x = require("bar");
@@ -198,7 +198,7 @@ var y = new x("hello");
 
 The same [footnote](#the-impact-of-es6-on-module-plugins) applies to these modules.
 
-If your module is not callable or constructable, use the [`module.d.ts`](./templates/module.d.ts) file.
+If your module is not callable or constructable, use the [`module.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module.d.ts) file.
 
 ## *Module Plugin* or *UMD Plugin*
 
@@ -209,7 +209,7 @@ For the purposes of writing a declaration file, you'll write the same code wheth
 
 ### Template
 
-Use the [`module-plugin.d.ts`](./templates/module-plugin.d.ts) template.
+Use the [`module-plugin.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/module-plugin.d.ts) template.
 
 ## *Global Plugin*
 
@@ -236,7 +236,7 @@ console.log(y.reverseAndSort());
 
 ### Template
 
-Use the [`global-plugin.d.ts`](./templates/global-plugin.d.ts) template.
+Use the [`global-plugin.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/global-plugin.d.ts) template.
 
 ## *Global-modifying Modules*
 
@@ -269,7 +269,7 @@ console.log(y.reverseAndSort());
 
 ### Template
 
-Use the [`global-modifying-module.d.ts`](./templates/global-modifying-module.d.ts) template.
+Use the [`global-modifying-module.d.ts`](https://github.com/Microsoft/TypeScript-Handbook/tree/master/pages/declaration%20files/templates/global-modifying-module.d.ts) template.
 
 # Consuming Dependencies
 

From 98e10333a32c1d654bb287d1f8faa91e25aedc3d Mon Sep 17 00:00:00 2001
From: Bryan Knight <bryan.knight@clickfox.com>
Date: Sun, 10 Jul 2016 19:58:13 -0600
Subject: [PATCH 3/7] fixes typos

---
 pages/Compiler Options.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pages/Compiler Options.md b/pages/Compiler Options.md
index f9835f2ad..78666ed33 100644
--- a/pages/Compiler Options.md	
+++ b/pages/Compiler Options.md	
@@ -26,7 +26,7 @@ Option                                         | Type      | Default
 `--listEmittedFiles`                           | `boolean` | `false`                        | Print names of generated files part of the compilation.
 `--listFiles`                                  | `boolean` | `false`                        | Print names of files part of the compilation.
 `--locale`                                     | `string`  | *(platform specific)*          | The locale to use to show error messages, e.g. en-us.
-`--mapRoot`                                    | `string`  | `null`                         | Specifies the location where debugger should locate map files instead of generated locations. Use this flag if the .map files will be located at run-time in a different location than than the .js files. The location specified will be embedded in the sourceMap to direct the debugger where the map files where be located.
+`--mapRoot`                                    | `string`  | `null`                         | Specifies the location where debugger should locate map files instead of generated locations. Use this flag if the .map files will be located at run-time in a different location than the .js files. The location specified will be embedded in the sourceMap to direct the debugger where the map files will be located.
 `--module`<br/>`-m`                            | `string`  | `(target === 'ES6' ? 'ES6' : 'commonjs')`   | Specify module code generation: `'none'`, `'commonjs'`, `'amd'`, `'system'`, `'umd'`, `'es6'`, or `'es2015'`.<br/>► Only `'amd'` and `'system'` can be used in conjunction with `--outFile`.<br/>► `'es6'` and `'es2015'` values may not be used when targeting ES5 or lower.
 `--moduleResolution`                           | `string`  | `(module === 'amd' | 'system' | 'ES6'  ?  'classic' : 'node')`                    | Determine how modules get resolved. Either `'node'` for Node.js/io.js style resolution, or `'classic'` (default). See [Module Resolution documentation](Module Resolution.md) for more details.
 `--newLine`                                    | `string`  | *(platform specific)*          | Use the specified end of line sequence to be used when emitting files: `'crlf'` (windows) or `'lf'` (unix)."

From 1e4bb0867438aeadc1b4b6c75822b2687dd3d27f Mon Sep 17 00:00:00 2001
From: Bryan Knight <bryan.knight@clickfox.com>
Date: Sun, 10 Jul 2016 20:14:08 -0600
Subject: [PATCH 4/7] fixes typo

---
 pages/Compiler Options.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pages/Compiler Options.md b/pages/Compiler Options.md
index 78666ed33..a067dace7 100644
--- a/pages/Compiler Options.md	
+++ b/pages/Compiler Options.md	
@@ -56,7 +56,7 @@ Option                                         | Type      | Default
 `--skipLibCheck`                               | `boolean` | `false`                        | Don't check a the default library (`lib.d.ts`) file's valitidy.
 `--skipDefaultLibCheck`                        | `boolean` | `false`                        | Don't check a user-defined default library (`*.d.ts`) file's valitidy.
 `--sourceMap`                                  | `boolean` | `false`                        | Generates corresponding '.map' file.
-`--sourceRoot`                                 | `string`  | `null`                         | Specifies the location where debugger should locate TypeScript files instead of source locations. Use this flag if the sources will be located at run-time in a different location than that at design-time. The location specified will be embedded in the sourceMap to direct the debugger where the source files where be located.
+`--sourceRoot`                                 | `string`  | `null`                         | Specifies the location where debugger should locate TypeScript files instead of source locations. Use this flag if the sources will be located at run-time in a different location than that at design-time. The location specified will be embedded in the sourceMap to direct the debugger where the source files will be located.
 `--strictNullChecks`                           | `boolean` | `false`                        | In strict null checking mode, the `null` and `undefined` values are not in the domain of every type and are only assignable to themselves and `any` (the one exception being that `undefined` is also assignable to `void`).
 `--stripInternal`<sup>[1]</sup>                | `boolean` | `false`                        | Do not emit declarations for code that has an `/** @internal */` JSDoc annotation.
 `--suppressExcessPropertyErrors`               | `boolean` | `false`                        | Suppress excess property checks for object literals.

From bda79751cef75290ab91804afccc0476318e20ac Mon Sep 17 00:00:00 2001
From: nino-porcino <nino.porcino@gmail.com>
Date: Wed, 13 Jul 2016 15:41:56 +0200
Subject: [PATCH 5/7] Fixed code typo in Modules.md

---
 pages/Modules.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pages/Modules.md b/pages/Modules.md
index 3a004cca6..f04c0c165 100644
--- a/pages/Modules.md
+++ b/pages/Modules.md
@@ -554,7 +554,7 @@ For example:
 ##### math-lib.d.ts
 
 ```ts
-export const isPrime(x: number): boolean;'
+export const isPrime(x: number): boolean;
 export as namespace mathLib;
 ```
 

From 9f9313b88033a3a16be887088deeec7135f4cd30 Mon Sep 17 00:00:00 2001
From: Zev Spitz <shivisi@etrog.net.il>
Date: Sun, 17 Jul 2016 12:19:35 +0300
Subject: [PATCH 6/7] Create Keywords.md

---
 pages/Keywords.md | 101 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 101 insertions(+)
 create mode 100644 pages/Keywords.md

diff --git a/pages/Keywords.md b/pages/Keywords.md
new file mode 100644
index 000000000..be098b570
--- /dev/null
+++ b/pages/Keywords.md
@@ -0,0 +1,101 @@
+# Typescript Keywords
+
+The following keywords have the same meaning in Typescript as they do in Javascript:
+
+Keyword | Notes
+---|---
+async, await | [ES draft](http://tc39.github.io/ecmascript-asyncawait/)
+break | | 
+continue | | 
+class, extends, constructor, super | `extends` can also be used with `interface` |
+const, let, var | `const`can also be used as a modifier for `enum`|
+debugger | |
+delete | |
+do, while | |
+export, import | |
+for, each, in, of | |
+function, return | |
+get, set | |
+if, else | |
+instanceof, typeof | |
+null, undefined | Can also refer to the `null` and `undefined` types|
+switch, case, default | |
+this | |
+true, false | |
+try, catch, finally | |
+void | Can also refer to the `void` type |
+yield | |
+
+Unless otherwise noted, more information can be found on the [Mozilla Developer Network](https://developer.mozilla.org/en-US/docs/Web/JavaScript) or on [MSDN](https://msdn.microsoft.com/en-us/library/d1et7k7c%28v=vs.94%29.aspx)
+
+---
+
+The following keywords are used for [basic type annotations](http://www.typescriptlang.org/docs/handbook/basic-types.html):
+
+Keyword | Description
+---|---
+any | [Describes a type unknown at design time](http://www.typescriptlang.org/docs/handbook/basic-types.html#any)
+boolean | [Boolean](http://www.typescriptlang.org/docs/handbook/basic-types.html#boolean)
+null | [Missing link]()
+never | [Missing link]()
+number | [Number](http://www.typescriptlang.org/docs/handbook/basic-types.html#number)
+string | [String](http://www.typescriptlang.org/docs/handbook/basic-types.html#string)
+symbol | [Symbol](http://www.typescriptlang.org/docs/handbook/symbols.html)
+undefined | [Missing link]() 
+void | [Missing link]() 
+
+
+Other basic type-related keywords:
+
+Keyword | Description
+---|---
+as | [Type assertion](http://www.typescriptlang.org/docs/handbook/basic-types.html#type-assetions)
+is | [Missing link]()|
+
+User-defined types:
+
+Keyword | Description
+---|---
+enum | [Defines an enum](http://www.typescriptlang.org/docs/handbook/enums.html)
+type | [Type aliases](http://www.typescriptlang.org/docs/handbook/advanced-types.html#type-aliases)
+interface | [Defines the shape of a type (structural typing)](http://www.typescriptlang.org/docs/handbook/interfaces.html)
+
+Modifiers on user-defined type:
+
+Keyword | Description
+---|---
+abstract | [Abstract classes (cannot be instantiated; must be inherited)](http://www.typescriptlang.org/docs/handbook/classes.html#abstract-classes)
+const | [Forces a const enum](http://www.typescriptlang.org/docs/handbook/enums.html)
+implements | [Defines a class as implementing a given interface](http://www.typescriptlang.org/docs/handbook/interfaces.html#implementing-an-interface)
+
+Modifiers on **members** of class/interface definitions:
+
+Keyword | Description
+---|---
+abstract | [Inheriting classes must implement this method](http://www.typescriptlang.org/docs/handbook/classes.html#abstract-classes)
+static | [Defines a member on the class, and not on the instance](http://www.typescriptlang.org/docs/handbook/classes.html#static-properties)
+readonly | [Property can be read, but not written to](https://github.com/Microsoft/TypeScript/pull/6532)
+private | [Property can be used only from its containing class](https://www.typescriptlang.org/docs/handbook/classes.html#understanding-private)
+protected | [Property can only be used in its containing class, or by classes which inherit from the containing class](https://www.typescriptlang.org/docs/handbook/classes.html#understanding-protected)
+public | [Property can be used from outside its containing class](https://www.typescriptlang.org/docs/handbook/classes.html#public-by-default)
+
+---
+
+Code organization and environment:
+
+Keyword | Description
+---|---
+declare | [Ambient declarations -- elements created by the environment or other scripts](Missing link)
+module | [Define an ambient module](http://www.typescriptlang.org/docs/handbook/modules.html#ambient-modules)
+namespace | [Associates the contained types with the specified namespace](http://www.typescriptlang.org/docs/handbook/namespaces.html)
+require | [Missing description](http://www.typescriptlang.org/docs/handbook/modules.html#export--and-import--require)
+
+---
+
+Unknown: 
+
+Keyword |
+---|
+from| 
+of| 
+package

From d1387e8475c98b202ef82a9de4401477c831b948 Mon Sep 17 00:00:00 2001
From: Zev Spitz <shivisi@etrog.net.il>
Date: Sun, 17 Jul 2016 12:30:20 +0300
Subject: [PATCH 7/7] Fixes for Keywords.md

---
 pages/Keywords.md | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/pages/Keywords.md b/pages/Keywords.md
index be098b570..4daf36ff2 100644
--- a/pages/Keywords.md
+++ b/pages/Keywords.md
@@ -5,8 +5,8 @@ The following keywords have the same meaning in Typescript as they do in Javascr
 Keyword | Notes
 ---|---
 async, await | [ES draft](http://tc39.github.io/ecmascript-asyncawait/)
-break | | 
-continue | | 
+break | |
+continue | |
 class, extends, constructor, super | `extends` can also be used with `interface` |
 const, let, var | `const`can also be used as a modifier for `enum`|
 debugger | |
@@ -36,21 +36,20 @@ Keyword | Description
 ---|---
 any | [Describes a type unknown at design time](http://www.typescriptlang.org/docs/handbook/basic-types.html#any)
 boolean | [Boolean](http://www.typescriptlang.org/docs/handbook/basic-types.html#boolean)
-null | [Missing link]()
-never | [Missing link]()
+null | _Missing link_
+never | _Missing link_
 number | [Number](http://www.typescriptlang.org/docs/handbook/basic-types.html#number)
 string | [String](http://www.typescriptlang.org/docs/handbook/basic-types.html#string)
 symbol | [Symbol](http://www.typescriptlang.org/docs/handbook/symbols.html)
-undefined | [Missing link]() 
-void | [Missing link]() 
-
+undefined | _Missing link_
+void | _Missing link_
 
 Other basic type-related keywords:
 
 Keyword | Description
 ---|---
 as | [Type assertion](http://www.typescriptlang.org/docs/handbook/basic-types.html#type-assetions)
-is | [Missing link]()|
+is | _Missing link_
 
 User-defined types:
 
@@ -92,10 +91,10 @@ require | [Missing description](http://www.typescriptlang.org/docs/handbook/modu
 
 ---
 
-Unknown: 
+Unknown:
 
 Keyword |
 ---|
-from| 
-of| 
-package
+from|
+of|
+package|