useBillingConfig.tsx 737 B

123456789101112131415161718192021
  1. import type {Organization} from 'sentry/types/organization';
  2. import {useApiQuery} from 'sentry/utils/queryClient';
  3. import {UPSELL_TIER} from 'getsentry/constants';
  4. import {type BillingConfig, PlanTier, type Subscription} from 'getsentry/types';
  5. interface UseBillingConfigProps {
  6. organization: Organization;
  7. subscription: Subscription;
  8. }
  9. export function useBillingConfig({organization, subscription}: UseBillingConfigProps) {
  10. const upsellTier =
  11. subscription.planTier === PlanTier.AM3 || subscription.trialTier === PlanTier.AM3
  12. ? PlanTier.AM3
  13. : UPSELL_TIER;
  14. return useApiQuery<BillingConfig>(
  15. [`/customers/${organization.slug}/billing-config/`, {query: {tier: upsellTier}}],
  16. {staleTime: Infinity}
  17. );
  18. }