5f06256271
Build & Push / Pipeline Tests (push) Failing after 1m58s
Build & Push / Build & Push Docker Image (push) Has been skipped
Test / Type Check (all packages) (push) Successful in 58s
Test / API Unit Tests (push) Successful in 1m9s
Test / Homepage Unit Tests (push) Successful in 46s
Test / Carplace Unit Tests (push) Successful in 43s
Test / Admin Unit Tests (push) Successful in 41s
Test / Dashboard Unit Tests (push) Successful in 45s
Test / API Integration Tests (push) Failing after 1m9s
90 lines
2.3 KiB
TypeScript
90 lines
2.3 KiB
TypeScript
export { ensureDatabaseUrl } from './runtime-config'
|
|
|
|
export type AdminRole = 'SUPER_ADMIN' | 'ADMIN' | 'SUPPORT' | 'FINANCE' | 'VIEWER'
|
|
export type EmployeeRole = 'OWNER' | 'MANAGER' | 'AGENT'
|
|
export type LicenseStatus = 'PENDING' | 'VALID' | 'EXPIRING' | 'APPROVED' | 'DENIED' | 'EXPIRED'
|
|
export type NotificationType =
|
|
| 'ACCOUNT_CREATED'
|
|
| 'NEW_BOOKING'
|
|
| 'BOOKING_CANCELLED'
|
|
| 'PAYMENT_RECEIVED'
|
|
| 'PAYMENT_FAILED'
|
|
| 'DOCUMENTS_REQUIRED'
|
|
| 'PAYMENT_REQUIRED'
|
|
| 'SUBSCRIPTION_TRIAL_ENDING'
|
|
| 'SUBSCRIPTION_SUSPENDED'
|
|
| 'VEHICLE_MAINTENANCE_DUE'
|
|
| 'OFFER_EXPIRING'
|
|
| 'NEW_REVIEW_RECEIVED'
|
|
| 'BOOKING_CONFIRMED'
|
|
| 'PICKUP_REMINDER_24H'
|
|
| 'PICKUP_REMINDER_2H'
|
|
| 'VEHICLE_READY'
|
|
| 'RETURN_REMINDER'
|
|
| 'BOOKING_CANCELLED_BY_COMPANY'
|
|
| 'REFUND_PROCESSED'
|
|
| 'NEW_OFFER_FROM_SAVED_COMPANY'
|
|
| 'REVIEW_REQUEST'
|
|
| 'SUBSCRIPTION_PAYMENT_DUE_14D'
|
|
| 'SUBSCRIPTION_PAYMENT_DUE_7D'
|
|
| 'SUBSCRIPTION_PAYMENT_DUE_48H'
|
|
| 'SUBSCRIPTION_PAYMENT_DUE_24H'
|
|
| 'SUBSCRIPTION_GRACE_DAILY'
|
|
| 'SUBSCRIPTION_GRACE_FINAL'
|
|
| 'COLLECTIONS_CALL_REQUIRED'
|
|
| 'MANUAL_PAYMENT_EVIDENCE_SUBMITTED'
|
|
| 'SUBSCRIPTION_PAYMENT_CONFIRMED'
|
|
| 'MANUAL_PAYMENT_EVIDENCE_REJECTED'
|
|
| 'COLLECTIONS_OVERRIDE_CHANGED'
|
|
|
|
export type NotificationChannel = 'EMAIL' | 'SMS' | 'WHATSAPP' | 'IN_APP' | 'PUSH'
|
|
export type NotificationDeliveryStatus = 'PENDING' | 'QUEUED' | 'SENT' | 'DELIVERED' | 'FAILED' | 'SKIPPED' | 'DEAD_LETTER'
|
|
export type NotificationRecipientType = 'EMPLOYEE' | 'RENTER' | 'BILLING_CONTACT' | 'ADMIN'
|
|
|
|
export interface Company {
|
|
id: string
|
|
name: string
|
|
slug: string
|
|
email: string
|
|
phone: string | null
|
|
status: string
|
|
}
|
|
|
|
export interface Employee {
|
|
id: string
|
|
companyId: string
|
|
clerkUserId: string
|
|
firstName: string
|
|
lastName: string
|
|
email: string
|
|
phone: string | null
|
|
role: EmployeeRole
|
|
isActive: boolean
|
|
company?: Company
|
|
}
|
|
|
|
export interface AdminUser {
|
|
id: string
|
|
email: string
|
|
firstName: string
|
|
lastName: string
|
|
role: AdminRole
|
|
isActive: boolean
|
|
totpEnabled?: boolean
|
|
totpSecret?: string | null
|
|
preferredLocale?: string
|
|
}
|
|
|
|
export interface InsurancePolicy {
|
|
id: string
|
|
companyId: string
|
|
name: string
|
|
description?: string | null
|
|
type: string
|
|
chargeType: 'PER_DAY' | 'PER_RENTAL' | 'PERCENTAGE_OF_RENTAL'
|
|
chargeValue: number
|
|
isRequired: boolean
|
|
isActive: boolean
|
|
sortOrder: number
|
|
}
|