UNPKG

fastify-stripe

Version:

Stripe Node.js Library instance initialization and encapsulation in fastify framework

46 lines (37 loc) 1.17 kB
import { config } from 'dotenv' import Fastify from 'fastify' import Stripe from 'stripe' import { expectAssignable, expectType } from 'tsd' import fastifyStripe, { FastifyStripeNamedInstance } from '../../plugin' const { parsed: env } = config() if (!env) { throw new Error('No environment variables defined') } const app = Fastify() app.register(fastifyStripe, { apiKey: env.STRIPE_TEST_API_KEY, apiVersion: '2020-08-27' }) app.ready(() => { expectAssignable<Stripe>(app.stripe) expectType<Stripe.CustomersResource>(app.stripe.customers) expectType<Promise<Stripe.Response<Stripe.Customer>>>( app.stripe.customers.create({ email: 'demo@demo.tld' }) ) app.close() }) const appOne = Fastify() appOne.register(fastifyStripe, { apiKey: env.STRIPE_TEST_API_KEY, apiVersion: '2020-08-27', name: 'one' }) appOne.ready(() => { expectAssignable<FastifyStripeNamedInstance>(appOne.stripe) expectType<Stripe>(appOne.stripe.one) expectType<Stripe.CustomersResource>(appOne.stripe.one.customers) expectType<Promise<Stripe.Response<Stripe.Customer>>>( appOne.stripe.one.customers.create({ email: 'demo@demo.tld' }) ) appOne.close() })