agent-relay 2.0.23 → 2.0.24

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 (168) hide show
  1. package/dist/src/cli/index.js +66 -13
  2. package/package.json +18 -52
  3. package/packages/api-types/package.json +1 -1
  4. package/packages/bridge/package.json +8 -8
  5. package/packages/cli-tester/package.json +1 -1
  6. package/packages/config/package.json +2 -2
  7. package/packages/continuity/package.json +1 -1
  8. package/packages/daemon/package.json +12 -12
  9. package/packages/hooks/package.json +4 -4
  10. package/packages/mcp/package.json +2 -2
  11. package/packages/memory/package.json +2 -2
  12. package/packages/policy/package.json +2 -2
  13. package/packages/protocol/package.json +1 -1
  14. package/packages/resiliency/package.json +1 -1
  15. package/packages/sdk/package.json +2 -2
  16. package/packages/spawner/package.json +1 -1
  17. package/packages/state/package.json +1 -1
  18. package/packages/storage/package.json +2 -2
  19. package/packages/telemetry/package.json +1 -1
  20. package/packages/trajectory/package.json +2 -2
  21. package/packages/user-directory/package.json +2 -2
  22. package/packages/utils/package.json +1 -1
  23. package/packages/wrapper/package.json +6 -6
  24. package/deploy/init-db.sql +0 -5
  25. package/deploy/scripts/setup-fly-workspaces.sh +0 -69
  26. package/deploy/scripts/setup-railway.sh +0 -75
  27. package/dist/src/cloud/index.d.ts +0 -8
  28. package/dist/src/cloud/index.js +0 -8
  29. package/packages/cloud/dist/api/admin.d.ts +0 -8
  30. package/packages/cloud/dist/api/admin.js +0 -225
  31. package/packages/cloud/dist/api/auth.d.ts +0 -20
  32. package/packages/cloud/dist/api/auth.js +0 -138
  33. package/packages/cloud/dist/api/billing.d.ts +0 -7
  34. package/packages/cloud/dist/api/billing.js +0 -564
  35. package/packages/cloud/dist/api/cli-pty-runner.d.ts +0 -53
  36. package/packages/cloud/dist/api/cli-pty-runner.js +0 -175
  37. package/packages/cloud/dist/api/codex-auth-helper.d.ts +0 -21
  38. package/packages/cloud/dist/api/codex-auth-helper.js +0 -327
  39. package/packages/cloud/dist/api/consensus.d.ts +0 -13
  40. package/packages/cloud/dist/api/consensus.js +0 -261
  41. package/packages/cloud/dist/api/coordinators.d.ts +0 -8
  42. package/packages/cloud/dist/api/coordinators.js +0 -750
  43. package/packages/cloud/dist/api/daemons.d.ts +0 -12
  44. package/packages/cloud/dist/api/daemons.js +0 -535
  45. package/packages/cloud/dist/api/email-auth.d.ts +0 -11
  46. package/packages/cloud/dist/api/email-auth.js +0 -347
  47. package/packages/cloud/dist/api/generic-webhooks.d.ts +0 -8
  48. package/packages/cloud/dist/api/generic-webhooks.js +0 -129
  49. package/packages/cloud/dist/api/git.d.ts +0 -8
  50. package/packages/cloud/dist/api/git.js +0 -269
  51. package/packages/cloud/dist/api/github-app.d.ts +0 -11
  52. package/packages/cloud/dist/api/github-app.js +0 -223
  53. package/packages/cloud/dist/api/middleware/planLimits.d.ts +0 -43
  54. package/packages/cloud/dist/api/middleware/planLimits.js +0 -202
  55. package/packages/cloud/dist/api/monitoring.d.ts +0 -11
  56. package/packages/cloud/dist/api/monitoring.js +0 -578
  57. package/packages/cloud/dist/api/nango-auth.d.ts +0 -9
  58. package/packages/cloud/dist/api/nango-auth.js +0 -741
  59. package/packages/cloud/dist/api/onboarding.d.ts +0 -15
  60. package/packages/cloud/dist/api/onboarding.js +0 -679
  61. package/packages/cloud/dist/api/policy.d.ts +0 -8
  62. package/packages/cloud/dist/api/policy.js +0 -229
  63. package/packages/cloud/dist/api/provider-env.d.ts +0 -26
  64. package/packages/cloud/dist/api/provider-env.js +0 -141
  65. package/packages/cloud/dist/api/providers.d.ts +0 -7
  66. package/packages/cloud/dist/api/providers.js +0 -574
  67. package/packages/cloud/dist/api/repos.d.ts +0 -8
  68. package/packages/cloud/dist/api/repos.js +0 -577
  69. package/packages/cloud/dist/api/sessions.d.ts +0 -11
  70. package/packages/cloud/dist/api/sessions.js +0 -302
  71. package/packages/cloud/dist/api/teams.d.ts +0 -7
  72. package/packages/cloud/dist/api/teams.js +0 -281
  73. package/packages/cloud/dist/api/test-helpers.d.ts +0 -10
  74. package/packages/cloud/dist/api/test-helpers.js +0 -745
  75. package/packages/cloud/dist/api/usage.d.ts +0 -7
  76. package/packages/cloud/dist/api/usage.js +0 -111
  77. package/packages/cloud/dist/api/webhooks.d.ts +0 -8
  78. package/packages/cloud/dist/api/webhooks.js +0 -645
  79. package/packages/cloud/dist/api/workspaces.d.ts +0 -25
  80. package/packages/cloud/dist/api/workspaces.js +0 -1799
  81. package/packages/cloud/dist/billing/index.d.ts +0 -9
  82. package/packages/cloud/dist/billing/index.js +0 -9
  83. package/packages/cloud/dist/billing/plans.d.ts +0 -39
  84. package/packages/cloud/dist/billing/plans.js +0 -245
  85. package/packages/cloud/dist/billing/service.d.ts +0 -80
  86. package/packages/cloud/dist/billing/service.js +0 -388
  87. package/packages/cloud/dist/billing/types.d.ts +0 -141
  88. package/packages/cloud/dist/billing/types.js +0 -7
  89. package/packages/cloud/dist/config.d.ts +0 -5
  90. package/packages/cloud/dist/config.js +0 -5
  91. package/packages/cloud/dist/db/bulk-ingest.d.ts +0 -89
  92. package/packages/cloud/dist/db/bulk-ingest.js +0 -268
  93. package/packages/cloud/dist/db/drizzle.d.ts +0 -290
  94. package/packages/cloud/dist/db/drizzle.js +0 -1422
  95. package/packages/cloud/dist/db/index.d.ts +0 -56
  96. package/packages/cloud/dist/db/index.js +0 -70
  97. package/packages/cloud/dist/db/schema.d.ts +0 -5117
  98. package/packages/cloud/dist/db/schema.js +0 -656
  99. package/packages/cloud/dist/index.d.ts +0 -11
  100. package/packages/cloud/dist/index.js +0 -38
  101. package/packages/cloud/dist/provisioner/index.d.ts +0 -207
  102. package/packages/cloud/dist/provisioner/index.js +0 -2118
  103. package/packages/cloud/dist/server.d.ts +0 -17
  104. package/packages/cloud/dist/server.js +0 -2055
  105. package/packages/cloud/dist/services/auto-scaler.d.ts +0 -152
  106. package/packages/cloud/dist/services/auto-scaler.js +0 -439
  107. package/packages/cloud/dist/services/capacity-manager.d.ts +0 -148
  108. package/packages/cloud/dist/services/capacity-manager.js +0 -449
  109. package/packages/cloud/dist/services/ci-agent-spawner.d.ts +0 -49
  110. package/packages/cloud/dist/services/ci-agent-spawner.js +0 -373
  111. package/packages/cloud/dist/services/cloud-message-bus.d.ts +0 -28
  112. package/packages/cloud/dist/services/cloud-message-bus.js +0 -19
  113. package/packages/cloud/dist/services/compute-enforcement.d.ts +0 -57
  114. package/packages/cloud/dist/services/compute-enforcement.js +0 -175
  115. package/packages/cloud/dist/services/coordinator.d.ts +0 -62
  116. package/packages/cloud/dist/services/coordinator.js +0 -389
  117. package/packages/cloud/dist/services/index.d.ts +0 -17
  118. package/packages/cloud/dist/services/index.js +0 -25
  119. package/packages/cloud/dist/services/intro-expiration.d.ts +0 -60
  120. package/packages/cloud/dist/services/intro-expiration.js +0 -252
  121. package/packages/cloud/dist/services/mention-handler.d.ts +0 -65
  122. package/packages/cloud/dist/services/mention-handler.js +0 -405
  123. package/packages/cloud/dist/services/nango.d.ts +0 -219
  124. package/packages/cloud/dist/services/nango.js +0 -424
  125. package/packages/cloud/dist/services/persistence.d.ts +0 -131
  126. package/packages/cloud/dist/services/persistence.js +0 -200
  127. package/packages/cloud/dist/services/planLimits.d.ts +0 -147
  128. package/packages/cloud/dist/services/planLimits.js +0 -335
  129. package/packages/cloud/dist/services/presence-registry.d.ts +0 -56
  130. package/packages/cloud/dist/services/presence-registry.js +0 -91
  131. package/packages/cloud/dist/services/scaling-orchestrator.d.ts +0 -159
  132. package/packages/cloud/dist/services/scaling-orchestrator.js +0 -502
  133. package/packages/cloud/dist/services/scaling-policy.d.ts +0 -121
  134. package/packages/cloud/dist/services/scaling-policy.js +0 -415
  135. package/packages/cloud/dist/services/ssh-security.d.ts +0 -31
  136. package/packages/cloud/dist/services/ssh-security.js +0 -63
  137. package/packages/cloud/dist/services/workspace-keepalive.d.ts +0 -76
  138. package/packages/cloud/dist/services/workspace-keepalive.js +0 -234
  139. package/packages/cloud/dist/shims/consensus.d.ts +0 -23
  140. package/packages/cloud/dist/shims/consensus.js +0 -5
  141. package/packages/cloud/dist/webhooks/index.d.ts +0 -24
  142. package/packages/cloud/dist/webhooks/index.js +0 -29
  143. package/packages/cloud/dist/webhooks/parsers/github.d.ts +0 -8
  144. package/packages/cloud/dist/webhooks/parsers/github.js +0 -234
  145. package/packages/cloud/dist/webhooks/parsers/index.d.ts +0 -23
  146. package/packages/cloud/dist/webhooks/parsers/index.js +0 -30
  147. package/packages/cloud/dist/webhooks/parsers/linear.d.ts +0 -9
  148. package/packages/cloud/dist/webhooks/parsers/linear.js +0 -258
  149. package/packages/cloud/dist/webhooks/parsers/slack.d.ts +0 -9
  150. package/packages/cloud/dist/webhooks/parsers/slack.js +0 -214
  151. package/packages/cloud/dist/webhooks/responders/github.d.ts +0 -8
  152. package/packages/cloud/dist/webhooks/responders/github.js +0 -73
  153. package/packages/cloud/dist/webhooks/responders/index.d.ts +0 -23
  154. package/packages/cloud/dist/webhooks/responders/index.js +0 -30
  155. package/packages/cloud/dist/webhooks/responders/linear.d.ts +0 -9
  156. package/packages/cloud/dist/webhooks/responders/linear.js +0 -149
  157. package/packages/cloud/dist/webhooks/responders/slack.d.ts +0 -20
  158. package/packages/cloud/dist/webhooks/responders/slack.js +0 -178
  159. package/packages/cloud/dist/webhooks/router.d.ts +0 -25
  160. package/packages/cloud/dist/webhooks/router.js +0 -504
  161. package/packages/cloud/dist/webhooks/rules-engine.d.ts +0 -24
  162. package/packages/cloud/dist/webhooks/rules-engine.js +0 -287
  163. package/packages/cloud/dist/webhooks/types.d.ts +0 -186
  164. package/packages/cloud/dist/webhooks/types.js +0 -8
  165. package/packages/cloud/package.json +0 -60
  166. package/scripts/run-migrations.js +0 -43
  167. package/scripts/setup-stripe-products.ts +0 -312
  168. package/scripts/verify-schema.js +0 -134
@@ -1,9 +0,0 @@
1
- /**
2
- * Agent Relay Cloud - Billing Module
3
- *
4
- * Stripe-based subscription management and billing.
5
- */
6
- export * from './types.js';
7
- export * from './plans.js';
8
- export { BillingService, getBillingService } from './service.js';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1,9 +0,0 @@
1
- /**
2
- * Agent Relay Cloud - Billing Module
3
- *
4
- * Stripe-based subscription management and billing.
5
- */
6
- export * from './types.js';
7
- export * from './plans.js';
8
- export { BillingService, getBillingService } from './service.js';
9
- //# sourceMappingURL=index.js.map
@@ -1,39 +0,0 @@
1
- /**
2
- * Agent Relay Cloud - Billing Plans
3
- *
4
- * Plan definitions for subscription tiers.
5
- */
6
- import type { BillingPlan, SubscriptionTier } from './types.js';
7
- /**
8
- * All available billing plans
9
- */
10
- export declare const BILLING_PLANS: Record<SubscriptionTier, BillingPlan>;
11
- /**
12
- * Get plan by ID
13
- */
14
- export declare function getPlan(tier: SubscriptionTier): BillingPlan;
15
- /**
16
- * Get all plans as array
17
- */
18
- export declare function getAllPlans(): BillingPlan[];
19
- /**
20
- * Check if a limit is within plan bounds
21
- * Returns true if the value is within limits (-1 means unlimited)
22
- */
23
- export declare function isWithinLimit(limit: number, current: number): boolean;
24
- /**
25
- * Get the next tier upgrade from current
26
- */
27
- export declare function getUpgradeTier(current: SubscriptionTier): SubscriptionTier | null;
28
- /**
29
- * Format price for display
30
- */
31
- export declare function formatPrice(cents: number): string;
32
- /**
33
- * Get plan limits comparison
34
- */
35
- export declare function comparePlans(from: SubscriptionTier, to: SubscriptionTier): {
36
- upgrades: string[];
37
- downgrades: string[];
38
- };
39
- //# sourceMappingURL=plans.d.ts.map
@@ -1,245 +0,0 @@
1
- /**
2
- * Agent Relay Cloud - Billing Plans
3
- *
4
- * Plan definitions for subscription tiers.
5
- */
6
- /**
7
- * All available billing plans
8
- */
9
- export const BILLING_PLANS = {
10
- free: {
11
- id: 'free',
12
- name: 'Free',
13
- description: 'Try AI agent workflows with limited access',
14
- priceMonthly: 0,
15
- priceYearly: 0,
16
- limits: {
17
- maxWorkspaces: 1,
18
- maxAgentsPerWorkspace: 2,
19
- maxTeamMembers: 1,
20
- maxStorageGB: 1,
21
- maxComputeHoursPerMonth: 5, // Limited to 5 hours/month
22
- customDomains: false,
23
- prioritySupport: false,
24
- sla: false,
25
- ssoEnabled: false,
26
- auditLogs: false,
27
- sessionPersistence: false,
28
- },
29
- features: [
30
- '1 workspace',
31
- 'Up to 2 agents',
32
- '5 compute hours/month',
33
- 'Shared CPU (may throttle)',
34
- 'Community support',
35
- ],
36
- },
37
- pro: {
38
- id: 'pro',
39
- name: 'Pro',
40
- description: 'For professional developers building with AI agents',
41
- priceMonthly: 6900, // $69/month
42
- priceYearly: 69000, // $690/year (2 months free)
43
- stripePriceIdMonthly: process.env.STRIPE_PRO_MONTHLY_PRICE_ID,
44
- stripePriceIdYearly: process.env.STRIPE_PRO_YEARLY_PRICE_ID,
45
- limits: {
46
- maxWorkspaces: 5,
47
- maxAgentsPerWorkspace: 5,
48
- maxTeamMembers: 3,
49
- maxStorageGB: 10,
50
- maxComputeHoursPerMonth: 50,
51
- customDomains: true,
52
- prioritySupport: false,
53
- sla: false,
54
- ssoEnabled: false,
55
- auditLogs: false,
56
- sessionPersistence: true,
57
- },
58
- features: [
59
- 'Up to 5 workspaces',
60
- 'Up to 5 agents per workspace',
61
- '50 compute hours/month',
62
- '10 GB storage',
63
- '3 team members',
64
- 'Custom domains',
65
- 'Session persistence',
66
- 'Email support',
67
- ],
68
- },
69
- team: {
70
- id: 'team',
71
- name: 'Team',
72
- description: 'For growing teams with advanced needs',
73
- priceMonthly: 12900, // $129/month
74
- priceYearly: 129000, // $1290/year (2 months free)
75
- stripePriceIdMonthly: process.env.STRIPE_TEAM_MONTHLY_PRICE_ID,
76
- stripePriceIdYearly: process.env.STRIPE_TEAM_YEARLY_PRICE_ID,
77
- limits: {
78
- maxWorkspaces: 50,
79
- maxAgentsPerWorkspace: 25,
80
- maxTeamMembers: 25,
81
- maxStorageGB: 50,
82
- maxComputeHoursPerMonth: 500,
83
- customDomains: true,
84
- prioritySupport: true,
85
- sla: false,
86
- ssoEnabled: false,
87
- auditLogs: true,
88
- sessionPersistence: true,
89
- },
90
- features: [
91
- 'Up to 50 workspaces',
92
- 'Up to 25 agents per workspace',
93
- '500 compute hours/month',
94
- '50 GB storage',
95
- '25 team members',
96
- 'Custom domains',
97
- 'Session persistence',
98
- 'Priority support',
99
- 'Audit logs',
100
- ],
101
- },
102
- enterprise: {
103
- id: 'enterprise',
104
- name: 'Enterprise',
105
- description: 'For organizations requiring dedicated support and SLAs',
106
- priceMonthly: 49900, // $499/month starting
107
- priceYearly: 499000, // $4990/year
108
- stripePriceIdMonthly: process.env.STRIPE_ENTERPRISE_MONTHLY_PRICE_ID,
109
- stripePriceIdYearly: process.env.STRIPE_ENTERPRISE_YEARLY_PRICE_ID,
110
- limits: {
111
- maxWorkspaces: -1, // unlimited
112
- maxAgentsPerWorkspace: -1, // unlimited
113
- maxTeamMembers: -1, // unlimited
114
- maxStorageGB: 500,
115
- maxComputeHoursPerMonth: -1, // unlimited
116
- customDomains: true,
117
- prioritySupport: true,
118
- sla: true,
119
- ssoEnabled: true,
120
- auditLogs: true,
121
- sessionPersistence: true,
122
- },
123
- features: [
124
- 'Unlimited workspaces',
125
- 'Unlimited agents',
126
- 'Unlimited compute hours',
127
- '500 GB storage',
128
- 'Unlimited team members',
129
- 'Custom domains',
130
- 'Session persistence',
131
- 'Priority support with SLA',
132
- 'SSO/SAML integration',
133
- 'Audit logs & compliance',
134
- 'Dedicated account manager',
135
- ],
136
- },
137
- };
138
- /**
139
- * Get plan by ID
140
- */
141
- export function getPlan(tier) {
142
- return BILLING_PLANS[tier];
143
- }
144
- /**
145
- * Get all plans as array
146
- */
147
- export function getAllPlans() {
148
- return Object.values(BILLING_PLANS);
149
- }
150
- /**
151
- * Check if a limit is within plan bounds
152
- * Returns true if the value is within limits (-1 means unlimited)
153
- */
154
- export function isWithinLimit(limit, current) {
155
- if (limit === -1)
156
- return true; // unlimited
157
- return current < limit;
158
- }
159
- /**
160
- * Get the next tier upgrade from current
161
- */
162
- export function getUpgradeTier(current) {
163
- const tiers = ['free', 'pro', 'team', 'enterprise'];
164
- const currentIndex = tiers.indexOf(current);
165
- if (currentIndex === -1 || currentIndex >= tiers.length - 1) {
166
- return null;
167
- }
168
- return tiers[currentIndex + 1];
169
- }
170
- /**
171
- * Format price for display
172
- */
173
- export function formatPrice(cents) {
174
- if (cents === 0)
175
- return 'Free';
176
- return `$${(cents / 100).toFixed(0)}`;
177
- }
178
- /**
179
- * Get plan limits comparison
180
- */
181
- export function comparePlans(from, to) {
182
- const fromPlan = BILLING_PLANS[from];
183
- const toPlan = BILLING_PLANS[to];
184
- const upgrades = [];
185
- const downgrades = [];
186
- // Compare limits
187
- const compareLimit = (name, fromVal, toVal) => {
188
- if (toVal === -1 && fromVal !== -1) {
189
- upgrades.push(`Unlimited ${name}`);
190
- }
191
- else if (fromVal === -1 && toVal !== -1) {
192
- downgrades.push(`${name} limited to ${toVal}`);
193
- }
194
- else if (toVal > fromVal) {
195
- upgrades.push(`${name}: ${fromVal} -> ${toVal}`);
196
- }
197
- else if (toVal < fromVal) {
198
- downgrades.push(`${name}: ${fromVal} -> ${toVal}`);
199
- }
200
- };
201
- compareLimit('workspaces', fromPlan.limits.maxWorkspaces, toPlan.limits.maxWorkspaces);
202
- compareLimit('agents per workspace', fromPlan.limits.maxAgentsPerWorkspace, toPlan.limits.maxAgentsPerWorkspace);
203
- compareLimit('team members', fromPlan.limits.maxTeamMembers, toPlan.limits.maxTeamMembers);
204
- compareLimit('storage GB', fromPlan.limits.maxStorageGB, toPlan.limits.maxStorageGB);
205
- compareLimit('compute hours', fromPlan.limits.maxComputeHoursPerMonth, toPlan.limits.maxComputeHoursPerMonth);
206
- // Compare boolean features
207
- if (toPlan.limits.customDomains && !fromPlan.limits.customDomains) {
208
- upgrades.push('Custom domains');
209
- }
210
- else if (!toPlan.limits.customDomains && fromPlan.limits.customDomains) {
211
- downgrades.push('Custom domains');
212
- }
213
- if (toPlan.limits.prioritySupport && !fromPlan.limits.prioritySupport) {
214
- upgrades.push('Priority support');
215
- }
216
- else if (!toPlan.limits.prioritySupport && fromPlan.limits.prioritySupport) {
217
- downgrades.push('Priority support');
218
- }
219
- if (toPlan.limits.sla && !fromPlan.limits.sla) {
220
- upgrades.push('SLA');
221
- }
222
- else if (!toPlan.limits.sla && fromPlan.limits.sla) {
223
- downgrades.push('SLA');
224
- }
225
- if (toPlan.limits.ssoEnabled && !fromPlan.limits.ssoEnabled) {
226
- upgrades.push('SSO/SAML');
227
- }
228
- else if (!toPlan.limits.ssoEnabled && fromPlan.limits.ssoEnabled) {
229
- downgrades.push('SSO/SAML');
230
- }
231
- if (toPlan.limits.auditLogs && !fromPlan.limits.auditLogs) {
232
- upgrades.push('Audit logs');
233
- }
234
- else if (!toPlan.limits.auditLogs && fromPlan.limits.auditLogs) {
235
- downgrades.push('Audit logs');
236
- }
237
- if (toPlan.limits.sessionPersistence && !fromPlan.limits.sessionPersistence) {
238
- upgrades.push('Session persistence');
239
- }
240
- else if (!toPlan.limits.sessionPersistence && fromPlan.limits.sessionPersistence) {
241
- downgrades.push('Session persistence');
242
- }
243
- return { upgrades, downgrades };
244
- }
245
- //# sourceMappingURL=plans.js.map
@@ -1,80 +0,0 @@
1
- /**
2
- * Agent Relay Cloud - Billing Service
3
- *
4
- * Stripe integration for subscription management, payments, and webhooks.
5
- */
6
- import Stripe from 'stripe';
7
- import type { SubscriptionTier, BillingCustomer, CustomerSubscription, PaymentMethod, Invoice, CheckoutSession, PortalSession, BillingEvent } from './types.js';
8
- /**
9
- * Billing Service
10
- */
11
- export declare class BillingService {
12
- private stripe;
13
- constructor();
14
- /**
15
- * Create or get a Stripe customer for a user
16
- */
17
- getOrCreateCustomer(userId: string, email: string, name?: string): Promise<string>;
18
- /**
19
- * Get customer details including subscription
20
- */
21
- getCustomer(stripeCustomerId: string): Promise<BillingCustomer | null>;
22
- /**
23
- * Create a checkout session for subscription
24
- */
25
- createCheckoutSession(customerId: string, tier: SubscriptionTier, billingInterval: 'month' | 'year', successUrl: string, cancelUrl: string): Promise<CheckoutSession>;
26
- /**
27
- * Create a billing portal session for managing subscription
28
- */
29
- createPortalSession(customerId: string, returnUrl: string): Promise<PortalSession>;
30
- /**
31
- * Change subscription tier
32
- */
33
- changeSubscription(subscriptionId: string, newTier: SubscriptionTier, billingInterval: 'month' | 'year'): Promise<CustomerSubscription>;
34
- /**
35
- * Cancel subscription at period end
36
- */
37
- cancelSubscription(subscriptionId: string): Promise<CustomerSubscription>;
38
- /**
39
- * Resume a canceled subscription
40
- */
41
- resumeSubscription(subscriptionId: string): Promise<CustomerSubscription>;
42
- /**
43
- * Add a payment method to customer
44
- */
45
- addPaymentMethod(customerId: string, paymentMethodId: string, setAsDefault?: boolean): Promise<PaymentMethod>;
46
- /**
47
- * Remove a payment method
48
- */
49
- removePaymentMethod(paymentMethodId: string): Promise<void>;
50
- /**
51
- * Set default payment method
52
- */
53
- setDefaultPaymentMethod(customerId: string, paymentMethodId: string): Promise<void>;
54
- /**
55
- * Get upcoming invoice preview
56
- */
57
- getUpcomingInvoice(customerId: string): Promise<Invoice | null>;
58
- /**
59
- * Record usage for metered billing
60
- */
61
- recordUsage(subscriptionItemId: string, quantity: number, timestamp?: Date): Promise<void>;
62
- /**
63
- * Verify webhook signature
64
- */
65
- verifyWebhookSignature(payload: string | Buffer, signature: string): Stripe.Event;
66
- /**
67
- * Process webhook event
68
- */
69
- processWebhookEvent(event: Stripe.Event): Promise<BillingEvent>;
70
- /**
71
- * Get subscription tier from Stripe subscription
72
- */
73
- getTierFromSubscription(subscription: Stripe.Subscription): SubscriptionTier;
74
- private mapSubscription;
75
- private mapPaymentMethod;
76
- private mapInvoice;
77
- private mapEventType;
78
- }
79
- export declare function getBillingService(): BillingService;
80
- //# sourceMappingURL=service.d.ts.map