UNPKG

@alba-cars/common-modules

Version:

A package containing DTOs, validation classes and common modules and interfaces for Alba Cars

205 lines (204 loc) 6.36 kB
import { UserCreateDTO, UserGetDTO, UserUpdateDTO } from "../../../auth"; export declare enum Designation { SALES_MANAGER = "sales-manager", SALES_EXECUTIVE = "sales-executive", CO_FOUNDER = "co-founder", CHIEF_SALES_OFFICER = "chief sales officer", CHIEF_PURCHASING_OFFICER = "Chief Purchasing Officer", PURCHASE_MANAGER = "Purchase Manager", PURCHASER = "Purchaser", FINANCE_MANAGER = "Finance Manager", HEAD_OF_ACCOUNTS = "Head of Accounts", CHIEF_MARKETING_OFFICER = "Chief Marketing Officer", MARKETING_MANAGER = "Marketing Manager", AFTERCARE_DIRECTOR = "Aftercare Director", SALES_COORDINATOR = "sales-coordinator", AFTERCARE = "aftercare", DIRECTOR_OF_TECHNOLOGY = "Director of Technology", PURCHASE_EXECUTIVE = "Purchase Executive", RELATIONSHIP_MANAGER = "Relationship Manager", SALES_CONTROLLER = "Sales Controller", LOGISTICS_MANAGER = "Logistics Manager", MARKETING_OPERATIONS_MANAGER = "Marketing Operations Manager", CALL_CENTER_MANAGER = "Call Center Manager", TEAM_LEADER = "Team Leader", BUSINESS_OPERATIONS_MANAGER = "Business Operations Manager", BUSINESS_RELATIONSHIP_MANAGER = "Business Relationship Manager", SENIOR_PURCHASE_EXECUTIVE = "Senior Purchase Executive", F_I_TEAM_LEADER = "F & I Team Leader", F_I_COORDINATOR = "F & I Coordinator", HANDOVER_FINANCE_SPECIALIST = "Handover & Finance Specialist", FINANCE_INSURANCE_COORDINATOR = "Finance & Insurance Coordinator", FINANCE_INSURANCE_TEAM_LEADER = "Finance & Insurance Team Leader", CUSTOMER_CARE_SPECIALIST = "Customer Care Specialist", AFTER_SALES_COORDINATOR = "After Sales Coordinator" } export declare enum TeamCategory { SALES = "sales", MANAGEMENT = "management", PURCHASES = "purchases", SALES_COORDINATOR = "sales-coordinator", AFTERCARE = "aftercare" } export declare enum Languages { ARABIC = "Arabic", AFRIKAANS = "Afrikaans", PERSIAN = "Persian", TURKISH = "Turkish", HEBREW = "Hebrew", HINDI = "Hindi", URDU = "Urdu", BENGALI = "Bengali", PUNJABI = "Punjabi", MALAYALAM = "Malayalam", TAMIL = "Tamil", TELUGU = "Telugu", SINHALESE = "Sinhalese", MANDARIN = "Mandarin", CANTONESE = "Cantonese", KOREAN = "Korean", JAPANESE = "Japanese", VIETNAMESE = "Vietnamese", THAI = "Thai", TAGALOG = "Tagalog", FILIPINO = "Filipino", INDONESIAN = "Indonesian", MALAY = "Malay", ENGLISH = "English", FRENCH = "French", GERMAN = "German", SPANISH = "Spanish", ITALIAN = "Italian", RUSSIAN = "Russian", PORTUGUESE = "Portuguese", SWAHILI = "Swahili", AMHARIC = "Amharic", SOMALI = "Somali", ROMANIAN = "Romanian", SWEDISH = "Swedish" } export declare class SalesAgentFilterDTO { search?: string; name?: string; email?: string; phone?: string; status?: number; teamCategory?: TeamCategory; designation?: Designation; sortOrder?: number; languages?: Languages[]; isActive?: boolean; createdAtStart?: Date; createdAtEnd?: Date; lastLoginStart?: Date; lastLoginEnd?: Date; nationality?: string; previousWorkplace?: string; validate(): string[]; static fromPlain(plain: Record<string, unknown>): SalesAgentFilterDTO; toPlain(): Record<string, unknown>; } export declare class SalesAgentOptionsDTO { page?: number; limit?: number; sortBy?: string; sortOrder?: "ASC" | "DESC"; includeInactive?: boolean; searchQuery?: string; validate(): string[]; static fromPlain(plain: Record<string, unknown>): SalesAgentOptionsDTO; toPlain(): Record<string, unknown>; } export declare class SalesAgentGetDTO { id: string; refId: number; user: UserGetDTO; name: string; phone: string; email: string; photo?: string; agentShortIntro?: string; agentIntro?: string; sortOrder?: number; bioVideoUrl?: string; status: number; teamCategory: TeamCategory; designation: Designation; languages: Languages[]; filter?: SalesAgentFilterDTO; options?: SalesAgentOptionsDTO; nationality?: string; previousWorkplace?: string; static fromPlain(plain: Record<string, unknown>): SalesAgentGetDTO; static toPlain(instance: SalesAgentGetDTO): Record<string, unknown>; toPlain(): Record<string, unknown>; } export declare class SalesAgentResponseDTO { id: string; refId: number; user: UserGetDTO; name: string; phone: string; email: string; photo?: string; agentShortIntro?: string; agentIntro?: string; bioVideoUrl?: string; status: number; sortOrder?: number; teamCategory: TeamCategory; designation: Designation; languages: Languages[]; isActive: boolean; createdAt: Date; updatedAt: Date; lastLogin?: Date; nationality?: string; previousWorkplace?: string; validate(): string[]; static fromPlain(plain: Record<string, unknown>): SalesAgentResponseDTO; toPlain(): Record<string, unknown>; } export declare class SalesAgentCreateDTO { name: string; phone?: string; email: string; sortOrder?: number; photo?: string; agentShortIntro?: string; agentIntro?: string; bioVideoUrl?: string; status?: number; teamCategory: TeamCategory; designation: Designation; languages: Languages[]; nationality?: string; previousWorkplace?: string; validate(): string[]; toUserDTO(): UserCreateDTO; toSalesAgentData(): Partial<any>; static fromPlain(plain: Record<string, unknown>): SalesAgentCreateDTO; toPlain(): Record<string, unknown>; } export declare class SalesAgentUpdateDTO { name?: string; phone?: string; email?: string; photo?: string; agentShortIntro?: string; sortOrder?: number; agentIntro?: string; bioVideoUrl?: string; status?: number; teamCategory?: TeamCategory; designation?: Designation; languages?: Languages[]; isActive?: boolean; nationality?: string; previousWorkplace?: string; validate(): string[]; toUserDTO(): UserUpdateDTO; toSalesAgentData(): Partial<any>; static fromPlain(plain: Record<string, unknown>): SalesAgentUpdateDTO; toPlain(): Record<string, unknown>; }