Update LKG

This commit is contained in:
Mohamed Hegazy
2017-02-01 21:38:01 -08:00
parent 207f1aa5c9
commit adedc1953b
19 changed files with 39550 additions and 37370 deletions

408
lib/typescript.d.ts vendored
View File

@@ -14,11 +14,36 @@ and limitations under the License.
***************************************************************************** */
declare namespace ts {
/**
* Type of objects whose values are all of the same type.
* The `in` and `for-in` operators can *not* be safely used,
* since `Object.prototype` may be modified by outside code.
*/
interface MapLike<T> {
[index: string]: T;
}
interface Map<T> extends MapLike<T> {
__mapBrand: any;
/** ES6 Map interface. */
interface Map<T> {
get(key: string): T;
has(key: string): boolean;
set(key: string, value: T): this;
delete(key: string): boolean;
clear(): void;
forEach(action: (value: T, key: string) => void): void;
readonly size: number;
keys(): Iterator<string>;
values(): Iterator<T>;
entries(): Iterator<[string, T]>;
}
/** ES6 Iterator type. */
interface Iterator<T> {
next(): {
value: T;
done: false;
} | {
value: never;
done: true;
};
}
type Path = string & {
__pathBrand: any;
@@ -170,172 +195,173 @@ declare namespace ts {
ReadonlyKeyword = 130,
RequireKeyword = 131,
NumberKeyword = 132,
SetKeyword = 133,
StringKeyword = 134,
SymbolKeyword = 135,
TypeKeyword = 136,
UndefinedKeyword = 137,
FromKeyword = 138,
GlobalKeyword = 139,
OfKeyword = 140,
QualifiedName = 141,
ComputedPropertyName = 142,
TypeParameter = 143,
Parameter = 144,
Decorator = 145,
PropertySignature = 146,
PropertyDeclaration = 147,
MethodSignature = 148,
MethodDeclaration = 149,
Constructor = 150,
GetAccessor = 151,
SetAccessor = 152,
CallSignature = 153,
ConstructSignature = 154,
IndexSignature = 155,
TypePredicate = 156,
TypeReference = 157,
FunctionType = 158,
ConstructorType = 159,
TypeQuery = 160,
TypeLiteral = 161,
ArrayType = 162,
TupleType = 163,
UnionType = 164,
IntersectionType = 165,
ParenthesizedType = 166,
ThisType = 167,
TypeOperator = 168,
IndexedAccessType = 169,
MappedType = 170,
LiteralType = 171,
ObjectBindingPattern = 172,
ArrayBindingPattern = 173,
BindingElement = 174,
ArrayLiteralExpression = 175,
ObjectLiteralExpression = 176,
PropertyAccessExpression = 177,
ElementAccessExpression = 178,
CallExpression = 179,
NewExpression = 180,
TaggedTemplateExpression = 181,
TypeAssertionExpression = 182,
ParenthesizedExpression = 183,
FunctionExpression = 184,
ArrowFunction = 185,
DeleteExpression = 186,
TypeOfExpression = 187,
VoidExpression = 188,
AwaitExpression = 189,
PrefixUnaryExpression = 190,
PostfixUnaryExpression = 191,
BinaryExpression = 192,
ConditionalExpression = 193,
TemplateExpression = 194,
YieldExpression = 195,
SpreadElement = 196,
ClassExpression = 197,
OmittedExpression = 198,
ExpressionWithTypeArguments = 199,
AsExpression = 200,
NonNullExpression = 201,
MetaProperty = 202,
TemplateSpan = 203,
SemicolonClassElement = 204,
Block = 205,
VariableStatement = 206,
EmptyStatement = 207,
ExpressionStatement = 208,
IfStatement = 209,
DoStatement = 210,
WhileStatement = 211,
ForStatement = 212,
ForInStatement = 213,
ForOfStatement = 214,
ContinueStatement = 215,
BreakStatement = 216,
ReturnStatement = 217,
WithStatement = 218,
SwitchStatement = 219,
LabeledStatement = 220,
ThrowStatement = 221,
TryStatement = 222,
DebuggerStatement = 223,
VariableDeclaration = 224,
VariableDeclarationList = 225,
FunctionDeclaration = 226,
ClassDeclaration = 227,
InterfaceDeclaration = 228,
TypeAliasDeclaration = 229,
EnumDeclaration = 230,
ModuleDeclaration = 231,
ModuleBlock = 232,
CaseBlock = 233,
NamespaceExportDeclaration = 234,
ImportEqualsDeclaration = 235,
ImportDeclaration = 236,
ImportClause = 237,
NamespaceImport = 238,
NamedImports = 239,
ImportSpecifier = 240,
ExportAssignment = 241,
ExportDeclaration = 242,
NamedExports = 243,
ExportSpecifier = 244,
MissingDeclaration = 245,
ExternalModuleReference = 246,
JsxElement = 247,
JsxSelfClosingElement = 248,
JsxOpeningElement = 249,
JsxClosingElement = 250,
JsxAttribute = 251,
JsxSpreadAttribute = 252,
JsxExpression = 253,
CaseClause = 254,
DefaultClause = 255,
HeritageClause = 256,
CatchClause = 257,
PropertyAssignment = 258,
ShorthandPropertyAssignment = 259,
SpreadAssignment = 260,
EnumMember = 261,
SourceFile = 262,
JSDocTypeExpression = 263,
JSDocAllType = 264,
JSDocUnknownType = 265,
JSDocArrayType = 266,
JSDocUnionType = 267,
JSDocTupleType = 268,
JSDocNullableType = 269,
JSDocNonNullableType = 270,
JSDocRecordType = 271,
JSDocRecordMember = 272,
JSDocTypeReference = 273,
JSDocOptionalType = 274,
JSDocFunctionType = 275,
JSDocVariadicType = 276,
JSDocConstructorType = 277,
JSDocThisType = 278,
JSDocComment = 279,
JSDocTag = 280,
JSDocAugmentsTag = 281,
JSDocParameterTag = 282,
JSDocReturnTag = 283,
JSDocTypeTag = 284,
JSDocTemplateTag = 285,
JSDocTypedefTag = 286,
JSDocPropertyTag = 287,
JSDocTypeLiteral = 288,
JSDocLiteralType = 289,
JSDocNullKeyword = 290,
JSDocUndefinedKeyword = 291,
JSDocNeverKeyword = 292,
SyntaxList = 293,
NotEmittedStatement = 294,
PartiallyEmittedExpression = 295,
MergeDeclarationMarker = 296,
EndOfDeclarationMarker = 297,
Count = 298,
ObjectKeyword = 133,
SetKeyword = 134,
StringKeyword = 135,
SymbolKeyword = 136,
TypeKeyword = 137,
UndefinedKeyword = 138,
FromKeyword = 139,
GlobalKeyword = 140,
OfKeyword = 141,
QualifiedName = 142,
ComputedPropertyName = 143,
TypeParameter = 144,
Parameter = 145,
Decorator = 146,
PropertySignature = 147,
PropertyDeclaration = 148,
MethodSignature = 149,
MethodDeclaration = 150,
Constructor = 151,
GetAccessor = 152,
SetAccessor = 153,
CallSignature = 154,
ConstructSignature = 155,
IndexSignature = 156,
TypePredicate = 157,
TypeReference = 158,
FunctionType = 159,
ConstructorType = 160,
TypeQuery = 161,
TypeLiteral = 162,
ArrayType = 163,
TupleType = 164,
UnionType = 165,
IntersectionType = 166,
ParenthesizedType = 167,
ThisType = 168,
TypeOperator = 169,
IndexedAccessType = 170,
MappedType = 171,
LiteralType = 172,
ObjectBindingPattern = 173,
ArrayBindingPattern = 174,
BindingElement = 175,
ArrayLiteralExpression = 176,
ObjectLiteralExpression = 177,
PropertyAccessExpression = 178,
ElementAccessExpression = 179,
CallExpression = 180,
NewExpression = 181,
TaggedTemplateExpression = 182,
TypeAssertionExpression = 183,
ParenthesizedExpression = 184,
FunctionExpression = 185,
ArrowFunction = 186,
DeleteExpression = 187,
TypeOfExpression = 188,
VoidExpression = 189,
AwaitExpression = 190,
PrefixUnaryExpression = 191,
PostfixUnaryExpression = 192,
BinaryExpression = 193,
ConditionalExpression = 194,
TemplateExpression = 195,
YieldExpression = 196,
SpreadElement = 197,
ClassExpression = 198,
OmittedExpression = 199,
ExpressionWithTypeArguments = 200,
AsExpression = 201,
NonNullExpression = 202,
MetaProperty = 203,
TemplateSpan = 204,
SemicolonClassElement = 205,
Block = 206,
VariableStatement = 207,
EmptyStatement = 208,
ExpressionStatement = 209,
IfStatement = 210,
DoStatement = 211,
WhileStatement = 212,
ForStatement = 213,
ForInStatement = 214,
ForOfStatement = 215,
ContinueStatement = 216,
BreakStatement = 217,
ReturnStatement = 218,
WithStatement = 219,
SwitchStatement = 220,
LabeledStatement = 221,
ThrowStatement = 222,
TryStatement = 223,
DebuggerStatement = 224,
VariableDeclaration = 225,
VariableDeclarationList = 226,
FunctionDeclaration = 227,
ClassDeclaration = 228,
InterfaceDeclaration = 229,
TypeAliasDeclaration = 230,
EnumDeclaration = 231,
ModuleDeclaration = 232,
ModuleBlock = 233,
CaseBlock = 234,
NamespaceExportDeclaration = 235,
ImportEqualsDeclaration = 236,
ImportDeclaration = 237,
ImportClause = 238,
NamespaceImport = 239,
NamedImports = 240,
ImportSpecifier = 241,
ExportAssignment = 242,
ExportDeclaration = 243,
NamedExports = 244,
ExportSpecifier = 245,
MissingDeclaration = 246,
ExternalModuleReference = 247,
JsxElement = 248,
JsxSelfClosingElement = 249,
JsxOpeningElement = 250,
JsxClosingElement = 251,
JsxAttribute = 252,
JsxSpreadAttribute = 253,
JsxExpression = 254,
CaseClause = 255,
DefaultClause = 256,
HeritageClause = 257,
CatchClause = 258,
PropertyAssignment = 259,
ShorthandPropertyAssignment = 260,
SpreadAssignment = 261,
EnumMember = 262,
SourceFile = 263,
JSDocTypeExpression = 264,
JSDocAllType = 265,
JSDocUnknownType = 266,
JSDocArrayType = 267,
JSDocUnionType = 268,
JSDocTupleType = 269,
JSDocNullableType = 270,
JSDocNonNullableType = 271,
JSDocRecordType = 272,
JSDocRecordMember = 273,
JSDocTypeReference = 274,
JSDocOptionalType = 275,
JSDocFunctionType = 276,
JSDocVariadicType = 277,
JSDocConstructorType = 278,
JSDocThisType = 279,
JSDocComment = 280,
JSDocTag = 281,
JSDocAugmentsTag = 282,
JSDocParameterTag = 283,
JSDocReturnTag = 284,
JSDocTypeTag = 285,
JSDocTemplateTag = 286,
JSDocTypedefTag = 287,
JSDocPropertyTag = 288,
JSDocTypeLiteral = 289,
JSDocLiteralType = 290,
JSDocNullKeyword = 291,
JSDocUndefinedKeyword = 292,
JSDocNeverKeyword = 293,
SyntaxList = 294,
NotEmittedStatement = 295,
PartiallyEmittedExpression = 296,
MergeDeclarationMarker = 297,
EndOfDeclarationMarker = 298,
Count = 299,
FirstAssignment = 57,
LastAssignment = 69,
FirstCompoundAssignment = 58,
@@ -343,15 +369,15 @@ declare namespace ts {
FirstReservedWord = 71,
LastReservedWord = 106,
FirstKeyword = 71,
LastKeyword = 140,
LastKeyword = 141,
FirstFutureReservedWord = 107,
LastFutureReservedWord = 115,
FirstTypeNode = 156,
LastTypeNode = 171,
FirstTypeNode = 157,
LastTypeNode = 172,
FirstPunctuation = 16,
LastPunctuation = 69,
FirstToken = 0,
LastToken = 140,
LastToken = 141,
FirstTriviaToken = 2,
LastTriviaToken = 7,
FirstLiteralToken = 8,
@@ -360,11 +386,11 @@ declare namespace ts {
LastTemplateToken = 15,
FirstBinaryOperator = 26,
LastBinaryOperator = 69,
FirstNode = 141,
FirstJSDocNode = 263,
LastJSDocNode = 289,
FirstJSDocTagNode = 279,
LastJSDocTagNode = 292,
FirstNode = 142,
FirstJSDocNode = 264,
LastJSDocNode = 293,
FirstJSDocTagNode = 280,
LastJSDocTagNode = 293,
}
enum NodeFlags {
None = 0,
@@ -632,7 +658,7 @@ declare namespace ts {
_typeNodeBrand: any;
}
interface KeywordTypeNode extends TypeNode {
kind: SyntaxKind.AnyKeyword | SyntaxKind.NumberKeyword | SyntaxKind.BooleanKeyword | SyntaxKind.StringKeyword | SyntaxKind.SymbolKeyword | SyntaxKind.VoidKeyword;
kind: SyntaxKind.AnyKeyword | SyntaxKind.NumberKeyword | SyntaxKind.ObjectKeyword | SyntaxKind.BooleanKeyword | SyntaxKind.StringKeyword | SyntaxKind.SymbolKeyword | SyntaxKind.VoidKeyword;
}
interface ThisTypeNode extends TypeNode {
kind: SyntaxKind.ThisType;
@@ -1578,7 +1604,7 @@ declare namespace ts {
getIndexInfoOfType(type: Type, kind: IndexKind): IndexInfo;
getSignaturesOfType(type: Type, kind: SignatureKind): Signature[];
getIndexTypeOfType(type: Type, kind: IndexKind): Type;
getBaseTypes(type: InterfaceType): ObjectType[];
getBaseTypes(type: InterfaceType): BaseType[];
getReturnTypeOfSignature(signature: Signature): Type;
getNonNullableType(type: Type): Type;
getSymbolsInScope(location: Node, meaning: SymbolFlags): Symbol[];
@@ -1778,6 +1804,7 @@ declare namespace ts {
Intersection = 131072,
Index = 262144,
IndexedAccess = 524288,
NonPrimitive = 16777216,
Literal = 480,
StringOrNumberLiteral = 96,
PossiblyFalsy = 7406,
@@ -1787,10 +1814,10 @@ declare namespace ts {
EnumLike = 272,
UnionOrIntersection = 196608,
StructuredType = 229376,
StructuredOrTypeParameter = 507904,
StructuredOrTypeVariable = 1032192,
TypeVariable = 540672,
Narrowable = 1033215,
NotUnionOrUnit = 33281,
Narrowable = 17810431,
NotUnionOrUnit = 16810497,
}
type DestructuringPattern = BindingPattern | ObjectLiteralExpression | ArrayLiteralExpression;
interface Type {
@@ -1806,7 +1833,7 @@ declare namespace ts {
regularType?: LiteralType;
}
interface EnumType extends Type {
memberTypes: Map<EnumLiteralType>;
memberTypes: EnumLiteralType[];
}
interface EnumLiteralType extends LiteralType {
baseType: EnumType & UnionType;
@@ -1822,6 +1849,7 @@ declare namespace ts {
ObjectLiteral = 128,
EvolvingArray = 256,
ObjectLiteralPatternWithComputedProperties = 512,
NonPrimitive = 1024,
ClassOrInterface = 3,
}
interface ObjectType extends Type {
@@ -1834,6 +1862,7 @@ declare namespace ts {
localTypeParameters: TypeParameter[];
thisType: TypeParameter;
}
type BaseType = ObjectType | IntersectionType;
interface InterfaceTypeWithDeclaredMembers extends InterfaceType {
declaredProperties: Symbol[];
declaredCallSignatures: Signature[];
@@ -2034,6 +2063,7 @@ declare namespace ts {
None = 0,
Preserve = 1,
React = 2,
ReactNative = 3,
}
enum NewLineKind {
CarriageReturnLineFeed = 0,
@@ -2173,6 +2203,8 @@ declare namespace ts {
/** The version of the TypeScript compiler release */
const version = "2.2.0";
}
declare function setTimeout(handler: (...args: any[]) => void, timeout: number): any;
declare function clearTimeout(handle: any): void;
declare namespace ts {
type FileWatcherCallback = (fileName: string, removed?: boolean) => void;
type DirectoryWatcherCallback = (fileName: string) => void;
@@ -2267,8 +2299,8 @@ declare namespace ts {
function forEachTrailingCommentRange<T, U>(text: string, pos: number, cb: (pos: number, end: number, kind: SyntaxKind, hasTrailingNewLine: boolean, state: T) => U, state?: T): U;
function reduceEachLeadingCommentRange<T, U>(text: string, pos: number, cb: (pos: number, end: number, kind: SyntaxKind, hasTrailingNewLine: boolean, state: T, memo: U) => U, state: T, initial: U): U;
function reduceEachTrailingCommentRange<T, U>(text: string, pos: number, cb: (pos: number, end: number, kind: SyntaxKind, hasTrailingNewLine: boolean, state: T, memo: U) => U, state: T, initial: U): U;
function getLeadingCommentRanges(text: string, pos: number): CommentRange[];
function getTrailingCommentRanges(text: string, pos: number): CommentRange[];
function getLeadingCommentRanges(text: string, pos: number): CommentRange[] | undefined;
function getTrailingCommentRanges(text: string, pos: number): CommentRange[] | undefined;
/** Optionally, get the shebang */
function getShebang(text: string): string;
function isIdentifierStart(ch: number, languageVersion: ScriptTarget): boolean;
@@ -2327,6 +2359,10 @@ declare namespace ts {
function updateSourceFile(sourceFile: SourceFile, newText: string, textChangeRange: TextChangeRange, aggressiveChecks?: boolean): SourceFile;
}
declare namespace ts {
/** Array that is only intended to be pushed to, never read. */
interface Push<T> {
push(value: T): void;
}
function moduleHasNonRelativeName(moduleName: string): boolean;
function getEffectiveTypeRoots(options: CompilerOptions, host: {
directoryExists?: (directoryName: string) => boolean;
@@ -2454,7 +2490,7 @@ declare namespace ts {
getConstructSignatures(): Signature[];
getStringIndexType(): Type;
getNumberIndexType(): Type;
getBaseTypes(): ObjectType[];
getBaseTypes(): BaseType[];
getNonNullableType(): Type;
}
interface Signature {