import * as lucide_angular from 'lucide-angular'; import * as i0 from '@angular/core'; import { OnInit, ChangeDetectorRef } from '@angular/core'; import { DecimalPipe } from '@angular/common'; interface ILimit { calculationOrder: string; productComponentKey: string; productComponentPath: string; includedCode: string; displayOrder: number; productComponentMarketingName: string; componentTypeCode: string; appliesToCode: string; durationUnitCode: string; durationValue: number; paymentFrequencyCode: string; paymentDurationUnitCode: string; paymentDurationValue: string; currencyCode: string; minimumAmount: number; maximumAmount: number; fixedAmount: number; valuationTypeCode: string; percentage: number; amountLic: number; } interface IDeductible { amount: number; appliesToCode: string; calculationOrder: string; componentTypeCode: string; currencyCode: string; displayOrder: number; durationUnitCode: string; durationValue: string; includedCode: string; percentage: number; productComponentKey: string; productComponentPath: string; typeCode: string; productComponentMarketingName: string; } interface IDataValueList { description: string; code: string; } interface IFormat { allowNegativeNumbers: string; mask: string; prefix: string; specialCharacters: string[]; suffix: string; thousandSeparator: string; dropSpecialCharacters: boolean; customPatterns: any; } interface IDataSchemeAttribute { code: string; controlTypeCode: string; dataDomainCode: string; dataType: string; dataValueList: IDataValueList[]; defaultValue: any; description: string; format: IFormat; incrementValue: number; mandatoryIndicator: boolean; maxValue: number; minValue: number; name: string; orientationTypeCode: string; sequence: string; updateableIndicator: boolean; widthTypeCode: string; query?: string; placeHolder?: string; hiddenIndicator?: boolean; } interface IAgreementDataScheme { code: string; dataSchemeKey: string; name: string; version: string; dataSchemeAttributeList: IDataSchemeAttribute[]; } interface IDataScheme { code: string; dataSchemeKey: string; dataSchemeAttributeList: IDataSchemeAttribute[]; name: string; version: string; } interface IFinancialProvision { calculationOrder: string; productComponentKey: string; productComponentPath: string; productComponentMarketingName: string; typeCode: string; currencyCode: string; basisAmount: number; intermediateAmount: number; rate: number; amount: number; vatTaxAmount: number; vatTaxRate: number; } interface IPremiumBalance { agreedPremiumAmount: number; agreedPremiumCurrencyCode: string; basicPremiumAmount: number; basicPremiumCurrencyCode: string; basicPremiumVatTaxAmount: number; commissionAmount: number; commissionCurrencyCode: string; commissionVatTaxAmount: number; feeAmount: number; feeCurrencyCode: string; feeVatTaxAmount: number; loadingPremiumAmount: number; loadingPremiumCurrencyCode: string; loadingPremiumVatTaxAmount: number; premiumAmount: number; premiumCurrencyCode: string; premiumVatTaxAmount: number; } interface IAttributeList { code: string; name: string; value: string; } interface ICalculationRule { processKind: string; formalDefinition: string; } interface IEnumerationRule { isConstantIndicator: boolean; values: string; valueList: string[]; } interface IRangeRule { minimumValue: number; maximumValue: number; increment: number; } interface IComponentAttributeRule { componentAttributeRuleKey: string; productComponentPath: string; componentAttributeKey: string; productComponentKey: string; productKey: string; code: string; version: string; classCode: string; minimumQuantity: number; maximumQuantity: number; displayOrder: string; calculationOrder: string; attributeExternalCode: string; enumerationRule: IEnumerationRule; rangeRule: IRangeRule; calculationRule: ICalculationRule; } interface IComponentAttribute { componentAttributeKey: string; code: string; version: string; productComponentKey: string; attributeExternalCode: string; acordName: string; kipName: string; name: string; shortName: string; marketingName: string; } interface ICoverageSpecification { fecuBranchCode: string; fecuSubBranchCode: string; primaryCoverageCode: string; } interface IDeductibleTypeCode { deductibleTypeCode: string; } interface IFinancialOptionSpecification { remittanceTypeCode: string; collectionMethodCode: string; paymentFrequencyCode: string; } interface I_InvestmentAccountSpecification { savingTypeCode: string; taxPeriodCode: string; taxTypeCode: string; } interface ILimitSpecification { limitTypeCode: string; } interface IProductSpecification { broadLineOfBusinessCode: string; lineOfBusinessCode: string; subLineOfBusinessCode: string; subLineOfBusinessName: string; statusDateTime: string; statusCode: string; marketableIndicator: boolean; marketablePerStartDateTime: string; marketablePerEndDateTime: string; } interface IBusinessContactPoint { businessStreet: string; businessNumber: string; businessMunicipalityCode: string; businessCityCode: string; businessRegionCode: string; businessProvinceCode: string; businessCountryCode: string; businessEmailAddress: string; businessUnit: string; businessTelephoneCellNumber: string; businessTelephoneLandlineNumber: string; businessWebPageAddress: string; } interface IPersonalContactPoint { personalStreet: string; personalNumber: string; personalMunicipalityCode: string; personalCityCode: string; personalRegionCode: string; personalProvinceCode: string; personalCountryCode: string; personalEmailAddress: string; personalUnit: string; personalTelephoneCellNumber: string; personalTelephoneLandlineNumber: string; personalWebPageAddress: string; } interface IContactPoint { contactPointKey: string; referenceCode: string; partyKey: string; entityClass: string; entityKey: string; certificationDateTime: string; businessContactPoint: IBusinessContactPoint; personalContactPoint: IPersonalContactPoint; } interface IPartyName { classCode: string; fullName: string; givenName: string; middleName: string; surname1: string; surname2: string; usageCode: string; } interface IPartyOrganizationDetail { natureOfBusinessCode: string; taxExemptIndicator: boolean; } interface IPartyPersonDetail { heightValue: number; weightValue: number; drinkerStatusCode: string; tobaccoUseStatusCode: string; ocuppationClassCode: string; pensionFundAdministratorCode: string; healthSystemCode: string; socialSecurityCode: string; workDependencyTypeCode: string; grossIncomeAmount: number; netIncomeAmount: number; } interface IParty$1 { partyKey: string; partyClassCode: string; identifierTypeCode: string; identifier: string; genderCode: string; birthDate: string; deathDate: string; deathIndicator: boolean; bloodTypeCode: string; maritalStatusCode: string; nationalityCode: string; partyName: IPartyName; personDetail: IPartyPersonDetail; organizationDetail: IPartyOrganizationDetail; contactPointList: IContactPoint[]; } interface IAgreementHolder { agreementHolderIdentifier: string; agreementHolderFullName: string; agreementHolderContactPointKey: string; companyDataScheme: IDataScheme; personDataScheme: IDataScheme; party: IParty$1; } interface IAgreementProducer { agreementProducerFullName: string; agreementProducerIdentifier: string; producerKey: string; producerLeaderIndicator: boolean; producerPercentage: number; party?: IParty$1; } interface I_InsuranceCompany { insurerIdentifier: string; insurerFullName: string; } interface I_Insured { dataSchemeKey: string; insurableInterestTypeCode: string; insuredFullName: string; insuredKey: string; insuredIdentifier: string; insuredProductComponentKey: string; insuredTypeCode: string; quotationDataSchemeKey: string; dataScheme: IDataScheme; quotationDataScheme: IDataScheme; party: IParty$1; } interface IAgreementParameter { code: string; value: string; } interface IRating { productComponentKey: string; productComponentPath: string; includedCode: string; productComponentMarketingName: string; originalEffectiveDateTime: string; effectiveStartDateTime: string; effectiveEndDateTime: string; dataSchemeKey: string; agreementDataSchemeKey: string; insuredKey: string; insuredObjectKey: string; limitList: ILimit[]; deductibleList: IDeductible[]; agreementDataScheme: IAgreementDataScheme; dataScheme: IDataScheme; financialProvisionList: IFinancialProvision[]; premiumBalance: IPremiumBalance; attributeList: IAttributeList[]; ratingAttributeList: IAttributeList[]; } interface ICoverageAgreement { coverageName: string; coveragePath: string; coverageParameterList: IAgreementParameter[]; ratingList: IRating[]; productComponentMarketingName: string; productComponentPath: string; } interface IProductOrPlanPath { productOrPlanPath: string; productOrPlanParameterList: IAgreementParameter[]; coverageList: ICoverageAgreement[]; } interface IClause { calculationOrder: string; productComponentKey: string; productComponentPath: string; includedCode: string; productComponentMarketingName: string; mandatoryIndicator: boolean; freeTextIndicator: boolean; freeTextDescription: string; } interface IAgreementPayer { agreementPayerFullName: string; agreementPayerPartyKey: string; party: IParty$1; } interface IFinancialScheduler { annualizationFactor: number; dayOfMonth: number; firstDueDate: string; modalAmount: number; modalCurrencyCode: string; paymentFrequencyCode: string; paymentQuantity: string; financialSchedulerNumber: string; } interface IOwnershipInformation { partyKey: string; fullName: string; effectiveStartDateTime: string; effectiveEndDateTime: string; ownershipTypeCode: string; ownershipCurrencyTypeCode: string; ownershipAmount: number; ownershipCount: number; party: IParty$1; } interface IPhysicalObjectAttribute { sequence: string; code: string; name: string; dataType: string; format: string; dataDomainCode: string; mandatoryIndicator: boolean; value: any; } interface IPhysicalObjectLocation { contactPointKey: string; locationTypeCode: string; street: string; number: string; unit: string; municipalityCode: string; cityCode: string; regionCode: string; provinceCode: string; countryCode: string; coordinateSystemCode: string; latitude: string; longitude: string; } interface IPhysicalObject { physicalObjectKey: string; versionDateTime: string; physicalObjectClassCode: string; identifierTypeCode: string; identifier: string; description: string; physicalObjectDataSchemeKey: string; grouperIndicator: boolean; grouperPhysicalObjectKey: string; attributeList: IPhysicalObjectAttribute[]; ownershipInformationList: IOwnershipInformation[]; location: IPhysicalObjectLocation; } interface I_Insurer { insurerFullName?: string; insurerLeaderIndicator: boolean; insurerKey: string; insurerPercentage: number; insurerIdentifier?: string; } interface IAgreementSponsor { agreementSponsorFullName: string; agreementSponsorIdentifier: string; producerKey: string; } interface IBeneficiary { beneficiaryIdentifier: string; beneficiaryContactPointKey: string; beneficiaryFullName: string; beneficiaryTypeCode: string; irrevocableIndicator: boolean; designationCode: string; percentage: number; replaceToPartyKey: string; party: IParty$1; contactPoint: IContactPoint; personDataScheme: IDataScheme; companyDataScheme: IDataScheme; personDataSchemeKey: string; companyDataSchemeKey: string; } interface ICommercialAgreement { commercialAccountKey: string; commercialAgreementKey: string; versionDateTime: string; userCode: string; number: string; lineOfProductCode: string; typeCode: string; effectiveStartDateTime: string; effectiveEndDateTime: string; insuranceCompany: I_InsuranceCompany; agreementHolderList: IAgreementHolder[]; agreementProducerList: IAgreementProducer[]; insuredList: I_Insured[]; productOrPlanList: IProductOrPlanPath[]; } interface ICoverage { calculationOrder: string; displayOrder: number; coverageClassCode: string; productComponentKey: string; productComponentPath: string; includedCode: string; productComponentMarketingName: string; toAge: number; durationTypeCode: string; durationUnitCode: string; durationValue: string; mandatoryIndicator: boolean; ratingList: IRating[]; clauseList: IClause; premiumBalance: IPremiumBalance; description: string; } interface IEmployerList { employerContactPointKey: string; employerFullName: string; employerPartyKey: string; party: IParty$1; } interface IFinancialOption { productComponentKey: string; productComponentPath: string; typeCode: string; collectionMethodCode: string; externalIdentifier: string; workDependencyTypeCode: string; referencePeriodEndDate: string; referencePeriodStartDate: string; collectionMandateKey: string; collectionAgreementKey: string; agreementPayer: IAgreementPayer; financialSchedulerList: IFinancialScheduler[]; } interface I_InsuredObject { insuredObjectKey: string; physicalObject: IPhysicalObject; physicalObjectClassCode: string; physicalObjectDataSchemeKey: string; physicalObjectKey: string; quotationPhysicalObjectDataSchemeKey: string; quotationPhysicalObjectDataScheme: any; physicalObjectDataScheme: IDataScheme; } interface I_InvestmentAccount { calculationOrder: string; productComponentKey: string; productComponentPath: string; includedCode: string; accountNumber: string; displayOrder: string; productComponentMarketingName: string; agreedPremium: IFinancialProvision; } interface I_InvestmentVehicle { calculationOrder: string; productComponentKey: string; productComponentPath: string; includedCode: string; productComponentMarketingName: string; displayOrder: number; mandatoryIndicator: boolean; allocatePercentage: number; } interface IProducts { productComponentKey: string; code: string; version: string; class: string; name: string; shortName: string; marketingName: string; description: string; externalCode: string; imageUrl: string; minimumQuantity: number; maximumQuantity: number; displayOrder: number; calculationOrder: number; productSpecification: IProductSpecification; financialOptionSpecification: IFinancialOptionSpecification; coverageSpecification: ICoverageSpecification; investmentAccountSpecification: I_InvestmentAccountSpecification; limitSpecification: ILimitSpecification; deductibleSpecification: IDeductibleTypeCode; componentAttribute: IComponentAttribute[]; componentAttributeRuleList: IComponentAttributeRule[]; } interface IPolicy { policyKey: string; quotationKey: string; policyQuotation: string; versionDateTime: string; policyClassCode: string; quotationRequestKey: string; requestKey: string; policyNumber: string; subGroupNumber: string; certificateNumber: string; quotationNumber?: string; proposalNumber?: string; externalProposalNumber: string; producerAgreementKey: string; customerAgreementKey: string; quotationDateTime?: string; proposalDateTime?: string; issuedDateTime?: string; completedDateTime: string; originalEffectiveDateTime: string; effectiveStartDateTime: string; effectiveEndDateTime?: string; currencyCode: string; statusCode: string; statusDateTime: string; statusReasonCode?: string; renewalIndicator: boolean; productComponentKey: string; planProductComponentKey: string; productComponentMarketingName: string; planProductComponentMarketingName: string; issueTypeCode: string; proposalKey: string; insurerList: I_Insurer[]; agreementHolder: IAgreementHolder; agreementProducerList: IAgreementProducer[]; agreementSponsor: IAgreementSponsor; financialOptionList: IFinancialOption[]; insuredList: I_Insured[]; insuredObjectList: I_InsuredObject[]; employerList: IEmployerList[]; coverageList: ICoverage[]; minimumPremium: IFinancialProvision; clauseList: IClause[]; premiumBalance: IPremiumBalance; beneficiaryList: IBeneficiary[]; investmentVehicleList: I_InvestmentVehicle[]; policyInvestmentAccountList: I_InvestmentAccount[]; productComponent: IProducts; producerAgreement: ICommercialAgreement; customerAgreement: ICommercialAgreement; } interface IEnumList { code: string; enumeration: IEnum[]; } declare class IEnum { code: string; name: string; usableIndicator?: boolean; } interface IExternalCode { code: string; name: string; } interface Insurer { insurerKey?: string; insurerFullName: string; insurerPercentage: number; insurerLeaderIndicator: boolean; insurerIdentifier?: string; } interface AgreementHolder { agreementHolderIdentifier: string; agreementHolderFullName: string; agreementHolderContactPointKey: string; personDataSchemeKey?: string | null; companyDataSchemeKey?: string | null; companyDataScheme?: DataScheme; personDataScheme?: DataScheme; agreementHolderProductComponentKey?: string; agreementHolderProductComponentPath?: string; party: IParty; } interface AgreementProducer { producerKey: string; agreementProducerIdentifier: string; agreementProducerFullName: string; producerPercentage: number; producerLeaderIndicator: boolean; party?: Partial; } interface AgreementSponsor { producerKey: string; agreementSponsorIdentifier: string; agreementSponsorFullName: string; } interface AgreementPayer { agreementPayerPartyKey: string; agreementPayerFullName: string; agreementPayerContactPointKey: string; agreementPayerProductComponentKey: string; agreementPayerProductComponentPath: string; } interface FinancialScheduler { financialSchedulerNumber: number | null; effectiveStartDateTime?: string | null; effectiveEndDateTime?: string | null; dayOfMonth?: number | null; firstDueDate: string | null; modalCurrencyCode: string; modalAmount: number | null; paymentFrequencyCode: string; paymentQuantity?: number; annualizationFactor?: number; productComponentKey?: string; productComponentPath?: string; productComponentMarketingName?: string; } interface FinancialOption { financialOptionNumber?: number; typeCode?: string; collectionMethodCode?: string | null; externalIdentifier?: string | null; workDependencyTypeCode?: string | null; referencePeriodStartDate?: string | null; referencePeriodEndDate?: string | null; collectionMandateKey?: string | null; collectionAgreementKey?: string | null; productComponentKey?: string; productComponentPath?: string; productComponentMarketingName?: string; agreementPayer?: AgreementPayer; financialSchedulerList?: FinancialScheduler[]; } interface PremiumBalance { premiumCurrencyCode?: string | null; premiumAmount?: number | null; premiumVatTaxAmount?: number | null; loadingPremiumCurrencyCode?: string | null; loadingPremiumAmount?: number | null; loadingPremiumVatTaxAmount?: number | null; basicPremiumCurrencyCode?: string | null; basicPremiumAmount?: number | null; basicPremiumVatTaxAmount?: number | null; agreedPremiumCurrencyCode?: string | null; agreedPremiumAmount?: number | null; commissionCurrencyCode?: string | null; commissionAmount?: number | null; commissionVatTaxAmount?: number | null; feeCurrencyCode?: string | null; feeAmount?: number | null; feeVatTaxAmount?: number | null; } interface Limit { appliesToCode?: string; durationUnitCode?: string | null; durationValue?: number | null; paymentFrequencyCode?: string; paymentDurationUnitCode?: string | null; paymentDurationValue?: number | null; currencyCode?: string; minimumAmount?: number | null; maximumAmount?: number | null; fixedAmount?: number | null; valuationTypeCode?: string; percentage?: number | null; includedCode?: string; productComponentKey?: string; productComponentPath?: string; componentTypeCode?: string; productComponentMarketingName?: string; } interface Deductible { includedCode?: string; componentTypeCode: string; typeCode: string; appliesToCode?: string; currencyCode: string; amount?: number | null; percentage?: number | null; durationUnitCode?: string | null; durationValue?: number | null; productComponentKey?: string; productComponentPath: string; productComponentMarketingName: string; } interface RatingAttribute { code: string; name: string; value?: string | null; } interface SurchargeDetail { underwritingRequestKey: string; underwritingItemSequence: number; itemCoverageSequence: number; coverageSurchargeSequence: number; effectiveStartDateTime: string; effectiveEndDateTime?: string | null; reasonCode: string; reasonDescription?: string | null; } interface RestrictionDetail { underwritingRequestKey: string; underwritingItemSequence: number; itemCoverageSequence: number; coverageRestrictionSequence: number; effectiveStartDateTime: string; effectiveEndDateTime?: string | null; reasonCode: string; reasonDescription?: string | null; restrictionTypeCode: string; restrictionDescription?: string | null; } interface ExclusionDetail { underwritingRequestKey: string; underwritingItemSequence: number; itemCoverageSequence: number; coverageExclusionSequence: number; effectiveStartDateTime: string; effectiveEndDateTime?: string | null; reasonCode: string; reasonDescription?: string | null; } interface FinancialProvision { calculationOrder: string; displayOrder: string; effectiveStartDateTime?: string | null; effectiveEndDateTime?: string | null; typeCode: string; currencyCode: string; calculationMethodCode: string; basisAmount?: number | null; rate?: number | null; intermediate01Amount?: number | null; intermediate02Amount?: number | null; intermediate03Amount?: number | null; amount: number; discountRate?: number | null; discountAmount?: number | null; interestMethodCode?: string | null; interestRate?: number | null; interestAmount?: number | null; vatTaxRate: number; vatTaxAmount: number; surchargeDetail?: SurchargeDetail | null; productComponentKey: string; productComponentPath: string; productComponentMarketingName: string; financialOptionNumber?: number | null; } interface Rating { includedCode?: string; originalEffectiveDateTime?: string | null; effectiveStartDateTime?: string | null; effectiveEndDateTime?: string | null; dataSchemeKey?: string; agreementDataSchemeKey?: string | null; agreementDataScheme?: IAgreementDataScheme; dataScheme?: DataScheme; insuredKey?: string | null; insuredObjectKey?: string | null; productComponentKey?: string; productComponentPath?: string; productComponentMarketingName?: string; limitList: Limit[]; deductibleList: Deductible[] | null; ratingAttributeList?: RatingAttribute[]; financialProvisionList?: FinancialProvision[]; premiumBalance: PremiumBalance | null; restrictionDetail?: RestrictionDetail[]; exclusionDetail?: ExclusionDetail | null; } interface Clause { calculationOrder: string; displayOrder: string; includedCode: string; mandatoryIndicator: boolean; freeTextIndicator: boolean; freeTextDescription?: string | null; productComponentKey: string; productComponentPath: string; productComponentMarketingName: string; } interface Coverage { calculationOrder?: string; displayOrder?: number; coverageClassCode: string; includedCode?: string; mandatoryIndicator: boolean; primaryCoverageIndicator?: boolean; productComponentKey?: string; productComponentPath?: string; productComponentMarketingName?: string; ratingList?: Rating[] | null; clauseList?: Clause[] | null; premiumBalance: PremiumBalance | null; description?: string | null; } interface Insured { insuredKey: string; insuredIdentifier: string; insuredFullName: string; insuredTypeCode: string; insurableInterestTypeCode: string; dataSchemeKey?: string | null; quotationDataSchemeKey?: string | null; dataScheme?: DataScheme; quotationDataScheme?: DataScheme; minimumQuantity?: number | null; maximumQuantity?: number | null; displayOrder?: number | null; party?: IParty; insuredProductComponentKey?: string | null; insuredProductComponentPath?: string | null; } interface InsuredObject { insuredObjectKey: string; physicalObjectKey: string; physicalObjectClassCode: string; physicalObjectDataSchemeKey?: string | null; quotationPhysicalObjectDataSchemeKey?: string | null; quotationPhysicalObjectDataScheme?: DataScheme; physicalObjectDataScheme?: DataScheme; minimumQuantity: number; maximumQuantity: number; displayOrder: number; physicalObject: IPhysicalObject; insuredObjectProductComponentKey: string; insuredObjectProductComponentPath: string; } interface Beneficiary { beneficiaryIdentifier?: string | null; beneficiaryContactPointKey?: string | null; beneficiaryFullName?: string | null; beneficiaryTypeCode: string; irrevocableIndicator?: boolean | null; designationCode?: string | null; percentaje?: number | null; replaceToPartyKey?: string | null; personDataSchemeKey?: string | null; companyDataSchemeKey?: string | null; personDataScheme?: DataScheme; companyDataScheme?: DataScheme; minimumQuantity?: number | null; maximumQuantity?: number | null; party: IParty; beneficiaryProductComponentKey: string; beneficiaryProductComponentPath: string; } interface Employer { employerPartyKey: string; employerFullName: string; employerContactPointKey: string; minimumQuantity: number; maximumQuantity: number; employerProductComponentKey: string; employerProductComponentPath: string; } interface InvestmentVehicle { calculationOrder: string; displayOrder: string; includedCode: string; allocatePercentage: number; productComponentKey: string; productComponentPath: string; productComponentMarketingName: string; } interface PolicyInvestmentAccount { calculationOrder: string; displayOrder: string; productComponentKey: string; productComponentPath: string; includedCode: string; accountNumber?: string | null; investmentTypeCode: string; taxPeriodTypeCode: string; taxRegimeCode: string; productComponentMarketingName: string; ratingList?: Rating[]; investmentVehicleList?: InvestmentVehicle[]; clauseList?: Clause[]; premiumBalance: PremiumBalance; } interface IParty { partyKey?: string | null; partyClassCode?: string; identifierTypeCode?: string; identifier?: string; genderCode?: string | null; birthDate?: string; deathDate?: string | null; deathIndicator?: boolean | null; bloodTypeCode?: string | null; maritalStatusCode?: string | null; nationalityCode?: string | null; partyName?: PartyName; personDetail?: IPartyPersonDetail | null; organizationDetail?: IPartyOrganizationDetail; contactPointList?: ContactPoint[]; versionDateTime?: string | null; } interface ContactPoint { contactPointKey: string; referenceCode?: string; partyKey: string | null; entityClass: string; entityKey: string; versionDateTime: string | null; certificationDateTime: string | null; businessContactPoint: IBusinessContactPoint | null; personalContactPoint: PersonalContactPoint | null; } interface PartyName { classCode: string; fullName: string; givenName: string; middleName: string | null; surname1: string; surname2: string | null; usageCode: string; } interface PersonalContactPoint { personalStreet: string; personalNumber: string; personalMunicipalityCode: string; personalCityCode: string; personalRegionCode: string; personalProvinceCode: string; personalCountryCode: string; personalEmailAddress: string; personalUnit: string | null; personalTelephoneCellNumber: string | null; personalTelephoneLandlineNumber: string | null; personalWebPageAddress: string | null; } interface PersonalContactPoint { personalStreet: string; personalNumber: string; personalMunicipalityCode: string; personalCityCode: string; personalRegionCode: string; personalProvinceCode: string; personalCountryCode: string; personalEmailAddress: string; personalUnit: string | null; personalTelephoneCellNumber: string | null; personalTelephoneLandlineNumber: string | null; personalWebPageAddress: string | null; } interface DataScheme { code: string; dataSchemeKey: string; dataSchemeAttributeList: DataSchemeAttribute[]; name: string; version?: string; } interface DataSchemeAttribute { code: string; controlTypeCode: string; dataDomainCode: string | null; dataType: string; dataValueList: IDataValueList[] | null; defaultValue: any; description: string; format?: Format | null; incrementValue: number | null; mandatoryIndicator: boolean; maxValue: number | null; minValue: number | null; name: string; orientationTypeCode: string | null; sequence: string; updateableIndicator: boolean; widthTypeCode: string; query?: string; placeHolder?: string; hiddenIndicator?: boolean; } interface Format { allowNegativeNumbers: string | null; mask: string | null; prefix: string | null; specialCharacters: string[] | null; suffix: string | null; thousandSeparator: string | null; dropSpecialCharacters?: boolean; customPatterns?: any; } interface PolicyRequestInsurer { insurerKey: string; insurerIdentifier: string; insurerFullName: string; insurerPercentage: number; insurerLeaderIndicator: boolean; } /** * Solicitante de la cotización. * * El contrato dejó de exponer campos planos: hoy los valores viajan en `attributeList` —el * mismo `PolicyRequestAttribute` de los asegurados— codificados con el code del esquema que * el producto declara (`personDataSchemeKey` para persona, `companyDataSchemeKey` para * empresa). Ese code viene calificado con el rol (`Requester.givenName`), así que se empareja * por su ÚLTIMO segmento; y qué campos existen lo decide el esquema —el identificador, por * ejemplo, es OPCIONAL—. * * Los campos planos se conservan solo para no romper a quien todavía arme el solicitante con * la forma vieja; `kit-policy-summary` lee primero `attributeList` y cae a ellos. */ interface PolicyRequestRequester { personDataSchemeKey?: string | null; companyDataSchemeKey?: string | null; attributeList?: PolicyRequestAttribute[] | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ givenName?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ surname1?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ emailAddress?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ telephoneCellNumber?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ telephoneLandlineNumber?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ birthDate?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ companyName?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ companyIdentifier?: string | null; /** @deprecated El contrato ya no lo devuelve: usar `attributeList`. */ identifier?: string | null; } interface PolicyRequestProducer { producerKey: string; agreementProducerIdentifier: string; agreementProducerFullName: string; producerPercentage: number; producerLeaderIndicator: boolean; } interface PolicyRequestSponsor { producerKey: string; agreementSponsorIdentifier: string; agreementSponsorFullName: string; } interface PolicyRequestManager { agreementManagerKey: string; agreementManagerPartyKey: string; agreementManagerFullName: string; managerTypeCode: string; } /** * Atributo de un esquema de datos: lo comparten asegurados, materia asegurada y solicitante. * * `name` es opcional porque no todas las consultas lo piden —hay queries que traen solo * `code` y `value`— y para leer el dato no hace falta. */ interface PolicyRequestAttribute { code: string; name?: string | null; value?: string | null; } interface PolicyRequestProductPlan { productComponentKey: string; } interface PolicyRequestInsuredData { partyClassCode: string; insuredIdentifier: string; identifierTypeCode: string; identifier: string; quantity: number; insuredTypeCode: string; insurableInterestTypeCode: string; dataSchemeKey: string; attributeList: PolicyRequestAttribute[]; } interface PolicyRequestInsuredObjectData { physicalObjectClassCode: string; identifierTypeCode: string; identifier: string; quantity: number; physicalObjectDataSchemeKey: string; attributeList: PolicyRequestAttribute[]; } interface PolicyRequestSubgroup { subgroupNumber: string; subgroupName: string; productPlan: PolicyRequestProductPlan; } interface IPolicyRequest { policyRequestKey?: string; requestClass?: string; number?: number; requestDateTime?: string; quotationDateTime?: string | null; quotationEffectiveDate?: string | null; lineOfProductCode?: string; policyClassCode?: string; producerAgreementKey?: string | null; customerAgreementKey?: string | null; salesCampaignKey?: string | null; statusCode?: string; statusDateTime?: string; insurer?: PolicyRequestInsurer[]; requester?: PolicyRequestRequester; agreementProducer?: PolicyRequestProducer[]; agreementSponsor?: PolicyRequestSponsor | null; agreementManager?: PolicyRequestManager | null; productPlanList?: PolicyRequestProductPlan[]; insuredDataList?: PolicyRequestInsuredData[]; insuredObjectDataList?: PolicyRequestInsuredObjectData[]; subgroupList?: PolicyRequestSubgroup[]; documentRequestList?: string[]; insuredObjectList?: InsuredObject[]; } interface PolicyBase { quotationKey?: string | null; proposalKey?: string | null; policyKey?: string | null; versionDateTime?: string; policyClassCode: string; requestKey?: string | null; policyNumber?: string | null; subGroupNumber?: string | null; certificateNumber?: string | null; quotationNumber?: string | null; externalQuotationNumber?: string | null; proposalNumber?: string | null; externalProposalNumber?: string | null; producerAgreementKey?: string | null; customerAgreementKey?: string | null; quotationDateTime?: string | null; proposalDateTime?: string | null; issuedDateTime?: string | null; originalEffectiveDateTime?: string; effectiveStartDateTime?: string; effectiveEndDateTime?: string | null; currencyCode: string; statusCode: string; statusDateTime?: string; statusReasonCode?: string | null; renewalIndicator?: boolean; issueTypeCode?: string; completedDateTime?: string; productComponentKey?: string; productComponentPath?: string; productComponentMarketingName: string; planProductComponentKey?: string | null; planProductComponentPath?: string; planProductComponentMarketingName: string | null; insurerList: Insurer[]; agreementHolder?: AgreementHolder; agreementProducerList?: AgreementProducer[]; agreementSponsor?: AgreementSponsor | null; financialOptionList: FinancialOption[]; insuredList?: Insured[]; insuredObjectList?: InsuredObject[]; beneficiaryList?: Beneficiary[]; employerList?: Employer[]; policyInvestmentAccountList?: PolicyInvestmentAccount[]; investmentVehicleList?: InvestmentVehicle[]; coverageList?: Coverage[]; minimumPremium?: FinancialProvision | null; clauseList?: Clause[]; premiumBalance?: PremiumBalance | null; policyRequest?: IPolicyRequest; } interface IPolicyV2 extends PolicyBase { policyKey: string; } interface IPolicyProposal extends PolicyBase { proposalKey: string; } interface IPolicyQuotation extends PolicyBase { quotationKey: string; } declare enum PolicySummaryType { POLICY = "POLICY", POLICY_REQUEST = "POLICY_REQUEST", POLICY_PROPOSAL = "POLICY_PROPOSAL" } declare class PolicySummaryComponent implements OnInit { private cdr; policy: IPolicyV2 | IPolicyQuotation | IPolicyProposal; enumList: IEnumList[]; excList: { externalCode: IExternalCode[]; }[]; type: PolicySummaryType; readonly PolicySummaryType: typeof PolicySummaryType; readonly fileText: lucide_angular.LucideIconData; readonly HIDDE_DETAILS: string; readonly SHOW_MORE_DETAILS: string; readonly SHOW_LESS: string; readonly SHOW_MORE_COVERAGE_LIST: string; readonly SHOW_MORE_INSURED_LIST: string; readonly SHOW_MORE_BENEFICIARY_LIST: string; private readonly YES; private readonly NO; private readonly datePipe; isShowMorePolicyDetails: boolean; isShowMoreCoverageList: boolean; isShowMoreInsuredList: boolean; isShowMoreObjectInsuredList: boolean; isShowMoreBeneficiaryList: boolean; quantityCoverageListToShow: number; quantityInsuredListToShow: number; quantityObjectInsuredListToShow: number; quantityBeneficiaryListToShow: number; private readonly defaultQuatityToShow; hasValidBeneficiaryData: boolean; private readonly COMPONENT_TYPE_CODE_PRODUCT; decimalPipe: DecimalPipe; tableColumns: { columnDef: string; header: string; }[]; tableDisplayedColumns: string[]; dataSource: Array<{ name: string; insuredAmmout: string; deductible: string; prima: string; }>; tableColumnsProducer: { columnDef: string; header: string; }[]; tableDisplayedColumnsProducer: string[]; dataSourceProducer: Array<{ name: string; identifier: string; lider: string; }>; tableColumnsInsuredObject: { columnDef: string; header: string; }[]; tableDisplayedColumnsInsuredObject: string[]; dataSourceInsuredObject: Array<{ class: string; identifier: string; description: string; }>; tableColumnsInsured: { columnDef: string; header: string; }[]; tableDisplayedColumnsInsured: string[]; dataSourceInsured: Array<{ name: string; identifier: string; type: string; insurableInterest: string; }>; tableColumnsBeneficiary: { columnDef: string; header: string; }[]; tableDisplayedColumnsBeneficiary: string[]; dataSourceBeneficiary: Array<{ name: string; identifier: string; percentage: string; }>; constructor(cdr: ChangeDetectorRef); ngOnInit(): void; private setInitTables; private setTableCoverage; showMoreCoverages(): void; private getLimite; getDeducible(ratingList: Rating[]): string; private findExcNameByCode; getPrima(ratingList: Rating[]): string; findEnumNameByCode(listCode: string, searchCode: string): string; getDate(date: string | undefined | null): string | null; private setTableProducer; private formatRut; private cleanRut; getFormatIdentifier(identifier: string): string; getContactData(contact: IContactPoint[] | ContactPoint[], data: string): string; setTableInsuredObject(): void; setTableInsured(): void; showMoreInsured(): void; private setTableBeneficiary; showMoreBeneficiary(): void; getFloatFixed(number: number): string; private readonly NO_DATA; private readonly GIVEN_NAME_CODE; private readonly SURNAME_CODE; private readonly COMPANY_NAME_CODE; private readonly IDENTIFIER_CODE; private readonly COMPANY_IDENTIFIER_CODE; private readonly EMAIL_CODE; private readonly CELL_NUMBER_CODE; private get requester(); /** `Requester.givenName` → `givenName`: el esquema califica el code con el rol. */ private lastSegment; /** * Valor del atributo cuyo code casa con `matcher`; si el esquema no lo declara, el campo * plano de respaldo. Devuelve null cuando no hay dato con qué llenar la casilla. * * Se exige valor en el `find`: un atributo declarado pero VACÍO no puede tapar a otro que * sí lo trae (persona y empresa pueden convivir en el mismo `attributeList`). */ private getRequesterValue; /** * Nombre con el que se muestra al solicitante. Persona y empresa no comparten atributo * (`givenName` + `surname1` / `companyName`) y ninguno está garantizado: cuando el esquema * es de empresa el único nombre que existe es el de la empresa. */ get requesterName(): string; /** * Identificador formateado, de persona o de empresa. Es OPCIONAL: el producto decide si su * esquema lo declara, así que la casilla tiene que poder quedar sin dato. */ get requesterIdentifier(): string; get requesterCellNumber(): string; get requesterEmail(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class KifPolicySummaryModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { IEnum, KifPolicySummaryModule, PolicySummaryComponent, PolicySummaryType }; export type { IAgreementDataScheme, IAgreementHolder, IAgreementParameter, IAgreementPayer, IAgreementProducer, IAgreementSponsor, IAttributeList, IBeneficiary, IBusinessContactPoint, ICalculationRule, IClause, ICommercialAgreement, IComponentAttribute, IComponentAttributeRule, IContactPoint, ICoverage, ICoverageAgreement, ICoverageSpecification, IDataScheme, IDataSchemeAttribute, IDataValueList, IDeductible, IDeductibleTypeCode, IEmployerList, IEnumList, IEnumerationRule, IExternalCode, IFinancialOption, IFinancialOptionSpecification, IFinancialProvision, IFinancialScheduler, IFormat, ILimit, ILimitSpecification, IOwnershipInformation, IParty$1 as IParty, IPartyName, IPartyOrganizationDetail, IPartyPersonDetail, IPersonalContactPoint, IPhysicalObject, IPhysicalObjectAttribute, IPhysicalObjectLocation, IPolicy, IPolicyProposal, IPolicyQuotation, IPolicyV2, IPremiumBalance, IProductOrPlanPath, IProductSpecification, IProducts, IRangeRule, IRating, I_InsuranceCompany, I_Insured, I_InsuredObject, I_Insurer, I_InvestmentAccount, I_InvestmentAccountSpecification, I_InvestmentVehicle, PolicyBase, PolicyRequestAttribute, PolicyRequestRequester };