From 20db9a5b7ce0170fb80a5183069bbceb7e348632 Mon Sep 17 00:00:00 2001 From: Nickolay Platonov Date: Fri, 28 Feb 2020 07:03:32 +0300 Subject: [PATCH] feat: Config option to exclude not explicitly documented symbols (#996) Closes #995 --- scripts/rebuild_specs.js | 4 + src/lib/converter/converter.ts | 3 + src/lib/converter/factories/declaration.ts | 9 +- src/lib/utils/options/sources/typedoc.ts | 5 + src/test/converter.test.ts | 36 + src/test/converter/enum/specs.nodoc.json | 373 ++ src/test/converter/variables/specs.nodoc.json | 4166 +++++++++++++++++ 7 files changed, 4595 insertions(+), 1 deletion(-) create mode 100644 src/test/converter/enum/specs.nodoc.json create mode 100644 src/test/converter/variables/specs.nodoc.json diff --git a/scripts/rebuild_specs.js b/scripts/rebuild_specs.js index 4bb90ea64..8e393875a 100644 --- a/scripts/rebuild_specs.js +++ b/scripts/rebuild_specs.js @@ -42,6 +42,10 @@ const conversions = [ () => app.options.setValue('categorizeByGroup', false), () => app.options.setValue('categorizeByGroup', true) ], + ['specs.nodoc', + () => app.options.setValue('excludeNotDocumented', true), + () => app.options.setValue('excludeNotDocumented', false) + ] ]; /** diff --git a/src/lib/converter/converter.ts b/src/lib/converter/converter.ts index e65ca05c2..fb280265c 100644 --- a/src/lib/converter/converter.ts +++ b/src/lib/converter/converter.ts @@ -49,6 +49,9 @@ export class Converter extends ChildableComponent { equal(json, typed); }); }); + +// describe('Converter with excludeNotDocumented=true', function() { +// const base = Path.join(__dirname, 'converter'); +// const fixtureDir = Path.join(base, 'exclude-not-documented'); +// let app: Application; +// +// before('constructs', function() { +// app = new Application({ +// mode: 'Modules', +// logger: 'none', +// target: 'ES5', +// module: 'CommonJS', +// experimentalDecorators: true, +// excludeNotDocumented: true, +// jsx: 'react' +// }); +// }); +// +// let result: ProjectReflection | undefined; +// +// describe('Exclude not documented symbols', () => { +// it('converts fixtures', function() { +// resetReflectionID(); +// result = app.convert(app.expandInputFiles([fixtureDir])); +// Assert(result instanceof ProjectReflection, 'No reflection returned'); +// }); +// +// it('matches specs', function() { +// const specs = JSON.parse(FS.readFileSync(Path.join(fixtureDir, 'specs-without-undocumented.json')).toString()); +// let data = JSON.stringify(result!.toObject(), null, ' '); +// data = data.split(normalizePath(base)).join('%BASE%'); +// +// compareReflections(JSON.parse(data), specs); +// }); +// }); +// }); diff --git a/src/test/converter/enum/specs.nodoc.json b/src/test/converter/enum/specs.nodoc.json new file mode 100644 index 000000000..558676852 --- /dev/null +++ b/src/test/converter/enum/specs.nodoc.json @@ -0,0 +1,373 @@ +{ + "id": 0, + "name": "typedoc", + "kind": 0, + "flags": {}, + "children": [ + { + "id": 1, + "name": "\"enum\"", + "kind": 1, + "kindString": "External module", + "flags": { + "isExported": true + }, + "originalName": "%BASE%/enum/enum.ts", + "children": [ + { + "id": 10, + "name": "ConstEnum", + "kind": 4, + "kindString": "Enumeration", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is a const enum." + }, + "children": [ + { + "id": 11, + "name": "a", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 60, + "character": 5 + } + ], + "defaultValue": "1" + }, + { + "id": 12, + "name": "b", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 61, + "character": 5 + } + ], + "defaultValue": "a + 1" + } + ], + "groups": [ + { + "title": "Enumeration members", + "kind": 16, + "children": [ + 11, + 12 + ] + } + ], + "sources": [ + { + "fileName": "enum.ts", + "line": 59, + "character": 27 + } + ] + }, + { + "id": 6, + "name": "ModuleEnum", + "kind": 4, + "kindString": "Enumeration", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is an enumeration extended by a module.\nThis is a module extending an enumeration." + }, + "children": [ + { + "id": 7, + "name": "EnumValue1", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is the first enum member." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 28, + "character": 14 + } + ], + "defaultValue": "1" + }, + { + "id": 8, + "name": "EnumValue2", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is the second enum member." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 33, + "character": 14 + } + ], + "defaultValue": "2" + }, + { + "id": 9, + "name": "EnumValue3", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is the third enum member." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 38, + "character": 14 + } + ], + "defaultValue": "4" + }, + { + "id": 13, + "name": "enumValue", + "kind": 32, + "kindString": "Variable", + "flags": { + "isExported": true, + "isLet": true + }, + "comment": { + "shortText": "This is a variable appended to an enumeration." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 48, + "character": 17 + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + }, + { + "id": 14, + "name": "enumFunction", + "kind": 64, + "kindString": "Function", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 15, + "name": "enumFunction", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is a function appended to an enumeration." + }, + "type": { + "type": "intrinsic", + "name": "void" + } + } + ], + "sources": [ + { + "fileName": "enum.ts", + "line": 53, + "character": 25 + } + ] + } + ], + "groups": [ + { + "title": "Enumeration members", + "kind": 16, + "children": [ + 7, + 8, + 9 + ] + }, + { + "title": "Variables", + "kind": 32, + "children": [ + 13 + ] + }, + { + "title": "Functions", + "kind": 64, + "children": [ + 14 + ] + } + ], + "sources": [ + { + "fileName": "enum.ts", + "line": 24, + "character": 22 + }, + { + "fileName": "enum.ts", + "line": 44, + "character": 24 + } + ] + }, + { + "id": 2, + "name": "SimpleEnum", + "kind": 4, + "kindString": "Enumeration", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is a simple enumeration." + }, + "children": [ + { + "id": 3, + "name": "EnumValue1", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is the first enum member." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 8, + "character": 14 + } + ], + "defaultValue": "1" + }, + { + "id": 4, + "name": "EnumValue2", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is the second enum member." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 13, + "character": 14 + } + ], + "defaultValue": "2" + }, + { + "id": 5, + "name": "EnumValue3", + "kind": 16, + "kindString": "Enumeration member", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "This is the third enum member." + }, + "sources": [ + { + "fileName": "enum.ts", + "line": 18, + "character": 14 + } + ], + "defaultValue": "4" + } + ], + "groups": [ + { + "title": "Enumeration members", + "kind": 16, + "children": [ + 3, + 4, + 5 + ] + } + ], + "sources": [ + { + "fileName": "enum.ts", + "line": 4, + "character": 22 + } + ] + } + ], + "groups": [ + { + "title": "Enumerations", + "kind": 4, + "children": [ + 10, + 6, + 2 + ] + } + ], + "sources": [ + { + "fileName": "enum.ts", + "line": 1, + "character": 0 + } + ] + } + ], + "groups": [ + { + "title": "External modules", + "kind": 1, + "children": [ + 1 + ] + } + ] +} \ No newline at end of file diff --git a/src/test/converter/variables/specs.nodoc.json b/src/test/converter/variables/specs.nodoc.json new file mode 100644 index 000000000..c15805b83 --- /dev/null +++ b/src/test/converter/variables/specs.nodoc.json @@ -0,0 +1,4166 @@ +{ + "id": 0, + "name": "typedoc", + "kind": 0, + "flags": {}, + "children": [ + { + "id": 1, + "name": "\"array\"", + "kind": 1, + "kindString": "External module", + "flags": { + "isExported": true + }, + "originalName": "%BASE%/variables/array.ts", + "children": [ + { + "id": 4, + "name": "Foo", + "kind": 128, + "kindString": "Class", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Class array class item" + }, + "sources": [ + { + "fileName": "dist/test/converter/variables/array.ts", + "line": 20, + "character": 16 + } + ] + }, + { + "id": 5, + "name": "FooList", + "kind": 128, + "kindString": "Class", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Custom list class" + }, + "indexSignature": [ + { + "id": 151, + "name": "__index", + "kind": 8192, + "kindString": "Index signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Custom list class" + }, + "parameters": [ + { + "id": 152, + "name": "n", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + ], + "children": [ + { + "id": 6, + "name": "length", + "kind": 1024, + "kindString": "Property", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Gets or sets the length of the array. This is a number one higher than the highest element defined in an array." + }, + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1215, + "character": 10 + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 6, + "name": "Array.length" + } + }, + { + "id": 183, + "name": "[Symbol.iterator]", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 184, + "name": "[Symbol.iterator]", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Iterator" + }, + "type": { + "type": "reference", + "typeArguments": [ + { + "type": "reference", + "id": 4, + "name": "Foo" + } + ], + "name": "IterableIterator" + }, + "inheritedFrom": { + "type": "reference", + "id": 183, + "name": "Array.[Symbol.iterator]" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.iterable.d.ts", + "line": 60, + "character": 21 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 183, + "name": "Array.[Symbol.iterator]" + } + }, + { + "id": 191, + "name": "[Symbol.unscopables]", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 192, + "name": "[Symbol.unscopables]", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns an object whose properties have the value 'true'\nwhen they will be absent when used in a 'with' statement." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 193, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts", + "line": 94, + "character": 27 + } + ] + } + }, + "inheritedFrom": { + "type": "reference", + "id": 191, + "name": "Array.[Symbol.unscopables]" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts", + "line": 94, + "character": 24 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 191, + "name": "Array.[Symbol.unscopables]" + } + }, + { + "id": 16, + "name": "concat", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 17, + "name": "concat", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Combines two or more arrays." + }, + "parameters": [ + { + "id": 18, + "name": "items", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isRest": true + }, + "comment": { + "text": "Additional items to add to the end of array1.\n" + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "typeArguments": [ + { + "type": "reference", + "id": 4, + "name": "Foo" + } + ], + "name": "ConcatArray" + } + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 16, + "name": "Array.concat" + } + }, + { + "id": 19, + "name": "concat", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Combines two or more arrays." + }, + "parameters": [ + { + "id": 20, + "name": "items", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isRest": true + }, + "comment": { + "text": "Additional items to add to the end of array1.\n" + }, + "type": { + "type": "array", + "elementType": { + "type": "union", + "types": [ + { + "type": "unknown", + "name": "T" + }, + { + "type": "reference", + "typeArguments": [ + { + "type": "unknown", + "name": "T" + } + ], + "name": "ConcatArray" + } + ] + } + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 16, + "name": "Array.concat" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1237, + "character": 10 + }, + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1242, + "character": 10 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 16, + "name": "Array.concat" + } + }, + { + "id": 178, + "name": "copyWithin", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 179, + "name": "copyWithin", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the this object after copying a section of the array identified by start and end\nto the same array starting at position target" + }, + "parameters": [ + { + "id": 180, + "name": "target", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "If target is negative, it is treated as length+target where length is the\nlength of the array." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 181, + "name": "start", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "If start is negative, it is treated as length+start. If end is negative, it\nis treated as length+end." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 182, + "name": "end", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "If not specified, length of the this object is used as its default value.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "intrinsic", + "name": "this" + }, + "inheritedFrom": { + "type": "reference", + "id": 178, + "name": "Array.copyWithin" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.core.d.ts", + "line": 64, + "character": 14 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 178, + "name": "Array.copyWithin" + } + }, + { + "id": 185, + "name": "entries", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 186, + "name": "entries", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns an iterable of key, value pairs for every entry in the array" + }, + "type": { + "type": "reference", + "typeArguments": [ + { + "type": "tuple", + "elements": [ + { + "type": "intrinsic", + "name": "number" + }, + { + "type": "reference", + "id": 4, + "name": "Foo" + } + ] + } + ], + "name": "IterableIterator" + }, + "inheritedFrom": { + "type": "reference", + "id": 185, + "name": "Array.entries" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.iterable.d.ts", + "line": 65, + "character": 11 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 185, + "name": "Array.entries" + } + }, + { + "id": 58, + "name": "every", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 59, + "name": "every", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Determines whether all the members of an array satisfy the specified test." + }, + "parameters": [ + { + "id": 60, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to three arguments. The every method calls\nthe callbackfn function for each element in the array until the callbackfn returns a value\nwhich is coercible to the Boolean value false, or until the end of the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 61, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 62, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 63, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 64, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 65, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "unknown" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1310, + "character": 21 + } + ] + } + } + }, + { + "id": 66, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "An object to which the this keyword can refer in the callbackfn function.\nIf thisArg is omitted, undefined is used as the this value.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 58, + "name": "Array.every" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1310, + "character": 9 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 58, + "name": "Array.every" + } + }, + { + "id": 173, + "name": "fill", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 174, + "name": "fill", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the this object after filling the section identified by start and end with value" + }, + "parameters": [ + { + "id": 175, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "value to fill array section with" + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 176, + "name": "start", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "index to start filling the array at. If start is negative, it is treated as\nlength+start where length is the length of the array." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 177, + "name": "end", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "index to stop filling the array at. If end is negative, it is treated as\nlength+end.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "intrinsic", + "name": "this" + }, + "inheritedFrom": { + "type": "reference", + "id": 173, + "name": "Array.fill" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.core.d.ts", + "line": 53, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 173, + "name": "Array.fill" + } + }, + { + "id": 95, + "name": "filter", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 96, + "name": "filter", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the elements of an array that meet the condition specified in a callback function." + }, + "typeParameter": [ + { + "id": 97, + "name": "S", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + ], + "parameters": [ + { + "id": 98, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to three arguments. The filter method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 99, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 100, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 101, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 102, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 103, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "predicate", + "name": "value", + "asserts": false, + "targetType": { + "type": "typeParameter", + "name": "S", + "constraint": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1337, + "character": 35 + } + ] + } + } + }, + { + "id": 104, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "typeParameter", + "name": "S", + "constraint": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + }, + "inheritedFrom": { + "type": "reference", + "id": 95, + "name": "Array.filter" + } + }, + { + "id": 105, + "name": "filter", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the elements of an array that meet the condition specified in a callback function." + }, + "parameters": [ + { + "id": 106, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to three arguments. The filter method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 107, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 108, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 109, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 110, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 111, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "unknown" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1343, + "character": 22 + } + ] + } + } + }, + { + "id": 112, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 95, + "name": "Array.filter" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1337, + "character": 10 + }, + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1343, + "character": 10 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 95, + "name": "Array.filter" + } + }, + { + "id": 153, + "name": "find", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 154, + "name": "find", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the value of the first element in the array where predicate is true, and undefined\notherwise." + }, + "typeParameter": [ + { + "id": 155, + "name": "S", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + ], + "parameters": [ + { + "id": 156, + "name": "predicate", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "find calls predicate once for each element of the array, in ascending\norder, until it finds one where predicate returns true. If such an element is found, find\nimmediately returns that element value. Otherwise, find returns undefined." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 157, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 158, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 159, + "name": "this", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "void" + } + }, + { + "id": 160, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 161, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 162, + "name": "obj", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "predicate", + "name": "value", + "asserts": false, + "targetType": { + "type": "typeParameter", + "name": "S", + "constraint": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.core.d.ts", + "line": 31, + "character": 32 + } + ] + } + } + }, + { + "id": 163, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "If provided, it will be used as the this value for each invocation of\npredicate. If it is not provided, undefined is used instead.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "union", + "types": [ + { + "type": "typeParameter", + "name": "S", + "constraint": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "type": "intrinsic", + "name": "undefined" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 153, + "name": "Array.find" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.core.d.ts", + "line": 31, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 153, + "name": "Array.find" + } + }, + { + "id": 164, + "name": "findIndex", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 165, + "name": "findIndex", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the index of the first element in the array where predicate is true, and -1\notherwise." + }, + "parameters": [ + { + "id": 166, + "name": "predicate", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "find calls predicate once for each element of the array, in ascending\norder, until it finds one where predicate returns true. If such an element is found,\nfindIndex immediately returns that element index. Otherwise, findIndex returns -1." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 167, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 168, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 169, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 170, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 171, + "name": "obj", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "unknown" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.core.d.ts", + "line": 43, + "character": 24 + } + ] + } + } + }, + { + "id": 172, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "If provided, it will be used as the this value for each invocation of\npredicate. If it is not provided, undefined is used instead.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 164, + "name": "Array.findIndex" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.core.d.ts", + "line": 43, + "character": 13 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 164, + "name": "Array.findIndex" + } + }, + { + "id": 76, + "name": "forEach", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 77, + "name": "forEach", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Performs the specified action for each element in an array." + }, + "parameters": [ + { + "id": 78, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 79, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 80, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 81, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 82, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 83, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "void" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1325, + "character": 23 + } + ] + } + } + }, + { + "id": 84, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "intrinsic", + "name": "void" + }, + "inheritedFrom": { + "type": "reference", + "id": 76, + "name": "Array.forEach" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1325, + "character": 11 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 76, + "name": "Array.forEach" + } + }, + { + "id": 194, + "name": "includes", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 195, + "name": "includes", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Determines whether an array includes a certain element, returning true or false as appropriate." + }, + "parameters": [ + { + "id": 196, + "name": "searchElement", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "The element to search for." + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 197, + "name": "fromIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "The position in this array at which to begin searching for searchElement.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 194, + "name": "Array.includes" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2016.array.include.d.ts", + "line": 27, + "character": 12 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 194, + "name": "Array.includes" + } + }, + { + "id": 50, + "name": "indexOf", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 51, + "name": "indexOf", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the index of the first occurrence of a value in an array." + }, + "parameters": [ + { + "id": 52, + "name": "searchElement", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "The value to locate in the array." + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 53, + "name": "fromIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 50, + "name": "Array.indexOf" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1295, + "character": 11 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 50, + "name": "Array.indexOf" + } + }, + { + "id": 21, + "name": "join", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 22, + "name": "join", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Adds all the elements of an array separated by the specified separator string." + }, + "parameters": [ + { + "id": 23, + "name": "separator", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "A string used to separate one element of an array from the next in the resulting String. If omitted, the array elements are separated with a comma.\n" + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 21, + "name": "Array.join" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1247, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 21, + "name": "Array.join" + } + }, + { + "id": 187, + "name": "keys", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 188, + "name": "keys", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns an iterable of keys in the array" + }, + "type": { + "type": "reference", + "typeArguments": [ + { + "type": "intrinsic", + "name": "number" + } + ], + "name": "IterableIterator" + }, + "inheritedFrom": { + "type": "reference", + "id": 187, + "name": "Array.keys" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.iterable.d.ts", + "line": 70, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 187, + "name": "Array.keys" + } + }, + { + "id": 54, + "name": "lastIndexOf", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 55, + "name": "lastIndexOf", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns the index of the last occurrence of a specified value in an array." + }, + "parameters": [ + { + "id": 56, + "name": "searchElement", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "The value to locate in the array." + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 57, + "name": "fromIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "The array index at which to begin the search. If fromIndex is omitted, the search starts at the last index in the array.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 54, + "name": "Array.lastIndexOf" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1301, + "character": 15 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 54, + "name": "Array.lastIndexOf" + } + }, + { + "id": 85, + "name": "map", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 86, + "name": "map", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Calls a defined callback function on each element of an array, and returns an array that contains the results." + }, + "typeParameter": [ + { + "id": 87, + "name": "U", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "parameters": [ + { + "id": 88, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 89, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 90, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 91, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 92, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 93, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "typeParameter", + "name": "U" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1331, + "character": 22 + } + ] + } + } + }, + { + "id": 94, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "typeParameter", + "name": "U" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 85, + "name": "Array.map" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1331, + "character": 7 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 85, + "name": "Array.map" + } + }, + { + "id": 11, + "name": "pop", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 12, + "name": "pop", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Removes the last element from an array and returns it." + }, + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 4, + "name": "Foo" + }, + { + "type": "intrinsic", + "name": "undefined" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 11, + "name": "Array.pop" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1227, + "character": 7 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 11, + "name": "Array.pop" + } + }, + { + "id": 13, + "name": "push", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 14, + "name": "push", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Appends new elements to an array, and returns the new length of the array." + }, + "parameters": [ + { + "id": 15, + "name": "items", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isRest": true + }, + "comment": { + "text": "New elements of the Array.\n" + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 13, + "name": "Array.push" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1232, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 13, + "name": "Array.push" + } + }, + { + "id": 113, + "name": "reduce", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 114, + "name": "reduce", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function." + }, + "parameters": [ + { + "id": 115, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 116, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 117, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 118, + "name": "previousValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 119, + "name": "currentValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 120, + "name": "currentIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 121, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1349, + "character": 22 + } + ] + } + } + } + ], + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + }, + "inheritedFrom": { + "type": "reference", + "id": 113, + "name": "Array.reduce" + } + }, + { + "id": 122, + "name": "reduce", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function." + }, + "typeParameter": [ + { + "id": 123, + "name": "U", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "parameters": [ + { + "id": 124, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 125, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 126, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 127, + "name": "previousValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "typeParameter", + "name": "U" + } + }, + { + "id": 128, + "name": "currentValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 129, + "name": "currentIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 130, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "typeParameter", + "name": "U" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1356, + "character": 25 + } + ] + } + } + }, + { + "id": 131, + "name": "initialValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.\n" + }, + "type": { + "type": "typeParameter", + "name": "U" + } + } + ], + "type": { + "type": "typeParameter", + "name": "U" + }, + "inheritedFrom": { + "type": "reference", + "id": 113, + "name": "Array.reduce" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1349, + "character": 10 + }, + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1356, + "character": 10 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 113, + "name": "Array.reduce" + } + }, + { + "id": 132, + "name": "reduceRight", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 133, + "name": "reduceRight", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function." + }, + "parameters": [ + { + "id": 134, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 135, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 136, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 137, + "name": "previousValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 138, + "name": "currentValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 139, + "name": "currentIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 140, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1362, + "character": 27 + } + ] + } + } + } + ], + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + }, + "inheritedFrom": { + "type": "reference", + "id": 132, + "name": "Array.reduceRight" + } + }, + { + "id": 141, + "name": "reduceRight", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function." + }, + "typeParameter": [ + { + "id": 142, + "name": "U", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "parameters": [ + { + "id": 143, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 144, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 145, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 146, + "name": "previousValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "typeParameter", + "name": "U" + } + }, + { + "id": 147, + "name": "currentValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 148, + "name": "currentIndex", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 149, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "typeParameter", + "name": "U" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1369, + "character": 30 + } + ] + } + } + }, + { + "id": 150, + "name": "initialValue", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.\n" + }, + "type": { + "type": "typeParameter", + "name": "U" + } + } + ], + "type": { + "type": "typeParameter", + "name": "U" + }, + "inheritedFrom": { + "type": "reference", + "id": 132, + "name": "Array.reduceRight" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1362, + "character": 15 + }, + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1369, + "character": 15 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 132, + "name": "Array.reduceRight" + } + }, + { + "id": 24, + "name": "reverse", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 25, + "name": "reverse", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Reverses the elements in an Array." + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 24, + "name": "Array.reverse" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1251, + "character": 11 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 24, + "name": "Array.reverse" + } + }, + { + "id": 26, + "name": "shift", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 27, + "name": "shift", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Removes the first element from an array and returns it." + }, + "type": { + "type": "union", + "types": [ + { + "type": "reference", + "id": 4, + "name": "Foo" + }, + { + "type": "intrinsic", + "name": "undefined" + } + ] + }, + "inheritedFrom": { + "type": "reference", + "id": 26, + "name": "Array.shift" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1255, + "character": 9 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 26, + "name": "Array.shift" + } + }, + { + "id": 28, + "name": "slice", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 29, + "name": "slice", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns a section of an array." + }, + "parameters": [ + { + "id": 30, + "name": "start", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "The beginning of the specified portion of the array." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 31, + "name": "end", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "The end of the specified portion of the array. This is exclusive of the element at the index 'end'.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 28, + "name": "Array.slice" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1261, + "character": 9 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 28, + "name": "Array.slice" + } + }, + { + "id": 67, + "name": "some", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 68, + "name": "some", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Determines whether the specified callback function returns true for any element of an array." + }, + "parameters": [ + { + "id": 69, + "name": "callbackfn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "A function that accepts up to three arguments. The some method calls\nthe callbackfn function for each element in the array until the callbackfn returns a value\nwhich is coercible to the Boolean value true, or until the end of the array." + }, + "type": { + "type": "reflection", + "declaration": { + "id": 70, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 71, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 72, + "name": "value", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 73, + "name": "index", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 74, + "name": "array", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "unknown" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1319, + "character": 20 + } + ] + } + } + }, + { + "id": 75, + "name": "thisArg", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "An object to which the this keyword can refer in the callbackfn function.\nIf thisArg is omitted, undefined is used as the this value.\n" + }, + "type": { + "type": "intrinsic", + "name": "any" + } + } + ], + "type": { + "type": "intrinsic", + "name": "boolean" + }, + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "Array.some" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1319, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 67, + "name": "Array.some" + } + }, + { + "id": 32, + "name": "sort", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 33, + "name": "sort", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Sorts an array." + }, + "parameters": [ + { + "id": 34, + "name": "compareFn", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "Function used to determine the order of the elements. It is expected to return\na negative value if first argument is less than second argument, zero if they're equal and a positive\nvalue otherwise. If omitted, the elements are sorted in ascending, ASCII character order.\n```ts\n[11,2,22,1].sort((a, b) => a - b)\n```\n" + }, + "type": { + "type": "reflection", + "declaration": { + "id": 35, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 36, + "name": "__call", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "parameters": [ + { + "id": 37, + "name": "a", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + { + "id": 38, + "name": "b", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "type": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + ], + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1271, + "character": 20 + } + ] + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "this" + }, + "inheritedFrom": { + "type": "reference", + "id": 32, + "name": "Array.sort" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1271, + "character": 8 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 32, + "name": "Array.sort" + } + }, + { + "id": 39, + "name": "splice", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 40, + "name": "splice", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements." + }, + "parameters": [ + { + "id": 41, + "name": "start", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "The zero-based location in the array from which to start removing elements." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 42, + "name": "deleteCount", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isOptional": true + }, + "comment": { + "text": "The number of elements to remove.\n" + }, + "type": { + "type": "intrinsic", + "name": "number" + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 39, + "name": "Array.splice" + } + }, + { + "id": 43, + "name": "splice", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements." + }, + "parameters": [ + { + "id": 44, + "name": "start", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "The zero-based location in the array from which to start removing elements." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 45, + "name": "deleteCount", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true + }, + "comment": { + "text": "The number of elements to remove." + }, + "type": { + "type": "intrinsic", + "name": "number" + } + }, + { + "id": 46, + "name": "items", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isRest": true + }, + "comment": { + "text": "Elements to insert into the array in place of the deleted elements.\n" + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + }, + "inheritedFrom": { + "type": "reference", + "id": 39, + "name": "Array.splice" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1277, + "character": 10 + }, + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1284, + "character": 10 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 39, + "name": "Array.splice" + } + }, + { + "id": 9, + "name": "toLocaleString", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 10, + "name": "toLocaleString", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns a string representation of an array. The elements are converted to string using their toLocalString methods." + }, + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 9, + "name": "Array.toLocaleString" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1223, + "character": 18 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 9, + "name": "Array.toLocaleString" + } + }, + { + "id": 7, + "name": "toString", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 8, + "name": "toString", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns a string representation of an array." + }, + "type": { + "type": "intrinsic", + "name": "string" + }, + "inheritedFrom": { + "type": "reference", + "id": 7, + "name": "Array.toString" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1219, + "character": 12 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 7, + "name": "Array.toString" + } + }, + { + "id": 47, + "name": "unshift", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 48, + "name": "unshift", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Inserts new elements at the start of an array." + }, + "parameters": [ + { + "id": 49, + "name": "items", + "kind": 32768, + "kindString": "Parameter", + "flags": { + "isExported": true, + "isRest": true + }, + "comment": { + "text": "Elements to insert at the start of the Array.\n" + }, + "type": { + "type": "array", + "elementType": { + "type": "reference", + "id": 4, + "name": "Foo" + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "number" + }, + "inheritedFrom": { + "type": "reference", + "id": 47, + "name": "Array.unshift" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es5.d.ts", + "line": 1289, + "character": 11 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 47, + "name": "Array.unshift" + } + }, + { + "id": 189, + "name": "values", + "kind": 2048, + "kindString": "Method", + "flags": { + "isExported": true + }, + "signatures": [ + { + "id": 190, + "name": "values", + "kind": 4096, + "kindString": "Call signature", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "Returns an iterable of values in the array" + }, + "type": { + "type": "reference", + "typeArguments": [ + { + "type": "reference", + "id": 4, + "name": "Foo" + } + ], + "name": "IterableIterator" + }, + "inheritedFrom": { + "type": "reference", + "id": 189, + "name": "Array.values" + } + } + ], + "sources": [ + { + "fileName": "node_modules/typescript/lib/lib.es2015.iterable.d.ts", + "line": 75, + "character": 10 + } + ], + "inheritedFrom": { + "type": "reference", + "id": 189, + "name": "Array.values" + } + } + ], + "groups": [ + { + "title": "Properties", + "kind": 1024, + "children": [ + 6 + ] + }, + { + "title": "Methods", + "kind": 2048, + "children": [ + 183, + 191, + 16, + 178, + 185, + 58, + 173, + 95, + 153, + 164, + 76, + 194, + 50, + 21, + 187, + 54, + 85, + 11, + 13, + 113, + 132, + 24, + 26, + 28, + 67, + 32, + 39, + 9, + 7, + 47, + 189 + ] + } + ], + "sources": [ + { + "fileName": "dist/test/converter/variables/array.ts", + "line": 25, + "character": 20 + } + ], + "extendedTypes": [ + { + "type": "reference", + "typeArguments": [ + { + "type": "reference", + "id": 4, + "name": "Foo" + } + ], + "name": "Array" + } + ] + }, + { + "id": 2, + "name": "Array", + "kind": 256, + "kindString": "Interface", + "flags": { + "isExported": true + }, + "comment": { + "shortText": "A custom array interface." + }, + "typeParameter": [ + { + "id": 3, + "name": "T", + "kind": 131072, + "kindString": "Type parameter", + "flags": { + "isExported": true + } + } + ], + "sources": [ + { + "fileName": "dist/test/converter/variables/array.ts", + "line": 4, + "character": 22 + } + ] + }, + { + "id": 198, + "name": "complex", + "kind": 32, + "kindString": "Variable", + "flags": { + "isExported": true, + "isConst": true + }, + "comment": { + "shortText": "A const of a complex type." + }, + "sources": [ + { + "fileName": "dist/test/converter/variables/array.ts", + "line": 10, + "character": 20 + } + ], + "type": { + "type": "array", + "elementType": { + "type": "array", + "elementType": { + "type": "union", + "types": [ + { + "type": "intrinsic", + "name": "string" + }, + { + "type": "array", + "elementType": { + "type": "union", + "types": [ + { + "type": "array", + "elementType": { + "type": "reference", + "id": 2, + "typeArguments": [ + { + "type": "intrinsic", + "name": "string" + } + ], + "name": "Array" + } + }, + { + "type": "array", + "elementType": { + "type": "intrinsic", + "name": "number" + } + } + ] + } + } + ] + } + } + }, + "defaultValue": "[]" + }, + { + "id": 199, + "name": "custom", + "kind": 32, + "kindString": "Variable", + "flags": { + "isExported": true, + "isConst": true + }, + "comment": { + "shortText": "An exported const of the custom array type." + }, + "sources": [ + { + "fileName": "dist/test/converter/variables/array.ts", + "line": 15, + "character": 19 + } + ], + "type": { + "type": "reference", + "id": 2, + "typeArguments": [ + { + "type": "intrinsic", + "name": "number" + } + ], + "name": "Array" + } + } + ], + "groups": [ + { + "title": "Classes", + "kind": 128, + "children": [ + 4, + 5 + ] + }, + { + "title": "Interfaces", + "kind": 256, + "children": [ + 2 + ] + }, + { + "title": "Variables", + "kind": 32, + "children": [ + 198, + 199 + ] + } + ], + "sources": [ + { + "fileName": "dist/test/converter/variables/array.ts", + "line": 1, + "character": 0 + } + ] + }, + { + "id": 200, + "name": "\"destructuring\"", + "kind": 1, + "kindString": "External module", + "flags": { + "isExported": true + }, + "originalName": "%BASE%/variables/destructuring.ts", + "children": [ + { + "id": 201, + "name": "drawText", + "kind": 64, + "kindString": "Function", + "flags": {}, + "signatures": [ + { + "id": 202, + "name": "drawText", + "kind": 4096, + "kindString": "Call signature", + "flags": {}, + "comment": { + "shortText": "Destructuring function parameters." + }, + "parameters": [ + { + "id": 203, + "name": "__namedParameters", + "kind": 32768, + "kindString": "Parameter", + "flags": {}, + "originalName": "__0", + "type": { + "type": "reflection", + "declaration": { + "id": 204, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": {}, + "sources": [ + { + "fileName": "dist/test/converter/variables/destructuring.ts", + "line": 24, + "character": 18 + } + ] + } + } + } + ], + "type": { + "type": "intrinsic", + "name": "void" + } + } + ], + "sources": [ + { + "fileName": "dist/test/converter/variables/destructuring.ts", + "line": 24, + "character": 17 + } + ] + } + ], + "groups": [ + { + "title": "Functions", + "kind": 64, + "children": [ + 201 + ] + } + ], + "sources": [ + { + "fileName": "dist/test/converter/variables/destructuring.ts", + "line": 1, + "character": 0 + } + ] + }, + { + "id": 205, + "name": "\"literal\"", + "kind": 1, + "kindString": "External module", + "flags": { + "isExported": true + }, + "originalName": "%BASE%/variables/literal.ts", + "children": [ + { + "id": 207, + "name": "typeLiteral", + "kind": 32, + "kindString": "Variable", + "flags": { + "isLet": true + }, + "comment": { + "shortText": "A typed literal without an initializer." + }, + "sources": [ + { + "fileName": "dist/test/converter/variables/literal.ts", + "line": 19, + "character": 15 + } + ], + "type": { + "type": "reflection", + "declaration": { + "id": 208, + "name": "__type", + "kind": 65536, + "kindString": "Type literal", + "flags": {}, + "sources": [ + { + "fileName": "dist/test/converter/variables/literal.ts", + "line": 19, + "character": 16 + } + ] + } + } + }, + { + "id": 206, + "name": "objectLiteral", + "kind": 2097152, + "kindString": "Object literal", + "flags": { + "isExported": true, + "isConst": true + }, + "comment": { + "shortText": "An object literal." + }, + "sources": [ + { + "fileName": "dist/test/converter/variables/literal.ts", + "line": 4, + "character": 19 + } + ], + "type": { + "type": "intrinsic", + "name": "object" + } + } + ], + "groups": [ + { + "title": "Variables", + "kind": 32, + "children": [ + 207 + ] + }, + { + "title": "Object literals", + "kind": 2097152, + "children": [ + 206 + ] + } + ], + "sources": [ + { + "fileName": "dist/test/converter/variables/literal.ts", + "line": 1, + "character": 0 + } + ] + }, + { + "id": 209, + "name": "\"variable\"", + "kind": 1, + "kindString": "External module", + "flags": { + "isExported": true + }, + "originalName": "%BASE%/variables/variable.ts", + "sources": [ + { + "fileName": "dist/test/converter/variables/variable.ts", + "line": 1, + "character": 0 + } + ] + } + ], + "groups": [ + { + "title": "External modules", + "kind": 1, + "children": [ + 1, + 200, + 205, + 209 + ] + } + ] +} \ No newline at end of file