UNPKG

@turnbuckle/aprs-calculator-services

Version:

Anchorpoint Risk Calculator Service.

49 lines (48 loc) 3.17 kB
import { AgeAnalysisItemInterface } from '../../interfaces/array-item-models/age-analysis-item.interface'; import { scoreAgeAnalysis } from './score-age-analysis'; import { ageFinancialTransactions } from './age-financial-transactions'; import { createDefaultsTable } from './helper-functions/create-defaults-table'; import { calculateCcfTermStructure } from './calculate-ccf-term-structure'; import { CalculateLgdTermStructureOutputModelInterface } from '../../interfaces/output-models/calculate-lgd-term-structure-output-model.interface'; import { ScoreAgeAnalysisInputModelInterface } from '../../interfaces/input-models/score-age-analysis-input-model.interface'; import { CreateDefaultsTableInputModelInterface } from '../../interfaces/input-models/create-defaults-table-input-model.interface'; import { CalculateLgdTermStructureInputModelInterface } from '../../interfaces/input-models/calculate-lgd-term-structure-input-model.interface'; import { calculateCohortMatrix } from './calculate-cohort-matrix'; import { calculateHazardRateMatrix } from './calculate-hazard-rate-matrix'; import { BaseOutputInterface } from '../../interfaces/output-models/base-output.interface'; import { MatrixBaseInputModelInterface } from '../../interfaces/common-models/matrix-base-input-model.interface'; declare type TCompositeLgdTermStructureInput = ScoreAgeAnalysisInputModelInterface<AgeAnalysisItemInterface> & Omit<CreateDefaultsTableInputModelInterface<AgeAnalysisItemInterface>, "ageAnalysis"> & Omit<CalculateLgdTermStructureInputModelInterface, "defaultsTable">; declare type TCompositeMatrixInput = ScoreAgeAnalysisInputModelInterface<AgeAnalysisItemInterface> & Omit<MatrixBaseInputModelInterface, "absorbingStates">; declare type TCompositeMatrixOutput = { cohortMatrix: number[][]; migrationMatrix: number[][]; } & BaseOutputInterface; export declare class HazardRateFacade { static ageFinancialTransactions: typeof ageFinancialTransactions; static scoreAgeAnalysis: typeof scoreAgeAnalysis; static calculateCcfTermStructure: typeof calculateCcfTermStructure; static createDefaultsTable: typeof createDefaultsTable; static calculateHazardRateMatrix: typeof calculateHazardRateMatrix; static calculateCohortMatrix: typeof calculateCohortMatrix; /** * ageAnalysis: AgeAnalysisItemInterface[] * scoringType: ScoringTableTypeEnums * scoringTable: ScoringTableItemInterface[] * absorbingStates: number * defaultsRating: number * trackDefaultEvents: TrackDefaultEventTypeEnums * interestRate: number */ static calculateLgdTermStructure(input: TCompositeLgdTermStructureInput): Promise<CalculateLgdTermStructureOutputModelInterface>; /** * ageAnalysis: AgeAnalysisItemInterface[] * scoringType: ScoringTableTypeEnums * scoringTable: ScoringTableItemInterface[] * absorbingStates: number * maxRating: number * dataFrequencyScalar: number */ static calculateAllMatrices(input: TCompositeMatrixInput): Promise<TCompositeMatrixOutput>; private static scoreAgeAnalysisIfNotAlreadyScored; } export {};