diff --git a/.github/CODE_OWNERS b/.github/CODE_OWNERS
new file mode 100644
index 0000000000..58481899d6
--- /dev/null
+++ b/.github/CODE_OWNERS
@@ -0,0 +1,2759 @@
+/types/abs @AyaMorisawa
+/types/absolute @AyaMorisawa
+/types/acc-wizard @cyrilschumacher
+/types/accepts @bomret
+/types/ace @Diullei
+/types/acl @tkQubo
+/types/acorn @RReverser, @e-cloud
+/types/actioncable @zhu1230
+/types/activex-adodb @zspitz
+/types/activex-scripting @zspitz
+/types/activex-wia @zspitz
+/types/adal @mmaitre314
+/types/adm-zip @jvilk, @abner
+/types/adone @s0m3on3, @maxveres
+/types/aframe @devpaul
+/types/agenda @meirgottlieb
+/types/aggregate-error @BendingBender
+/types/alexa-sdk @petebeegle, @hoo29, @pascalwhoop, @blforce
+/types/alexa-voice-service @dolanmiu
+/types/algebra.js @CaselIT
+/types/algoliasearch @cbaptiste
+/types/alt @Shearerbeard
+/types/amcharts @aleksey-bykov
+/types/amplify-deferred @laurentiustamate94
+/types/amplitude-js @Asido
+/types/amqp @seikho
+/types/amqplib @mnahkies, @abreits, @nfantone
+/types/analytics-node @fongandrew
+/types/angular @calebstdenis, @leonard-thieu
+/types/angular-agility @rolandzwaga
+/types/angular-animate @michelsalib, @adidahiya, @rasch, @codyschaaf
+/types/angular-block-ui @lassebn, @sclassen
+/types/angular-bootstrap-calendar @Odrin
+/types/angular-bootstrap-lightbox @rolandzwaga
+/types/angular-breadcrumb @marctalary
+/types/angular-cookie @borislavjivkov
+/types/angular-dialog-service @wcomartin
+/types/angular-dynamic-locale @stephenlautier
+/types/angular-environment @terrawheat
+/types/angular-formly @scatcher
+/types/angular-fullscreen @julienpa
+/types/angular-gettext @AkosLukacs
+/types/angular-google-analytics @cyrilschumacher, @Toxantron
+/types/angular-gridster @jpmnteiro
+/types/angular-growl-v2 @mkp05
+/types/angular-hotkeys @jlz27, @reppners
+/types/angular-http-auth @vvakame
+/types/angular-httpi @Kukks
+/types/angular-idle @mthamil
+/types/angular-jwt @rerezz
+/types/angular-load @david-gang
+/types/angular-loading-bar @stephenlautier
+/types/angular-local-storage @kenfdev, @dona278
+/types/angular-localforage @reppners
+/types/angular-locker @nkovacic
+/types/angular-material @blbigelow, @PeterHajdu, @Dona278, @geertjansen
+/types/angular-media-queries @jpmnteiro
+/types/angular-meteor @pgrm
+/types/angular-modal @paullessing
+/types/angular-oauth2 @anteriovieira
+/types/angular-pdfjs-viewer @bastienmoulia
+/types/angular-permission @vmishevski
+/types/angular-q-spread @rafw87
+/types/angular-route @park9140
+/types/angular-scenario @RomanoLindano
+/types/angular-scroll @samherrmann
+/types/angular-signalr-hub @AdamSantaniello
+/types/angular-spinner @Biegal
+/types/angular-storage @mdekrey
+/types/angular-strap @samherrmann
+/types/angular-toastr @nkovacic, @trodi
+/types/angular-toasty @muenchdo
+/types/angular-tooltips @leonard-thieu
+/types/angular-touchspin @nkovacic
+/types/angular-translate @michelsalib
+/types/angular-ui-bootstrap @xt0rted, @ry8806
+/types/angular-ui-router @michelsalib, @matiishyn
+/types/angular-ui-scroll @marknadig
+/types/angular-ui-sortable @thgreasi
+/types/angular-ui-tree @CalvinFernandez
+/types/angular-websocket @nickveys
+/types/angular-wizard @mjurisic, @rwwilden
+/types/angular-xeditable @jpmnteiro
+/types/angular.throttle @reppners
+/types/angulartics @stevenfan
+/types/animation-frame @qinfchen
+/types/ansi-styles @brynbellomy
+/types/ansicolors @rogierschouten
+/types/any-db @rogierschouten
+/types/any-db-transaction @rogierschouten
+/types/anybar @khoomeister
+/types/anydb-sql-migrations @spion
+/types/anymatch @BendingBender
+/types/apex.js @y13i
+/types/aphrodite @asvetliakov
+/types/api-error-handler @tkrotoff
+/types/apigee-access @CasperSkydt
+/types/app-root-path @shantmarouti
+/types/appframework @kyo-ago
+/types/appletvjs @brainded
+/types/applicationinsights-js @kamilszostak
+/types/arbiter @arash16
+/types/arcgis-js-api/v3 @Esri
+/types/arcgis-js-api @Esri
+/types/arcgis-rest-api @JeffJacobson
+/types/arcgis-to-geojson-utils @JeffJacobson
+/types/archiver @dolanmiu, @crevil
+/types/are-we-there-yet @brianloveswords
+/types/argv @hookclaw
+/types/array-find-index @samverschueren
+/types/array-foreach @skysteve
+/types/array-uniq @DanielRosenwasser
+/types/arrify @wanganjun
+/types/artyom.js @semagarcia
+/types/asana @tkqubo
+/types/asenv @remisery
+/types/asn1js @microshine
+/types/aspnet-identity-pw @jt000
+/types/assert-equal-jsx @seryl
+/types/assert-plus @KostyaTretyak
+/types/assertion-error @Bartvds
+/types/assertsharp @brunolm
+/types/assets-webpack-plugin @kryops
+/types/async @kern0, @Penryn, @fenying, @pascalmartin
+/types/async.nexttick @pyrho
+/types/atpl @soywiz
+/types/audiosprite @Perlmint
+/types/aurelia-knockout @code-chris
+/types/auth0 @wbhob, @westy92, @amiram
+/types/auth0-angular @homesar
+/types/auth0-js/v7 @advancedrei
+/types/auth0-js @adrianchia
+/types/auth0-lock @carusology, @goldcaddy77
+/types/auth0.widget @advancedrei
+/types/auto-launch @rhysd, @unindented
+/types/auto-sni @janwo
+/types/autobahn @valepu
+/types/autolinker @leonyu
+/types/autoprefixer @odnamrataizem
+/types/autosize @kingdango, @keika299, @NeekSandhu
+/types/aws-iot-device-sdk @niik
+/types/aws-lambda @skarum, @tobyhede, @buggy, @y13i, @wwwy3y3
+/types/aws-serverless-express @threesquared, @jcaffey, @mattmeye
+/types/aws4 @ajcrites
+/types/axel @ruslan-molodyko
+/types/azure @AndrewGaspar, @antiveeranna, @SomaticIT
+/types/b_ @outring
+/types/babel-code-frame @mohsen1
+/types/babel-core @yortus, @marvinhagemeister
+/types/babel-generator @yortus, @johnnyestilles
+/types/babel-plugin-syntax-jsx @marvinhagemeister
+/types/babel-template @yortus, @marvinhagemeister
+/types/babel-traverse @yortus, @marvinhagemeister
+/types/babel-types @yortus, @baxtersa, @marvinhagemeister
+/types/babelify @TeamworkGuy2, @marvinhagemeister
+/types/babylon @yortus, @marvinhagemeister
+/types/babyparse @cdiddy77
+/types/backbone.marionette @zhamid, @nvivo, @sventschui
+/types/backlog-js @vvatanabe
+/types/baconjs @alexander-matsievsky, @gekkio
+/types/bagpipes @micmro
+/types/barcode @pvomhoff
+/types/bardjs @TepigMC
+/types/base-64 @dolanmiu
+/types/base-x @chrootsu
+/types/base16 @alechill
+/types/base64-js @pe8ter
+/types/bases @harikv
+/types/basic-auth @moonpyk, @vesse
+/types/bazinga-translator @alexndlm
+/types/bcrypt @codeanimal, @IOAyman
+/types/bem-cn @selkinvitaly
+/types/better-curry @pocesar
+/types/bezier-js @danmarshall
+/types/bgiframe @sumegizoltan
+/types/bigi @mhegazy
+/types/bigint @Evgenus
+/types/bignum @Patman64
+/types/bind-ponyfill @skysteve
+/types/bingmaps @rbrundritt
+/types/bintrees @CjS77
+/types/bit-array @mudkipme
+/types/bitcoinjs-lib @mhegazy, @dlebrecht, @rbuckton
+/types/bittorrent-protocol @feross, @tlaziuk
+/types/bitwise-xor @rogierschouten
+/types/bl @Bartvds
+/types/blacklist @mhegazy
+/types/blazy @julienpa
+/types/blessed @brynbellomy
+/types/blissfuljs @fskorzec
+/types/blob-stream @erichillah
+/types/blob-util @WorldMaker
+/types/blocks @ksmigiel
+/types/bloomfilter @slawiko
+/types/blue-tape @sodatea
+/types/bluebird/v1 @Bartvds
+/types/bluebird/v2 @Bartvds, @falsandtru
+/types/bluebird @lhecker
+/types/bluebird-global @d-ph
+/types/bluebird-retry @pvomhoff
+/types/blueimp-md5 @rmartone, @mkohlmyr
+/types/body-parser @santialbo, @vilic, @dreampulse, @tlaziuk
+/types/bonjour @octo-sniffle
+/types/bookshelf @vesse
+/types/bootbox @stannynuytkens
+/types/bootstrap-fileinput @CheCoxshall
+/types/bootstrap-maxlength @danmana
+/types/bootstrap-notify @mouse0270, @robert-voica
+/types/bootstrap-select @LKay
+/types/bootstrap-slider @dbeckwith, @leonard-thieu
+/types/bootstrap-switch @johnmbaughman
+/types/bootstrap-touchspin @albinsunnanbo
+/types/bootstrap-treeview @jbtronics
+/types/bootstrap.v3.datetimepicker/v3 @bayitajesi
+/types/bootstrap.v3.datetimepicker @katonap
+/types/bowser @pocesar
+/types/brace-expansion @BendingBender
+/types/braintree-web @chlela
+/types/brorand @chrootsu
+/types/browser-bunyan @PaulLockwood, @kryops
+/types/browser-fingerprint @LKay
+/types/browser-harness @scriby
+/types/browser-pack @TeamworkGuy2
+/types/browser-report @JTOne123
+/types/browserify @jvilk, @leonard-thieu
+/types/bs58 @chrootsu
+/types/bson @CaselIT
+/types/bucks @zaneli
+/types/buffer-compare @chrootsu
+/types/buffer-equal @Bartvds
+/types/bufferstream @Bartvds
+/types/bull/v2 @bgrieder, @JProgrammer
+/types/bull @bgrieder, @JProgrammer, @marshall007
+/types/bunnymq @cyrilschumacher
+/types/bunyan @amikhalev
+/types/bunyan-blackhole @olivr70
+/types/bunyan-config @cyrilschumacher
+/types/bunyan-winston-adapter @stevehipwell
+/types/busboy @jacobbaskin
+/types/business-rules-engine @rsamec
+/types/byline @reppners
+/types/c3 @mcliment, @gerinjacob, @denyo
+/types/cachefactory @vag1830, @danielmassa
+/types/callsite @newclear
+/types/callsites @BendingBender
+/types/calq @eirikhm
+/types/camelcase @samverschueren
+/types/camelcase-keys @mhegazy
+/types/camo @lucasmciruzzi
+/types/cannon @clark-stevenson
+/types/canvas-gauges @Mikhus
+/types/canvasjs @brutalimp
+/types/cash @akvlko
+/types/casperjs @jedmao
+/types/catbox @AJamesPhillips
+/types/cbor @pushplay
+/types/ccap @taoqf
+/types/chai/v2 @Bartvds, @AGBrown
+/types/chai @Bartvds, @AGBrown, @olivr70, @mwistrand, @joshuakgoldberg, @shaunluttin
+/types/chai-as-promised @jt000, @Kuniwak, @leonard-thieu
+/types/chai-dom @mattlewis92
+/types/chai-enzyme @asvetliakov
+/types/chai-fuzzy @Bartvds
+/types/chai-http @Nemo157, @G1itcher, @CaselIT
+/types/chai-json-schema @ulrichheiniger
+/types/chai-oequal @mizunashi-mana
+/types/chai-spies @kuzn-ilya
+/types/chai-subset @AGBrown
+/types/chai-xml @jedigo
+/types/chalk @Diullei, @Bartvds, @nicojs
+/types/change-emitter @iskandersierra
+/types/chart.js @anuti, @FabienLavocat
+/types/chartist @mtgibbs, @psimonski
+/types/chartjs @Steve-Fenton, @FanaHOVA
+/types/checkstyle-formatter @mhegazy
+/types/checksum @rogierschouten
+/types/cheerio @blittle, @wmaurer, @umarniz
+/types/chroma-js/v0 @invliD
+/types/chroma-js @invliD, @mpacholec
+/types/chrome @matthewkimber, @otiai10, @couven92, @rreverser, @sreimer15
+/types/classnames @adidahiya, @JKillian, @mradamczyk, @marvinhagemeister
+/types/cldrjs @RamanBut-Husaim
+/types/clean-css @tkrotoff
+/types/clean-stack @BendingBender
+/types/clear-require @dan-j
+/types/cli @kayahr
+/types/cli-color @ChaosinaCan
+/types/cli-table2 @mgroenhoff
+/types/cliff @brynbellomy
+/types/clipboard @impworks
+/types/clipboard-js @markwongsk
+/types/clipboardy @BendingBender
+/types/clndr @jasperjn
+/types/closure-compiler @mprobst
+/types/cloud-env @Morfent
+/types/cloudflare-apps @MartynasZilinskas
+/types/co-body @geoffreak
+/types/co-views @geoffreak
+/types/code @prashaantt
+/types/codemirror @mihailik
+/types/codependency @morphatic
+/types/coffeeify @tkQubo
+/types/coinstring @mhegazy
+/types/collections @scarabedore
+/types/color/v0 @LKay
+/types/color/v1 @LKay
+/types/color @Airlun
+/types/color-convert @Airlun
+/types/color-name @Ailrun
+/types/color-string @BendingBender, @danmarshall
+/types/colorbrewer @mtraynham
+/types/colors @Bartvds, @staeke
+/types/com.darktalker.cordova.screenshot @akarienta
+/types/combine-source-map @TeamworkGuy2
+/types/combined-stream @felixge, @tlaziuk
+/types/combokeys @iclanton
+/types/cometd @derekcicerone
+/types/commander @alan-agius4
+/types/commangular @hiraash
+/types/comment-json @Jason3S
+/types/common-tags @zuzusik
+/types/commonmark @nicojs, @leonard-thieu
+/types/complex @AyaMorisawa
+/types/compose-function @denis-sokolov
+/types/compressible @BendingBender
+/types/compression-webpack-plugin @dublicator
+/types/concat-stream @jmarianer
+/types/concaveman @DenisCarriere
+/types/conf/v0 @SamVerschueren
+/types/conf @SamVerschueren, @BendingBender
+/types/confidence @jppellerin
+/types/config @RWander
+/types/configstore @ArcticLight
+/types/connect-ensure-login @0x6368656174
+/types/connect-history-api-fallback @douglasduteil
+/types/connect-mongo @Syati
+/types/connect-redis @xstoudi, @morcerf
+/types/connect-slashes @samherrmann
+/types/connect-timeout @cyrilschumacher
+/types/consolidate @soywiz, @theosherry, @nicolashenry
+/types/consul @chrootsu
+/types/content-disposition @bomret
+/types/content-type @horiuchi
+/types/contentful-resolve-response @antonkarsten
+/types/contextjs @kernhanda
+/types/continuation-local-storage @rath, @heycalmdown, @aboveyou00
+/types/convert-hrtime @BendingBender
+/types/convert-source-map @mgroenhoff, @TeamworkGuy2
+/types/convict @Nemo157, @vesse, @elyscape
+/types/cookie @pine613
+/types/cookie-parser @BendingBender
+/types/cookie-signature @lith-light-g
+/types/cookie_js @slawiko
+/types/cookies @jkeylu
+/types/copy-paste @SrTobi
+/types/copy-text-to-clipboard @BendingBender
+/types/cordova-ionic @hendrikmaus
+/types/cordova-plugin-background-mode @Lordnoname
+/types/cordova-plugin-badge @timbru31
+/types/cordova-plugin-ble-central @gjunge
+/types/cordova-plugin-device-name @larrybahr
+/types/cordova-plugin-keyboard @danmana
+/types/cordova-plugin-ms-adal @KaiWalter
+/types/cordova-plugin-native-keyboard @lobo87
+/types/cordova-plugin-ouralabs @Justin-Credible
+/types/cordova-plugin-qrscanner @jab
+/types/cordova-plugin-spinner @Justin-Credible
+/types/cordova-plugin-statusbar @Xinkai
+/types/cordova-plugin-x-socialsharing @larrybahr
+/types/cordova_app_version_plugin @larrybahr
+/types/cordovarduino @hendrikmaus
+/types/core-decorators @tkqubo
+/types/cote @makepost
+/types/couchbase @maouida
+/types/countdown @gjuchault
+/types/country-list @iRoachie
+/types/country-select-js @humrochagf
+/types/cp-file @BendingBender
+/types/cpy @mhegazy, @BendingBender
+/types/cradle @panuhorsmalahti
+/types/crc @YuJianrong
+/types/create-error @tkrotoff
+/types/createjs @evilangelist, @gyohk
+/types/createjs-lib @evilangelist, @gyohk
+/types/credential @phuvo
+/types/credit-card-type @LKay
+/types/cron @horiuchi
+/types/cropperjs @stepancar
+/types/croppie @connor4312
+/types/crossfilter @schmuli, @iebaker
+/types/crossroads @diullei
+/types/cryptiles @awendland
+/types/cryptojs @giabao
+/types/cson @stpettersens
+/types/csprng @winksaville
+/types/csrf @markis
+/types/css @ilich
+/types/css-font-loading-module @slikts
+/types/css-modules @NeekSandhu
+/types/cssbeautify @rictic
+/types/csv-parse @davidm77, @obi-jan-kenobi
+/types/csv-stringify @rogierschouten, @arjenvanderende
+/types/csvtojson @EricByers, @wcarson
+/types/cucumber/v1 @abraaoalves, @jan-molak, @isoung, @BendingBender
+/types/cucumber @abraaoalves, @jan-molak, @isoung, @BendingBender
+/types/currency-formatter @mhegazy
+/types/custom-error-generator @thmiceli
+/types/cwise @taoqf
+/types/cwise-compiler @taoqf
+/types/cwise-parser @taoqf
+/types/cybozulabs-md5 @pine613
+/types/cypress @ghengeveld, @mikewoudenberg
+/types/d3/v3 @gustavderdrache, @borisyankov
+/types/d3 @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-array @gustavderdrache, @borisyankov, @tomwanzek
+/types/d3-axis @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-box @lk-chen
+/types/d3-brush @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-chord @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-collection @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-color @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-contour @tomwanzek, @Ledragon
+/types/d3-dispatch @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-drag @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-dsv @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-ease @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-force @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-format @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-geo @Ledragon, @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-hexbin @tomwanzek
+/types/d3-hierarchy @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-hsv @arrayjam
+/types/d3-interpolate @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-path @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-polygon @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-quadtree @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-queue @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-random @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-request @Ledragon, @gustavderdrache, @borisyankov, @tomwanzek
+/types/d3-sankey @tomwanzek, @gustavderdrache
+/types/d3-scale @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-scale-chromatic @Ledragon, @gustavderdrache, @borisyankov
+/types/d3-selection @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-selection-multi @gustavderdrache, @borisyankov
+/types/d3-shape @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-time @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-time-format @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-timer @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-tip @brspnnggrt
+/types/d3-transition @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-voronoi @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3-zoom @tomwanzek, @gustavderdrache, @borisyankov
+/types/d3.cloud.layout @hansrwindhoff
+/types/d3.slider @lk-chen
+/types/d3kit @morphatic
+/types/d3pie @mc-petry
+/types/dagre @qinfchen
+/types/dagre-d3 @markwongsk
+/types/dargs @BendingBender
+/types/dat-gui @gyohk, @sonic3d, @rroylance
+/types/data-driven @mrhen
+/types/datadog-metrics @pushplay
+/types/datatables.net @omidkrad
+/types/datatables.net-buttons @SammyG4Free, @jimhartford
+/types/datatables.net-fixedheader @szechyjs
+/types/datatables.net-rowreorder @baywet
+/types/datatables.net-select @szechyjs
+/types/date.format.js @balrob
+/types/dateformat @aicest
+/types/db-migrate-base @nickiannone
+/types/db.js @cgwrench
+/types/dc @hansrwindhoff, @mtraynham
+/types/deasync @Sicilica
+/types/debessmann @vkorehov
+/types/debounce @denis-sokolov
+/types/debug @swook, @galtalmor, @zamb3zi
+/types/decamelize @samverschueren
+/types/decay @enaeseth
+/types/decorum @dflor003
+/types/dedent @douglasduteil
+/types/deep-assign @souldreamer
+/types/deep-equal @remojansen
+/types/deep-extend @rhysd
+/types/deep-freeze @Bartvds, @aluanhaddad
+/types/deep-freeze-strict @mhegazy
+/types/deepmerge @marvinscharle
+/types/define-lazy-prop @BendingBender
+/types/defined @BendingBender
+/types/del/v2 @AyaMorisawa
+/types/del @AyaMorisawa, @BendingBender
+/types/delaunator @DenisCarriere
+/types/delay @BendingBender
+/types/deoxxa-content-type @pine613
+/types/deployjava @cyrilschumacher
+/types/detect-browser @rogierschouten
+/types/detect-hover @thomastilkema
+/types/detect-indent/v0 @Bartvds
+/types/detect-indent @Bartvds, @BendingBender
+/types/detect-it @thomastilkema
+/types/detect-newline @BendingBender
+/types/detect-passive-events @thomastilkema
+/types/detect-pointer @thomastilkema
+/types/detect-port @lith-light-g
+/types/detect-touch-events @thomastilkema
+/types/df-visible @Litee
+/types/di-lite @dcrusader
+/types/dir-resolve @andy-ms
+/types/discontinuous-range @OiCMudkips
+/types/disposable-email-domains @geoffreak
+/types/doccookies @jonegerton
+/types/dockerode @seikho, @nlaplante, @isac322
+/types/doctrine @rictic
+/types/documentdb @NoelAbrahams, @brettferdosi, @ctstone, @yifanwu
+/types/documentdb-server @lith-light-g
+/types/dojo @vansimke
+/types/dom-inputevent @diagramatics
+/types/dom4 @adidahiya, @giladgray
+/types/domo @Steve-Fenton
+/types/dompurify @bazuzi
+/types/domready @dotnetnerd
+/types/dookie @swanest
+/types/dot @ZombieHunter
+/types/dot-object @nkovacic
+/types/dot-prop/v2 @samverschueren
+/types/dot-prop @samverschueren, @BendingBender
+/types/dotdotdot @milanjaros
+/types/dotenv/v2 @borekb, @enaeseth
+/types/dotenv @borekb, @enaeseth
+/types/dotenv-safe @krenor
+/types/doublearray @mzsm
+/types/doubleclick-gpt @johngeorgewright
+/types/downloadjs @cwmoo740
+/types/draft-js @dmitryrogozhny, @eelco, @ghotiphud, @schwers, @michael-yx-wu, @willisplummer
+/types/dragster @zskovacs
+/types/dropboxjs @Steve-Fenton, @xperiments
+/types/dropzone/v4 @nvivo, @outring, @renuo, @Hikariii
+/types/dropzone @nvivo, @outring, @renuo, @Hikariii, @tedbcsgpro
+/types/duplexer3 @BendingBender
+/types/durandal @BlueSpire
+/types/dw-bxslider-4 @namerci
+/types/dymo-label-framework @thijskuipers
+/types/easeljs @evilangelist
+/types/easy-table @nikeee
+/types/easystarjs @borundin
+/types/ebongarde-root @Ebongarde
+/types/echarts @xieisabug, @AntiMoron
+/types/ecurve @mhegazy
+/types/ejs-locals @jt000
+/types/ejson @shantanubhadoria
+/types/elasticsearch @CasperSkydt, @bfsmith, @ddunkin, @pushplay, @mlamp, @ahmadferdous
+/types/electron-config @mrfunkycold, @unindented
+/types/electron-debug @unindented
+/types/electron-devtools-installer @gamesmaxed
+/types/electron-json-storage @stpettersens
+/types/electron-notifications @djpereira
+/types/electron-notify @djpereira
+/types/electron-packager @cortopy
+/types/electron-settings/v2 @leonard-thieu
+/types/electron-settings @icopp
+/types/electron-store @unindented
+/types/electron-window-state @rhysd
+/types/element-ready @BendingBender
+/types/element-resize-event @rogierschouten, @plgregoire
+/types/elm @thSoft
+/types/email-addresses @johngrimsey
+/types/email-templates @cyrilschumacher, @gurisko
+/types/email-validator @paullessing
+/types/ember/v1 @jedmao
+/types/ember @jedmao, @bttf
+/types/empower @vvakame
+/types/emscripten @zakki, @periklis
+/types/enhanced-resolve @e-cloud, @onigoetz
+/types/ent @rogierschouten
+/types/entities @aliceklipper
+/types/env-to-object @MugeSo
+/types/envify @tkQubo
+/types/enzyme @MarianPalkus, @NoHomey, @jwbay, @huhuanming, @MartynasZilinskas, @thovden
+/types/enzyme-to-json @joscha
+/types/eonasdan-bootstrap-datetimepicker @ToastHawaii
+/types/epiceditor @borisyankov
+/types/epub @julien-c
+/types/eq.js @stephenlautier
+/types/es6-error @LKay
+/types/es6-promise @vvakame
+/types/es6-weak-map @pine
+/types/escape-latex @olsio
+/types/escodegen @simondel
+/types/esprima @teppeis, @RReverser
+/types/esprima-walk @tswaters
+/types/esri-leaflet @strajuser
+/types/esri-leaflet-geocoder @BendingBender
+/types/estraverse @sanex3339
+/types/estree @RReverser
+/types/etag @BendingBender
+/types/ethjs-signer @doppio
+/types/eureka-js-client @Schnillz
+/types/evaporate @chrisrhoden
+/types/event-loop-lag @rogierschouten
+/types/event-to-promise @flying-sheep
+/types/exceljs @rogierschouten, @alitaheri
+/types/execa @douglasduteil, @BendingBender
+/types/exit @Bartvds
+/types/exit-hook @BendingBender
+/types/exorcist @TeamworkGuy2
+/types/expect.js @teppeis
+/types/expectations @vvakame
+/types/expr-eval @connor4312
+/types/express-domain-middleware @hookclaw
+/types/express-enforces-ssl @kevinstubbs
+/types/express-fileupload @Naktibalda
+/types/express-formidable @tdolsen
+/types/express-graphql @isman-usoh, @nitintutlani
+/types/express-handlebars @stpettersens, @yhaskell
+/types/express-jwt @kacepe, @Sl1MBoy
+/types/express-less @xieyubo
+/types/express-mung @cyrilschumacher
+/types/express-mysql-session @Akim95
+/types/express-partials @jt000
+/types/express-rate-limit @cyrilschumacher
+/types/express-route-fs @kripod
+/types/express-serve-static-core @19majkel94, @kacepe
+/types/extend @reppners
+/types/extended-listbox @code-chris
+/types/extract-stack @BendingBender
+/types/extract-text-webpack-plugin @flying-sheep, @katyo
+/types/extract-zip @mizunashi-mana
+/types/eyes @brynbellomy
+/types/f1 @neolwc
+/types/faker/v3 @Kuniwak
+/types/faker @Kuniwak
+/types/farbtastic @EnableSoftware
+/types/fast-diff @djrenren
+/types/fast-levenshtein @mizunashi-mana
+/types/fast-stats @rogierschouten
+/types/fastclick @shinnn
+/types/favico.js @drowse314-dev-ymat
+/types/fb @JoshStrobl
+/types/fbemitter @kmxz
+/types/featherlight @xStrom
+/types/fecha @9y5
+/types/fetch-jsonp @tkrotoff
+/types/fetch-mock @asvetliakov, @tamird, @merrywhether, @chrissinclair
+/types/fetch.io @newraina
+/types/ffi @loyd
+/types/ffmpeg-static @iamstevetran
+/types/ffprobe-static @iamstevetran
+/types/fibers @soywiz
+/types/figures @BendingBender
+/types/file-exists @BendingBender
+/types/file-saver @cyrilschumacher, @DaIgeb
+/types/filenamify @rokt33r
+/types/filesize @GiedriusGrabauskas
+/types/fill-pdf @westy92
+/types/finalhandler @chrootsu
+/types/finch @DavidSichau
+/types/find-up @BendingBender
+/types/findup-sync @Bartvds, @ngbrown
+/types/fingerprintjs @zaneli
+/types/fingerprintjs2 @curtstate
+/types/firebase-token-generator @dotdotcommadot
+/types/fixed-data-table @pepaar, @stephenjelfs
+/types/flat @chrootsu
+/types/flatpickr/v2 @UnwrittenFun
+/types/flatpickr @UnwrittenFun, @rowellx68, @wagich
+/types/flexslider @diullei
+/types/flightplan @borislavjivkov
+/types/flipsnap @kubosho, @gsino, @mayuki
+/types/flot @burlandm, @Anticom
+/types/flowjs @ryan10132
+/types/fluent-ffmpeg @DingWeizhe
+/types/flux-standard-action @tkqubo
+/types/fluxxor @mrk21
+/types/fm-websync @markusmauch
+/types/fontfaceobserver @RandScullard
+/types/fontoxml @rolandzwaga
+/types/forever-monitor @shuntksh
+/types/form-data @soywiz, @leonyu, @BendingBender
+/types/form-serializer @flqw
+/types/formidable @Nemo157
+/types/framebus @kbukum
+/types/freeport @atd-schubert
+/types/from @Bartvds
+/types/from2 @BendingBender
+/types/fromjs @glenndierckx
+/types/fromnow @marinewater
+/types/fs-ext @OguzhanE
+/types/fs-extra @alan-agius4, @midknight41, @shiftkey
+/types/fs-extra-promise @midknight41, @jasonswearingen, @HiromiShikata
+/types/fs-extra-promise-es6 @midknight41, @jasonswearingen, @geoffreak, @HiromiShikata
+/types/fs-mock @rogierschouten
+/types/fs-promise @tarruda
+/types/fsevents @BendingBender
+/types/ftdomdelegate @dotnetnerd
+/types/ftp @rogierschouten
+/types/ftpd @rogierschouten
+/types/fullcalendar/v1 @nestalk, @hasellcamargo
+/types/fullcalendar @nestalk, @hasellcamargo, @panic175
+/types/fusioncharts @rohitkr, @shivarajkv
+/types/fuzzaldrin @mhegazy
+/types/fuzzaldrin-plus @jeancroy, @jkillian
+/types/fuzzyset @lgrignon
+/types/fxn @charrondev
+/types/gae.channel.api @vvakame
+/types/gapi @sgtfrankieboy
+/types/gapi.analytics @gatsbimantico
+/types/gapi.auth2 @flawless2011
+/types/gapi.calendar @tkrotoff
+/types/gapi.drive @baxtersa
+/types/gapi.pagespeedonline @sgtfrankieboy
+/types/gapi.people @tkrotoff
+/types/gapi.plus @tkrotoff
+/types/gapi.translate @sgtfrankieboy
+/types/gapi.urlshortener @sgtfrankieboy
+/types/gapi.youtube @sgtfrankieboy
+/types/gapi.youtubeanalytics @sgtfrankieboy
+/types/gaussian @scttcper
+/types/generic-functions @stpettersens
+/types/generic-pool @jerray
+/types/gently @bonnici
+/types/geodesy @DenisCarriere, @HandyG52
+/types/geojson2osm @DenisCarriere
+/types/geokdbush @DenisCarriere
+/types/geolib @vvenegasv, @dotnetpart
+/types/geometry-dom @nakakura
+/types/geopattern @Gaelan
+/types/get-node-dimensions @vincekovacs
+/types/get-stdin @DanielRosenwasser
+/types/get-stream @douglasduteil, @BendingBender
+/types/getos @BendingBender
+/types/gettext.js @jucrouzet
+/types/gijgo @atatanasov
+/types/giraffe @darthapo
+/types/git @vvakame
+/types/git-config @stpettersens
+/types/gl-matrix @mattijskneppers, @tatchx
+/types/gldatepicker @qcz
+/types/glob-base @alan-agius4
+/types/glob-stream @Bartvds
+/types/global-tunnel-ng @BendingBender
+/types/globalize-compiler @iclanton
+/types/globby @douglasduteil
+/types/globule @durad
+/types/gm @ChaosinaCan
+/types/go @NorthwoodsSoftware
+/types/google-apps-script @motemen
+/types/google-cloud__storage @blove, @nbperry
+/types/google-images @dolanmiu
+/types/google-libphonenumber @leonyu
+/types/google-map-react @honzabrecka
+/types/google-maps @DeividasBakanas, @GiedriusGrabauskas
+/types/google.feeds @RodneyJT
+/types/google.fonts @danmarshall
+/types/google.picker @grapswiz
+/types/google.visualization @danludwig, @gmoore-sjcorg, @danmana, @mlcheng, @IvanBisultanov
+/types/googlemaps @cgwrench, @nertzy, @xaolas, @mrmcnerd, @martincostello
+/types/googlemaps.infobubble @Dashue
+/types/got @BendingBender
+/types/graceful-fs @Bartvds
+/types/graham_scan @hberntsen
+/types/graphene-pk11 @microshine
+/types/graphql @TonyPythoneer, @calebmer, @intellix, @firede, @kepennar, @freiksenet
+/types/graphql-date @enaeseth
+/types/graphql-relay @arvitaly, @nitintutlani, @Grelinfo
+/types/graphql-type-json @schfkt
+/types/gravatar @denis-sokolov
+/types/greasemonkey @kotas
+/types/grecaptcha @DethAriel
+/types/gregorian-calendar @cwalv
+/types/griddle-react @hodavidhara
+/types/gridstack @Sl1MBoy
+/types/gsap @codebelt, @ProbablePrime
+/types/gulp @GiedriusGrabauskas
+/types/gulp-angular-templatecache @amanmahajan7
+/types/gulp-babel @AyaMorisawa
+/types/gulp-batch @alvarollmenezes, @vizeke
+/types/gulp-cache @aravindarun
+/types/gulp-cached @tomc974
+/types/gulp-changed @tomc974
+/types/gulp-cheerio @tkQubo
+/types/gulp-coffeeify @tkQubo
+/types/gulp-coffeelint @tkQubo
+/types/gulp-concat @k-kagurazaka
+/types/gulp-connect @andrewiggins
+/types/gulp-copy @aravindarun
+/types/gulp-csso @tkrotoff
+/types/gulp-debug @tkrotoff
+/types/gulp-diff @ikatyang
+/types/gulp-dtsm @AyaMorisawa
+/types/gulp-espower @tkQubo
+/types/gulp-file-include @DanielRosenwasser
+/types/gulp-filter @tkrotoff
+/types/gulp-flatten @k-kagurazaka
+/types/gulp-gzip @tkQubo
+/types/gulp-help @tkQubo
+/types/gulp-help-doc @Mikhus
+/types/gulp-html-replace @peterjuras
+/types/gulp-htmlmin @tkrotoff
+/types/gulp-inject @k-kagurazaka
+/types/gulp-insert @shantmarouti
+/types/gulp-install @peterjuras
+/types/gulp-jade @berwyn
+/types/gulp-jasmine-browser @tkrotoff
+/types/gulp-json-editor @peterjuras
+/types/gulp-jspm @peterjuras
+/types/gulp-less @k-kagurazaka
+/types/gulp-minify-css @k-kagurazaka
+/types/gulp-minify-html @tkrotoff
+/types/gulp-modernizr @remisery
+/types/gulp-newer @tomc974
+/types/gulp-ng-annotate @tkQubo
+/types/gulp-nodemon @tkQubo
+/types/gulp-protractor @tkrotoff
+/types/gulp-pug @remisery
+/types/gulp-remember @tomc974
+/types/gulp-rev @tkrotoff
+/types/gulp-rev-replace @tkrotoff
+/types/gulp-ruby-sass @agnislav
+/types/gulp-shell @tkqubo
+/types/gulp-size @tkrotoff, @remisery
+/types/gulp-strip-debug @peterjuras
+/types/gulp-svg-sprite @tkqubo
+/types/gulp-tsd @k-kagurazaka
+/types/gulp-uglify @leonard-thieu
+/types/gulp-useref @tkrotoff
+/types/gulp-util @jedmao
+/types/gulp-watch @tkrotoff
+/types/gzip-size @plantain-00
+/types/h2o2 @AJamesPhillips
+/types/halfred @dherges
+/types/halogen @steller
+/types/hammerjs @codler
+/types/handsontable @panesofglass, @astegmaier
+/types/hapi @AJamesPhillips
+/types/hapi-auth-basic @AJamesPhillips
+/types/har-format @micmro
+/types/hard-rejection @BendingBender
+/types/has-ansi @BendingBender
+/types/hash-file @HiromiShikata
+/types/hasha @BendgingBender
+/types/hashmap @outring
+/types/he @sedwards2009
+/types/heap @ryan10132
+/types/heatmap.js @lookuptable
+/types/hellojs @PavelPZ, @vuorinem
+/types/helmet @cyrilschumacher, @EvanHahn, @bluehatbrit
+/types/heredatalens @denyo
+/types/heremaps @denyo
+/types/highcharts @AlbertOzimek, @hanssens
+/types/highcharts-ng @scatcher
+/types/highland @iwllyu
+/types/highlight.js @sourrust
+/types/hiredis @titan
+/types/history/v2 @sergey-buturlakin, @ngbrown
+/types/history/v3 @sergey-buturlakin, @ngbrown, @LKay
+/types/history @sergey-buturlakin, @ngbrown, @rokoroku
+/types/hjson @crunchie84
+/types/hls.js @jgainfort
+/types/hoek @prashaantt
+/types/homeworks @KennethanCeyer
+/types/hopscotch @pimterry
+/types/hpp @kryops
+/types/html-minifier @tkrotoff
+/types/html-pdf @westy92
+/types/html-webpack-plugin @deevus, @bumbleblym
+/types/html-webpack-template @bumbleblym
+/types/htmltojsx @basarat
+/types/http-assert @jkeylu
+/types/http-aws-es @marcogrcr
+/types/http-codes @mhegazy
+/types/http-errors @tkrotoff
+/types/http-status-codes @JoshMcCullough
+/types/http-string-parser @pine613
+/types/httperr @yortus
+/types/hubot @dirk
+/types/hubspot-pace @borislavjivkov
+/types/humane @jmvrbanac
+/types/humanize-plus @DenisCarriere
+/types/humps @nikeee
+/types/hyco-ws @mrcabellom
+/types/hyperscript @spacejack
+/types/i18n @SomaticIT, @FindQ
+/types/i18next/v2 @mxl, @deerawan, @GiedriusGrabauskas
+/types/i18next @mxl, @deerawan, @GiedriusGrabauskas
+/types/i18next-browser-languagedetector/v0 @cyrilschumacher, @GiedriusGrabauskas
+/types/i18next-browser-languagedetector @cyrilschumacher, @GiedriusGrabauskas
+/types/i18next-express-middleware @cyrilschumacher
+/types/i18next-node-fs-backend @cyrilschumacher
+/types/i18next-sprintf-postprocessor @cyrilschumacher
+/types/i18next-xhr-backend @jamuhl, @GiedriusGrabauskas
+/types/i2c-bus @101100
+/types/ibm-mobilefirst @nacho4d
+/types/ibm_db @agov
+/types/icepick @ngbrown, @tobico
+/types/icheck @qcz
+/types/iconv-lite @poelstra
+/types/ids @3fd
+/types/iframe-resizer @arminbaljic
+/types/ignite-ui @IgniteUI
+/types/imagemagick @soywiz
+/types/imagemagick-native @horiuchi
+/types/imagesloaded @coldacid, @apexskier
+/types/immutability-helper @seansfkelley
+/types/in-range @DanielRosenwasser
+/types/incremental-dom @basarat, @lanthaler, @vvakame
+/types/indent-string @mhegazy
+/types/inert @AJamesPhillips
+/types/inflected @dsci
+/types/inflection @shiwano
+/types/inherits @chrootsu
+/types/ini @marcinporebski
+/types/iniparser @chrootsu
+/types/inline-css @philipisapain
+/types/inline-style-prefixer @ahz, @dpetrezselyova
+/types/inquirer @tkQubo, @ppathan
+/types/insert-module-globals @leonard-thieu
+/types/integer @Morfent
+/types/interact.js @dduugg, @adidahiya, @thasner
+/types/internal-ip @BendingBender
+/types/intl-messageformat @mhegazy
+/types/intl-tel-input @leonard-thieu
+/types/into-stream @BendingBender
+/types/ion.rangeslider/v1 @dduugg
+/types/ion.rangeslider @sixinli
+/types/ip @codeanimal
+/types/ip-regex @unindented
+/types/irc @phillips1012
+/types/is @cabralRodrigo
+/types/is-absolute-url @mhegazy
+/types/is-alphanumerical @vutran
+/types/is-archive @mhegazy
+/types/is-array @pine
+/types/is-binary-path @DanielRosenwasser
+/types/is-compressed @mhegazy
+/types/is-finite @mhegazy
+/types/is-path-cwd @DanielRosenwasser
+/types/is-path-in-cwd @mhegazy
+/types/is-promise @DanielRosenwasser
+/types/is-relative-url @mhegazy
+/types/is-root @mhegazy
+/types/is-root-path @mhegazy
+/types/is-stream @me
+/types/is-svg @BendingBender
+/types/is-text-path @mhegazy
+/types/is-url @RyotaMurohoshi
+/types/is-url-superb @kryops
+/types/is-windows @mizunashi-mana
+/types/iso-3166-2 @sicilica
+/types/isomorphic-fetch @toddlucas
+/types/isotope-layout @avidenic
+/types/istanbul @tkrotoff
+/types/istanbul-middleware @hookclaw
+/types/ityped @DanielRosenwasser
+/types/ix.js @Igorbek
+/types/jade @panuhorsmalahti
+/types/jalaali-js @alitaheri
+/types/japanese-holidays @syamatoo
+/types/jasmine @theodorejb, @gmoothart, @lukas-zech-software
+/types/jasmine-ajax @lgrignon
+/types/jasmine-data_driven_tests @AnthonyMacKinnon
+/types/jasmine-enzyme @bolatovumar
+/types/jasmine-es6-promise-matchers @stephenlautier
+/types/jasmine-expect @GeneralCss
+/types/jasmine-given @shairez
+/types/jasmine-matchers @Bartvds
+/types/jasmine-promise-matchers @matthewjh
+/types/jasmine_dom_matchers @devoto13
+/types/jasminewd2 @sjelin
+/types/java @jimlloyd, @hrl7
+/types/java-applet @cyrilschumacher
+/types/javascript-bignum @sandersn
+/types/javascript-obfuscator @sanex3339
+/types/javascript-state-machine @mdocter, @MrBigDog2U, @samael65535, @taoqf
+/types/jbinary @tbureck
+/types/jcanvas @rogierschouten
+/types/jdataview @RReverser
+/types/jest/v16 @NoHomey, @jwbay
+/types/jest @NoHomey, @jwbay, @asvetliakov, @alexjoverm, @epicallan, @ikatyang
+/types/jest-matchers @joscha
+/types/jfs @tlaziuk
+/types/jimp @Jack-Works
+/types/jjv @Nemo157
+/types/jjve @Nemo157
+/types/jmespath @pushplay
+/types/jodata @cgwrench
+/types/johnny-five @nakakura
+/types/joi/v6 @Bartvds, @laurence-myers, @cglantschnig, @DavidBR-SW
+/types/joi @Bartvds, @laurence-myers, @cglantschnig, @DavidBR-SW, @GaelMagnan, @ralekna, @schfkt
+/types/joigoose @boothwhack
+/types/jointjs @DenEwout, @CaselIT, @ChrisMoran
+/types/jpm @github-account-because-they-want-it
+/types/jpush-react-native @huhuanming
+/types/jqrangeslider @qcz
+/types/jquery/v1 @choffmeister, @Steve-Fenton, @Diullei, @tasoili, @jasons-novaleaf, @seanski, @Guuz, @ksummerlin, @basarat, @nwolverson, @derekcicerone, @AndrewGaspar, @seikichi, @benjaminjackman, @s093294, @JoshStrobl, @DickvdBrink, @King2500, @leonard-thieu
+/types/jquery/v2 @choffmeister, @Steve-Fenton, @Diullei, @tasoili, @jasons-novaleaf, @seanski, @Guuz, @ksummerlin, @basarat, @nwolverson, @derekcicerone, @AndrewGaspar, @seikichi, @benjaminjackman, @s093294, @JoshStrobl, @DickvdBrink, @King2500, @leonard-thieu
+/types/jquery @leonard-thieu, @choffmeister, @Steve-Fenton, @Diullei, @tasoili, @jasons-novaleaf, @seanski, @Guuz, @ksummerlin, @basarat, @nwolverson, @derekcicerone, @AndrewGaspar, @seikichi, @benjaminjackman, @s093294, @JoshStrobl, @DickvdBrink, @King2500
+/types/jquery-ajax-chain @humana-fragilitas
+/types/jquery-alertable @stever
+/types/jquery-backstretch @dkulyk
+/types/jquery-editable-select @baywet
+/types/jquery-fullscreen @bgrieder
+/types/jquery-galleria @rimig
+/types/jquery-handsontable @intelorca
+/types/jquery-jsonrpcclient @Ty3uK
+/types/jquery-mask-plugin @avidenic
+/types/jquery-sortable @Seltzer
+/types/jquery-steps @nickwph
+/types/jquery-timeentry @marknadig
+/types/jquery-truncate-html @abraaoalves
+/types/jquery-urlparam @stpettersens
+/types/jquery-validation-unobtrusive @EnableSoftware
+/types/jquery.address @martinduparc, @mardaneus86
+/types/jquery.are-you-sure @jonegerton
+/types/jquery.autosize @kingdango
+/types/jquery.bbq @sunetos
+/types/jquery.bootstrap.wizard @niemyjski
+/types/jquery.clientsidelogging @diullei
+/types/jquery.colorbox @gjunge
+/types/jquery.customselect @adamcoulombe
+/types/jquery.dropotron @cyrilschumacher
+/types/jquery.dynatree @fdecampredon
+/types/jquery.fancytree @alphaleonis, @abedi-ir
+/types/jquery.flagstrap @felipedgarcia
+/types/jquery.fullscreen @piraveen
+/types/jquery.gridster @jbaldwin
+/types/jquery.growl @yeganemehr
+/types/jquery.jsignature @pjmagee
+/types/jquery.leanmodal @FinelySliced
+/types/jquery.notify @evil-shrike
+/types/jquery.notifybar @zaneli
+/types/jquery.noty @thelfensdrfer
+/types/jquery.pjax @lijunle
+/types/jquery.placeholder @majorsilence, @EnableSoftware
+/types/jquery.pnotify @DavidSichau, @FUNExtreme
+/types/jquery.postmessage @lijunle
+/types/jquery.prettyphoto @pgaske
+/types/jquery.qrcode @danmana
+/types/jquery.rateit @gjunge
+/types/jquery.rowgrid @vinayak-garg
+/types/jquery.scrollto @nestalk
+/types/jquery.simplemodal @ForNeVeR
+/types/jquery.slimscroll @Promact
+/types/jquery.soap @tigerxy
+/types/jquery.sortelements @tbureck
+/types/jquery.tagsmanager @vbortone
+/types/jquery.tile @zaneli
+/types/jquery.timepicker @anwarjaved
+/types/jquery.tooltipster @leonard-thieu
+/types/jquery.transit @MrBigDog2U
+/types/jquery.ui.datetimepicker @dougajmcdonald
+/types/jquery.ui.layout @Steve-Fenton, @drarmstr
+/types/jquery.validation @fdecampredon, @johnnyreilly, @avidenic
+/types/jquery.watermark @anwarjaved
+/types/jqueryui @johnnyreilly
+/types/js-base64 @DenisCarriere
+/types/js-clipper @omni360
+/types/js-combinatorics @outring
+/types/js-cookie @theodorejb
+/types/js-data/v1 @reppners
+/types/js-data @reppners
+/types/js-data-angular @reppners
+/types/js-data-http @reppners
+/types/js-git @Bartvds
+/types/js-md5 @mwmccarthy
+/types/js-quantities @wrummler
+/types/js-schema @marcinporebski, @roblabat
+/types/js-search @guoyunhe
+/types/js-to-java @skyitachi
+/types/js-url @pine613
+/types/js-yaml @Bartvds, @sclausen
+/types/jsbn @Evgenus
+/types/jsdeferred @minodisk
+/types/jsdom @leonard-thieu
+/types/jsend @CaselIT
+/types/jsesc @Bartvds
+/types/jsforce @dolanmiu, @netes
+/types/jshamcrest @dharkness
+/types/jsmockito @shiver-me-timbers
+/types/jsnox @DovydasNavickas
+/types/json-merge-patch @senyaarseniy
+/types/json-pointer @Bartvds
+/types/json-rpc-ws @npenin
+/types/json-schema @bcherny
+/types/json2md @MartynasZilinskas
+/types/jsoneditor @alejo90
+/types/jsonminify @no23reason
+/types/jsonnet @hookclaw
+/types/jsonp @surenkov
+/types/jsonpath @horiuchi, @ikatyang
+/types/jsonrpc-serializer @Akim95
+/types/jsonstream @Bartvds
+/types/jsonwebtoken @SomaticIT, @danielheim
+/types/jspdf @amberjs
+/types/jsrender @zakki
+/types/jssha @randombk, @SrTobi
+/types/jstree @adaskothebeast
+/types/jsts @StephaneAlie
+/types/jsuite @darrenhillconsulting
+/types/jsurl @agorshkov23
+/types/jszip @mzeiher
+/types/jug @yevt
+/types/jui @easylogic
+/types/jui-core @easylogic
+/types/jui-grid @easylogic
+/types/jweixin @taoqf
+/types/jwt-client @timoteoponce
+/types/jwt-decode @GiedriusGrabauskas, @madsmadsen
+/types/jwt-simple @kenfdev, @GaelMagnan
+/types/kafka-node @bkim54, @sfrooster, @amiram
+/types/karma @tkrotoff
+/types/karma-chai @JayAndCatchFire
+/types/karma-chai-sinon @vasek17
+/types/karma-coverage @tkrotoff
+/types/karma-jasmine @michelsalib
+/types/katex @mrand01
+/types/kcors @Xstoudi, @izayoiko
+/types/kdbush @DenisCarriere
+/types/kefir @AyaMorisawa
+/types/keyboardjs @piranha771
+/types/keycloak-js @eppsilon
+/types/keygrip @jkeylu
+/types/keymaster @nitram509
+/types/keymirror @jfahrenkrug
+/types/keypress.js @rcchen
+/types/klaw @mceachen
+/types/klaw-sync @shiftkey
+/types/knex @tkQubo, @baronfel
+/types/knockout @EnableSoftware
+/types/knockout-amd-helpers @DavidSichau
+/types/knockout-secure-binding @pine613
+/types/knockout-transformations @johnnyreilly, @Nemo157
+/types/knockout.mapper @BMeyerKC
+/types/knockout.projections @johnnyreilly
+/types/knockout.punches @johnnyreilly
+/types/knockout.rx @Igorbek
+/types/knockout.validation @danludwig
+/types/knockout.viewmodel @oising
+/types/knockstrap @adaskothebeast
+/types/ko.plus @conficient
+/types/koa @DavidCai1993, @jkeylu
+/types/koa-cache-control @pe8ter
+/types/koa-compose @jkeylu
+/types/koa-hbs @mudkipme
+/types/koa-helmet @me
+/types/koa-json-error @mudkipme
+/types/koa-logger @geoffreak
+/types/koa-morgan @vesse
+/types/koa-mount @amirsaber
+/types/koa-passport @horiuchi
+/types/koa-pug @Xstoudi
+/types/koa-redis @nsimmons
+/types/koa-route @migstopheles
+/types/koa-send @pe8ter
+/types/koa-session-minimal @longztian
+/types/koa-websocket @me
+/types/kolite @borisyankov
+/types/konami.js @mareek
+/types/kramed @tonicblue
+/types/kss @giladgray
+/types/kue @pc-jedi
+/types/kuromoji @mzsm
+/types/lab @prashaantt
+/types/ladda @leemicw
+/types/lambda-phi @elitechance
+/types/later @jasond-s
+/types/latinize @GiedriusGrabauskas
+/types/launchpad @rictic
+/types/lazy.js @Bartvds
+/types/lazypipe @tomc974
+/types/leadfoot @theintern
+/types/leaflet/v0 @rgripper
+/types/leaflet @alejo90
+/types/leaflet-areaselect @awallat
+/types/leaflet-curve @onikiienko
+/types/leaflet-draw @matt-guest, @reblace
+/types/leaflet-editable @dalie
+/types/leaflet-fullscreen @DenisCarriere
+/types/leaflet-imageoverlay-rotated @tkleinke
+/types/leaflet-label @Nemo157
+/types/leaflet-polylinedecorator @soucekv
+/types/leaflet-providers @BendingBender
+/types/leaflet.awesome-markers/v0 @Odrin, @sebek64
+/types/leaflet.awesome-markers @sebek64
+/types/leaflet.fullscreen @wcomartin
+/types/leaflet.gridlayer.googlemutant @ernest-rhinozeros
+/types/leaflet.locatecontrol @DenisCarriere
+/types/leaflet.markercluster @rimig
+/types/leaflet.markercluster.layersupport @AsamK
+/types/leaflet.pm @tkleinke
+/types/less @thasner, @pranaygp
+/types/leveldown @tarruda
+/types/levelup @blittle, @tarruda
+/types/levenshtein @geoffreak
+/types/libpq @Lodin
+/types/libxmljs @fdecampredon
+/types/libxslt @alejo90
+/types/license-checker @rogierschouten
+/types/lime-js @arthur-xavier
+/types/line-by-line @etomsen
+/types/line-reader @stpettersens
+/types/linkify-it @praxxis
+/types/linq4js @morrisjdev
+/types/lls @borislavjivkov
+/types/load-json-file @SamVerschueren
+/types/loader-utils @Perlmint
+/types/lobibox @itboy87
+/types/localforage-cordovasqlitedriver @thgreasi
+/types/localized-countries @coderslagoon
+/types/locate-path @me
+/types/lockfile/v0 @Bartvds
+/types/lockfile @Bartvds, @BendingBender
+/types/lockr @droritos
+/types/locutus @hookclaw
+/types/lodash/v3 @bczengel, @chrootsu
+/types/lodash @bczengel, @chrootsu, @stepancar, @ericanderson, @aj-r, @ailrun
+/types/lodash-es @stephenlautier
+/types/lodash-webpack-plugin @bumbleblym
+/types/lodash.add @bczengel, @chrootsu, @stepancar
+/types/lodash.after @bczengel, @chrootsu, @stepancar
+/types/lodash.ary @bczengel, @chrootsu, @stepancar
+/types/lodash.assign @bczengel, @chrootsu, @stepancar
+/types/lodash.assignin @bczengel, @chrootsu, @stepancar
+/types/lodash.assigninwith @bczengel, @chrootsu, @stepancar
+/types/lodash.assignwith @bczengel, @chrootsu, @stepancar
+/types/lodash.at @bczengel, @chrootsu, @stepancar
+/types/lodash.attempt @bczengel, @chrootsu, @stepancar
+/types/lodash.before @bczengel, @chrootsu, @stepancar
+/types/lodash.bind @bczengel, @chrootsu, @stepancar
+/types/lodash.bindall @bczengel, @chrootsu, @stepancar
+/types/lodash.bindkey @bczengel, @chrootsu, @stepancar
+/types/lodash.camelcase @bczengel, @chrootsu, @stepancar
+/types/lodash.capitalize @bczengel, @chrootsu, @stepancar
+/types/lodash.castarray @bczengel, @chrootsu, @stepancar
+/types/lodash.ceil @bczengel, @chrootsu, @stepancar
+/types/lodash.chunk @bczengel, @chrootsu, @stepancar
+/types/lodash.clamp @bczengel, @chrootsu, @stepancar
+/types/lodash.clone @bczengel, @chrootsu, @stepancar
+/types/lodash.clonedeep @bczengel, @chrootsu, @stepancar
+/types/lodash.clonedeepwith @bczengel, @chrootsu, @stepancar
+/types/lodash.clonewith @bczengel, @chrootsu, @stepancar
+/types/lodash.compact @bczengel, @chrootsu, @stepancar
+/types/lodash.concat @bczengel, @chrootsu, @stepancar
+/types/lodash.constant @bczengel, @chrootsu, @stepancar
+/types/lodash.countby @bczengel, @chrootsu, @stepancar
+/types/lodash.create @bczengel, @chrootsu, @stepancar
+/types/lodash.curry @bczengel, @chrootsu, @stepancar
+/types/lodash.curryright @bczengel, @chrootsu, @stepancar
+/types/lodash.debounce @bczengel, @chrootsu, @stepancar
+/types/lodash.deburr @bczengel, @chrootsu, @stepancar
+/types/lodash.defaults @bczengel, @chrootsu, @stepancar
+/types/lodash.defaultsdeep @bczengel, @chrootsu, @stepancar
+/types/lodash.defer @bczengel, @chrootsu, @stepancar
+/types/lodash.delay @bczengel, @chrootsu, @stepancar
+/types/lodash.difference @bczengel, @chrootsu, @stepancar
+/types/lodash.differenceby @bczengel, @chrootsu, @stepancar
+/types/lodash.differencewith @bczengel, @chrootsu, @stepancar
+/types/lodash.drop @bczengel, @chrootsu, @stepancar
+/types/lodash.dropright @bczengel, @chrootsu, @stepancar
+/types/lodash.droprightwhile @bczengel, @chrootsu, @stepancar
+/types/lodash.dropwhile @bczengel, @chrootsu, @stepancar
+/types/lodash.endswith @bczengel, @chrootsu, @stepancar
+/types/lodash.eq @bczengel, @chrootsu, @stepancar
+/types/lodash.escape @bczengel, @chrootsu, @stepancar
+/types/lodash.escaperegexp @bczengel, @chrootsu, @stepancar
+/types/lodash.every @bczengel, @chrootsu, @stepancar
+/types/lodash.fill @bczengel, @chrootsu, @stepancar
+/types/lodash.filter @bczengel, @chrootsu, @stepancar
+/types/lodash.find @bczengel, @chrootsu, @stepancar
+/types/lodash.findindex @bczengel, @chrootsu, @stepancar
+/types/lodash.findkey @bczengel, @chrootsu, @stepancar
+/types/lodash.findlast @bczengel, @chrootsu, @stepancar
+/types/lodash.findlastindex @bczengel, @chrootsu, @stepancar
+/types/lodash.findlastkey @bczengel, @chrootsu, @stepancar
+/types/lodash.first @bczengel, @chrootsu, @stepancar
+/types/lodash.flatmap @bczengel, @chrootsu, @stepancar
+/types/lodash.flatten @bczengel, @chrootsu, @stepancar
+/types/lodash.flattendeep @bczengel, @chrootsu, @stepancar
+/types/lodash.flattendepth @bczengel, @chrootsu, @stepancar
+/types/lodash.flip @bczengel, @chrootsu, @stepancar
+/types/lodash.floor @bczengel, @chrootsu, @stepancar
+/types/lodash.flow @bczengel, @chrootsu, @stepancar
+/types/lodash.flowright @bczengel, @chrootsu, @stepancar
+/types/lodash.foreach @bczengel, @chrootsu, @stepancar
+/types/lodash.foreachright @bczengel, @chrootsu, @stepancar
+/types/lodash.forin @bczengel, @chrootsu, @stepancar
+/types/lodash.forinright @bczengel, @chrootsu, @stepancar
+/types/lodash.forown @bczengel, @chrootsu, @stepancar
+/types/lodash.forownright @bczengel, @chrootsu, @stepancar
+/types/lodash.frompairs @bczengel, @chrootsu, @stepancar
+/types/lodash.functions @bczengel, @chrootsu, @stepancar
+/types/lodash.functionsin @bczengel, @chrootsu, @stepancar
+/types/lodash.get @bczengel, @chrootsu, @stepancar
+/types/lodash.groupby @bczengel, @chrootsu, @stepancar
+/types/lodash.gt @bczengel, @chrootsu, @stepancar
+/types/lodash.gte @bczengel, @chrootsu, @stepancar
+/types/lodash.has @bczengel, @chrootsu, @stepancar
+/types/lodash.hasin @bczengel, @chrootsu, @stepancar
+/types/lodash.head @bczengel, @chrootsu, @stepancar
+/types/lodash.identity @bczengel, @chrootsu, @stepancar
+/types/lodash.includes @bczengel, @chrootsu, @stepancar
+/types/lodash.indexof @bczengel, @chrootsu, @stepancar
+/types/lodash.initial @bczengel, @chrootsu, @stepancar
+/types/lodash.inrange @bczengel, @chrootsu, @stepancar
+/types/lodash.intersection @bczengel, @chrootsu, @stepancar
+/types/lodash.intersectionby @bczengel, @chrootsu, @stepancar
+/types/lodash.intersectionwith @bczengel, @chrootsu, @stepancar
+/types/lodash.invert @bczengel, @chrootsu, @stepancar
+/types/lodash.invertby @bczengel, @chrootsu, @stepancar
+/types/lodash.invoke @bczengel, @chrootsu, @stepancar
+/types/lodash.invokemap @bczengel, @chrootsu, @stepancar
+/types/lodash.isarguments @bczengel, @chrootsu, @stepancar
+/types/lodash.isarray @bczengel, @chrootsu, @stepancar
+/types/lodash.isarraybuffer @bczengel, @chrootsu, @stepancar
+/types/lodash.isarraylike @bczengel, @chrootsu, @stepancar
+/types/lodash.isarraylikeobject @bczengel, @chrootsu, @stepancar
+/types/lodash.isboolean @bczengel, @chrootsu, @stepancar
+/types/lodash.isbuffer @bczengel, @chrootsu, @stepancar
+/types/lodash.isdate @bczengel, @chrootsu, @stepancar
+/types/lodash.iselement @bczengel, @chrootsu, @stepancar
+/types/lodash.isempty @bczengel, @chrootsu, @stepancar
+/types/lodash.isequal @bczengel, @chrootsu, @stepancar
+/types/lodash.isequalwith @bczengel, @chrootsu, @stepancar
+/types/lodash.iserror @bczengel, @chrootsu, @stepancar
+/types/lodash.isfinite @bczengel, @chrootsu, @stepancar
+/types/lodash.isfunction @bczengel, @chrootsu, @stepancar
+/types/lodash.isinteger @bczengel, @chrootsu, @stepancar
+/types/lodash.islength @bczengel, @chrootsu, @stepancar
+/types/lodash.ismap @bczengel, @chrootsu, @stepancar
+/types/lodash.ismatch @bczengel, @chrootsu, @stepancar
+/types/lodash.ismatchwith @bczengel, @chrootsu, @stepancar
+/types/lodash.isnan @bczengel, @chrootsu, @stepancar
+/types/lodash.isnative @bczengel, @chrootsu, @stepancar
+/types/lodash.isnil @bczengel, @chrootsu, @stepancar
+/types/lodash.isnull @bczengel, @chrootsu, @stepancar
+/types/lodash.isnumber @bczengel, @chrootsu, @stepancar
+/types/lodash.isobject @bczengel, @chrootsu, @stepancar
+/types/lodash.isobjectlike @bczengel, @chrootsu, @stepancar
+/types/lodash.isplainobject @bczengel, @chrootsu, @stepancar
+/types/lodash.isregexp @bczengel, @chrootsu, @stepancar
+/types/lodash.issafeinteger @bczengel, @chrootsu, @stepancar
+/types/lodash.isset @bczengel, @chrootsu, @stepancar
+/types/lodash.isstring @bczengel, @chrootsu, @stepancar
+/types/lodash.issymbol @bczengel, @chrootsu, @stepancar
+/types/lodash.istypedarray @bczengel, @chrootsu, @stepancar
+/types/lodash.isundefined @bczengel, @chrootsu, @stepancar
+/types/lodash.isweakmap @bczengel, @chrootsu, @stepancar
+/types/lodash.isweakset @bczengel, @chrootsu, @stepancar
+/types/lodash.iteratee @bczengel, @chrootsu, @stepancar
+/types/lodash.join @bczengel, @chrootsu, @stepancar
+/types/lodash.kebabcase @bczengel, @chrootsu, @stepancar
+/types/lodash.keyby @bczengel, @chrootsu, @stepancar
+/types/lodash.keys @bczengel, @chrootsu, @stepancar
+/types/lodash.keysin @bczengel, @chrootsu, @stepancar
+/types/lodash.last @bczengel, @chrootsu, @stepancar
+/types/lodash.lastindexof @bczengel, @chrootsu, @stepancar
+/types/lodash.lowercase @bczengel, @chrootsu, @stepancar
+/types/lodash.lowerfirst @bczengel, @chrootsu, @stepancar
+/types/lodash.lt @bczengel, @chrootsu, @stepancar
+/types/lodash.lte @bczengel, @chrootsu, @stepancar
+/types/lodash.map @bczengel, @chrootsu, @stepancar
+/types/lodash.mapkeys @bczengel, @chrootsu, @stepancar
+/types/lodash.mapvalues @bczengel, @chrootsu, @stepancar
+/types/lodash.matches @bczengel, @chrootsu, @stepancar
+/types/lodash.matchesproperty @bczengel, @chrootsu, @stepancar
+/types/lodash.max @bczengel, @chrootsu, @stepancar
+/types/lodash.maxby @bczengel, @chrootsu, @stepancar
+/types/lodash.mean @bczengel, @chrootsu, @stepancar
+/types/lodash.meanby @bczengel, @chrootsu, @stepancar
+/types/lodash.memoize @bczengel, @chrootsu, @stepancar
+/types/lodash.merge @bczengel, @chrootsu, @stepancar
+/types/lodash.mergewith @bczengel, @chrootsu, @stepancar
+/types/lodash.method @bczengel, @chrootsu, @stepancar
+/types/lodash.methodof @bczengel, @chrootsu, @stepancar
+/types/lodash.min @bczengel, @chrootsu, @stepancar
+/types/lodash.minby @bczengel, @chrootsu, @stepancar
+/types/lodash.mixin @bczengel, @chrootsu, @stepancar
+/types/lodash.negate @bczengel, @chrootsu, @stepancar
+/types/lodash.noop @bczengel, @chrootsu, @stepancar
+/types/lodash.now @bczengel, @chrootsu, @stepancar
+/types/lodash.nth @bczengel, @chrootsu, @stepancar
+/types/lodash.ntharg @bczengel, @chrootsu, @stepancar
+/types/lodash.omit @bczengel, @chrootsu, @stepancar
+/types/lodash.omitby @bczengel, @chrootsu, @stepancar
+/types/lodash.once @bczengel, @chrootsu, @stepancar
+/types/lodash.orderby @bczengel, @chrootsu, @stepancar
+/types/lodash.over @bczengel, @chrootsu, @stepancar
+/types/lodash.overargs @bczengel, @chrootsu, @stepancar
+/types/lodash.overevery @bczengel, @chrootsu, @stepancar
+/types/lodash.oversome @bczengel, @chrootsu, @stepancar
+/types/lodash.pad @bczengel, @chrootsu, @stepancar
+/types/lodash.padend @bczengel, @chrootsu, @stepancar
+/types/lodash.padstart @bczengel, @chrootsu, @stepancar
+/types/lodash.parseint @bczengel, @chrootsu, @stepancar
+/types/lodash.partial @bczengel, @chrootsu, @stepancar
+/types/lodash.partialright @bczengel, @chrootsu, @stepancar
+/types/lodash.partition @bczengel, @chrootsu, @stepancar
+/types/lodash.pick @bczengel, @chrootsu, @stepancar
+/types/lodash.pickby @bczengel, @chrootsu, @stepancar
+/types/lodash.property @bczengel, @chrootsu, @stepancar
+/types/lodash.propertyof @bczengel, @chrootsu, @stepancar
+/types/lodash.pull @bczengel, @chrootsu, @stepancar
+/types/lodash.pullall @bczengel, @chrootsu, @stepancar
+/types/lodash.pullallby @bczengel, @chrootsu, @stepancar
+/types/lodash.pullat @bczengel, @chrootsu, @stepancar
+/types/lodash.random @bczengel, @chrootsu, @stepancar
+/types/lodash.range @bczengel, @chrootsu, @stepancar
+/types/lodash.rangeright @bczengel, @chrootsu, @stepancar
+/types/lodash.rearg @bczengel, @chrootsu, @stepancar
+/types/lodash.reduce @bczengel, @chrootsu, @stepancar
+/types/lodash.reduceright @bczengel, @chrootsu, @stepancar
+/types/lodash.reject @bczengel, @chrootsu, @stepancar
+/types/lodash.remove @bczengel, @chrootsu, @stepancar
+/types/lodash.repeat @bczengel, @chrootsu, @stepancar
+/types/lodash.replace @bczengel, @chrootsu, @stepancar
+/types/lodash.rest @bczengel, @chrootsu, @stepancar
+/types/lodash.result @bczengel, @chrootsu, @stepancar
+/types/lodash.reverse @bczengel, @chrootsu, @stepancar
+/types/lodash.round @bczengel, @chrootsu, @stepancar
+/types/lodash.sample @bczengel, @chrootsu, @stepancar
+/types/lodash.samplesize @bczengel, @chrootsu, @stepancar
+/types/lodash.set @bczengel, @chrootsu, @stepancar
+/types/lodash.setwith @bczengel, @chrootsu, @stepancar
+/types/lodash.shuffle @bczengel, @chrootsu, @stepancar
+/types/lodash.size @bczengel, @chrootsu, @stepancar
+/types/lodash.slice @bczengel, @chrootsu, @stepancar
+/types/lodash.snakecase @bczengel, @chrootsu, @stepancar
+/types/lodash.some @bczengel, @chrootsu, @stepancar
+/types/lodash.sortby @bczengel, @chrootsu, @stepancar
+/types/lodash.sortedindex @bczengel, @chrootsu, @stepancar
+/types/lodash.sortedindexby @bczengel, @chrootsu, @stepancar
+/types/lodash.sortedindexof @bczengel, @chrootsu, @stepancar
+/types/lodash.sortedlastindex @bczengel, @chrootsu, @stepancar
+/types/lodash.sortedlastindexby @bczengel, @chrootsu, @stepancar
+/types/lodash.sortedlastindexof @bczengel, @chrootsu, @stepancar
+/types/lodash.sorteduniq @bczengel, @chrootsu, @stepancar
+/types/lodash.sorteduniqby @bczengel, @chrootsu, @stepancar
+/types/lodash.split @bczengel, @chrootsu, @stepancar
+/types/lodash.spread @bczengel, @chrootsu, @stepancar
+/types/lodash.startcase @bczengel, @chrootsu, @stepancar
+/types/lodash.startswith @bczengel, @chrootsu, @stepancar
+/types/lodash.subtract @bczengel, @chrootsu, @stepancar
+/types/lodash.sum @bczengel, @chrootsu, @stepancar
+/types/lodash.sumby @bczengel, @chrootsu, @stepancar
+/types/lodash.tail @bczengel, @chrootsu, @stepancar
+/types/lodash.take @bczengel, @chrootsu, @stepancar
+/types/lodash.takeright @bczengel, @chrootsu, @stepancar
+/types/lodash.takerightwhile @bczengel, @chrootsu, @stepancar
+/types/lodash.takewhile @bczengel, @chrootsu, @stepancar
+/types/lodash.template @bczengel, @chrootsu, @stepancar
+/types/lodash.throttle @bczengel, @chrootsu, @stepancar
+/types/lodash.times @bczengel, @chrootsu, @stepancar
+/types/lodash.toarray @bczengel, @chrootsu, @stepancar
+/types/lodash.tointeger @bczengel, @chrootsu, @stepancar
+/types/lodash.tolength @bczengel, @chrootsu, @stepancar
+/types/lodash.tolower @bczengel, @chrootsu, @stepancar
+/types/lodash.tonumber @bczengel, @chrootsu, @stepancar
+/types/lodash.topairs @bczengel, @chrootsu, @stepancar
+/types/lodash.topairsin @bczengel, @chrootsu, @stepancar
+/types/lodash.topath @bczengel, @chrootsu, @stepancar
+/types/lodash.toplainobject @bczengel, @chrootsu, @stepancar
+/types/lodash.tosafeinteger @bczengel, @chrootsu, @stepancar
+/types/lodash.tostring @bczengel, @chrootsu, @stepancar
+/types/lodash.toupper @bczengel, @chrootsu, @stepancar
+/types/lodash.transform @bczengel, @chrootsu, @stepancar
+/types/lodash.trim @bczengel, @chrootsu, @stepancar
+/types/lodash.trimend @bczengel, @chrootsu, @stepancar
+/types/lodash.trimstart @bczengel, @chrootsu, @stepancar
+/types/lodash.truncate @bczengel, @chrootsu, @stepancar
+/types/lodash.unary @bczengel, @chrootsu, @stepancar
+/types/lodash.unescape @bczengel, @chrootsu, @stepancar
+/types/lodash.union @bczengel, @chrootsu, @stepancar
+/types/lodash.unionby @bczengel, @chrootsu, @stepancar
+/types/lodash.unionwith @bczengel, @chrootsu, @stepancar
+/types/lodash.uniq @bczengel, @chrootsu, @stepancar
+/types/lodash.uniqby @bczengel, @chrootsu, @stepancar
+/types/lodash.uniqueid @bczengel, @chrootsu, @stepancar
+/types/lodash.uniqwith @bczengel, @chrootsu, @stepancar
+/types/lodash.unset @bczengel, @chrootsu, @stepancar
+/types/lodash.unzip @bczengel, @chrootsu, @stepancar
+/types/lodash.unzipwith @bczengel, @chrootsu, @stepancar
+/types/lodash.update @bczengel, @chrootsu, @stepancar
+/types/lodash.uppercase @bczengel, @chrootsu, @stepancar
+/types/lodash.upperfirst @bczengel, @chrootsu, @stepancar
+/types/lodash.values @bczengel, @chrootsu, @stepancar
+/types/lodash.valuesin @bczengel, @chrootsu, @stepancar
+/types/lodash.without @bczengel, @chrootsu, @stepancar
+/types/lodash.words @bczengel, @chrootsu, @stepancar
+/types/lodash.wrap @bczengel, @chrootsu, @stepancar
+/types/lodash.xor @bczengel, @chrootsu, @stepancar
+/types/lodash.xorby @bczengel, @chrootsu, @stepancar
+/types/lodash.xorwith @bczengel, @chrootsu, @stepancar
+/types/lodash.zip @bczengel, @chrootsu, @stepancar
+/types/lodash.zipobject @bczengel, @chrootsu, @stepancar
+/types/lodash.zipobjectdeep @bczengel, @chrootsu, @stepancar
+/types/lodash.zipwith @bczengel, @chrootsu, @stepancar
+/types/log-symbols @BendingBender
+/types/log-update @BendingBender
+/types/loggly @rmartone, @geoffreak
+/types/logrotate-stream @rogierschouten
+/types/lokijs @TeamworkGuy2
+/types/lolex @Nemo157, @joshuakgoldberg
+/types/lorem-ipsum @durad
+/types/lory.js @milkisevil
+/types/loud-rejection @BendingBender
+/types/lovefield @freshp86
+/types/lowdb @typicode
+/types/lowlight @NoHomey
+/types/lru-cache @Bartvds
+/types/lscache @Chris-Martinezz
+/types/ltx @PJakcson
+/types/luaparse @stpettersens
+/types/lunr @sebastian-lenz
+/types/lwip @AyaMorisawa
+/types/lz-string @M0ns1gn0r
+/types/magic-number @stpettersens
+/types/magnet-uri @tlaziuk
+/types/maildev @zbarbuto
+/types/mailgen @vothanhkiet, @jordanfarrer
+/types/main-bower-files @k-kagurazaka
+/types/make-dir @ikatyang, @BendingBender
+/types/maker.js @danmarshall
+/types/map-obj @BendingBender
+/types/mapbox-gl @dobrud
+/types/mapbox__shelf-pack @Perlmint
+/types/markdown-it-anchor @seryl
+/types/markdown-it-container @hronex
+/types/marked @worr, @BendingBender
+/types/marker-animate-unobtrusive @viskin
+/types/markitup @drillbits
+/types/masonry-layout @m-a-wilson, @warriorrocker
+/types/massive @swissspidy, @clarenceh
+/types/match-media-mock @asvetliakov
+/types/material-ui @ngbrown, @theigor, @alitaheri, @herrmanno, @DaIgeb, @allienna, @schlesingermatthias, @InsidersByte, @artyomsv, @dan-j, @minodisk
+/types/materialize-css @eriklieben, @leonyu, @SinghSukhdeep
+/types/math3d @laszlojakab
+/types/mathjax @rolandzwaga
+/types/maxmind @geoffreak
+/types/mcustomscrollbar @flurg
+/types/md5 @arcdev1, @jprogrammer
+/types/mdns @reppners
+/types/media-typer @BendingBender
+/types/medium-editor @keika299
+/types/mem @SamVerschueren
+/types/memcached @KentarouTakeda
+/types/memoizee @juanpicado
+/types/memory-cache @jedigo
+/types/memory-fs @e-cloud
+/types/memwatch-next @cyrilschumacher
+/types/meow @KnisterPeter
+/types/merge-stream @k-kagurazaka
+/types/merge2 @tkrotoff, @smac89
+/types/meshblu @fnipo
+/types/mess @Nemo157
+/types/messenger @derekcicerone
+/types/meteor @barbatus, @fullflavedave, @orefalo, @dagatsoin, @birkskyum, @ardatan, @stefanholzapfel
+/types/meteor-accounts-phone @DAB0mB
+/types/meteor-collection-hooks @twastvedt
+/types/meteor-jboulhous-dev @vangorra
+/types/meteor-persistent-session @vangorra
+/types/meteor-prime8consulting-oauth2 @vangorra
+/types/meteor-publish-composite @vangorra
+/types/meteor-roles @vangorra
+/types/methods @cprecioso
+/types/metric-suffix @davidm77
+/types/micro @kaoDev
+/types/microgears @marcusdb
+/types/micromatch @glen-84
+/types/microrouter @mathieudutour
+/types/microsoftteams @OfficeDev
+/types/microtime @vincekovacs
+/types/milkcocoa @odangosan
+/types/mime @jedigo
+/types/mime-db @AJamesPhillips
+/types/mime-types @Perlmint
+/types/mimos @AJamesPhillips
+/types/mina @lhk, @mattanja, @kant2002
+/types/minimatch @shantmarouti
+/types/minimist @Bartvds, @Necroskillz, @kamranayub
+/types/mithril @spacejack, @andraaspar, @isiahmeadows
+/types/mithril-global @spacejack, @isiahmeadows
+/types/mitm @alejo90
+/types/mkdirp @Bartvds
+/types/mkpath @optical
+/types/mocha @otiai10, @jt000, @enlight
+/types/mocha-phantomjs @ErikSchierboom
+/types/mock-fs @Nemo157, @tkqubo
+/types/mock-raf @djpereira
+/types/mock-require @djpereira
+/types/mockdate @brunolm
+/types/mockery @jt000
+/types/modernizr @nhardy
+/types/modesl @neeschit
+/types/moment-duration-format @SwintDC, @TwoStone, @leonard-thieu
+/types/moment-jalaali @alitaheri
+/types/moment-range @Burgov, @wilgert, @franjuan, @MartynasZilinskas
+/types/moment-round @jacobbaskin
+/types/moment-timezone @michelsalib
+/types/mongodb @CaselIT, @alanmarcell, @kikar
+/types/mongoose @sindrenm, @lukasz-zak
+/types/mongoose-auto-increment @AyaMorisawa
+/types/mongoose-deep-populate @AyaMorisawa
+/types/mongoose-mock @jt000
+/types/mongoose-simple-random @me
+/types/mongoose-unique-validator @stevehipwell
+/types/moo @deltaidea
+/types/morgan @staticfunction
+/types/morris.js @mareek, @sindilevich
+/types/mousetrap @qcz
+/types/move-concurrently @mgroenhoff
+/types/moviedb @basarat, @0x6368656174
+/types/mqtt @PekkaPLeppanen
+/types/msgpack-lite @efokschaner
+/types/msnodesql @SomaticIT
+/types/msportalfx-test @julioct
+/types/mssql @jaminfarr, @buzinas
+/types/mu2 @jedigo
+/types/multer @jt000, @DavidBR-SW, @mxl
+/types/multi-typeof @mhegazy
+/types/multimatch @stephenlautier
+/types/multiparty @kenfdev
+/types/murmurhash-js @cvle
+/types/murmurhash3js @dlee-nvisia
+/types/musicmetadata @Xstoudi
+/types/mysql @wjohnsto, @kacepe
+/types/mz @ThomasHickman
+/types/n3 @phreed
+/types/nano @timjacobi
+/types/nanomsg @titan
+/types/nanoscroller @zihark17
+/types/natsort @mgroenhoff
+/types/natural-sort @a-morales
+/types/navigation @grahammendick
+/types/navigation-react @grahammendick
+/types/navigo @aersamkull
+/types/nblas @erikgerrits
+/types/nconf @jedigo, @jmthibault
+/types/ndarray @taoqf
+/types/nearley @deltaidea
+/types/nedb @reppners
+/types/nedb-logger @thisboyiscrazy
+/types/needle/v0 @bigsan
+/types/needle @bigsan, @nikeee
+/types/neo4j @cyrilschumacher
+/types/nes @NoHomey
+/types/next @dru89
+/types/next-redux-wrapper @stevegeek
+/types/ng-command @stephenlautier
+/types/ng-cordova @ksachdeva
+/types/ng-dialog @stephenlautier
+/types/ng-facebook @Crevil
+/types/ng-file-upload @johnnyreilly, @thewarpaint
+/types/ng-flow @ryan10132
+/types/ng-grid @smithkl42, @rolandzwaga, @kentcooper
+/types/ng-i18next @cyrilschumacher
+/types/ng-notify @nzamosenchuk
+/types/ng-stomp @lpotapczuk
+/types/ngbootbox @stpettersens
+/types/ngeohash @erkie
+/types/ngkookies @martinmcwhorter
+/types/ngmap @nkovacic
+/types/ngprogress @martinmcwhorter
+/types/ngprogress-lite @LukeForder
+/types/ngreact @velveret
+/types/ngstorage @kubiq
+/types/ngtoaster @btesser
+/types/ngwysiwyg @patrick-mackay
+/types/nightmare @samyang-au
+/types/noble @swook, @wind-rider, @shantanubhadoria, @lukel99, @bioball
+/types/nock @bonnici, @horiuchi
+/types/nodal @charrondev
+/types/node/v6 @WilcoBakker
+/types/node/v7 @parambirs, @RobDesideri, @tellnes, @WilcoBakker, @Tyriar
+/types/node @parambirs, @RobDesideri, @tellnes, @WilcoBakker, @octo-sniffle, @smac89, @Flarna, @mwiktorczyk, @wwwy3y3, @Tyriar, @DeividasBakanas
+/types/node-7z @erkie
+/types/node-array-ext @Beng89
+/types/node-cache @chrootsu, @dthunell
+/types/node-calendar @luzianz
+/types/node-common-errors @icopp
+/types/node-dogstatsd @chrisbobo
+/types/node-emoji @jonestristand
+/types/node-feedparser @cortopy
+/types/node-fetch @torstenwerner
+/types/node-fibers @caryhaynie
+/types/node-forge @westy92, @flynetworks, @a-k-g
+/types/node-gcm @horiuchi
+/types/node-getopt @kcauchy
+/types/node-hid @mhegazy, @ert78gb
+/types/node-hue-api @fjmorel
+/types/node-int64 @x3cion
+/types/node-ipc @arvitaly
+/types/node-jsfl-runner @mrand01
+/types/node-json-db @kuzn-ilya
+/types/node-mysql-wrapper @kataras
+/types/node-notifier @tkQubo
+/types/node-pg-migrate @bradleyayers
+/types/node-polyglot @timjk
+/types/node-powershell @rodrigoff
+/types/node-ral @ssddi456
+/types/node-rsa @alitaheri
+/types/node-schedule @cyrilschumacher, @flowpl
+/types/node-slack @tkQubo
+/types/node-snap7 @heilingbrunner
+/types/node-sprite-generator @Perlmint
+/types/node-static @Morfent
+/types/node-statsd @alexturek, @convoyinc
+/types/node-telegram-bot-api @ammuench
+/types/node-uuid @jeffmay
+/types/node-validator @kengorab
+/types/node-vault @YuJianrong
+/types/node-waves @stephenlautier
+/types/node-wit @julienduf
+/types/node-xmpp-client @PJakcson
+/types/node-xmpp-core @PJakcson
+/types/nodegit @dolanmiu
+/types/nodeunit @jedigo
+/types/noisejs @izmhr
+/types/nomnom @panopticoncentral
+/types/nopt @jbondc
+/types/normalize-url @odin3, @BendingBender
+/types/notie @mateusdemboski
+/types/notify @hellochar
+/types/notify.js @bahman616
+/types/notifyjs @soundTricker
+/types/nouislider/v7 @acoreyj
+/types/nouislider/v8 @bleuarg
+/types/nouislider @bleuarg, @lagaffe
+/types/novnc-core @BendingBender
+/types/npm-package-arg @mgroenhoff
+/types/ns-api @Archcry
+/types/nslog @unindented
+/types/number-is-nan @mhegazy
+/types/number-to-words @frederickfogerty
+/types/numjs @taoqf
+/types/nw.gui @xperiments
+/types/nw.js @alirdn
+/types/o.js @IceOnFire, @bradzacher, @janhommes
+/types/oauth.js @nobuoka
+/types/oauth2-server @vangorra, @cirick
+/types/oauth2orize @heycalmdown, @stevehipwell
+/types/object-assign @chbrown
+/types/object-diff @rogierschouten
+/types/object-refs @3fd
+/types/oboe @optical
+/types/oclazyload @rolandzwaga
+/types/odata @janhommes
+/types/ofe @Morfent
+/types/office-js @OfficeDev, @LanceEA
+/types/offline-js @cgwrench
+/types/oibackoff @geoffreak
+/types/oidc-token-manager @rosieks
+/types/once @denis-sokolov
+/types/onetime @BendingBender
+/types/onoff @marcel-ernst
+/types/open @Bartvds
+/types/opener @tikurahul
+/types/openjscad @danmarshall
+/types/openlayers/v2 @bolhovsky
+/types/openlayers/v3 @osechet, @matthiasdailey-ccri
+/types/openlayers @osechet, @ganlhi
+/types/opentok @westy92
+/types/opentype.js @danmarshall
+/types/opn @shinnn, @SomaticIT
+/types/optics-agent @crevil
+/types/optimist @soywiz, @chbrown
+/types/optimize-css-assets-webpack-plugin @odnamrataizem
+/types/ora/v0 @screendriver
+/types/ora @screendriver, @BendingBender
+/types/oracledb @Bigous
+/types/orchestrator @tkQubo, @TeamworkGuy2
+/types/orderedmap @bradleyayers
+/types/orientjs @saeedtabrizi
+/types/os-homedir @mhegazy
+/types/os-locale/v1 @AyaMorisawa, @BendingBender
+/types/os-locale @AyaMorisawa, @BendingBender
+/types/os-name @BendingBender
+/types/os-tmpdir @mhegazy
+/types/osmosis @jurajkocan
+/types/osmtogeojson @tkqubo
+/types/owlcarousel @dpiatkowski
+/types/p-all @BendingBender
+/types/p-any @BendingBender
+/types/p-cancelable @BendingBender
+/types/p-debounce @BendingBender
+/types/p-defer @SamVerschueren
+/types/p-do-whilst @BendingBender
+/types/p-each-series @BendingBender
+/types/p-event @BendingBender
+/types/p-every @BendingBender
+/types/p-lazy @BendingBender
+/types/p-limit @BendingBender
+/types/p-locate @BendingBender
+/types/p-log @BendingBender
+/types/p-map @BendingBender
+/types/p-map-series @BendingBender
+/types/p-one @BendingBender
+/types/p-queue @BendingBender, @evanshortiss
+/types/p-reduce @BendingBender
+/types/p-reflect @BendingBender
+/types/p-retry @BendingBender
+/types/p-series @BendingBender
+/types/p-settle @natesilva
+/types/p-some @BendingBender
+/types/p-tap @BendingBender
+/types/p-throttle @BendingBender
+/types/p-timeout @BendingBender
+/types/p-try @BendingBender
+/types/p-wait-for @BendingBender
+/types/p-whilst @BendingBender
+/types/p2 @clark-stevenson
+/types/packery @piraveen, @hanssens
+/types/pad @mhegazy
+/types/paho-mqtt @amikhalev
+/types/pako @cappellin, @calebegg
+/types/papaparse @torpedro, @rainshen49
+/types/parse @dpoetzsch
+/types/parse-git-config @leonard-thieu
+/types/parse-glob @glen-84
+/types/parse-mockdb @dpoetzsch
+/types/parse-torrent @niieani, @tlaziuk
+/types/parse-torrent-file @tlaziuk
+/types/parse-unit @Jack-Works
+/types/parseurl @bomret
+/types/parsimmon @Bartvds, @mizunashi-mana, @bcherny, @bvanreeven, @leonard-thieu
+/types/passport @enaeseth
+/types/passport-anonymous @0x6368656174
+/types/passport-beam @AtlasDev
+/types/passport-discord @kzay
+/types/passport-facebook @staticfunction, @lucasmacosta
+/types/passport-facebook-token @rmartone
+/types/passport-github @yasupeke
+/types/passport-google-oauth @staticfunction
+/types/passport-google-oauth2 @bluehatbrit
+/types/passport-http @krizalys
+/types/passport-http-bearer @isman-usoh
+/types/passport-local @SomaticIT
+/types/passport-oauth2-client-password @akaNightmare
+/types/passport-steam @kzay
+/types/passport-twitter @staticfunction
+/types/passport-unique-token @briman0094, @SomaticIT
+/types/password-hash-and-salt @alitaheri
+/types/path-exists/v1 @shiwano
+/types/path-exists @shiwano, @BendingBender
+/types/path-is-absolute @mhegazy
+/types/pathfinding @BNedry
+/types/payment @apare
+/types/paypal-cordova-plugin @Justin-Credible
+/types/paypal-rest-sdk @trainerbill
+/types/pbf @cschwarz
+/types/pdfkit @erichillah
+/types/pebblekitjs @makotokw
+/types/peerjs @nakakura
+/types/pegjs @vvakame, @SrTobi, @siegebell
+/types/pem @tony19, @DethAriel
+/types/perfect-scrollbar @aicest, @CarbonAtom
+/types/persona @Nycto
+/types/pet-finder-api @me
+/types/pg-connection-string @bradleyayers
+/types/pg-pool @aleung
+/types/pg-query-stream @asmarques
+/types/pg-types @waratuman
+/types/pgwmodal @pine613
+/types/phantomcss @abauzac
+/types/phantomjs @jedhunsaker, @keesey
+/types/phoenix @mciastek
+/types/phone @DxCx
+/types/phone-formatter @westy92
+/types/phonegap @DickvdBrink
+/types/phonegap-facebook-plugin @Justin-Credible
+/types/phonegap-nfc @michaeldesigaud
+/types/phonegap-plugin-push @fredgalvao, @larrybahr
+/types/phonon @kserin
+/types/photoswipe @hellochar
+/types/physijs @gyohk
+/types/pi-spi @marcel-ernst
+/types/pick-weight @rsxdalv
+/types/pickadate @leonard-thieu
+/types/pify @samverschueren
+/types/pigpio @manerfan
+/types/pikaday-time @Sayan751
+/types/pino/v3 @psnider
+/types/pino @psnider, @BendingBender
+/types/pinterest-sdk @adamburmister
+/types/pinyin @wanganjun
+/types/piwik-tracker @lbguilherme
+/types/pkijs @microshine
+/types/playerframework @ricardosabino
+/types/pleasejs @nakakura
+/types/plotly.js @chrisgervang, @martinduparc, @frederikaalund, @taoqf
+/types/pluralize @ukyo
+/types/png-async @kanreisa
+/types/podcast @nikeee
+/types/podium @AJamesPhillips
+/types/point-in-polygon @dyst5422, @kogai
+/types/polylabel @DenisCarriere
+/types/polyline @Kern0
+/types/polymer @lgrignon, @laco0416
+/types/popper.js @joscha, @seckardt, @marcfallows
+/types/portscanner @douglasduteil
+/types/postal @myitcv
+/types/postmark @benbayard
+/types/pouch-redux-middleware @charrondev
+/types/pouchdb @AGBrown, @geppy, @fredgalvao
+/types/pouchdb-adapter-fruitdown @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-http @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-idb @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-leveldb @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-localstorage @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-memory @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-node-websql @spaulg, @geppy, @fredgalvao
+/types/pouchdb-adapter-websql @spaulg, @geppy, @fredgalvao
+/types/pouchdb-browser @spaulg, @geppy, @fredgalvao
+/types/pouchdb-core @spaulg, @trubit, @geppy, @fredgalvao, @TobiasBales
+/types/pouchdb-find @trubit
+/types/pouchdb-http @spaulg, @geppy, @fredgalvao
+/types/pouchdb-mapreduce @spaulg, @geppy, @fredgalvao
+/types/pouchdb-node @spaulg, @geppy, @fredgalvao
+/types/pouchdb-replication @trubit
+/types/pouchdb-upsert @keithdmoore, @hotforfeature
+/types/power-assert @vvakame
+/types/power-assert-formatter @vvakame
+/types/precise @codeanimal
+/types/precond @olsio
+/types/preloadjs @endel
+/types/prelude-ls @AyaMorisawa
+/types/prettier @ikatyang
+/types/pretty-bytes @plantain-00
+/types/pretty-ms @BendingBender
+/types/printf @AluisioASG
+/types/priorityqueuejs @geoffreak
+/types/prismjs @eriklieben, @andrewiggins
+/types/private-ip @coderslagoon
+/types/progress @sebastian-lenz
+/types/progressbar @atd-schubert
+/types/progressjs @zaneli
+/types/proj4 @DenisCarriere
+/types/proj4leaflet @BendingBender
+/types/promise-dag @OSjoerdWie
+/types/promise-polyfill @skysteve
+/types/promise-pool @vilic
+/types/promise.prototype.finally @slavik57, @BendingBender
+/types/promised-temp @rokadias
+/types/promisify-node @borekb
+/types/prompt-sync @MugeSo
+/types/prompt-sync-history @MugeSo
+/types/promptly @danrspencer
+/types/prop-types @DovydasNavickas
+/types/prosemirror-collab @bradleyayers, @davidka
+/types/prosemirror-commands @bradleyayers, @davidka
+/types/prosemirror-history @bradleyayers, @davidka
+/types/prosemirror-inputrules @bradleyayers, @davidka
+/types/prosemirror-keymap @bradleyayers, @davidka
+/types/prosemirror-markdown @bradleyayers
+/types/prosemirror-menu @davidka
+/types/prosemirror-model @bradleyayers, @davidka
+/types/prosemirror-schema-basic @bradleyayers, @davidka
+/types/prosemirror-schema-list @bradleyayers, @davidka
+/types/prosemirror-state @bradleyayers, @davidka
+/types/prosemirror-transform @bradleyayers, @davidka
+/types/prosemirror-view @bradleyayers, @davidka
+/types/protobufjs @panuhorsmalahti
+/types/protractor-browser-logs @rokadias
+/types/protractor-http-mock @Crevil
+/types/public-ip @BendingBender
+/types/pug @TonyPythoneer, @19majkel94
+/types/pulltorefreshjs @DanielRosenwasser
+/types/pump @tlaziuk
+/types/purl @danfma
+/types/pusher-js @tkqubo
+/types/pvutils @microshine
+/types/python-shell @dolanmiu
+/types/q/v0 @bnemetchek, @johnnyreilly
+/types/q @bnemetchek, @johnnyreilly, @mboudreau
+/types/q-io @Bartvds
+/types/q-retry @vilic
+/types/qhistory @Kovensky
+/types/qlik @RubenSlabbert, @AginicX
+/types/qlik-engineapi @konne
+/types/qlik-visualizationextensions @konne
+/types/qr-image @taoqf
+/types/qrcode.react @mleko
+/types/qs @RWander, @leonyu, @tehbelinda, @zyml, @artursvonda
+/types/qtip2 @Seltzer, @leonard-thieu
+/types/query-string @SamVerschueren, @tkrotoff, @huhuanming
+/types/quick-lru @BendingBender
+/types/quill @sumitkm, @guillaume-ro-fr
+/types/quixote @greybax
+/types/qunit/v1 @diullei
+/types/qunit @waratuman
+/types/quoted-printable @pushplay
+/types/qwest @lindsayevans
+/types/rabbit.js @wokim
+/types/radius @codeanimal
+/types/ramda @donnut, @mdekrey, @LiamGoodacre, @mrdziuban, @sbking, @afharo, @teves-castro, @1M0reBug, @hojberg
+/types/random-js @pistacchio
+/types/random-seed @endel
+/types/random-string @stpettersens
+/types/randomcolor @feitzi, @BradyLiles
+/types/range-parser @tlaziuk
+/types/rangyinputs @ersimont
+/types/raphael @CheCoxshall
+/types/rappid @DenEwout
+/types/ratelimiter @AyaMorisawa
+/types/raven @scttcper, @1999
+/types/raygun4js @xt0rted, @BenjaminHarding
+/types/rc @DanielRosenwasser
+/types/rc-select @DenisTirilis
+/types/rcloader @panuhorsmalahti
+/types/react/v15 @bbenezech, @pzavolinsky, @digiguru, @ericanderson, @morcerf, @tkrotoff, @DovydasNavickas, @onigoetz
+/types/react @bbenezech, @pzavolinsky, @digiguru, @ericanderson, @morcerf, @tkrotoff, @DovydasNavickas, @onigoetz, @richseviora
+/types/react-app @prakarshpandey
+/types/react-autosuggest @nicolas-schmitt, @pjo256, @robessog, @tbayne
+/types/react-body-classname @mhegazy
+/types/react-bootstrap @walkerburgin, @vsiao, @danilojrr, @Batbold-Gansukh, @octatone, @chengsieuly, @katbusch
+/types/react-bootstrap-date-picker @LKay
+/types/react-bootstrap-daterangepicker @ianks
+/types/react-bootstrap-table @flaub, @alelode
+/types/react-breadcrumbs @KostyaEsmukov
+/types/react-burger-menu @radziksh
+/types/react-calendar-timeline @radziksh
+/types/react-chartjs-2 @apare, @FabienLavocat
+/types/react-codemirror @velveret, @rudi-c
+/types/react-color @LKay, @markspolakovs, @mntdn
+/types/react-copy-to-clipboard @mabels
+/types/react-cropper @stepancar
+/types/react-css-modules @KostyaEsmukov, @skirsdeda
+/types/react-css-transition-replace @LKay
+/types/react-custom-scrollbars/v3 @David-LeBlanc-git
+/types/react-custom-scrollbars @David-LeBlanc-git, @kittimiyo
+/types/react-data-grid/v1 @SupernaviX
+/types/react-data-grid @SupernaviX, @KieranPeat
+/types/react-datagrid @stephenjelfs
+/types/react-datepicker @radziksh, @andrewBalekha, @smrq, @Rogach
+/types/react-daterange-picker @MartynasZilinskas
+/types/react-dates @Artur-A
+/types/react-daum-postcode @Sa-ryong
+/types/react-dnd-html5-backend @oizie
+/types/react-document-title @cleverguy25
+/types/react-dom @MartynasZilinskas
+/types/react-dropzone/v2 @matdube, @LynxEyes, @goblindegook, @benbayard
+/types/react-dropzone @matdube, @LynxEyes, @goblindegook, @benbayard, @LKay
+/types/react-easy-chart @danzel
+/types/react-event-listener @asvetliakov
+/types/react-fa @flaub
+/types/react-facebook-login @apare, @jankarres
+/types/react-faux-dom @alitaheri, @cleverguy25
+/types/react-file-input @dmitryrogozhny
+/types/react-file-reader-input @dmitryrogozhny, @alitaheri
+/types/react-flatpickr @begincalendar
+/types/react-flex @pushplay
+/types/react-flexr @pushplay
+/types/react-flip-move @jmhain
+/types/react-fontawesome @timurrustamov, @dublicator, @vincaslt, @gavingregory
+/types/react-ga @telshin
+/types/react-geosuggest @brmenchl
+/types/react-gravatar @invliD
+/types/react-grid-layout @abirkholz, @alitaheri, @ZheyangSong
+/types/react-hamburger-menu @grzesie2k
+/types/react-helmet/v4 @evanbb, @isman-usoh
+/types/react-helmet @evanbb, @isman-usoh, @lith-light-g, @sammkj, @yuit
+/types/react-highlight-words @mhegazy
+/types/react-highlighter @oizie
+/types/react-holder @isman-usoh
+/types/react-i18next/v1 @KostyaEsmukov
+/types/react-i18next @GiedriusGrabauskas
+/types/react-icon-base @apare, @LKay
+/types/react-icons @apare
+/types/react-imageloader @stephenjelfs
+/types/react-infinite @rhysd
+/types/react-infinite-scroller @Lapanti, @psrebniak
+/types/react-input-calendar @stepancar
+/types/react-input-mask @apare
+/types/react-intl/v1 @bgrieder
+/types/react-intl @bgrieder, @cdroulers, @gyzerok, @tillwolff, @LKay, @bhouser, @kristerkari
+/types/react-intl-redux @LKay
+/types/react-is-deprecated @seansfkelley
+/types/react-joyride @DanielRosenwasser, @bendxn
+/types/react-json-pretty @LKay
+/types/react-jsonschema-form @iamdanfox, @sirreal
+/types/react-lazyload @m0a
+/types/react-leaflet @danzel, @davschne, @yuit
+/types/react-list @buptyyf
+/types/react-loadable @Kovensky, @odensc
+/types/react-loader @artfuldev
+/types/react-maskedinput @LKay, @lavoaster, @CarlosBonetti
+/types/react-mdl @bradzacher
+/types/react-measure @asvetliakov, @marcfallows
+/types/react-mixin @tkqubo
+/types/react-modal @radziksh, @drewnoakes, @homburg, @ttamminen, @hallowatcher
+/types/react-monaco-editor @jnetterf
+/types/react-motion @stepancar, @asvetliakov
+/types/react-motion-slider @asvetliakov
+/types/react-native @alloy, @gyzerok, @huhuanming, @iRoachie, @timwangdev, @kamal
+/types/react-native-collapsible @iRoachie
+/types/react-native-communications @huhuanming
+/types/react-native-datepicker @jacobbaskin
+/types/react-native-drawer @jnbt
+/types/react-native-drawer-layout @jmfirth
+/types/react-native-elements @iRoachie
+/types/react-native-fbsdk @ifiokjr
+/types/react-native-fetch-blob @MNBuyskih
+/types/react-native-google-analytics-bridge @huhuanming, @nbperry
+/types/react-native-keep-awake @huhuanming
+/types/react-native-material-design-searchbar @iRoachie
+/types/react-native-modalbox @me
+/types/react-native-scrollable-tab-view @CaiHuan
+/types/react-native-sensor-manager @SahinVardar
+/types/react-native-snap-carousel @jnbt
+/types/react-native-sortable-list @sivolobov
+/types/react-native-svg-uri @iRoachie
+/types/react-native-swiper @CaiHuan, @huhuanming, @mhcgrq
+/types/react-native-touch-id @huhuanming
+/types/react-native-vector-icons @iRoachie, @timwangdev
+/types/react-native-video @huhuanming
+/types/react-navigation @huhuanming, @mhcgrq, @fangpenlin, @abrahambotros, @petejkim, @iRoachie, @phanalpha, @charlesfamu
+/types/react-notification-system @GiedriusGrabauskas, @DeividasBakanas, @LKay, @sztobar
+/types/react-notification-system-redux @LKay
+/types/react-onclickoutside/v5 @LKay
+/types/react-onclickoutside @LKay
+/types/react-overlays @aaronbeall, @vitosamson
+/types/react-paginate @deevus, @wouterhardeman, @pegel03, @archy-bold
+/types/react-pointable @istefo
+/types/react-portal @shuntksh
+/types/react-props-decorators @tkqubo
+/types/react-recaptcha @mhegazy
+/types/react-redux @tkqubo, @seansfkelley, @thasner, @kenzierocks, @clayne11, @tansongyang
+/types/react-redux-i18n @clementdevos
+/types/react-redux-toastr @Smiche, @artyomsv, @kulmajaba
+/types/react-relay @graphcool
+/types/react-responsive @asvetliakov
+/types/react-router/v2 @sergey-buturlakin, @mrk21, @vasek17, @ngbrown, @awendland, @KostyaEsmukov
+/types/react-router/v3 @sergey-buturlakin, @mrk21, @vasek17, @ngbrown, @awendland, @KostyaEsmukov, @johnnyreilly, @LKay, @DovydasNavickas
+/types/react-router @sergey-buturlakin, @mrk21, @vasek17, @ngbrown, @awendland, @KostyaEsmukov, @johnnyreilly, @LKay, @DovydasNavickas, @tkrotoff, @huy-nguyen, @grmiade, @DaIgeb
+/types/react-router-bootstrap @vlesierse, @LKay, @olmobrutall
+/types/react-router-config @lith-light-g
+/types/react-router-dom @tkrotoff, @huy-nguyen
+/types/react-router-native @ezintz
+/types/react-router-redux/v3 @noah79, @rosendi
+/types/react-router-redux/v4 @noah79, @rosendi, @LKay, @DovydasNavickas
+/types/react-router-redux @huy-nguyen, @8398a7
+/types/react-scroll @sudoplz, @GiedriusGrabauskas
+/types/react-scrollbar @stephenjelfs
+/types/react-select @MartynasZilinskas
+/types/react-sidebar @jeroenvervaeke
+/types/react-slick @andrewBalekha, @GiedriusGrabauskas
+/types/react-smooth-scrollbar @asvetliakov
+/types/react-sortable-hoc @NoHomey, @charlesrey
+/types/react-sortable-tree @wouterhardeman
+/types/react-spinkit/v1 @tkqubo, @mleko, @pelotom
+/types/react-spinkit @tkqubo, @mleko, @pelotom, @zzanol
+/types/react-split-pane @rcchen
+/types/react-sticky @curtisw0
+/types/react-svg-pan-zoom @huy-nguyen
+/types/react-swf @stepancar
+/types/react-swipe @DeividasBakanas
+/types/react-swipeable @GiedriusGrabauskas, @mctep
+/types/react-swipeable-views @mxl, @DeividasBakanas
+/types/react-syntax-highlighter @NoHomey
+/types/react-tabs @danez
+/types/react-tag-input @Ogglas, @jankarres
+/types/react-tap-event-plugin @mxl
+/types/react-test-renderer @arvitaly, @lochbrunner, @lochbrunner
+/types/react-tether @ryprice
+/types/react-textarea-autosize @asvetliakov, @zry656565
+/types/react-toggle/v2 @LKay
+/types/react-toggle @LKay
+/types/react-tooltip @DeividasBakanas
+/types/react-touch @grzesie2k
+/types/react-transition-group/v1 @LKay
+/types/react-transition-group @LKay
+/types/react-user-tour @ccancellieri
+/types/react-virtual-keyboard @bsurai
+/types/react-virtualized @kaoDev, @guntherjh, @wasd171
+/types/react-virtualized-select @seansfkelley
+/types/react-weui @tairan
+/types/react-widgets @sanyatuning, @frodehansen2
+/types/reactable @spielc
+/types/reactcss @chrisgervang, @LKay
+/types/reactstrap @alihammad, @mfal, @danilobjr
+/types/read @timjk
+/types/read-package-tree @mgroenhoff
+/types/readdir-stream @Bartvds
+/types/readline-sync @jonestristand
+/types/realm @Akim95
+/types/reapop @Barrokgl
+/types/recaptcha @brentj73
+/types/recase @18steps
+/types/recompose @iskandersierra, @mrapogee, @clayne11
+/types/redis @soywiz, @CodeAnimal, @MugeSo
+/types/redis-mock @BendingBender
+/types/redis-rate-limiter @westy92
+/types/redis-scripto @westy92
+/types/redlock/v2 @chrootsu
+/types/redlock @chrootsu, @BendingBender
+/types/reduce-reducers @huy-nguyen
+/types/redux-action @newraina
+/types/redux-action-utils @tkqubo
+/types/redux-actions @jaysoo, @alexgorbatchev
+/types/redux-auth-wrapper/v1 @LKay
+/types/redux-auth-wrapper @LKay
+/types/redux-batched-subscribe @mDibyo
+/types/redux-bootstrap @remojansen
+/types/redux-debounced @seansfkelley
+/types/redux-devtools @mc-petry
+/types/redux-devtools-dock-monitor @mc-petry
+/types/redux-devtools-log-monitor @mc-petry
+/types/redux-doghouse @BendingBender
+/types/redux-first-router @Valbrand, @viggyfresh
+/types/redux-form/v4 @aikoven
+/types/redux-form/v6 @carsonf, @aikoven, @LKay, @bancek
+/types/redux-form @carsonf, @aikoven, @LKay, @bancek
+/types/redux-immutable @oizie, @gavingregory
+/types/redux-immutable-state-invariant @remojansen, @highflying
+/types/redux-localstorage @LKay
+/types/redux-localstorage-debounce @LKay
+/types/redux-localstorage-filter @LKay
+/types/redux-mock-store @MarianPalkus
+/types/redux-optimistic-ui @asvetliakov
+/types/redux-persist-transform-encrypt @LKay
+/types/redux-persist-transform-filter @LKay
+/types/redux-promise @molekilla, @xStrom
+/types/redux-promise-middleware @ianks
+/types/redux-recycle @LKay
+/types/redux-storage @asvetliakov
+/types/redux-ui @andyshuxin
+/types/ref @loyd
+/types/ref-array @loyd
+/types/ref-struct @loyd
+/types/ref-union @loyd
+/types/reflect-metadata @rbuckton
+/types/reflux @mauricedb
+/types/relateurl @tkrotoff
+/types/relaxed-json @18steps
+/types/remote-redux-devtools @ColinEberhardt, @unindented
+/types/replace-ext @DeividasBakanas
+/types/request @soywiz, @bonnici, @Bartvds, @ccurrens
+/types/request-ip @mrhen
+/types/request-promise @AyaMorisawa
+/types/request-promise-native @gustavohenke
+/types/requestretry @EricByers
+/types/require-directory @Igmat
+/types/requirejs-domready @lefb766
+/types/resemblejs @pimterry
+/types/resolve @marionebl
+/types/resolve-from @unional
+/types/response-time @TonyPythoneer
+/types/rest @Nemo157
+/types/restful.js @tkqubo
+/types/restify/v4 @blittle, @stevehipwell
+/types/restify @blittle, @stevehipwell
+/types/restify-cors-middleware @dthunell
+/types/restify-errors @stevehipwell
+/types/restify-plugins @KostyaTretyak
+/types/restler @cyrilschumacher
+/types/resumablejs @DanielMcAssey
+/types/rethinkdb @alexgorbatchev
+/types/retry @krenor
+/types/rev-hash @ikatyang
+/types/revalidate @alex3165
+/types/revalidator @brewsoftware
+/types/rewire @borislavjivkov, @CaselIT
+/types/rfc2047 @mugifly
+/types/rheostat @SashaBayan, @kourge
+/types/rimraf @soywiz, @e-cloud, @bash
+/types/riot @Stubb0rn
+/types/riotcontrol @chrootsu
+/types/riotjs @vvakame
+/types/rison @impworks
+/types/rivets @TrevorDev
+/types/rollup @flying-sheep
+/types/ronomon__crypto-async @BendingBender
+/types/route-parser @ianks, @bobbuehler
+/types/router5 @sandersky
+/types/routie @Adilson
+/types/rpio @DominikPalo
+/types/rrc @DeividasBakanas
+/types/rrule @waratuman
+/types/rsmq @MugeSo
+/types/rsmq-worker @MugeSo
+/types/rss @secondwtq
+/types/rsvp @Taytay, @mkohlmyr, @theroncross, @chriskrycho
+/types/rsync @philippstucki
+/types/rtree @oefirouz
+/types/run-sequence @k-kagurazaka
+/types/rvo2 @erikvullings
+/types/rx @Igorbek
+/types/rx-core @Igorbek, @mizunashi-mana
+/types/rx-core-binding @Igorbek
+/types/rx-dom @oliverw
+/types/rx-jquery @Igorbek
+/types/rx-lite @Igorbek
+/types/rx-lite-aggregates @Igorbek
+/types/rx-lite-async @zoetrope, @Igorbek
+/types/rx-lite-backpressure @Igorbek
+/types/rx-lite-coincidence @Igorbek
+/types/rx-lite-experimental @Igorbek
+/types/rx-lite-joinpatterns @Igorbek
+/types/rx-lite-testing @Igorbek
+/types/rx-lite-time @Igorbek
+/types/rx-lite-virtualtime @Igorbek
+/types/s3-upload-stream @geoffreak
+/types/safari-extension @luukd
+/types/safari-extension-content @luukd
+/types/safe-regex @mhegazy
+/types/saml20 @HackerUndKoch
+/types/sammy @oising
+/types/sane @BendingBender
+/types/sanitize-filename @Nemo157
+/types/sanitize-html @rogierschouten, @afshin
+/types/sap__xsenv @mad-mike
+/types/sass-graph @marvinhagemeister
+/types/sat @omni360
+/types/satnav @DotNetNerd
+/types/saywhen @SeanSobey
+/types/scalike @ryoppy
+/types/screenfull @lionelb, @joelshepherd
+/types/screeps-profiler @ramblurr
+/types/scriptjs @ssttevee
+/types/scroll-into-view @zivni
+/types/scroller @borisyankov
+/types/scrollreveal @Davidblkx
+/types/scrolltofixed @bmdixon
+/types/scrypt-async @xStrom
+/types/seamless @danmana
+/types/seamless-immutable @alex3165, @xsburg, @geirsagberg
+/types/seedrandom @kernhanda
+/types/segment-analytics @fongandrew
+/types/selectize @adidahiya, @naBausch
+/types/selenium-webdriver/v2 @BillArmstrong, @Kuniwak, @cnishina
+/types/selenium-webdriver @BillArmstrong, @Kuniwak, @cnishina, @SupernaviX, @bendxn
+/types/semantic-ui @leonard-thieu
+/types/semantic-ui-accordion @leonard-thieu
+/types/semantic-ui-api @leonard-thieu
+/types/semantic-ui-checkbox @leonard-thieu
+/types/semantic-ui-dimmer @leonard-thieu
+/types/semantic-ui-dropdown @leonard-thieu
+/types/semantic-ui-embed @leonard-thieu
+/types/semantic-ui-form @leonard-thieu
+/types/semantic-ui-modal @leonard-thieu
+/types/semantic-ui-nag @leonard-thieu
+/types/semantic-ui-popup @leonard-thieu
+/types/semantic-ui-progress @leonard-thieu
+/types/semantic-ui-rating @leonard-thieu
+/types/semantic-ui-search @leonard-thieu
+/types/semantic-ui-shape @leonard-thieu
+/types/semantic-ui-sidebar @leonard-thieu
+/types/semantic-ui-site @leonard-thieu
+/types/semantic-ui-sticky @leonard-thieu
+/types/semantic-ui-tab @leonard-thieu
+/types/semantic-ui-transition @leonard-thieu
+/types/semantic-ui-visibility @leonard-thieu
+/types/semver @Bartvds
+/types/semver-diff @chrismbarr
+/types/send @MikeJerred
+/types/sequelize/v3 @samuelneff, @codeanimal, @drinchev, @morpheusxaut, @torhal
+/types/sequelize @samuelneff, @codeanimal, @drinchev, @babolivier, @kukoo1
+/types/sequester @Strate
+/types/serialize-javascript @lith-light-g
+/types/serialport @codefoster
+/types/serve-index @tkrotoff
+/types/session-file-store @blendsdk
+/types/set-cookie-parser @nickp10
+/types/sha1 @arcdev1
+/types/shallowequal @seansfkelley
+/types/shapefile @DenisCarriere
+/types/sharedworker @nakakura
+/types/sharepoint @baywet
+/types/sharp @lith-light-g
+/types/sheetify @toddself
+/types/shell-quote @jason0x43
+/types/shelljs @nikeee, @voy
+/types/shipit @cyrilschumacher
+/types/shipit-utils @cyrilschumacher
+/types/shopify-buy @openminder
+/types/shortid @stpettersens, @despairblue
+/types/shot @AJamesPhillips
+/types/showdown @cbowdon
+/types/siema @Irmiz
+/types/siesta @bquarmby
+/types/sigmajs @qinfchen
+/types/signalr @GiedriusGrabauskas
+/types/signals @diullei
+/types/signature_pad @AbubakerB
+/types/simple-assign @NoHomey
+/types/simple-cw-node @vvakame
+/types/simple-mock @leonyu
+/types/simple-oauth2 @mad-mike
+/types/simple-peer @tlaziuk
+/types/simple-url-cache @a-lucas
+/types/simple-xml @notVitaliy
+/types/simplebar/v1 @gregonnet, @leonard-thieu
+/types/simplebar @leonard-thieu
+/types/simplemde @Scalesoft
+/types/simplestorage.js @axelcostaspena, @mxl
+/types/sinon @mrbigdog2u, @rationull, @lumaxis, @nicojs, @43081j
+/types/sinon-as-promised @igrayson
+/types/sinon-chrome @pimterry
+/types/sinon-express-mock @jpchip, @tlaziuk
+/types/sinon-mongoose @stevehipwell
+/types/sinon-stub-promise @vintem
+/types/sinon-test @mummybot
+/types/sip.js @decyrus
+/types/sipml @chookies
+/types/sitemap2 @shundy
+/types/sizzle @leonard-thieu
+/types/sjcl @Evgenus
+/types/ski @AyaMorisawa
+/types/skyway @nakakura
+/types/slack-node @geoffreak
+/types/slack-winston @BlueHatbRit
+/types/slackify-html @hypexr
+/types/slimerjs @alexwall
+/types/slug @mhegazy
+/types/smart-fox-server @ChanceM
+/types/smooth-scrollbar @asvetliakov
+/types/smoothie @mikehhawley
+/types/smoothscroll-polyfill @kryops
+/types/smtpapi @a-morales
+/types/snapsvg @lhk, @mattanja, @kant2002
+/types/snekfetch @DarkerTV
+/types/snoowrap @vitosamson
+/types/soap @aleung, @cagefox
+/types/socket.io.users @kataras
+/types/socketio-wildcard @BendingBender
+/types/socketty @Nax
+/types/sockjs @pmccloghrylaing
+/types/sockjs-client @vladev, @BendingBender
+/types/solution-center-communicator @dami-gg
+/types/source-map @MortenHoustonLudvigsen, @rbuckton
+/types/source-map-support @Bartvds, @jason0x43
+/types/space-pen @vvakame
+/types/spark-md5 @bastienmoulia
+/types/sparkly @BendingBender
+/types/sparkpost/v1 @geoffreak
+/types/sparkpost @geoffreak, @bondz
+/types/spdy @tony19
+/types/speakeasy @legendecas, @mrOlorin
+/types/spectacle @zmaybury
+/types/spectrum @M-Zuber
+/types/split @marcinporebski
+/types/spotify-api @skovmand
+/types/sprintf @soywiz
+/types/sqlstring @marvinhagemeister
+/types/squirejs @bradleyayers
+/types/srp @Patman64
+/types/ssh2 @tkQubo, @rbuckton
+/types/ssh2-sftp-client @igrayson
+/types/ssh2-streams @rbuckton
+/types/sshpk @mabels
+/types/stack-mapper @rogierschouten
+/types/stack-trace @exceptionless
+/types/stack-utils @BendingBender
+/types/stacktrace-js @exceptionless, @pilagod
+/types/stampit @koresar
+/types/stat-mode @BendingBender
+/types/stats.js @gregolai, @hberntsen
+/types/statuses @tkrotoff, @BendingBender
+/types/steam @kant2002
+/types/steed @Paul-Isache
+/types/stompjs @jimic
+/types/storybook__addon-actions @joscha
+/types/storybook__addon-knobs @joscha, @martynaskadisa
+/types/storybook__addon-links @joscha
+/types/storybook__addon-notes @joscha
+/types/storybook__addon-options @joscha
+/types/storybook__react @joscha
+/types/stream-buffers @Jason3S
+/types/stream-series @k-kagurazaka
+/types/stream-to-array @Bartvds
+/types/streamjs @erosb
+/types/strftime @cyrilschumacher
+/types/string-similarity @ragtime
+/types/string-template @TonyPythoneer
+/types/stringify-object @khoomeister
+/types/strip-ansi @mhegazy
+/types/strip-bom @mhegazy
+/types/stripe-checkout @cgwrench
+/types/stripe-node @wjohnsto
+/types/stripe-v2 @adamcmiel, @jleider, @galuszkak
+/types/stripe-v3 @adamcmiel, @jleider, @galuszkak
+/types/striptags @ccitro
+/types/strong-cluster-control @shuntksh
+/types/stylelint @alan-agius4
+/types/stylus @SomaticIT
+/types/subsume @BendingBender
+/types/succinct @EnableSoftware
+/types/sudo-block @BendingBender
+/types/suitescript @darrenhillconsulting
+/types/supercluster @DenisCarriere
+/types/supertest-as-promised @tkrotoff
+/types/supports-color @mgroenhoff
+/types/svg-injector @poke
+/types/svg-pan-zoom/v2 @Promact
+/types/svg-pan-zoom @Yimiprod
+/types/svg-sprite @tkqubo
+/types/svg2png @hansrwindhoff
+/types/svg4everybody @BendingBender
+/types/svgjs.draggable @LiFeleSs
+/types/svgjs.resize @jkevingutierrez
+/types/swag @shiwano
+/types/swagger-jsdoc @drGrove
+/types/swagger-schema-official @mohsen1, @bsouthga, @nimerritt
+/types/swagger-tools @bricka
+/types/swaggerize-express @nickmorton
+/types/swfobject @rou
+/types/swiftclick @Laurence-C
+/types/swig @CodeAnimal, @soywiz
+/types/swig-email-templates @mrhen
+/types/swipe @kant2002
+/types/switchery @bgrieder, @claylaut
+/types/swiz @jedigo
+/types/sylvester @StephaneAlie
+/types/synaptic @austincummings
+/types/systeminformation @PixelcrabAT
+/types/systemjs @GiedriusGrabauskas
+/types/tabtab @vojtechhabarta
+/types/tapable @e-cloud
+/types/tape @Bartvds, @sodatea, @DennisSchwartz
+/types/tar @SomaticIT
+/types/tedious @rogierschouten, @cjthompson
+/types/tedious-connection-pool @sandorfr
+/types/telebot @mariotsi
+/types/temp @DanielRosenwasser
+/types/temp-write @BendingBender
+/types/tempfile @SamVerschueren, @BendingBender
+/types/tempy @douglasduteil
+/types/terminal-menu @aravindarun
+/types/testingbot-api @timbru31
+/types/tether @adidahiya
+/types/tether-drop @adidahiya
+/types/tether-shepherd @mtgibbs
+/types/three @gyohk, @florentpoujol, @SereznoKot, @omni360, @ivoisbelongtous, @piranha771, @qszhusightp, @nakakura, @s093294, @Pro, @efokschaner
+/types/thrift @kamek-pf
+/types/throttle @BendingBender
+/types/through2/v0 @Bartvds, @jedmao
+/types/through2 @Bartvds, @jedmao, @valotas, @TeamworkGuy2
+/types/through2-map @LucasHill
+/types/tile-reduce @DenisCarriere
+/types/tilebelt @DenisCarriere
+/types/time-span @BendingBender, @mdvorscak
+/types/timelinejs @rolandzwaga
+/types/timelinejs3 @MikeMatusz
+/types/timer-machine @dolanmiu
+/types/timezone-js @bonnici
+/types/timezonecomplete @rogierschouten
+/types/tinder @pingec
+/types/tinycolor2 @M-Zuber, @geertjansen, @nvh
+/types/tinycopy @vvatanabe
+/types/tinymce @ipoul
+/types/title @fa7ad
+/types/tldjs @geoffreak
+/types/tmp @optical, @Perlmint
+/types/to-markdown @SuperPaintman
+/types/to-title-case-gouch @stpettersens
+/types/tooltipster @stephenlautier
+/types/topojson @ricardo-mello, @chenzhutian
+/types/torrent-stream @xstoudi
+/types/touch @mizunashi-mana, @BendingBender
+/types/touch-events @kevinb7
+/types/tough-cookie @leonard-thieu
+/types/tracking @pimterry
+/types/transducers-js @colinkahn, @dphilipson
+/types/transducers.js @dphilipson
+/types/traverse @newclear
+/types/trayballoon @korve
+/types/trim @skysteve
+/types/tspromise @soywiz
+/types/tunnel @BendingBender
+/types/turf/v2 @gcroteau
+/types/turf @gcroteau, @DenisCarriere
+/types/tv4 @Bartvds, @psnider
+/types/tween.js @Amos47, @sunetos, @jzarnikov
+/types/tweenjs @evilangelist
+/types/tweezer.js @praxxis
+/types/twig @soywiz, @enko
+/types/twilio @nickiannone, @ashleybrener
+/types/twit @Volox
+/types/twitter @chitoku-k
+/types/twix @j3ko
+/types/type-check @hansrwindhoff
+/types/type-detect @Bartvds
+/types/type-is @BendingBender
+/types/type-name @armorik83
+/types/typescript-deferred @DirtyHairy
+/types/tz-format @samverschueren
+/types/ua-parser-js @superduper, @legendecas
+/types/uglify-js @tkrotoff
+/types/uglifycss @blendsdk
+/types/ui-grid @btesser
+/types/ui-select @nkovacic
+/types/uid-safe @geoffreak
+/types/uikit @giovannicandido, @s0x
+/types/uk.co.workingedge.phonegap.plugin.launchnavigator @dpa99c
+/types/umbraco @DeCareSystemsIreland
+/types/umd @TeamworkGuy2
+/types/undertaker @tkqubo, @GiedriusGrabauskas
+/types/undertaker-registry @GiedriusGrabauskas
+/types/uniq @hansrwindhoff
+/types/uniqid @me
+/types/unique-random @Kuniwak
+/types/unity-webapi @jmvrbanac
+/types/universal-analytics @Bartvds, @DarkerTV
+/types/universal-router @jtmthf
+/types/unorm @chbrown
+/types/untildify @BendingBender
+/types/unused-filename @BendingBender
+/types/update-notifier @vvakame, @nchen63
+/types/uppercamelcase @plantain-00
+/types/urbanairship-cordova @Justin-Credible
+/types/uri-templates @Bartvds
+/types/urijs @RodneyJT, @xt0rted
+/types/url-assembler @wolfgang42
+/types/url-join @rogierschouten, @devrelm
+/types/url-regex @unindented
+/types/urlrouter @soywiz
+/types/urlsafe-base64 @tkrotoff
+/types/usage @pvomhoff
+/types/usb @underscorebrody
+/types/user-home @mhegazy
+/types/useragent @geoffreak
+/types/username @kayahr
+/types/util-deprecate @BendingBender
+/types/util.promisify @adamvoss
+/types/utils-merge @chrootsu
+/types/uuid @cjbarth
+/types/uuid-js @mhegazy
+/types/uuid-validate @HiromiShikata
+/types/uws @plantain-00
+/types/valdr @ilbertz
+/types/valdr-message @ilbertz
+/types/valerie @conficient
+/types/valid-url @stevehipwell
+/types/validate.js @HillTravis
+/types/validator @tgfjt, @chrootsu, @IOAyman, @louy, @kacepe
+/types/validatorjs @LKay
+/types/vanilla-tilt @BrunnerLivio
+/types/vast-client @jgainfort
+/types/vectorious @erikgerrits
+/types/vertx3-eventbus-client @oddeirik
+/types/vex-js @gdcohan
+/types/vexflow @rquiring
+/types/victory @asvetliakov, @snerks, @Havret
+/types/viewability-helper @lironzluf
+/types/viewerjs @lrh3321
+/types/viewporter @borisyankov
+/types/vimeo__player @denisyilmaz
+/types/vinyl/v0 @jedmao
+/types/vinyl @jedmao, @thorn0
+/types/vinyl-buffer @tkQubo
+/types/vinyl-paths @tkQubo
+/types/virtual-dom @chbrown
+/types/virtual-keyboard @bsurai
+/types/vis @MichaelBitard, @macleodbroad-wf, @adripanico, @seveves, @kaktus40, @mmaitre314
+/types/vision @AJamesPhillips
+/types/vitalsigns @cyrilschumacher
+/types/vivus @DanielRosenwasser, @lekhmanrus
+/types/voca @pine
+/types/voronoi-diagram @michaelneu
+/types/vue-i18n @aicest
+/types/vue-resource @kaorun343
+/types/wake_on_lan @SrTobi
+/types/wallabyjs @andrewconnell
+/types/wallpaper @BendingBender
+/types/wampy @KSDaemon
+/types/warning @cvle
+/types/watch @soywiz, @Perlmint
+/types/watchify @TeamworkGuy2
+/types/watchpack @e-cloud
+/types/waterline @arvitaly
+/types/watson-developer-cloud @waldo000000
+/types/waypoints @dominikbulaj, @Koloto
+/types/webappsec-credential-management @iainmcgin
+/types/webassembly-js-api @periklis
+/types/webcl @NCARalph
+/types/webcomponents.js @adidahiya
+/types/webdriverio @nmalaguti, @timbru31, @fsmedberg-tc, @tanvirislam06
+/types/webgme @phreed
+/types/webmidi @lostfictions
+/types/webpack @tkqubo, @bumbleblym, @bcherny, @tommytroylin, @mohsen1, @jcreamer898
+/types/webpack-bundle-analyzer @kryops
+/types/webpack-chain @eirikurn
+/types/webpack-dev-middleware @bumbleblym
+/types/webpack-dev-server @maestroh, @daveparslow
+/types/webpack-dotenv-plugin @kryops
+/types/webpack-env @use-strict
+/types/webpack-fail-plugin @deevus
+/types/webpack-hot-middleware @bumbleblym
+/types/webpack-merge @deevus
+/types/webpack-notifier @bumbleblym
+/types/webpack-stream @iclanton, @bumbleblym
+/types/webpack-validator @deevus
+/types/webrtc @nakakura
+/types/websocket @loyd, @flynetworks
+/types/webspeechapi @saschanaz
+/types/websql @TeamworkGuy2
+/types/webtorrent @niieani, @tlaziuk
+/types/webvr-api @lostfictions
+/types/week @sindrenm
+/types/weighted @ccitro
+/types/weixin-app @taoqf
+/types/wellknown @yairtawil
+/types/whatwg-streams @saschanaz
+/types/when @derekcicerone, @Nemo157
+/types/which @vvakame
+/types/wicg-mediasession @jucrouzet
+/types/wiiu @mzsm
+/types/window-or-global @vvakame
+/types/window-size @pmkary
+/types/windows-1251 @RomanGolovanov
+/types/windows-service @rogierschouten
+/types/winjs/v1 @adamhewitt627, @craigktreasure, @xirzec
+/types/winjs/v2 @adamhewitt627, @craigktreasure, @xirzec
+/types/winjs @adamhewitt627, @craigktreasure, @xirzec
+/types/winreg @RX14, @BobBuehler
+/types/winrt-uwp @saschanaz, @taylor224
+/types/winston @bonnici, @codeanimal, @DABH
+/types/wiring-pi @NoHomey
+/types/wnumb @acoreyj
+/types/wonder-commonlib @yyc-git
+/types/wonder-frp @yyc-git
+/types/wonder.js @yyc-git
+/types/words-to-numbers @James-Frowen
+/types/wrap-ansi @kayahr
+/types/wrench @soywiz
+/types/write-file-atomic @BendingBender
+/types/write-json-file @DenisCarriere
+/types/ws @loyd, @elithrar
+/types/wx-js-sdk-dt @agasbzj
+/types/xadesjs @microshine
+/types/xdg-basedir @tlaziuk
+/types/xml @YuJianrong
+/types/xml2js @michelsalib, @jasonrm, @ccurrens, @edwardhinkle
+/types/xml2json @dolanmiu
+/types/xmldoc @Xstoudi, @ajsheehan
+/types/xmldom @tkqubo
+/types/xmltojson @traviscrowe
+/types/xmpp__jid @PJakcson
+/types/xregexp @Bartvds, @jfahrenkrug, @sigo
+/types/xrm/v7 @daryllabar
+/types/xrm @daryllabar, @clownwilleatme
+/types/xsockets @pushplay
+/types/xterm @blink1073, @LucianBuzzo
+/types/yandex-money-sdk @chrootsu
+/types/yargs @poelstra, @mizunashi-mana, @pushplay, @jeffkenney
+/types/yayson @Codesleuth
+/types/ydn-db @yathit, @gabrielmaldi
+/types/yeoman-test @ikatyang
+/types/yfiles @yGuy
+/types/yog-bigpipe @ssddi456
+/types/yog-log @ssddi456
+/types/yog2-kernel @ssddi456
+/types/youtube @JoshuaKGoldberg, @eliotfallon213
+/types/yui @giabao
+/types/z-schema @pgonzal
+/types/zen-observable @aicest
+/types/zeroclipboard/v1 @ejsmith, @niemyjski, @balassy, @leonyu
+/types/zeroclipboard @ejsmith, @niemyjski, @balassy, @leonyu
+/types/zetapush-js @ghoullier
+/types/zip.js @lgrignon
+/types/zui @yuanxu
+/types/zynga-scroller @haskellcamargo
diff --git a/scripts/material-ui/README.md b/scripts/material-ui/README.md
new file mode 100644
index 0000000000..8fe5206a81
--- /dev/null
+++ b/scripts/material-ui/README.md
@@ -0,0 +1,15 @@
+# Generator for material-ui
+
+## Usage
+
+```sh
+node scripts/material-ui/generate.js
+```
+
+### GitHub API Limitation
+
+The error `GitHub response: 401 Unauthorized` is due to [Rate Limiting | GitHub API v3 \| GitHub Developer Guide](https://developer.github.com/v3/#rate-limiting). In order to avoid this, it is necessary to publish [Personal access token](https://github.com/settings/tokens) and specify it as an environment variable.
+
+```sh
+GITHUB_ACCESS_TOKEN=XXXXX node scripts/material-ui/generate.js
+```
diff --git a/scripts/material-ui/generate.js b/scripts/material-ui/generate.js
new file mode 100644
index 0000000000..06e6983a44
--- /dev/null
+++ b/scripts/material-ui/generate.js
@@ -0,0 +1,147 @@
+const {get} = require('https')
+const {readdir, readFile, writeFile} = require('fs')
+const {join, extname, basename, dirname, relative} = require('path')
+
+const token = process.env.GITHUB_ACCESS_TOKEN || ''
+
+const toMixedCase = (name) => {
+ let dist = name[0].toUpperCase()
+ for (let i = 1; i < name.length; i++) {
+ const c = name[i]
+ if (c !== '-') {
+ dist += c
+ continue
+ }
+ i++
+ dist += name[i].toUpperCase()
+ }
+ return dist
+}
+
+const github = (path) => new Promise((resolve, reject) => {
+ get({
+ headers: {'user-agent': 'DefinitelyTyped/material-ui/generate'},
+ host: 'api.github.com',
+ path,
+ }, (res) => {
+ if ((res.statusCode / 100 >> 0) != 2) {
+ reject(`GitHub response: ${res.statusCode} ${res.statusMessage}`)
+ return
+ }
+ let data = '';
+ res
+ .on('data', (chunk) => data += chunk)
+ .on('end', () => resolve(JSON.parse(data)))
+ }).on('error', reject)
+})
+
+const categories = () => github(`/repos/callemall/material-ui/contents/src/svg-icons?ref=master&access_token=${token}`)
+
+const contents = (path) => github(`/repos/callemall/material-ui/contents/${path}?ref=master&access_token=${token}`)
+
+const collator = new Intl.Collator()
+
+const resolvePath = (filename) => join(__dirname, '../../types/material-ui', filename)
+
+const readText = (filename) => new Promise((resolve, reject) => {
+ readFile(resolvePath(filename), 'utf8', (err, data) => {
+ if (err != null) {
+ reject(err)
+ return
+ }
+ resolve(data)
+ })
+})
+
+const writeText = (filename, text) => new Promise((resolve, reject) => {
+ writeFile(resolvePath(filename), text, 'utf8', (err) => {
+ if (err != null) {
+ reject(err)
+ return
+ }
+ resolve()
+ })
+})
+
+const inject = (content) => {
+ content.category = this.name
+ return content
+}
+
+const rMark = /(\/{2} \{{3})[\s\S]*?(\/{2} \}{3})/g
+
+categories()
+ .then((cats) => Promise.all(Array.prototype.map.call(cats, (cat) => contents(cat.path)
+ .then((cons) => Array.prototype.map.call(cons, (con) => {
+ con.category = cat.name
+ return con
+ }))
+ )))
+ .then((contentsList) => Array.prototype.concat.apply([], contentsList)
+ .map((content) => {
+ const {path} = content
+ const name = basename(path, extname(path))
+ content.id = join(relative('src', dirname(path)), name)
+ content.className = toMixedCase(content.category) + toMixedCase(name)
+ return content
+ })
+ .sort((a, b) => collator.compare(a.id, b.id))
+ .reduce((prev, content) => {
+ const {dts, test} = prev
+ dts.individuals.push(`declare module 'material-ui/${content.id}' {
+ export import ${content.className} = __MaterialUI.SvgIcon;
+ export default ${content.className};
+}`)
+ dts.summarizeds.push(` export import ${content.className} = __MaterialUI.SvgIcon; // require('material-ui/${content.id}');`)
+
+ test.individuals.push(`import _${content.className} from 'material-ui/${content.id}';`)
+ test.summarizeds.push(` ${content.className},`)
+ return prev
+ }, {
+ dts: {individuals: [], summarizeds: []},
+ test: {individuals: [], summarizeds: []},
+ })
+)
+ .then(({dts, test}) => {
+ return Promise.all([
+ (() => {
+ const {individuals, summarizeds} = dts
+ const file = 'index.d.ts'
+ let index = 0
+ return readText(file)
+ .then((script) => writeText(file, script.replace(rMark, (_, p1, p2) => {
+ let text = ''
+ switch (index) {
+ case 0:
+ text = individuals.join('\n\n')
+ break
+ case 1:
+ text = summarizeds.join('\n')
+ break
+ }
+ index++
+ return p1 + '\n' + text + '\n' + p2
+ })))
+ })(),
+ (() => {
+ const {individuals, summarizeds} = test
+ const file = join('material-ui-tests.tsx')
+ let index = 0
+ return readText(file)
+ .then((script) => writeText(file, script.replace(rMark, (_, p1, p2) => {
+ let text = ''
+ switch (index) {
+ case 0:
+ text = individuals.join('\n')
+ break
+ case 1:
+ text = summarizeds.join('\n')
+ break
+ }
+ index++
+ return p1 + '\n' + text + '\n' + p2
+ })))
+ })(),
+ ])
+ })
+ .catch((err) => console.error(err))
diff --git a/types/activex-scripting/activex-scripting-tests.ts b/types/activex-scripting/activex-scripting-tests.ts
index cc14a421ff..3be8e1ccf5 100644
--- a/types/activex-scripting/activex-scripting-tests.ts
+++ b/types/activex-scripting/activex-scripting-tests.ts
@@ -1,7 +1,7 @@
// source -- https://msdn.microsoft.com/en-us/library/ebkhfaaz.aspx
// Generates a string describing the drive type of a given Drive object.
-let showDriveType = (drive: Scripting.Drive) => {
+function showDriveType(drive: Scripting.Drive) {
switch (drive.DriveType) {
case Scripting.DriveTypeConst.Removable:
return 'Removeable';
@@ -16,15 +16,15 @@ let showDriveType = (drive: Scripting.Drive) => {
default:
return 'Unknown';
}
-};
+}
// Generates a string describing the attributes of a file or folder.
-let showFileAttributes = (file: Scripting.File) => {
- let attr = file.Attributes;
+function showFileAttributes(file: Scripting.File) {
+ const attr = file.Attributes;
if (attr === 0) {
return 'Normal';
}
- let attributeStrings: string[] = [];
+ const attributeStrings: string[] = [];
if (attr & Scripting.FileAttribute.Directory) { attributeStrings.push('Directory'); }
if (attr & Scripting.FileAttribute.ReadOnly) { attributeStrings.push('Read-only'); }
if (attr & Scripting.FileAttribute.Hidden) { attributeStrings.push('Hidden'); }
@@ -34,22 +34,22 @@ let showFileAttributes = (file: Scripting.File) => {
if (attr & Scripting.FileAttribute.Alias) { attributeStrings.push('Alias'); }
if (attr & Scripting.FileAttribute.Compressed) { attributeStrings.push('Compressed'); }
return attributeStrings.join(',');
-};
+}
// source --https://msdn.microsoft.com/en-us/library/ts2t8ybh(v=vs.84).aspx
-let showFreeSpace = (drvPath: string) => {
- let fso = new ActiveXObject('Scripting.FileSystemObject');
- let d = fso.GetDrive(fso.GetDriveName(drvPath));
+function showFreeSpace(drvPath: string) {
+ const fso = new ActiveXObject('Scripting.FileSystemObject');
+ const d = fso.GetDrive(fso.GetDriveName(drvPath));
let s = 'Drive ' + drvPath + ' - ';
s += d.VolumeName + '
';
s += 'Free Space: ' + d.FreeSpace / 1024 + ' Kbytes';
return (s);
-};
+}
// source -- https://msdn.microsoft.com/en-us/library/kaf6yaft(v=vs.84).aspx
-let getALine = (filespec: string) => {
- let fso = new ActiveXObject('Scripting.FileSystemObject');
- let file = fso.OpenTextFile(filespec, Scripting.IOMode.ForReading, false);
+function getALine(filespec: string) {
+ const fso = new ActiveXObject('Scripting.FileSystemObject');
+ const file = fso.OpenTextFile(filespec, Scripting.IOMode.ForReading, false);
let s = '';
while (!file.AtEndOfLine) {
@@ -57,4 +57,4 @@ let getALine = (filespec: string) => {
}
file.Close();
return (s);
-};
+}
diff --git a/types/activex-wia/activex-wia-tests.ts b/types/activex-wia/activex-wia-tests.ts
index 8384291f5d..b765083870 100644
--- a/types/activex-wia/activex-wia-tests.ts
+++ b/types/activex-wia/activex-wia-tests.ts
@@ -7,7 +7,7 @@ let img = commonDialog.ShowAcquireImage();
// when DefinitelyTyped supports Typescript 2.4 -- end of July 2017, replace these:
let jpegFormatID = '{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}';
if (img.FormatID !== jpegFormatID) {
- let ip = new ActiveXObject('WIA.ImageProcess');
+ const ip = new ActiveXObject('WIA.ImageProcess');
ip.Filters.Add(ip.FilterInfos.Item('Convert').FilterID);
ip.Filters.Item(1).Properties.Item('FormatID').Value = jpegFormatID;
img = ip.Apply(img);
@@ -24,8 +24,8 @@ if (img.FormatID !== jpegFormatID) {
let dev = commonDialog.ShowSelectDevice();
if (dev.Type === WIA.WiaDeviceType.CameraDeviceType) {
// when DefinitelyTyped supports Typescript 2.4 -- end of July 2017, replace these:
- let commandID = '{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}';
- let itm = dev.ExecuteCommand(commandID);
+ const commandID = '{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}';
+ const itm = dev.ExecuteCommand(commandID);
// with this:
// let itm = dev.ExecuteCommand(WIA.CommandID.wiaCommandTakePicture);
@@ -36,7 +36,7 @@ dev = commonDialog.ShowSelectDevice();
let e = new Enumerator(dev.Properties); // no foreach over ActiveX collections
e.moveFirst();
while (!e.atEnd()) {
- let p = e.item();
+ const p = e.item();
let s = p.Name + ' (' + p.PropertyID + ') = ';
if (p.IsVector) {
s += '[vector of data]';
@@ -60,7 +60,7 @@ while (!e.atEnd()) {
} else {
s += ' [valid values include: ';
}
- let count = p.SubTypeValues.Count;
+ const count = p.SubTypeValues.Count;
for (let i = 1; i <= count; i++) {
s += p.SubTypeValues.Item(i);
if (i < count) {
diff --git a/types/alertify/index.d.ts b/types/alertify/index.d.ts
index fa71118381..1eb2699f6f 100644
--- a/types/alertify/index.d.ts
+++ b/types/alertify/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for alertify 0.3.11
// Project: http://fabien-d.github.io/alertify.js/
-// Definitions by: John Jeffery
+// Definitions by: John Jeffery
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
declare var alertify: alertify.IAlertifyStatic;
diff --git a/types/alexa-sdk/alexa-sdk-tests.ts b/types/alexa-sdk/alexa-sdk-tests.ts
index c384bf194d..c77bc93091 100644
--- a/types/alexa-sdk/alexa-sdk-tests.ts
+++ b/types/alexa-sdk/alexa-sdk-tests.ts
@@ -1,13 +1,13 @@
import * as Alexa from "alexa-sdk";
const handler = (event: Alexa.RequestBody, context: Alexa.Context, callback: () => void) => {
- let alexa = Alexa.handler(event, context);
+ const alexa = Alexa.handler(event, context);
alexa.resources = {};
alexa.registerHandlers(handlers);
alexa.execute();
};
-let handlers: Alexa.Handlers = {
+const handlers: Alexa.Handlers = {
'LaunchRequest': function() {
this.emit('SayHello');
},
diff --git a/types/algebra.js/algebra.js-tests.ts b/types/algebra.js/algebra.js-tests.ts
index 0dc7f260e7..7b6cebfab8 100644
--- a/types/algebra.js/algebra.js-tests.ts
+++ b/types/algebra.js/algebra.js-tests.ts
@@ -5,9 +5,9 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
expr = expr.subtract(3);
expr = expr.add("x");
expr.toString();
- let eq = new Equation(expr, 4);
+ const eq = new Equation(expr, 4);
eq.toString();
- let x = eq.solveFor("x");
+ const x = eq.solveFor("x");
x.toString();
}
{
@@ -29,7 +29,7 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
x.toString();
x = x.add("y");
x.toString();
- let otherExp = new Expression("x").add(6);
+ const otherExp = new Expression("x").add(6);
x = x.add(otherExp);
x.toString();
@@ -54,10 +54,10 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
exp = exp.add("y");
exp = exp.add(3);
exp.toString();
- let sum = exp.summation("x", 3, 6);
+ const sum = exp.summation("x", 3, 6);
sum.toString();
exp = new Expression("x").add(2);
- let exp3 = exp.pow(3);
+ const exp3 = exp.pow(3);
"(" + exp.toString() + ")^3 = " + exp3.toString();
let expr = new Expression("x");
@@ -66,14 +66,14 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
expr = expr.add("y");
expr = expr.add(new Fraction(1, 3));
expr.toString();
- let answer1 = expr.eval({ x: 2 });
- let answer2 = expr.eval({ x: 2, y: new Fraction(3, 4) });
+ const answer1 = expr.eval({ x: 2 });
+ const answer2 = expr.eval({ x: 2, y: new Fraction(3, 4) });
answer1.toString();
answer2.toString();
expr = new Expression("x").add(2);
expr.toString();
- let sub = new Expression("y").add(4);
- let answer = expr.eval({ x: sub });
+ const sub = new Expression("y").add(4);
+ const answer = expr.eval({ x: sub });
answer.toString();
exp = new Expression("x").add(2);
exp.toString();
@@ -91,23 +91,23 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
exp.toString();
exp = exp.simplify();
exp.toString();
- let z = new Expression("z");
- let eq1 = new Equation(z.subtract(4).divide(9), z.add(6));
+ const z = new Expression("z");
+ const eq1 = new Equation(z.subtract(4).divide(9), z.add(6));
eq1.toString();
- let eq2 = new Equation(z.add(4).multiply(9), 6);
+ const eq2 = new Equation(z.add(4).multiply(9), 6);
eq2.toString();
- let eq3 = new Equation(z.divide(2).multiply(7), new Fraction(1, 4));
+ const eq3 = new Equation(z.divide(2).multiply(7), new Fraction(1, 4));
eq3.toString();
}
{
- let x1 = parse("1/5 * x + 2/15");
- let x2 = parse("1/7 * x + 4");
+ const x1 = parse("1/5 * x + 2/15");
+ const x2 = parse("1/7 * x + 4");
let eq = new Equation(x1 as Expression, x2 as Expression);
eq.toString();
- let answer = eq.solveFor("x");
+ const answer = eq.solveFor("x");
"x = " + answer.toString();
- let expr1 = parse("1/4 * x + 5/4");
- let expr2 = parse("3 * y - 12/5");
+ const expr1 = parse("1/4 * x + 5/4");
+ const expr2 = parse("3 * y - 12/5");
eq = new Equation(expr1 as Expression, expr2 as Expression);
eq.toString();
let xAnswer = eq.solveFor("x");
@@ -116,14 +116,14 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
"y = " + yAnswer.toString();
let n1 = parse("x + 5") as Expression;
let n2 = parse("x - 3/4") as Expression;
- let quad = new Equation(n1.multiply(n2), 0);
+ const quad = new Equation(n1.multiply(n2), 0);
quad.toString();
let answers = quad.solveFor("x");
"x = " + answers.toString();
n1 = parse("x + 2") as Expression;
n2 = parse("x + 3") as Expression;
- let n3 = parse("x + 4") as Expression;
- let cubic = new Equation(n1.multiply(n2).multiply(n3), 0);
+ const n3 = parse("x + 4") as Expression;
+ const cubic = new Equation(n1.multiply(n2).multiply(n3), 0);
cubic.toString();
answers = cubic.solveFor("x");
"x = " + answers.toString();
@@ -143,20 +143,20 @@ import { Equation, Expression, Fraction, parse, toTex } from 'algebra.js';
exp.toString();
}
{
- let eq = parse("x^2 + 4 * x + 4 = 0") as Equation;
+ const eq = parse("x^2 + 4 * x + 4 = 0") as Equation;
eq.toString();
- let ans = eq.solveFor("x");
+ const ans = eq.solveFor("x");
"x = " + ans.toString();
- let a = new Expression("x").pow(2);
- let b = new Expression("x").multiply(new Fraction(5, 4));
- let c = new Fraction(-21, 4);
- let expr = a.add(b).add(c);
- let quad = new Equation(expr, 0);
+ const a = new Expression("x").pow(2);
+ const b = new Expression("x").multiply(new Fraction(5, 4));
+ const c = new Fraction(-21, 4);
+ const expr = a.add(b).add(c);
+ const quad = new Equation(expr, 0);
toTex(quad);
- let answers = quad.solveFor("x");
+ const answers = quad.solveFor("x");
toTex(answers);
- let lambda = new Expression("lambda").add(3).divide(4);
- let Phi = new Expression("Phi").subtract(new Fraction(1, 5)).add(lambda);
+ const lambda = new Expression("lambda").add(3).divide(4);
+ const Phi = new Expression("Phi").subtract(new Fraction(1, 5)).add(lambda);
toTex(lambda);
toTex(Phi);
}
diff --git a/types/amplify/amplify-tests.ts b/types/amplify/amplify-tests.ts
index 62b00052dd..1277e5e2a3 100644
--- a/types/amplify/amplify-tests.ts
+++ b/types/amplify/amplify-tests.ts
@@ -168,19 +168,24 @@ amplify.request("twitter-mentions", { user: "amplifyjs" });
// Example:
const appEnvelopeDecoder: amplify.Decoder = (data, status, xhr, success, error) => {
- if (data.status === "success") {
- success(data.data);
- } else if (data.status === "fail" || data.status === "error") {
- error(data.message, data.status);
- } else {
- error(data.message, "fatal");
+ switch (data.status) {
+ case "success":
+ success(data.data);
+ break;
+ case "fail":
+ case "error":
+ error(data.message, data.status);
+ break;
+ default:
+ error(data.message, "fatal");
+ break;
}
};
// a new decoder can be added to the amplifyDecoders interface
declare module "amplify" {
interface Decoders {
- appEnvelope: amplify.Decoder;
+ appEnvelope: Decoder;
}
}
@@ -213,12 +218,17 @@ amplify.request.define("decoderSingleExample", "ajax", {
url: "/myAjaxUrl",
type: "POST",
decoder(data, status, xhr, success, error) {
- if (data.status === "success") {
- success(data.data);
- } else if (data.status === "fail" || data.status === "error") {
- error(data.message, data.status);
- } else {
- error(data.message, "fatal");
+ switch (data.status) {
+ case "success":
+ success(data.data);
+ break;
+ case "fail":
+ case "error":
+ error(data.message, data.status);
+ break;
+ default:
+ error(data.message, "fatal");
+ break;
}
}
});
diff --git a/types/amqplib/tslint.json b/types/amqplib/tslint.json
index 4f44991c3c..bfc9508c49 100644
--- a/types/amqplib/tslint.json
+++ b/types/amqplib/tslint.json
@@ -1,6 +1,8 @@
{
"extends": "dtslint/dt.json",
"rules": {
- "no-empty-interface": false
+ // All are TODOs
+ "no-empty-interface": false,
+ "prefer-const": false
}
}
diff --git a/types/angular-block-ui/angular-block-ui-tests.ts b/types/angular-block-ui/angular-block-ui-tests.ts
index 4b3903f9cc..58547fff4d 100644
--- a/types/angular-block-ui/angular-block-ui-tests.ts
+++ b/types/angular-block-ui/angular-block-ui-tests.ts
@@ -37,5 +37,5 @@ app.controller('Ctrl', ($scope: ng.IScope, blockUI: angular.blockUI.BlockUIServi
blockUI.reset();
blockUI.message("Hello Types");
blockUI.done();
- let b: boolean = blockUI.isBlocking();
+ const b: boolean = blockUI.isBlocking();
});
diff --git a/types/angular-block-ui/index.d.ts b/types/angular-block-ui/index.d.ts
index 7733bc72f7..47ba9902b9 100644
--- a/types/angular-block-ui/index.d.ts
+++ b/types/angular-block-ui/index.d.ts
@@ -70,7 +70,7 @@ declare module 'angular' {
* @param {angular.IRequestConfig} config - the Angular request config object.
*
*/
- requestFilter?(config: angular.IRequestConfig): (string | boolean);
+ requestFilter?(config: IRequestConfig): (string | boolean);
/**
* When the module is started it will inject the main block element
diff --git a/types/angular-cookies/index.d.ts b/types/angular-cookies/index.d.ts
index 502e83a2e9..dc6fd913e9 100644
--- a/types/angular-cookies/index.d.ts
+++ b/types/angular-cookies/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for Angular JS (ngCookies module) 1.4
// Project: http://angularjs.org
-// Definitions by: Diego Vilar , Anthony Ciccarello
+// Definitions by: Diego Vilar , Anthony Ciccarello
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/angular-gridster/index.d.ts b/types/angular-gridster/index.d.ts
index 3d4fbbe799..22c02b4050 100644
--- a/types/angular-gridster/index.d.ts
+++ b/types/angular-gridster/index.d.ts
@@ -89,13 +89,13 @@ declare module "angular" {
handles?: string[];
// optional callback fired when drag is started
- start?(event: angular.IAngularEvent, $element: angular.IAugmentedJQuery, options: any): void;
+ start?(event: IAngularEvent, $element: IAugmentedJQuery, options: any): void;
// optional callback fired when item is resized
- resize?(event: angular.IAngularEvent, $element: angular.IAugmentedJQuery, options: any): void;
+ resize?(event: IAngularEvent, $element: IAugmentedJQuery, options: any): void;
// optional callback fired when item is finished dragging
- stop?(event: angular.IAngularEvent, $element: angular.IAugmentedJQuery, options: any): void;
+ stop?(event: IAngularEvent, $element: IAugmentedJQuery, options: any): void;
};
// options to pass to draggable handler
@@ -113,13 +113,13 @@ declare module "angular" {
handle?: string;
// optional callback fired when drag is started
- start?(event: angular.IAngularEvent, $element: angular.IAugmentedJQuery, options: any): void;
+ start?(event: IAngularEvent, $element: IAugmentedJQuery, options: any): void;
// optional callback fired when item is moved,
- drag?(event: angular.IAngularEvent, $element: angular.IAugmentedJQuery, options: any): void;
+ drag?(event: IAngularEvent, $element: IAugmentedJQuery, options: any): void;
// optional callback fired when item is finished dragging
- stop?(event: angular.IAngularEvent, $element: angular.IAugmentedJQuery, options: any): void;
+ stop?(event: IAngularEvent, $element: IAugmentedJQuery, options: any): void;
};
}
diff --git a/types/angular-material/angular-material-tests.ts b/types/angular-material/angular-material-tests.ts
index 5766a81975..79f72f0b5d 100644
--- a/types/angular-material/angular-material-tests.ts
+++ b/types/angular-material/angular-material-tests.ts
@@ -49,7 +49,7 @@ myApp.config((
return c * t * t + b;
},
easeFnIndeterminate(t, b, c, d) {
- return c * Math.pow(2, 10 * (t / d - 1)) + b;
+ return c * Math.pow(2, (t / d - 1) * 10) + b;
}
});
});
diff --git a/types/angular-material/index.d.ts b/types/angular-material/index.d.ts
index 36a43329f6..a8808f92ff 100644
--- a/types/angular-material/index.d.ts
+++ b/types/angular-material/index.d.ts
@@ -18,7 +18,7 @@ declare module 'angular' {
interface IBottomSheetOptions {
templateUrl?: string;
template?: string;
- scope?: angular.IScope; // default: new child scope
+ scope?: IScope; // default: new child scope
preserveScope?: boolean; // default: false
controller?: string | Injectable;
locals?: { [index: string]: any };
@@ -28,12 +28,12 @@ declare module 'angular' {
escapeToClose?: boolean;
resolve?: ResolveObject;
controllerAs?: string;
- parent?: ((scope: angular.IScope, element: JQuery) => Element | JQuery) | string | Element | JQuery; // default: root node
+ parent?: ((scope: IScope, element: JQuery) => Element | JQuery) | string | Element | JQuery; // default: root node
disableParentScroll?: boolean; // default: true
}
interface IBottomSheetService {
- show(options: IBottomSheetOptions): angular.IPromise;
+ show(options: IBottomSheetOptions): IPromise;
hide(response?: any): void;
cancel(response?: any): void;
}
@@ -47,7 +47,7 @@ declare module 'angular' {
templateUrl(templateUrl?: string): T;
template(template?: string): T;
targetEvent(targetEvent?: MouseEvent): T;
- scope(scope?: angular.IScope): T; // default: new child scope
+ scope(scope?: IScope): T; // default: new child scope
preserveScope(preserveScope?: boolean): T; // default: false
disableParentScroll(disableParentScroll?: boolean): T; // default: true
hasBackdrop(hasBackdrop?: boolean): T; // default: true
@@ -98,7 +98,7 @@ declare module 'angular' {
targetEvent?: MouseEvent;
openFrom?: any;
closeTo?: any;
- scope?: angular.IScope; // default: new child scope
+ scope?: IScope; // default: new child scope
preserveScope?: boolean; // default: false
disableParentScroll?: boolean; // default: true
hasBackdrop?: boolean; // default: true
@@ -111,24 +111,24 @@ declare module 'angular' {
resolve?: ResolveObject;
controllerAs?: string;
parent?: string | Element | JQuery; // default: root node
- onShowing?(scope: angular.IScope, element: JQuery): void;
- onComplete?(scope: angular.IScope, element: JQuery): void;
- onRemoving?(element: JQuery, removePromise: angular.IPromise): void;
+ onShowing?(scope: IScope, element: JQuery): void;
+ onComplete?(scope: IScope, element: JQuery): void;
+ onRemoving?(element: JQuery, removePromise: IPromise): void;
skipHide?: boolean;
multiple?: boolean;
fullscreen?: boolean; // default: false
}
interface IDialogService {
- show(dialog: IDialogOptions | IAlertDialog | IConfirmDialog | IPromptDialog): angular.IPromise;
+ show(dialog: IDialogOptions | IAlertDialog | IConfirmDialog | IPromptDialog): IPromise;
confirm(): IConfirmDialog;
alert(): IAlertDialog;
prompt(): IPromptDialog;
- hide(response?: any): angular.IPromise;
+ hide(response?: any): IPromise;
cancel(response?: any): void;
}
- type IIcon = (id: string) => angular.IPromise; // id is a unique ID or URL
+ type IIcon = (id: string) => IPromise; // id is a unique ID or URL
interface IIconProvider {
icon(id: string, url: string, viewBoxSize?: number): IIconProvider; // viewBoxSize default: 24
@@ -141,16 +141,16 @@ declare module 'angular' {
type IMedia = (media: string) => boolean;
interface ISidenavObject {
- toggle(): angular.IPromise;
- open(): angular.IPromise;
- close(): angular.IPromise;
+ toggle(): IPromise;
+ open(): IPromise;
+ close(): IPromise;
isOpen(): boolean;
isLockedOpen(): boolean;
onClose(onClose: () => void): void;
}
interface ISidenavService {
- (component: string, enableWait: boolean): angular.IPromise;
+ (component: string, enableWait: boolean): IPromise;
(component: string): ISidenavObject;
}
@@ -175,7 +175,7 @@ declare module 'angular' {
templateUrl?: string;
template?: string;
autoWrap?: boolean;
- scope?: angular.IScope; // default: new child scope
+ scope?: IScope; // default: new child scope
preserveScope?: boolean; // default: false
hideDelay?: number | false; // default (ms): 3000
position?: string; // any combination of 'bottom'/'left'/'top'/'right'/'fit'; default: 'bottom left'
@@ -189,8 +189,8 @@ declare module 'angular' {
}
interface IToastService {
- show(optionsOrPreset: IToastOptions | IToastPreset): angular.IPromise;
- showSimple(content: string): angular.IPromise;
+ show(optionsOrPreset: IToastOptions | IToastPreset): IPromise;
+ showSimple(content: string): IPromise;
simple(): ISimpleToastPreset;
build(): IToastPreset;
updateContent(newContent: string): void;
@@ -306,7 +306,7 @@ declare module 'angular' {
}
interface IMenuService {
- hide(response?: any, options?: any): angular.IPromise;
+ hide(response?: any, options?: any): IPromise;
}
interface IColorPalette {
@@ -366,19 +366,19 @@ declare module 'angular' {
isAttached: boolean;
panelContainer: JQuery;
panelEl: JQuery;
- open(): angular.IPromise;
- close(): angular.IPromise;
- attach(): angular.IPromise;
- detach(): angular.IPromise;
- show(): angular.IPromise;
- hide(): angular.IPromise;
+ open(): IPromise;
+ close(): IPromise;
+ attach(): IPromise;
+ detach(): IPromise;
+ show(): IPromise;
+ hide(): IPromise;
destroy(): void;
addClass(newClass: string): void;
removeClass(oldClass: string): void;
toggleClass(toggleClass: string): void;
updatePosition(position: IPanelPosition): void;
- registerInterceptor(type: string, callback: () => angular.IPromise): IPanelRef;
- removeInterceptor(type: string, callback: () => angular.IPromise): IPanelRef;
+ registerInterceptor(type: string, callback: () => IPromise): IPanelRef;
+ removeInterceptor(type: string, callback: () => IPromise): IPanelRef;
removeAllInterceptors(type?: string): IPanelRef;
}
@@ -407,7 +407,7 @@ declare module 'angular' {
interface IPanelService {
create(opt_config: IPanelConfig): IPanelRef;
- open(opt_config: IPanelConfig): angular.IPromise;
+ open(opt_config: IPanelConfig): IPromise;
newPanelPosition(): IPanelPosition;
newPanelAnimation(): IPanelAnimation;
xPosition: {
diff --git a/types/angular-mocks/index.d.ts b/types/angular-mocks/index.d.ts
index 14571e2eba..ac9e6cece3 100644
--- a/types/angular-mocks/index.d.ts
+++ b/types/angular-mocks/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for Angular JS (ngMock, ngMockE2E module) 1.5
// Project: http://angularjs.org
-// Definitions by: Diego Vilar , Tony Curtis
+// Definitions by: Diego Vilar , Tony Curtis
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/angular-oauth2/index.d.ts b/types/angular-oauth2/index.d.ts
index 1c5e3ac6ed..ef11ee3680 100644
--- a/types/angular-oauth2/index.d.ts
+++ b/types/angular-oauth2/index.d.ts
@@ -27,9 +27,9 @@ declare module 'angular' {
interface OAuth {
isAuthenticated(): boolean;
- getAccessToken(data: Data, options?: any): angular.IPromise;
- getRefreshToken(data?: Data, options?: any): angular.IPromise;
- revokeToken(data?: Data, options?: any): angular.IPromise;
+ getAccessToken(data: Data, options?: any): IPromise;
+ getRefreshToken(data?: Data, options?: any): IPromise;
+ revokeToken(data?: Data, options?: any): IPromise;
}
interface OAuthTokenConfig {
diff --git a/types/angular-pdfjs-viewer/index.d.ts b/types/angular-pdfjs-viewer/index.d.ts
index 392164bb00..e9c41ef1fe 100644
--- a/types/angular-pdfjs-viewer/index.d.ts
+++ b/types/angular-pdfjs-viewer/index.d.ts
@@ -8,7 +8,7 @@ import * as angular from 'angular';
declare module 'angular' {
namespace pdfjsViewer {
- interface ConfigProvider extends angular.IServiceProvider {
+ interface ConfigProvider extends IServiceProvider {
setWorkerSrc(src: string): void;
setCmapDir(dir: string): void;
setImageDir(dir: string): void;
diff --git a/types/angular-resource/angular-resource-tests.ts b/types/angular-resource/angular-resource-tests.ts
index c5b71ee39f..4f3a1db1dc 100644
--- a/types/angular-resource/angular-resource-tests.ts
+++ b/types/angular-resource/angular-resource-tests.ts
@@ -32,7 +32,7 @@ interface IArticleResourceClass extends ng.resource.IResourceClass('/articles/:id', null, {
+ const articleResource: IArticleResourceClass = $resource('/articles/:id', null, {
publish : publishDescriptor,
unpublish : {
method: 'POST'
@@ -51,7 +51,7 @@ function MainController($resource: ng.resource.IResourceService): void {
articleResource.unpublish({ id: 1 });
// IResourceClass.get() will be automatically available here
- let article: IArticleResource = articleResource.get({id: 1}, function success(): void {
+ const article: IArticleResource = articleResource.get({id: 1}, function success(): void {
// Again, default + custom action here...
article.title = 'New Title';
article.$save();
diff --git a/types/angular-resource/index.d.ts b/types/angular-resource/index.d.ts
index 4bdc8cc007..13be56637e 100644
--- a/types/angular-resource/index.d.ts
+++ b/types/angular-resource/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for Angular JS (ngResource module) 1.5
// Project: http://angularjs.org
-// Definitions by: Diego Vilar , Michael Jess
+// Definitions by: Diego Vilar , Michael Jess
// Definitions: https://github.com/daptiv/DefinitelyTyped
// TypeScript Version: 2.3
@@ -74,10 +74,10 @@ declare module 'angular' {
params?: any;
url?: string;
isArray?: boolean;
- transformRequest?: angular.IHttpRequestTransformer | angular.IHttpRequestTransformer[];
- transformResponse?: angular.IHttpResponseTransformer | angular.IHttpResponseTransformer[];
+ transformRequest?: IHttpRequestTransformer | IHttpRequestTransformer[];
+ transformResponse?: IHttpResponseTransformer | IHttpResponseTransformer[];
headers?: any;
- cache?: boolean | angular.ICacheObject;
+ cache?: boolean | ICacheObject;
/**
* Note: In contrast to $http.config, promises are not supported in $resource, because the same value
* would be used for multiple requests. If you are looking for a way to cancel requests, you should
@@ -118,15 +118,15 @@ declare module 'angular' {
// it's gonna be considered data if the action method is POST, PUT or
// PATCH (in other words, methods with body). Otherwise, it's going
// to be considered as parameters to the request.
- // https://github.com/angular/angular.js/blob/v1.2.0/src/ngResource/resource.js#L461-L465
+ // https://github.com/angular/js/blob/v1.2.0/src/ngResource/resource.js#L461-L465
//
// Only those methods with an HTTP body do have 'data' as first parameter:
- // https://github.com/angular/angular.js/blob/v1.2.0/src/ngResource/resource.js#L463
+ // https://github.com/angular/js/blob/v1.2.0/src/ngResource/resource.js#L463
// More specifically, those methods are POST, PUT and PATCH:
- // https://github.com/angular/angular.js/blob/v1.2.0/src/ngResource/resource.js#L432
+ // https://github.com/angular/js/blob/v1.2.0/src/ngResource/resource.js#L432
//
// Also, static calls always return the IResource (or IResourceArray) retrieved
- // https://github.com/angular/angular.js/blob/v1.2.0/src/ngResource/resource.js#L538-L549
+ // https://github.com/angular/js/blob/v1.2.0/src/ngResource/resource.js#L538-L549
interface IResourceClass {
new(dataOrParams?: any): T & IResource;
get: IResourceMethod;
@@ -141,32 +141,32 @@ declare module 'angular' {
}
// Instance calls always return the the promise of the request which retrieved the object
- // https://github.com/angular/angular.js/blob/v1.2.0/src/ngResource/resource.js#L538-L546
+ // https://github.com/angular/js/blob/v1.2.0/src/ngResource/resource.js#L538-L546
interface IResource {
- $get(): angular.IPromise;
- $get(params?: Object, success?: Function, error?: Function): angular.IPromise;
- $get(success: Function, error?: Function): angular.IPromise;
+ $get(): IPromise;
+ $get(params?: Object, success?: Function, error?: Function): IPromise;
+ $get(success: Function, error?: Function): IPromise;
- $query(): angular.IPromise>;
- $query(params?: Object, success?: Function, error?: Function): angular.IPromise>;
- $query(success: Function, error?: Function): angular.IPromise>;
+ $query(): IPromise>;
+ $query(params?: Object, success?: Function, error?: Function): IPromise>;
+ $query(success: Function, error?: Function): IPromise>;
- $save(): angular.IPromise;
- $save(params?: Object, success?: Function, error?: Function): angular.IPromise;
- $save(success: Function, error?: Function): angular.IPromise;
+ $save(): IPromise;
+ $save(params?: Object, success?: Function, error?: Function): IPromise;
+ $save(success: Function, error?: Function): IPromise;
- $remove(): angular.IPromise;
- $remove(params?: Object, success?: Function, error?: Function): angular.IPromise;
- $remove(success: Function, error?: Function): angular.IPromise;
+ $remove(): IPromise;
+ $remove(params?: Object, success?: Function, error?: Function): IPromise;
+ $remove(success: Function, error?: Function): IPromise;
- $delete(): angular.IPromise;
- $delete(params?: Object, success?: Function, error?: Function): angular.IPromise;
- $delete(success: Function, error?: Function): angular.IPromise;
+ $delete(): IPromise;
+ $delete(params?: Object, success?: Function, error?: Function): IPromise;
+ $delete(success: Function, error?: Function): IPromise;
$cancelRequest(): void;
/** The promise of the original server interaction that created this instance. */
- $promise: angular.IPromise;
+ $promise: IPromise;
$resolved: boolean;
toJSON(): T;
}
@@ -178,18 +178,18 @@ declare module 'angular' {
$cancelRequest(): void;
/** The promise of the original server interaction that created this collection. */
- $promise: angular.IPromise>;
+ $promise: IPromise>;
$resolved: boolean;
}
/** when creating a resource factory via IModule.factory */
interface IResourceServiceFactoryFunction {
- ($resource: angular.resource.IResourceService): IResourceClass;
- >($resource: angular.resource.IResourceService): U;
+ ($resource: resource.IResourceService): IResourceClass;
+ >($resource: resource.IResourceService): U;
}
// IResourceServiceProvider used to configure global settings
- interface IResourceServiceProvider extends angular.IServiceProvider {
+ interface IResourceServiceProvider extends IServiceProvider {
defaults: IResourceOptions;
}
}
@@ -197,7 +197,7 @@ declare module 'angular' {
/** extensions to base ng based on using angular-resource */
interface IModule {
/** creating a resource service factory */
- factory(name: string, resourceServiceFactoryFunction: angular.resource.IResourceServiceFactoryFunction): IModule;
+ factory(name: string, resourceServiceFactoryFunction: resource.IResourceServiceFactoryFunction): IModule;
}
namespace auto {
@@ -210,7 +210,7 @@ declare module 'angular' {
declare global {
interface Array {
/** The promise of the original server interaction that created this collection. */
- $promise: angular.IPromise;
+ $promise: IPromise;
$resolved: boolean;
}
}
diff --git a/types/angular-sanitize/index.d.ts b/types/angular-sanitize/index.d.ts
index 89273b42fb..ad42ec362e 100644
--- a/types/angular-sanitize/index.d.ts
+++ b/types/angular-sanitize/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for Angular JS (ngSanitize module) 1.3
// Project: http://angularjs.org
-// Definitions by: Diego Vilar
+// Definitions by: Diego Vilar
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/angular/angular-component-router.d.ts b/types/angular/angular-component-router.d.ts
index b8c939f7c8..b8cd8d097e 100644
--- a/types/angular/angular-component-router.d.ts
+++ b/types/angular/angular-component-router.d.ts
@@ -1,7 +1,7 @@
/* tslint:disable:dt-header variable-name */
// Type definitions for Angular JS 1.5 component router
// Project: http://angularjs.org
-// Definitions by: David Reher
+// Definitions by: David Reher
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
declare namespace angular {
diff --git a/types/angular/angular-tests.ts b/types/angular/angular-tests.ts
index 20de01f71f..eec64baed0 100644
--- a/types/angular/angular-tests.ts
+++ b/types/angular/angular-tests.ts
@@ -339,12 +339,12 @@ namespace TestQ {
result = $q.all<{a: number; b: string; }>({a: promiseAny, b: promiseAny});
}
{
- let result = $q.all({ num: $q.when(2), str: $q.when('test') });
+ const result = $q.all({ num: $q.when(2), str: $q.when('test') });
// TS should infer that num is a number and str is a string
result.then(r => (r.num * 2) + r.str.indexOf('s'));
}
{
- let result = $q.all({ num: $q.when(2), str: 'test' });
+ const result = $q.all({ num: $q.when(2), str: 'test' });
// TS should infer that num is a number and str is a string
result.then(r => (r.num * 2) + r.str.indexOf('s'));
}
@@ -378,7 +378,7 @@ namespace TestQ {
let result: angular.IPromise;
result = $q.resolve(tResult);
result = $q.resolve(promiseTResult);
- let result2: angular.IPromise = $q.resolve(Math.random() > 0.5 ? tResult : promiseTOther);
+ const result2: angular.IPromise = $q.resolve(Math.random() > 0.5 ? tResult : promiseTOther);
}
// $q.when
@@ -388,7 +388,6 @@ namespace TestQ {
}
{
let result: angular.IPromise;
- let other: angular.IPromise;
let resultOther: angular.IPromise;
result = $q.when(tResult);
@@ -450,8 +449,8 @@ namespace TestDeferred {
// deferred.resolve
{
let result: void;
- result = deferred.resolve() as void;
- result = deferred.resolve(tResult) as void;
+ result = deferred.resolve();
+ result = deferred.resolve(tResult);
}
// deferred.reject
@@ -488,7 +487,7 @@ namespace TestInjector {
class Foobar {
constructor($q) {}
}
- let result: Foobar = $injector.instantiate(Foobar);
+ const result: Foobar = $injector.instantiate(Foobar);
}
// $injector.invoke
@@ -496,14 +495,14 @@ namespace TestInjector {
function foobar(v: boolean): number {
return 7;
}
- let result = $injector.invoke(foobar);
+ const result = $injector.invoke(foobar);
if (!(typeof result === 'number')) {
// This fails to compile if 'result' is not exactly a number.
- let expectNever: never = result;
+ const expectNever: never = result;
}
- let anyFunction: Function = foobar;
- let anyResult: string = $injector.invoke(anyFunction);
+ const anyFunction: Function = foobar;
+ const anyResult: string = $injector.invoke(anyFunction);
}
}
@@ -1160,11 +1159,7 @@ function NgModelControllerTyping() {
ngModel.$asyncValidators['uniqueUsername'] = (modelValue, viewValue) => {
const value = modelValue || viewValue;
return $http.get('/api/users/' + value).
- then(function resolved() {
- return $q.reject('exists');
- }, function rejected() {
- return true;
- });
+ then(() => $q.reject('exists'), () => true);
};
}
diff --git a/types/angular/index.d.ts b/types/angular/index.d.ts
index f6b74517b8..f48a1d3493 100644
--- a/types/angular/index.d.ts
+++ b/types/angular/index.d.ts
@@ -1,7 +1,7 @@
// Type definitions for Angular JS 1.6
// Project: http://angularjs.org
-// Definitions by: Diego Vilar
-// Georgii Dolzhykov
+// Definitions by: Diego Vilar
+// Georgii Dolzhykov
// Caleb St-Denis
// Leonard Thieu
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
diff --git a/types/angularfire/index.d.ts b/types/angularfire/index.d.ts
index e27cbf5721..de1482b0e3 100644
--- a/types/angularfire/index.d.ts
+++ b/types/angularfire/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for AngularFire 0.8.2
// Project: http://angularfire.com
-// Definitions by: Dénes Harmath
+// Definitions by: Dénes Harmath
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/annyang/annyang-tests.ts b/types/annyang/annyang-tests.ts
new file mode 100644
index 0000000000..56dd51f417
--- /dev/null
+++ b/types/annyang/annyang-tests.ts
@@ -0,0 +1,71 @@
+import { Annyang, CommandOption } from 'annyang';
+
+declare let annyang: Annyang;
+declare let console: any;
+
+// Tests based on API documentation at https://github.com/TalAter/annyang/blob/master/docs/README.md
+
+function testStartListening() {
+ annyang.start({ autoRestart: false }); // $ExpectType void
+ annyang.start({ autoRestart: false, continuous: false }); // $ExpectType void
+}
+
+function testAddComments() {
+ let helloFunction = (): string => {
+ return 'hello';
+ };
+
+ let commands: CommandOption = {'hello :name': helloFunction, howdy: helloFunction};
+ let commands2: CommandOption = {hi: helloFunction};
+
+ annyang.addCommands(commands); // $ExpectType void
+ annyang.addCommands(commands2); // $ExpectType void
+ annyang.removeCommands(); // $ExpectType void
+ annyang.addCommands(commands); // $ExpectType void
+ annyang.removeCommands('hello'); // $ExpectType void
+ annyang.removeCommands(['howdy', 'hi']); // $ExpectType void
+}
+
+let notConnected = () => { console.error('network connection error'); };
+
+function testAddCallback() {
+ annyang.addCallback('error', () => console.error('There was an error!') ); // $ExpectType void
+
+ // $ExpectType void
+ annyang.addCallback('resultMatch', (userSaid, commandText, phrases) => {
+ console.log(userSaid);
+ console.log(commandText);
+ console.log(phrases);
+ });
+
+ annyang.addCallback('errorNetwork', notConnected, annyang); // $ExpectType void
+}
+
+function testRemoveCallback() {
+ let start = () => { console.log('start'); };
+ let end = () => { console.log('end'); };
+
+ annyang.addCallback('start', start); // $ExpectType void
+ annyang.addCallback('end', end); // $ExpectType void
+
+ annyang.removeCallback(); // $ExpectType void
+
+ annyang.removeCallback('end'); // $ExpectType void
+
+ annyang.removeCallback('start', start); // $ExpectType void
+
+ annyang.removeCallback(undefined, start); // $ExpectType void
+}
+
+function testTrigger() {
+ annyang.trigger('Time for some thrilling heroics');
+
+ // $ExpectType void
+ annyang.trigger(
+ ['Time for some thrilling heroics', 'Time for some thrilling aerobics']
+ );
+}
+
+function testIsListening() {
+ annyang.isListening(); // $ExpectType boolean
+}
diff --git a/types/annyang/index.d.ts b/types/annyang/index.d.ts
new file mode 100644
index 0000000000..fee0cb9acb
--- /dev/null
+++ b/types/annyang/index.d.ts
@@ -0,0 +1,230 @@
+// Type definitions for annyang 2.6
+// Project: https://www.talater.com/annyang/
+// Definitions by: Hisham Al-Shurafa
+// Lukas Klinzing
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+/**
+ * Options for function `start`
+ *
+ * @export
+ * @interface StartOptions
+ */
+export interface StartOptions {
+ /**
+ * Should annyang restart itself if it is closed indirectly, because of silence or window conflicts?
+ *
+ * @type {boolean}
+ */
+ autoRestart?: boolean;
+ /**
+ * Allow forcing continuous mode on or off. Annyang is pretty smart about this, so only set this if you know what you're doing.
+ *
+ * @type {boolean}
+ */
+ continuous?: boolean;
+}
+
+/**
+ * A command option that supports custom regular expressions
+ *
+ * @export
+ * @interface CommandOptionRegex
+ */
+export interface CommandOptionRegex {
+ /**
+ * @type {RegExp}
+ */
+ regexp: RegExp;
+ /**
+ * @type {() => any}
+ */
+ callback(): void;
+}
+
+/**
+ * Commands that annyang should listen to
+ *
+ * #### Examples:
+ * ````javascript
+ * {'hello :name': helloFunction, 'howdy': helloFunction};
+ * {'hi': helloFunction};
+ * ````
+ * @export
+ * @interface CommandOption
+ */
+export interface CommandOption {
+ [command: string]: CommandOptionRegex | (() => void);
+}
+
+/**
+ * Supported Events that will be triggered to listeners, you attach using `annyang.addCallback()`
+ *
+ * `start` - Fired as soon as the browser's Speech Recognition engine starts listening
+ * `error` - Fired when the browser's Speech Recogntion engine returns an error, this generic error callback will be followed by more accurate error callbacks (both will fire if both are defined)
+ * `errorNetwork` - Fired when Speech Recognition fails because of a network error
+ * `errorPermissionBlocked` - Fired when the browser blocks the permission request to use Speech Recognition.
+ * `errorPermissionDenied` - Fired when the user blocks the permission request to use Speech Recognition.
+ * `end` - Fired when the browser's Speech Recognition engine stops
+ * `result` - Fired as soon as some speech was identified. This generic callback will be followed by either the `resultMatch` or `resultNoMatch` callbacks.
+ * Callback functions registered to this event will include an array of possible phrases the user said as the first argument
+ * `resultMatch` - Fired when annyang was able to match between what the user said and a registered command
+ * Callback functions registered to this event will include three arguments in the following order:
+ * * The phrase the user said that matched a command
+ * * The command that was matched
+ * * An array of possible alternative phrases the user might've said
+ * `resultNoMatch` - Fired when what the user said didn't match any of the registered commands.
+ * Callback functions registered to this event will include an array of possible phrases the user might've said as the first argument
+ */
+export type Events =
+ 'start' |
+ 'soundstart' |
+ 'error' |
+ 'end' |
+ 'result' |
+ 'resultMatch' |
+ 'resultNoMatch' |
+ 'errorNetwork' |
+ 'errorPermissionBlocked' |
+ 'errorPermissionDenied';
+
+export interface Annyang {
+ /**
+ * Start listening.
+ * It's a good idea to call this after adding some commands first, but not mandatory.
+ *
+ * @param {StartOptions} options
+ */
+ start(options?: StartOptions): void;
+
+ /**
+ * Stop listening, and turn off mic.
+ *
+ */
+ abort(): void;
+
+ /**
+ * Pause listening. annyang will stop responding to commands (until the resume or start methods are called), without turning off the browser's SpeechRecognition engine or the mic.
+ *
+ */
+ pause(): void;
+
+ /**
+ * Resumes listening and restores command callback execution when a result matches.
+ * If SpeechRecognition was aborted (stopped), start it.
+ *
+ */
+ resume(): void;
+
+ /**
+ * Turn on output of debug messages to the console. Ugly, but super-handy!
+ *
+ * @export
+ * @param {boolean} [newState=true] Turn on/off debug messages
+ */
+ debug(newState?: boolean): void;
+
+ /**
+ * Set the language the user will speak in. If this method is not called, defaults to 'en-US'.
+ *
+ * @param {string} lang
+ * @see [Languages](https://github.com/TalAter/annyang/blob/master/docs/FAQ.md#what-languages-are-supported)
+ */
+ setLanguage(lang: string): void;
+
+ /**
+ * Add commands that annyang will respond to. Similar in syntax to init(), but doesn't remove existing commands.
+ *
+ * #### Examples:
+ * ````javascript
+ * var commands = {'hello :name': helloFunction, 'howdy': helloFunction};
+ * var commands2 = {'hi': helloFunction};
+ *
+ * annyang.addCommands(commands);
+ * annyang.addCommands(commands2);
+ * // annyang will now listen to all three commands
+ * ````
+ *
+ * @param {CommandOption} commands
+ */
+ addCommands(commands: CommandOption): void;
+
+ /**
+ * Removes all existing commands or a specific command
+ * #### Examples:
+ * ````javascript
+ * var commands : annyang.CommandOption = {'hello': helloFunction, 'howdy': helloFunction, 'hi': helloFunction};
+ *
+ * // Don't respond to hello
+ * annyang.removeCommands('hello');
+ *
+ * // Remove all existing commands
+ * annyang.removeCommands();
+ * ````
+ * @param {string} command
+ */
+ removeCommands(command?: string): void;
+
+ /**
+ * Removes a list of commands
+ * #### Examples:
+ * ````javascript
+ * var commands : annyang.CommandOption = {'hello': helloFunction, 'howdy': helloFunction, 'hi': helloFunction};
+ * // Add some commands
+ * annyang.addCommands(commands);
+ * // Don't respond to howdy or hi
+ * annyang.removeCommands(['howdy', 'hi']);
+ * ````
+ *
+ * @param {string[]} command
+ */
+ removeCommands(command: string[]): void;
+
+ /**
+ * @param {Events} event
+ * @param {(userSaid : string, commandText : string, results : string[]) => void} callback
+ * @param {*} [context]
+ */
+ addCallback(event: Events, callback: (userSaid?: string, commandText?: string, results?: string[]) => void, context?: any): void;
+
+ /**
+ * @param {Events} [event]
+ * @param {Function} [callback]
+ */
+ removeCallback(event?: Events, callback?: (userSaid: string, commandText: string, results: string[]) => void): void;
+
+ /**
+ * Returns true if speech recognition is currently on.
+ * Returns false if speech recognition is off or annyang is paused.
+ *
+ * @returns {boolean}
+ */
+ isListening(): boolean;
+
+ /**
+ * Returns the instance of the browser's SpeechRecognition object used by annyang.
+ * Useful in case you want direct access to the browser's Speech Recognition engine.
+ *
+ * @returns {*}
+ */
+ getSpeechRecognizer(): any;
+
+ /**
+ * Simulate speech being recognized. This will trigger the same events and behavior as when the Speech Recognition
+ * detects speech.
+ *
+ * Can accept either a string containing a single sentence, or an array containing multiple sentences to be checked
+ * in order until one of them matches a command (similar to the way Speech Recognition Alternatives are parsed)
+ *
+ * #### Examples:
+ * ````javascript
+ * annyang.trigger('Time for some thrilling heroics');
+ * annyang.trigger(
+ * ['Time for some thrilling heroics', 'Time for some thrilling aerobics']
+ * );
+ * ````
+ *
+ * @param {string} command
+ */
+ trigger(command: string | string[]): void;
+}
diff --git a/types/annyang/tsconfig.json b/types/annyang/tsconfig.json
new file mode 100644
index 0000000000..f54c7cd18c
--- /dev/null
+++ b/types/annyang/tsconfig.json
@@ -0,0 +1,22 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "lib": [
+ "es6"
+ ],
+ "noImplicitAny": true,
+ "noImplicitThis": true,
+ "strictNullChecks": true,
+ "baseUrl": "../",
+ "typeRoots": [
+ "../"
+ ],
+ "types": [],
+ "noEmit": true,
+ "forceConsistentCasingInFileNames": true
+ },
+ "files": [
+ "index.d.ts",
+ "annyang-tests.ts"
+ ]
+}
diff --git a/types/annyang/tslint.json b/types/annyang/tslint.json
new file mode 100644
index 0000000000..3db14f85ea
--- /dev/null
+++ b/types/annyang/tslint.json
@@ -0,0 +1 @@
+{ "extends": "dtslint/dt.json" }
diff --git a/types/applepayjs/applepayjs-tests.ts b/types/applepayjs/applepayjs-tests.ts
index 5adf61e45c..505dbd2daf 100644
--- a/types/applepayjs/applepayjs-tests.ts
+++ b/types/applepayjs/applepayjs-tests.ts
@@ -6,7 +6,7 @@ declare function it(desc: string, fn: () => void): void;
describe("ApplePaySession", () => {
it("the constants are defined", () => {
- let status = 0;
+ const status = 0;
switch (status) {
case ApplePaySession.STATUS_FAILURE:
case ApplePaySession.STATUS_INVALID_BILLING_POSTAL_ADDRESS:
@@ -43,8 +43,8 @@ describe("ApplePaySession", () => {
it("can call static methods", () => {
const merchantIdentifier = "MyMerchantId";
- let canMakePayments: boolean = ApplePaySession.canMakePayments();
- let supported: boolean = ApplePaySession.supportsVersion(2);
+ const canMakePayments: boolean = ApplePaySession.canMakePayments();
+ const supported: boolean = ApplePaySession.supportsVersion(2);
ApplePaySession.canMakePaymentsWithActiveCard(merchantIdentifier)
.then((status: boolean) => {
@@ -168,7 +168,7 @@ describe("ApplePaySession", () => {
});
describe("ApplePayPaymentRequest", () => {
it("can create a new instance", () => {
- let paymentRequest: ApplePayJS.ApplePayPaymentRequest = {
+ const paymentRequest: ApplePayJS.ApplePayPaymentRequest = {
applicationData: "ApplicationData",
countryCode: "GB",
currencyCode: "GBP",
@@ -181,8 +181,8 @@ describe("ApplePayPaymentRequest", () => {
"amex",
"discover",
"jcb",
- "masterCard",
- "privateLabel",
+ "masterCard",
+ "privateLabel",
"visa"
],
total: {
diff --git a/types/applepayjs/index.d.ts b/types/applepayjs/index.d.ts
index 34d3c41a99..f705a4fad2 100644
--- a/types/applepayjs/index.d.ts
+++ b/types/applepayjs/index.d.ts
@@ -10,7 +10,7 @@ declare class ApplePaySession extends EventTarget {
/**
* Creates a new instance of the ApplePaySession class.
* @param version - The version of the ApplePay JS API you are using.
- * @param paymentRequest - An ApplePayPaymentRequest object that contains the information that is displayed on the Apple Pay payment sheet.
+ * @param paymentRequest - An ApplePayPaymentRequest object that contains the information that is displayed on the Apple Pay payment sheet.
*/
constructor(version: number, paymentRequest: ApplePayJS.ApplePayPaymentRequest);
@@ -95,8 +95,8 @@ declare class ApplePaySession extends EventTarget {
/**
* Call after a payment method has been selected.
- * @param newTotal - An ApplePayLineItem dictionary representing the total price for the purchase.
- * @param newLineItems - A sequence of ApplePayLineItem dictionaries.
+ * @param newTotal - An ApplePayLineItem dictionary representing the total price for the purchase.
+ * @param newLineItems - A sequence of ApplePayLineItem dictionaries.
*/
completePaymentMethodSelection(newTotal: ApplePayJS.ApplePayLineItem, newLineItems: ApplePayJS.ApplePayLineItem[]): void;
@@ -104,8 +104,8 @@ declare class ApplePaySession extends EventTarget {
* Call after a shipping contact has been selected.
* @param status - The status of the shipping contact update.
* @param newShippingMethods - A sequence of ApplePayShippingMethod dictionaries.
- * @param newTotal - An ApplePayLineItem dictionary representing the total price for the purchase.
- * @param newLineItems - A sequence of ApplePayLineItem dictionaries.
+ * @param newTotal - An ApplePayLineItem dictionary representing the total price for the purchase.
+ * @param newLineItems - A sequence of ApplePayLineItem dictionaries.
*/
completeShippingContactSelection(
status: number,
@@ -116,8 +116,8 @@ declare class ApplePaySession extends EventTarget {
/**
* Call after the shipping method has been selected.
* @param status - The status of the shipping method update.
- * @param newTotal - An ApplePayLineItem dictionary representing the total price for the purchase.
- * @param newLineItems - A sequence of ApplePayLineItem dictionaries.
+ * @param newTotal - An ApplePayLineItem dictionary representing the total price for the purchase.
+ * @param newLineItems - A sequence of ApplePayLineItem dictionaries.
*/
completeShippingMethodSelection(status: number, newTotal: ApplePayJS.ApplePayLineItem, newLineItems: ApplePayJS.ApplePayLineItem[]): void;
@@ -204,7 +204,7 @@ declare namespace ApplePayJS {
}
/**
- * The ApplePayPaymentAuthorizedEvent class defines the attributes contained by the ApplePaySession.onpaymentauthorized callback function.
+ * The ApplePayPaymentAuthorizedEvent class defines the attributes contained by the ApplePaySession.onpaymentauthorized callback function.
*/
abstract class ApplePayPaymentAuthorizedEvent extends Event {
/**
@@ -279,7 +279,7 @@ declare namespace ApplePayJS {
/**
* A string, suitable for display, that is the name of the payment network backing the card.
- * The value is one of the supported networks specified in the supportedNetworks property of the ApplePayPaymentRequest.
+ * The value is one of the supported networks specified in the supportedNetworks property of the ApplePayPaymentRequest.
*/
network: string;
@@ -295,7 +295,7 @@ declare namespace ApplePayJS {
}
/**
- * The ApplePayPaymentMethodSelectedEvent class defines the attributes contained by the ApplePaySession.onpaymentmethodselected callback function.
+ * The ApplePayPaymentMethodSelectedEvent class defines the attributes contained by the ApplePaySession.onpaymentmethodselected callback function.
*/
abstract class ApplePayPaymentMethodSelectedEvent extends Event {
/**
@@ -426,7 +426,7 @@ declare namespace ApplePayJS {
}
/**
- * The ApplePayShippingContactSelectedEvent class defines the attributes contained by the ApplePaySession.onshippingcontactselected callback function.
+ * The ApplePayShippingContactSelectedEvent class defines the attributes contained by the ApplePaySession.onshippingcontactselected callback function.
*/
abstract class ApplePayShippingContactSelectedEvent extends Event {
/**
@@ -461,7 +461,7 @@ declare namespace ApplePayJS {
}
/**
- * The ApplePayShippingMethodSelectedEvent class defines the attribute contained by the ApplePaySession.onshippingmethodselected callback function.
+ * The ApplePayShippingMethodSelectedEvent class defines the attribute contained by the ApplePaySession.onshippingmethodselected callback function.
*/
abstract class ApplePayShippingMethodSelectedEvent extends Event {
/**
@@ -471,7 +471,7 @@ declare namespace ApplePayJS {
}
/**
- * The ApplePayValidateMerchantEvent class defines the attributes contained by the ApplePaySession.onvalidatemerchant callback function.
+ * The ApplePayValidateMerchantEvent class defines the attributes contained by the ApplePaySession.onvalidatemerchant callback function.
*/
abstract class ApplePayValidateMerchantEvent extends Event {
/**
diff --git a/types/applicationinsights-js/applicationinsights-js-tests.ts b/types/applicationinsights-js/applicationinsights-js-tests.ts
index ecefb6d41a..49c68181f8 100644
--- a/types/applicationinsights-js/applicationinsights-js-tests.ts
+++ b/types/applicationinsights-js/applicationinsights-js-tests.ts
@@ -123,7 +123,7 @@ context.addTelemetryInitializer(envelope => { });
// a sample from: https://github.com/Microsoft/ApplicationInsights-JS/blob/master/API-reference.md#example
context.addTelemetryInitializer(envelope => {
- let telemetryItem = envelope.data.baseData;
+ const telemetryItem = envelope.data.baseData;
if (envelope.name === Microsoft.ApplicationInsights.Telemetry.PageView.envelopeType) {
telemetryItem.url = "URL CENSORED";
}
diff --git a/types/applicationinsights-js/tslint.json b/types/applicationinsights-js/tslint.json
index 0cc2f62b56..4b24c7ab0a 100644
--- a/types/applicationinsights-js/tslint.json
+++ b/types/applicationinsights-js/tslint.json
@@ -1,8 +1,11 @@
{
"extends": "dtslint/dt.json",
"rules": {
- "interface-name": [ false ],
+ // All are TODOs
+ "interface-name": false,
"no-internal-module": false,
- "no-single-declare-module": false
+ "no-mergeable-namespace": false,
+ "no-single-declare-module": false,
+ "no-unnecessary-qualifier": false
}
}
diff --git a/types/argparse/index.d.ts b/types/argparse/index.d.ts
index 845d5d8fd3..2661b01c12 100644
--- a/types/argparse/index.d.ts
+++ b/types/argparse/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for argparse v1.0.3
// Project: https://github.com/nodeca/argparse
-// Definitions by: Andrew Schurman
+// Definitions by: Andrew Schurman
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
diff --git a/types/ascii2mathml/ascii2mathml-tests.ts b/types/ascii2mathml/ascii2mathml-tests.ts
new file mode 100644
index 0000000000..9cb54443a4
--- /dev/null
+++ b/types/ascii2mathml/ascii2mathml-tests.ts
@@ -0,0 +1,17 @@
+import * as ascii2mathml from 'ascii2mathml';
+
+let fn = ascii2mathml({}); // $ExpectType any
+fn(''); // $ExpectType string
+ascii2mathml('', {}); // $ExpectType string
+
+// $ExpectType string
+ascii2mathml('', {
+ decimalMark: '.',
+ colSep: ',',
+ rowSep: ';',
+ display: 'inline',
+ dir: 'ltr',
+ bare: false,
+ standalone: false,
+ annotate: false
+});
diff --git a/types/ascii2mathml/index.d.ts b/types/ascii2mathml/index.d.ts
new file mode 100644
index 0000000000..2b02dfea15
--- /dev/null
+++ b/types/ascii2mathml/index.d.ts
@@ -0,0 +1,35 @@
+// Type definitions for ascii2mathml 0.5
+// Project: https://github.com/runarberg/ascii2mathml
+// Definitions by: Muhammad Ragib Hasin
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+export = A2MML;
+
+declare var A2MML: ascii2mathml;
+
+interface Options {
+ decimalMark?: string;
+ colSep?: string;
+ rowSep?: string;
+ display?: 'inline' | 'block';
+ dir?: 'ltr' | 'rtl';
+ bare?: boolean;
+ standalone?: boolean;
+ annotate?: boolean;
+}
+
+interface ascii2mathml {
+ /**
+ * Generates a function with default options set to convert
+ * ASCIIMath expression to MathML markup.
+ * @param options Options
+ */
+ (options: Options): ascii2mathml;
+
+ /**
+ * Converts ASCIIMath expression to MathML markup.
+ * @param asciimath {string} ASCIIMath expression
+ * @param options Options
+ */
+ (asciimath: string, options?: Options): string;
+}
diff --git a/types/ascii2mathml/tsconfig.json b/types/ascii2mathml/tsconfig.json
new file mode 100644
index 0000000000..22e7823b58
--- /dev/null
+++ b/types/ascii2mathml/tsconfig.json
@@ -0,0 +1,22 @@
+{
+ "compilerOptions": {
+ "module": "commonjs",
+ "lib": [
+ "es6"
+ ],
+ "noImplicitAny": true,
+ "noImplicitThis": true,
+ "strictNullChecks": true,
+ "baseUrl": "../",
+ "typeRoots": [
+ "../"
+ ],
+ "types": [],
+ "noEmit": true,
+ "forceConsistentCasingInFileNames": true
+ },
+ "files": [
+ "index.d.ts",
+ "ascii2mathml-tests.ts"
+ ]
+}
diff --git a/types/ascii2mathml/tslint.json b/types/ascii2mathml/tslint.json
new file mode 100644
index 0000000000..3db14f85ea
--- /dev/null
+++ b/types/ascii2mathml/tslint.json
@@ -0,0 +1 @@
+{ "extends": "dtslint/dt.json" }
diff --git a/types/askmethat-rating/askmethat-rating-tests.ts b/types/askmethat-rating/askmethat-rating-tests.ts
index af0ab3cb88..af985d6358 100644
--- a/types/askmethat-rating/askmethat-rating-tests.ts
+++ b/types/askmethat-rating/askmethat-rating-tests.ts
@@ -1,6 +1,6 @@
import { AskmethatRating, AskmethatRatingSteps } from "askmethat-rating";
-let options = {
+const options = {
backgroundColor: "#e5e500",
hoverColor: "#ffff66",
fontClass: "fa fa-star",
@@ -11,8 +11,8 @@ let options = {
inputName: "AskmethatRating"
};
-let div = document.createElement("div");
-let amcRating = new AskmethatRating(div, 2 , options);
+const div = document.createElement("div");
+const amcRating = new AskmethatRating(div, 2 , options);
options.readonly = true;
amcRating.defaultOptions = options;
diff --git a/types/auth0-lock/auth0-lock-tests.ts b/types/auth0-lock/auth0-lock-tests.ts
index 3abe93a7c2..0642453a13 100644
--- a/types/auth0-lock/auth0-lock-tests.ts
+++ b/types/auth0-lock/auth0-lock-tests.ts
@@ -4,7 +4,7 @@ import Auth0Lock from 'auth0-lock';
const CLIENT_ID = "YOUR_AUTH0_APP_CLIENTID";
const DOMAIN = "YOUR_DOMAIN_AT.auth0.com";
-var lock: Auth0LockStatic = new Auth0Lock(CLIENT_ID, DOMAIN);
+const lock: Auth0LockStatic = new Auth0Lock(CLIENT_ID, DOMAIN);
lock.show();
lock.hide();
@@ -12,7 +12,7 @@ lock.logout(() => {});
// Show supports UI arguments
-var showOptions : Auth0LockShowOptions = {
+const showOptions : Auth0LockShowOptions = {
allowedConnections: [ "twitter", "facebook" ],
allowSignUp: true,
allowForgotPassword: false,
@@ -63,7 +63,7 @@ lock.on("authenticated", function(authResult : any) {
// test theme
-var themeOptions : Auth0LockConstructorOptions = {
+const themeOptions : Auth0LockConstructorOptions = {
theme: {
authButtons: {
fooProvider: {
@@ -86,7 +86,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, themeOptions);
// test empty theme
-var themeOptionsEmpty : Auth0LockConstructorOptions = {
+const themeOptionsEmpty : Auth0LockConstructorOptions = {
theme: { }
};
@@ -94,7 +94,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, themeOptions);
// test authentication
-var authOptions : Auth0LockConstructorOptions = {
+const authOptions : Auth0LockConstructorOptions = {
auth: {
params: { state: "foo" },
redirect: true,
@@ -108,7 +108,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, authOptions);
// test multi-variant example
-var multiVariantOptions : Auth0LockConstructorOptions = {
+const multiVariantOptions : Auth0LockConstructorOptions = {
container: "myContainer",
closable: false,
languageDictionary: {
@@ -122,7 +122,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, multiVariantOptions);
// test text-field additional sign up field
-var textFieldOptions : Auth0LockConstructorOptions = {
+const textFieldOptions : Auth0LockConstructorOptions = {
additionalSignUpFields: [{
name: "address",
placeholder: "enter your address",
@@ -142,7 +142,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, textFieldOptions);
// test select-field additional sign up field
-var selectFieldOptions : Auth0LockConstructorOptions = {
+const selectFieldOptions : Auth0LockConstructorOptions = {
additionalSignUpFields: [{
type: "select",
name: "location",
@@ -162,7 +162,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, selectFieldOptions);
// test select-field additional sign up field with callbacks for
-var selectFieldOptionsWithCallbacks : Auth0LockConstructorOptions = {
+const selectFieldOptionsWithCallbacks : Auth0LockConstructorOptions = {
additionalSignUpFields: [{
type: "select",
name: "location",
@@ -171,7 +171,7 @@ var selectFieldOptionsWithCallbacks : Auth0LockConstructorOptions = {
// obtain options, in case of error you call cb with the error in the
// first arg instead of null
- let options = [
+ const options = [
{value: "us", label: "United States"},
{value: "fr", label: "France"},
{value: "ar", label: "Argentina"}
@@ -184,7 +184,7 @@ var selectFieldOptionsWithCallbacks : Auth0LockConstructorOptions = {
// obtain prefill, in case of error you call cb with the error in the
// first arg instead of null
- let prefill = "us";
+ const prefill = "us";
cb(null, prefill);
}
@@ -195,13 +195,13 @@ new Auth0Lock(CLIENT_ID, DOMAIN, selectFieldOptionsWithCallbacks);
// test Avatar options
-var avatarOptions : Auth0LockConstructorOptions = {
+const avatarOptions : Auth0LockConstructorOptions = {
avatar: {
url: (email : string, cb : Auth0LockAvatarUrlCallback) => {
// obtain url for email, in case of error you call cb with the error in
// the first arg instead of null
- let url = "url";
+ const url = "url";
cb(null, url);
},
@@ -209,7 +209,7 @@ var avatarOptions : Auth0LockConstructorOptions = {
// obtain displayName for email, in case of error you call cb with the
// error in the first arg instead of null
- let displayName = "displayName";
+ const displayName = "displayName";
cb(null, displayName);
}
@@ -218,7 +218,7 @@ var avatarOptions : Auth0LockConstructorOptions = {
new Auth0Lock(CLIENT_ID, DOMAIN, avatarOptions);
-var authResult : AuthResult = {
+const authResult : AuthResult = {
accessToken: 'fake_access_token',
idToken: 'fake_id_token',
idTokenPayload: {
diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts
index 07a316268a..cb84c7a6bd 100644
--- a/types/auth0/index.d.ts
+++ b/types/auth0/index.d.ts
@@ -360,6 +360,7 @@ export class ManagementClient {
// Users
getUsers(params?: GetUsersData): Promise;
+ getUsers(cb: (err: Error, users: User[]) => void): void;
getUsers(params?: GetUsersData, cb?: (err: Error, users: User[]) => void): void;
getUser(params: ObjectWithId): Promise;
diff --git a/types/auto-sni/auto-sni-tests.ts b/types/auto-sni/auto-sni-tests.ts
index a271a1a1ad..6be54148fb 100644
--- a/types/auto-sni/auto-sni-tests.ts
+++ b/types/auto-sni/auto-sni-tests.ts
@@ -1,5 +1,5 @@
import * as autosni from "auto-sni";
-let a = autosni({
+const a = autosni({
agreeTos: true,
email: '',
domains: ['']
diff --git a/types/babel-generator/babel-generator-tests.ts b/types/babel-generator/babel-generator-tests.ts
index 1aeec38831..5efb98ba24 100644
--- a/types/babel-generator/babel-generator-tests.ts
+++ b/types/babel-generator/babel-generator-tests.ts
@@ -11,7 +11,7 @@ ast.loc.start;
const output = generate(ast, { /* options */ }, code);
// Example from https://github.com/thejameskyle/babel-handbook/blob/master/translations/en/plugin-handbook.md#babel-generator
-let result = generate(ast, {
+const result = generate(ast, {
retainLines: false,
compact: "auto",
concise: false,
diff --git a/types/babel-traverse/babel-traverse-tests.ts b/types/babel-traverse/babel-traverse-tests.ts
index 571620fd09..1dd95060e4 100644
--- a/types/babel-traverse/babel-traverse-tests.ts
+++ b/types/babel-traverse/babel-traverse-tests.ts
@@ -29,7 +29,7 @@ const ast = babylon.parse(code);
traverse(ast, {
enter(path) {
- let node = path.node;
+ const node = path.node;
if (t.isIdentifier(node) && node.name === "n") {
node.name = "x";
}
@@ -85,10 +85,10 @@ const v1: Visitor = {
// ...
}
- let id1 = path.scope.generateUidIdentifier("uid");
+ const id1 = path.scope.generateUidIdentifier("uid");
id1.type;
id1.name;
- let id2 = path.scope.generateUidIdentifier("uid");
+ const id2 = path.scope.generateUidIdentifier("uid");
id2.type;
id2.name;
diff --git a/types/babel-traverse/index.d.ts b/types/babel-traverse/index.d.ts
index 01f00c75c8..526f8ffd1c 100644
--- a/types/babel-traverse/index.d.ts
+++ b/types/babel-traverse/index.d.ts
@@ -8,7 +8,7 @@
import * as t from 'babel-types';
export type Node = t.Node;
-export default function traverse(parent: Node | Node[], opts?: TraverseOptions, scope?: Scope, state?: any, parentPath?: NodePath): void;
+export default function traverse(parent: Node | Node[], opts?: TraverseOptions, scope?: Scope, state?: any, parentPath?: NodePath): void;
export interface TraverseOptions extends Visitor {
scope?: Scope;
@@ -16,8 +16,8 @@ export interface TraverseOptions extends Visitor {
}
export class Scope {
- constructor(path: NodePath, parentScope?: Scope);
- path: NodePath;
+ constructor(path: NodePath, parentScope?: Scope);
+ path: NodePath;
block: Node;
parentBlock: Node;
parent: Scope;
@@ -61,13 +61,13 @@ export class Scope {
toArray(node: Node, i?: number): Node;
- registerDeclaration(path: NodePath): void;
+ registerDeclaration(path: NodePath): void;
buildUndefinedNode(): Node;
- registerConstantViolation(path: NodePath): void;
+ registerConstantViolation(path: NodePath): void;
- registerBinding(kind: string, path: NodePath, bindingPath?: NodePath): void;
+ registerBinding(kind: string, path: NodePath, bindingPath?: NodePath): void;
addGlobal(node: Node): void;
@@ -121,16 +121,16 @@ export class Scope {
}
export class Binding {
- constructor(opts: { existing: Binding; identifier: t.Identifier; scope: Scope; path: NodePath; kind: 'var' | 'let' | 'const'; });
+ constructor(opts: { existing: Binding; identifier: t.Identifier; scope: Scope; path: NodePath; kind: 'var' | 'let' | 'const'; });
identifier: t.Identifier;
scope: Scope;
- path: NodePath;
+ path: NodePath;
kind: 'var' | 'let' | 'const' | 'module';
referenced: boolean;
references: number;
- referencePaths: Array>;
+ referencePaths: NodePath[];
constant: boolean;
- constantViolations: Array>;
+ constantViolations: NodePath[];
}
export interface Visitor extends VisitNodeObject {
@@ -328,7 +328,7 @@ export class NodePath {
state: any;
opts: object;
skipKeys: object;
- parentPath: NodePath;
+ parentPath: NodePath;
context: TraversalContext;
container: object | object[];
listKey: string;
@@ -362,15 +362,15 @@ export class NodePath {
* Call the provided `callback` with the `NodePath`s of all the parents.
* When the `callback` returns a truthy value, we return that node path.
*/
- findParent(callback: (path: NodePath) => boolean): NodePath;
+ findParent(callback: (path: NodePath) => boolean): NodePath;
- find(callback: (path: NodePath) => boolean): NodePath;
+ find(callback: (path: NodePath) => boolean): NodePath;
/** Get the parent function of the current path. */
- getFunctionParent(): NodePath;
+ getFunctionParent(): NodePath;
/** Walk up the tree until we hit a parent node path in a list. */
- getStatementParent(): NodePath;
+ getStatementParent(): NodePath;
/**
* Get the deepest common ancestor and then from it, get the earliest relationship path
@@ -379,20 +379,20 @@ export class NodePath {
* Earliest is defined as being "before" all the other nodes in terms of list container
* position and visiting key.
*/
- getEarliestCommonAncestorFrom(paths: Array>): Array>;
+ getEarliestCommonAncestorFrom(paths: NodePath[]): NodePath[];
/** Get the earliest path in the tree where the provided `paths` intersect. */
getDeepestCommonAncestorFrom(
- paths: Array>,
- filter?: (deepest: Node, i: number, ancestries: Array>) => NodePath
- ): NodePath;
+ paths: NodePath[],
+ filter?: (deepest: Node, i: number, ancestries: NodePath[]) => NodePath
+ ): NodePath;
/**
* Build an array of node paths containing the entire ancestry of the current node path.
*
* NOTE: The current node path is included in this.
*/
- getAncestry(): Array>;
+ getAncestry(): NodePath[];
inType(...candidateTypes: string[]): boolean;
@@ -404,7 +404,7 @@ export class NodePath {
couldBeBaseType(name: string): boolean;
- baseTypeStrictlyMatches(right: NodePath): boolean;
+ baseTypeStrictlyMatches(right: NodePath): boolean;
isGenericType(genericName: string): boolean;
@@ -428,7 +428,7 @@ export class NodePath {
replaceWithSourceString(replacement: any): void;
/** Replace the current node with another. */
- replaceWith(replacement: Node | NodePath): void;
+ replaceWith(replacement: Node | NodePath): void;
/**
* This method takes an array of statements nodes and then explodes it
@@ -573,13 +573,13 @@ export class NodePath {
hoist(scope: Scope): void;
// ------------------------- family -------------------------
- getOpposite(): NodePath;
+ getOpposite(): NodePath;
- getCompletionRecords(): Array>;
+ getCompletionRecords(): NodePath[];
- getSibling(key: string): NodePath;
+ getSibling(key: string): NodePath;
- get(key: string, context?: boolean | TraversalContext): NodePath;
+ get(key: string, context?: boolean | TraversalContext): NodePath;
getBindingIdentifiers(duplicates?: boolean): Node[];
@@ -960,7 +960,7 @@ export class Hub {
}
export interface TraversalContext {
- parentPath: NodePath;
+ parentPath: NodePath;
scope: Scope;
state: any;
opts: any;
diff --git a/types/babel-types/babel-types-tests.ts b/types/babel-types/babel-types-tests.ts
index 0ef79f39f4..af8ab2d0b7 100644
--- a/types/babel-types/babel-types-tests.ts
+++ b/types/babel-types/babel-types-tests.ts
@@ -2,11 +2,11 @@
import traverse from "babel-traverse";
import * as t from "babel-types";
-let ast: t.Node;
+declare const ast: t.Node;
traverse(ast, {
enter(path) {
- let node = path.node;
+ const node = path.node;
if (t.isIdentifier(node, { name: "n" })) {
node.name = "x";
}
@@ -31,7 +31,7 @@ const exp: t.Expression = t.nullLiteral();
// https://github.com/babel/babel/blob/4e50b2d9d9c376cee7a2cbf56553fe5b982ea53c/packages/babel-plugin-transform-react-inline-elements/src/index.js#L61
traverse(ast, {
JSXElement(path, file) {
- const { node } = path;
+ const { node } = path;
const open = node.openingElement;
// init
diff --git a/types/babylon/babylon-tests.ts b/types/babylon/babylon-tests.ts
index d844b9a8f7..2a5ddfcb57 100644
--- a/types/babylon/babylon-tests.ts
+++ b/types/babylon/babylon-tests.ts
@@ -6,7 +6,7 @@ const code = `function square(n) {
return n * n;
}`;
-let node = babylon.parse(code);
+const node = babylon.parse(code);
assert(node.type === "File");
assert(node.start === 0);
assert(node.end === 38);
diff --git a/types/bagpipes/bagpipes-tests.ts b/types/bagpipes/bagpipes-tests.ts
index af7dfa0a31..eaa412d56b 100755
--- a/types/bagpipes/bagpipes-tests.ts
+++ b/types/bagpipes/bagpipes-tests.ts
@@ -56,11 +56,11 @@ const pipesConfigFullEmpty: Bagpipes.Config = {
userViewsDirs: []
};
-let pipesA = Bagpipes.create(perDefsMixed, {
+const pipesA = Bagpipes.create(perDefsMixed, {
connectMiddlewareDirs: ['some_dir', 'ssssss'],
swaggerNodeRunner: {}
});
-let pipeA = pipesA.getPipe('HelloWorld');
+const pipeA = pipesA.getPipe('HelloWorld');
// log the output to standard out
pipeA.fit((context, cb) => {
@@ -81,7 +81,7 @@ const pipeErrTest = pipesEnty.pipes['any'].fit((context, cb) => {
pipesEnty.play(pipeErrTest, {});
const fittingsC = ["xxxx", "aaa"].map((name) => {
- let fittingDef = {} as Bagpipes.PipeDefMap;
+ const fittingDef = {} as Bagpipes.PipeDefMap;
fittingDef[name] = 'nothing';
return fittingDef;
});
@@ -95,6 +95,6 @@ bagpipesD.play(bagpipesD.getPipe('objPipe'), {});
// Test full create
const userFittingsDirs = ['./fixtures/fittings'];
const pipeWithString = ['emit'];
-let contextPlain = {};
+const contextPlain = {};
const bagpipesWithPipeAndFittings = Bagpipes.create({ myCustomPipe: pipeWithString }, { userFittingsDirs });
bagpipesWithPipeAndFittings.play(bagpipesWithPipeAndFittings.getPipe('myCustomPipe'), contextPlain);
diff --git a/types/baidumap-web-sdk/baidumap-web-sdk-tests.ts b/types/baidumap-web-sdk/baidumap-web-sdk-tests.ts
index cc525509c6..8ac6457975 100644
--- a/types/baidumap-web-sdk/baidumap-web-sdk-tests.ts
+++ b/types/baidumap-web-sdk/baidumap-web-sdk-tests.ts
@@ -4,8 +4,8 @@ namespace BMapTests {
//document: http://lbsyun.baidu.com/index.php?title=jspopular
public createMap(container: string | HTMLElement) {
navigator.geolocation.getCurrentPosition((position: Position) => {
- let point = new BMap.Point(position.coords.longitude, position.coords.latitude);
- let map = new BMap.Map(container);
+ const point = new BMap.Point(position.coords.longitude, position.coords.latitude);
+ const map = new BMap.Map(container);
map.centerAndZoom(point, 15);
}, console.log, { maximumAge: 3000, timeout: 5000, enableHighAccuracy: true });
}
@@ -16,7 +16,7 @@ namespace BMapTests {
map.addControl(new BMap.OverviewMapControl({ isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT }));
}
public addMarker(map: BMap.Map, point: BMap.Point) {
- var marker = new BMap.Marker(point);
+ const marker = new BMap.Marker(point);
map.addOverlay(marker);
marker.setAnimation(BMAP_ANIMATION_BOUNCE);
}
diff --git a/types/batch-stream/index.d.ts b/types/batch-stream/index.d.ts
index 26c433a04b..2ab8c6b8c5 100644
--- a/types/batch-stream/index.d.ts
+++ b/types/batch-stream/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for batch-stream 0.1.2
// Project: https://github.com/segmentio/batch-stream
-// Definitions by: Nicholas Penree
+// Definitions by: Nicholas Penree
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
///
diff --git a/types/bignumber.js/bignumber.js-tests.ts b/types/bignumber.js/bignumber.js-tests.ts
index 8ea0775dba..424665d8ba 100644
--- a/types/bignumber.js/bignumber.js-tests.ts
+++ b/types/bignumber.js/bignumber.js-tests.ts
@@ -182,7 +182,7 @@ x.floor();
y = new BigNumber(-1.3);
y.floor();
-0.1 > (0.3 - 0.2);
+0.1 > (0.3 - 0.2); // tslint:disable-line binary-expression-operand-order
x = new BigNumber(0.1);
x.greaterThan(BigNumber(0.3).minus(0.2));
BigNumber(0).gt(x);
diff --git a/types/bleno/bleno-tests.ts b/types/bleno/bleno-tests.ts
index 7dcb47ff35..bd4b6971ee 100644
--- a/types/bleno/bleno-tests.ts
+++ b/types/bleno/bleno-tests.ts
@@ -45,7 +45,7 @@ Bleno.on('stateChange', (state: string) => {
}
});
-let characteristic = new EchoCharacteristic();
+const characteristic = new EchoCharacteristic();
Bleno.on('advertisingStart', (error: string) => {
if (!error) {
Bleno.setServices(
diff --git a/types/bloomfilter/bloomfilter-tests.ts b/types/bloomfilter/bloomfilter-tests.ts
index 650cc97eb4..96ee0443b6 100644
--- a/types/bloomfilter/bloomfilter-tests.ts
+++ b/types/bloomfilter/bloomfilter-tests.ts
@@ -1,7 +1,7 @@
import { BloomFilter } from 'bloomfilter';
function test_bloomfilter() {
- const m: number = 10;
- const k: number = 2;
+ const m = 10;
+ const k = 2;
const bloomFilter = new BloomFilter(m, k);
const array: Int32Array[] = bloomFilter.buckets;
diff --git a/types/bookshelf/index.d.ts b/types/bookshelf/index.d.ts
index 914107816f..1d7a6feb14 100644
--- a/types/bookshelf/index.d.ts
+++ b/types/bookshelf/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for bookshelfjs v0.9.3
// Project: http://bookshelfjs.org/
-// Definitions by: Andrew Schurman , Vesa Poikajärvi
+// Definitions by: Andrew Schurman , Vesa Poikajärvi
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/boom/index.d.ts b/types/boom/index.d.ts
index 97a0f7ef59..8025a7ddab 100644
--- a/types/boom/index.d.ts
+++ b/types/boom/index.d.ts
@@ -1,8 +1,8 @@
// Type definitions for boom 4.3
-// Project: http://github.com/hapijs/boom
-// Definitions by: Igor Rogatty
-// AJP
-// Jinesh Shah
+// Project: https://github.com/hapijs/boom
+// Definitions by: Igor Rogatty
+// AJP
+// Jinesh Shah
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/boom/v3/index.d.ts b/types/boom/v3/index.d.ts
index 2c0a3ce21d..adf433c9f4 100644
--- a/types/boom/v3/index.d.ts
+++ b/types/boom/v3/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for boom 3.2
-// Project: http://github.com/hapijs/boom
-// Definitions by: Igor Rogatty
+// Project: https://github.com/hapijs/boom
+// Definitions by: Igor Rogatty
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
///
diff --git a/types/bootstrap.v3.datetimepicker/bootstrap.v3.datetimepicker-tests.ts b/types/bootstrap.v3.datetimepicker/bootstrap.v3.datetimepicker-tests.ts
index 9f2b780f44..fe985e229f 100644
--- a/types/bootstrap.v3.datetimepicker/bootstrap.v3.datetimepicker-tests.ts
+++ b/types/bootstrap.v3.datetimepicker/bootstrap.v3.datetimepicker-tests.ts
@@ -118,7 +118,7 @@ function test_timeZone() {
function test_widgetParent() {
let nullW: null = null;
- let str: string = "myId";
+ let str = "myId";
let jquery = $("#element");
$("#picker").datetimepicker({
diff --git a/types/bootstrap.v3.datetimepicker/index.d.ts b/types/bootstrap.v3.datetimepicker/index.d.ts
index 9f2f5dda78..7b1d3877ba 100644
--- a/types/bootstrap.v3.datetimepicker/index.d.ts
+++ b/types/bootstrap.v3.datetimepicker/index.d.ts
@@ -589,7 +589,7 @@ export interface UpdateEvent extends JQueryEventObject {
viewDate: moment.Moment;
}
-export type EventName = "dp.show" | "dp.hide" | "dp.error";
+export type EventName = "dp.show" | "dp.hide" | "dp.error";
declare global {
interface JQuery {
diff --git a/types/bounce.js/index.d.ts b/types/bounce.js/index.d.ts
index 0db872fb30..c90f709a97 100644
--- a/types/bounce.js/index.d.ts
+++ b/types/bounce.js/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for Bounce.js v0.8.2
-// Project: http://github.com/tictail/bounce.js
-// Definitions by: Cherry
+// Project: https://github.com/tictail/bounce.js
+// Definitions by: Cherry
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/box2d/README.md b/types/box2d/README.md
index 9a775a1962..e16b327ee1 100644
--- a/types/box2d/README.md
+++ b/types/box2d/README.md
@@ -73,7 +73,7 @@ Change Log
License
=======
-Box2DWeb-2.1.d.ts Copyright (c) 2012 Josh Baldwin http://github.com/jbaldwin/box2dweb.d.ts
+Box2DWeb-2.1.d.ts Copyright (c) 2012 Josh Baldwin https://github.com/jbaldwin/box2dweb.d.ts
There are a few competing javascript Box2D ports.
This definitions file is for Box2dWeb.js ->
http://code.google.com/p/box2dweb/
diff --git a/types/box2d/index.d.ts b/types/box2d/index.d.ts
index 26411b2198..181c5537d2 100644
--- a/types/box2d/index.d.ts
+++ b/types/box2d/index.d.ts
@@ -4,7 +4,7 @@
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/**
-* Box2DWeb-2.1.d.ts Copyright (c) 2012-2013 Josh Baldwin http://github.com/jbaldwin/box2dweb.d.ts
+* Box2DWeb-2.1.d.ts Copyright (c) 2012-2013 Josh Baldwin https://github.com/jbaldwin/box2dweb.d.ts
* There are a few competing javascript Box2D ports.
* This definitions file is for Box2dWeb.js ->
* http://code.google.com/p/box2dweb/
diff --git a/types/browser-sync/index.d.ts b/types/browser-sync/index.d.ts
index 449063192d..ade12d3cb6 100644
--- a/types/browser-sync/index.d.ts
+++ b/types/browser-sync/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for browser-sync
// Project: http://www.browsersync.io/
-// Definitions by: Asana , Joe Skeen
+// Definitions by: Asana , Joe Skeen
// Thomas "Thasmo" Deinhamer
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
diff --git a/types/bunyan/bunyan-tests.ts b/types/bunyan/bunyan-tests.ts
index d4c4f61e1c..ffdfb2e911 100644
--- a/types/bunyan/bunyan-tests.ts
+++ b/types/bunyan/bunyan-tests.ts
@@ -1,13 +1,10 @@
import Logger = require('bunyan');
-let ringBufferOptions: Logger.RingBufferOptions = {
+const ringBufferOptions: Logger.RingBufferOptions = {
limit: 100
};
-let ringBuffer: Logger.RingBuffer = new Logger.RingBuffer(ringBufferOptions);
+const ringBuffer: Logger.RingBuffer = new Logger.RingBuffer(ringBufferOptions);
ringBuffer.write("hello");
-ringBuffer.end();
-ringBuffer.destroy();
-ringBuffer.destroySoon();
let level: number;
level = Logger.resolveLevel("trace");
@@ -23,13 +20,14 @@ level = Logger.resolveLevel(Logger.WARN);
level = Logger.resolveLevel(Logger.ERROR);
level = Logger.resolveLevel(Logger.FATAL);
-let options: Logger.LoggerOptions = {
+const options: Logger.LoggerOptions = {
name: 'test-logger',
serializers: Logger.stdSerializers,
streams: [{
type: 'stream',
stream: process.stdout,
- level: Logger.TRACE
+ level: Logger.TRACE,
+ name: 'foo'
}, {
type: 'file',
path: '/tmp/test.log',
@@ -45,7 +43,7 @@ let options: Logger.LoggerOptions = {
}, {
type: 'raw',
stream: process.stderr,
- level: Logger.WARN
+ level: Logger.FATAL + 1, // disabled, as stderr explodes when given raw streams
}, {
type: 'raw',
stream: ringBuffer,
@@ -53,9 +51,9 @@ let options: Logger.LoggerOptions = {
}]
};
-let log = Logger.createLogger(options);
+const log = Logger.createLogger(options);
-let customSerializer = (anything: any) => {
+const customSerializer = (anything: any) => {
return { obj: anything };
};
@@ -69,19 +67,17 @@ log.addSerializers(
}
);
-let child = log.child({ name: 'child' });
-child.reopenFileStreams();
-log.addStream({ path: '/dev/null' });
-child.level(Logger.DEBUG);
-child.level('debug');
-child.levels(0, Logger.ERROR);
-child.levels(0, 'error');
-child.levels('stream1', Logger.FATAL);
-child.levels('stream1', 'fatal');
+const levels: number[] = log.levels();
+level = log.levels(0);
+log.levels('foo');
-let buffer = new Buffer(0);
-let error = new Error('');
-let object = {
+log.levels(0, Logger.INFO);
+log.levels(0, 'info');
+log.levels('foo', Logger.WARN);
+
+const buffer = new Buffer(0);
+const error = new Error('');
+const object = {
test: 123
};
@@ -116,7 +112,7 @@ log.fatal(error);
log.fatal(object);
log.fatal('Hello, %s', 'world!');
-let recursive: any = {
+const recursive: any = {
hello: 'world',
whats: {}
};
@@ -130,6 +126,20 @@ class MyLogger extends Logger {
}
}
+let child = log.child({ widget_type: 'wuzzle' });
+child.reopenFileStreams();
+log.addStream({ path: '/dev/null' });
+child.level(Logger.DEBUG);
+child.level('debug');
+child.levels(0, Logger.ERROR);
+child.levels(0, 'error');
+child.levels('foo', Logger.FATAL);
+child.levels('foo', 'fatal');
+
+ringBuffer.end();
+ringBuffer.destroy();
+ringBuffer.destroySoon();
+
const logLevelString: Logger.LogLevelString = 'warn';
const nameLevel: number = Logger.levelFromName[logLevelString];
const nameLevel2: number = Logger.levelFromName['warn'];
diff --git a/types/bunyan/index.d.ts b/types/bunyan/index.d.ts
index a59790ebc9..055c64deb8 100644
--- a/types/bunyan/index.d.ts
+++ b/types/bunyan/index.d.ts
@@ -233,6 +233,7 @@ declare namespace Logger {
closeOnExit?: boolean;
period?: string;
count?: number;
+ name?: string;
}
interface LoggerOptions {
diff --git a/types/bytebuffer/index.d.ts b/types/bytebuffer/index.d.ts
index 1cf7142592..8456f28182 100644
--- a/types/bytebuffer/index.d.ts
+++ b/types/bytebuffer/index.d.ts
@@ -1,8 +1,8 @@
// Type definitions for bytebuffer.js 5.0.0
// Project: https://github.com/dcodeIO/bytebuffer.js
-// Definitions by: Denis Cappellin
+// Definitions by: Denis Cappellin
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-// Definitions by: SINTEF-9012
+// Definitions by: SINTEF-9012
import Long = require("long");
diff --git a/types/c3/c3-tests.ts b/types/c3/c3-tests.ts
index 029946c710..509678636b 100644
--- a/types/c3/c3-tests.ts
+++ b/types/c3/c3-tests.ts
@@ -3,7 +3,7 @@
//////////////////
function chart_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
bindto: "#myContainer",
size: {
@@ -30,19 +30,19 @@ function chart_examples() {
onresized: () => { /* code*/ }
});
- let chart2 = c3.generate({
+ const chart2 = c3.generate({
bindto: document.getElementById("myContainer"),
data: {}
});
- let chart3 = c3.generate({
+ const chart3 = c3.generate({
bindto: d3.select("#myContainer"),
data: {}
});
}
function data_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
url: "/data/c3_test.csv",
json: [
@@ -126,7 +126,7 @@ function data_examples() {
}
});
- let chart2 = c3.generate({
+ const chart2 = c3.generate({
data: {
labels: { format: (v, id, i, j) => { /* code */ } },
hide: ["data1"]
@@ -135,7 +135,7 @@ function data_examples() {
}
function axis_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
axis: {
rotated: true,
@@ -207,7 +207,7 @@ function axis_examples() {
}
});
- let chart2 = c3.generate({
+ const chart2 = c3.generate({
data: {},
axis: {
x: {
@@ -241,7 +241,7 @@ function axis_examples() {
}
function grid_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
grid: {
x: {
@@ -265,7 +265,7 @@ function grid_examples() {
}
function region_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
regions: [
{ axis: "x", start: 1, end: 4, class: "region-1-4" },
@@ -274,7 +274,7 @@ function region_examples() {
}
function legend_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
legend: {
show: true,
@@ -294,7 +294,7 @@ function legend_examples() {
}
});
- let chart2 = c3.generate({
+ const chart2 = c3.generate({
data: {},
legend: {
hide: "data1",
@@ -307,7 +307,7 @@ function legend_examples() {
}
});
- let chart3 = c3.generate({
+ const chart3 = c3.generate({
data: {},
legend: {
hide: ["data1", "data2"]
@@ -316,7 +316,7 @@ function legend_examples() {
}
function subchart_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
subchart: {
show: true,
@@ -329,7 +329,7 @@ function subchart_examples() {
}
function zoom_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
zoom: {
enabled: false,
@@ -343,7 +343,7 @@ function zoom_examples() {
}
function point_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
point: {
show: false,
@@ -362,7 +362,7 @@ function point_examples() {
}
function line_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
line: {
connectNull: true,
@@ -374,7 +374,7 @@ function line_examples() {
}
function area_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
area: {
zerobased: false
@@ -383,7 +383,7 @@ function area_examples() {
}
function bar_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
bar: {
width: 10,
@@ -391,7 +391,7 @@ function bar_examples() {
}
});
- let chart2 = c3.generate({
+ const chart2 = c3.generate({
data: {},
bar: {
width: {
@@ -403,7 +403,7 @@ function bar_examples() {
}
function pie_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
pie: {
label: {
@@ -419,7 +419,7 @@ function pie_examples() {
}
function donut_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
donut: {
label: {
@@ -437,7 +437,7 @@ function donut_examples() {
}
function gauge_examples() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {},
gauge: {
label: {
@@ -460,7 +460,7 @@ function gauge_examples() {
/////////////////
function simple_multiple() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -481,7 +481,7 @@ function simple_multiple() {
}
function timeseries() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
xFormat: "%Y%m%d", // 'xFormat' can be used as custom format of 'x'
@@ -503,7 +503,7 @@ function timeseries() {
}
function chart_spline() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -515,7 +515,7 @@ function chart_spline() {
}
function simple_xy() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -528,7 +528,7 @@ function simple_xy() {
}
function simple_xy_multiple() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
xs: {
data1: "x1",
@@ -545,7 +545,7 @@ function simple_xy_multiple() {
}
function simple_regions() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -560,7 +560,7 @@ function simple_regions() {
}
function chart_step() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 300, 350, 300, 0, 0, 100],
@@ -575,7 +575,7 @@ function chart_step() {
}
function area_chart() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 300, 350, 300, 0, 0, 0],
@@ -590,7 +590,7 @@ function area_chart() {
}
function chart_area_stacked() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 300, 350, 300, 0, 0, 120],
@@ -607,7 +607,7 @@ function chart_area_stacked() {
}
function chart_bar() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -627,7 +627,7 @@ function chart_bar() {
}
function chart_bar_stacked() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", -30, 200, 200, 400, -150, 250],
@@ -648,7 +648,7 @@ function chart_bar_stacked() {
}
function chart_scatter() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
xs: {
setosa: "setosa_x",
@@ -682,7 +682,7 @@ function chart_scatter() {
}
function chart_pie() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
// iris data from R
columns: [
@@ -698,7 +698,7 @@ function chart_pie() {
}
function chart_donut() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30],
@@ -716,7 +716,7 @@ function chart_donut() {
}
function gauge_chart() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data", 91.4]
@@ -753,7 +753,7 @@ function gauge_chart() {
}
function chart_combination() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 20, 50, 40, 60, 50],
@@ -781,7 +781,7 @@ function chart_combination() {
////////////////////
function categorized() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250, 50, 100, 250]
@@ -797,7 +797,7 @@ function categorized() {
}
function axes_rotated() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -814,7 +814,7 @@ function axes_rotated() {
}
function axes_y2() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -834,7 +834,7 @@ function axes_y2() {
}
function axes_x_tick_format() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -855,7 +855,7 @@ function axes_x_tick_format() {
}
function axes_x_tick_count() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -876,7 +876,7 @@ function axes_x_tick_count() {
}
function axes_x_tick_values() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -897,7 +897,7 @@ function axes_x_tick_values() {
}
function axes_x_tick_culling() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250, 30, 200, 100, 400, 150, 250, 30, 200, 100, 400, 150, 250, 200, 100, 400, 150, 250]
@@ -919,7 +919,7 @@ function axes_x_tick_culling() {
}
function axes_x_tick_fit() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -940,7 +940,7 @@ function axes_x_tick_fit() {
}
function axes_x_localtime() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
xFormat: "%Y",
@@ -966,7 +966,7 @@ function axes_x_localtime() {
}
function axes_x_tick_rotate() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -990,7 +990,7 @@ function axes_x_tick_rotate() {
}
function axes_y_tick_format() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 2500]
@@ -1008,7 +1008,7 @@ function axes_y_tick_format() {
}
function axes_y_padding() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1032,7 +1032,7 @@ function axes_y_padding() {
}
function axes_y_range() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250]
@@ -1050,7 +1050,7 @@ function axes_y_range() {
}
function axes_label() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250],
@@ -1076,7 +1076,7 @@ function axes_label() {
}
function axes_label_position() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample1", 30, 200, 100, 400, 150, 250],
@@ -1134,7 +1134,7 @@ function axes_label_position() {
///////////////////
function data_columned() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 20, 50, 40, 60, 50],
@@ -1146,7 +1146,7 @@ function data_columned() {
}
function data_rowed() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
rows: [
["data1", "data2", "data3"],
@@ -1210,7 +1210,7 @@ function data_json() {
}
function data_url() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
url: "/data/c3_test.csv"
}
@@ -1227,7 +1227,7 @@ function data_url() {
}
function data_stringx() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -1294,7 +1294,7 @@ function data_stringx() {
}
function data_load() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
url: "/data/c3_test.csv",
type: "line"
@@ -1397,7 +1397,7 @@ function data_load() {
}
function data_name() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1412,7 +1412,7 @@ function data_name() {
}
function data_color() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 20, 50, 40, 60, 50],
@@ -1434,7 +1434,7 @@ function data_color() {
}
function data_order() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 130, 200, 320, 400, 530, 750],
@@ -1478,7 +1478,7 @@ function data_order() {
}
function data_label() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, -200, -100, 400, 150, 250],
@@ -1500,7 +1500,7 @@ function data_label() {
}
function data_label_format() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, -200, -100, 400, 150, 250],
@@ -1532,7 +1532,7 @@ function data_label_format() {
///////////////////
function options_gridline() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250, 120, 200]
@@ -1550,7 +1550,7 @@ function options_gridline() {
}
function grid_x_lines() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250]
@@ -1569,7 +1569,7 @@ function grid_x_lines() {
}
function grid_y_lines() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250],
@@ -1601,7 +1601,7 @@ function grid_y_lines() {
///////////////////
function region() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250, 400],
@@ -1631,7 +1631,7 @@ function region() {
}
function region_timeseries() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "date",
columns: [
@@ -1657,7 +1657,7 @@ function region_timeseries() {
/////////////////////
function options_subchart() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250]
@@ -1670,7 +1670,7 @@ function options_subchart() {
}
function interaction_zoom() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250, 150, 200, 170, 240, 350, 150, 100, 400, 150, 250, 150, 200, 170, 240, 100, 150, 250, 150, 200, 170, 240, 30, 200, 100, 400, 150, 250, 150,
@@ -1688,7 +1688,7 @@ function interaction_zoom() {
/////////////////////
function options_legend() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250]
@@ -1701,7 +1701,7 @@ function options_legend() {
}
function legend_position() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1737,7 +1737,7 @@ function legend_position() {
}
function legend_custom() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 100],
@@ -1781,7 +1781,7 @@ function legend_custom() {
/////////////////////
function tooltip_show() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1795,7 +1795,7 @@ function tooltip_show() {
}
function tooltip_grouped() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1810,7 +1810,7 @@ function tooltip_grouped() {
}
function tooltip_format() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30000, 20000, 10000, 40000, 15000, 250000],
@@ -1837,7 +1837,7 @@ function tooltip_format() {
format: {
title: (d: any) => "Data " + d,
value: (value: any, ratio: any, id: any) => {
- let format = id === "data1" ? d3.format(",") : d3.format("$");
+ const format = id === "data1" ? d3.format(",") : d3.format("$");
return format(value);
}
// value: d3.format(",") // apply this format to both y and y2
@@ -1851,7 +1851,7 @@ function tooltip_format() {
////////////////////////
function options_size() {
- let chart = c3.generate({
+ const chart = c3.generate({
size: {
height: 240,
width: 480
@@ -1865,7 +1865,7 @@ function options_size() {
}
function options_padding() {
- let chart = c3.generate({
+ const chart = c3.generate({
padding: {
top: 40,
right: 100,
@@ -1881,7 +1881,7 @@ function options_padding() {
}
function options_color() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1900,7 +1900,7 @@ function options_color() {
}
function transition_duration() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
url: "/data/c3_test.csv"
},
@@ -1953,7 +1953,7 @@ function transition_duration() {
/////////////////////////////
function point_show() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -1971,7 +1971,7 @@ function point_show() {
////////////////////////////
function pie_label_format() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30],
@@ -1994,7 +1994,7 @@ function pie_label_format() {
/////////////////////
function api_flow() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
x: "x",
columns: [
@@ -2064,7 +2064,7 @@ function api_flow() {
}
function api_data_name() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2087,7 +2087,7 @@ function api_data_name() {
}
function api_data_color() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 20, 50, 40, 60, 50],
@@ -2122,7 +2122,7 @@ function api_data_color() {
}
function api_axis_label() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2154,7 +2154,7 @@ function api_axis_label() {
}
function api_axis_range() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2210,7 +2210,7 @@ function api_axis_range() {
}
function api_resize() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2233,7 +2233,7 @@ function api_resize() {
}
function api_grid_x() {
- let chart = c3.generate({
+ const chart = c3.generate({
bindto: "#chart",
data: {
columns: [
@@ -2276,7 +2276,7 @@ function api_grid_x() {
/////////////////////
function transform_line() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2304,7 +2304,7 @@ function transform_line() {
}
function transform_spline() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2332,7 +2332,7 @@ function transform_spline() {
}
function transform_bar() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2360,7 +2360,7 @@ function transform_bar() {
}
function transform_area() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2388,7 +2388,7 @@ function transform_area() {
}
function transform_areaspline() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2416,7 +2416,7 @@ function transform_areaspline() {
}
function transform_scatter() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
xs: {
setosa: "setosa_x",
@@ -2462,7 +2462,7 @@ function transform_scatter() {
}
function transform_pie() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2485,7 +2485,7 @@ function transform_pie() {
}
function transform_donut() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
@@ -2516,7 +2516,7 @@ function transform_donut() {
/////////////////////
function style_region() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["sample", 30, 200, 100, 400, 150, 250]
@@ -2530,7 +2530,7 @@ function style_region() {
}
function style_grid() {
- let chart = c3.generate({
+ const chart = c3.generate({
data: {
columns: [
["data1", 100, 200, 1000, 900, 500]
diff --git a/types/cassandra-driver/index.d.ts b/types/cassandra-driver/index.d.ts
index 1f7f2fe33d..bf9e73feb6 100644
--- a/types/cassandra-driver/index.d.ts
+++ b/types/cassandra-driver/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for nodejs-driver v0.8.2
// Project: https://github.com/datastax/nodejs-driver
-// Definitions by: Marc Fisher
+// Definitions by: Marc Fisher
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
///
diff --git a/types/catbox/index.d.ts b/types/catbox/index.d.ts
index e34059d618..7bc691abdc 100644
--- a/types/catbox/index.d.ts
+++ b/types/catbox/index.d.ts
@@ -1,6 +1,6 @@
// Type definitions for catbox 7.1
// Project: https://github.com/hapijs/catbox
-// Definitions by: Jason Swearingen , AJP
+// Definitions by: Jason Swearingen , AJP
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
diff --git a/types/chai-arrays/chai-arrays-tests.ts b/types/chai-arrays/chai-arrays-tests.ts
index 7fabaacbca..f8a42fb6a7 100644
--- a/types/chai-arrays/chai-arrays-tests.ts
+++ b/types/chai-arrays/chai-arrays-tests.ts
@@ -8,7 +8,7 @@ chai.use(ChaiArrays);
chai.should();
const arr: any[] = [1, 2, 3];
-const str: string = 'abcdef';
+const str = 'abcdef';
const otherArr: number[] = [1, 2, 3];
const anotherArr: number[] = [2, 4];
diff --git a/types/chai-http/chai-http-tests.ts b/types/chai-http/chai-http-tests.ts
index c9c80c31ed..7c1c7a6b42 100644
--- a/types/chai-http/chai-http-tests.ts
+++ b/types/chai-http/chai-http-tests.ts
@@ -13,7 +13,7 @@ if (!global.Promise) {
chai.request.addPromises(when.promise);
}
-let app: http.Server;
+declare const app: http.Server;
chai.request(app).get('/');
chai.request('http://localhost:8080').get('/');
@@ -55,7 +55,7 @@ chai.request(app)
.then((res: ChaiHttp.Response) => chai.expect(res).to.have.status(200))
.catch((err: any) => { throw err; });
-let agent = chai.request.agent(app);
+const agent = chai.request.agent(app);
agent
.post('/session')
@@ -69,7 +69,7 @@ agent
});
function test1() {
- let req = chai.request(app).get('/');
+ const req = chai.request(app).get('/');
req.then((res: ChaiHttp.Response) => {
chai.expect(res).to.have.status(200);
chai.expect(res).to.have.header('content-type', 'text/plain');
diff --git a/types/chart.js/chart.js-tests.ts b/types/chart.js/chart.js-tests.ts
index 5c2dab60f9..4ba3c4fc4c 100644
--- a/types/chart.js/chart.js-tests.ts
+++ b/types/chart.js/chart.js-tests.ts
@@ -4,7 +4,7 @@ import { Chart, ChartData } from 'chart.js';
// import chartjs = require('chart.js');
// => chartjs.Chart
-let chart: Chart = new Chart(new CanvasRenderingContext2D(), {
+const chart: Chart = new Chart(new CanvasRenderingContext2D(), {
type: 'bar',
data: {
labels: ['group 1'],
diff --git a/types/chayns/chayns-tests.ts b/types/chayns/chayns-tests.ts
new file mode 100644
index 0000000000..8e8912430a
--- /dev/null
+++ b/types/chayns/chayns-tests.ts
@@ -0,0 +1,14 @@
+// Test file for chayns typings
+
+chayns.register({
+ strictMode: false,
+ appName: 'chayns-typings-test'
+});
+
+chayns.ready.then(data => {
+ return data;
+}).catch(err => {
+ return err;
+});
+
+chayns.dialog.alert('chayns-typings', 'Test chayns-typings!');
diff --git a/types/chayns/index.d.ts b/types/chayns/index.d.ts
new file mode 100644
index 0000000000..a1989a1c51
--- /dev/null
+++ b/types/chayns/index.d.ts
@@ -0,0 +1,938 @@
+// Type definitions for chayns 3.1
+// Project: https://github.com/TobitSoftware/chayns-js
+// Definitions by: Henning Kuehl
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+// TypeScript Version: 2.4
+
+/**
+ * Definition file for chayns v3.1
+ */
+declare namespace chayns {
+ /**
+ * Getting Started
+ * chayns
+ *
+ */
+ let ready: Promise;
+
+ function register(config: RegisterConfig): void;
+
+ /**
+ * Basic Functions
+ * chayns
+ */
+ function login(parameters?: string[]): Promise;
+
+ function getUser(config: GetUserConfig): Promise;
+
+ function getUacGroups(siteId: number, updateCache?: boolean): Promise;
+
+ function startInteractionIdentification(config: InteractionIdentificationConfig): Promise;
+
+ function stopInteractionIdentification(): Promise;
+
+ function allowRefreshScroll(): Promise;
+
+ function disallowRefreshScroll(): Promise;
+
+ function showTitleImage(): Promise;
+
+ function hideTitleImage(): Promise;
+
+ function setOnActivateCallback(callback: (tappEvent: number) => any): Promise;
+
+ function setNetworkChangeCallback(callback: (result: NetworkChangeResult) => any, ongoing: boolean): Promise;
+
+ function setNfcCallback(callback: (rfid: string) => any): Promise;
+
+ function removeNfcCallback(): Promise;
+
+ function startNfcDetection(callback: (result: NfcDetectionResult) => any, interval: number, vibrate: boolean): Promise;
+
+ function stopNfcDetection(): Promise;
+
+ function scanQRCode(cameryType?: number, timeout?: number): Promise; // TODO interface for promise result
+
+ function createQRCode(text: string): Promise;
+
+ function showFinetradingQRCode(): Promise;
+
+ function selectTapp(tapp: SelectTappConfig, parameter?: string[]): Promise;
+
+ function openUrl(config: OpenUrlConfig): void;
+
+ function closeUrl(): void;
+
+ function openUrlInBrowser(url: string): void;
+
+ function getGeoLocation(): Promise;
+
+ function getLocationBeacons(forceReload: boolean): Promise;
+
+ function getBeaconHistory(subNumber?: number): Promise;
+
+ function getBaseColor(color?: string, colorMode?: number): string;
+
+ function share(config: ShareConfig): Promise; // TODO interface for promise result
+
+ function getAvailableSharingServices(): Promise;
+
+ function navigateBack(): Promise;
+
+ function updateNavigation(tappId?: number, config?: UpdateNavigationConfig): Promise;
+
+ function enableDisplayTimeout(): Promise;
+
+ function disableDisplayTimeout(): Promise;
+
+ function setSpeechToText(callback: (result: SpeechToTextResult) => any, title?: string): Promise;
+
+ function createTappShortcut(name: string, imageUrl: string): Promise;
+
+ function setSubTapp(config: SubTappConfig): void;
+
+ function removeSubTapp(config: RemoveSubTappConfig): void;
+
+ function vibrate(ms: number[]): Promise;
+
+ function setHeight(config: SetHeightConfig): Promise;
+
+ function scrollToY(position: number): Promise