export interface IApplication { id: string; loanTerm?: number; loanAmount?: number; paymentAmount?: number; paymentFrequency?: PaymentFrequency; projectType?: ProjectType; maritalStatus?: MaritalStatus; numberOfChildren?: number; otherDependentNumber?: number; residentialStatus?: ResidentialStatus; housingType?: HousingType; residentialSeniorityDate?: string; optIn?: OptIn; hasSecondaryResidence?: boolean; skipAggregation?: boolean; skipGDPF?: boolean; partnerId?: string; loyaltyAccountLinked?: boolean; productId?: string; applicant?: Applicant; coApplicant?: Applicant; userSelection?: { productId?: string; productPartnerId: string; pricingId?: string; pricingPartnerId?: string; debitType?: string; }; status?: ApplicationStatus; externalErrors?: ExternalError[]; partnerData?: PartnerData; createdAt: Date; updatedAt: Date; } export declare enum ProjectType { NEW_VEHICLE = "NEW_VEHICLE", USED_VEHICLE = "USED_VEHICLE", WORK = "WORK", PERSONAL = "PERSONAL" } export declare enum ApplicationStatus { IN_PROGRESS = "IN_PROGRESS", ACCEPTED = "ACCEPTED", REFUSED = "REFUSED", PENDING = "PENDING", ERROR = "ERROR" } export declare enum MaritalStatus { COHABITING = "COHABITING", DIVORCED = "DIVORCED", MARRIED = "MARRIED", SEPARATED = "SEPARATED", SINGLE = "SINGLE", WIDOWED = "WIDOWED", CIVIL_PARTNERSHIP = "CIVIL_PARTNERSHIP" } export declare enum ResidentialStatus { TENANT = "TENANT", OWNER = "OWNER", OWNER_WITH_MORTGAGE = "OWNER_WITH_MORTGAGE", HOUSED_BY_EMPLOYER = "HOUSED_BY_EMPLOYER", HOUSED_BY_FAMILY = "HOUSED_BY_FAMILY", HOUSED_BY_FRIEND = "HOUSED_BY_FRIEND", OTHER = "OTHER" } export declare enum HousingType { APARTMENT = "APARTMENT", HOUSE = "HOUSE", OTHER = "OTHER" } export interface OptIn { salesOffersOptIn?: boolean; partnerOptIn?: boolean; } export interface ExtraProperties { [key: string]: any; } export interface Applicant { professionalSituation?: ProfessionalSituation; identity?: Identity; incomes?: Incomes; contact?: Contact; charges?: Charges; bank?: Bank; insuranceIds?: InsuranceId[]; extraProperties?: ExtraProperties; } export interface InsuranceId { insuranceId?: string; insurancePartnerId?: string; } export interface Bank { name?: string; seniorityDate?: string; accountOwner?: string; accountType?: BankAccountType; iban?: string; bic?: string; } export declare enum BankAccountType { PERSONAL = "PERSONAL", JOINT = "JOINT", OTHER = "OTHER" } export interface ProfessionalSituation { businessSector?: BusinessSector; spcCode?: string; contractType?: ContractType; seniorityDate?: string; label?: string; employerCity?: string; employerName?: string; endDate?: string; employerDepartment?: string; employerCountryCode?: string; } export declare enum BusinessSector { PRIVATE = "PRIVATE", PUBLIC = "PUBLIC", AGRICULTURE = "AGRICULTURE", ARTISANTRADER = "ARTISAN_TRADER", INDEPENDENT = "INDEPENDENT", RETIRED = "RETIRED", OTHERS = "OTHERS" } export declare enum ContractType { PERMANENT = "PERMANENT", FIXEDTERM = "FIXED_TERM", TEMPORARY = "TEMPORARY", OTHER = "OTHER" } export interface Identity { civility?: Civility; firstName?: string; lastName?: string; birthName?: string; birthDate?: string; birthDepartment?: string; birthDistrict?: string; birthCity?: string; nationality?: string; birthCountry?: string; } export declare enum Civility { MISTER = "MISTER", MISS = "MISS" } export interface Incomes { netMonthlyIncomes?: number; nbOfMonthsNetIncomes?: number; otherMonthlyIncomes?: number; rentAssistance?: number; familyAllowance?: number; pensionIncomes?: number; } export interface Contact { email?: string; street?: string; additionalInformation?: string; postalCode?: string; zipCode?: string; city?: string; country?: string; mobilePhoneNumber?: string; fixedLinePhoneNumber?: string; } export interface Charges { rentAmount?: number; pensionCharges?: number; careCharges?: number; otherCharges?: number; currentLoans?: ChargeCurrentLoan[]; } export interface ChargeCurrentLoan { type?: LoanType; monthlyPayments?: number; inHouse?: boolean; startDate?: string; endDate?: string; bankName?: string; } export declare enum PaymentFrequency { DAILY = "DAILY", WEEKLY = "WEEKLY", MONTHLY = "MONTHLY", YEARLY = "YEARLY" } export declare enum LoanType { REVOLVING = "REVOLVING", VEHICLE = "VEHICLE", WORKS = "WORKS", PERSONAL = "PERSONAL", MORTGAGE = "MORTGAGE", OTHER = "OTHER" } export interface ExternalError { message: string; code?: string; tags?: string[]; } export interface PartnerData { [key: string]: any; }