All files / src/billing types.ts

100% Statements 6/6
100% Branches 2/2
100% Functions 1/1
100% Lines 6/6

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66  1x 1x   1x 1x 1x 1x                                                                                                                    
export enum BillingInterval {
  OneTime = 'ONE_TIME',
  Every30Days = 'EVERY_30_DAYS',
  Annual = 'ANNUAL',
}
 
export interface BillingSettings {
  chargeName: string;
  amount: number;
  currencyCode: string;
  interval: BillingInterval;
}
 
export interface ActiveSubscription {
  name: string;
  test: boolean;
}
 
export interface ActiveSubscriptions {
  activeSubscriptions: ActiveSubscription[];
}
 
export interface OneTimePurchase {
  name: string;
  test: boolean;
  status: string;
}
 
export interface OneTimePurchases {
  oneTimePurchases: {
    edges: {
      node: OneTimePurchase;
    }[];
    pageInfo: {
      endCursor: string;
      hasNextPage: boolean;
    };
  };
}
 
export interface CurrentAppInstallations<T> {
  userErrors: string[];
  data: {
    currentAppInstallation: T;
  };
}
 
export interface RequestResponse {
  userErrors: string[];
  confirmationUrl: string;
}
 
export interface RecurringPaymentResponse {
  data: {
    appSubscriptionCreate: RequestResponse;
  };
  errors?: string[];
}
 
export interface SinglePaymentResponse {
  data: {
    appPurchaseOneTimeCreate: RequestResponse;
  };
  errors?: string[];
}