diff --git a/types/stripe/index.d.ts b/types/stripe/index.d.ts index 8f545301d5..57de752245 100644 --- a/types/stripe/index.d.ts +++ b/types/stripe/index.d.ts @@ -64,6 +64,16 @@ interface ResponseEvent { request_end_time: number; } +interface StripeConfig { + apiVersion?: string | null; + maxNetworkRetries?: number; + httpAgent?: Agent | null; + timeout?: number; + host?: string; + port?: number; + telemetry?: boolean; +} + declare class Stripe { DEFAULT_HOST: string; DEFAULT_PORT: string; @@ -85,6 +95,7 @@ declare class Stripe { StripeResource: typeof Stripe.StripeResource; constructor(apiKey: string, version?: string); + constructor(apiKey: string, config?: StripeConfig); accounts: Stripe.resources.Accounts; balance: Stripe.resources.Balance; diff --git a/types/stripe/stripe-tests.ts b/types/stripe/stripe-tests.ts index 13fab9e3db..a23273fd94 100644 --- a/types/stripe/stripe-tests.ts +++ b/types/stripe/stripe-tests.ts @@ -1,11 +1,24 @@ import Stripe = require('stripe'); import { customers } from 'stripe'; -const stripe = new Stripe('sk_test_BF573NobVn98OiIsPAv7A04K'); +let stripe = new Stripe('sk_test_BF573NobVn98OiIsPAv7A04K'); +stripe = new Stripe('sk_test_BF573NobVn98OiIsPAv7A04K', 'latest'); import { Agent as HttpAgent } from 'http'; import { Agent as HttpsAgent } from 'https'; +stripe = new Stripe('sk_test_BF573NobVn98OiIsPAv7A04K', { + apiVersion: 'latest', + maxNetworkRetries: 1, + httpAgent: new HttpAgent(), + timeout: 1000, + host: 'api.example.com', + port: 123, + telemetry: true +}); + +stripe = new Stripe('sk_test_BF573NobVn98OiIsPAv7A04K', {}); + stripe.setHttpAgent(new HttpAgent()); stripe.setHttpAgent(new HttpsAgent());