vibezcheck 0.4.1 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +273 -203
  2. package/dist/ai-sdk/index.d.mts +6 -4
  3. package/dist/ai-sdk/index.d.ts +6 -4
  4. package/dist/ai-sdk/index.js +184 -22
  5. package/dist/ai-sdk/index.js.map +1 -1
  6. package/dist/ai-sdk/index.mjs +184 -22
  7. package/dist/ai-sdk/index.mjs.map +1 -1
  8. package/dist/cli/index.js +2 -2
  9. package/dist/cli/index.js.map +1 -1
  10. package/dist/cli/index.mjs +2 -2
  11. package/dist/cli/index.mjs.map +1 -1
  12. package/dist/{client-kJN_Znan.d.ts → client-w_hWhQ6g.d.mts} +4 -2
  13. package/dist/{client--iq93FQg.d.mts → client-ynfWcHX6.d.ts} +4 -2
  14. package/dist/customers/index.d.mts +30 -4
  15. package/dist/customers/index.d.ts +30 -4
  16. package/dist/customers/index.js +108 -8
  17. package/dist/customers/index.js.map +1 -1
  18. package/dist/customers/index.mjs +106 -7
  19. package/dist/customers/index.mjs.map +1 -1
  20. package/dist/index.d.mts +4 -4
  21. package/dist/index.d.ts +4 -4
  22. package/dist/index.js +238 -28
  23. package/dist/index.js.map +1 -1
  24. package/dist/index.mjs +237 -28
  25. package/dist/index.mjs.map +1 -1
  26. package/dist/meter/index.d.mts +2 -2
  27. package/dist/meter/index.d.ts +2 -2
  28. package/dist/meter/index.js +95 -16
  29. package/dist/meter/index.js.map +1 -1
  30. package/dist/meter/index.mjs +95 -16
  31. package/dist/meter/index.mjs.map +1 -1
  32. package/dist/pricing/index.d.mts +1 -1
  33. package/dist/pricing/index.d.ts +1 -1
  34. package/dist/react/index.d.mts +1 -1
  35. package/dist/react/index.d.ts +1 -1
  36. package/dist/{types-Zbzxg-Ka.d.mts → types-Mozk4-Mr.d.mts} +70 -12
  37. package/dist/{types-Zbzxg-Ka.d.ts → types-Mozk4-Mr.d.ts} +70 -12
  38. package/package.json +161 -153
@@ -50,6 +50,49 @@ interface InferenceCost {
50
50
  /** Currency (defaults to 'USD') */
51
51
  currency: string;
52
52
  }
53
+ /**
54
+ * Structured Customer Information with rich metadata, multi-tenancy & billing attributes
55
+ */
56
+ interface CustomerInfo {
57
+ /** Internal user ID or Stripe customer ID ('cus_xxx', 'usr_123') */
58
+ id?: string;
59
+ /** Explicit user ID */
60
+ userId?: string;
61
+ /** Customer email */
62
+ email?: string;
63
+ /** Customer full name or business display name */
64
+ name?: string;
65
+ /** Phone number */
66
+ phone?: string;
67
+ /** Multi-tenant Organization or Company ID */
68
+ orgId?: string;
69
+ /** Organization / Company name */
70
+ orgName?: string;
71
+ /** Multi-tenant Organization ID alias */
72
+ organizationId?: string;
73
+ /** Team / Workspace identifier */
74
+ teamId?: string;
75
+ /** Workspace identifier alias */
76
+ workspaceId?: string;
77
+ /** User Role within organization (e.g. 'admin', 'member', 'owner') */
78
+ role?: string;
79
+ /** Subscription Plan name (e.g. 'free', 'starter', 'pro', 'enterprise') */
80
+ plan?: string;
81
+ /** Billing Tier (e.g. 'tier_1', 'growth', 'unlimited') */
82
+ tier?: string;
83
+ /** Billing currency (defaults to 'usd') */
84
+ currency?: string;
85
+ /** Current prepaid credit balance in USD */
86
+ balanceUSD?: number;
87
+ /** Flexible custom metadata (key-value attributes) */
88
+ metadata?: Record<string, string | number | boolean | null>;
89
+ /** Arbitrary extra developer fields */
90
+ [key: string]: any;
91
+ }
92
+ /**
93
+ * Customer identification parameter: can be a string ('cus_xxx' or 'user@example.com') or a rich structured object
94
+ */
95
+ type CustomerParam = string | CustomerInfo;
53
96
  /**
54
97
  * Full usage event emitted upon completion of an LLM call or stream
55
98
  */
@@ -70,19 +113,11 @@ interface UsageEvent {
70
113
  customerId?: string;
71
114
  /** Optional customer email */
72
115
  customerEmail?: string;
116
+ /** Full customer profile snapshot if provided */
117
+ customer?: CustomerInfo;
73
118
  /** Custom developer metadata (e.g. userId, orgId, feature, session) */
74
119
  metadata?: Record<string, string | number | boolean>;
75
120
  }
76
- /**
77
- * Customer identification parameter: can be a string ('cus_xxx' or 'user@example.com') or an object
78
- */
79
- type CustomerParam = string | {
80
- id?: string;
81
- userId?: string;
82
- email?: string;
83
- name?: string;
84
- metadata?: Record<string, string>;
85
- };
86
121
  /**
87
122
  * Event emitted when a circuit breaker budget or token limit is reached
88
123
  */
@@ -119,7 +154,26 @@ interface CircuitBreakerOptions {
119
154
  throwOnBudgetExceeded?: boolean;
120
155
  }
121
156
  /**
122
- * Billing Configuration (Postpaid metered invoice vs Prepaid credit wallet)
157
+ * Pluggable Database / Storage Adapter Interface
158
+ */
159
+ interface DatabaseAdapter {
160
+ name: string;
161
+ save: (event: UsageEvent) => Promise<void> | void;
162
+ getBalance?: (customerId: string) => Promise<number | undefined>;
163
+ }
164
+ /**
165
+ * Pluggable Payment Provider Interface
166
+ */
167
+ interface PaymentProvider {
168
+ name: string;
169
+ charge?: (costUSD: number, event: UsageEvent) => Promise<void> | void;
170
+ checkBalance?: (customerId: string) => Promise<{
171
+ ok: boolean;
172
+ balanceUSD?: number;
173
+ }>;
174
+ }
175
+ /**
176
+ * Billing Configuration (Universal Auto-Debit, Postpaid metered invoice vs Prepaid credit wallet, Pluggable Providers)
123
177
  */
124
178
  interface BillingConfig {
125
179
  /** 'postpaid' = Invoiced at month's end; 'prepaid' = Deducted from credit wallet, locks at $0 */
@@ -128,6 +182,10 @@ interface BillingConfig {
128
182
  balanceUSD?: number;
129
183
  /** Action when balance is low: 'warn' logs/sends event, 'throw' throws CreditExhaustedError */
130
184
  onLowBalance?: 'warn' | 'throw';
185
+ /** Payment Provider Gateway (default: 'stripe') */
186
+ provider?: 'stripe' | 'polar' | 'lemonsqueezy' | 'paystack' | PaymentProvider;
187
+ /** Custom charge handler for internal credit wallets / bespoke payment logic */
188
+ charge?: (costUSD: number, event: UsageEvent) => Promise<void> | void;
131
189
  }
132
190
  /**
133
191
  * Profit Pricing & Markup Configuration
@@ -258,4 +316,4 @@ interface UsageSummary {
258
316
  }>;
259
317
  }
260
318
 
261
- export { type BillingConfig as B, type CustomerParam as C, type InferenceCost as I, type KnownModel as K, type MeterOptions as M, type PricingConfig as P, type RecordUsageOptions as R, type StreamWrapOptions as S, type TokenUsage as T, type UsageEvent as U, VibezCircuitBreakerError as V, type UsageSummary as a, type BudgetExceededEvent as b, type CircuitBreakerOptions as c, type InlineRateConfig as d, type ModelPricingRates as e, type SupportedAnthropicModel as f, type SupportedDeepSeekModel as g, type SupportedGoogleModel as h, type SupportedModel as i, type SupportedOpenAIModel as j, type ToolMeterOptions as k };
319
+ export { type BillingConfig as B, type CustomerParam as C, type DatabaseAdapter as D, type InferenceCost as I, type KnownModel as K, type MeterOptions as M, type PaymentProvider as P, type RecordUsageOptions as R, type StreamWrapOptions as S, type TokenUsage as T, type UsageEvent as U, VibezCircuitBreakerError as V, type UsageSummary as a, type BudgetExceededEvent as b, type CircuitBreakerOptions as c, type CustomerInfo as d, type InlineRateConfig as e, type ModelPricingRates as f, type PricingConfig as g, type SupportedAnthropicModel as h, type SupportedDeepSeekModel as i, type SupportedGoogleModel as j, type SupportedModel as k, type SupportedOpenAIModel as l, type ToolMeterOptions as m };
@@ -50,6 +50,49 @@ interface InferenceCost {
50
50
  /** Currency (defaults to 'USD') */
51
51
  currency: string;
52
52
  }
53
+ /**
54
+ * Structured Customer Information with rich metadata, multi-tenancy & billing attributes
55
+ */
56
+ interface CustomerInfo {
57
+ /** Internal user ID or Stripe customer ID ('cus_xxx', 'usr_123') */
58
+ id?: string;
59
+ /** Explicit user ID */
60
+ userId?: string;
61
+ /** Customer email */
62
+ email?: string;
63
+ /** Customer full name or business display name */
64
+ name?: string;
65
+ /** Phone number */
66
+ phone?: string;
67
+ /** Multi-tenant Organization or Company ID */
68
+ orgId?: string;
69
+ /** Organization / Company name */
70
+ orgName?: string;
71
+ /** Multi-tenant Organization ID alias */
72
+ organizationId?: string;
73
+ /** Team / Workspace identifier */
74
+ teamId?: string;
75
+ /** Workspace identifier alias */
76
+ workspaceId?: string;
77
+ /** User Role within organization (e.g. 'admin', 'member', 'owner') */
78
+ role?: string;
79
+ /** Subscription Plan name (e.g. 'free', 'starter', 'pro', 'enterprise') */
80
+ plan?: string;
81
+ /** Billing Tier (e.g. 'tier_1', 'growth', 'unlimited') */
82
+ tier?: string;
83
+ /** Billing currency (defaults to 'usd') */
84
+ currency?: string;
85
+ /** Current prepaid credit balance in USD */
86
+ balanceUSD?: number;
87
+ /** Flexible custom metadata (key-value attributes) */
88
+ metadata?: Record<string, string | number | boolean | null>;
89
+ /** Arbitrary extra developer fields */
90
+ [key: string]: any;
91
+ }
92
+ /**
93
+ * Customer identification parameter: can be a string ('cus_xxx' or 'user@example.com') or a rich structured object
94
+ */
95
+ type CustomerParam = string | CustomerInfo;
53
96
  /**
54
97
  * Full usage event emitted upon completion of an LLM call or stream
55
98
  */
@@ -70,19 +113,11 @@ interface UsageEvent {
70
113
  customerId?: string;
71
114
  /** Optional customer email */
72
115
  customerEmail?: string;
116
+ /** Full customer profile snapshot if provided */
117
+ customer?: CustomerInfo;
73
118
  /** Custom developer metadata (e.g. userId, orgId, feature, session) */
74
119
  metadata?: Record<string, string | number | boolean>;
75
120
  }
76
- /**
77
- * Customer identification parameter: can be a string ('cus_xxx' or 'user@example.com') or an object
78
- */
79
- type CustomerParam = string | {
80
- id?: string;
81
- userId?: string;
82
- email?: string;
83
- name?: string;
84
- metadata?: Record<string, string>;
85
- };
86
121
  /**
87
122
  * Event emitted when a circuit breaker budget or token limit is reached
88
123
  */
@@ -119,7 +154,26 @@ interface CircuitBreakerOptions {
119
154
  throwOnBudgetExceeded?: boolean;
120
155
  }
121
156
  /**
122
- * Billing Configuration (Postpaid metered invoice vs Prepaid credit wallet)
157
+ * Pluggable Database / Storage Adapter Interface
158
+ */
159
+ interface DatabaseAdapter {
160
+ name: string;
161
+ save: (event: UsageEvent) => Promise<void> | void;
162
+ getBalance?: (customerId: string) => Promise<number | undefined>;
163
+ }
164
+ /**
165
+ * Pluggable Payment Provider Interface
166
+ */
167
+ interface PaymentProvider {
168
+ name: string;
169
+ charge?: (costUSD: number, event: UsageEvent) => Promise<void> | void;
170
+ checkBalance?: (customerId: string) => Promise<{
171
+ ok: boolean;
172
+ balanceUSD?: number;
173
+ }>;
174
+ }
175
+ /**
176
+ * Billing Configuration (Universal Auto-Debit, Postpaid metered invoice vs Prepaid credit wallet, Pluggable Providers)
123
177
  */
124
178
  interface BillingConfig {
125
179
  /** 'postpaid' = Invoiced at month's end; 'prepaid' = Deducted from credit wallet, locks at $0 */
@@ -128,6 +182,10 @@ interface BillingConfig {
128
182
  balanceUSD?: number;
129
183
  /** Action when balance is low: 'warn' logs/sends event, 'throw' throws CreditExhaustedError */
130
184
  onLowBalance?: 'warn' | 'throw';
185
+ /** Payment Provider Gateway (default: 'stripe') */
186
+ provider?: 'stripe' | 'polar' | 'lemonsqueezy' | 'paystack' | PaymentProvider;
187
+ /** Custom charge handler for internal credit wallets / bespoke payment logic */
188
+ charge?: (costUSD: number, event: UsageEvent) => Promise<void> | void;
131
189
  }
132
190
  /**
133
191
  * Profit Pricing & Markup Configuration
@@ -258,4 +316,4 @@ interface UsageSummary {
258
316
  }>;
259
317
  }
260
318
 
261
- export { type BillingConfig as B, type CustomerParam as C, type InferenceCost as I, type KnownModel as K, type MeterOptions as M, type PricingConfig as P, type RecordUsageOptions as R, type StreamWrapOptions as S, type TokenUsage as T, type UsageEvent as U, VibezCircuitBreakerError as V, type UsageSummary as a, type BudgetExceededEvent as b, type CircuitBreakerOptions as c, type InlineRateConfig as d, type ModelPricingRates as e, type SupportedAnthropicModel as f, type SupportedDeepSeekModel as g, type SupportedGoogleModel as h, type SupportedModel as i, type SupportedOpenAIModel as j, type ToolMeterOptions as k };
319
+ export { type BillingConfig as B, type CustomerParam as C, type DatabaseAdapter as D, type InferenceCost as I, type KnownModel as K, type MeterOptions as M, type PaymentProvider as P, type RecordUsageOptions as R, type StreamWrapOptions as S, type TokenUsage as T, type UsageEvent as U, VibezCircuitBreakerError as V, type UsageSummary as a, type BudgetExceededEvent as b, type CircuitBreakerOptions as c, type CustomerInfo as d, type InlineRateConfig as e, type ModelPricingRates as f, type PricingConfig as g, type SupportedAnthropicModel as h, type SupportedDeepSeekModel as i, type SupportedGoogleModel as j, type SupportedModel as k, type SupportedOpenAIModel as l, type ToolMeterOptions as m };
package/package.json CHANGED
@@ -1,153 +1,161 @@
1
- {
2
- "name": "vibezcheck",
3
- "version": "0.4.1",
4
- "description": "The 1-line Stripe Billing and Token Metering engine for LLMs. Track tokens, compute real-time dollar costs, and bill customers with 0ms added latency.",
5
- "author": "VibezCheck <dev@vibezcheck.xyz> (https://vibezcheck.xyz)",
6
- "license": "MIT",
7
- "repository": {
8
- "type": "git",
9
- "url": "git+https://github.com/seeyouin2x5x/vibezcheck-sdk.git"
10
- },
11
- "keywords": [
12
- "stripe",
13
- "ai",
14
- "billing",
15
- "tokens",
16
- "metering",
17
- "llm",
18
- "openai",
19
- "anthropic",
20
- "gemini",
21
- "vercel-ai",
22
- "ai-sdk",
23
- "reasoning",
24
- "cost-calculator"
25
- ],
26
- "engines": {
27
- "node": ">=18.0.0"
28
- },
29
- "main": "./dist/index.js",
30
- "module": "./dist/index.mjs",
31
- "types": "./dist/index.d.ts",
32
- "exports": {
33
- ".": {
34
- "types": "./dist/index.d.ts",
35
- "import": "./dist/index.mjs",
36
- "require": "./dist/index.js"
37
- },
38
- "./meter": {
39
- "types": "./dist/meter/index.d.ts",
40
- "import": "./dist/meter/index.mjs",
41
- "require": "./dist/meter/index.js"
42
- },
43
- "./pricing": {
44
- "types": "./dist/pricing/index.d.ts",
45
- "import": "./dist/pricing/index.mjs",
46
- "require": "./dist/pricing/index.js"
47
- },
48
- "./ai-sdk": {
49
- "types": "./dist/ai-sdk/index.d.ts",
50
- "import": "./dist/ai-sdk/index.mjs",
51
- "require": "./dist/ai-sdk/index.js"
52
- },
53
- "./customers": {
54
- "types": "./dist/customers/index.d.ts",
55
- "import": "./dist/customers/index.mjs",
56
- "require": "./dist/customers/index.js"
57
- },
58
- "./auth": {
59
- "types": "./dist/auth/index.d.ts",
60
- "import": "./dist/auth/index.mjs",
61
- "require": "./dist/auth/index.js"
62
- },
63
- "./billing": {
64
- "types": "./dist/billing/index.d.ts",
65
- "import": "./dist/billing/index.mjs",
66
- "require": "./dist/billing/index.js"
67
- },
68
- "./react": {
69
- "types": "./dist/react/index.d.ts",
70
- "import": "./dist/react/index.mjs",
71
- "require": "./dist/react/index.js"
72
- }
73
- },
74
- "bin": {
75
- "vibezcheck": "bin/vibezcheck.js"
76
- },
77
- "files": [
78
- "dist",
79
- "bin",
80
- "README.md",
81
- "LICENSE",
82
- "package.json"
83
- ],
84
- "scripts": {
85
- "build": "tsup",
86
- "clean": "rm -rf dist",
87
- "test": "jest",
88
- "test:watch": "jest --watch",
89
- "test:coverage": "jest --coverage",
90
- "prepublishOnly": "npm run build"
91
- },
92
- "dependencies": {
93
- "stripe": "^17.5.0"
94
- },
95
- "devDependencies": {
96
- "@ai-sdk/anthropic": "^2.0.35",
97
- "@ai-sdk/google": "^2.0.23",
98
- "@ai-sdk/openai": "^2.0.53",
99
- "@ai-sdk/provider": "^3.0.0",
100
- "@anthropic-ai/sdk": "^0.67.0",
101
- "@google/generative-ai": "^0.24.1",
102
- "@types/jest": "^29.5.14",
103
- "@types/node": "^22.10.5",
104
- "@types/react": "^19.0.0",
105
- "@types/react-dom": "^19.0.0",
106
- "ai": "^5.0.76",
107
- "jest": "^29.7.0",
108
- "jest-environment-jsdom": "^29.7.0",
109
- "openai": "^6.6.0",
110
- "react": "^19.0.0",
111
- "react-dom": "^19.0.0",
112
- "ts-jest": "^29.2.5",
113
- "ts-node": "^10.9.2",
114
- "tsup": "^8.3.5",
115
- "typescript": "^5.8.3"
116
- },
117
- "peerDependencies": {
118
- "@ai-sdk/provider": "^3.0.0",
119
- "@anthropic-ai/sdk": "^0.32.0 || ^0.67.0",
120
- "@google/generative-ai": "^0.21.0 || ^0.24.0",
121
- "ai": "^3.0.0 || ^4.0.0 || ^5.0.0",
122
- "openai": "^4.0.0 || ^6.0.0",
123
- "react": "^18.0.0 || ^19.0.0",
124
- "react-dom": "^18.0.0 || ^19.0.0",
125
- "stripe": "^16.0.0 || ^17.0.0 || ^18.0.0"
126
- },
127
- "peerDependenciesMeta": {
128
- "@ai-sdk/provider": {
129
- "optional": true
130
- },
131
- "@anthropic-ai/sdk": {
132
- "optional": true
133
- },
134
- "@google/generative-ai": {
135
- "optional": true
136
- },
137
- "ai": {
138
- "optional": true
139
- },
140
- "openai": {
141
- "optional": true
142
- },
143
- "react": {
144
- "optional": true
145
- },
146
- "react-dom": {
147
- "optional": true
148
- },
149
- "stripe": {
150
- "optional": true
151
- }
152
- }
153
- }
1
+ {
2
+ "name": "vibezcheck",
3
+ "version": "0.4.2",
4
+ "description": "The 1-line Stripe Billing and Token Metering engine for LLMs. Track tokens, compute real-time dollar costs, and bill customers with 0ms added latency.",
5
+ "author": "VibezCheck <dev@vibezcheck.xyz> (https://vibezcheck.xyz)",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/seeyouin2x5x/vibezcheck-sdk.git"
10
+ },
11
+ "keywords": [
12
+ "stripe",
13
+ "ai",
14
+ "billing",
15
+ "tokens",
16
+ "metering",
17
+ "llm",
18
+ "openai",
19
+ "anthropic",
20
+ "gemini",
21
+ "vercel-ai",
22
+ "ai-sdk",
23
+ "reasoning",
24
+ "cost-calculator"
25
+ ],
26
+ "engines": {
27
+ "node": ">=18.0.0"
28
+ },
29
+ "main": "./dist/index.js",
30
+ "module": "./dist/index.mjs",
31
+ "types": "./dist/index.d.ts",
32
+ "exports": {
33
+ ".": {
34
+ "types": "./dist/index.d.ts",
35
+ "import": "./dist/index.mjs",
36
+ "require": "./dist/index.js"
37
+ },
38
+ "./meter": {
39
+ "types": "./dist/meter/index.d.ts",
40
+ "import": "./dist/meter/index.mjs",
41
+ "require": "./dist/meter/index.js"
42
+ },
43
+ "./pricing": {
44
+ "types": "./dist/pricing/index.d.ts",
45
+ "import": "./dist/pricing/index.mjs",
46
+ "require": "./dist/pricing/index.js"
47
+ },
48
+ "./ai-sdk": {
49
+ "types": "./dist/ai-sdk/index.d.ts",
50
+ "import": "./dist/ai-sdk/index.mjs",
51
+ "require": "./dist/ai-sdk/index.js"
52
+ },
53
+ "./customers": {
54
+ "types": "./dist/customers/index.d.ts",
55
+ "import": "./dist/customers/index.mjs",
56
+ "require": "./dist/customers/index.js"
57
+ },
58
+ "./auth": {
59
+ "types": "./dist/auth/index.d.ts",
60
+ "import": "./dist/auth/index.mjs",
61
+ "require": "./dist/auth/index.js"
62
+ },
63
+ "./billing": {
64
+ "types": "./dist/billing/index.d.ts",
65
+ "import": "./dist/billing/index.mjs",
66
+ "require": "./dist/billing/index.js"
67
+ },
68
+ "./react": {
69
+ "types": "./dist/react/index.d.ts",
70
+ "import": "./dist/react/index.mjs",
71
+ "require": "./dist/react/index.js"
72
+ }
73
+ },
74
+ "bin": {
75
+ "vibezcheck": "bin/vibezcheck.js"
76
+ },
77
+ "files": [
78
+ "dist",
79
+ "bin",
80
+ "README.md",
81
+ "LICENSE",
82
+ "package.json"
83
+ ],
84
+ "scripts": {
85
+ "build": "tsup",
86
+ "clean": "rm -rf dist",
87
+ "test": "jest",
88
+ "test:watch": "jest --watch",
89
+ "test:coverage": "jest --coverage",
90
+ "prepublishOnly": "npm run build"
91
+ },
92
+ "dependencies": {
93
+ "stripe": "^17.5.0"
94
+ },
95
+ "devDependencies": {
96
+ "@ai-sdk/anthropic": "^2.0.35",
97
+ "@ai-sdk/google": "^2.0.23",
98
+ "@ai-sdk/openai": "^2.0.53",
99
+ "@ai-sdk/provider": "^3.0.0",
100
+ "@anthropic-ai/sdk": "^0.67.0",
101
+ "@google/generative-ai": "^0.24.1",
102
+ "@types/jest": "^29.5.14",
103
+ "@types/node": "^22.10.5",
104
+ "@types/react": "^19.0.0",
105
+ "@types/react-dom": "^19.0.0",
106
+ "ai": "^5.0.76",
107
+ "jest": "^29.7.0",
108
+ "jest-environment-jsdom": "^29.7.0",
109
+ "openai": "^6.6.0",
110
+ "react": "^19.0.0",
111
+ "react-dom": "^19.0.0",
112
+ "ts-jest": "^29.2.5",
113
+ "ts-node": "^10.9.2",
114
+ "tsup": "^8.3.5",
115
+ "typescript": "^5.8.3"
116
+ },
117
+ "peerDependencies": {
118
+ "@ai-sdk/provider": "^3.0.0",
119
+ "@anthropic-ai/sdk": "^0.32.0 || ^0.67.0",
120
+ "@google/generative-ai": "^0.21.0 || ^0.24.0",
121
+ "ai": "^3.0.0 || ^4.0.0 || ^5.0.0",
122
+ "openai": "^4.0.0 || ^6.0.0",
123
+ "react": "^18.0.0 || ^19.0.0",
124
+ "react-dom": "^18.0.0 || ^19.0.0",
125
+ "stripe": "^16.0.0 || ^17.0.0 || ^18.0.0"
126
+ },
127
+ "peerDependenciesMeta": {
128
+ "@ai-sdk/provider": {
129
+ "optional": true
130
+ },
131
+ "@anthropic-ai/sdk": {
132
+ "optional": true
133
+ },
134
+ "@google/generative-ai": {
135
+ "optional": true
136
+ },
137
+ "ai": {
138
+ "optional": true
139
+ },
140
+ "openai": {
141
+ "optional": true
142
+ },
143
+ "react": {
144
+ "optional": true
145
+ },
146
+ "react-dom": {
147
+ "optional": true
148
+ },
149
+ "stripe": {
150
+ "optional": true
151
+ }
152
+ },
153
+ "homepage": "https://vibezcheck.xyz",
154
+ "bugs": {
155
+ "url": "https://github.com/seeyouin2x5x/vibezcheck-sdk/issues"
156
+ },
157
+ "publishConfig": {
158
+ "access": "public"
159
+ },
160
+ "sideEffects": false
161
+ }