UNPKG

jsq-ticket-type

Version:

TypeScript type definitions for ticket system - microservices types with comprehensive settings management

417 lines (374 loc) 8.46 kB
// Exported enums for frontend use export enum UserRole { ADMIN = 'ADMIN', PROMOTOR = 'PROMOTOR', ARTIST = 'ARTIST', USER = 'USER', } export enum ArtistGenre { POP = 'POP', ROCK = 'ROCK', JAZZ = 'JAZZ', CLASSICAL = 'CLASSICAL', ELECTRONIC = 'ELECTRONIC', HIP_HOP = 'HIP_HOP', R_AND_B = 'R_AND_B', COUNTRY = 'COUNTRY', FOLK = 'FOLK', REGGAE = 'REGGAE', BLUES = 'BLUES', METAL = 'METAL', PUNK = 'PUNK', INDIE = 'INDIE', ALTERNATIVE = 'ALTERNATIVE', WORLD = 'WORLD', OTHER = 'OTHER', } export enum EventStatus { DRAFT = 'DRAFT', PENDING_APPROVAL = 'PENDING_APPROVAL', PUBLISHED = 'PUBLISHED', CANCELLED = 'CANCELLED', COMPLETED = 'COMPLETED', POSTPONED = 'POSTPONED', } export enum EventCategory { CONCERT = 'CONCERT', FESTIVAL = 'FESTIVAL', THEATER = 'THEATER', COMEDY = 'COMEDY', SPORTS = 'SPORTS', CONFERENCE = 'CONFERENCE', WORKSHOP = 'WORKSHOP', EXHIBITION = 'EXHIBITION', OTHER = 'OTHER', } export enum TicketStatus { ACTIVE = 'ACTIVE', USED = 'USED', CANCELLED = 'CANCELLED', EXPIRED = 'EXPIRED', REFUNDED = 'REFUNDED', } export enum TicketTypeStatus { ACTIVE = 'ACTIVE', SOLD_OUT = 'SOLD_OUT', INACTIVE = 'INACTIVE', CANCELLED = 'CANCELLED', } export enum ReservationStatus { PENDING = 'PENDING', CONFIRMED = 'CONFIRMED', EXPIRED = 'EXPIRED', CANCELLED = 'CANCELLED', } export enum OrderStatus { PENDING = 'PENDING', PAID = 'PAID', CONFIRMED = 'CONFIRMED', CANCELLED = 'CANCELLED', REFUNDED = 'REFUNDED', EXPIRED = 'EXPIRED', } export enum OrderItemType { TICKET = 'TICKET', MERCHANDISE = 'MERCHANDISE', } export enum DiscountType { PERCENTAGE = 'PERCENTAGE', FIXED_AMOUNT = 'FIXED_AMOUNT', FREE_SHIPPING = 'FREE_SHIPPING', } export enum DiscountStatus { ACTIVE = 'ACTIVE', INACTIVE = 'INACTIVE', EXPIRED = 'EXPIRED', USED_UP = 'USED_UP', } export enum PaymentStatus { PENDING = 'PENDING', PROCESSING = 'PROCESSING', COMPLETED = 'COMPLETED', FAILED = 'FAILED', CANCELLED = 'CANCELLED', REFUNDED = 'REFUNDED', PARTIALLY_REFUNDED = 'PARTIALLY_REFUNDED', } export enum PaymentMethod { CREDIT_CARD = 'CREDIT_CARD', DEBIT_CARD = 'DEBIT_CARD', BANK_TRANSFER = 'BANK_TRANSFER', VIRTUAL_ACCOUNT = 'VIRTUAL_ACCOUNT', E_WALLET = 'E_WALLET', QRIS = 'QRIS', CASH = 'CASH', INSTALLMENT = 'INSTALLMENT', } export enum PaymentProvider { MIDTRANS = 'MIDTRANS', XENDIT = 'XENDIT', DOKU = 'DOKU', FASPAY = 'FASPAY', GOPAY = 'GOPAY', OVO = 'OVO', DANA = 'DANA', LINKAJA = 'LINKAJA', SHOPEEPAY = 'SHOPEEPAY', BCA = 'BCA', MANDIRI = 'MANDIRI', BNI = 'BNI', BRI = 'BRI', PERMATA = 'PERMATA', OTHER = 'OTHER', } export enum RefundStatus { PENDING = 'PENDING', PROCESSING = 'PROCESSING', COMPLETED = 'COMPLETED', FAILED = 'FAILED', CANCELLED = 'CANCELLED', } export enum WebhookStatus { PENDING = 'PENDING', PROCESSED = 'PROCESSED', FAILED = 'FAILED', IGNORED = 'IGNORED', } export enum ShippingStatus { PENDING = 'PENDING', PROCESSING = 'PROCESSING', SHIPPED = 'SHIPPED', IN_TRANSIT = 'IN_TRANSIT', OUT_FOR_DELIVERY = 'OUT_FOR_DELIVERY', DELIVERED = 'DELIVERED', FAILED_DELIVERY = 'FAILED_DELIVERY', RETURNED = 'RETURNED', CANCELLED = 'CANCELLED', } export enum InstallmentStatus { PENDING = 'PENDING', DUE = 'DUE', PAID = 'PAID', OVERDUE = 'OVERDUE', CANCELLED = 'CANCELLED', FAILED = 'FAILED', } export enum DisputeStatus { OPENED = 'OPENED', UNDER_REVIEW = 'UNDER_REVIEW', EVIDENCE_REQUIRED = 'EVIDENCE_REQUIRED', RESOLVED = 'RESOLVED', LOST = 'LOST', WON = 'WON', CANCELLED = 'CANCELLED', } export enum DisputeType { CHARGEBACK = 'CHARGEBACK', INQUIRY = 'INQUIRY', RETRIEVAL = 'RETRIEVAL', FRAUD = 'FRAUD', AUTHORIZATION = 'AUTHORIZATION', PROCESSING_ERROR = 'PROCESSING_ERROR', DUPLICATE_PROCESSING = 'DUPLICATE_PROCESSING', CREDIT_NOT_PROCESSED = 'CREDIT_NOT_PROCESSED', CANCELLED_RECURRING = 'CANCELLED_RECURRING', PRODUCT_NOT_RECEIVED = 'PRODUCT_NOT_RECEIVED', PRODUCT_UNACCEPTABLE = 'PRODUCT_UNACCEPTABLE', OTHER = 'OTHER', } export enum NotificationType { EMAIL = 'EMAIL', SMS = 'SMS', PUSH = 'PUSH', IN_APP = 'IN_APP', WHATSAPP = 'WHATSAPP', } export enum NotificationStatus { PENDING = 'PENDING', SENT = 'SENT', DELIVERED = 'DELIVERED', FAILED = 'FAILED', CANCELLED = 'CANCELLED', BOUNCED = 'BOUNCED', OPENED = 'OPENED', CLICKED = 'CLICKED', } export enum NotificationPriority { LOW = 'LOW', NORMAL = 'NORMAL', HIGH = 'HIGH', URGENT = 'URGENT', } export enum TemplateStatus { DRAFT = 'DRAFT', ACTIVE = 'ACTIVE', INACTIVE = 'INACTIVE', ARCHIVED = 'ARCHIVED', } export enum DeliveryProvider { SENDGRID = 'SENDGRID', MAILGUN = 'MAILGUN', SES = 'SES', TWILIO = 'TWILIO', NEXMO = 'NEXMO', FIREBASE = 'FIREBASE', ONESIGNAL = 'ONESIGNAL', WHATSAPP_BUSINESS = 'WHATSAPP_BUSINESS', INTERNAL = 'INTERNAL', } export enum MerchandiseCategory { CLOTHING = 'CLOTHING', ACCESSORIES = 'ACCESSORIES', COLLECTIBLES = 'COLLECTIBLES', MUSIC = 'MUSIC', BOOKS = 'BOOKS', ELECTRONICS = 'ELECTRONICS', HOME_DECOR = 'HOME_DECOR', STATIONERY = 'STATIONERY', BAGS = 'BAGS', SHOES = 'SHOES', JEWELRY = 'JEWELRY', OTHER = 'OTHER', } export enum MerchandiseStatus { DRAFT = 'DRAFT', ACTIVE = 'ACTIVE', INACTIVE = 'INACTIVE', OUT_OF_STOCK = 'OUT_OF_STOCK', DISCONTINUED = 'DISCONTINUED', ARCHIVED = 'ARCHIVED', } export enum MerchandiseOrderStatus { PENDING = 'PENDING', CONFIRMED = 'CONFIRMED', PROCESSING = 'PROCESSING', SHIPPED = 'SHIPPED', DELIVERED = 'DELIVERED', CANCELLED = 'CANCELLED', REFUNDED = 'REFUNDED', RETURNED = 'RETURNED', } export enum VariantType { SIZE = 'SIZE', COLOR = 'COLOR', MATERIAL = 'MATERIAL', STYLE = 'STYLE', EDITION = 'EDITION', OTHER = 'OTHER', } export enum ShippingMethod { STANDARD = 'STANDARD', EXPRESS = 'EXPRESS', OVERNIGHT = 'OVERNIGHT', PICKUP = 'PICKUP', DIGITAL = 'DIGITAL', } export enum EventMediaType { IMAGE = 'IMAGE', VIDEO = 'VIDEO', AUDIO = 'AUDIO', DOCUMENT = 'DOCUMENT', } export enum EventArtistRole { HEADLINER = 'HEADLINER', SUPPORTING = 'SUPPORTING', OPENING = 'OPENING', PERFORMER = 'PERFORMER', GUEST = 'GUEST', HOST = 'HOST', MODERATOR = 'MODERATOR', } export enum ApprovalStatus { PENDING = 'PENDING', APPROVED = 'APPROVED', REJECTED = 'REJECTED', CANCELLED = 'CANCELLED', } // Settings System Enums export enum SettingCategory { SECURITY = 'SECURITY', EMAIL = 'EMAIL', PAYMENT = 'PAYMENT', PLATFORM = 'PLATFORM', NOTIFICATION = 'NOTIFICATION', DATABASE = 'DATABASE', FEATURE_FLAGS = 'FEATURE_FLAGS', API = 'API', INTEGRATION = 'INTEGRATION', ANALYTICS = 'ANALYTICS', } export enum SettingDataType { STRING = 'STRING', NUMBER = 'NUMBER', BOOLEAN = 'BOOLEAN', JSON = 'JSON', ARRAY = 'ARRAY', ENCRYPTED = 'ENCRYPTED', URL = 'URL', EMAIL = 'EMAIL', } export enum SettingEnvironment { DEVELOPMENT = 'DEVELOPMENT', STAGING = 'STAGING', PRODUCTION = 'PRODUCTION', ALL = 'ALL', } export enum SettingChangeType { CREATE = 'CREATE', UPDATE = 'UPDATE', DELETE = 'DELETE', RESTORE = 'RESTORE', BULK_UPDATE = 'BULK_UPDATE', } export enum SettingChangeSource { ADMIN_PANEL = 'ADMIN_PANEL', API = 'API', SYSTEM = 'SYSTEM', MIGRATION = 'MIGRATION', IMPORT = 'IMPORT', WEBHOOK = 'WEBHOOK', } export enum FeatureFlagStatus { ACTIVE = 'ACTIVE', INACTIVE = 'INACTIVE', TESTING = 'TESTING', DEPRECATED = 'DEPRECATED', ARCHIVED = 'ARCHIVED', } export enum FeatureFlagType { BOOLEAN = 'BOOLEAN', PERCENTAGE = 'PERCENTAGE', USER_LIST = 'USER_LIST', ROLE_BASED = 'ROLE_BASED', GEOGRAPHIC = 'GEOGRAPHIC', TIME_BASED = 'TIME_BASED', } export enum FeatureFlagScope { GLOBAL = 'GLOBAL', SERVICE = 'SERVICE', FEATURE = 'FEATURE', EXPERIMENT = 'EXPERIMENT', } export enum EmailTemplateType { SYSTEM = 'SYSTEM', MARKETING = 'MARKETING', TRANSACTIONAL = 'TRANSACTIONAL', NOTIFICATION = 'NOTIFICATION', REMINDER = 'REMINDER', CONFIRMATION = 'CONFIRMATION', INVITATION = 'INVITATION', WELCOME = 'WELCOME', RESET_PASSWORD = 'RESET_PASSWORD', VERIFICATION = 'VERIFICATION', } export enum EmailTemplateFormat { HTML = 'HTML', TEXT = 'TEXT', MIXED = 'MIXED', } export enum EmailTemplatePriority { LOW = 'LOW', NORMAL = 'NORMAL', HIGH = 'HIGH', URGENT = 'URGENT', }