UNPKG

autumn-js

Version:
603 lines (600 loc) 22.9 kB
import { Middleware } from 'better-auth'; import { z } from 'zod/v4'; import { AutumnOptions } from './utils/betterAuth/types.js'; import 'better-auth/plugins'; import './utils/AuthFunction.js'; import 'better-auth/api'; declare const autumn: (options?: AutumnOptions) => { id: "autumn"; endpoints: { createCustomer: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { errorOnNotFound?: boolean | undefined; expand?: ("invoices" | "rewards" | "trials_used" | "entities" | "referrals" | "payment_method")[] | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ errorOnNotFound: z.ZodOptional<z.ZodBoolean>; expand: z.ZodOptional<z.ZodArray<z.ZodEnum<{ invoices: "invoices"; rewards: "rewards"; trials_used: "trials_used"; entities: "entities"; referrals: "referrals"; payment_method: "payment_method"; }>>>; }, z.core.$strip>; metadata: { isAction: boolean; }; }; path: "/autumn/customers"; }; listProducts: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0?: ({ body?: undefined; } & { method?: "GET" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }) | undefined): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "GET"; use: never[]; } & { use: any[]; }; path: "/autumn/products"; }; checkout: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { productId?: string | undefined; productIds?: string[] | undefined; entityId?: string | undefined; entityData?: any; options?: { featureId: string; quantity: number; }[] | undefined; successUrl?: string | undefined; openInNewTab?: boolean | undefined; dialog?: any; forceCheckout?: boolean | undefined; checkoutSessionParams?: Record<string, any> | undefined; reward?: string | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ productId: z.ZodOptional<z.ZodString>; productIds: z.ZodOptional<z.ZodArray<z.ZodString>>; entityId: z.ZodOptional<z.ZodString>; entityData: z.ZodOptional<z.ZodAny>; options: z.ZodOptional<z.ZodArray<z.ZodObject<{ featureId: z.ZodString; quantity: z.ZodNumber; }, z.core.$strip>>>; successUrl: z.ZodOptional<z.ZodString>; openInNewTab: z.ZodOptional<z.ZodBoolean>; dialog: z.ZodOptional<z.ZodAny>; forceCheckout: z.ZodOptional<z.ZodBoolean>; checkoutSessionParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>; reward: z.ZodOptional<z.ZodString>; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/checkout"; }; attach: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { productId?: string | undefined; entityId?: string | undefined; options?: { featureId: string; quantity: number; }[] | undefined; productIds?: string[] | undefined; freeTrial?: boolean | undefined; successUrl?: string | undefined; metadata?: Record<string, string> | undefined; forceCheckout?: boolean | undefined; dialog?: any; entityData?: any; openInNewTab?: boolean | undefined; reward?: string | undefined; checkoutSessionParams?: Record<string, any> | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ productId: z.ZodOptional<z.ZodString>; entityId: z.ZodOptional<z.ZodString>; options: z.ZodOptional<z.ZodArray<z.ZodObject<{ featureId: z.ZodString; quantity: z.ZodNumber; }, z.core.$strip>>>; productIds: z.ZodOptional<z.ZodArray<z.ZodString>>; freeTrial: z.ZodOptional<z.ZodBoolean>; successUrl: z.ZodOptional<z.ZodString>; metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; forceCheckout: z.ZodOptional<z.ZodBoolean>; dialog: z.ZodOptional<z.ZodAny>; entityData: z.ZodOptional<z.ZodAny>; openInNewTab: z.ZodOptional<z.ZodBoolean>; reward: z.ZodOptional<z.ZodString>; checkoutSessionParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/attach"; }; check: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { featureId?: string | undefined; productId?: string | undefined; entityId?: string | undefined; requiredBalance?: number | undefined; sendEvent?: boolean | undefined; withPreview?: boolean | undefined; dialog?: any; entityData?: any; properties?: Record<string, any> | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ featureId: z.ZodOptional<z.ZodString>; productId: z.ZodOptional<z.ZodString>; entityId: z.ZodOptional<z.ZodString>; requiredBalance: z.ZodOptional<z.ZodNumber>; sendEvent: z.ZodOptional<z.ZodBoolean>; withPreview: z.ZodOptional<z.ZodBoolean>; dialog: z.ZodOptional<z.ZodAny>; entityData: z.ZodOptional<z.ZodAny>; properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/check"; }; track: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { featureId?: string | undefined; eventName?: string | undefined; entityId?: string | undefined; value?: number | undefined; idempotencyKey?: string | undefined; entityData?: any; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ featureId: z.ZodOptional<z.ZodString>; eventName: z.ZodOptional<z.ZodString>; entityId: z.ZodOptional<z.ZodString>; value: z.ZodOptional<z.ZodNumber>; idempotencyKey: z.ZodOptional<z.ZodString>; entityData: z.ZodOptional<z.ZodAny>; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/track"; }; cancel: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { productId: string; entityId?: string | undefined; cancelImmediately?: boolean | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ productId: z.ZodString; entityId: z.ZodOptional<z.ZodString>; cancelImmediately: z.ZodOptional<z.ZodBoolean>; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/cancel"; }; createReferralCode: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { programId: string; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ programId: z.ZodString; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/referrals/code"; }; redeemReferralCode: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { code: string; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ code: z.ZodString; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/referrals/redeem"; }; billingPortal: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { returnUrl?: string | undefined; openInNewTab?: boolean | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ returnUrl: z.ZodOptional<z.ZodString>; openInNewTab: z.ZodOptional<z.ZodBoolean>; }, z.core.$strip>; metadata: { isAction: boolean; }; } & { use: any[]; }; path: "/autumn/billing_portal"; }; createEntity: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body: { id: string; featureId: string; name?: string | undefined; }; } & { method?: "POST" | undefined; } & { query?: Record<string, any> | undefined; } & { params?: Record<string, any>; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "POST"; use: never[]; body: z.ZodObject<{ id: z.ZodString; name: z.ZodOptional<z.ZodString>; featureId: z.ZodString; }, z.core.$strip>; } & { use: any[]; }; path: "/autumn/entities"; }; getEntity: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body?: undefined; } & { method?: "GET" | undefined; } & { query?: Record<string, any> | undefined; } & { params: { entityId: string; }; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "GET"; use: never[]; } & { use: any[]; }; path: "/autumn/entities/:entityId"; }; deleteEntity: { <AsResponse extends boolean = false, ReturnHeaders extends boolean = false>(inputCtx_0: { body?: undefined; } & { method?: "DELETE" | undefined; } & { query?: Record<string, any> | undefined; } & { params: { entityId: string; }; } & { request?: Request; } & { headers?: HeadersInit; } & { asResponse?: boolean; returnHeaders?: boolean; use?: Middleware[]; path?: string; } & { asResponse?: AsResponse | undefined; returnHeaders?: ReturnHeaders | undefined; }): Promise<[AsResponse] extends [true] ? Response : [ReturnHeaders] extends [true] ? { headers: Headers; response: any; } : any>; options: { method: "DELETE"; use: never[]; } & { use: any[]; }; path: "/autumn/entities/:entityId"; }; }; }; export { autumn };