From a16ca5d33c4447e5e6fedd92959fcace9dfae418 Mon Sep 17 00:00:00 2001 From: Karol Janyst Date: Fri, 4 Aug 2017 16:57:37 +0900 Subject: [PATCH 001/118] Quick fix exports to match transpiled code of the library --- .../react-transition-group/CSSTransition.d.ts | 66 ++++++++++--------- .../TransitionGroup.d.ts | 23 ++++--- types/react-transition-group/index.d.ts | 4 +- .../react-transition-group-tests.tsx | 5 +- 4 files changed, 52 insertions(+), 46 deletions(-) diff --git a/types/react-transition-group/CSSTransition.d.ts b/types/react-transition-group/CSSTransition.d.ts index 67b869edf6..259857ca3e 100644 --- a/types/react-transition-group/CSSTransition.d.ts +++ b/types/react-transition-group/CSSTransition.d.ts @@ -1,38 +1,40 @@ import { Component } from "react"; import { TransitionProps } from "react-transition-group/Transition"; -export interface CSSTransitionClassNames { - appear?: string; - appearActive?: string; - enter?: string; - enterActive?: string; - exit?: string; - exitActive?: string; +declare namespace CSSTransition { + interface CSSTransitionClassNames { + appear?: string; + appearActive?: string; + enter?: string; + enterActive?: string; + exit?: string; + exitActive?: string; + } + + /** + * The animation classNames applied to the component as it enters or exits. + * A single name can be provided and it will be suffixed for each stage: e.g. + * + * `classNames="fade"` applies `fade-enter`, `fade-enter-active`, + * `fade-exit`, `fade-exit-active`, `fade-appear`, and `fade-appear-active`. + * Each individual classNames can also be specified independently like: + * + * ```js + * classNames={{ + * appear: 'my-appear', + * appearActive: 'my-active-appear', + * enter: 'my-enter', + * enterActive: 'my-active-enter', + * exit: 'my-exit', + * exitActive: 'my-active-exit', + * }} + * ``` + */ + interface CSSTransitionProps extends TransitionProps { + classNames: string | CSSTransitionClassNames; + } } -/** - * The animation classNames applied to the component as it enters or exits. - * A single name can be provided and it will be suffixed for each stage: e.g. - * - * `classNames="fade"` applies `fade-enter`, `fade-enter-active`, - * `fade-exit`, `fade-exit-active`, `fade-appear`, and `fade-appear-active`. - * Each individual classNames can also be specified independently like: - * - * ```js - * classNames={{ - * appear: 'my-appear', - * appearActive: 'my-active-appear', - * enter: 'my-enter', - * enterActive: 'my-active-enter', - * exit: 'my-exit', - * exitActive: 'my-active-exit', - * }} - * ``` - */ -export interface CSSTransitionProps extends TransitionProps { - classNames: string | CSSTransitionClassNames; -} +declare class CSSTransition extends Component {} -declare class CSSTransition extends Component {} - -export default CSSTransition; +export = CSSTransition; diff --git a/types/react-transition-group/TransitionGroup.d.ts b/types/react-transition-group/TransitionGroup.d.ts index 3f04332bc8..801ed2acaf 100644 --- a/types/react-transition-group/TransitionGroup.d.ts +++ b/types/react-transition-group/TransitionGroup.d.ts @@ -1,18 +1,21 @@ import { Component, ReactType, HTMLProps, ReactElement } from "react"; import { TransitionActions, TransitionProps } from "react-transition-group/Transition"; -export interface IntrinsicTransitionGroupProps extends TransitionActions { - component?: T; -} +declare namespace TransitionGroup { + interface IntrinsicTransitionGroupProps extends TransitionActions { + component?: T; + } -export interface ComponentTransitionGroupProps extends TransitionActions { - component: T; -} + interface ComponentTransitionGroupProps extends TransitionActions { + component: T; + } -export type TransitionGroupProps = - (IntrinsicTransitionGroupProps & JSX.IntrinsicElements[T]) | (ComponentTransitionGroupProps) & { + type TransitionGroupProps = + (IntrinsicTransitionGroupProps & JSX.IntrinsicElements[T]) | (ComponentTransitionGroupProps) & { children?: ReactElement | Array>; + childFactory?(child: ReactElement): ReactElement; }; +} /** * The `` component manages a set of `` components @@ -71,6 +74,6 @@ export type TransitionGroupProps {} +declare class TransitionGroup extends Component {} -export default TransitionGroup; +export = TransitionGroup; diff --git a/types/react-transition-group/index.d.ts b/types/react-transition-group/index.d.ts index 35c130595c..7150ea56ad 100644 --- a/types/react-transition-group/index.d.ts +++ b/types/react-transition-group/index.d.ts @@ -4,9 +4,9 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -import CSSTransition from "react-transition-group/CSSTransition"; +import * as CSSTransition from "react-transition-group/CSSTransition"; import Transition from "react-transition-group/Transition"; -import TransitionGroup from "react-transition-group/TransitionGroup"; +import * as TransitionGroup from "react-transition-group/TransitionGroup"; export = { CSSTransition, diff --git a/types/react-transition-group/react-transition-group-tests.tsx b/types/react-transition-group/react-transition-group-tests.tsx index 333ab59810..48bfdd655b 100644 --- a/types/react-transition-group/react-transition-group-tests.tsx +++ b/types/react-transition-group/react-transition-group-tests.tsx @@ -1,7 +1,7 @@ import * as React from "react"; -import CSSTransition from "react-transition-group/CSSTransition"; +import * as CSSTransition from "react-transition-group/CSSTransition"; import Transition from "react-transition-group/Transition"; -import TransitionGroup from "react-transition-group/TransitionGroup"; +import * as TransitionGroup from "react-transition-group/TransitionGroup"; import Components = require("react-transition-group"); const Test: React.StatelessComponent = () => { @@ -17,6 +17,7 @@ const Test: React.StatelessComponent = () => { ) => child } > Date: Sun, 6 Aug 2017 00:44:12 +0200 Subject: [PATCH 002/118] [p-props] introduce typings --- types/p-props/index.d.ts | 10 ++++++++++ types/p-props/p-props-tests.ts | 21 +++++++++++++++++++++ types/p-props/tsconfig.json | 22 ++++++++++++++++++++++ types/p-props/tslint.json | 1 + 4 files changed, 54 insertions(+) create mode 100644 types/p-props/index.d.ts create mode 100644 types/p-props/p-props-tests.ts create mode 100644 types/p-props/tsconfig.json create mode 100644 types/p-props/tslint.json diff --git a/types/p-props/index.d.ts b/types/p-props/index.d.ts new file mode 100644 index 0000000000..38ee03b990 --- /dev/null +++ b/types/p-props/index.d.ts @@ -0,0 +1,10 @@ +// Type definitions for p-props 1.0 +// Project: https://github.com/sindresorhus/p-props#readme +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.1 + +export = pProps; + +declare function pProps | V }>(input: M): Promise>; +declare function pProps(input: Map | V>): Promise>; diff --git a/types/p-props/p-props-tests.ts b/types/p-props/p-props-tests.ts new file mode 100644 index 0000000000..651d613193 --- /dev/null +++ b/types/p-props/p-props-tests.ts @@ -0,0 +1,21 @@ +import pProps = require('p-props'); +import got = require('got'); + +const fetch = (url: string): Promise => got(url).then(res => res.body); + +const sites = { + ava: fetch('ava.li'), + todomvc: fetch('todomvc.com'), + github: fetch('github.com'), + foo: 'bar' +}; + +pProps(sites).then(result => { + const str: string = result.github; +}); + +const map = new Map>([[1, Promise.resolve('1')], [2, '2']]); + +pProps(map).then(result => { + const str: string | undefined = result.get(1); +}); diff --git a/types/p-props/tsconfig.json b/types/p-props/tsconfig.json new file mode 100644 index 0000000000..7e5309c521 --- /dev/null +++ b/types/p-props/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", + "p-props-tests.ts" + ] +} diff --git a/types/p-props/tslint.json b/types/p-props/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/p-props/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From 0272d3f3f72c5483d74ca423a4aa58bb1af0aa77 Mon Sep 17 00:00:00 2001 From: jafaircl Date: Tue, 8 Aug 2017 11:05:21 -0400 Subject: [PATCH 003/118] introduction --- .../google-adwords-scripts-tests.ts | 15 + types/google-adwords-scripts/index.d.ts | 1564 +++++++++++++++++ types/google-adwords-scripts/tsconfig.json | 22 + types/google-adwords-scripts/tslint.json | 1 + 4 files changed, 1602 insertions(+) create mode 100644 types/google-adwords-scripts/google-adwords-scripts-tests.ts create mode 100644 types/google-adwords-scripts/index.d.ts create mode 100644 types/google-adwords-scripts/tsconfig.json create mode 100644 types/google-adwords-scripts/tslint.json diff --git a/types/google-adwords-scripts/google-adwords-scripts-tests.ts b/types/google-adwords-scripts/google-adwords-scripts-tests.ts new file mode 100644 index 0000000000..1d0a236fb8 --- /dev/null +++ b/types/google-adwords-scripts/google-adwords-scripts-tests.ts @@ -0,0 +1,15 @@ +// from https://developers.google.com/adwords/scripts/docs/reference/adwordsapp/adwordsapp_campaignselector + +function main() { + const campaignSelector = AdWordsApp + .campaigns() + .withCondition("Impressions > 100") + .forDateRange("LAST_MONTH") + .orderBy("Clicks DESC"); + + const campaignIterator = campaignSelector.get(); + while (campaignIterator.hasNext()) { + const campaign = campaignIterator.next(); + Logger.log(campaign.getName()); + } +} diff --git a/types/google-adwords-scripts/index.d.ts b/types/google-adwords-scripts/index.d.ts new file mode 100644 index 0000000000..f6bd7cdc42 --- /dev/null +++ b/types/google-adwords-scripts/index.d.ts @@ -0,0 +1,1564 @@ +// Type definitions for Google AdWords Scripts 1.0 +// Project: https://github.com/jafaircl/gaws +// Definitions by: Jonathan Faircloth +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// + +// Generics +interface AdWordsEntity { + getEntityType?(): string; +} + +interface AdWordsIterator { + hasNext(): boolean; + next(): E; + totalNumEntities(): number; +} + +interface AdWordsSelector { + get(): AdWordsIterator; + withCondition(condition: string): AdWordsSelector; + withIds(ids: number[][] | number[]): AdWordsSelector; + forDateRange(dateRange: string): AdWordsSelector; + forDateRange(dateFrom: AdWordsDate | string, dateTo: AdWordsDate | string): AdWordsSelector; + orderBy(orderBy: string): AdWordsSelector; + withLimit(limit: number): AdWordsSelector; +} + +interface AdWordsBuilder { + build(): AdWordsOperation; +} + +interface AdWordsOperation { + getErrors(): string[]; + getResult(): E; + isSuccessful(): boolean; +} + +interface AdWordsStats { + getAverageCpc(): number; + getAverageCpm(): number; + getAverageCpv(): number; + getAveragePageviews(): number; + getAveragePosition(): number; + getAverageTimeOnSite(): number; + getBounceRage(): number; + getClicks(): number; + getConversionRate(): number; + getConversions(): number; + getCost(): number; + getCtr(): number; + getImpressions(): number; + getViewRate(): number; + getViews(): number; +} + +interface AdWordsUrls { + getCustomParameters(): {}; + getTrackingTemplate(): string; +} + +interface AdWordsBidding { + getStrategy(): BiddingStrategy; + getStrategySource(): BiddingStrategySource; + getStrategyType(): string; +} + +interface AdWordsTargeting { + audiences(): AdWordsSelector; + exculdedAudiences(): AdWordsSelector; +} + +// Ad Customizers +interface AdCustomizerItem extends AdWordsEntity, + hasMobilePreferred, + hasStartAndEndDate, + hasSchedules { + clearTargetAdGroup(): void; + clearTargetCampaign(): void; + clearTargetKeyword(): void; + getAttributeValue(name: string): number | string; + getAttributeValues(): {}; + getId(): number; + getTargetAdGroupName(): string; + getTargetCampaignName(): string; + getTargetKeywordText(): string; + remove(): void; + setAttributeValue(name: string, value: string | number): void; + setAttributeValues(attributeValues: {}): void; + setTargetAdGroup(campaignName: string, adGroupName: string): void; + setTargetCampaign(campaignName: string): void; + setTargetKeyword(keyword?: string): void; +} + +interface AdCustomizerItemBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasSchedulesBuilder>, + hasStartAndEndDateBuilder> { + withAttributeValue(name: string, value: {}): AdCustomizerItemBuilder; + withAttributeValues(attributeValues: {}): AdCustomizerItemBuilder; + withTargetAdGroup(campaignName: string, adGroup: string): AdCustomizerItemBuilder; + withTargetCampaign(campaignName: string): AdCustomizerItemBuilder; + withTargetKeyword(keyword: string): AdCustomizerItemBuilder; +} + +interface AdCustomizerSource extends AdWordsEntity { + adCustomizerItemBuilder(): AdCustomizerItemBuilder; + getAttributes(): {}; + getName(): string; + items(): AdWordsSelector; +} + +interface AdCustomizerSourceBuilder extends AdWordsBuilder { + addAttribute(name: string, type: string): AdCustomizerSourceBuilder; + addAttributes(attributes: {}): AdCustomizerSourceBuilder; + withName(name: string): AdCustomizerSourceBuilder; +} + +// Ad extensions +interface AccountExtensions { + callouts(): AdWordsSelector; + message(): AdWordsSelector; + mobileApps(): AdWordsSelector; + reviews(): AdWordsSelector; + sitelinks(): AdWordsSelector; + snippets(): AdWordsSelector; +} + +interface AdGroupExtensions extends AccountExtensions { + phoneNumbers(): AdWordsSelector; +} + +interface CampaignExtensions extends AccountExtensions { + phoneNumbers(): AdWordsSelector; +} + +interface AdWordsAdExtensions extends AdGroupExtensions { + newCalloutBuilder(): CalloutBuilder; + newMessageBuilder(): MessageBuilder; + newMobileAppBuilder(): MobileAppBuilder; + newPhoneNumberBuilder(): PhoneNumberBuilder; + newReviewBuilder(): ReviewBuilder; + newSitelinkBuilder(): SitelinkBuilder; + newSnippetBuilder(): SnippetBuilder; +} + +interface Callout extends AdWordsEntity, + hasMobilePreferred, + hasStartAndEndDate, + hasSchedules, + hasStats, + isAdGroupChild { + getId(): number; + getText(): string; + setText(text: string): void; +} + +interface CalloutBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasSchedulesBuilder>, + hasStartAndEndDateBuilder> { + withText(text: string): CalloutBuilder; +} + +interface Message extends AdWordsEntity, + hasMobilePreferred, + hasStartAndEndDate, + hasSchedules, + hasStats, + isAdGroupChild { + getBusinessName(): string; + getCountryCode(): string; + getExtensionText(): string; + getId(): number; + getMessageText(): string; + getPhoneNumber(): string; + setBusinessName(businessName: string): void; + setCountryCode(countryCode: string): void; + setExtensionText(extensionText: string): void; + setMessageText(messageText: string): void; + setPhoneNumber(phoneNumber: string): void; +} + +interface MessageBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasStartAndEndDateBuilder>, + hasSchedulesBuilder> { + withBusinessName(businessName: string): MessageBuilder; + withCountryCode(countryCode: string): MessageBuilder; + withExtensionText(extensionText: string): MessageBuilder; + withMessageText(messageText: string): MessageBuilder; + withPhoneNumber(phoneNumber: string): MessageBuilder; +} + +interface MobileApp extends AdWordsEntity, + hasMobilePreferred, + hasStartAndEndDate, + hasSchedules, + hasStats, + isAdGroupChild { + clearLinkUrl(): void; + getAppId(): string; + getId(): number; + getLinkText(): string; + getStore(): AppStore; + setAppId(appId: string): void; + setLinkText(linkText: string): void; + setStore(): AppStore; + urls(): MobileAppUrls; +} + +interface MobileAppUrls extends AdWordsUrls, hasGetFinalUrl, hasSetFinalUrl, hasSetTrackingTemplate { + clearMobileFinalUrl(): void; + clearTrackingTemplate(): void; +} + +interface MobileAppBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasStartAndEndDateBuilder>, + hasSchedulesBuilder>, + hasTrackingTemplateBuilder>, + hasFinalUrlBuilder> { + withAppId(appId: string): MobileAppBuilder; + withLinkText(linkText: string): MobileAppBuilder; + withStore(store: AppStore): MobileAppBuilder; +} + +interface PhoneNumber extends AdWordsEntity, + hasMobilePreferred, + hasSchedules, + hasStartAndEndDate, + hasStats, + isAdGroupChild { + getCountry(): string; + getId(): number; + getPhoneNumber(): string; + setCountry(country: string): void; + setPhoneNumber(phoneNumber: string): void; +} + +interface PhoneNumberBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasStartAndEndDateBuilder>, + hasSchedulesBuilder> { + withCountry(country: string): PhoneNumberBuilder; + withPhoneNumber(phoneNumber: string): PhoneNumberBuilder; +} + +interface Review extends AdWordsEntity, + hasMobilePreferred, + hasSchedules, + hasStartAndEndDate, + hasStats, + isAdGroupChild { + getId(): number; + getSourceName(): string; + getSourceUrl(): string; + getText(): string; + isExactlyQuoted(): boolean; + setExactlyQuoted(isExactlyQuoted: boolean): void; + setSourceName(sourceName: string): void; + setSourceUrl(sourceUrl: string): void; + setText(text: string): void; +} + +interface ReviewBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasStartAndEndDateBuilder>, + hasSchedulesBuilder> { + withExactlyQuoted(exactlyQuoted: boolean): ReviewBuilder; + withSourceName(sourceName: string): ReviewBuilder; + withSourceUrl(sourceUrl: string): ReviewBuilder; + withText(text: string): ReviewBuilder; +} + +interface Sitelink extends AdWordsEntity, + hasMobilePreferred, + hasSchedules, + hasStartAndEndDate, + hasStats, + isAdGroupChild { + clearDescription1(): void; + clearDescription2(): void; + clearLinkUrl(): void; + getDescription1(): string; + getDescription2(): string; + getId(): number; + getLinkText(): string; + setDescription1(description1: string): void; + setDescription2(description2: string): void; + setLinkText(linkText: string): void; + urls(): SitelinkUrls; +} + +interface SitelinkUrls extends AdWordsUrls, hasSetTrackingTemplate, hasGetFinalUrl, hasSetFinalUrl { + clearMobileFinalUrl(): void; +} + +interface SitelinkBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasStartAndEndDateBuilder>, + hasSchedulesBuilder>, + hasTrackingTemplateBuilder>, + hasFinalUrlBuilder> { + withDescription1(description1: string): SitelinkBuilder; + withDescription2(description2: string): SitelinkBuilder; + withLinkText(linkText: string): SitelinkBuilder; +} + +interface Snippet extends AdWordsEntity, + hasMobilePreferred, + hasSchedules, + hasStartAndEndDate, + hasStats, + isAdGroupChild { + getHeader(): string; + getId(): number; + getValues(): string[]; + setHeader(header: string): void; + setValues(values: string[]): void; +} + +interface SnippetBuilder extends AdWordsBuilder, + hasMobilePreferredBuilder>, + hasStartAndEndDateBuilder>, + hasSchedulesBuilder> { + withHeader(header: string): SnippetBuilder; + withValues(values: string[]): SnippetBuilder; +} + +// Ad Group +interface AdGroup extends AdWordsEntity, canBeEnabled, hasExtensions, hasLabels, hasStats, isCampaignChild { + adParams(): AdWordsSelector; + ads(): AdWordsSelector; + bidding(): AdGroupBidding; + clearNegativeKeyword(keywordText: string): void; + devices(): AdGroupDevices; + display(): AdGroupDisplay; + extensions(): AdGroupExtensions; + getId(): number; + getName(): string; + isRemoved(): boolean; + keywords(): AdWordsSelector; + negativeKeywords(): AdWordsSelector; + newAd(): AdBuilderSpace; + newKeywordBuilder(): KeywordBuilder; + setName(name: string): void; + targeting(): AdGroupTargeting; + urls(): AdGroupUrls; +} + +interface AdGroupUrls extends AdWordsUrls, hasSetTrackingTemplate { + clearTrackingTemplate(): void; +} + +interface AdGroupBuilder extends AdWordsBuilder, + hasBiddingStrategyBuilder>, + hasTrackingTemplateBuilder> { + withCpa(cpa: number): AdGroupBuilder; + withCpc(cpc: number): AdGroupBuilder; + withCpm(cpm: number): AdGroupBuilder; + withName(name: string): AdGroupBuilder; + withStatus(status: string): AdGroupBuilder; +} + +interface AdGroupBidding extends KeywordBidding { + getCpa(): number; + setCpa(cpa: number): void; +} + +interface AdGroupDevices { + clearDesktopBidModifier(): void; + clearMobileBidModifier(): void; + clearTabletBidModifier(): void; + getDesktopBidModifier(): number; + getMobileBidModifier(): number; + getTabletBidModifier(): number; + setDesktopBidModifier(modifier: number): void; + setMobileBidModifier(modifier: number): void; + setTabletBidModifier(modifier: number): void; +} + +interface AdGroupTargeting extends AdWordsTargeting { + getTargetingSetting(): string; + newUserListBuilder(): SearchAdGroupAudienceBuilder; + setTargetingSetting(criterionTypeGroup: CriterionTypeGroup, targetingSetting: TargetingSetting): void; +} + +// Ad Param +interface AdParam extends AdWordsEntity { + getAdGroup(): AdGroup; + getInde(): number; + getInsertionText(): string; + getKeyword(): Keyword; + remove(): void; + setInsertionText(insertionText: string): void; +} + +// Ad +interface Ad extends AdWordsEntity, + canBeEnabled, + hasLabels, + hasStats, + isAdGroupChild { + asType(): AdViewSpace; + getApprovalStatus(): ApprovalStatus; + getDisapprovalReasons(): string[]; + getId(): number; + getPolicyApprovalStatus(): PolicyApprovalStatus; + getPolicyTopics(): PolicyTopic[]; + getType(): AdType; + isType(): AdTypeSpace; + remove(): void; + urls(): AdUrls; +} + +interface AdBuilder extends AdWordsBuilder, hasFinalUrlBuilder, hasTrackingTemplateBuilder { } + +interface AdBuilderSpace { + expandedTextAdBuilder(): ExpandedTextAdBuilder; + gmailImageAdBuilder(): GmailImageAdBuilder; + gmailMultiProductAdBuilder(): GmailMultiProductAdBuilder; + gmailSinglePromotionAdBuilder(): GmailSinglePromotionAdBuilder; + html5AdBuilder(): Html5AdBuilder; + imageAdBuilder(): ImageAdBuilder; + responsiveDisplayAdBuilder(): ResponsiveDisplayAdBuilder; +} + +interface AdTypeSpace { + expandedTextAd(): boolean; + gmailImageAd(): boolean; + gmailMultiProductAd(): boolean; + gmailSinglePromotionAd(): boolean; + html5Ad(): boolean; + imageAd(): boolean; + responsiveDisplayAd(): boolean; +} + +interface AdUrls extends AdWordsUrls, hasGetFinalUrl { } + +interface AdViewSpace { + expandedTextAd(): ExpandedTextAd; + gmailImageAd(): GmailImageAd; + gmailMultiProductAd(): GmailMultiProductAd; + gmailSinglePromotionAd(): GmailSinglePromotionAd; + html5Ad(): Html5Ad; + imageAd(): ImageAd; + responsiveDisplayAd(): ResponsiveDisplayAd; +} + +interface ExpandedTextAd extends Ad { + getDescription(): string; + getHeadlinePart1(): string; + getHeadlinePart2(): string; + getPath1(): string; + getPath2(): string; +} + +interface ExpandedTextAdBuilder extends AdBuilder> { + withDescription(descriptions: string): ExpandedTextAdBuilder; + withHeadlinePart1(headline1: string): ExpandedTextAdBuilder; + withHeadlinePart2(headline2: string): ExpandedTextAdBuilder; + withPath1(path1: string): ExpandedTextAdBuilder; + withPath2(path2: string): ExpandedTextAdBuilder; +} + +interface GmailImageAd extends Ad { + getAdvertiser(): string; + getDescription(): string; + getImage(): Media; + getLogo(): Media; + getName(): string; + getSubject(): string; +} + +interface GmailImageAdBuilder extends AdBuilder> { + withAdvertiser(advertiser: string): GmailImageAdBuilder; + withDescription(description: string): GmailImageAdBuilder; + withDisplayUrl(displayUrl: string): GmailImageAdBuilder; + withImage(image: Media): GmailImageAdBuilder; + withLogo(logo: Media): GmailImageAdBuilder; + withName(name: string): GmailImageAdBuilder; + withSubject(subject: string): GmailImageAdBuilder; +} + +interface GmailMultiProductAd extends Ad { + getAdvertiser(): string; + getContent(): string; + getDescription(): string; + getHeader(): Media; + getHeadline(): string; + getHeadlineColor(): string; + getItemButtonCallsToAction(): string[]; + getItemButtonColor(): string[]; + getItemButtonFinalMobileUrls(): string[]; + getItemButtonFinalUrls(): string[]; + getItemButtonTextColors(): string[]; + getItemButtonTrackingTemplates(): string[]; + getItemImages(): Media[]; + getItemTitleColors(): string[]; + getItemTitles(): string[]; + getLogo(): Media; + getName(): string; + getSubject(): string; +} + +interface GmailMultiProductAdBuilder extends AdBuilder> { + withAdvertiser(advertiser: string): GmailMultiProductAdBuilder; + withContent(content: string): GmailMultiProductAdBuilder; + withDescription(description: string): GmailMultiProductAdBuilder; + withHeader(header: Media): GmailMultiProductAdBuilder; + withHeadline(headline: string): GmailMultiProductAdBuilder; + withHeadlineColor(headlineColor: string): GmailMultiProductAdBuilder; + withItemButtonCallsToAction(itemCallsToAction: string[]): GmailMultiProductAdBuilder; + withItemButtonFinalMobileUrls(itemButtonFinalMobileUrls: string[]): GmailMultiProductAdBuilder; + withItemButtonFinalUrls(itemButtonFinalUrls: string[]): GmailMultiProductAdBuilder; + withItemButtonTrackingTemplates(itemButtonTrackingTemplates: string[]): GmailMultiProductAdBuilder; + withItemImages(itemImages: Media[]): GmailMultiProductAdBuilder; + withItemTitle(itemTitles: string[]): GmailMultiProductAdBuilder; + withLogo(logo: Media): GmailMultiProductAdBuilder; + withName(name: string): GmailMultiProductAdBuilder; + withSubject(subject: string): GmailMultiProductAdBuilder; +} + +interface GmailSinglePromotionAd extends Ad { + getAdvertiser(): string; + getCallToAction(): string; + getCallToActionButtonColor(): string; + getCallToActionTextColor(): string; + getContent(): string; + getDescription(): string; + getHeader(): Media; + getHeadline(): string; + getHeadlineColor(): string; + getImage(): Media; + getLogo(): Media; + getName(): string; + getSubject(): string; +} + +interface GmailSinglePromotionAdBuilder extends AdBuilder> { + withAdvertiser(advertiser: string): GmailSinglePromotionAdBuilder; + withCallToAction(callToAction: string): GmailSinglePromotionAdBuilder; + withCallToActionButtonColor(callToActionButtonColor: string): GmailSinglePromotionAdBuilder; + withCallToActionTextColor(callToActionTextColor: string): GmailSinglePromotionAdBuilder; + withContent(content: string): GmailSinglePromotionAdBuilder; + withDescription(description: string): GmailSinglePromotionAdBuilder; + withDisplayUrl(displayUrl: string): GmailSinglePromotionAdBuilder; + withHeader(header: Media): GmailSinglePromotionAdBuilder; + withHeadline(headline: string): GmailSinglePromotionAdBuilder; + withHeadlineColor(headlineColor: string): GmailSinglePromotionAdBuilder; + withImage(image: Media): GmailSinglePromotionAdBuilder; + withLogo(logo: Media): GmailSinglePromotionAdBuilder; + withName(name: string): GmailSinglePromotionAdBuilder; + withSubject(subject: string): GmailSinglePromotionAdBuilder; +} + +interface Html5Ad extends Ad { + getEntryPoint(): string; + getMediaBundle(): Media; + getName(): string; +} + +interface Html5AdBuilder extends AdBuilder> { + withDisplayUrl(displayUrl: string): Html5AdBuilder; + withEntryPoint(entryPoint: string): Html5AdBuilder; + withMediaBundle(mediaBundle: Media): Html5AdBuilder; + withName(name: string): Html5AdBuilder; + withDimensions(dimensions: string): Html5AdBuilder; +} + +interface ImageAd extends Ad { + getImage(): Media; + getName(): string; +} + +interface ImageAdBuilder extends AdBuilder> { + withDisplayUrl(displayUrl: string): ImageAdBuilder; + withImage(image: Media): ImageAdBuilder; + withName(name: string): ImageAdBuilder; +} + +interface PolicyTopic { + getId(): string; + getName(): string; + getType(): string; +} + +interface ResponsiveDisplayAd extends Ad { + getBusinessName(): string; + getDescription(): string; + getLogoImage(): Media; + getLongHeadline(): string; + getMarketingImage(): Media; + getShortHeadline(): string; +} + +interface ResponsiveDisplayAdBuilder extends AdBuilder> { + withBusinessName(businessName: string): ResponsiveDisplayAdBuilder; + withDescription(description: string): ResponsiveDisplayAdBuilder; + withLogoImage(logo: Media): ResponsiveDisplayAdBuilder; + withLongHeadline(longHeadline: string): ResponsiveDisplayAdBuilder; + withMarketingImage(marketingImage: Media): ResponsiveDisplayAdBuilder; + withShortHeadline(shortHeadline: string): ResponsiveDisplayAdBuilder; +} + +// Bidding Strategies +interface BiddingStrategy extends hasStats { + adGroups(): AdWordsSelector; + campaigns(): AdWordsSelector; + getId(): number; + getName(): string; + getType(): string; + keywords(): AdWordsSelector; + shoppingAdGroups(): AdWordsSelector; // TODO: ShoppingAdGroup + shoppingCampaigns(): AdWordsSelector; // TODO: ShoppingCampaigns +} + +// Budget Orders +interface BillingAccount { + getId(): number; + getName(): string; + getPrimaryBillingId(): string; + getSecondaryBillingId(): string; +} + +interface BudgetOrder { + getBillingAccount(): BillingAccount; + getEndDatetime(): AdWordsDate; + getId(): number; + getName(): string; + getPoNumber(): number; + getSpendingLimit(): number; + getStartDateTime(): AdWordsDate; + getTotalAdjustments(): number; +} + +// Budgets +interface Budget extends AdWordsEntity, hasStats { + campaigns(): AdWordsSelector; + getAmount(): number; + getDeliveryMethod(): string; + getId(): number; + getName(): string; + isExplicitlyShared(): boolean; + setAmount(amount: number): void; +} + +// Bulk Uploads +interface BulkUploads { + newCsvUpload(columnNames: string[], optArgs: FileUploadArguments): CsvUpload; + newFileUpload(file: GoogleAppsScript.Spreadsheet.Sheet | GoogleAppsScript.Base.Blob | GoogleAppsScript.Drive.File, optArgs: FileUploadArguments): FileUpload; +} + +interface BulkUpload { + forCampaignManagement(): T; + forOfflineConversions(): T; + preview(): void; + setFileName(fileName: string): T; +} + +interface FileUpload extends BulkUpload { + apply(): void; +} + +interface CsvUpload extends BulkUpload { + apply(): void; + append(row: {}): CsvUpload; +} + +interface FileUploadArguments { + fileLocale?: string; + moneyInMicros?: boolean; + timeZone?: string; +} + +// Campaign +interface Campaign extends AdWordsEntity, canBeEnabled, hasLabels, hasStartAndEndDate, hasStats { + adGroups(): AdWordsSelector; + addAdSchedule(adSchedule: AdSchedule): AdWordsOperation; + addAdSchedule(dayOfWeek: DayOfWeekString, startHour: number, startMinute: number, endHour: number, endMinute: number, bidModifier: number): AdWordsOperation; + addCallout(calloutExtension: Callout): AdWordsOperation; + addExcludedPlacementList(excludedPlacementList: ExcludedPlacementList): void; + addLocation(locationId: number | TargetedLocation | LocationObject): AdWordsOperation; + addLocation(locationId: number, bidModifier: number): AdWordsOperation; + addMessage(messageExtension: Message): AdWordsOperation; + addMobileApp(mobileAppExtension: MobileApp): AdWordsOperation; + addNegativeKeywordLIst(negativeKeywordList: NegativeKeywordList): void; + addPhoneNumber(phoneNumberExtension: PhoneNumber): AdWordsOperation; + addProximity(proximity: ProximityObject | TargetedProximity): AdWordsOperation; + addProximity(latitude: number, longitude: number, radius: number, radiusUnits: RadiusUnits, optArgs: { bidModifier: number, address: AddressObject}): AdWordsOperation; + addReview(reviewExtension: Review): AdWordsOperation; + addSiteLink(sitelinkExtension: Sitelink): AdWordsOperation; + addSnippet(snippetExtension: Snippet): AdWordsOperation; + ads(): AdWordsSelector; + bidding(): CampaignBidding; + createNegativeKeyword(keywordText: string): void; + display(): CampaignDisplay; + excludeLocation(location: ExcludedLocation | number | { id: number }): AdWordsOperation; + excludedPlacementLists(): AdWordsSelector; + extensions(): CampaignExtensions; + getAdRotationType(): AdRotationType; + getBiddingStrategyType(): BiddingStrategyString; + getBudget(): Budget; + getId(): number; + getName(): string; + isRemoved(): boolean; + keywords(): AdWordsSelector; + negativeKeywordLists(): AdWordsSelector; + negativeKeywords(): AdWordsSelector; + newAdGroupBuilder(): AdGroupBuilder; + removeCallout(calloutExtension: Callout): void; + removeExcludedPlacementList(excludedPlacementList: ExcludedPlacementList): void; + removeMessage(message: Message): void; + removeMobileApp(mobileApp: MobileApp): void; + removeNegativeKeywordList(negativeKeywordList: NegativeKeywordList): void; + removePhoneNumber(phoneNumber: PhoneNumber): void; + removeReview(review: Review): void; + removeSitelink(sitelkin: Sitelink): void; + removeSnippet(snippet: Snippet): void; + setAdRotationType(adRotationType: AdRotationType): void; + setName(name: string): void; + targeting(): CampaignTargeting; + urls(): CampaignUrls; +} + +interface CampaignBidding extends AdWordsBidding, canSetBiddingStrategy { } + +interface CampaignTargeting extends AdWordsTargeting { + adSchedules(): AdWordsSelector; + excludedContentLabels(): AdWordsSelector; + excludedLocations(): AdWordsSelector; + getTargetingSetting(criterionTypeGroup: CriterionTypeGroup): TargetingSetting; + languages(): AdWordsSelector; + newUserListBuilder(): SearchCampaignAudienceBuilder; + platforms(): AdWordsSelector; + setTargetingSetting(criterionTypeGroup: CriterionTypeGroup, targetingSetting: TargetingSetting): void; + targetedLocations(): AdWordsSelector; + targetedProximities(): AdWordsSelector; +} + +interface CampaignUrls extends AdWordsUrls, hasSetTrackingTemplate { + clearTrackingTemplate(): void; +} + +// Common +interface CurrentAccount extends AdWordsEntity, hasStats { + addCallout(calloutExtension: Callout): AdWordsOperation; + addMobileApp(mobileAppExtension: MobileApp): AdWordsOperation; + addReview(reviewExtension: Review): AdWordsOperation; + addSnippet(snippetExtension: Snippet): AdWordsOperation; + extensions(): AccountExtensions; + getCurrencyCode(): string; + getCustomerId(): string; + getName(): string; + getTimeZone(): string; + removeCallout(calloutExtension: Callout): void; + removeMobileApp(mobileAppExtension: MobileApp): void; + removeReview(reviewExtension: Review): void; + removeSnippet(snippetExtension: Snippet): void; +} + +interface ExecutionInfo { + getRemainingCreateQuota(): number; + getRemainingGetQuota(): number; + getRemainingTime(): number; + isPreview(): boolean; +} + +// Display +interface DisplayBuilder extends AdWordsBuilder { + exclude(): AdWordsOperation; + withCpc(cpc: number): T; + withCpm(cpm: number): T; +} + +interface DisplayBidding extends AdWordsBidding { + clearCpc(): void; + clearCpm(): void; + getCpc(): number; + getCpm(): number; + setCpc(cpc: number): void; + setCpm(cpm: number): void; +} + +interface Audience extends ExcludedAudience, hasStats { + bidding(): AudienceBidding; + isEnabled(): boolean; + isPaused(): boolean; +} + +interface ExcludedAudience extends isAdGroupChild { + getAudienceId(): number; + getAudienceType(): AudienceType; + getId(): number; + remove(): void; +} + +interface AudienceBuilder extends DisplayBuilder> { + withAudience(userList: UserList): AudienceBuilder; + withAudienceId(audienceId: number): AudienceBuilder; + withAudienceType(audienceType: AudienceType): AudienceBuilder; +} + +interface AudienceBidding extends AdWordsBidding { + clearCpc(): void; + clearCpm(): void; + getCpc(): number; + getCpm(): number; + setCpc(cpc: number): void; + setCpm(cpm: number): void; +} + +interface DisplayKeyword extends ExcludedDisplayKeyword, hasStats { + bidding(): DisplayKeywordBidding; +} + +interface ExcludedDisplayKeyword extends isAdGroupChild { + getId(): number; + getText(): string; + remove(): void; +} + +interface DisplayKeywordBuilder extends DisplayBuilder> { + withText(text: string): DisplayKeywordBuilder; +} + +interface DisplayKeywordBidding extends DisplayBidding, canSetBiddingStrategy { + clearStrategy(): void; +} + +interface Placement extends ExcludedPlacement, hasStats { + bidding(): PlacementBidding; + isEnabled(): boolean; + isManaged(): boolean; + isPaused(): boolean; +} + +interface ExcludedPlacement extends isAdGroupChild { + getId(): number; + getUrl(): string; + remove(): void; +} + +interface PlacementBuilder extends DisplayBuilder> { + withUrl(url: string): PlacementBuilder; +} + +interface PlacementBidding extends DisplayBidding, canSetBiddingStrategy { + clearStrategy(): void; +} + +interface Topic extends ExcludedTopic, hasStats { + bidding(): TopicBidding; + isEnabled(): boolean; + isPaused(): boolean; +} + +interface ExcludedTopic extends isAdGroupChild { + getId(): number; + getTopicId(): number; + remove(): void; +} + +interface TopicBuilder extends DisplayBuilder> { + withTopicId(topicId: number): TopicBuilder; +} + +interface TopicBidding extends AdWordsBidding { + clearCpc(): void; + clearCpm(): void; + getCpc(): number; + getCpm(): number; + setCpc(cpc: number): void; + setCpm(cpm: number): void; +} + +interface AdGroupDisplay extends Display { + excludedAudiences(): AdWordsSelector; + excludedKeywords(): AdWordsSelector; + excludedPlacements(): AdWordsSelector; + excludedTopics(): AdWordsSelector; + newAudienceBuilder(): AudienceBuilder; + newKeywordBuilder(): DisplayKeywordBuilder; + newPlacementBuilder(): PlacementBuilder; + newTopicBuilder(): TopicBuilder; +} + +interface CampaignDisplay extends Display { + excludedAudiences(): AdWordsSelector; + excludedKeywords(): AdWordsSelector; + excludedPlacements(): AdWordsSelector; + excludedTopics(): AdWordsSelector; + newAudienceBuilder(): AudienceBuilder; + newKeywordBuilder(): DisplayKeywordBuilder; + newPlacementBuilder(): PlacementBuilder; + newTopicBuilder(): TopicBuilder; +} + +interface Display { + audiences(): AdWordsSelector; + keywords(): AdWordsSelector; + placements(): AdWordsSelector; + topics(): AdWordsSelector; +} + +// Keywords +interface Keyword extends AdWordsEntity, canBeEnabled, hasLabels, hasStats, isAdGroupChild { + adParams(): AdWordsSelector; + bidding(): KeywordBidding; + clearDesinationUrl(): void; + getApprovalStatus(): ApprovalStatus; + getFirstPageCpc(): number; + getId(): number; + getMatchType(): MatchType; + getQualityScore(): number; + getText(): string; + getTopOfPageCpc(): number; + remove(): void; + setAdParam(index: number, insertionText: string): void; + urls(): KeywordUrls; +} + +interface KeywordBidding extends AdWordsBidding, canSetBiddingStrategy { + clearStrategy(): void; + getCpc(): number; + getCpm(): number; + setCpc(cpc: number): void; + setCpm(cpm: number): void; +} + +interface KeywordBuilder extends AdWordsBuilder, + hasBiddingStrategyBuilder>, + hasTrackingTemplateBuilder>, + hasFinalUrlBuilder> { + withCpc(cpc: number): KeywordBuilder; + withCpm(cpm: number): KeywordBuilder; + withText(text: string): KeywordBuilder; +} + +interface KeywordUrls extends AdWordsUrls, hasGetFinalUrl, hasSetTrackingTemplate, hasSetFinalUrl { + clearFinalUrl(): void; + clearMobileFinalUrl(): void; + clearTrackingTemplate(): void; +} + +// Labels +interface Label extends AdWordsEntity { + adGroups(): AdWordsSelector; + ads(): AdWordsSelector; + campaigns(): AdWordsSelector; + getColor(): string; + getDescription(): string; + getId(): string; + getName(): string; + keywords(): AdWordsSelector; + remove(): void; + setColor(color: string): void; + setDescription(description: string): void; + setName(name: string): void; +} + +// Media +interface AdMedia { + media(): AdWordsSelector; + newImageBuilder(): ImageBuilder; + newMediaBundleBuilder(): MediaBundleBuilder; + newVideoBuilder(): VideoBuilder; +} + +interface Dimensions { + getHeight(): number; + getWidth(): number; +} + +interface ImageBuilder extends AdWordsBuilder { + withData(data: GoogleAppsScript.Base.Blob): ImageBuilder; + withName(name: string): ImageBuilder; +} + +interface Media { + getDimensions(): MediaDimensions; + getFileSize(): number; + getId(): number; + getMimeType(): string; + getName(): string; + getReferenceId(): string; + getSourceUrl(): string; + getType(): MediaType; + getUrls(): MediaUrls; + getYouTubeVideoId(): string | void; +} + +interface MediaBundleBuilder extends AdWordsBuilder { + withData(data: GoogleAppsScript.Base.Blob): MediaBundleBuilder; + withName(name: string): MediaBundleBuilder; +} + +interface MediaDimensions { + getFullMediaDimensions(): Dimensions; + getPreviewMediaDimensions(): Dimensions; + getShrunkenMediaDimensions(): Dimensions; + getVideoThumbnailDimensions(): Dimensions; +} + +interface MediaUrls { + getFullMediaUrl(): string; + getPreviewMediaUrl(): string; + getShrunkenMediaUrl(): string; + getVideoThumbnailMediaUrl(): string; +} + +interface VideoBuilder extends AdWordsBuilder { + withYouTubeVideoId(youTubeVideoId: string): VideoBuilder; +} + +// Negative Keywords +interface NegativeKeyword extends AdWordsEntity, isAdGroupChild { + getMatchType(): MatchType; + getText(): string; + remove(): void; +} + +// Reports +interface AdWordsReport { + exportToSheet(sheet: GoogleAppsScript.Spreadsheet.Sheet): void; + getColumnHeader(awqlColumnName: string): AdWordsReportColumnHeader; + rows(): AdWordsReportRowIterator; +} + +interface AdWordsReportRow { + formatForUpload(): {}; +} + +interface AdWordsReportRowIterator { + hasNext(): boolean; + next(): AdWordsReportRow; +} + +interface AdWordsReportColumnHeader { + getBulkUploadColumnName(): string; + getReportColumnName(): string; +} + +// Shared Sets +interface ExcludedPlacementList extends AdWordsEntity { + addExcludedPlacement(url: string): void; + addExcludedPlacements(urls: string[]): void; + campaigns(): AdWordsSelector; + excludedPlacements(): AdWordsSelector; + getId(): number; + getName(): string; + setName(name: string): void; +} + +interface ExcludedPlacementListBuilder extends AdWordsBuilder { + withName(name: string): ExcludedPlacementListBuilder; +} + +interface SharedExcludedPlacement extends AdWordsEntity { + getExcludedPlacementList(): ExcludedPlacementList; + getUrl(): string; + remove(): void; +} + +interface NegativeKeywordList extends AdWordsEntity { + addNegativeKeyword(keywordText: string): void; + addNegativeKeywords(keywordTexts: string[]): void; + campaigns(): AdWordsSelector; + getId(): number; + getName(): string; + negativeKeywords(): AdWordsSelector; + setName(): string; +} + +interface NegativeKeywordListBuilder extends AdWordsBuilder { + withName(name: string): NegativeKeywordListBuilder; +} + +interface SharedNegativeKeyword extends AdWordsEntity { + getMatchType(): MatchType; + getNegativeKeywordList(): NegativeKeywordList; + getText(): string; + remove(): void; +} + +// Shopping + +// Targeting +interface AdSchedule extends AdWordsEntity, canSetBidModifier, hasStats, isCampaignChild { + getCampaignType(): CampaignType; + getDayOfWeek(): DayOfWeekString; + getEndHour(): number; + getEndMinute(): number; + getId(): number; + getStartHour(): number; + getStartMinute(): number; + getVideoCampaign(): Campaign; // TODO: VideoCampaign + remove(): void; +} + +interface SearchAdGroupAudience extends SearchAdGroupExcludedAudience, hasStats { + bidding(): SearchAudienceBidding; + isEnabled(): boolean; + isPaused(): boolean; +} + +interface SearchAdGroupAudienceBuilder extends AdWordsBuilder { + exclude(): AdWordsOperation; + withAudience(userList: UserList): SearchAdGroupAudienceBuilder; + withAudienceId(audienceId: number): SearchAdGroupAudienceBuilder; + withBidModifier(modifier: number): SearchAdGroupAudienceBuilder; +} + +interface SearchAdGroupExcludedAudience extends isAdGroupChild { + getAudienceId(): number; + getId(): number; + getName(): string; + remove(): void; +} + +interface SearchAudienceBidding extends canSetBidModifier { + clearBidModifier(): void; +} + +interface SearchCampaignAudience extends SearchCampaignExcludedAudience { + bidding(): SearchAudienceBidding; + isEnabled(): boolean; + isPaused(): boolean; +} + +interface SearchCampaignAudienceBuilder extends AdWordsBuilder { + exclude(): AdWordsOperation; + withAudience(userList: UserList): SearchCampaignAudienceBuilder; + withAudienceId(audienceId: number): SearchCampaignAudienceBuilder; + withBidModifier(modifier: number): SearchCampaignAudienceBuilder; +} + +interface SearchCampaignExcludedAudience extends isCampaignChild { + getAudienceId(): number; + getId(): number; + getName(): string; + remove(): void; +} + +interface ExcludedContentLabel extends AdWordsEntity, isCampaignChild { + getCampaignType(): CampaignType; + getContentLabelType(): string; // TODO: ContentLabelType + getId(): number; + getVideoCampaign(): Campaign; // TODO: VideoCampaign + remove(): void; +} + +interface ExcludedLocation extends AdWordsEntity, isCampaignChild { + getCampaignType(): CampaignType; + getCountryCode(): string; + getId(): number; + getName(): string; + getTargetType(): TargetType; + getTargetingStatus(): TargetingStatus; + getVideoCampaign(): Campaign; // TODO: VideoCampaign + remove(): void; +} + +interface Language extends AdWordsEntity, isCampaignChild { + getCampaignType(): CampaignType; + getId(): number; + getName(): string; + getVideoCampaign(): Campaign; // TODO: VideoCampaign + remove(): void; +} + +interface TargetedLocation extends ExcludedLocation, canSetBidModifier, hasStats { } + +interface Platform extends AdWordsEntity, canSetBidModifier, hasStats, isCampaignChild { + getCampaignType(): CampaignType; + getId(): number; + getName(): string; + getVideoCampaign(): Campaign; // TODO: VideoCampaign +} + +interface Address { + getCityName(): string; + getCountryCode(): string; + getPostalCode(): string; + getProvinceCode(): string; + getProvinceName(): string; + getStreetAddress(): string; + getStreetAddress2(): string; +} + +interface TargetedProximity extends AdWordsEntity, canSetBidModifier, hasStats, isCampaignChild { + getAddress(): Address; + getCampaignType(): CampaignType; + getId(): number; + getLatitude(): number; + getLongitude(): number; + getRadius(): number; + getRadiusUnits(): RadiusUnits; + getVideoCampaign(): Campaign; // TODO: VideoCampaign + remove(): void; +} + +interface Targeting extends VideoCampaignTargeting { + audiences(): AdWordsSelector; + excludedAudiences(): AdWordsSelector; +} + +interface VideoCampaignTargeting { + adSchedules(): AdWordsSelector; + excludedContentLabels(): AdWordsSelector; + excludedLocations(): AdWordsSelector; + languages(): AdWordsSelector; + platforms(): AdWordsSelector; + targetedLocations(): AdWordsSelector; + targetedProximities(): AdWordsSelector; +} + +// User Lists +interface UserList { + close(): void; + excludedAdGroups(): AdWordsSelector; + excludedCampaigns(): AdWordsSelector; + getDescription(): string; + getId(): number; + getMembershipLifeSpan(): number; + getName(): string; + getSizeForDisplay(): number; + getSizeForSearch(): number; + getSizeRangeForDisplay(): UserListSizeRange; + getSizeRangeForSearch(): UserListSizeRange; + getType(): UserListType; + isClosed(): boolean; + isEligibleForDisplay(): boolean; + isEligibleForSearch(): boolean; + isOpen(): boolean; + isReadOnly(): boolean; + open(): void; + setDescription(description: string): void; + setMembershipLifeSpan(membershipLifeSpan: number): void; + setName(name: string): void; + targetedAdGroups(): AdWordsSelector; + targetedCampaigns(): AdWordsSelector; +} + +// Video + +// Non-entity +interface ExtensionSchedule { + getDayOfWeek(): DayOfWeekString; + getEndHour(): number; + getEndMinute(): number; + getStartHour(): number; + getStartMinute(): number; +} + +interface ExtensionScheduleInput { + dayOfWeek?: DayOfWeekString; + startHour?: number; + startMinute?: number; + endHour?: number; + endMinute?: number; +} + +interface LocationObject { + id: number; + bidModifier?: number; +} + +interface ProximityObject { + latitude: number; + longitude: number; + radius: number; + radiusUnits: RadiusUnits; + bidModifier?: number; + address?: AddressObject; +} + +interface AddressObject { + streetAddress: string; + streetAddress2: string; + cityName: string; + provinceName: string; + provinceCode: string; + postalCode: string; + countryCode: string; +} + +interface ReportOptionArguments { + includeZeroImpressions?: boolean; + returnMoneyInMicros?: boolean; + apiVersion?: string; + resolveGeoNames?: boolean; +} + +// Extendables +interface canBeEnabled { + enable(): void; + isEnabled(): boolean; + isPaused(): boolean; + pause(): void; +} + +interface canSetBiddingStrategy { + setStrategy(biddingStrategy: BiddingStrategyString | BiddingStrategy): void; +} + +interface canSetBidModifier { + getBidModifier(): number; + setBidModifier(modifier: number): void; +} + +interface hasBiddingStrategyBuilder { + withBiddingStrategy(biddingStrategy: BiddingStrategyString | BiddingStrategy): B; +} + +interface hasExtensions { + addCallout(calloutExtension: Callout): AdWordsOperation; + addMessage(messageExtension: Message): AdWordsOperation; + addMobileApp(mobileAppExtension: MobileApp): AdWordsOperation; + addPhoneNumber(phoneNumberExtension: PhoneNumber): AdWordsOperation; + addReview(reviewExtension: Review): AdWordsOperation; + addSitelink(sitelinkExtension: Sitelink): AdWordsOperation; + addSnippet(snippetExtension: Snippet): AdWordsOperation; + removeCallout(calloutExtension: Callout): void; + removeMessage(messageExtension: Message): void; + removeMobileApp(mobileAppExtension: MobileApp): void; + removePhoneNumber(phoneNumberExtension: PhoneNumber): void; + removeReview(reviewExtension: Review): void; + removeSitelink(sitelinkExtension: Sitelink): void; + removeSnippet(snippetExtension: Snippet): void; +} + +interface hasGetFinalUrl { + getFinalUrl(): string; + getMobileFinalUrl(): string; +} +interface hasSetFinalUrl { + setFinalUrl(url: string): void; + setMobileFinalUrl(url: string): void; +} +interface hasFinalUrlBuilder { + withFinalUrl(url: string): B; + withMobileFinalUrl(url: string): B; +} + +interface hasLabels { + applyLabel(name: string): void; + labels(): AdWordsSelector

; -export function withRouter>(target: TFunction): TFunction; // decorator signature +// decorator signature +export function withRouter>(target: TFunction): TFunction; From b51a8da34bd7b724123e0490fc083353c6ef8d9e Mon Sep 17 00:00:00 2001 From: Egor Shulga Date: Fri, 11 Aug 2017 17:44:07 +0300 Subject: [PATCH 021/118] Add dtslint type assertion test. --- types/react-router/test/WithRouterDecorator.tsx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/types/react-router/test/WithRouterDecorator.tsx b/types/react-router/test/WithRouterDecorator.tsx index 6d87de2e6b..2eb6bd2335 100644 --- a/types/react-router/test/WithRouterDecorator.tsx +++ b/types/react-router/test/WithRouterDecorator.tsx @@ -5,6 +5,7 @@ interface TOwnProps { username: string; } +// $ExpectType Component @withRouter class Component extends React.Component { render() { @@ -16,4 +17,7 @@ class Component extends React.Component { const WithRouterTest = () => (); +// $ExpectType Element +WithRouterTest(); + export default WithRouterTest; From 6f13f3dcba7ea48db254a36c3a648682cde2820f Mon Sep 17 00:00:00 2001 From: mcousillas6 Date: Sun, 13 Aug 2017 19:50:35 -0300 Subject: [PATCH 022/118] Added missing type cases for ItemSeparatorComponent on react-native FlatList --- types/react-native/index.d.ts | 2 +- types/react-native/test/index.tsx | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/types/react-native/index.d.ts b/types/react-native/index.d.ts index 629c8a8fd5..1229f55acb 100644 --- a/types/react-native/index.d.ts +++ b/types/react-native/index.d.ts @@ -3491,7 +3491,7 @@ export interface FlatListProperties extends VirtualizedListProperties | null + ItemSeparatorComponent?: React.ComponentClass | React.ReactElement | (() => React.ReactElement) | null /** * Rendered when the list is empty. diff --git a/types/react-native/test/index.tsx b/types/react-native/test/index.tsx index 29ff38508a..925d50f61c 100644 --- a/types/react-native/test/index.tsx +++ b/types/react-native/test/index.tsx @@ -208,11 +208,22 @@ InteractionManager.runAfterInteractions(() => { }).then(() => 'done') export class FlatListTest extends React.Component, {}> { + _renderItem = (rowData: any) => { + return ( + + {rowData.item} + + ); + } + + _renderSeparator= () => + render() { return ( {info.item}} + renderItem={this._renderItem} + ItemSeparatorComponent={this._renderSeparator} /> ); } From a57d336c019ff9bcd83ac5618e55345335b36f58 Mon Sep 17 00:00:00 2001 From: sanjaymadane Date: Mon, 14 Aug 2017 11:57:10 +0800 Subject: [PATCH 023/118] openstack-wrapper types added --- openstack-wrapper/index.d.ts | 270 ----------------- openstack-wrapper/openstack-wrapper-tests.ts | 3 - openstack-wrapper/tsconfig.json | 0 openstack-wrapper/tslint.json | 0 types/openstack-wrapper/index.d.ts | 274 ++++++++++++++++++ .../openstack-wrapper-tests.ts | 7 + types/openstack-wrapper/tsconfig.json | 22 ++ 7 files changed, 303 insertions(+), 273 deletions(-) delete mode 100644 openstack-wrapper/index.d.ts delete mode 100644 openstack-wrapper/openstack-wrapper-tests.ts delete mode 100644 openstack-wrapper/tsconfig.json delete mode 100644 openstack-wrapper/tslint.json create mode 100644 types/openstack-wrapper/index.d.ts create mode 100644 types/openstack-wrapper/openstack-wrapper-tests.ts create mode 100644 types/openstack-wrapper/tsconfig.json diff --git a/openstack-wrapper/index.d.ts b/openstack-wrapper/index.d.ts deleted file mode 100644 index e2c41db48f..0000000000 --- a/openstack-wrapper/index.d.ts +++ /dev/null @@ -1,270 +0,0 @@ -// Type definitions for openstack-wrapper 2.1.6 -// Project: https://www.npmjs.com/package/openstack-wrapper -// Definitions by: Sanjay Madane -// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 -export interface RequestOption{ - uri?: string; - headers?: any, - json?: any, - timeout?: any, - metricRequestID?: string, - metricUserName?: string, - metricLogger?: any -} - -export class Glance { - request: any; - mangler:any; - mangleObject:any; - url:any; - token:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any); - setRequestID(request_id: any); - setUserName(user_name: string); - setLogger(logger: any); - setRequest(request_lib: any); - setMangler(mangle_lib: any); - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - listImages(cb: Function); - getImage(id: any, cb: Function); - queueImage(data: any, cb: Function); - uploadImage(id: any, stream: any, cb: Function); - updateImage(id: any, data: any, cb: Function); - removeImage(id: any, cb: Function); -} - -export class Keystone { - request: any; - mangler:any; - mangleObject:any; - url:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string); - - setTimeout(new_timeout: any); - setRequestID(request_id: any); - setUserName(user_name: string); - setLogger(logger: any); - setRequest(request_lib: any); - setMangler(mangle_lib: any); - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - getToken(username: string, password: string, cb: Function); - getProjectTokenForReal(auth_data: any, cb: Function); - getProjectToken(access_token:any, project_id:any, cb: Function); - getProjectTokenByName(access_token:any, domain_id:any, project_name:string, cb: Function); - listProjects(admin_access_token: any, cb: Function); - listUserProjects(username:any, access_token: any, cb: Function); - getProjectByName(admin_access_token: any, project_name:any, cb: Function); - listRoles(project_token:any, cb: Function); - listRoleAssignments(project_token:any, project_id:any, cb: Function); - addRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function); - removeRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function); - listMetaEnvironments(auth_token:any, cb: Function); - listMetaOwningGroups(auth_token:any, cb: Function); - listProjectMeta(project_token:any, project_id:any, cb: Function); - updateProjectMeta(project_token:any, project_id:any,new_meta:any, cb: Function); -} - -export class Neutron { - request: any; - mangler:any; - mangleObject:any; - url:any; - token:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any); - setRequestID(request_id: any); - setUserName(user_name: string); - setLogger(logger: any); - setRequest(request_lib: any); - setMangler(mangle_lib: any); - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - listNetworks(cb: Function); - getNetwork(network_id:string, cb: Function); - listSubnets(cb: Function); - getSubnet(subnet_id:any, cb: Function); - listRouters(cb: Function); - getRouter(router_id:any, cb: Function); - createFloatingIp(floating_network_id:any, cb: Function); - listFloatingIps(options:any, cb: Function); - getFloatingIp(ip_id:any, cb: Function); - updateFloatingIp(ip_id:any, port_id:any,cb: Function); - removeFloatingIp(ip_id:any, cb: Function); - listPorts(options:any, cb: Function); - getPort(port_id:any,cb: Function); - updatePort(port_id:any, data:any, cb: Function); - listSecurityGroups(project_id:any, cb: Function); - getSecurityGroup(group_id:any, cb: Function); - createSecurityGroup(group_name:any, data:any, cb: Function); - updateSecurityGroup(group_id:any, data:any, cb: Function); - removeSecurityGroup(group_id:any, cb: Function); - listSecurityGroupRules(cb: Function); - getSecurityGroupRule(rule_id:any, cb: Function); - createSecurityGroupRule(group_id:any, data:any, cb: Function); - removeSecurityGroupRule(rule_id:any, cb: Function); - listLoadBalancers(cb: Function); - getLoadBalancer(lb_id:any, cb: Function); - createLoadBalancer(tenant_id:any, vip_subnet_id:any, cb: Function); - updateLoadBalancer(lb_id:any, data:any, cb: Function); - removeLoadBalancer(lb_id:any, cb: Function); - listLBListeners(cb: Function); - getLBListener(lb_id:any, cb: Function); - createLBListener(tenant_id:any, loadbalancer_id:any, description:any, protocol:any, data:any, cb: Function); - updateLBListener(listener_id:any, data:any, cb: Function); - removeLBListener(listener_id:any, cb: Function); - listLBPools(cb: Function); - getLBPool(pool_id:any, cb: Function); - createLBPool(tenant_id:any, protocol:any, lb_algorithm:any, listener_id:any, data:any, cb: Function); - updateLBPool(pool_id:any, data:any, cb: Function); - removeLBPool(pool_id:any, cb: Function); - listLBPoolMembers(pool_id:any, cb: Function); - getLBPoolMember(pool_id:any, member_id:any, cb: Function); - createLBPoolMember(pool_id:any, tenant_id:any, address:any, protocol_port:any, data:any, cb: Function); - updateLBPoolMember(pool_id:any, member_id:any, data:any, cb: Function); - removeLBPoolMember(pool_id:any, member_id:any, cb: Function); - listLBHealthMonitors(cb: Function); - getLBHealthMonitor(health_monitor_id:any, cb: Function); - createLBHealthMonitor(tenant_id:any, type:any, delay:any, timeout:any, max_retries:any, pool_id:any, data:any, cb: Function); - updateLBHealthMonitor(health_monitor_id:any, data:any, cb: Function); - removeLBHealthMonitor(health_monitor_id:any, cb: Function); - getLBStats(lb_id:any, cb: Function); -} - -export class Octavia { - url:any; - token:any; - timeout:any; - request_id:any; - user_name:string; - logger:any; - retries: number; - retry_delay: number; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any); - setRequestID(request_id: any); - setUserName(user_name: string); - setLogger(logger: any); - setRequest(request_lib: any); - setRetries(retries:number); - setRetryDelay(retry_delay:number); - getRequestOptions(path: string, json_value:any):RequestOption; - listLoadBalancers(cb:Function); - getLoadBalancer(lb_id: string, cb:Function); - createLoadBalancer(project_id:string, data:any,cb:Function); - updateLoadBalancer(lb_id:string, data:any,cb:Function); - removeLoadBalancer(lb_id:string, cb:Function); - listLBListeners(cb:Function); - getLBListener(listener_id: string, cb:Function); - createLBListener(loadbalancer_id:string, protocol:any, data:any,cb:Function); - updateLBListener(listener_id:string, data:any,cb:Function); - removeLBListener(listener_id: string, cb:Function); - listLBPools(cb:Function); - getLBPool(pool_id: string, cb:Function); - createLBPool(protocol:any, lb_algorithm:any, data:any,cb:Function); - updateLBPool(pool_id:string, data:any,cb:Function); - removeLBPool(pool_id:string, cb:Function); - listLBPoolMembers(pool_id:string, cb:Function); - getLBPoolMember(pool_id:string, member_id:string,cb:Function); - createLBPoolMember(pool_id:string, address:any, protocol_port:any, data:any,cb:Function); - updateLBPoolMember(pool_id:string, member_id:string, data:any,cb:Function); - removeLBPoolMember(pool_id:string, member_id:string,cb:Function); - listLBHealthMonitors(cb:Function); - getLBHealthMonitor(health_monitor_id:string,cb:Function); - createLBHealthMonitor(pool_id:string, type:any, delay:number, timeout:number, max_retries:number, data:any,cb:Function); - updateLBHealthMonitor(health_monitor_id:string, data:any,cb:Function); - removeLBHealthMonitor(health_monitor_id:string,cb:Function); - getLBStats(lb_id:string,cb:Function); -} - -export class Nova { - request: any; - mangler:any; - mangleObject:any; - url:any; - token:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any); - setRequestID(request_id: any); - setUserName(user_name: string); - setLogger(logger: any); - setRequest(request_lib: any); - setMangler(mangle_lib: any); - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - listServers(cb:Function); - getServer(id:string, cb:Function); - createServer(data:any, cb:Function); - renameServer(id:string, name:string, cb:Function); - resizeServer(id:string, flavor:any,cb:Function); - confirmResizeServer(id: string, cb:Function); - revertResizeServer(id:string, cb:Function); - removeServer(id:string,cb:Function); - rebootServer(id:string, cb:Function); - forceRebootServer(id: string, cb:Function); - stopServer(id: string, cb:Function); - startServer(id: string, cb:Function); - pauseServer(id: string, cb:Function); - suspendServer(id: string, cb:Function); - resumeServer(is: string, cb:Function); - getServerConsoleURL(type: any, id: string, cb:Function); - getServerLog(id: string, length: any, cb:Function); - createServerImage(id: string , data: any,cb:Function); - setServerMetadata(id: string , data: any,cb:Function); - listFlavors(cb:Function); - getFlavor(id: string ,cb:Function); - listFloatingIps(cb:Function); - getFloatingIp(id: string, cb:Function); - createFloatingIp(data: any,cb:Function); - removeFloatingIp(id: string, cb:Function); - associateFloatingIp(instance_id:any, ip_address: any,cb:Function); - disassociateFloatingIp(instance_id:any, ip_address: any,cb:Function); - listFloatingIpPools(cb:Function); - getFloatingIpPool(id: string, cb:Function); - listAvailabilityZones(cb:Function); - getAvailabilityZone(id: string, cb:Function); - listKeyPairs(cb:Function); - getKeyPair(id: string, cb:Function); - createKeyPair(name:string, public_key: any,cb:Function); - removeKeyPair(id:string,cb:Function); - getQuotaSet(project_id:string, cb:Function); - setQuotaSet(project_id:string, data: any,cb:Function); - getTenantUsage(project_id:string, start_date_obj:any, end_date_obj: any,cb:Function); - assignSecurityGroup(security_group_name:string, instance_id:string, cb:Function); - removeSecurityGroup(security_group_name: string, instance_id:string, cb:Function); - getImageMetaData(id:string, cb:Function); - setImageMetaData(id:string, data:any, cb:Function); -} - -export interface Project{ - general_token: string; - project_token: string; - glance: Glance; - neutron: Neutron; - nova: Nova; - octavia: Octavia; -} - -export class getSimpleProject{ - constructor(username: string, password: string, project_id: string, keystone_url: string, cb: Function); -} \ No newline at end of file diff --git a/openstack-wrapper/openstack-wrapper-tests.ts b/openstack-wrapper/openstack-wrapper-tests.ts deleted file mode 100644 index 467948047c..0000000000 --- a/openstack-wrapper/openstack-wrapper-tests.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as openstack from 'openstack-wrapper'; - -const nova = new Glance("",""); \ No newline at end of file diff --git a/openstack-wrapper/tsconfig.json b/openstack-wrapper/tsconfig.json deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/openstack-wrapper/tslint.json b/openstack-wrapper/tslint.json deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/types/openstack-wrapper/index.d.ts b/types/openstack-wrapper/index.d.ts new file mode 100644 index 0000000000..584b5a57c2 --- /dev/null +++ b/types/openstack-wrapper/index.d.ts @@ -0,0 +1,274 @@ +// Type definitions for openstack-wrapper 2.1.6 +// Project: https://www.npmjs.com/package/openstack-wrapper +// Definitions by: Sanjay Madane +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +declare module "openstack-wrapper" { + export interface RequestOption{ + uri?: string; + headers?: any, + json?: any, + timeout?: any, + metricRequestID?: string, + metricUserName?: string, + metricLogger?: any + } + + export class Glance { + request: any; + mangler:any; + mangleObject:any; + url:any; + token:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + listImages(cb: Function):any; + getImage(id: any, cb: Function):any; + queueImage(data: any, cb: Function):any; + uploadImage(id: any, stream: any, cb: Function):any; + updateImage(id: any, data: any, cb: Function):any; + removeImage(id: any, cb: Function):any; + } + + export class Keystone { + request: any; + mangler:any; + mangleObject:any; + url:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string); + + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + getToken(username: string, password: string, cb: Function):any; + getProjectTokenForReal(auth_data: any, cb: Function):any; + getProjectToken(access_token:any, project_id:any, cb: Function):any; + getProjectTokenByName(access_token:any, domain_id:any, project_name:string, cb: Function):any; + listProjects(admin_access_token: any, cb: Function):any; + listUserProjects(username:any, access_token: any, cb: Function):any; + getProjectByName(admin_access_token: any, project_name:any, cb: Function):any; + listRoles(project_token:any, cb: Function):any; + listRoleAssignments(project_token:any, project_id:any, cb: Function):any; + addRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function):any; + removeRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function):any; + listMetaEnvironments(auth_token:any, cb: Function):any; + listMetaOwningGroups(auth_token:any, cb: Function):any; + listProjectMeta(project_token:any, project_id:any, cb: Function):any; + updateProjectMeta(project_token:any, project_id:any,new_meta:any, cb: Function):any; + } + + export class Neutron { + request: any; + mangler:any; + mangleObject:any; + url:any; + token:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + listNetworks(cb: Function):any; + getNetwork(network_id:string, cb: Function):any; + listSubnets(cb: Function):any; + getSubnet(subnet_id:any, cb: Function):any; + listRouters(cb: Function):any; + getRouter(router_id:any, cb: Function):any; + createFloatingIp(floating_network_id:any, cb: Function):any; + listFloatingIps(options:any, cb: Function):any; + getFloatingIp(ip_id:any, cb: Function):any; + updateFloatingIp(ip_id:any, port_id:any,cb: Function):any; + removeFloatingIp(ip_id:any, cb: Function):any; + listPorts(options:any, cb: Function):any; + getPort(port_id:any,cb: Function):any; + updatePort(port_id:any, data:any, cb: Function):any; + listSecurityGroups(project_id:any, cb: Function):any; + getSecurityGroup(group_id:any, cb: Function):any; + createSecurityGroup(group_name:any, data:any, cb: Function):any; + updateSecurityGroup(group_id:any, data:any, cb: Function):any; + removeSecurityGroup(group_id:any, cb: Function):any; + listSecurityGroupRules(cb: Function):any; + getSecurityGroupRule(rule_id:any, cb: Function):any; + createSecurityGroupRule(group_id:any, data:any, cb: Function):any; + removeSecurityGroupRule(rule_id:any, cb: Function):any; + listLoadBalancers(cb: Function):any; + getLoadBalancer(lb_id:any, cb: Function):any; + createLoadBalancer(tenant_id:any, vip_subnet_id:any, cb: Function):any; + updateLoadBalancer(lb_id:any, data:any, cb: Function):any; + removeLoadBalancer(lb_id:any, cb: Function):any; + listLBListeners(cb: Function):any; + getLBListener(lb_id:any, cb: Function):any; + createLBListener(tenant_id:any, loadbalancer_id:any, description:any, protocol:any, data:any, cb: Function):any; + updateLBListener(listener_id:any, data:any, cb: Function):any; + removeLBListener(listener_id:any, cb: Function):any; + listLBPools(cb: Function):any; + getLBPool(pool_id:any, cb: Function):any; + createLBPool(tenant_id:any, protocol:any, lb_algorithm:any, listener_id:any, data:any, cb: Function):any; + updateLBPool(pool_id:any, data:any, cb: Function):any; + removeLBPool(pool_id:any, cb: Function):any; + listLBPoolMembers(pool_id:any, cb: Function):any; + getLBPoolMember(pool_id:any, member_id:any, cb: Function):any; + createLBPoolMember(pool_id:any, tenant_id:any, address:any, protocol_port:any, data:any, cb: Function):any; + updateLBPoolMember(pool_id:any, member_id:any, data:any, cb: Function):any; + removeLBPoolMember(pool_id:any, member_id:any, cb: Function):any; + listLBHealthMonitors(cb: Function):any; + getLBHealthMonitor(health_monitor_id:any, cb: Function):any; + createLBHealthMonitor(tenant_id:any, type:any, delay:any, timeout:any, max_retries:any, pool_id:any, data:any, cb: Function):any; + updateLBHealthMonitor(health_monitor_id:any, data:any, cb: Function):any; + removeLBHealthMonitor(health_monitor_id:any, cb: Function):any; + getLBStats(lb_id:any, cb: Function):any; + } + + export class Octavia { + url:any; + token:any; + timeout:any; + request_id:any; + user_name:string; + logger:any; + retries: number; + retry_delay: number; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setRetries(retries:number):void; + setRetryDelay(retry_delay:number):void; + getRequestOptions(path: string, json_value:any):RequestOption; + listLoadBalancers(cb:Function):any; + getLoadBalancer(lb_id: string, cb:Function):any; + createLoadBalancer(project_id:string, data:any,cb:Function):any; + updateLoadBalancer(lb_id:string, data:any,cb:Function):any; + removeLoadBalancer(lb_id:string, cb:Function):any; + listLBListeners(cb:Function):any; + getLBListener(listener_id: string, cb:Function):any; + createLBListener(loadbalancer_id:string, protocol:any, data:any,cb:Function):any; + updateLBListener(listener_id:string, data:any,cb:Function):any; + removeLBListener(listener_id: string, cb:Function):any; + listLBPools(cb:Function):any; + getLBPool(pool_id: string, cb:Function):any; + createLBPool(protocol:any, lb_algorithm:any, data:any,cb:Function):any; + updateLBPool(pool_id:string, data:any,cb:Function):any; + removeLBPool(pool_id:string, cb:Function):any; + listLBPoolMembers(pool_id:string, cb:Function):any; + getLBPoolMember(pool_id:string, member_id:string,cb:Function):any; + createLBPoolMember(pool_id:string, address:any, protocol_port:any, data:any,cb:Function):any; + updateLBPoolMember(pool_id:string, member_id:string, data:any,cb:Function):any; + removeLBPoolMember(pool_id:string, member_id:string,cb:Function):any; + listLBHealthMonitors(cb:Function):any; + getLBHealthMonitor(health_monitor_id:string,cb:Function):any; + createLBHealthMonitor(pool_id:string, type:any, delay:number, timeout:number, max_retries:number, data:any,cb:Function):any; + updateLBHealthMonitor(health_monitor_id:string, data:any,cb:Function):any; + removeLBHealthMonitor(health_monitor_id:string,cb:Function):any; + getLBStats(lb_id:string,cb:Function):any; + } + + export class Nova { + request: any; + mangler:any; + mangleObject:any; + url:any; + token:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + listServers(cb:Function):any; + getServer(id:string, cb:Function):any; + createServer(data:any, cb:Function):any; + renameServer(id:string, name:string, cb:Function):any; + resizeServer(id:string, flavor:any,cb:Function):any; + confirmResizeServer(id: string, cb:Function):any; + revertResizeServer(id:string, cb:Function):any; + removeServer(id:string,cb:Function):any; + rebootServer(id:string, cb:Function):any; + forceRebootServer(id: string, cb:Function):any; + stopServer(id: string, cb:Function):any; + startServer(id: string, cb:Function):any; + pauseServer(id: string, cb:Function):any; + suspendServer(id: string, cb:Function):any; + resumeServer(is: string, cb:Function):any; + getServerConsoleURL(type: any, id: string, cb:Function):any; + getServerLog(id: string, length: any, cb:Function):any; + createServerImage(id: string , data: any,cb:Function):any; + setServerMetadata(id: string , data: any,cb:Function):any; + listFlavors(cb:Function):any; + getFlavor(id: string ,cb:Function):any; + listFloatingIps(cb:Function):any; + getFloatingIp(id: string, cb:Function):any; + createFloatingIp(data: any,cb:Function):any; + removeFloatingIp(id: string, cb:Function):any; + associateFloatingIp(instance_id:any, ip_address: any,cb:Function):any; + disassociateFloatingIp(instance_id:any, ip_address: any,cb:Function):any; + listFloatingIpPools(cb:Function):any; + getFloatingIpPool(id: string, cb:Function):any; + listAvailabilityZones(cb:Function):any; + getAvailabilityZone(id: string, cb:Function):any; + listKeyPairs(cb:Function):any; + getKeyPair(id: string, cb:Function):any; + createKeyPair(name:string, public_key: any,cb:Function):any; + removeKeyPair(id:string,cb:Function):any; + getQuotaSet(project_id:string, cb:Function):any; + setQuotaSet(project_id:string, data: any,cb:Function):any; + getTenantUsage(project_id:string, start_date_obj:any, end_date_obj: any,cb:Function):any; + assignSecurityGroup(security_group_name:string, instance_id:string, cb:Function):any; + removeSecurityGroup(security_group_name: string, instance_id:string, cb:Function):any; + getImageMetaData(id:string, cb:Function):any; + setImageMetaData(id:string, data:any, cb:Function):any; + } + + export interface Project{ + general_token: string; + project_token: string; + glance: Glance; + neutron: Neutron; + nova: Nova; + octavia: Octavia; + } + + export class getSimpleProject{ + constructor(username: string, password: string, project_id: string, keystone_url: string, cb: Function); + } +} +export default "openstack-wrapper" \ No newline at end of file diff --git a/types/openstack-wrapper/openstack-wrapper-tests.ts b/types/openstack-wrapper/openstack-wrapper-tests.ts new file mode 100644 index 0000000000..a64dabcef8 --- /dev/null +++ b/types/openstack-wrapper/openstack-wrapper-tests.ts @@ -0,0 +1,7 @@ +import * as OSWrap from 'openstack-wrapper'; + +const keystone = new OSWrap.Keystone("endpoint-url"); +const glance = new OSWrap.Glance("endpoint-url","auth-token"); +const neutron = new OSWrap.Neutron("endpoint-url","auth-token"); +const octavia = new OSWrap.Octavia("endpoint-url","auth-token"); +const nova = new OSWrap.Nova("endpoint-url","auth-token"); \ No newline at end of file diff --git a/types/openstack-wrapper/tsconfig.json b/types/openstack-wrapper/tsconfig.json new file mode 100644 index 0000000000..0ccc091222 --- /dev/null +++ b/types/openstack-wrapper/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "openstack-wrapper-tests.ts" + ] +} \ No newline at end of file From c4cb5120f07a7d845c9ea9454800b8a7fe0af058 Mon Sep 17 00:00:00 2001 From: Karol Janyst Date: Tue, 15 Aug 2017 08:55:16 +0900 Subject: [PATCH 024/118] Revert changes from #18637 --- types/react-transition-group/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-transition-group/index.d.ts b/types/react-transition-group/index.d.ts index 9f3102fcdb..7150ea56ad 100644 --- a/types/react-transition-group/index.d.ts +++ b/types/react-transition-group/index.d.ts @@ -8,7 +8,7 @@ import * as CSSTransition from "react-transition-group/CSSTransition"; import Transition from "react-transition-group/Transition"; import * as TransitionGroup from "react-transition-group/TransitionGroup"; -export { +export = { CSSTransition, Transition, TransitionGroup From 0380922eb54535208a8d6f3c65a58c57f2394820 Mon Sep 17 00:00:00 2001 From: Danny Cochran Date: Mon, 14 Aug 2017 17:52:23 -0700 Subject: [PATCH 025/118] update react-redux connect options The existing Options had a redundant "withRef" parameter (it was already inheriting from ConnectOptions), and were missing some helper functions for diffing state and props: https://github.com/reactjs/react-redux/blob/fd81f1812c2420aa72805b61f1d06754cb5bfb43/docs/api.md#arguments --- types/react-redux/index.d.ts | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/types/react-redux/index.d.ts b/types/react-redux/index.d.ts index fc3c54bef1..904b6083d0 100644 --- a/types/react-redux/index.d.ts +++ b/types/react-redux/index.d.ts @@ -109,28 +109,28 @@ export declare function connect( mapStateToProps: MapStateToPropsParam, mapDispatchToProps: null | undefined, mergeProps: null | undefined, - options: Options + options: Options ): InferableComponentEnhancerWithProps & TStateProps, TOwnProps>; export declare function connect( mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam, mergeProps: null | undefined, - options: Options + options: Options ): InferableComponentEnhancerWithProps; export declare function connect( mapStateToProps: MapStateToPropsParam, mapDispatchToProps: MapDispatchToPropsParam, mergeProps: null | undefined, - options: Options + options: Options ): InferableComponentEnhancerWithProps; export declare function connect( mapStateToProps: MapStateToPropsParam, mapDispatchToProps: MapDispatchToPropsParam, mergeProps: MergeProps, - options: Options + options: Options ): InferableComponentEnhancerWithProps; interface MapStateToProps { @@ -164,7 +164,7 @@ interface MergeProps { (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps): TMergedProps; } -interface Options extends ConnectOptions { +interface Options extends ConnectOptions { /** * If true, implements shouldComponentUpdate and shallowly compares the result of mergeProps, * preventing unnecessary updates, assuming that the component is a “pure” component @@ -173,11 +173,30 @@ interface Options extends ConnectOptions { * @default true */ pure?: boolean; + /** - * If true, stores a ref to the wrapped component instance and makes it available via - * getWrappedInstance() method. Defaults to false. + * When pure, compares incoming store state to its previous value. + * @default strictEqual */ - withRef?: boolean; + areStatesEqual?: (nextState: any, prevState: any) => boolean; + + /** + * When pure, compares incoming store state to its previous value. + * @default shallowEqual + */ + areOwnPropsEqual?: (nextOwnProps: TOwnProps, prevOwnProps: TOwnProps) => boolean; + + /** + * When pure, compares the result of mapStateToProps to its previous value. + * @default shallowEqual + */ + areStatePropsEqual?: (nextStateProps: TStateProps, prevStateProps: TStateProps) => boolean; + + /** + * When pure, compares the result of mergeProps to its previous value. + * @default shallowEqual + */ + areMergedPropsEqual?: (nextMergedProps: TMergedProps, prevMergedProps: TMergedProps) => boolean; } /** From 3342c4d8793008674506d5474479e5be84fd91aa Mon Sep 17 00:00:00 2001 From: Danny Cochran Date: Mon, 14 Aug 2017 17:55:53 -0700 Subject: [PATCH 026/118] remove trailing white space --- types/react-redux/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-redux/index.d.ts b/types/react-redux/index.d.ts index 904b6083d0..7b983b71b6 100644 --- a/types/react-redux/index.d.ts +++ b/types/react-redux/index.d.ts @@ -196,7 +196,7 @@ interface Options extends ConnectOpt * When pure, compares the result of mergeProps to its previous value. * @default shallowEqual */ - areMergedPropsEqual?: (nextMergedProps: TMergedProps, prevMergedProps: TMergedProps) => boolean; + areMergedPropsEqual?: (nextMergedProps: TMergedProps, prevMergedProps: TMergedProps) => boolean; } /** From d8356c7e970b881034a05fae17111f4088a2fbc8 Mon Sep 17 00:00:00 2001 From: sanjaymadane Date: Tue, 15 Aug 2017 11:20:21 +0800 Subject: [PATCH 027/118] Review comments addressed --- types/openstack-wrapper/index.d.ts | 528 ++++++++++++++--------------- 1 file changed, 261 insertions(+), 267 deletions(-) diff --git a/types/openstack-wrapper/index.d.ts b/types/openstack-wrapper/index.d.ts index 584b5a57c2..e656e25d4a 100644 --- a/types/openstack-wrapper/index.d.ts +++ b/types/openstack-wrapper/index.d.ts @@ -4,271 +4,265 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -declare module "openstack-wrapper" { - export interface RequestOption{ - uri?: string; - headers?: any, - json?: any, - timeout?: any, - metricRequestID?: string, - metricUserName?: string, - metricLogger?: any - } - - export class Glance { - request: any; - mangler:any; - mangleObject:any; - url:any; - token:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any):void; - setRequestID(request_id: any):void; - setUserName(user_name: string):void; - setLogger(logger: any):void; - setRequest(request_lib: any):void; - setMangler(mangle_lib: any):void; - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - listImages(cb: Function):any; - getImage(id: any, cb: Function):any; - queueImage(data: any, cb: Function):any; - uploadImage(id: any, stream: any, cb: Function):any; - updateImage(id: any, data: any, cb: Function):any; - removeImage(id: any, cb: Function):any; - } - - export class Keystone { - request: any; - mangler:any; - mangleObject:any; - url:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string); - - setTimeout(new_timeout: any):void; - setRequestID(request_id: any):void; - setUserName(user_name: string):void; - setLogger(logger: any):void; - setRequest(request_lib: any):void; - setMangler(mangle_lib: any):void; - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - getToken(username: string, password: string, cb: Function):any; - getProjectTokenForReal(auth_data: any, cb: Function):any; - getProjectToken(access_token:any, project_id:any, cb: Function):any; - getProjectTokenByName(access_token:any, domain_id:any, project_name:string, cb: Function):any; - listProjects(admin_access_token: any, cb: Function):any; - listUserProjects(username:any, access_token: any, cb: Function):any; - getProjectByName(admin_access_token: any, project_name:any, cb: Function):any; - listRoles(project_token:any, cb: Function):any; - listRoleAssignments(project_token:any, project_id:any, cb: Function):any; - addRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function):any; - removeRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function):any; - listMetaEnvironments(auth_token:any, cb: Function):any; - listMetaOwningGroups(auth_token:any, cb: Function):any; - listProjectMeta(project_token:any, project_id:any, cb: Function):any; - updateProjectMeta(project_token:any, project_id:any,new_meta:any, cb: Function):any; - } - - export class Neutron { - request: any; - mangler:any; - mangleObject:any; - url:any; - token:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any):void; - setRequestID(request_id: any):void; - setUserName(user_name: string):void; - setLogger(logger: any):void; - setRequest(request_lib: any):void; - setMangler(mangle_lib: any):void; - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - listNetworks(cb: Function):any; - getNetwork(network_id:string, cb: Function):any; - listSubnets(cb: Function):any; - getSubnet(subnet_id:any, cb: Function):any; - listRouters(cb: Function):any; - getRouter(router_id:any, cb: Function):any; - createFloatingIp(floating_network_id:any, cb: Function):any; - listFloatingIps(options:any, cb: Function):any; - getFloatingIp(ip_id:any, cb: Function):any; - updateFloatingIp(ip_id:any, port_id:any,cb: Function):any; - removeFloatingIp(ip_id:any, cb: Function):any; - listPorts(options:any, cb: Function):any; - getPort(port_id:any,cb: Function):any; - updatePort(port_id:any, data:any, cb: Function):any; - listSecurityGroups(project_id:any, cb: Function):any; - getSecurityGroup(group_id:any, cb: Function):any; - createSecurityGroup(group_name:any, data:any, cb: Function):any; - updateSecurityGroup(group_id:any, data:any, cb: Function):any; - removeSecurityGroup(group_id:any, cb: Function):any; - listSecurityGroupRules(cb: Function):any; - getSecurityGroupRule(rule_id:any, cb: Function):any; - createSecurityGroupRule(group_id:any, data:any, cb: Function):any; - removeSecurityGroupRule(rule_id:any, cb: Function):any; - listLoadBalancers(cb: Function):any; - getLoadBalancer(lb_id:any, cb: Function):any; - createLoadBalancer(tenant_id:any, vip_subnet_id:any, cb: Function):any; - updateLoadBalancer(lb_id:any, data:any, cb: Function):any; - removeLoadBalancer(lb_id:any, cb: Function):any; - listLBListeners(cb: Function):any; - getLBListener(lb_id:any, cb: Function):any; - createLBListener(tenant_id:any, loadbalancer_id:any, description:any, protocol:any, data:any, cb: Function):any; - updateLBListener(listener_id:any, data:any, cb: Function):any; - removeLBListener(listener_id:any, cb: Function):any; - listLBPools(cb: Function):any; - getLBPool(pool_id:any, cb: Function):any; - createLBPool(tenant_id:any, protocol:any, lb_algorithm:any, listener_id:any, data:any, cb: Function):any; - updateLBPool(pool_id:any, data:any, cb: Function):any; - removeLBPool(pool_id:any, cb: Function):any; - listLBPoolMembers(pool_id:any, cb: Function):any; - getLBPoolMember(pool_id:any, member_id:any, cb: Function):any; - createLBPoolMember(pool_id:any, tenant_id:any, address:any, protocol_port:any, data:any, cb: Function):any; - updateLBPoolMember(pool_id:any, member_id:any, data:any, cb: Function):any; - removeLBPoolMember(pool_id:any, member_id:any, cb: Function):any; - listLBHealthMonitors(cb: Function):any; - getLBHealthMonitor(health_monitor_id:any, cb: Function):any; - createLBHealthMonitor(tenant_id:any, type:any, delay:any, timeout:any, max_retries:any, pool_id:any, data:any, cb: Function):any; - updateLBHealthMonitor(health_monitor_id:any, data:any, cb: Function):any; - removeLBHealthMonitor(health_monitor_id:any, cb: Function):any; - getLBStats(lb_id:any, cb: Function):any; - } - - export class Octavia { - url:any; - token:any; - timeout:any; - request_id:any; - user_name:string; - logger:any; - retries: number; - retry_delay: number; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any):void; - setRequestID(request_id: any):void; - setUserName(user_name: string):void; - setLogger(logger: any):void; - setRequest(request_lib: any):void; - setRetries(retries:number):void; - setRetryDelay(retry_delay:number):void; - getRequestOptions(path: string, json_value:any):RequestOption; - listLoadBalancers(cb:Function):any; - getLoadBalancer(lb_id: string, cb:Function):any; - createLoadBalancer(project_id:string, data:any,cb:Function):any; - updateLoadBalancer(lb_id:string, data:any,cb:Function):any; - removeLoadBalancer(lb_id:string, cb:Function):any; - listLBListeners(cb:Function):any; - getLBListener(listener_id: string, cb:Function):any; - createLBListener(loadbalancer_id:string, protocol:any, data:any,cb:Function):any; - updateLBListener(listener_id:string, data:any,cb:Function):any; - removeLBListener(listener_id: string, cb:Function):any; - listLBPools(cb:Function):any; - getLBPool(pool_id: string, cb:Function):any; - createLBPool(protocol:any, lb_algorithm:any, data:any,cb:Function):any; - updateLBPool(pool_id:string, data:any,cb:Function):any; - removeLBPool(pool_id:string, cb:Function):any; - listLBPoolMembers(pool_id:string, cb:Function):any; - getLBPoolMember(pool_id:string, member_id:string,cb:Function):any; - createLBPoolMember(pool_id:string, address:any, protocol_port:any, data:any,cb:Function):any; - updateLBPoolMember(pool_id:string, member_id:string, data:any,cb:Function):any; - removeLBPoolMember(pool_id:string, member_id:string,cb:Function):any; - listLBHealthMonitors(cb:Function):any; - getLBHealthMonitor(health_monitor_id:string,cb:Function):any; - createLBHealthMonitor(pool_id:string, type:any, delay:number, timeout:number, max_retries:number, data:any,cb:Function):any; - updateLBHealthMonitor(health_monitor_id:string, data:any,cb:Function):any; - removeLBHealthMonitor(health_monitor_id:string,cb:Function):any; - getLBStats(lb_id:string,cb:Function):any; - } - - export class Nova { - request: any; - mangler:any; - mangleObject:any; - url:any; - token:any; - timeout:any; - request_id:any; - user_name:any; - logger:any; - - constructor(endpoint_url: string, auth_token: string); - setTimeout(new_timeout: any):void; - setRequestID(request_id: any):void; - setUserName(user_name: string):void; - setLogger(logger: any):void; - setRequest(request_lib: any):void; - setMangler(mangle_lib: any):void; - getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; - listServers(cb:Function):any; - getServer(id:string, cb:Function):any; - createServer(data:any, cb:Function):any; - renameServer(id:string, name:string, cb:Function):any; - resizeServer(id:string, flavor:any,cb:Function):any; - confirmResizeServer(id: string, cb:Function):any; - revertResizeServer(id:string, cb:Function):any; - removeServer(id:string,cb:Function):any; - rebootServer(id:string, cb:Function):any; - forceRebootServer(id: string, cb:Function):any; - stopServer(id: string, cb:Function):any; - startServer(id: string, cb:Function):any; - pauseServer(id: string, cb:Function):any; - suspendServer(id: string, cb:Function):any; - resumeServer(is: string, cb:Function):any; - getServerConsoleURL(type: any, id: string, cb:Function):any; - getServerLog(id: string, length: any, cb:Function):any; - createServerImage(id: string , data: any,cb:Function):any; - setServerMetadata(id: string , data: any,cb:Function):any; - listFlavors(cb:Function):any; - getFlavor(id: string ,cb:Function):any; - listFloatingIps(cb:Function):any; - getFloatingIp(id: string, cb:Function):any; - createFloatingIp(data: any,cb:Function):any; - removeFloatingIp(id: string, cb:Function):any; - associateFloatingIp(instance_id:any, ip_address: any,cb:Function):any; - disassociateFloatingIp(instance_id:any, ip_address: any,cb:Function):any; - listFloatingIpPools(cb:Function):any; - getFloatingIpPool(id: string, cb:Function):any; - listAvailabilityZones(cb:Function):any; - getAvailabilityZone(id: string, cb:Function):any; - listKeyPairs(cb:Function):any; - getKeyPair(id: string, cb:Function):any; - createKeyPair(name:string, public_key: any,cb:Function):any; - removeKeyPair(id:string,cb:Function):any; - getQuotaSet(project_id:string, cb:Function):any; - setQuotaSet(project_id:string, data: any,cb:Function):any; - getTenantUsage(project_id:string, start_date_obj:any, end_date_obj: any,cb:Function):any; - assignSecurityGroup(security_group_name:string, instance_id:string, cb:Function):any; - removeSecurityGroup(security_group_name: string, instance_id:string, cb:Function):any; - getImageMetaData(id:string, cb:Function):any; - setImageMetaData(id:string, data:any, cb:Function):any; - } - - export interface Project{ - general_token: string; - project_token: string; - glance: Glance; - neutron: Neutron; - nova: Nova; - octavia: Octavia; - } - - export class getSimpleProject{ - constructor(username: string, password: string, project_id: string, keystone_url: string, cb: Function); - } +export interface RequestOption{ + uri?: string; + headers?: any, + json?: any, + timeout?: any, + metricRequestID?: string, + metricUserName?: string, + metricLogger?: any } -export default "openstack-wrapper" \ No newline at end of file +export interface Project{ + general_token: string; + project_token: string; + glance: Glance; + neutron: Neutron; + nova: Nova; + octavia: Octavia; +} + +export function getSimpleProject(username: string, password: string, project_id: string, keystone_url: string, cb: Function):void; + +export class Nova { + request: any; + mangler:any; + mangleObject:any; + url:any; + token:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + listServers(cb:Function):any; + getServer(id:string, cb:Function):any; + createServer(data:any, cb:Function):any; + renameServer(id:string, name:string, cb:Function):any; + resizeServer(id:string, flavor:any,cb:Function):any; + confirmResizeServer(id: string, cb:Function):any; + revertResizeServer(id:string, cb:Function):any; + removeServer(id:string,cb:Function):any; + rebootServer(id:string, cb:Function):any; + forceRebootServer(id: string, cb:Function):any; + stopServer(id: string, cb:Function):any; + startServer(id: string, cb:Function):any; + pauseServer(id: string, cb:Function):any; + suspendServer(id: string, cb:Function):any; + resumeServer(is: string, cb:Function):any; + getServerConsoleURL(type: any, id: string, cb:Function):any; + getServerLog(id: string, length: any, cb:Function):any; + createServerImage(id: string , data: any,cb:Function):any; + setServerMetadata(id: string , data: any,cb:Function):any; + listFlavors(cb:Function):any; + getFlavor(id: string ,cb:Function):any; + listFloatingIps(cb:Function):any; + getFloatingIp(id: string, cb:Function):any; + createFloatingIp(data: any,cb:Function):any; + removeFloatingIp(id: string, cb:Function):any; + associateFloatingIp(instance_id:any, ip_address: any,cb:Function):any; + disassociateFloatingIp(instance_id:any, ip_address: any,cb:Function):any; + listFloatingIpPools(cb:Function):any; + getFloatingIpPool(id: string, cb:Function):any; + listAvailabilityZones(cb:Function):any; + getAvailabilityZone(id: string, cb:Function):any; + listKeyPairs(cb:Function):any; + getKeyPair(id: string, cb:Function):any; + createKeyPair(name:string, public_key: any,cb:Function):any; + removeKeyPair(id:string,cb:Function):any; + getQuotaSet(project_id:string, cb:Function):any; + setQuotaSet(project_id:string, data: any,cb:Function):any; + getTenantUsage(project_id:string, start_date_obj:any, end_date_obj: any,cb:Function):any; + assignSecurityGroup(security_group_name:string, instance_id:string, cb:Function):any; + removeSecurityGroup(security_group_name: string, instance_id:string, cb:Function):any; + getImageMetaData(id:string, cb:Function):any; + setImageMetaData(id:string, data:any, cb:Function):any; +} + +export class Glance { + request: any; + mangler:any; + mangleObject:any; + url:any; + token:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + listImages(cb: Function):any; + getImage(id: any, cb: Function):any; + queueImage(data: any, cb: Function):any; + uploadImage(id: any, stream: any, cb: Function):any; + updateImage(id: any, data: any, cb: Function):any; + removeImage(id: any, cb: Function):any; +} + +export class Keystone { + request: any; + mangler:any; + mangleObject:any; + url:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string); + + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + getToken(username: string, password: string, cb: Function):any; + getProjectTokenForReal(auth_data: any, cb: Function):any; + getProjectToken(access_token:any, project_id:any, cb: Function):any; + getProjectTokenByName(access_token:any, domain_id:any, project_name:string, cb: Function):any; + listProjects(admin_access_token: any, cb: Function):any; + listUserProjects(username:any, access_token: any, cb: Function):any; + getProjectByName(admin_access_token: any, project_name:any, cb: Function):any; + listRoles(project_token:any, cb: Function):any; + listRoleAssignments(project_token:any, project_id:any, cb: Function):any; + addRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function):any; + removeRoleAssignment(project_token:any, project_id:any, entry_id:any, entry_type:any, role_id: any, cb: Function):any; + listMetaEnvironments(auth_token:any, cb: Function):any; + listMetaOwningGroups(auth_token:any, cb: Function):any; + listProjectMeta(project_token:any, project_id:any, cb: Function):any; + updateProjectMeta(project_token:any, project_id:any,new_meta:any, cb: Function):any; +} + +export class Neutron { + request: any; + mangler:any; + mangleObject:any; + url:any; + token:any; + timeout:any; + request_id:any; + user_name:any; + logger:any; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setMangler(mangle_lib: any):void; + getRequestOptions(path: string, json_value: any, extra_headers: any):RequestOption; + listNetworks(cb: Function):any; + getNetwork(network_id:string, cb: Function):any; + listSubnets(cb: Function):any; + getSubnet(subnet_id:any, cb: Function):any; + listRouters(cb: Function):any; + getRouter(router_id:any, cb: Function):any; + createFloatingIp(floating_network_id:any, cb: Function):any; + listFloatingIps(options:any, cb: Function):any; + getFloatingIp(ip_id:any, cb: Function):any; + updateFloatingIp(ip_id:any, port_id:any,cb: Function):any; + removeFloatingIp(ip_id:any, cb: Function):any; + listPorts(options:any, cb: Function):any; + getPort(port_id:any,cb: Function):any; + updatePort(port_id:any, data:any, cb: Function):any; + listSecurityGroups(project_id:any, cb: Function):any; + getSecurityGroup(group_id:any, cb: Function):any; + createSecurityGroup(group_name:any, data:any, cb: Function):any; + updateSecurityGroup(group_id:any, data:any, cb: Function):any; + removeSecurityGroup(group_id:any, cb: Function):any; + listSecurityGroupRules(cb: Function):any; + getSecurityGroupRule(rule_id:any, cb: Function):any; + createSecurityGroupRule(group_id:any, data:any, cb: Function):any; + removeSecurityGroupRule(rule_id:any, cb: Function):any; + listLoadBalancers(cb: Function):any; + getLoadBalancer(lb_id:any, cb: Function):any; + createLoadBalancer(tenant_id:any, vip_subnet_id:any, cb: Function):any; + updateLoadBalancer(lb_id:any, data:any, cb: Function):any; + removeLoadBalancer(lb_id:any, cb: Function):any; + listLBListeners(cb: Function):any; + getLBListener(lb_id:any, cb: Function):any; + createLBListener(tenant_id:any, loadbalancer_id:any, description:any, protocol:any, data:any, cb: Function):any; + updateLBListener(listener_id:any, data:any, cb: Function):any; + removeLBListener(listener_id:any, cb: Function):any; + listLBPools(cb: Function):any; + getLBPool(pool_id:any, cb: Function):any; + createLBPool(tenant_id:any, protocol:any, lb_algorithm:any, listener_id:any, data:any, cb: Function):any; + updateLBPool(pool_id:any, data:any, cb: Function):any; + removeLBPool(pool_id:any, cb: Function):any; + listLBPoolMembers(pool_id:any, cb: Function):any; + getLBPoolMember(pool_id:any, member_id:any, cb: Function):any; + createLBPoolMember(pool_id:any, tenant_id:any, address:any, protocol_port:any, data:any, cb: Function):any; + updateLBPoolMember(pool_id:any, member_id:any, data:any, cb: Function):any; + removeLBPoolMember(pool_id:any, member_id:any, cb: Function):any; + listLBHealthMonitors(cb: Function):any; + getLBHealthMonitor(health_monitor_id:any, cb: Function):any; + createLBHealthMonitor(tenant_id:any, type:any, delay:any, timeout:any, max_retries:any, pool_id:any, data:any, cb: Function):any; + updateLBHealthMonitor(health_monitor_id:any, data:any, cb: Function):any; + removeLBHealthMonitor(health_monitor_id:any, cb: Function):any; + getLBStats(lb_id:any, cb: Function):any; +} + +export class Octavia { + url:any; + token:any; + timeout:any; + request_id:any; + user_name:string; + logger:any; + retries: number; + retry_delay: number; + + constructor(endpoint_url: string, auth_token: string); + setTimeout(new_timeout: any):void; + setRequestID(request_id: any):void; + setUserName(user_name: string):void; + setLogger(logger: any):void; + setRequest(request_lib: any):void; + setRetries(retries:number):void; + setRetryDelay(retry_delay:number):void; + getRequestOptions(path: string, json_value:any):RequestOption; + listLoadBalancers(cb:Function):any; + getLoadBalancer(lb_id: string, cb:Function):any; + createLoadBalancer(project_id:string, data:any,cb:Function):any; + updateLoadBalancer(lb_id:string, data:any,cb:Function):any; + removeLoadBalancer(lb_id:string, cb:Function):any; + listLBListeners(cb:Function):any; + getLBListener(listener_id: string, cb:Function):any; + createLBListener(loadbalancer_id:string, protocol:any, data:any,cb:Function):any; + updateLBListener(listener_id:string, data:any,cb:Function):any; + removeLBListener(listener_id: string, cb:Function):any; + listLBPools(cb:Function):any; + getLBPool(pool_id: string, cb:Function):any; + createLBPool(protocol:any, lb_algorithm:any, data:any,cb:Function):any; + updateLBPool(pool_id:string, data:any,cb:Function):any; + removeLBPool(pool_id:string, cb:Function):any; + listLBPoolMembers(pool_id:string, cb:Function):any; + getLBPoolMember(pool_id:string, member_id:string,cb:Function):any; + createLBPoolMember(pool_id:string, address:any, protocol_port:any, data:any,cb:Function):any; + updateLBPoolMember(pool_id:string, member_id:string, data:any,cb:Function):any; + removeLBPoolMember(pool_id:string, member_id:string,cb:Function):any; + listLBHealthMonitors(cb:Function):any; + getLBHealthMonitor(health_monitor_id:string,cb:Function):any; + createLBHealthMonitor(pool_id:string, type:any, delay:number, timeout:number, max_retries:number, data:any,cb:Function):any; + updateLBHealthMonitor(health_monitor_id:string, data:any,cb:Function):any; + removeLBHealthMonitor(health_monitor_id:string,cb:Function):any; + getLBStats(lb_id:string,cb:Function):any; +} \ No newline at end of file From 90868bf24a438a1da4ba57045e99f0004b408e33 Mon Sep 17 00:00:00 2001 From: Chuang Yu Date: Tue, 15 Aug 2017 11:38:57 +0800 Subject: [PATCH 028/118] update @types/react-test-renderer index.d.ts fix #18953 --- types/react-test-renderer/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-test-renderer/index.d.ts b/types/react-test-renderer/index.d.ts index a7eb0bf739..974c86da6f 100644 --- a/types/react-test-renderer/index.d.ts +++ b/types/react-test-renderer/index.d.ts @@ -14,7 +14,7 @@ export interface ReactTestInstance { } export interface ReactTestRendererJSON { type: string; - props: { [propName: string]: string }; + props: { [propName: string]: any }; children: null | Array; $$typeof?: any; } From c3934de22be6775e2cb1d7342df7163fec65e4d2 Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 08:53:43 +0200 Subject: [PATCH 029/118] [proxy-addr] add typings --- types/proxy-addr/index.d.ts | 18 ++++++++++++++++++ types/proxy-addr/proxy-addr-tests.ts | 27 +++++++++++++++++++++++++++ types/proxy-addr/tsconfig.json | 22 ++++++++++++++++++++++ types/proxy-addr/tslint.json | 1 + 4 files changed, 68 insertions(+) create mode 100644 types/proxy-addr/index.d.ts create mode 100644 types/proxy-addr/proxy-addr-tests.ts create mode 100644 types/proxy-addr/tsconfig.json create mode 100644 types/proxy-addr/tslint.json diff --git a/types/proxy-addr/index.d.ts b/types/proxy-addr/index.d.ts new file mode 100644 index 0000000000..c2b8c61c5f --- /dev/null +++ b/types/proxy-addr/index.d.ts @@ -0,0 +1,18 @@ +// Type definitions for proxy-addr 2.0 +// Project: https://github.com/jshttp/proxy-addr#readme +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// +import { IncomingMessage } from 'http'; + +export = proxyAddr; + +declare function proxyAddr(req: IncomingMessage, trust: proxyAddr.Address | proxyAddr.Address[] | ((addr: string, i: number) => boolean)): string; + +declare namespace proxyAddr { + function all(req: IncomingMessage, trust?: Address | Address[] | ((addr: string, i: number) => boolean)): string[]; + function compile(val: Address | Address[]): (addr: string, i: number) => boolean; + + type Address = 'loopback' | 'linklocal' | 'uniquelocal' | string; +} diff --git a/types/proxy-addr/proxy-addr-tests.ts b/types/proxy-addr/proxy-addr-tests.ts new file mode 100644 index 0000000000..9b2da75fac --- /dev/null +++ b/types/proxy-addr/proxy-addr-tests.ts @@ -0,0 +1,27 @@ +import proxyaddr = require('proxy-addr'); +import { createServer } from 'http'; + +createServer(req => { + // $ExpectType string + proxyaddr(req, addr => addr === '127.0.0.1'); + proxyaddr(req, (addr, i) => i < 1); + + proxyaddr(req, '127.0.0.1'); + proxyaddr(req, ['127.0.0.0/8', '10.0.0.0/8']); + proxyaddr(req, ['127.0.0.0/255.0.0.0', '192.168.0.0/255.255.0.0']); + + proxyaddr(req, '::1'); + proxyaddr(req, ['::1/128', 'fe80::/10']); + + proxyaddr(req, 'loopback'); + proxyaddr(req, ['loopback', 'fc00:ac:1ab5:fff::1/64']); + + // $ExpectType string[] + proxyaddr.all(req); + proxyaddr.all(req, 'loopback'); + + const trust = proxyaddr.compile('localhost'); + proxyaddr.compile(['localhost']); + trust; // $ExpectType (addr: string, i: number) => boolean + proxyaddr(req, trust); +}); diff --git a/types/proxy-addr/tsconfig.json b/types/proxy-addr/tsconfig.json new file mode 100644 index 0000000000..cfd79e445d --- /dev/null +++ b/types/proxy-addr/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", + "proxy-addr-tests.ts" + ] +} diff --git a/types/proxy-addr/tslint.json b/types/proxy-addr/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/proxy-addr/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From febeac2976727db5096dea830875a0bb4ba76c74 Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 09:36:23 +0200 Subject: [PATCH 030/118] [vary] add typings --- types/vary/index.d.ts | 14 ++++++++++++++ types/vary/tsconfig.json | 22 ++++++++++++++++++++++ types/vary/tslint.json | 1 + types/vary/vary-tests.ts | 11 +++++++++++ 4 files changed, 48 insertions(+) create mode 100644 types/vary/index.d.ts create mode 100644 types/vary/tsconfig.json create mode 100644 types/vary/tslint.json create mode 100644 types/vary/vary-tests.ts diff --git a/types/vary/index.d.ts b/types/vary/index.d.ts new file mode 100644 index 0000000000..d533fcdeaf --- /dev/null +++ b/types/vary/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for vary 1.1 +// Project: https://github.com/jshttp/vary#readme +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// +import { ServerResponse } from 'http'; +export = vary; + +declare function vary(res: ServerResponse, field: string | string[]): void; + +declare namespace vary { + function append(header: string, field: string | string[]): string; +} diff --git a/types/vary/tsconfig.json b/types/vary/tsconfig.json new file mode 100644 index 0000000000..a123095408 --- /dev/null +++ b/types/vary/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", + "vary-tests.ts" + ] +} diff --git a/types/vary/tslint.json b/types/vary/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/vary/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/vary/vary-tests.ts b/types/vary/vary-tests.ts new file mode 100644 index 0000000000..d5354c9bed --- /dev/null +++ b/types/vary/vary-tests.ts @@ -0,0 +1,11 @@ +import * as http from 'http'; +import vary = require('vary'); + +http.createServer((req, res) => { + vary(res, 'User-Agent'); + vary(res, ['Origin', 'User-Agent']); +}); + +// $ExpectType string +vary.append('Accept, User-Agent', 'Origin'); +vary.append('Accept, User-Agent', ['Origin', 'user-agent']); From 911957ebf4de5226cc748eb6cbeb7daefc9e23ad Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 10:22:47 +0200 Subject: [PATCH 031/118] [on-finished] improve typings, enable strict null checks & linting --- types/on-finished/index.d.ts | 19 +++++++++---------- types/on-finished/on-finished-tests.ts | 24 +++++++++++++++--------- types/on-finished/tsconfig.json | 4 ++-- types/on-finished/tslint.json | 1 + 4 files changed, 27 insertions(+), 21 deletions(-) create mode 100644 types/on-finished/tslint.json diff --git a/types/on-finished/index.d.ts b/types/on-finished/index.d.ts index ec07267131..2f2eec1075 100644 --- a/types/on-finished/index.d.ts +++ b/types/on-finished/index.d.ts @@ -1,17 +1,16 @@ -// Type definitions for on-finished v2.2.0 +// Type definitions for on-finished 2.3 // Project: https://github.com/jshttp/on-finished // Definitions by: Honza Dvorsky +// BendingBender // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// - - - - -declare function onFinished(msg: NodeJS.EventEmitter, listener: Function): NodeJS.EventEmitter; - -declare namespace onFinished { - export function isFinished(msg: NodeJS.EventEmitter): boolean; -} +import { IncomingMessage, OutgoingMessage } from 'http'; export = onFinished; + +declare function onFinished(msg: T, listener: (err: Error | null, msg: T) => void): T; + +declare namespace onFinished { + function isFinished(msg: IncomingMessage | OutgoingMessage): boolean; +} diff --git a/types/on-finished/on-finished-tests.ts b/types/on-finished/on-finished-tests.ts index 081e2cd37b..4177c48b5b 100644 --- a/types/on-finished/on-finished-tests.ts +++ b/types/on-finished/on-finished-tests.ts @@ -1,13 +1,19 @@ -import events = require('events'); import onFinished = require('on-finished'); +import { createServer } from 'http'; -function test_finished() { +createServer((req, res) => { + onFinished(req, (err, req) => { + err; // $ExpectType Error | null + req; // $ExpectType IncomingMessage + }); - var e = new events.EventEmitter(); + onFinished(res, (err, res) => { + err; // $ExpectType Error | null + res; // $ExpectType ServerResponse + }); - var ret: NodeJS.EventEmitter = onFinished(e, () => { - //callback - }); - - var finished: boolean = onFinished.isFinished(e); -} + // $ExpectType boolean + onFinished.isFinished(req); + // $ExpectType boolean + onFinished.isFinished(res); +}); diff --git a/types/on-finished/tsconfig.json b/types/on-finished/tsconfig.json index eef95ef71e..9bf39ded15 100644 --- a/types/on-finished/tsconfig.json +++ b/types/on-finished/tsconfig.json @@ -6,7 +6,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "baseUrl": "../", "typeRoots": [ "../" @@ -19,4 +19,4 @@ "index.d.ts", "on-finished-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/on-finished/tslint.json b/types/on-finished/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/on-finished/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From a9ed4cd4b972386c04398cebdb472c62c339072b Mon Sep 17 00:00:00 2001 From: doomsower Date: Tue, 15 Aug 2017 11:28:29 +0300 Subject: [PATCH 032/118] [@types/googlemaps] Improve some Data and Geometry definitions --- types/googlemaps/googlemaps-tests.ts | 8 ++++++++ types/googlemaps/index.d.ts | 11 +++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/types/googlemaps/googlemaps-tests.ts b/types/googlemaps/googlemaps-tests.ts index fd7d6057b7..6eccc81f4d 100644 --- a/types/googlemaps/googlemaps-tests.ts +++ b/types/googlemaps/googlemaps-tests.ts @@ -153,6 +153,14 @@ var removePropertyEvent: google.maps.Data.RemovePropertyEvent = { oldValue: {} }; +var lineString = new google.maps.Data.LineString([ { lat: 52.201203, lng: -1.724370 }, { lat: 52.201203, lng: -2.724370 }]); +lineString.forEachLatLng(latLng => console.log(`${latLng.lat} ${latLng.lng}`)); + +data.setDrawingMode('LineString'); +data.setDrawingMode(null); + +data.setControls(['Point', 'Polygon']); +data.setControls(null); /***** Overlays *****/ diff --git a/types/googlemaps/index.d.ts b/types/googlemaps/index.d.ts index 2fea0028b8..8fc613a426 100644 --- a/types/googlemaps/index.d.ts +++ b/types/googlemaps/index.d.ts @@ -361,6 +361,8 @@ declare namespace google.maps { TOP_RIGHT } + type DrawingMode = 'Point' | 'LineString' | 'Polygon'; + /***** Data *****/ export class Data extends MVCObject { constructor(options?: Data.DataOptions); @@ -369,8 +371,8 @@ declare namespace google.maps { contains(feature: Data.Feature): boolean; forEach(callback: (feature: Data.Feature) => void): void; getControlPosition(): ControlPosition; - getControls(): string[]; - getDrawingMode(): string; + getControls(): DrawingMode[]; + getDrawingMode(): DrawingMode | null; getFeatureById(id: number|string): Data.Feature; getMap(): Map; getStyle(): Data.StylingFunction|Data.StyleOptions; @@ -379,8 +381,8 @@ declare namespace google.maps { remove(feature: Data.Feature): void; revertStyle(feature?: Data.Feature): void; setControlPosition(controlPosition: ControlPosition): void; - setControls(controls: string[]): void; - setDrawingMode(drawingMode: string): void; + setControls(controls: DrawingMode[] | null): void; + setDrawingMode(drawingMode: DrawingMode | null): void; setMap(map: Map | null): void; setStyle(style: Data.StylingFunction|Data.StyleOptions): void; toGeoJson(callback: (feature: Object) => void): void; @@ -439,6 +441,7 @@ declare namespace google.maps { export class Geometry { getType(): string; + forEachLatLng(callback: (latLng: LatLng) => void): void; } export class Point extends Data.Geometry { From f6753035838d475b26e85e9a1182963d1c1b4aab Mon Sep 17 00:00:00 2001 From: Anselm Rochus Stordeur Date: Tue, 15 Aug 2017 10:53:13 +0200 Subject: [PATCH 033/118] elasticsearch: Change SearchResponse _version parameter to optional The _version parameter of an SearchResponse is optional. If you don't provide it while indexing it is not in the SearchResponse --- types/elasticsearch/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/elasticsearch/index.d.ts b/types/elasticsearch/index.d.ts index 34be61f5b0..fa68deba57 100644 --- a/types/elasticsearch/index.d.ts +++ b/types/elasticsearch/index.d.ts @@ -626,7 +626,7 @@ declare module Elasticsearch { _id: string; _score: number; _source: T; - _version: number; + _version?: number; _explanation?: Explanation; fields?: any; highlight?: any; From 256046e6601d285d0701707f2fbfc83d2182d74c Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Tue, 15 Aug 2017 11:02:56 +0200 Subject: [PATCH 034/118] classnames: Support bind constructor --- types/classnames/bind.d.ts | 5 +++++ types/classnames/classnames-tests.ts | 12 ++++++++++++ types/classnames/index.d.ts | 2 ++ types/classnames/tsconfig.json | 3 ++- 4 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 types/classnames/bind.d.ts diff --git a/types/classnames/bind.d.ts b/types/classnames/bind.d.ts new file mode 100644 index 0000000000..b6a4242507 --- /dev/null +++ b/types/classnames/bind.d.ts @@ -0,0 +1,5 @@ +export type ClassNamesFn = ( + ...args: Array> +) => string; + +export function bind(styles: Record): ClassNamesFn; diff --git a/types/classnames/classnames-tests.ts b/types/classnames/classnames-tests.ts index 1938acb4f9..14760dff0d 100644 --- a/types/classnames/classnames-tests.ts +++ b/types/classnames/classnames-tests.ts @@ -1,5 +1,6 @@ import classNames = require('classnames'); import * as classNames2 from 'classnames'; +import * as cn from 'classnames/bind'; classNames2('foo', 'bar'); // => 'foo bar' @@ -23,3 +24,14 @@ classNames(null, 'bar', undefined, 0, 1, { baz: null }, ''); // => 'bar 1' // Supporting booleans is tricky since we should only support passing in false, which is ignored // classNames(false, 'bar', 0, 1, { baz: null }, ''); // => 'bar 1' + +// Support for CSS-Modules. Example from README: +// https://github.com/JedWatson/classnames/blob/master/README.md#alternate-bind-version-for-css-modules +const styles = { + foo: 'abc', + bar: 'def', + baz: 'xyz' +}; + +const cx = cn.bind(styles); +const className = cx('foo', ['bar'], { baz: true }); // => "abc def xyz" diff --git a/types/classnames/index.d.ts b/types/classnames/index.d.ts index 42352fc9b8..9ea79d3b97 100644 --- a/types/classnames/index.d.ts +++ b/types/classnames/index.d.ts @@ -5,7 +5,9 @@ // Jason Killian // Sean Kelley // Michal Adamczyk +// Marvin Hagemeister // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 type ClassValue = string | number | ClassDictionary | ClassArray | undefined | null | false; diff --git a/types/classnames/tsconfig.json b/types/classnames/tsconfig.json index 8eeaf9b1ca..bb39a9d874 100644 --- a/types/classnames/tsconfig.json +++ b/types/classnames/tsconfig.json @@ -17,6 +17,7 @@ }, "files": [ "index.d.ts", + "bind.d.ts", "classnames-tests.ts" ] -} \ No newline at end of file +} From 468ccddeacaab2b02f29afb0c410d918b48ba4a3 Mon Sep 17 00:00:00 2001 From: mcousillas6 Date: Tue, 15 Aug 2017 08:59:40 -0300 Subject: [PATCH 035/118] Changed typing to React.ComponentType --- types/react-native/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-native/index.d.ts b/types/react-native/index.d.ts index 1229f55acb..24d9633631 100644 --- a/types/react-native/index.d.ts +++ b/types/react-native/index.d.ts @@ -3491,7 +3491,7 @@ export interface FlatListProperties extends VirtualizedListProperties | React.ReactElement | (() => React.ReactElement) | null + ItemSeparatorComponent?: React.ComponentType | null /** * Rendered when the list is empty. From ad093c1036cddba570f886bc0ca25f684cee49fa Mon Sep 17 00:00:00 2001 From: Marc Ghorayeb Date: Wed, 9 Aug 2017 11:27:54 +0200 Subject: [PATCH 036/118] [node] homogenize zlib input to Buffer or string and results to Buffer --- types/node/index.d.ts | 30 +++++++++++++++--------------- types/node/node-tests.ts | 16 ++++++++++++++++ types/node/v0/index.d.ts | 28 ++++++++++++++-------------- types/node/v0/node-tests.ts | 16 ++++++++++++++++ types/node/v4/index.d.ts | 28 ++++++++++++++-------------- types/node/v6/index.d.ts | 20 ++++++++++---------- types/node/v6/node-tests.ts | 16 ++++++++++++++++ types/node/v7/index.d.ts | 30 +++++++++++++++--------------- types/node/v7/node-tests.ts | 16 ++++++++++++++++ 9 files changed, 132 insertions(+), 68 deletions(-) diff --git a/types/node/index.d.ts b/types/node/index.d.ts index 52186217bd..72071c7c56 100644 --- a/types/node/index.d.ts +++ b/types/node/index.d.ts @@ -1278,21 +1278,21 @@ declare module "zlib" { export function deflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; export function deflateRaw(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; export function deflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; - export function gzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function gzip(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function gzipSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function gunzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function gunzip(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function gunzipSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function inflate(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function inflate(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function inflateSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function inflateRaw(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function inflateRaw(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function inflateRawSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function unzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function unzip(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function unzipSync(buf: Buffer, options?: ZlibOptions): Buffer; + export function gzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gzip(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function gzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gunzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gunzip(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function gunzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflate(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function inflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateRaw(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function inflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function unzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function unzip(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function unzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; export namespace constants { // Allowed flush values. diff --git a/types/node/node-tests.ts b/types/node/node-tests.ts index ecd315eee9..7fab05644f 100644 --- a/types/node/node-tests.ts +++ b/types/node/node-tests.ts @@ -2820,3 +2820,19 @@ namespace async_hooks_tests { const tId: number = async_hooks.triggerAsyncId(); const eId: number = async_hooks.executionAsyncId(); } + +//////////////////////////////////////////////////// +/// zlib tests : http://nodejs.org/api/zlib.html /// +//////////////////////////////////////////////////// + +namespace zlib_tests { + { + const gzipped = zlib.gzipSync('test'); + const unzipped = zlib.gunzipSync(gzipped.toString()); + } + + { + const deflate = zlib.deflateSync('test'); + const inflate = zlib.inflateSync(deflate.toString()); + } +} diff --git a/types/node/v0/index.d.ts b/types/node/v0/index.d.ts index fdbf9dd518..aa7996021c 100644 --- a/types/node/v0/index.d.ts +++ b/types/node/v0/index.d.ts @@ -664,20 +664,20 @@ declare module "zlib" { export function createInflateRaw(options?: ZlibOptions): InflateRaw; export function createUnzip(options?: ZlibOptions): Unzip; - export function deflate(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function deflateSync(buf: Buffer, options?: ZlibOptions): any; - export function deflateRaw(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function deflateRawSync(buf: Buffer, options?: ZlibOptions): any; - export function gzip(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function gzipSync(buf: Buffer, options?: ZlibOptions): any; - export function gunzip(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function gunzipSync(buf: Buffer, options?: ZlibOptions): any; - export function inflate(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function inflateSync(buf: Buffer, options?: ZlibOptions): any; - export function inflateRaw(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function inflateRawSync(buf: Buffer, options?: ZlibOptions): any; - export function unzip(buf: Buffer, callback: (error: Error, result: any) =>void ): void; - export function unzipSync(buf: Buffer, options?: ZlibOptions): any; + export function deflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function deflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function deflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function deflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gunzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gunzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function unzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function unzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; // Constants export var Z_NO_FLUSH: number; diff --git a/types/node/v0/node-tests.ts b/types/node/v0/node-tests.ts index 6c94757bf7..91e85f5a0c 100644 --- a/types/node/v0/node-tests.ts +++ b/types/node/v0/node-tests.ts @@ -448,3 +448,19 @@ namespace string_decoder_tests { childProcess.exec("echo test"); childProcess.spawnSync("echo test"); + +//////////////////////////////////////////////////// +/// zlib tests : http://nodejs.org/api/zlib.html /// +//////////////////////////////////////////////////// + +namespace zlib_tests { + { + const gzipped = zlib.gzipSync('test'); + const unzipped = zlib.gunzipSync(gzipped.toString()); + } + + { + const deflate = zlib.deflateSync('test'); + const inflate = zlib.inflateSync(deflate.toString()); + } +} diff --git a/types/node/v4/index.d.ts b/types/node/v4/index.d.ts index ad9f022b84..5e7bfd2926 100644 --- a/types/node/v4/index.d.ts +++ b/types/node/v4/index.d.ts @@ -802,20 +802,20 @@ declare module "zlib" { export function createInflateRaw(options?: ZlibOptions): InflateRaw; export function createUnzip(options?: ZlibOptions): Unzip; - export function deflate(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function deflateSync(buf: Buffer | string, options?: ZlibOptions): any; - export function deflateRaw(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function deflateRawSync(buf: Buffer | string, options?: ZlibOptions): any; - export function gzip(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function gzipSync(buf: Buffer | string, options?: ZlibOptions): any; - export function gunzip(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function gunzipSync(buf: Buffer | string, options?: ZlibOptions): any; - export function inflate(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function inflateSync(buf: Buffer | string, options?: ZlibOptions): any; - export function inflateRaw(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function inflateRawSync(buf: Buffer | string, options?: ZlibOptions): any; - export function unzip(buf: Buffer | string, callback: (error: Error, result: any) =>void ): void; - export function unzipSync(buf: Buffer | string, options?: ZlibOptions): any; + export function deflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function deflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function deflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function deflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gunzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gunzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function unzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function unzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; // Constants export var Z_NO_FLUSH: number; diff --git a/types/node/v6/index.d.ts b/types/node/v6/index.d.ts index cbf93b8361..38b6d41798 100644 --- a/types/node/v6/index.d.ts +++ b/types/node/v6/index.d.ts @@ -1092,16 +1092,16 @@ declare module "zlib" { export function deflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; export function deflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; export function deflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; - export function gzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function gzipSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function gunzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function gunzipSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function inflate(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function inflateSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function inflateRaw(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function inflateRawSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function unzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function unzipSync(buf: Buffer, options?: ZlibOptions): Buffer; + export function gzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gunzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gunzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function unzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function unzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; // Constants export var Z_NO_FLUSH: number; diff --git a/types/node/v6/node-tests.ts b/types/node/v6/node-tests.ts index 6e5901541e..3607a5bec2 100644 --- a/types/node/v6/node-tests.ts +++ b/types/node/v6/node-tests.ts @@ -2366,3 +2366,19 @@ client.connect(8888, 'localhost'); client.listbreakpoints((err, body, packet) => { }); + +//////////////////////////////////////////////////// +/// zlib tests : http://nodejs.org/api/zlib.html /// +//////////////////////////////////////////////////// + +namespace zlib_tests { + { + const gzipped = zlib.gzipSync('test'); + const unzipped = zlib.gunzipSync(gzipped.toString()); + } + + { + const deflate = zlib.deflateSync('test'); + const inflate = zlib.inflateSync(deflate.toString()); + } +} diff --git a/types/node/v7/index.d.ts b/types/node/v7/index.d.ts index ffc19c34b1..4f40de2d58 100644 --- a/types/node/v7/index.d.ts +++ b/types/node/v7/index.d.ts @@ -1123,21 +1123,21 @@ declare module "zlib" { export function deflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; export function deflateRaw(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; export function deflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; - export function gzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function gzip(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function gzipSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function gunzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function gunzip(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function gunzipSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function inflate(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function inflate(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function inflateSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function inflateRaw(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function inflateRaw(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function inflateRawSync(buf: Buffer, options?: ZlibOptions): Buffer; - export function unzip(buf: Buffer, callback: (error: Error, result: Buffer) => void): void; - export function unzip(buf: Buffer, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; - export function unzipSync(buf: Buffer, options?: ZlibOptions): Buffer; + export function gzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gzip(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function gzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function gunzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function gunzip(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function gunzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflate(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflate(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function inflateSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function inflateRaw(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function inflateRaw(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function inflateRawSync(buf: Buffer | string, options?: ZlibOptions): Buffer; + export function unzip(buf: Buffer | string, callback: (error: Error, result: Buffer) => void): void; + export function unzip(buf: Buffer | string, options: ZlibOptions, callback: (error: Error, result: Buffer) => void): void; + export function unzipSync(buf: Buffer | string, options?: ZlibOptions): Buffer; export namespace constants { // Allowed flush values. diff --git a/types/node/v7/node-tests.ts b/types/node/v7/node-tests.ts index 60118e5eac..860a4dc56b 100644 --- a/types/node/v7/node-tests.ts +++ b/types/node/v7/node-tests.ts @@ -2510,3 +2510,19 @@ client.connect(8888, 'localhost'); client.listbreakpoints((err, body, packet) => { }); + +//////////////////////////////////////////////////// +/// zlib tests : http://nodejs.org/api/zlib.html /// +//////////////////////////////////////////////////// + +namespace zlib_tests { + { + const gzipped = zlib.gzipSync('test'); + const unzipped = zlib.gunzipSync(gzipped.toString()); + } + + { + const deflate = zlib.deflateSync('test'); + const inflate = zlib.inflateSync(deflate.toString()); + } +} From bbf02108e1beddcbc577ccc89d481bb1ebf71f0c Mon Sep 17 00:00:00 2001 From: Aditya Date: Tue, 15 Aug 2017 15:09:26 +0200 Subject: [PATCH 037/118] client-sessions: add definitions --- .../client-sessions/client-sessions-tests.ts | 25 +++++++ types/client-sessions/index.d.ts | 74 +++++++++++++++++++ types/client-sessions/tsconfig.json | 20 +++++ types/client-sessions/tslint.json | 1 + 4 files changed, 120 insertions(+) create mode 100644 types/client-sessions/client-sessions-tests.ts create mode 100644 types/client-sessions/index.d.ts create mode 100644 types/client-sessions/tsconfig.json create mode 100644 types/client-sessions/tslint.json diff --git a/types/client-sessions/client-sessions-tests.ts b/types/client-sessions/client-sessions-tests.ts new file mode 100644 index 0000000000..f53407a69c --- /dev/null +++ b/types/client-sessions/client-sessions-tests.ts @@ -0,0 +1,25 @@ +import * as express from "express"; +import * as session from "client-sessions"; + +const secret = "yolo"; +const app = express(); +const options = { secret }; + +let middleware = session(options); +middleware = session({ secret, cookieName: "_s" }); +middleware = session({ secret, duration: 600000 }); +middleware = session({ secret, activeDuration: 42 }); +middleware = session({ + secret, + cookie: { + httpOnly: false, + } +}); + +app.use(middleware); +app.use((req: any, res: any) => { + req.session = { test: true }; +}); + +const encoded = session.util.encode(options, { test: true }); +session.util.decode(options, encoded); diff --git a/types/client-sessions/index.d.ts b/types/client-sessions/index.d.ts new file mode 100644 index 0000000000..6a4b3b2b2f --- /dev/null +++ b/types/client-sessions/index.d.ts @@ -0,0 +1,74 @@ +// Type definitions for client-sessions 0.8 +// Project: https://github.com/mozilla/node-client-sessions +// Definitions by: Aditya +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +import * as cookies from "cookies"; + +declare namespace client_sessions { + type NextFunction = (err?: Error) => void; + type RequestHandler = (req: any, res: any, next: NextFunction) => any; + + interface SessionOptions { + /** + * encryption secret for the session. + * required + */ + secret: string; + + /** + * session cookie name. + * Default: 'session_state' + */ + cookieName?: string; + + /** + * how long the session will stay valid in ms. + * Default: 24 hours + */ + duration?: number; + + /** + * if expiresIn < activeDuration, the session will be extended by activeDuration milliseconds. + * Default: 5 minutes + */ + activeDuration?: number; + + /** + * session accessor on the request object. + * Default: 'session' + */ + requestKey?: string; + + cookie?: cookies.IOptions; + } + + interface DecodeResult { + content: any; + createdAt: number; + duration: number; + } + + interface ComputeHmacOptions { + signatureAlgorithm: string; + signatureKey: Buffer; + } + + interface Util { + computeHmac(options: any, iv: string, ciphertext: string, duration: number, createdAt: number): Buffer; + encode(options: SessionOptions, content: any, duration?: number, createdAt?: number): string; + decode(options: SessionOptions, encoded: string): DecodeResult; + } + + interface Sessions { + (options: SessionOptions): RequestHandler; + util: Util; + } +} + +declare var client_sessions: client_sessions.Sessions; +export = client_sessions; +export as namespace client_sessions; diff --git a/types/client-sessions/tsconfig.json b/types/client-sessions/tsconfig.json new file mode 100644 index 0000000000..151ca87623 --- /dev/null +++ b/types/client-sessions/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "client-sessions-tests.ts" + ] +} diff --git a/types/client-sessions/tslint.json b/types/client-sessions/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/client-sessions/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From d57c207a00690f43bcca1bb1393bb7f8f82db02b Mon Sep 17 00:00:00 2001 From: Maarten Mulders Date: Tue, 15 Aug 2017 15:49:16 +0200 Subject: [PATCH 038/118] Type definitions for Passport-GitHub (2) --- types/passport-github2/index.d.ts | 36 ++++++++++++++++ .../passport-github2-tests.ts | 42 +++++++++++++++++++ types/passport-github2/tsconfig.json | 22 ++++++++++ types/passport-github2/tslint.json | 1 + 4 files changed, 101 insertions(+) create mode 100644 types/passport-github2/index.d.ts create mode 100644 types/passport-github2/passport-github2-tests.ts create mode 100644 types/passport-github2/tsconfig.json create mode 100644 types/passport-github2/tslint.json diff --git a/types/passport-github2/index.d.ts b/types/passport-github2/index.d.ts new file mode 100644 index 0000000000..cd7f6a2566 --- /dev/null +++ b/types/passport-github2/index.d.ts @@ -0,0 +1,36 @@ +// Type definitions for passport-github 1.1 +// Project: https://github.com/jaredhanson/passport-github +// Definitions by: Yasunori Ohoka +// Maarten Mulders +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +import passport = require('passport'); +import express = require('express'); + +export interface Profile extends passport.Profile { + profileUrl: string; +} + +export interface StrategyOption { + clientID: string; + clientSecret: string; + callbackURL: string; + + scope?: string[]; + userAgent?: string; + + authorizationURL?: string; + tokenURL?: string; + scopeSeparator?: string; + customHeaders?: string; + userProfileURL?: string; +} + +export class Strategy implements passport.Strategy { + constructor(options: StrategyOption, verify: (accessToken: string, refreshToken: string, profile: Profile, done: (error: any, user?: any) => void) => void); + userProfile: (accessToken: string, done?: (error: any, profile: Profile) => void) => void; + + name: string; + authenticate: (req: express.Request, options?: passport.AuthenticateOptions) => void; +} diff --git a/types/passport-github2/passport-github2-tests.ts b/types/passport-github2/passport-github2-tests.ts new file mode 100644 index 0000000000..ee101b618b --- /dev/null +++ b/types/passport-github2/passport-github2-tests.ts @@ -0,0 +1,42 @@ +/** + * Created by jcabresos on 4/19/2014. + */ +import passport = require('passport'); +import github = require('passport-github2'); + +// just some test model +const User = { + findOrCreate(id: string, provider: string, callback: (err: any, user: any) => void): void { + callback(null, { username: 'james' }); + } +}; + +const callbackURL = process.env.PASSPORT_GITHUB_CALLBACK_URL; +const clientID = process.env.PASSPORT_GITHUB_CONSUMER_KEY; +const clientSecret = process.env.PASSPORT_GITHUB_CONSUMER_SECRET; + +if (typeof callbackURL === "undefined") { + throw new Error("callbackURL is undefined"); +} + +if (typeof clientID === "undefined") { + throw new Error("clientID is undefined"); +} + +if (typeof clientSecret === "undefined") { + throw new Error("clientSecret is undefined"); +} + +passport.use(new github.Strategy( + { + callbackURL, + clientID, + clientSecret + }, + (accessToken: string, refreshToken: string, profile: github.Profile, done: (error: any, user?: any) => void) => { + User.findOrCreate(profile.id, profile.provider, (err, user) => { + if (err) { return done(err); } + done(null, user); + }); + }) +); diff --git a/types/passport-github2/tsconfig.json b/types/passport-github2/tsconfig.json new file mode 100644 index 0000000000..23822974be --- /dev/null +++ b/types/passport-github2/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", + "passport-github2-tests.ts" + ] +} diff --git a/types/passport-github2/tslint.json b/types/passport-github2/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/passport-github2/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From 4b4f721766ac1fb6867070ce4651475329a13379 Mon Sep 17 00:00:00 2001 From: Andrew Eisenberg Date: Tue, 15 Aug 2017 07:51:58 -0600 Subject: [PATCH 039/118] Updates type definitions for js-yaml Includes a more complete definition for yaml.Schema.create(). --- types/js-yaml/index.d.ts | 5 +++-- types/js-yaml/js-yaml-tests.ts | 8 +++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/types/js-yaml/index.d.ts b/types/js-yaml/index.d.ts index 2817689c29..8f7c0a346d 100644 --- a/types/js-yaml/index.d.ts +++ b/types/js-yaml/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for js-yaml 3.9.0 +// Type definitions for js-yaml 3.9.1 // Project: https://github.com/nodeca/js-yaml // Definitions by: Bart van der Schoor , Sebastian Clausen // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -14,7 +14,8 @@ declare namespace jsyaml { } export class Schema { constructor(definition: SchemaDefinition); - public static create(args: any[]): Schema; + public static create(types: Type[] | Type): Schema; + public static create(schemas: Schema[] | Schema, types: Type[] | Type): Schema; } export function safeLoadAll(str: string, iterator: (doc: any) => void, opts?: LoadOptions): any; diff --git a/types/js-yaml/js-yaml-tests.ts b/types/js-yaml/js-yaml-tests.ts index 494b815572..aff53acd3c 100644 --- a/types/js-yaml/js-yaml-tests.ts +++ b/types/js-yaml/js-yaml-tests.ts @@ -106,4 +106,10 @@ value = yaml.dump(str, dumpOpts); value = new yaml.YAMLException(); value = new yaml.Type(str, typeConstructorOptions); -value = yaml.Schema.create([schemaDefinition]); +value = new yaml.Schema(schemaDefinition); +value = yaml.Schema.create([new yaml.Type(str)]); +value = yaml.Schema.create(new yaml.Type(str)); +value = yaml.Schema.create(new yaml.Schema(schemaDefinition), [new yaml.Type(str)]); +value = yaml.Schema.create([new yaml.Schema(schemaDefinition)], [new yaml.Type(str)]); +value = yaml.Schema.create(new yaml.Schema(schemaDefinition), new yaml.Type(str)); +value = yaml.Schema.create([new yaml.Schema(schemaDefinition)], new yaml.Type(str)); From eaea12959d0655747ef880055fa56f3ba8002db2 Mon Sep 17 00:00:00 2001 From: Frank Tan Date: Tue, 15 Aug 2017 10:13:01 -0400 Subject: [PATCH 040/118] [react-redux] Do not mark ownProps as optional According to docs, "it's always legal to provide a callback that accepts fewer arguments": https://www.typescriptlang.org/docs/handbook/declaration-files/do-s-and-don-ts.html#optional-parameters-in-callbacks Morever, react-redux docs say that ownProps will have a value when it is specified as a callback argument: https://github.com/reactjs/react-redux/blob/master/docs/api.md#the-arity-of-mapstatetoprops-and-mapdispatchtoprops-determines-whether-they-receive-ownprops --- types/react-redux/index.d.ts | 9 +++++---- types/react-redux/react-redux-tests.tsx | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/types/react-redux/index.d.ts b/types/react-redux/index.d.ts index fc3c54bef1..c0a3692f2a 100644 --- a/types/react-redux/index.d.ts +++ b/types/react-redux/index.d.ts @@ -5,6 +5,7 @@ // Thomas Hasner , // Kenzie Togami , // Curits Layne +// Frank Tan // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.4 @@ -134,17 +135,17 @@ export declare function connect; interface MapStateToProps { - (state: any, ownProps?: TOwnProps): TStateProps; + (state: any, ownProps: TOwnProps): TStateProps; } interface MapStateToPropsFactory { - (initialState: any, ownProps?: TOwnProps): MapStateToProps; + (initialState: any, ownProps: TOwnProps): MapStateToProps; } type MapStateToPropsParam = MapStateToProps | MapStateToPropsFactory; interface MapDispatchToPropsFunction { - (dispatch: Dispatch, ownProps?: TOwnProps): TDispatchProps; + (dispatch: Dispatch, ownProps: TOwnProps): TDispatchProps; } interface MapDispatchToPropsObject { @@ -155,7 +156,7 @@ type MapDispatchToProps = MapDispatchToPropsFunction | MapDispatchToPropsObject; interface MapDispatchToPropsFactory { - (dispatch: Dispatch, ownProps?: TOwnProps): MapDispatchToProps; + (dispatch: Dispatch, ownProps: TOwnProps): MapDispatchToProps; } type MapDispatchToPropsParam = MapDispatchToProps | MapDispatchToPropsFactory; diff --git a/types/react-redux/react-redux-tests.tsx b/types/react-redux/react-redux-tests.tsx index 1bf9dae4f2..0ebcc3a820 100644 --- a/types/react-redux/react-redux-tests.tsx +++ b/types/react-redux/react-redux-tests.tsx @@ -63,8 +63,8 @@ connect( )(Counter); // with higher order functions using parameters connect( - (initialState: CounterState, ownProps: {}) => mapStateToProps, - (dispatch: Dispatch, ownProps: {}) => mapDispatchToProps + (initialState: CounterState, ownProps) => mapStateToProps, + (dispatch: Dispatch, ownProps) => mapDispatchToProps )(Counter); // only first argument connect( From 2da9431df154a0725fbe7d637ee2a604c84f6d63 Mon Sep 17 00:00:00 2001 From: Danny Cochran Date: Tue, 15 Aug 2017 07:47:06 -0700 Subject: [PATCH 041/118] Make all arguments for Options optional next-redux-wrapper uses Options -- a separate PR can add arguments there. --- types/react-redux/index.d.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/types/react-redux/index.d.ts b/types/react-redux/index.d.ts index 7b983b71b6..3dce0d9bdf 100644 --- a/types/react-redux/index.d.ts +++ b/types/react-redux/index.d.ts @@ -164,7 +164,7 @@ interface MergeProps { (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps): TMergedProps; } -interface Options extends ConnectOptions { +interface Options extends ConnectOptions { /** * If true, implements shouldComponentUpdate and shallowly compares the result of mergeProps, * preventing unnecessary updates, assuming that the component is a “pure” component @@ -181,7 +181,7 @@ interface Options extends ConnectOpt areStatesEqual?: (nextState: any, prevState: any) => boolean; /** - * When pure, compares incoming store state to its previous value. + * When pure, compares incoming props to its previous value. * @default shallowEqual */ areOwnPropsEqual?: (nextOwnProps: TOwnProps, prevOwnProps: TOwnProps) => boolean; From eb413c219ec3943ef36a58d3b8e4d28667e25eb8 Mon Sep 17 00:00:00 2001 From: Tim Wang Date: Tue, 15 Aug 2017 23:30:06 +0800 Subject: [PATCH 042/118] Make loadFont file optional --- types/react-native-vector-icons/Icon.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-native-vector-icons/Icon.d.ts b/types/react-native-vector-icons/Icon.d.ts index e9eea4b42e..bb56a01794 100644 --- a/types/react-native-vector-icons/Icon.d.ts +++ b/types/react-native-vector-icons/Icon.d.ts @@ -191,7 +191,7 @@ export class Icon extends React.Component { size?: number ): Promise; static loadFont( - file: string + file?: string ): Promise; } From fa00e46e93d532c2c08f8e9d0faca320da65eb7d Mon Sep 17 00:00:00 2001 From: Tim Wang Date: Tue, 15 Aug 2017 23:37:34 +0800 Subject: [PATCH 043/118] Use TextStyle for navigation text related style properties --- types/react-navigation/index.d.ts | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/types/react-navigation/index.d.ts b/types/react-navigation/index.d.ts index e0f74b1c2d..5ab4cc05a4 100644 --- a/types/react-navigation/index.d.ts +++ b/types/react-navigation/index.d.ts @@ -8,6 +8,7 @@ // Kyle Roach // phanalpha // charlesfamu +// Tim Wang // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -44,7 +45,7 @@ export type HeaderProps = NavigationSceneRendererProps & { getScreenDetails: (navigationScene: NavigationScene) => NavigationScreenDetails< NavigationStackScreenOptions >, - style: Style, + style: ViewStyle, }; /** @@ -148,8 +149,6 @@ export type NavigationScreenOption = config: T ) => T); -export type Style = ViewStyle; - export type NavigationScreenDetails = { options: T, state: NavigationRoute, @@ -253,7 +252,7 @@ export interface NavigationUriAction extends NavigationUriActionPayload { export interface NavigationStackViewConfig { mode?: 'card' | 'modal', headerMode?: HeaderMode, - cardStyle?: Style, + cardStyle?: ViewStyle, transitionConfig?: () => TransitionConfig, onTransitionStart?: () => void, onTransitionEnd?: () => void, @@ -262,15 +261,15 @@ export interface NavigationStackViewConfig { export type NavigationStackScreenOptions = NavigationScreenOptions & { header?: (React.ReactElement | ((headerProps: HeaderProps) => React.ReactElement)) | null, headerTitle?: string | React.ReactElement, - headerTitleStyle?: Style, + headerTitleStyle?: TextStyle, headerTintColor?: string, headerLeft?: React.ReactElement, headerBackTitle?: string | null, headerTruncatedBackTitle?: string, - headerBackTitleStyle?: Style, + headerBackTitleStyle?: TextStyle, headerPressColorAndroid?: string, headerRight?: React.ReactElement, - headerStyle?: Style, + headerStyle?: ViewStyle, gesturesEnabled?: boolean, }; @@ -469,7 +468,7 @@ export type NavigationSceneRenderer = () => (React.ReactElement | null); export type NavigationStyleInterpolator = ( props: NavigationSceneRendererProps -) => Style; +) => ViewStyle; export type LayoutEvent = { nativeEvent: { From b68c87fee6212713e97c11eb713fb6c476778ab9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Aur=C3=A9lio?= Date: Tue, 15 Aug 2017 12:53:34 -0300 Subject: [PATCH 044/118] react-redux: Make dispatch property optional That way the function returned by `connect()` (when no `mapDispatchToProps` function is specified) can also take React classes that don't have a `dispatch` prop declared. (But we get to keep the type checking for the classes that do) --- types/react-redux/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-redux/index.d.ts b/types/react-redux/index.d.ts index fc3c54bef1..017c674da0 100644 --- a/types/react-redux/index.d.ts +++ b/types/react-redux/index.d.ts @@ -24,7 +24,7 @@ type Diff = ({ [P in T]: P } & { [P in U]: n type Omit = Pick>; export interface DispatchProp { - dispatch: Dispatch; + dispatch?: Dispatch; } interface AdvancedComponentDecorator { From 9b9631b4df52d55498bbcf8e01bbbc6ba3ed3abc Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 18:54:01 +0200 Subject: [PATCH 045/118] [http-errors] upgrade to v1.6, enable strict null checks & linting --- types/http-errors/http-errors-tests.ts | 82 +++++------ types/http-errors/index.d.ts | 189 +++++++++++++------------ types/http-errors/tsconfig.json | 4 +- types/http-errors/tslint.json | 1 + 4 files changed, 139 insertions(+), 137 deletions(-) create mode 100644 types/http-errors/tslint.json diff --git a/types/http-errors/http-errors-tests.ts b/types/http-errors/http-errors-tests.ts index 51017828a1..080ac3b61e 100644 --- a/types/http-errors/http-errors-tests.ts +++ b/types/http-errors/http-errors-tests.ts @@ -1,86 +1,74 @@ - import * as createError from 'http-errors'; import * as express from 'express'; -var app = express(); +const app = express(); -declare global { - namespace Express { - export interface Request { - user?: any - } - } -} - -app.use(function (req, res, next) { - if (!req.user) return next(createError(401, 'Please login to view this page.')); +app.use((req, res, next) => { + if (!req) return next(createError('Please login to view this page.', 401)); next(); }); /* Examples taken from https://github.com/jshttp/http-errors/blob/1.3.1/test/test.js */ // createError(status) -var err = createError(404); -console.log(err.name); -console.log(err.message); -console.log(err.status); -console.log(err.statusCode); -console.log(err.expose); -console.log(err.headers); +let err = createError(404); +err; // $ExpectType HttpError +err.name; // $ExpectType string +err.message; // $ExpectType string +err.status; // $ExpectType number +err.statusCode; // $ExpectType number +err.expose; // $ExpectType boolean +err.headers; // $ExpectType { [key: string]: string; } | undefined // createError(status, msg) -var err = createError(404, 'LOL'); +err = createError(404, 'LOL'); // createError(status, props) -var err = createError(404, {id: 1}); +err = createError(404, {id: 1}); // createError(props) -var err = createError({id: 1}); -console.log(( err).id); +err = createError({id: 1}); +// $ExpectType any +err.id; // createError(msg, status) -var err = createError('LOL', 404); +err = createError('LOL', 404); // createError(msg) -var err = createError('LOL'); +err = createError('LOL'); // createError(msg, props) -var err = createError('LOL', {id: 1}); +err = createError('LOL', {id: 1}); // createError(err) -var err = createError(new Error('LOL')); +err = createError(new Error('LOL')); // createError(err, props) -var err = createError(new Error('LOL'), {id: 1}); +err = createError(new Error('LOL'), {id: 1}); // createError(status, err, props) -var err = createError(404, new Error('LOL'), {id: 1}); +err = createError(404, new Error('LOL'), {id: 1}); // createError(status, msg, props) -var err = createError(404, 'LOL', {id: 1}); +err = createError(404, 'LOL', {id: 1}); // createError(status, msg, { expose: false }) -var err = createError(404, 'LOL', {expose: false}) +err = createError(404, 'LOL', {expose: false}); -// new createError.NotFound() -var err = new createError.NotFound(); +err = new createError.NotFound(); +err = new createError.InternalServerError(); +err = new createError[404](); -// new createError.InternalServerError() -var err = new createError.InternalServerError(); - -// new createError['404']() -var err = new createError['404'](); - -//createError['404'](); // TypeScript should fail with "Did you mean to include 'new'?" -//new createError(); // TypeScript should fail with "Only a void function can be called with the 'new' keyword" +createError['404'](); // $ExpectError +new createError(); // $ExpectError // Error messages can have custom messages -var err = new createError.NotFound('This might be a problem'); -var err = new createError['404']('This might be a problem'); +err = new createError.NotFound('This might be a problem'); +err = new createError[404]('This might be a problem'); // 1.5.0 supports 421 - Misdirected Request -var err = new createError.MisdirectedRequest(); -var err = new createError.MisdirectedRequest('Where should this go?'); +err = new createError.MisdirectedRequest(); +err = new createError.MisdirectedRequest('Where should this go?'); -let error: createError.HttpError; -console.log(error instanceof createError.HttpError); +// $ExpectType boolean +new Error() instanceof createError.HttpError; diff --git a/types/http-errors/index.d.ts b/types/http-errors/index.d.ts index aff5b312dd..96688f4f10 100644 --- a/types/http-errors/index.d.ts +++ b/types/http-errors/index.d.ts @@ -1,97 +1,110 @@ -// Type definitions for http-errors v1.5.0 +// Type definitions for http-errors 1.6 // Project: https://github.com/jshttp/http-errors // Definitions by: Tanguy Krotoff +// BendingBender // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 -declare module 'http-errors' { - namespace createHttpError { +export = createHttpError; - // See https://github.com/jshttp/http-errors/blob/1.3.1/index.js#L42 - interface HttpError extends Error { - status: number; - statusCode: number; - expose: boolean; - headers?: { - [key: string]: string - }; - } +declare const createHttpError: createHttpError.CreateHttpError & createHttpError.NamedConstructors; - type HttpErrorConstructor = new(msg?: string) => HttpError; - - interface CreateHttpError { - // See https://github.com/Microsoft/TypeScript/issues/227#issuecomment-50092674 - [code: string]: new (msg?: string) => HttpError; - - (...args: Array): HttpError; - - HttpError: HttpErrorConstructor; - - Continue: HttpErrorConstructor; - SwitchingProtocols: HttpErrorConstructor; - Processing: HttpErrorConstructor; - OK: HttpErrorConstructor; - Created: HttpErrorConstructor; - Accepted: HttpErrorConstructor; - NonAuthoritativeInformation: HttpErrorConstructor; - NoContent: HttpErrorConstructor; - ResetContent: HttpErrorConstructor; - PartialContent: HttpErrorConstructor; - MultiStatus: HttpErrorConstructor; - AlreadyReported: HttpErrorConstructor; - IMUsed: HttpErrorConstructor; - MultipleChoices: HttpErrorConstructor; - MovedPermanently: HttpErrorConstructor; - Found: HttpErrorConstructor; - SeeOther: HttpErrorConstructor; - NotModified: HttpErrorConstructor; - UseProxy: HttpErrorConstructor; - Unused: HttpErrorConstructor; - TemporaryRedirect: HttpErrorConstructor; - PermanentRedirect: HttpErrorConstructor; - BadRequest: HttpErrorConstructor; - Unauthorized: HttpErrorConstructor; - PaymentRequired: HttpErrorConstructor; - Forbidden: HttpErrorConstructor; - NotFound: HttpErrorConstructor; - MethodNotAllowed: HttpErrorConstructor; - NotAcceptable: HttpErrorConstructor; - ProxyAuthenticationRequired: HttpErrorConstructor; - RequestTimeout: HttpErrorConstructor; - Conflict: HttpErrorConstructor; - Gone: HttpErrorConstructor; - LengthRequired: HttpErrorConstructor; - PreconditionFailed: HttpErrorConstructor; - PayloadTooLarge: HttpErrorConstructor; - URITooLong: HttpErrorConstructor; - UnsupportedMediaType: HttpErrorConstructor; - RangeNotSatisfiable: HttpErrorConstructor; - ExpectationFailed: HttpErrorConstructor; - ImATeapot: HttpErrorConstructor; - MisdirectedRequest: HttpErrorConstructor; - UnprocessableEntity: HttpErrorConstructor; - Locked: HttpErrorConstructor; - FailedDependency: HttpErrorConstructor; - UnorderedCollection: HttpErrorConstructor; - UpgradeRequired: HttpErrorConstructor; - PreconditionRequired: HttpErrorConstructor; - TooManyRequests: HttpErrorConstructor; - RequestHeaderFieldsTooLarge: HttpErrorConstructor; - UnavailableForLegalReasons: HttpErrorConstructor; - InternalServerError: HttpErrorConstructor; - NotImplemented: HttpErrorConstructor; - BadGateway: HttpErrorConstructor; - ServiceUnavailable: HttpErrorConstructor; - GatewayTimeout: HttpErrorConstructor; - HTTPVersionNotSupported: HttpErrorConstructor; - VariantAlsoNegotiates: HttpErrorConstructor; - InsufficientStorage: HttpErrorConstructor; - LoopDetected: HttpErrorConstructor; - BandwidthLimitExceeded: HttpErrorConstructor; - NotExtended: HttpErrorConstructor; - NetworkAuthenticationRequired: HttpErrorConstructor; - } +declare namespace createHttpError { + interface HttpError extends Error { + status: number; + statusCode: number; + expose: boolean; + headers?: { + [key: string]: string; + }; + [key: string]: any; } - var createHttpError: createHttpError.CreateHttpError; - export = createHttpError; + type HttpErrorConstructor = new (msg?: string) => HttpError; + + type CreateHttpError = (...args: Array) => HttpError; + + type NamedConstructors = { [code: string]: HttpErrorConstructor } & Record<'HttpError' | + 'BadRequest' | + 'Unauthorized' | + 'PaymentRequired' | + 'Forbidden' | + 'NotFound' | + 'MethodNotAllowed' | + 'NotAcceptable' | + 'ProxyAuthenticationRequired' | + 'RequestTimeout' | + 'Conflict' | + 'Gone' | + 'LengthRequired' | + 'PreconditionFailed' | + 'PayloadTooLarge' | + 'URITooLong' | + 'UnsupportedMediaType' | + 'RangeNotSatisfiable' | + 'ExpectationFailed' | + 'ImATeapot' | + 'MisdirectedRequest' | + 'UnprocessableEntity' | + 'Locked' | + 'FailedDependency' | + 'UnorderedCollection' | + 'UpgradeRequired' | + 'PreconditionRequired' | + 'TooManyRequests' | + 'RequestHeaderFieldsTooLarge' | + 'UnavailableForLegalReasons' | + 'InternalServerError' | + 'NotImplemented' | + 'BadGateway' | + 'ServiceUnavailable' | + 'GatewayTimeout' | + 'HTTPVersionNotSupported' | + 'VariantAlsoNegotiates' | + 'InsufficientStorage' | + 'LoopDetected' | + 'BandwidthLimitExceeded' | + 'NotExtended' | + 'NetworkAuthenticationRequire' | + '400' | + '401' | + '402' | + '403' | + '404' | + '405' | + '406' | + '407' | + '408' | + '409' | + '410' | + '411' | + '412' | + '413' | + '414' | + '415' | + '416' | + '417' | + '418' | + '421' | + '422' | + '423' | + '424' | + '425' | + '426' | + '428' | + '429' | + '431' | + '451' | + '500' | + '501' | + '502' | + '503' | + '504' | + '505' | + '506' | + '507' | + '508' | + '509' | + '510' | + '511', HttpErrorConstructor>; } diff --git a/types/http-errors/tsconfig.json b/types/http-errors/tsconfig.json index 7b2948b792..6067e7af56 100644 --- a/types/http-errors/tsconfig.json +++ b/types/http-errors/tsconfig.json @@ -6,7 +6,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "baseUrl": "../", "typeRoots": [ "../" @@ -19,4 +19,4 @@ "index.d.ts", "http-errors-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/http-errors/tslint.json b/types/http-errors/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/http-errors/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From 7cab25035db225bc580e94f8e3d58491f5ba3a8e Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 19:04:45 +0200 Subject: [PATCH 046/118] [compressible] add typings --- types/compressible/compressible-tests.ts | 5 +++++ types/compressible/index.d.ts | 8 ++++++++ types/compressible/tsconfig.json | 22 ++++++++++++++++++++++ types/compressible/tslint.json | 1 + 4 files changed, 36 insertions(+) create mode 100644 types/compressible/compressible-tests.ts create mode 100644 types/compressible/index.d.ts create mode 100644 types/compressible/tsconfig.json create mode 100644 types/compressible/tslint.json diff --git a/types/compressible/compressible-tests.ts b/types/compressible/compressible-tests.ts new file mode 100644 index 0000000000..d793f8d877 --- /dev/null +++ b/types/compressible/compressible-tests.ts @@ -0,0 +1,5 @@ +import compressible = require('compressible'); + +// $ExpectType boolean | undefined +compressible('text/html'); +compressible('image/png'); diff --git a/types/compressible/index.d.ts b/types/compressible/index.d.ts new file mode 100644 index 0000000000..fe0d27ae23 --- /dev/null +++ b/types/compressible/index.d.ts @@ -0,0 +1,8 @@ +// Type definitions for compressible 2.0 +// Project: https://github.com/jshttp/compressible#readme +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export = compressible; + +declare function compressible(type: string): boolean | undefined; diff --git a/types/compressible/tsconfig.json b/types/compressible/tsconfig.json new file mode 100644 index 0000000000..fb011bf968 --- /dev/null +++ b/types/compressible/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", + "compressible-tests.ts" + ] +} diff --git a/types/compressible/tslint.json b/types/compressible/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/compressible/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From 53266428eb0fc507f29267db33c1a14fa019f33d Mon Sep 17 00:00:00 2001 From: Marco Buono Date: Tue, 15 Aug 2017 14:53:42 -0300 Subject: [PATCH 047/118] react-redux: Add test for optional dispatch prop --- types/react-redux/react-redux-tests.tsx | 35 +++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/types/react-redux/react-redux-tests.tsx b/types/react-redux/react-redux-tests.tsx index 1bf9dae4f2..1fd52f9732 100644 --- a/types/react-redux/react-redux-tests.tsx +++ b/types/react-redux/react-redux-tests.tsx @@ -514,3 +514,38 @@ namespace RemoveInjectedAndPassOnRest { } + +namespace TestControlledComponentWithoutDispatchProp { + + interface MyState { + count: number; + } + + interface MyProps { + label: string; + // `dispatch` is optional, but setting it to anything + // other than Dispatch will cause an error + // + // dispatch: Dispatch; // OK + // dispatch: number; // ERROR + } + + function mapStateToProps(state: MyState) { + return { + label: `The count is ${state.count}`, + } + } + + class MyComponent extends React.Component { + render() { + return {this.props.label}; + } + } + + const MyFuncComponent = (props: MyProps) => ( + {props.label} + ); + + const MyControlledComponent = connect(mapStateToProps)(MyComponent); + const MyControlledFuncComponent = connect(mapStateToProps)(MyFuncComponent); +} From 58ad862cee25112615a68894dcc75a5a372c2f5c Mon Sep 17 00:00:00 2001 From: Mattias Holmlund Date: Tue, 15 Aug 2017 20:00:11 +0200 Subject: [PATCH 048/118] node: Add scopeid for IPv6 interfaces The scopeid field only exists if the interface is of family IPv6 https://nodejs.org/dist/latest-v6.x/docs/api/os.html#os_os_networkinterfaces --- types/node/index.d.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/types/node/index.d.ts b/types/node/index.d.ts index 52186217bd..99ca87cd46 100644 --- a/types/node/index.d.ts +++ b/types/node/index.d.ts @@ -1379,14 +1379,25 @@ declare module "os" { }; } - export interface NetworkInterfaceInfo { + export interface NetworkInterfaceInfoIPv4 { address: string; netmask: string; - family: string; + family: "IPv4"; mac: string; internal: boolean; } + export interface NetworkInterfaceInfoIPv6 { + address: string; + netmask: string; + family: "IPv6"; + mac: string; + internal: boolean; + scopeid: number; + } + + export type NetworkInterfaceInfo = NetworkInterfaceInfoIPv4 | NetworkInterfaceInfoIPv6; + export function hostname(): string; export function loadavg(): number[]; export function uptime(): number; From 894adbc6fdccd58313123a48dcd889be54035b1a Mon Sep 17 00:00:00 2001 From: Daniel Rosenwasser Date: Tue, 15 Aug 2017 11:29:16 -0700 Subject: [PATCH 049/118] Correct test to use require imports instead of namespace imports. --- types/client-sessions/client-sessions-tests.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/types/client-sessions/client-sessions-tests.ts b/types/client-sessions/client-sessions-tests.ts index f53407a69c..7498aac12d 100644 --- a/types/client-sessions/client-sessions-tests.ts +++ b/types/client-sessions/client-sessions-tests.ts @@ -1,5 +1,5 @@ -import * as express from "express"; -import * as session from "client-sessions"; +import express = require("express"); +import session = require("client-sessions"); const secret = "yolo"; const app = express(); From 6ad38fb8c7d38561eb6df11fabfaed4708283b8d Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 21:14:12 +0200 Subject: [PATCH 050/118] [http-errors] update tests --- types/http-errors/http-errors-tests.ts | 115 +++++++++++++++++-------- types/http-errors/index.d.ts | 6 +- 2 files changed, 82 insertions(+), 39 deletions(-) diff --git a/types/http-errors/http-errors-tests.ts b/types/http-errors/http-errors-tests.ts index 080ac3b61e..cfe399de9e 100644 --- a/types/http-errors/http-errors-tests.ts +++ b/types/http-errors/http-errors-tests.ts @@ -1,17 +1,18 @@ -import * as createError from 'http-errors'; +import * as create from 'http-errors'; import * as express from 'express'; +import * as util from 'util'; const app = express(); app.use((req, res, next) => { - if (!req) return next(createError('Please login to view this page.', 401)); + if (!req) return next(create('Please login to view this page.', 401)); next(); }); -/* Examples taken from https://github.com/jshttp/http-errors/blob/1.3.1/test/test.js */ +/* Examples taken from https://github.com/jshttp/http-errors/blob/1.6.2/test/test.js */ -// createError(status) -let err = createError(404); +// create(status) +let err = create(404); err; // $ExpectType HttpError err.name; // $ExpectType string err.message; // $ExpectType string @@ -20,55 +21,95 @@ err.statusCode; // $ExpectType number err.expose; // $ExpectType boolean err.headers; // $ExpectType { [key: string]: string; } | undefined -// createError(status, msg) -err = createError(404, 'LOL'); +// create(status, msg) +err = create(404, 'LOL'); -// createError(status, props) -err = createError(404, {id: 1}); +// create(status, props) +err = create(404, {id: 1}); -// createError(props) -err = createError({id: 1}); +// create(status, props) with status prop +err = create(404, { + id: 1, + status: 500 +}); + +// create(status, props) with statusCode prop +err = create(404, { + id: 1, + statusCode: 500 +}); + +// create(props) +err = create({id: 1}); // $ExpectType any err.id; -// createError(msg, status) -err = createError('LOL', 404); +// create(msg, status) +err = create('LOL', 404); -// createError(msg) -err = createError('LOL'); +// create(msg) +err = create('LOL'); -// createError(msg, props) -err = createError('LOL', {id: 1}); +// create(msg, props) +err = create('LOL', {id: 1}); -// createError(err) -err = createError(new Error('LOL')); +// create(err) +err = create(new Error('LOL')); -// createError(err, props) -err = createError(new Error('LOL'), {id: 1}); +// create(err, props) +err = create(new Error('LOL'), {id: 1}); -// createError(status, err, props) -err = createError(404, new Error('LOL'), {id: 1}); +// create(status, err, props) +err = create(404, new Error('LOL'), {id: 1}); -// createError(status, msg, props) -err = createError(404, 'LOL', {id: 1}); +// create(status, msg, props) +err = create(404, 'LOL', {id: 1}); -// createError(status, msg, { expose: false }) -err = createError(404, 'LOL', {expose: false}); +// create(status, msg, { expose: false }) +err = create(404, 'LOL', {expose: false}); -err = new createError.NotFound(); -err = new createError.InternalServerError(); -err = new createError[404](); +// new create.HttpError() should throw: cannot construct abstract class +// $ExpectType never +new create.HttpError(); -createError['404'](); // $ExpectError -new createError(); // $ExpectError +err = new create.NotFound(); +err = new create.InternalServerError(); +err = new create[404](); +err = new create['404'](); + +create['404'](); // $ExpectError +new create(); // $ExpectError // Error messages can have custom messages -err = new createError.NotFound('This might be a problem'); -err = new createError[404]('This might be a problem'); +err = new create.NotFound('This might be a problem'); +err = new create[404]('This might be a problem'); // 1.5.0 supports 421 - Misdirected Request -err = new createError.MisdirectedRequest(); -err = new createError.MisdirectedRequest('Where should this go?'); +err = new create.MisdirectedRequest(); +err = new create.MisdirectedRequest('Where should this go?'); // $ExpectType boolean -new Error() instanceof createError.HttpError; +new Error() instanceof create.HttpError; + +// should support err instanceof Error +create(404) instanceof Error; +(new create['404']()) instanceof Error; +(new create['500']()) instanceof Error; + +// should support err instanceof exposed constructor +create(404) instanceof create.NotFound; +create(500) instanceof create.InternalServerError; +(new create['404']()) instanceof create.NotFound; +(new create['500']()) instanceof create.InternalServerError; +(new create.NotFound()) instanceof create.NotFound; +(new create.InternalServerError()) instanceof create.InternalServerError; + +// should support err instanceof HttpError +create(404) instanceof create.HttpError; +(new create['404']()) instanceof create.HttpError; +(new create['500']()) instanceof create.HttpError; + +// should support util.isError() +util.isError(create(404)); +util.isError(new create['404']()); +util.isError(new create['500']()); diff --git a/types/http-errors/index.d.ts b/types/http-errors/index.d.ts index 96688f4f10..5db6e497e7 100644 --- a/types/http-errors/index.d.ts +++ b/types/http-errors/index.d.ts @@ -24,8 +24,10 @@ declare namespace createHttpError { type CreateHttpError = (...args: Array) => HttpError; - type NamedConstructors = { [code: string]: HttpErrorConstructor } & Record<'HttpError' | - 'BadRequest' | + type NamedConstructors = { + [code: string]: HttpErrorConstructor; + HttpError: new (msg?: string) => never; + } & Record<'BadRequest' | 'Unauthorized' | 'PaymentRequired' | 'Forbidden' | From 8db0c98591c261fc08495e4dfbb2f7e5e9b1e926 Mon Sep 17 00:00:00 2001 From: Dimitri Benin Date: Tue, 15 Aug 2017 21:23:20 +0200 Subject: [PATCH 051/118] [fresh] add typings (#18990) --- types/fresh/fresh-tests.ts | 28 ++++++++++++++++++++++++++++ types/fresh/index.d.ts | 14 ++++++++++++++ types/fresh/tsconfig.json | 22 ++++++++++++++++++++++ types/fresh/tslint.json | 1 + 4 files changed, 65 insertions(+) create mode 100644 types/fresh/fresh-tests.ts create mode 100644 types/fresh/index.d.ts create mode 100644 types/fresh/tsconfig.json create mode 100644 types/fresh/tslint.json diff --git a/types/fresh/fresh-tests.ts b/types/fresh/fresh-tests.ts new file mode 100644 index 0000000000..bc62065b07 --- /dev/null +++ b/types/fresh/fresh-tests.ts @@ -0,0 +1,28 @@ +/// +import fresh = require('fresh'); +import * as http from 'http'; + +let reqHeaders = { 'if-none-match': '"foo"' }; +let resHeaders = { etag: '"bar"' }; +// $ExpectType boolean +fresh(reqHeaders, resHeaders); + +const server = http.createServer((req, res) => { + if (isFresh(req, res)) { + res.statusCode = 304; + res.end(); + return; + } + + res.statusCode = 200; + res.end('hello, world!'); +}); + +function isFresh(req: http.IncomingMessage, res: http.ServerResponse) { + return fresh(req.headers, { + etag: res.getHeader('ETag'), + 'last-modified': res.getHeader('Last-Modified') + }); +} + +server.listen(3000); diff --git a/types/fresh/index.d.ts b/types/fresh/index.d.ts new file mode 100644 index 0000000000..e50e715388 --- /dev/null +++ b/types/fresh/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for fresh 0.5 +// Project: https://github.com/jshttp/fresh#readme +// Definitions by: BendingBender +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export = fresh; + +declare function fresh(reqHeaders: fresh.Headers, resHeaders: fresh.Headers): boolean; + +declare namespace fresh { + interface Headers { + [header: string]: string | string[] | number | undefined; + } +} diff --git a/types/fresh/tsconfig.json b/types/fresh/tsconfig.json new file mode 100644 index 0000000000..94d14b21a5 --- /dev/null +++ b/types/fresh/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", + "fresh-tests.ts" + ] +} diff --git a/types/fresh/tslint.json b/types/fresh/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/fresh/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } From baacececc1cdd340e0a8585effaec3f0c060d224 Mon Sep 17 00:00:00 2001 From: Martin Donkersloot Date: Tue, 15 Aug 2017 21:36:07 +0200 Subject: [PATCH 052/118] TelegramBot now properly extends EventEmitter. --- types/node-telegram-bot-api/index.d.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/types/node-telegram-bot-api/index.d.ts b/types/node-telegram-bot-api/index.d.ts index 1a7d15ec34..a727e6f3c4 100644 --- a/types/node-telegram-bot-api/index.d.ts +++ b/types/node-telegram-bot-api/index.d.ts @@ -3,8 +3,11 @@ // Definitions by: Alex Muench // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.1 +/// -declare class TelegramBot { +import { EventEmitter } from 'events'; + +declare class TelegramBot extends EventEmitter { constructor(token: string, opts?: any); startPolling(options?: any): Promise; From 54cf4c673bf6db59b41321867da76f93321b450b Mon Sep 17 00:00:00 2001 From: "Bernard, Nicholas (ETW - FLEX)" Date: Tue, 15 Aug 2017 12:37:17 -0700 Subject: [PATCH 053/118] Add getLineTokens method --- types/codemirror/index.d.ts | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/types/codemirror/index.d.ts b/types/codemirror/index.d.ts index 960f293656..f6c40a99c2 100644 --- a/types/codemirror/index.d.ts +++ b/types/codemirror/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for CodeMirror // Project: https://github.com/marijnh/CodeMirror // Definitions by: mihailik +// nrbernard // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped export = CodeMirror; @@ -104,6 +105,19 @@ declare namespace CodeMirror { type DOMEvent = 'mousedown' | 'dblclick' | 'touchstart' | 'contextmenu' | 'keydown' | 'keypress' | 'keyup' | 'cut' | 'copy' | 'paste' | 'dragstart' | 'dragenter' | 'dragover' | 'dragleave' | 'drop'; + interface Token { + /** The character(on the given line) at which the token starts. */ + start: number; + /** The character at which the token ends. */ + end: number; + /** The token's string. */ + string: string; + /** The token type the mode assigned to the token, such as "keyword" or "comment" (may also be null). */ + type: string | null; + /** The mode's state at the end of this token. */ + state: any; + } + interface Editor { /** Tells you whether the editor currently has focus. */ @@ -289,20 +303,11 @@ declare namespace CodeMirror { you should probably follow up by calling this method to ensure CodeMirror is still looking as intended. */ refresh(): void; - /** Retrieves information about the token the current mode found before the given position (a {line, ch} object). */ - getTokenAt(pos: CodeMirror.Position): { - /** The character(on the given line) at which the token starts. */ - start: number; - /** The character at which the token ends. */ - end: number; - /** The token's string. */ - string: string; - /** The token type the mode assigned to the token, such as "keyword" or "comment" (may also be null). */ - type: string | null; - /** The mode's state at the end of this token. */ - state: any; - }; + getTokenAt(pos: CodeMirror.Position): Token; + + /** This is similar to getTokenAt, but collects all tokens for a given line into an array. */ + getLineTokens(line: number, precise?: boolean): Token[]; /** Returns the mode's parser state, if any, at the end of the given line number. If no line number is given, the state at the end of the document is returned. @@ -410,7 +415,7 @@ declare namespace CodeMirror { /** Fires when one of the DOM events fires. */ on(eventName: DOMEvent, handler: (instance: CodeMirror.Editor, event: Event) => void ): void; off(eventName: DOMEvent, handler: (instance: CodeMirror.Editor, event: Event) => void ): void; - + /** Expose the state object, so that the Editor.state.completionActive property is reachable*/ state: any; } From d38522bd7241b16c24f60a593357cc8bf1e477a5 Mon Sep 17 00:00:00 2001 From: Danny Cochran Date: Tue, 15 Aug 2017 12:47:50 -0700 Subject: [PATCH 054/118] make default arguments {} instead of any --- types/react-redux/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/react-redux/index.d.ts b/types/react-redux/index.d.ts index 3dce0d9bdf..1cf2169388 100644 --- a/types/react-redux/index.d.ts +++ b/types/react-redux/index.d.ts @@ -164,7 +164,7 @@ interface MergeProps { (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps): TMergedProps; } -interface Options extends ConnectOptions { +interface Options extends ConnectOptions { /** * If true, implements shouldComponentUpdate and shallowly compares the result of mergeProps, * preventing unnecessary updates, assuming that the component is a “pure” component From 5002dcc84322c89310c6c8b9cdac9c8e53f4410e Mon Sep 17 00:00:00 2001 From: Andy Date: Tue, 15 Aug 2017 13:42:13 -0700 Subject: [PATCH 055/118] Add CODEOWNERS file (#18991) --- .github/CODE_OWNERS | 2759 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2759 insertions(+) create mode 100644 .github/CODE_OWNERS 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 From 90629e8c50b79bcb5287fe056fb29e73a1bf416a Mon Sep 17 00:00:00 2001 From: Cameron Little Date: Tue, 15 Aug 2017 13:53:31 -0700 Subject: [PATCH 056/118] storybook__react: Remove dependency on @types/node Including `@types/node` is problematic because the storybook react api runs in a browser context. `@types/node` defines several globals that are incompatible with common browser contexts (such as `require` and `global` --- types/storybook__react/index.d.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/types/storybook__react/index.d.ts b/types/storybook__react/index.d.ts index 7a52903bc7..d9b5f9dbce 100644 --- a/types/storybook__react/index.d.ts +++ b/types/storybook__react/index.d.ts @@ -4,11 +4,9 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -/// - import * as React from 'react'; -export type Renderable = React.StatelessComponent | React.ComponentClass | JSX.Element; +export type Renderable = React.ComponentType | JSX.Element; export type RenderFunction = () => Renderable; export type StoryDecorator = (story: RenderFunction, context: { kind: string, story: string }) => Renderable | null; @@ -22,8 +20,8 @@ export interface Story { export function addDecorator(decorator: StoryDecorator): void; export function configure(fn: () => void, module: any): void; export function setAddon(addon: object): void; -export function storiesOf(name: string, module: NodeModule): Story; -export function storiesOf(name: string, module: NodeModule): Story & T; +export function storiesOf(name: string, module: any): Story; +export function storiesOf(name: string, module: any): Story & T; export interface StoryObject { name: string; From fdeb1336e3d7a96fccfe6343bb8fdd2184db47c0 Mon Sep 17 00:00:00 2001 From: IAMtheIAM Date: Tue, 15 Aug 2017 14:18:16 -0700 Subject: [PATCH 057/118] fix typo --- types/webpack/webpack-tests.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/webpack/webpack-tests.ts b/types/webpack/webpack-tests.ts index 7db91f59d9..a95cb4ef86 100644 --- a/types/webpack/webpack-tests.ts +++ b/types/webpack/webpack-tests.ts @@ -611,7 +611,7 @@ function loader(this: webpack.loader.LoaderContext, source: string, sourcemap: s this.resolve('context', 'request', ( err: Error, result: string) => {}); - this.emitError('wraning'); + this.emitError('warning'); this.callback(null, source); } From d65fe3323d4ae296df1ac8204b4a40cba6ea003f Mon Sep 17 00:00:00 2001 From: "John M. Wright" Date: Tue, 15 Aug 2017 16:46:52 -0500 Subject: [PATCH 058/118] allowing ComponentRestrictions as string|string[] Google API allows the Autocomplete ComponentRestrictions to be either a single string (`{'country': 'us'}`) or a string array (`{'country': ['us','gb','fr']}`) Reference: Single value: https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-hotelsearch Multiple values: https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-multiple-countries ( --- types/googlemaps/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/googlemaps/index.d.ts b/types/googlemaps/index.d.ts index 8fc613a426..fc39130ed1 100644 --- a/types/googlemaps/index.d.ts +++ b/types/googlemaps/index.d.ts @@ -2518,7 +2518,7 @@ declare namespace google.maps { } export interface ComponentRestrictions { - country: string; + country: string|string[]; } export interface PlaceAspectRating { From 1f1de1f591301c4d39274c1e3aa8abf6a594e78e Mon Sep 17 00:00:00 2001 From: amikhalev Date: Tue, 15 Aug 2017 16:04:30 -0600 Subject: [PATCH 059/118] Updated reactstrap DropdownMenu className type --- types/reactstrap/lib/DropdownMenu.d.ts | 2 +- types/reactstrap/reactstrap-tests.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/types/reactstrap/lib/DropdownMenu.d.ts b/types/reactstrap/lib/DropdownMenu.d.ts index 05e93babef..7fae41b04b 100644 --- a/types/reactstrap/lib/DropdownMenu.d.ts +++ b/types/reactstrap/lib/DropdownMenu.d.ts @@ -3,7 +3,7 @@ import { CSSModule } from '../index'; interface Props { tag?: React.ReactType; right?: boolean; - className?: boolean; + className?: string; cssModule?: CSSModule; } diff --git a/types/reactstrap/reactstrap-tests.tsx b/types/reactstrap/reactstrap-tests.tsx index 3e310c3f5e..9605fe3174 100644 --- a/types/reactstrap/reactstrap-tests.tsx +++ b/types/reactstrap/reactstrap-tests.tsx @@ -3265,7 +3265,7 @@ function Example105() { Toggle - +