@burdenoff/microfe-billing 2026.517.1 → 2026.517.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.
- package/dist/billing/BillingUserRoutes.js +1 -1
- package/dist/billing/BillingUserRoutes.js.map +1 -1
- package/dist/billing/modules/billing/hooks/useInvoices.d.ts +1 -0
- package/dist/billing/modules/billing/hooks/useInvoices.d.ts.map +1 -1
- package/dist/billing/modules/billing/hooks/useInvoices.js +26 -20
- package/dist/billing/modules/billing/hooks/useInvoices.js.map +1 -1
- package/dist/billing/modules/billing/pages/InvoicesListPage.d.ts.map +1 -1
- package/dist/billing/modules/billing/pages/InvoicesListPage.js +170 -176
- package/dist/billing/modules/billing/pages/InvoicesListPage.js.map +1 -1
- package/dist/billing/modules/billing/pages/RefundsPage.js +1 -1
- package/dist/billing/modules/billing/pages/RefundsPage.js.map +1 -1
- package/dist/billing/modules/checkout/components/OrderSummary.js +4 -4
- package/dist/billing/modules/checkout/components/OrderSummary.js.map +1 -1
- package/dist/billing/modules/checkout/pages/CheckoutPage.d.ts.map +1 -1
- package/dist/billing/modules/checkout/pages/CheckoutPage.js +2 -2
- package/dist/billing/modules/checkout/pages/CheckoutPage.js.map +1 -1
- package/dist/billing/modules/credits/pages/CreditWithdrawalPage.d.ts.map +1 -1
- package/dist/billing/modules/credits/pages/CreditWithdrawalPage.js +209 -178
- package/dist/billing/modules/credits/pages/CreditWithdrawalPage.js.map +1 -1
- package/dist/billing/modules/dashboard/pages/OverviewPage.js +2 -2
- package/dist/billing/modules/dashboard/pages/OverviewPage.js.map +1 -1
- package/dist/billing/modules/discounts/pages/DiscountsListPage.js +2 -2
- package/dist/billing/modules/discounts/pages/DiscountsListPage.js.map +1 -1
- package/dist/billing/modules/earnings/api.d.ts +4 -0
- package/dist/billing/modules/earnings/api.d.ts.map +1 -1
- package/dist/billing/modules/earnings/api.js +14 -10
- package/dist/billing/modules/earnings/api.js.map +1 -1
- package/dist/billing/modules/earnings/pages/PayoutAdminPage.d.ts.map +1 -1
- package/dist/billing/modules/earnings/pages/PayoutAdminPage.js +523 -233
- package/dist/billing/modules/earnings/pages/PayoutAdminPage.js.map +1 -1
- package/dist/billing/modules/quota/pages/QuotaPage.js +1 -1
- package/dist/billing/modules/quota/pages/QuotaPage.js.map +1 -1
- package/dist/billing/modules/quota/pages/QuotaTemplateCreatePage.d.ts.map +1 -1
- package/dist/billing/modules/quota/pages/QuotaTemplateCreatePage.js +101 -44
- package/dist/billing/modules/quota/pages/QuotaTemplateCreatePage.js.map +1 -1
- package/dist/billing/modules/quota/pages/QuotaTemplateEditPage.d.ts.map +1 -1
- package/dist/billing/modules/quota/pages/QuotaTemplateEditPage.js +105 -46
- package/dist/billing/modules/quota/pages/QuotaTemplateEditPage.js.map +1 -1
- package/dist/billing/modules/subscriptions/hooks/useSubscriptions.d.ts +1 -1
- package/dist/billing/modules/subscriptions/hooks/useSubscriptions.d.ts.map +1 -1
- package/dist/billing/modules/subscriptions/hooks/useSubscriptions.js +16 -15
- package/dist/billing/modules/subscriptions/hooks/useSubscriptions.js.map +1 -1
- package/dist/billing/modules/subscriptions/pages/SubscriptionsListPage.d.ts.map +1 -1
- package/dist/billing/modules/subscriptions/pages/SubscriptionsListPage.js +158 -165
- package/dist/billing/modules/subscriptions/pages/SubscriptionsListPage.js.map +1 -1
- package/dist/billing/modules/usage/hooks/useUsage.d.ts +3 -0
- package/dist/billing/modules/usage/hooks/useUsage.d.ts.map +1 -1
- package/dist/billing/modules/usage/hooks/useUsage.js +4 -1
- package/dist/billing/modules/usage/hooks/useUsage.js.map +1 -1
- package/dist/billing/modules/usage/pages/UsagePage.d.ts.map +1 -1
- package/dist/billing/modules/usage/pages/UsagePage.js +44 -22
- package/dist/billing/modules/usage/pages/UsagePage.js.map +1 -1
- package/dist/billing/shared/types/graphql.d.ts +2 -0
- package/dist/billing/shared/types/graphql.d.ts.map +1 -1
- package/dist/billing/shared/types/graphql.js.map +1 -1
- package/dist/generated/global-operations.d.ts +51 -0
- package/dist/generated/global-operations.d.ts.map +1 -1
- package/dist/generated/global-operations.js +313 -293
- package/dist/generated/global-operations.js.map +1 -1
- package/dist/generated/global-types.d.ts +350 -1392
- package/dist/generated/global-types.d.ts.map +1 -1
- package/dist/generated/global-types.js.map +1 -1
- package/dist/generated/wspace-types.d.ts +2907 -11652
- package/dist/generated/wspace-types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql.js","names":[],"sources":["../../../../src/billing/shared/types/graphql.ts"],"sourcesContent":["/**\n * GraphQL Types for Billing Module\n * Auto-generated types matching the backend billing service schema\n */\n\n// ============================================================================\n// Enums\n// ============================================================================\n\nexport enum SubscriptionStatus {\n ACTIVE = 'active',\n CANCELED = 'canceled',\n EXPIRED = 'expired',\n UPGRADED = 'upgraded',\n}\n\nexport enum InvoiceStatus {\n DRAFT = 'DRAFT',\n OPEN = 'OPEN',\n PAID = 'PAID',\n VOID = 'VOID',\n UNCOLLECTIBLE = 'UNCOLLECTIBLE',\n}\n\nexport enum PaymentStatus {\n PENDING = 'PENDING',\n SUCCEEDED = 'SUCCEEDED',\n FAILED = 'FAILED',\n CANCELED = 'CANCELED',\n REFUNDED = 'REFUNDED',\n}\n\nexport enum ChargeStatus {\n PENDING = 'PENDING',\n SUCCEEDED = 'SUCCEEDED',\n FAILED = 'FAILED',\n REFUNDED = 'REFUNDED',\n}\n\nexport enum RefundStatus {\n PENDING = 'PENDING',\n SUCCEEDED = 'SUCCEEDED',\n FAILED = 'FAILED',\n CANCELED = 'CANCELED',\n}\n\nexport enum PaymentMethodType {\n CREDIT_CARD = 'CREDIT_CARD',\n DEBIT_CARD = 'DEBIT_CARD',\n BANK_TRANSFER = 'BANK_TRANSFER',\n PAYPAL = 'PAYPAL',\n CRYPTO = 'CRYPTO',\n WALLET = 'WALLET',\n NETBANKING = 'NETBANKING',\n}\n\nexport enum PlanDuration {\n MONTHLY = 'monthly',\n YEARLY = 'yearly',\n}\n\nexport enum PricingModel {\n FLAT_RATE = 'FLAT_RATE',\n PER_SEAT = 'PER_SEAT',\n}\n\nexport enum QuotaType {\n POOLED = 'POOLED',\n PRODUCT_SPECIFIC = 'PRODUCT_SPECIFIC',\n}\n\nexport enum QuotaResetPeriod {\n NEVER = 'NEVER',\n DAILY = 'DAILY',\n MONTHLY = 'MONTHLY',\n}\n\nexport enum QuotaStatus {\n HEALTHY = 'HEALTHY',\n WARNING = 'WARNING',\n CRITICAL = 'CRITICAL',\n EXHAUSTED = 'EXHAUSTED',\n INACTIVE = 'INACTIVE',\n}\n\nexport enum TransactionType {\n PAYMENT = 'payment',\n REFUND = 'refund',\n ADJUSTMENT = 'adjustment',\n}\n\nexport enum TransactionStatus {\n PENDING = 'pending',\n SUCCESS = 'success',\n FAILED = 'failed',\n}\n\nexport enum CreditTransactionType {\n PURCHASE = 'purchase',\n USAGE = 'usage',\n ADJUSTMENT = 'adjustment',\n GRANTED = 'granted',\n}\n\nexport enum CreditTransactionStatus {\n PENDING = 'pending',\n SUCCESS = 'success',\n FAILED = 'failed',\n REFUND = 'refund',\n}\n\nexport enum EntitlementAccessType {\n FREE_ACCESS = 'FREE_ACCESS',\n DISCOUNT = 'DISCOUNT',\n}\n\nexport enum PurchaseType {\n PLAN = 'PLAN',\n ADDON = 'ADDON',\n CREDITS = 'CREDITS',\n}\n\nexport enum PaymentProviderPreference {\n AUTO = 'AUTO',\n STRIPE = 'STRIPE',\n RAZORPAY = 'RAZORPAY',\n}\n\nexport enum AnalyticsPeriod {\n LAST_7_DAYS = 'LAST_7_DAYS',\n LAST_30_DAYS = 'LAST_30_DAYS',\n LAST_90_DAYS = 'LAST_90_DAYS',\n LAST_MONTH = 'LAST_MONTH',\n CURRENT_MONTH = 'CURRENT_MONTH',\n}\n\nexport enum UsageMetricType {\n USERS = 'USERS',\n STORAGE = 'STORAGE',\n API_CALLS = 'API_CALLS',\n BANDWIDTH = 'BANDWIDTH',\n REQUESTS = 'REQUESTS',\n COMPUTE_HOURS = 'COMPUTE_HOURS',\n TRANSACTIONS = 'TRANSACTIONS',\n CUSTOM = 'CUSTOM',\n}\n\n// ============================================================================\n// Core Types\n// ============================================================================\n\nexport interface BillingAccount {\n id: string;\n orgId: string;\n name: string;\n email: string;\n billingEmail?: string;\n currency: string;\n creditAmount: number;\n stripeCustomerId?: string;\n razorpayCustomerId?: string;\n defaultPaymentMethod?: string;\n taxId?: string;\n isActive: boolean;\n isDefault?: boolean;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n subscriptions?: BillingSubscription[];\n paymentMethods?: PaymentMethod[];\n creditTransactions?: CreditTransaction[];\n quotaAssignments?: QuotaAssignment[];\n billingAddresses?: BillingAddress[];\n transactions?: Transaction[];\n}\n\nexport interface BillingAddress {\n id: string;\n billingAccountId: string;\n orgId: string;\n line1: string;\n line2?: string;\n city: string;\n state?: string;\n postalCode: string;\n country: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Plan Types\n// ============================================================================\n\nexport interface Plan {\n id: string;\n productID: string;\n name: string;\n price: number;\n currency: string;\n currencyPrices?: Record<string, number>;\n geoPricingOverrides?: GeoPricingOverrideInput[];\n duration: PlanDuration;\n pricingModel?: PricingModel;\n pricePerSeat?: number;\n minSeats?: number;\n maxSeats?: number;\n isActive: boolean;\n features?: SubscriptionFeatures[];\n itemEntitlements?: SubscriptionEntitlement[];\n subscriptions?: BillingSubscription[];\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n product?: Product;\n}\n\nexport interface SubscriptionFeatures {\n id: string;\n planId?: string;\n addonId?: string;\n quotaId?: string;\n plan?: Plan;\n addon?: Addon;\n quota?: Quota;\n context?: Record<string, unknown>;\n}\n\nexport interface SubscriptionEntitlement {\n id: string;\n planId: string;\n itemId: string;\n accessType: EntitlementAccessType;\n discountPercentage?: number;\n plan?: Plan;\n item?: { id: string };\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Subscription Types\n// ============================================================================\n\nexport interface BillingSubscription {\n id: string;\n billingAccountId: string;\n planId: string;\n status: SubscriptionStatus;\n startDate: string;\n endDate: string;\n autoRenewal: boolean;\n recurrence: boolean;\n seatCount?: number;\n lastSeatChangeAt?: string;\n lastBillingDate?: string;\n nextBillingDate?: string;\n lastRenewalDate?: string;\n canceledAt?: string;\n canceledBy?: string;\n cancellationReason?: string;\n stripeSubscriptionId?: string;\n razorpaySubscriptionId?: string;\n paymentGateway?: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n plan?: Plan;\n billingAccount?: BillingAccount;\n addonSubscriptions?: AddonSubscription[];\n quotas?: QuotaAssignment[];\n transactions?: Transaction[];\n history?: SubscriptionHistory[];\n}\n\nexport interface SubscriptionHistory {\n id: string;\n subscriptionId: string;\n fromStatus: SubscriptionStatus;\n toStatus: SubscriptionStatus;\n reason?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n}\n\n// ============================================================================\n// Addon Types\n// ============================================================================\n\nexport interface Addon {\n id: string;\n productID: string;\n name: string;\n price: number;\n currency: string;\n currencyPrices?: Record<string, number>;\n geoPricingOverrides?: GeoPricingOverrideInput[];\n duration: PlanDuration;\n isActive: boolean;\n features?: SubscriptionFeatures[];\n addonSubscriptions?: AddonSubscription[];\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n product?: Product;\n}\n\nexport interface AddonSubscription {\n id: string;\n addonId: string;\n currentSubscriptionId: string;\n quantity: number;\n startDate: string;\n endDate: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n addon?: Addon;\n currentSubscription?: BillingSubscription;\n}\n\n// ============================================================================\n// Invoice Types\n// ============================================================================\n\nexport interface Invoice {\n id: string;\n orgId: string;\n billingAccountId?: string;\n subscriptionId?: string;\n paymentId?: string;\n invoiceNumber: string;\n status: InvoiceStatus;\n subtotal: number;\n tax: number;\n total: number;\n amountPaid: number;\n currency: string;\n dueDate?: string;\n paidAt?: string;\n gatewayInvoiceId?: string;\n invoiceUrl?: string;\n pdfUrl?: string;\n itemDescription?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n items: InvoiceItem[];\n subscription?: BillingSubscription;\n payment?: Payment;\n}\n\nexport interface InvoiceItem {\n id: string;\n invoiceId: string;\n description: string;\n quantity: number;\n unitPrice: number;\n amount: number;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n}\n\n// ============================================================================\n// Payment Types\n// ============================================================================\n\nexport interface Payment {\n id: string;\n orgId: string;\n transactionId?: string;\n amount: number;\n currency: string;\n status: PaymentStatus;\n method: PaymentMethodType;\n provider?: string;\n gatewayPaymentId?: string;\n gatewayOrderId?: string;\n failureReason?: string;\n paidAt?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n invoice?: Invoice;\n}\n\nexport interface PaymentMethod {\n id: string;\n orgId: string;\n billingAccountId?: string;\n type: PaymentMethodType;\n brand?: string;\n last4?: string;\n expiryMonth?: number;\n expiryYear?: number;\n isDefault: boolean;\n isVerified: boolean;\n verifiedAt?: string;\n stripeCustomerId?: string;\n stripePaymentMethodId?: string;\n razorpayCustomerId?: string;\n razorpayPaymentMethodId?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n billingAccount?: BillingAccount;\n transactions?: Transaction[];\n}\n\nexport interface Charge {\n id: string;\n orgId: string;\n amount: number;\n currency: string;\n status: ChargeStatus;\n description?: string;\n provider?: string;\n gatewayChargeId?: string;\n gatewayPaymentId?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n refunds: Refund[];\n}\n\nexport interface Refund {\n id: string;\n chargeId: string;\n amount: number;\n currency: string;\n status: RefundStatus;\n reason?: string;\n provider?: string;\n gatewayRefundId?: string;\n processedAt?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n charge?: Charge;\n}\n\n// ============================================================================\n// Transaction Types\n// ============================================================================\n\nexport interface Transaction {\n id: string;\n billingAccountId: string;\n amount: number;\n currency: string;\n type: TransactionType;\n status: TransactionStatus;\n description?: string;\n stripePaymentId?: string;\n razorpayPaymentId?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Credit Types\n// ============================================================================\n\nexport interface CreditTransaction {\n id: string;\n billingAccountId: string;\n productId: string;\n amount: number;\n type: CreditTransactionType;\n status: CreditTransactionStatus;\n fromType?: CreditTransactionType | null;\n payoutRequestId?: string | null;\n entityType?: string;\n entityId?: string;\n transactionId?: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n billingAccount?: BillingAccount;\n transaction?: Transaction;\n}\n\nexport interface CreditBalanceByType {\n purchased: number;\n earned: number;\n granted: number;\n withdrawable: number;\n total: number;\n}\n\nexport interface CreditNote {\n id: string;\n orgId: string;\n invoiceId?: string;\n number: string;\n amount: number;\n currency: string;\n reason?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface CreditRate {\n id: string;\n rateUSD: number;\n effectiveFrom: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Quota Types\n// ============================================================================\n\nexport interface Quota {\n id: string;\n name: string;\n limits: Record<string, unknown>;\n quotaType: QuotaType;\n reusable: boolean;\n resetPeriod: QuotaResetPeriod;\n isActive: boolean;\n subscriptions?: SubscriptionFeatures[];\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface QuotaAssignment {\n id: string;\n billingAccountId?: string;\n subscriptionId?: string;\n name: string;\n limits: Record<string, unknown>;\n quotaType: QuotaType;\n reusable: boolean;\n currentUsageSum: number;\n totalUsageCount: number;\n endtime: string;\n context?: Record<string, unknown>;\n createdAt: string;\n // Relations\n billingAccount?: BillingAccount;\n subscription?: BillingSubscription;\n usages?: Usage[];\n recentUsages?: Usage[];\n usageAnalytics?: QuotaUsageAnalytics;\n}\n\nexport interface QuotaAssignmentWithAnalytics extends QuotaAssignment {\n status: QuotaStatus;\n healthScore: number;\n usagePercentage: number;\n limitLeft: number;\n analytics: QuotaUsageAnalytics;\n}\n\nexport interface QuotaAssignmentUsageSummary {\n id: string;\n name: string;\n quotaType: QuotaType;\n reusable: boolean;\n limit: number;\n limitLeft: number;\n used: number;\n usagePercentage: number;\n noLimit: boolean;\n subscriptionId?: string;\n recentUsages: Usage[];\n createdAt: string;\n endtime: string;\n}\n\n// ============================================================================\n// Usage Types\n// ============================================================================\n\nexport interface Usage {\n id: string;\n quotaAssignmentId: string;\n userId?: string;\n productId?: string;\n amount: number;\n description?: string;\n tags?: Record<string, unknown>;\n timestamp: string;\n lastUpdated: string;\n context?: Record<string, unknown>;\n // Relations\n quotaAssignment?: QuotaAssignment;\n user?: { id: string };\n}\n\nexport interface UsageRecord {\n id: string;\n orgId: string;\n subscriptionId?: string;\n metricType: UsageMetricType;\n quantity: number;\n unitCost?: number;\n totalCost?: number;\n timestamp: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n}\n\nexport interface DailyUsage {\n date: string;\n usage: number;\n count: number;\n}\n\nexport interface PeakUsage {\n peakDate: string;\n maxDailyUsage: number;\n peakHour?: number;\n}\n\nexport interface UsageTrends {\n averageDailyUsage?: number;\n growthRate?: number;\n predictedUsage?: number;\n}\n\nexport interface UsageByType {\n resourceType: string;\n usage: number;\n count: number;\n percentage: number;\n}\n\nexport interface QuotaUsageAnalytics {\n dailyUsage: DailyUsage[];\n usageByType: UsageByType[];\n peakUsage?: PeakUsage;\n trends?: UsageTrends;\n}\n\nexport interface QuotaUsageSummary {\n quotaId: string;\n quotaName: string;\n usage: number;\n limit: number;\n percentage: number;\n status: QuotaStatus;\n}\n\nexport interface UsageActivity {\n id: string;\n quotaName: string;\n amount: number;\n description: string;\n tags?: Record<string, unknown>;\n timestamp: string;\n}\n\nexport interface UsageDashboard {\n totalUsage: number;\n totalQuotas: number;\n activeQuotas: number;\n healthyQuotas: number;\n warningQuotas: number;\n criticalQuotas: number;\n exhaustedQuotas: number;\n topUsageByQuota: QuotaUsageSummary[];\n recentActivities: UsageActivity[];\n overallTrends: UsageTrends;\n}\n\nexport interface BillingAccountQuotasSummary {\n billingAccountId: string;\n totalUsage: number;\n totalLimit: number;\n pooledQuotas: QuotaAssignmentUsageSummary[];\n subscriptionQuotas: QuotaAssignmentUsageSummary[];\n}\n\n// ============================================================================\n// Other Types\n// ============================================================================\n\nexport interface Product {\n id: string;\n name: string;\n url?: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface Discount {\n id: string;\n code: string;\n type: string;\n value: number;\n currency?: string;\n maxUses?: number;\n usedCount: number;\n validFrom: string;\n validUntil?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n transactions?: Transaction[];\n}\n\nexport interface TaxRate {\n id: string;\n country: string;\n state?: string;\n rate: number;\n description?: string;\n active: boolean;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface BillingNotification {\n id: string;\n orgId: string;\n type: string;\n message: string;\n sentAt?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n}\n\n// ============================================================================\n// Payment Initiation Types\n// ============================================================================\n\nexport interface InitiatePaymentInput {\n billingAccountId: string;\n purchaseType: PurchaseType;\n amount: number;\n currency: string;\n planId?: string;\n addonId?: string;\n quantity?: number;\n // Multiple addons support (cart checkout)\n addonIds?: string[];\n quantities?: number[];\n creditAmount?: number;\n productId?: string;\n provider?: PaymentProviderPreference;\n // Saved card support\n paymentMethodId?: string;\n saveCard?: boolean;\n // Plan change/upgrade support\n upgradeFromSubscriptionId?: string;\n // Plan downgrade — old sub auto-renewal cancelled, runs to natural expiry\n downgradeFromSubscriptionId?: string;\n metadata?: Record<string, unknown>;\n // Auto-renewal (for plan purchases)\n autoRenew?: boolean;\n autoRenewPaymentMethodId?: string;\n}\n\nexport interface InitiatePaymentResponse {\n success: boolean;\n provider: string;\n paymentId?: string;\n clientSecret?: string;\n orderId?: string;\n razorpayKeyId?: string;\n razorpayCustomerId?: string;\n prefillName?: string;\n prefillEmail?: string;\n prefillContact?: string;\n subtotal: number;\n taxAmount: number;\n taxRate: number;\n taxType: string;\n taxBreakdown?: Record<string, unknown>;\n jurisdiction: string;\n total: number;\n currency: string;\n error?: string;\n}\n\nexport interface VerifyPaymentMethodInput {\n billingAccountId: string;\n currency: string;\n provider?: PaymentProviderPreference;\n setAsDefault?: boolean;\n metadata?: Record<string, unknown>;\n}\n\nexport interface VerifyPaymentMethodResponse {\n success: boolean;\n provider: string;\n orderId?: string;\n razorpayKeyId?: string;\n razorpayCustomerId?: string;\n clientSecret?: string;\n amount: number;\n currency: string;\n prefillName?: string;\n prefillEmail?: string;\n prefillContact?: string;\n error?: string;\n}\n\n// ============================================================================\n// Pagination Types\n// ============================================================================\n\nexport interface PaginationInput {\n page?: number;\n limit?: number;\n offset?: number;\n cursor?: string;\n}\n\nexport interface PaginatedResponse<T> {\n items: T[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n hasMore: boolean;\n}\n\nexport interface PaginatedCreditTransactions {\n creditTransactions: CreditTransaction[];\n page: number;\n pageSize: number;\n totalCount: number;\n hasMore: boolean;\n}\n\nexport interface PaginatedQuotaAssignments {\n quotaAssignments: QuotaAssignment[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n}\n\nexport interface PaginatedQuotaAssignmentsWithAnalytics {\n quotaAssignments: QuotaAssignmentWithAnalytics[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n}\n\nexport interface PaginatedUsages {\n usages: Usage[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n}\n\n// ============================================================================\n// Input Types\n// ============================================================================\n\nexport interface CreateBillingAccountInput {\n name: string;\n email: string;\n billingEmail?: string;\n currency?: string;\n taxId?: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface UpdateBillingAccountInput {\n id: string;\n name?: string;\n email?: string;\n billingEmail?: string;\n currency?: string;\n taxId?: string;\n isActive?: boolean;\n metadata?: Record<string, unknown>;\n}\n\nexport interface CreatePaymentMethodInput {\n billingAccountId: string;\n type: PaymentMethodType;\n brand?: string;\n last4?: string;\n expiryMonth?: number;\n expiryYear?: number;\n isDefault?: boolean;\n stripePaymentMethodId?: string;\n razorpayPaymentMethodId?: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface SetBillingAddressInput {\n billingAccountId: string;\n line1: string;\n line2?: string;\n city: string;\n state?: string;\n postalCode: string;\n country: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface CreatePlanInput {\n productId: string;\n name: string;\n price: number;\n currency?: string;\n duration: PlanDuration;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface UpdatePlanInput {\n id: string;\n name?: string;\n price?: number;\n currency?: string;\n duration?: PlanDuration;\n isActive?: boolean;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface GeoPricingOverrideInput {\n country?: string;\n state?: string;\n region?: string;\n currency: string;\n amount?: number;\n perSeatAmount?: number;\n}\n\nexport interface CurrencyPriceOverrideInput {\n currency: string;\n amount: number;\n perSeatAmount?: number;\n}\n\nexport interface CreateAddonInput {\n productId: string;\n name: string;\n price: number;\n currency: string;\n duration: PlanDuration;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface UpdateAddonInput {\n id: string;\n name?: string;\n price?: number;\n currency?: string;\n duration?: PlanDuration;\n isActive?: boolean;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface CreateQuotaInput {\n name: string;\n limits: Record<string, unknown>;\n quotaType?: QuotaType;\n reusable: boolean;\n resetPeriod?: QuotaResetPeriod;\n}\n\nexport interface UpdateQuotaInput {\n id: string;\n name?: string;\n limits?: Record<string, unknown>;\n reusable?: boolean;\n isActive: boolean;\n resetPeriod?: QuotaResetPeriod;\n}\n\nexport interface SpendCreditsInput {\n billingAccountId: string;\n planId?: string;\n storeItemId?: string;\n isAnnual?: boolean;\n addOnIds?: { id: string; quantity?: number }[];\n upgradeFromSubscriptionId?: string;\n subscriptionId?: string;\n /** Seat count for PER_SEAT plans. Credits charged = pricePerSeat × seatCount. */\n seatCount?: number;\n}\n\nexport interface CancelSubscriptionInput {\n billingAccountId: string;\n subscriptionId: string;\n reason?: string;\n canceledBy?: string;\n}\n\nexport interface UpdateSubscriptionSeatsInput {\n subscriptionId: string;\n seatCount: number;\n}\n\nexport interface CreateEntitlementInput {\n planId: string;\n itemId: string;\n accessType: EntitlementAccessType;\n discountPercentage?: number;\n}\n\nexport interface UpdateEntitlementInput {\n id: string;\n accessType?: EntitlementAccessType;\n discountPercentage?: number;\n}\n\n// ============================================================================\n// Filter & Sort Types\n// ============================================================================\n\nexport interface DateRangeInput {\n from?: string;\n to?: string;\n}\n\nexport interface AmountRangeInput {\n min?: number;\n max?: number;\n}\n\nexport interface ContextFilterInput {\n orgId?: string;\n userId?: string;\n workspaceId?: string;\n organizationId?: string;\n projectId?: string;\n}\n\nexport interface ContextInput {\n orgId?: string;\n userId?: string;\n workspaceId?: string;\n organizationId?: string;\n projectId?: string;\n custom?: Record<string, unknown>;\n}\n"],"mappings":";AASA,IAAY,IAAL,yBAAA,GAAA;QACL,EAAA,SAAA,UACA,EAAA,WAAA,YACA,EAAA,UAAA,WACA,EAAA,WAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,SACA,EAAA,OAAA,QACA,EAAA,OAAA,QACA,EAAA,OAAA,QACA,EAAA,gBAAA;KACD,EAkCW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,SAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,YAAA,aACA,EAAA,WAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,SAAA,UACA,EAAA,mBAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,SACA,EAAA,QAAA,SACA,EAAA,UAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA,WACA,EAAA,WAAA,YACA,EAAA,YAAA,aACA,EAAA,WAAA;KACD,EAQW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA,WACA,EAAA,SAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,WAAA,YACA,EAAA,QAAA,SACA,EAAA,aAAA,cACA,EAAA,UAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA,WACA,EAAA,SAAA,UACA,EAAA,SAAA;KACD,EAaW,IAAL,yBAAA,GAAA;QACL,EAAA,OAAA,QACA,EAAA,SAAA,UACA,EAAA,WAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,cAAA,eACA,EAAA,eAAA,gBACA,EAAA,eAAA,gBACA,EAAA,aAAA,cACA,EAAA,gBAAA;KACD"}
|
|
1
|
+
{"version":3,"file":"graphql.js","names":[],"sources":["../../../../src/billing/shared/types/graphql.ts"],"sourcesContent":["/**\n * GraphQL Types for Billing Module\n * Auto-generated types matching the backend billing service schema\n */\n\n// ============================================================================\n// Enums\n// ============================================================================\n\nexport enum SubscriptionStatus {\n ACTIVE = 'active',\n CANCELED = 'canceled',\n EXPIRED = 'expired',\n UPGRADED = 'upgraded',\n}\n\nexport enum InvoiceStatus {\n DRAFT = 'DRAFT',\n OPEN = 'OPEN',\n PAID = 'PAID',\n VOID = 'VOID',\n UNCOLLECTIBLE = 'UNCOLLECTIBLE',\n}\n\nexport enum PaymentStatus {\n PENDING = 'PENDING',\n SUCCEEDED = 'SUCCEEDED',\n FAILED = 'FAILED',\n CANCELED = 'CANCELED',\n REFUNDED = 'REFUNDED',\n}\n\nexport enum ChargeStatus {\n PENDING = 'PENDING',\n SUCCEEDED = 'SUCCEEDED',\n FAILED = 'FAILED',\n REFUNDED = 'REFUNDED',\n}\n\nexport enum RefundStatus {\n PENDING = 'PENDING',\n SUCCEEDED = 'SUCCEEDED',\n FAILED = 'FAILED',\n CANCELED = 'CANCELED',\n}\n\nexport enum PaymentMethodType {\n CREDIT_CARD = 'CREDIT_CARD',\n DEBIT_CARD = 'DEBIT_CARD',\n BANK_TRANSFER = 'BANK_TRANSFER',\n PAYPAL = 'PAYPAL',\n CRYPTO = 'CRYPTO',\n WALLET = 'WALLET',\n NETBANKING = 'NETBANKING',\n}\n\nexport enum PlanDuration {\n MONTHLY = 'monthly',\n YEARLY = 'yearly',\n}\n\nexport enum PricingModel {\n FLAT_RATE = 'FLAT_RATE',\n PER_SEAT = 'PER_SEAT',\n}\n\nexport enum QuotaType {\n POOLED = 'POOLED',\n PRODUCT_SPECIFIC = 'PRODUCT_SPECIFIC',\n}\n\nexport enum QuotaResetPeriod {\n NEVER = 'NEVER',\n DAILY = 'DAILY',\n MONTHLY = 'MONTHLY',\n}\n\nexport enum QuotaStatus {\n HEALTHY = 'HEALTHY',\n WARNING = 'WARNING',\n CRITICAL = 'CRITICAL',\n EXHAUSTED = 'EXHAUSTED',\n INACTIVE = 'INACTIVE',\n}\n\nexport enum TransactionType {\n PAYMENT = 'payment',\n REFUND = 'refund',\n ADJUSTMENT = 'adjustment',\n}\n\nexport enum TransactionStatus {\n PENDING = 'pending',\n SUCCESS = 'success',\n FAILED = 'failed',\n}\n\nexport enum CreditTransactionType {\n PURCHASE = 'purchase',\n USAGE = 'usage',\n ADJUSTMENT = 'adjustment',\n GRANTED = 'granted',\n}\n\nexport enum CreditTransactionStatus {\n PENDING = 'pending',\n SUCCESS = 'success',\n FAILED = 'failed',\n REFUND = 'refund',\n}\n\nexport enum EntitlementAccessType {\n FREE_ACCESS = 'FREE_ACCESS',\n DISCOUNT = 'DISCOUNT',\n}\n\nexport enum PurchaseType {\n PLAN = 'PLAN',\n ADDON = 'ADDON',\n CREDITS = 'CREDITS',\n}\n\nexport enum PaymentProviderPreference {\n AUTO = 'AUTO',\n STRIPE = 'STRIPE',\n RAZORPAY = 'RAZORPAY',\n}\n\nexport enum AnalyticsPeriod {\n LAST_7_DAYS = 'LAST_7_DAYS',\n LAST_30_DAYS = 'LAST_30_DAYS',\n LAST_90_DAYS = 'LAST_90_DAYS',\n LAST_MONTH = 'LAST_MONTH',\n CURRENT_MONTH = 'CURRENT_MONTH',\n}\n\nexport enum UsageMetricType {\n USERS = 'USERS',\n STORAGE = 'STORAGE',\n API_CALLS = 'API_CALLS',\n BANDWIDTH = 'BANDWIDTH',\n REQUESTS = 'REQUESTS',\n COMPUTE_HOURS = 'COMPUTE_HOURS',\n TRANSACTIONS = 'TRANSACTIONS',\n CUSTOM = 'CUSTOM',\n}\n\n// ============================================================================\n// Core Types\n// ============================================================================\n\nexport interface BillingAccount {\n id: string;\n orgId: string;\n name: string;\n email: string;\n billingEmail?: string;\n currency: string;\n creditAmount: number;\n stripeCustomerId?: string;\n razorpayCustomerId?: string;\n defaultPaymentMethod?: string;\n taxId?: string;\n isActive: boolean;\n isDefault?: boolean;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n subscriptions?: BillingSubscription[];\n paymentMethods?: PaymentMethod[];\n creditTransactions?: CreditTransaction[];\n quotaAssignments?: QuotaAssignment[];\n billingAddresses?: BillingAddress[];\n transactions?: Transaction[];\n}\n\nexport interface BillingAddress {\n id: string;\n billingAccountId: string;\n orgId: string;\n line1: string;\n line2?: string;\n city: string;\n state?: string;\n postalCode: string;\n country: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Plan Types\n// ============================================================================\n\nexport interface Plan {\n id: string;\n productID: string;\n name: string;\n price: number;\n currency: string;\n currencyPrices?: Record<string, number>;\n geoPricingOverrides?: GeoPricingOverrideInput[];\n duration: PlanDuration;\n pricingModel?: PricingModel;\n pricePerSeat?: number;\n minSeats?: number;\n maxSeats?: number;\n isActive: boolean;\n features?: SubscriptionFeatures[];\n itemEntitlements?: SubscriptionEntitlement[];\n subscriptions?: BillingSubscription[];\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n product?: Product;\n}\n\nexport interface SubscriptionFeatures {\n id: string;\n planId?: string;\n addonId?: string;\n quotaId?: string;\n plan?: Plan;\n addon?: Addon;\n quota?: Quota;\n context?: Record<string, unknown>;\n}\n\nexport interface SubscriptionEntitlement {\n id: string;\n planId: string;\n itemId: string;\n accessType: EntitlementAccessType;\n discountPercentage?: number;\n plan?: Plan;\n item?: { id: string };\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Subscription Types\n// ============================================================================\n\nexport interface BillingSubscription {\n id: string;\n billingAccountId: string;\n planId: string;\n status: SubscriptionStatus;\n startDate: string;\n endDate: string;\n autoRenewal: boolean;\n recurrence: boolean;\n seatCount?: number;\n lastSeatChangeAt?: string;\n lastBillingDate?: string;\n nextBillingDate?: string;\n lastRenewalDate?: string;\n canceledAt?: string;\n canceledBy?: string;\n cancellationReason?: string;\n stripeSubscriptionId?: string;\n razorpaySubscriptionId?: string;\n paymentGateway?: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n plan?: Plan;\n billingAccount?: BillingAccount;\n addonSubscriptions?: AddonSubscription[];\n quotas?: QuotaAssignment[];\n transactions?: Transaction[];\n history?: SubscriptionHistory[];\n}\n\nexport interface SubscriptionHistory {\n id: string;\n subscriptionId: string;\n fromStatus: SubscriptionStatus;\n toStatus: SubscriptionStatus;\n reason?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n}\n\n// ============================================================================\n// Addon Types\n// ============================================================================\n\nexport interface Addon {\n id: string;\n productID: string;\n name: string;\n price: number;\n currency: string;\n currencyPrices?: Record<string, number>;\n geoPricingOverrides?: GeoPricingOverrideInput[];\n duration: PlanDuration;\n isActive: boolean;\n features?: SubscriptionFeatures[];\n addonSubscriptions?: AddonSubscription[];\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n product?: Product;\n}\n\nexport interface AddonSubscription {\n id: string;\n addonId: string;\n currentSubscriptionId: string;\n quantity: number;\n startDate: string;\n endDate: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n addon?: Addon;\n currentSubscription?: BillingSubscription;\n}\n\n// ============================================================================\n// Invoice Types\n// ============================================================================\n\nexport interface Invoice {\n id: string;\n orgId: string;\n billingAccountId?: string;\n subscriptionId?: string;\n paymentId?: string;\n invoiceNumber: string;\n status: InvoiceStatus;\n subtotal: number;\n tax: number;\n total: number;\n amountPaid: number;\n currency: string;\n dueDate?: string;\n paidAt?: string;\n gatewayInvoiceId?: string;\n invoiceUrl?: string;\n pdfUrl?: string;\n itemDescription?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n items: InvoiceItem[];\n subscription?: BillingSubscription;\n payment?: Payment;\n}\n\nexport interface InvoiceItem {\n id: string;\n invoiceId: string;\n description: string;\n quantity: number;\n unitPrice: number;\n amount: number;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n}\n\n// ============================================================================\n// Payment Types\n// ============================================================================\n\nexport interface Payment {\n id: string;\n orgId: string;\n transactionId?: string;\n amount: number;\n currency: string;\n status: PaymentStatus;\n method: PaymentMethodType;\n provider?: string;\n gatewayPaymentId?: string;\n gatewayOrderId?: string;\n failureReason?: string;\n paidAt?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n invoice?: Invoice;\n}\n\nexport interface PaymentMethod {\n id: string;\n orgId: string;\n billingAccountId?: string;\n type: PaymentMethodType;\n brand?: string;\n last4?: string;\n expiryMonth?: number;\n expiryYear?: number;\n isDefault: boolean;\n isVerified: boolean;\n verifiedAt?: string;\n stripeCustomerId?: string;\n stripePaymentMethodId?: string;\n razorpayCustomerId?: string;\n razorpayPaymentMethodId?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n billingAccount?: BillingAccount;\n transactions?: Transaction[];\n}\n\nexport interface Charge {\n id: string;\n orgId: string;\n amount: number;\n currency: string;\n status: ChargeStatus;\n description?: string;\n provider?: string;\n gatewayChargeId?: string;\n gatewayPaymentId?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n refunds: Refund[];\n}\n\nexport interface Refund {\n id: string;\n chargeId: string;\n amount: number;\n currency: string;\n status: RefundStatus;\n reason?: string;\n provider?: string;\n gatewayRefundId?: string;\n processedAt?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n charge?: Charge;\n}\n\n// ============================================================================\n// Transaction Types\n// ============================================================================\n\nexport interface Transaction {\n id: string;\n billingAccountId: string;\n amount: number;\n currency: string;\n type: TransactionType;\n status: TransactionStatus;\n description?: string;\n stripePaymentId?: string;\n razorpayPaymentId?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Credit Types\n// ============================================================================\n\nexport interface CreditTransaction {\n id: string;\n billingAccountId: string;\n productId: string;\n amount: number;\n type: CreditTransactionType;\n status: CreditTransactionStatus;\n fromType?: CreditTransactionType | null;\n payoutRequestId?: string | null;\n entityType?: string;\n entityId?: string;\n transactionId?: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n // Relations\n billingAccount?: BillingAccount;\n transaction?: Transaction;\n}\n\nexport interface CreditBalanceByType {\n purchased: number;\n earned: number;\n granted: number;\n withdrawable: number;\n total: number;\n}\n\nexport interface CreditNote {\n id: string;\n orgId: string;\n invoiceId?: string;\n number: string;\n amount: number;\n currency: string;\n reason?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface CreditRate {\n id: string;\n rateUSD: number;\n effectiveFrom: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\n// ============================================================================\n// Quota Types\n// ============================================================================\n\nexport interface Quota {\n id: string;\n name: string;\n limits: Record<string, unknown>;\n quotaType: QuotaType;\n reusable: boolean;\n resetPeriod: QuotaResetPeriod;\n isActive: boolean;\n subscriptions?: SubscriptionFeatures[];\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface QuotaAssignment {\n id: string;\n billingAccountId?: string;\n subscriptionId?: string;\n name: string;\n limits: Record<string, unknown>;\n quotaType: QuotaType;\n reusable: boolean;\n currentUsageSum: number;\n totalUsageCount: number;\n endtime: string;\n context?: Record<string, unknown>;\n createdAt: string;\n // Relations\n billingAccount?: BillingAccount;\n subscription?: BillingSubscription;\n usages?: Usage[];\n recentUsages?: Usage[];\n usageAnalytics?: QuotaUsageAnalytics;\n}\n\nexport interface QuotaAssignmentWithAnalytics extends QuotaAssignment {\n status: QuotaStatus;\n healthScore: number;\n usagePercentage: number;\n limitLeft: number;\n analytics: QuotaUsageAnalytics;\n}\n\nexport interface QuotaAssignmentUsageSummary {\n id: string;\n name: string;\n quotaType: QuotaType;\n reusable: boolean;\n limit: number;\n limitLeft: number;\n used: number;\n usagePercentage: number;\n noLimit: boolean;\n subscriptionId?: string;\n recentUsages: Usage[];\n createdAt: string;\n endtime: string;\n}\n\n// ============================================================================\n// Usage Types\n// ============================================================================\n\nexport interface Usage {\n id: string;\n quotaAssignmentId: string;\n userId?: string;\n productId?: string;\n amount: number;\n description?: string;\n tags?: Record<string, unknown>;\n timestamp: string;\n lastUpdated: string;\n context?: Record<string, unknown>;\n // Relations\n quotaAssignment?: QuotaAssignment;\n user?: { id: string };\n}\n\nexport interface UsageRecord {\n id: string;\n orgId: string;\n subscriptionId?: string;\n metricType: UsageMetricType;\n quantity: number;\n unitCost?: number;\n totalCost?: number;\n timestamp: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n}\n\nexport interface DailyUsage {\n date: string;\n usage: number;\n count: number;\n}\n\nexport interface PeakUsage {\n peakDate: string;\n maxDailyUsage: number;\n peakHour?: number;\n}\n\nexport interface UsageTrends {\n averageDailyUsage?: number;\n growthRate?: number;\n predictedUsage?: number;\n}\n\nexport interface UsageByType {\n resourceType: string;\n usage: number;\n count: number;\n percentage: number;\n}\n\nexport interface QuotaUsageAnalytics {\n dailyUsage: DailyUsage[];\n usageByType: UsageByType[];\n peakUsage?: PeakUsage;\n trends?: UsageTrends;\n}\n\nexport interface QuotaUsageSummary {\n quotaId: string;\n quotaName: string;\n usage: number;\n limit: number;\n percentage: number;\n status: QuotaStatus;\n}\n\nexport interface UsageActivity {\n id: string;\n quotaName: string;\n amount: number;\n description: string;\n tags?: Record<string, unknown>;\n timestamp: string;\n}\n\nexport interface UsageDashboard {\n totalUsage: number;\n totalQuotas: number;\n activeQuotas: number;\n healthyQuotas: number;\n warningQuotas: number;\n criticalQuotas: number;\n exhaustedQuotas: number;\n topUsageByQuota: QuotaUsageSummary[];\n recentActivities: UsageActivity[];\n overallTrends: UsageTrends;\n}\n\nexport interface BillingAccountQuotasSummary {\n billingAccountId: string;\n totalUsage: number;\n totalLimit: number;\n pooledQuotas: QuotaAssignmentUsageSummary[];\n subscriptionQuotas: QuotaAssignmentUsageSummary[];\n}\n\n// ============================================================================\n// Other Types\n// ============================================================================\n\nexport interface Product {\n id: string;\n name: string;\n url?: string;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface Discount {\n id: string;\n code: string;\n type: string;\n value: number;\n currency?: string;\n maxUses?: number;\n usedCount: number;\n validFrom: string;\n validUntil?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n transactions?: Transaction[];\n}\n\nexport interface TaxRate {\n id: string;\n country: string;\n state?: string;\n rate: number;\n description?: string;\n active: boolean;\n context?: Record<string, unknown>;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface BillingNotification {\n id: string;\n orgId: string;\n type: string;\n message: string;\n sentAt?: string;\n metadata?: Record<string, unknown>;\n context?: Record<string, unknown>;\n createdAt: string;\n}\n\n// ============================================================================\n// Payment Initiation Types\n// ============================================================================\n\nexport interface InitiatePaymentInput {\n billingAccountId: string;\n purchaseType: PurchaseType;\n amount: number;\n currency: string;\n planId?: string;\n addonId?: string;\n quantity?: number;\n // Multiple addons support (cart checkout)\n addonIds?: string[];\n quantities?: number[];\n creditAmount?: number;\n productId?: string;\n provider?: PaymentProviderPreference;\n // Saved card support\n paymentMethodId?: string;\n saveCard?: boolean;\n // Plan change/upgrade support\n upgradeFromSubscriptionId?: string;\n // Plan downgrade — old sub auto-renewal cancelled, runs to natural expiry\n downgradeFromSubscriptionId?: string;\n metadata?: Record<string, unknown>;\n // Auto-renewal (for plan purchases)\n autoRenew?: boolean;\n autoRenewPaymentMethodId?: string;\n}\n\nexport interface InitiatePaymentResponse {\n success: boolean;\n provider: string;\n paymentId?: string;\n clientSecret?: string;\n orderId?: string;\n razorpayKeyId?: string;\n razorpayCustomerId?: string;\n prefillName?: string;\n prefillEmail?: string;\n prefillContact?: string;\n subtotal: number;\n taxAmount: number;\n taxRate: number;\n taxType: string;\n taxBreakdown?: Record<string, unknown>;\n jurisdiction: string;\n total: number;\n currency: string;\n error?: string;\n}\n\nexport interface VerifyPaymentMethodInput {\n billingAccountId: string;\n currency: string;\n provider?: PaymentProviderPreference;\n setAsDefault?: boolean;\n metadata?: Record<string, unknown>;\n}\n\nexport interface VerifyPaymentMethodResponse {\n success: boolean;\n provider: string;\n orderId?: string;\n razorpayKeyId?: string;\n razorpayCustomerId?: string;\n clientSecret?: string;\n amount: number;\n currency: string;\n prefillName?: string;\n prefillEmail?: string;\n prefillContact?: string;\n error?: string;\n}\n\n// ============================================================================\n// Pagination Types\n// ============================================================================\n\nexport interface PaginationInput {\n page?: number;\n limit?: number;\n offset?: number;\n cursor?: string;\n}\n\nexport interface PaginatedResponse<T> {\n items: T[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n hasMore: boolean;\n}\n\nexport interface PaginatedCreditTransactions {\n creditTransactions: CreditTransaction[];\n page: number;\n pageSize: number;\n totalCount: number;\n hasMore: boolean;\n}\n\nexport interface PaginatedQuotaAssignments {\n quotaAssignments: QuotaAssignment[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n}\n\nexport interface PaginatedQuotaAssignmentsWithAnalytics {\n quotaAssignments: QuotaAssignmentWithAnalytics[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n}\n\nexport interface PaginatedUsages {\n usages: Usage[];\n page: number;\n pageSize: number;\n totalCount: number;\n totalPages: number;\n}\n\n// ============================================================================\n// Input Types\n// ============================================================================\n\nexport interface CreateBillingAccountInput {\n name: string;\n email: string;\n billingEmail?: string;\n currency?: string;\n taxId?: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface UpdateBillingAccountInput {\n id: string;\n name?: string;\n email?: string;\n billingEmail?: string;\n currency?: string;\n taxId?: string;\n isActive?: boolean;\n metadata?: Record<string, unknown>;\n}\n\nexport interface CreatePaymentMethodInput {\n billingAccountId: string;\n type: PaymentMethodType;\n brand?: string;\n last4?: string;\n expiryMonth?: number;\n expiryYear?: number;\n isDefault?: boolean;\n stripePaymentMethodId?: string;\n razorpayPaymentMethodId?: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface SetBillingAddressInput {\n billingAccountId: string;\n line1: string;\n line2?: string;\n city: string;\n state?: string;\n postalCode: string;\n country: string;\n metadata?: Record<string, unknown>;\n}\n\nexport interface CreatePlanInput {\n productId: string;\n name: string;\n price: number;\n currency?: string;\n duration: PlanDuration;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface UpdatePlanInput {\n id: string;\n name?: string;\n price?: number;\n currency?: string;\n duration?: PlanDuration;\n isActive?: boolean;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface GeoPricingOverrideInput {\n country?: string;\n state?: string;\n region?: string;\n currency: string;\n amount?: number;\n perSeatAmount?: number;\n}\n\nexport interface CurrencyPriceOverrideInput {\n currency: string;\n amount: number;\n perSeatAmount?: number;\n}\n\nexport interface CreateAddonInput {\n productId: string;\n name: string;\n price: number;\n currency: string;\n duration: PlanDuration;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface UpdateAddonInput {\n id: string;\n name?: string;\n price?: number;\n currency?: string;\n duration?: PlanDuration;\n isActive?: boolean;\n quotas: { quotaId: string; quantity: number }[];\n geoPricingOverrides?: GeoPricingOverrideInput[];\n currencyPriceOverrides?: CurrencyPriceOverrideInput[];\n}\n\nexport interface CreateQuotaInput {\n name: string;\n limits: Record<string, unknown>;\n quotaType?: QuotaType;\n reusable: boolean;\n resetPeriod?: QuotaResetPeriod;\n context?: Record<string, unknown>;\n}\n\nexport interface UpdateQuotaInput {\n id: string;\n name?: string;\n limits?: Record<string, unknown>;\n reusable?: boolean;\n isActive: boolean;\n resetPeriod?: QuotaResetPeriod;\n context?: Record<string, unknown>;\n}\n\nexport interface SpendCreditsInput {\n billingAccountId: string;\n planId?: string;\n storeItemId?: string;\n isAnnual?: boolean;\n addOnIds?: { id: string; quantity?: number }[];\n upgradeFromSubscriptionId?: string;\n subscriptionId?: string;\n /** Seat count for PER_SEAT plans. Credits charged = pricePerSeat × seatCount. */\n seatCount?: number;\n}\n\nexport interface CancelSubscriptionInput {\n billingAccountId: string;\n subscriptionId: string;\n reason?: string;\n canceledBy?: string;\n}\n\nexport interface UpdateSubscriptionSeatsInput {\n subscriptionId: string;\n seatCount: number;\n}\n\nexport interface CreateEntitlementInput {\n planId: string;\n itemId: string;\n accessType: EntitlementAccessType;\n discountPercentage?: number;\n}\n\nexport interface UpdateEntitlementInput {\n id: string;\n accessType?: EntitlementAccessType;\n discountPercentage?: number;\n}\n\n// ============================================================================\n// Filter & Sort Types\n// ============================================================================\n\nexport interface DateRangeInput {\n from?: string;\n to?: string;\n}\n\nexport interface AmountRangeInput {\n min?: number;\n max?: number;\n}\n\nexport interface ContextFilterInput {\n orgId?: string;\n userId?: string;\n workspaceId?: string;\n organizationId?: string;\n projectId?: string;\n}\n\nexport interface ContextInput {\n orgId?: string;\n userId?: string;\n workspaceId?: string;\n organizationId?: string;\n projectId?: string;\n custom?: Record<string, unknown>;\n}\n"],"mappings":";AASA,IAAY,IAAL,yBAAA,GAAA;QACL,EAAA,SAAA,UACA,EAAA,WAAA,YACA,EAAA,UAAA,WACA,EAAA,WAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,SACA,EAAA,OAAA,QACA,EAAA,OAAA,QACA,EAAA,OAAA,QACA,EAAA,gBAAA;KACD,EAkCW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,SAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,YAAA,aACA,EAAA,WAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,SAAA,UACA,EAAA,mBAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,SACA,EAAA,QAAA,SACA,EAAA,UAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA,WACA,EAAA,WAAA,YACA,EAAA,YAAA,aACA,EAAA,WAAA;KACD,EAQW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA,WACA,EAAA,SAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,WAAA,YACA,EAAA,QAAA,SACA,EAAA,aAAA,cACA,EAAA,UAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA,WACA,EAAA,SAAA,UACA,EAAA,SAAA;KACD,EAaW,IAAL,yBAAA,GAAA;QACL,EAAA,OAAA,QACA,EAAA,SAAA,UACA,EAAA,WAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,cAAA,eACA,EAAA,eAAA,gBACA,EAAA,eAAA,gBACA,EAAA,aAAA,cACA,EAAA,gBAAA;KACD"}
|
|
@@ -1233,6 +1233,7 @@ export type GetPaginatedInvoicesQueryVariables = Types.Exact<{
|
|
|
1233
1233
|
billingAccountId?: Types.InputMaybe<Types.Scalars['ID']['input']>;
|
|
1234
1234
|
page?: Types.InputMaybe<Types.Scalars['Int']['input']>;
|
|
1235
1235
|
pageSize?: Types.InputMaybe<Types.Scalars['Int']['input']>;
|
|
1236
|
+
search?: Types.InputMaybe<Types.Scalars['String']['input']>;
|
|
1236
1237
|
}>;
|
|
1237
1238
|
export type GetPaginatedInvoicesQuery = {
|
|
1238
1239
|
__typename?: 'Query';
|
|
@@ -3348,6 +3349,22 @@ export type ArchivePayoutAccountMutation = {
|
|
|
3348
3349
|
__typename?: 'Mutation';
|
|
3349
3350
|
archivePayoutAccount: boolean;
|
|
3350
3351
|
};
|
|
3352
|
+
export type MarkPayoutPaidMutationVariables = Types.Exact<{
|
|
3353
|
+
id: Types.Scalars['ID']['input'];
|
|
3354
|
+
externalReference?: Types.InputMaybe<Types.Scalars['String']['input']>;
|
|
3355
|
+
notes?: Types.InputMaybe<Types.Scalars['String']['input']>;
|
|
3356
|
+
}>;
|
|
3357
|
+
export type MarkPayoutPaidMutation = {
|
|
3358
|
+
__typename?: 'Mutation';
|
|
3359
|
+
markPayoutPaid: {
|
|
3360
|
+
__typename?: 'PayoutRequest';
|
|
3361
|
+
id: string;
|
|
3362
|
+
status: Types.PayoutRequestStatus;
|
|
3363
|
+
externalReference?: string | null;
|
|
3364
|
+
internalNotes?: string | null;
|
|
3365
|
+
paidAt?: string | null;
|
|
3366
|
+
};
|
|
3367
|
+
};
|
|
3351
3368
|
export type ProcessPayoutRequestMutationVariables = Types.Exact<{
|
|
3352
3369
|
id: Types.Scalars['ID']['input'];
|
|
3353
3370
|
}>;
|
|
@@ -3402,6 +3419,8 @@ export type AdminPayoutRequestsQuery = {
|
|
|
3402
3419
|
items: Array<{
|
|
3403
3420
|
__typename?: 'PayoutRequest';
|
|
3404
3421
|
id: string;
|
|
3422
|
+
billingAccountId: string;
|
|
3423
|
+
requesterUserId?: string | null;
|
|
3405
3424
|
requestedAmount: number;
|
|
3406
3425
|
approvedAmount?: number | null;
|
|
3407
3426
|
currency: string;
|
|
@@ -3426,6 +3445,7 @@ export type AdminPayoutRequestsQuery = {
|
|
|
3426
3445
|
country?: string | null;
|
|
3427
3446
|
currency: string;
|
|
3428
3447
|
isDefault: boolean;
|
|
3448
|
+
accountDetails?: Record<string, unknown> | null;
|
|
3429
3449
|
} | null;
|
|
3430
3450
|
}>;
|
|
3431
3451
|
};
|
|
@@ -4795,6 +4815,7 @@ export type GetPaginatedSubscriptionsQueryVariables = Types.Exact<{
|
|
|
4795
4815
|
billingAccountId: Types.Scalars['ID']['input'];
|
|
4796
4816
|
page?: Types.InputMaybe<Types.Scalars['Int']['input']>;
|
|
4797
4817
|
pageSize?: Types.InputMaybe<Types.Scalars['Int']['input']>;
|
|
4818
|
+
search?: Types.InputMaybe<Types.Scalars['String']['input']>;
|
|
4798
4819
|
}>;
|
|
4799
4820
|
export type GetPaginatedSubscriptionsQuery = {
|
|
4800
4821
|
__typename?: 'Query';
|
|
@@ -5042,6 +5063,7 @@ export type GetBillingAccountQuotasSummaryForUsageQuery = {
|
|
|
5042
5063
|
used: number;
|
|
5043
5064
|
usagePercentage: number;
|
|
5044
5065
|
noLimit: boolean;
|
|
5066
|
+
context?: Record<string, unknown> | null;
|
|
5045
5067
|
createdAt: string;
|
|
5046
5068
|
endtime: string;
|
|
5047
5069
|
}>;
|
|
@@ -5081,6 +5103,7 @@ export type GetPastSubscriptionsWithQuotasQuery = {
|
|
|
5081
5103
|
id?: string | null;
|
|
5082
5104
|
name?: string | null;
|
|
5083
5105
|
limits?: Record<string, unknown> | null;
|
|
5106
|
+
context?: Record<string, unknown> | null;
|
|
5084
5107
|
currentUsageSum?: number | null;
|
|
5085
5108
|
usageCount?: number | null;
|
|
5086
5109
|
createdAt?: string | null;
|
|
@@ -5171,6 +5194,7 @@ export type GetSubscriptionsWithQuotasQuery = {
|
|
|
5171
5194
|
id?: string | null;
|
|
5172
5195
|
name?: string | null;
|
|
5173
5196
|
limits?: Record<string, unknown> | null;
|
|
5197
|
+
context?: Record<string, unknown> | null;
|
|
5174
5198
|
currentUsageSum?: number | null;
|
|
5175
5199
|
usageCount?: number | null;
|
|
5176
5200
|
createdAt?: string | null;
|
|
@@ -5933,6 +5957,7 @@ export declare const GetPaginatedInvoicesDocument: Apollo.DocumentNode;
|
|
|
5933
5957
|
* billingAccountId: // value for 'billingAccountId'
|
|
5934
5958
|
* page: // value for 'page'
|
|
5935
5959
|
* pageSize: // value for 'pageSize'
|
|
5960
|
+
* search: // value for 'search'
|
|
5936
5961
|
* },
|
|
5937
5962
|
* });
|
|
5938
5963
|
*/
|
|
@@ -7856,6 +7881,31 @@ export declare function useArchivePayoutAccountMutation(baseOptions?: ApolloReac
|
|
|
7856
7881
|
export type ArchivePayoutAccountMutationHookResult = ReturnType<typeof useArchivePayoutAccountMutation>;
|
|
7857
7882
|
export type ArchivePayoutAccountMutationResult = Apollo.MutationResult<Types.ArchivePayoutAccountMutation>;
|
|
7858
7883
|
export type ArchivePayoutAccountMutationOptions = Apollo.BaseMutationOptions<Types.ArchivePayoutAccountMutation, Types.ArchivePayoutAccountMutationVariables>;
|
|
7884
|
+
export declare const MarkPayoutPaidDocument: Apollo.DocumentNode;
|
|
7885
|
+
export type MarkPayoutPaidMutationFn = Apollo.MutationFunction<Types.MarkPayoutPaidMutation, Types.MarkPayoutPaidMutationVariables>;
|
|
7886
|
+
/**
|
|
7887
|
+
* __useMarkPayoutPaidMutation__
|
|
7888
|
+
*
|
|
7889
|
+
* To run a mutation, you first call `useMarkPayoutPaidMutation` within a React component and pass it any options that fit your needs.
|
|
7890
|
+
* When your component renders, `useMarkPayoutPaidMutation` returns a tuple that includes:
|
|
7891
|
+
* - A mutate function that you can call at any time to execute the mutation
|
|
7892
|
+
* - An object with fields that represent the current status of the mutation's execution
|
|
7893
|
+
*
|
|
7894
|
+
* @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
|
|
7895
|
+
*
|
|
7896
|
+
* @example
|
|
7897
|
+
* const [markPayoutPaidMutation, { data, loading, error }] = useMarkPayoutPaidMutation({
|
|
7898
|
+
* variables: {
|
|
7899
|
+
* id: // value for 'id'
|
|
7900
|
+
* externalReference: // value for 'externalReference'
|
|
7901
|
+
* notes: // value for 'notes'
|
|
7902
|
+
* },
|
|
7903
|
+
* });
|
|
7904
|
+
*/
|
|
7905
|
+
export declare function useMarkPayoutPaidMutation(baseOptions?: ApolloReactHooks.MutationHookOptions<Types.MarkPayoutPaidMutation, Types.MarkPayoutPaidMutationVariables>): ApolloReactHooks.useMutation.ResultTuple<Types.MarkPayoutPaidMutation, any, Apollo.ApolloCache>;
|
|
7906
|
+
export type MarkPayoutPaidMutationHookResult = ReturnType<typeof useMarkPayoutPaidMutation>;
|
|
7907
|
+
export type MarkPayoutPaidMutationResult = Apollo.MutationResult<Types.MarkPayoutPaidMutation>;
|
|
7908
|
+
export type MarkPayoutPaidMutationOptions = Apollo.BaseMutationOptions<Types.MarkPayoutPaidMutation, Types.MarkPayoutPaidMutationVariables>;
|
|
7859
7909
|
export declare const ProcessPayoutRequestDocument: Apollo.DocumentNode;
|
|
7860
7910
|
export type ProcessPayoutRequestMutationFn = Apollo.MutationFunction<Types.ProcessPayoutRequestMutation, Types.ProcessPayoutRequestMutationVariables>;
|
|
7861
7911
|
/**
|
|
@@ -9189,6 +9239,7 @@ export declare const GetPaginatedSubscriptionsDocument: Apollo.DocumentNode;
|
|
|
9189
9239
|
* billingAccountId: // value for 'billingAccountId'
|
|
9190
9240
|
* page: // value for 'page'
|
|
9191
9241
|
* pageSize: // value for 'pageSize'
|
|
9242
|
+
* search: // value for 'search'
|
|
9192
9243
|
* },
|
|
9193
9244
|
* });
|
|
9194
9245
|
*/
|