| 172 | }); |
| 173 | |
| 174 | export interface IUserDocument extends mongoose.Document { |
| 175 | // for TL |
| 176 | teamsForTeamLeader: [ |
| 177 | { |
| 178 | teamLeaderEmail: string; |
| 179 | initialMembers: []; |
| 180 | teamId: string; |
| 181 | createdAt: Date; |
| 182 | teamName: string; |
| 183 | teamLogoUrl: string; |
| 184 | status: string; |
| 185 | idsOfTeamMembers: [string]; |
| 186 | removedTeamMembers: [ |
| 187 | { |
| 188 | email: string; |
| 189 | removalDate: Date; |
| 190 | userName: string; |
| 191 | userAvatarUrl: string; |
| 192 | userId: string; |
| 193 | }, |
| 194 | ]; |
| 195 | trialPeriodStartDate: Date; |
| 196 | isSubscriptionActiveForTeam: boolean; |
| 197 | isPaymentFailedForTeam: boolean; |
| 198 | }, |
| 199 | ]; |
| 200 | // for TL |
| 201 | numberOfUniqueActiveTeamMembers: number; |
| 202 | stripeCustomer: { |
| 203 | id: string; |
| 204 | default_source: string; |
| 205 | created: number; |
| 206 | object: string; |
| 207 | description: string; |
| 208 | }; |
| 209 | stripeCard: { |
| 210 | brand: string; |
| 211 | country: string; |
| 212 | last4: string; |
| 213 | exp_month: number; |
| 214 | exp_year: number; |
| 215 | funding: string; |
| 216 | }; |
| 217 | trialPeriodStartDate: Date; |
| 218 | isSubscriptionActiveForAccount: boolean; |
| 219 | isPaymentFailedForAccount: boolean; |
| 220 | stripeSubscription: { |
| 221 | id: string; |
| 222 | object: string; |
| 223 | application_fee_percent: number; |
| 224 | billing: string; |
| 225 | cancel_at_period_end: boolean; |
| 226 | billing_cycle_anchor: number; |
| 227 | canceled_at: number; |
| 228 | cancel_at: number; |
| 229 | created: number; |
| 230 | }; |
| 231 | stripeListOfInvoices: { |
nothing calls this directly
no outgoing calls
no test coverage detected