/* Options: Date: 2026-06-13 13:26:53 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://riskstoreng-dev.nephila.com/api //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ReProcessAnalysisRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface IPost { } export enum AnalysisType { NotSet = 'NotSet', Standard = 'Standard', RunOff = 'RunOff', } export enum SimulationLossPerspective { NotSet = 'NotSet', Agg = 'Agg', Occ = 'Occ', } export enum ReinsurancePremiumLossType { NotSet = 'NotSet', Net = 'Net', Gross = 'Gross', } export enum ResultOutputLevel { NotSet = 'NotSet', PortfolioMetrics = 'PortfolioMetrics', Curve = 'Curve', YLT = 'YLT', TailIntensity = 'TailIntensity', DealYlt = 'DealYlt', DealElt = 'DealElt', DealEltWithIndustryLoss = 'DealEltWithIndustryLoss', PortfolioElt = 'PortfolioElt', PortfolioEltWithIndustryLoss = 'PortfolioEltWithIndustryLoss', EventSetGeneration = 'EventSetGeneration', PortfolioRaps = 'PortfolioRaps', DealRaps = 'DealRaps', PortfolioSepyIndustryLoss = 'PortfolioSepyIndustryLoss', DealSepyIndustryLoss = 'DealSepyIndustryLoss', } export class AnalysisPortfolioEventSetResult implements IObjectWithId, IHasAnalysisId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisId: number; // @DataMember(Order=3) public analysisPortfolioEventSetConfigurationId: number; // @DataMember(Order=4) public analysisResultId: number; // @DataMember(Order=5) public portfolioName: string; // @DataMember(Order=6) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class AnalysisResult implements IObjectWithId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisId: number; // @DataMember(Order=3) public analysisConfigurationId: number; // @DataMember(Order=4) public container: string; // @DataMember(Order=5) public blobName: string; // @DataMember(Order=6) public resultTableName: string; // @DataMember(Order=7) public analysisType: AnalysisType; // @DataMember(Order=8) public simulationLossPerspective: SimulationLossPerspective; // @DataMember(Order=9) public reinsurancePremiumLossType: ReinsurancePremiumLossType; // @DataMember(Order=10) public outputLevel: ResultOutputLevel; // @DataMember(Order=11) public metaRiskId: number; // @DataMember(Order=12) public analysisPortfolioEventSetResults: AnalysisPortfolioEventSetResult[]; // @DataMember(Order=13) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum ProcessingStatus { New = 0, Processing = 1, Failed = 10, Successful = 20, } export class AnalysisPortfolioEventSetConfiguration implements IObjectWithId, IHasAnalysisId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisId: number; // @DataMember(Order=3) public analysisConfigurationId: number; // @DataMember(Order=4) public portfolioName: string; // @DataMember(Order=5) public modelId: string; // @DataMember(Order=6) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class AnalysisConfiguration implements IObjectWithId, IHasAnalysisId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisId: number; // @DataMember(Order=3) public windowStartDate?: string; // @DataMember(Order=4) public windowEndDate?: string; // @DataMember(Order=5) public standardEnabled: boolean; // @DataMember(Order=6) public runOffEnabled: boolean; // @DataMember(Order=7) public aggregateEnabled: boolean; // @DataMember(Order=8) public occurrenceEnabled: boolean; // @DataMember(Order=9) public nettEnabled: boolean; // @DataMember(Order=10) public grossEnabled: boolean; // @DataMember(Order=11) public tailIntensityPercentageStart?: number; // @DataMember(Order=12) public tailIntensityPercentageEnd?: number; // @DataMember(Order=13) public metaRiskId: number; // @DataMember(Order=14) public outputLevel: ResultOutputLevel; // @DataMember(Order=15) public processingStatus: ProcessingStatus; // @DataMember(Order=16) public eventLossFloorStartRange?: number; // @DataMember(Order=17) public eventLossFloorEndRange?: number; // @DataMember(Order=18) public analysisPortfolioEventSetConfigurations: AnalysisPortfolioEventSetConfiguration[]; // @DataMember(Order=19) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum TransactionType { NotSet = 'NotSet', S = 'S', B = 'B', } // @DataContract export class AnalysisPortfolioAllocation implements IObjectWithId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisDealId: number; // @DataMember(Order=3) // @Validate(Validator="NotEmpty", Message="PortfolioName is mandatory") public portfolioName: string; // @DataMember(Order=4) public allocationPercentage: number; // @DataMember(Order=5) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class AnalysisDeal implements IObjectWithId, IHasAnalysisId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisId: number; // @DataMember(Order=3) public sourceDealId: string; // @DataMember(Order=4) public dealRef: string; // @DataMember(Order=5) public sourceDealSystem: string; // @DataMember(Order=6) public eventSetId: number; // @DataMember(Order=7) public rol: number; // @DataMember(Order=8) public limit: number; // @DataMember(Order=9) public inceptionDate: string; // @DataMember(Order=10) public expiryDate: string; // @DataMember(Order=11) public transactionType: TransactionType; // @DataMember(Order=12) public allocations: AnalysisPortfolioAllocation[]; // @DataMember(Order=13) public perspectiveIdOverride?: number; // @DataMember(Order=14) public eventSetIdOverride?: number; // @DataMember(Order=15) public modelAsOfDateOverride?: string; // @DataMember(Order=16) public sourceModelSystemOverride: string; // @DataMember(Order=17) public sourceModelIdOverride: string; // @DataMember(Order=18) public sourceEventSetIdOverride: string; // @DataMember(Order=19) public eventSourceSystemOverride: string; // @DataMember(Order=20) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class AnalysisEventIdFilter implements IObjectWithId, IHasAnalysisId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public analysisId: number; // @DataMember(Order=3) public eventSourceId: number; // @DataMember(Order=4) public eventId: number; // @DataMember(Order=5) public rowIdentifier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum MessageType { NotSet = 'NotSet', Persistence = 'Persistence', Archival = 'Archival', } // @DataContract export class MessageTracking { // @DataMember(Order=1) public id: string; // @DataMember(Order=2) public analysisId?: number; // @DataMember(Order=3) public processingStatus: ProcessingStatus; // @DataMember(Order=4) public messageType: MessageType; // @DataMember(Order=5) public createdDateUtc: string; // @DataMember(Order=6) public updatedDateUtc: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class Analysis implements IObjectWithId { // @DataMember(Order=1) public id: number; // @DataMember(Order=2) public name: string; // @DataMember(Order=3) public modelAsOfDate?: string; // @DataMember(Order=4) public perspectiveId: number; // @DataMember(Order=5) public configurations: AnalysisConfiguration[]; // @DataMember(Order=6) public deals: AnalysisDeal[]; // @DataMember(Order=7) public eventIdFilters: AnalysisEventIdFilter[]; // @DataMember(Order=8) public createdBy: string; // @DataMember(Order=9) public createdDateUtc: string; // @DataMember(Order=10) public completedDateUtc?: string; // @DataMember(Order=11) public legacyAnalysisId?: number; // @DataMember(Order=12) public resultPersistenceTracking: MessageTracking[]; // @DataMember(Order=13) public processingStatus: ProcessingStatus; // @DataMember(Order=14) public saveResults: boolean; // @DataMember(Order=15) public eventSourceSystem: string; // @DataMember(Order=16) public updatedDateUtc: string; // @DataMember(Order=17) public isExpired: boolean; // @DataMember(Order=18) public rowIdentifier: string; // @DataMember(Order=19) public errorMessage: string; /** @description Take the minimum simulation count when we have different simulations between event sets */ // @DataMember(Order=20) // @ApiMember(DataType="boolean", Description="Take the minimum simulation count when we have different simulations between event sets") public ignoreSimulationCountMismatch: boolean; // @DataMember(Order=21) // @Ignore() public finalStatus: ProcessingStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseError { // @DataMember(Order=1) public errorCode: string; // @DataMember(Order=2) public fieldName: string; // @DataMember(Order=3) public message: string; // @DataMember(Order=4) public meta: { [index:string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public errorCode: string; // @DataMember(Order=2) public message: string; // @DataMember(Order=3) public stackTrace: string; // @DataMember(Order=4) public errors: ResponseError[]; // @DataMember(Order=5) public meta: { [index:string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AnalysisPortfolioMetric implements IHasAnalysisResultId { public analysisType: AnalysisType; public simulationLossPerspective: SimulationLossPerspective; public reinsurancePremiumLossType: ReinsurancePremiumLossType; public metricDescription: string; public portfolioName: string; public metric: number; public metaRiskId: number; public simulation?: number; public analysisResultId: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IObjectWithId { id: number; rowIdentifier: string; } export interface IHasAnalysisResultId { analysisResultId: number; } export interface IHasAnalysisId { analysisId: number; } export class RollupResponse { public analysis: Analysis; public portfolioMetrics: AnalysisPortfolioMetric[]; public results: AnalysisResult[]; public responseStatus: ResponseStatus; public unresolvedDealIds: string[]; public unlinkedDealIds: ValueTuple[]; public message: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/riskstore/rollup/reprocess", "POST") export class ReProcessAnalysisRequest implements IReturn, IPost { /** @description The analysis id to run */ // @ApiMember(DataType="integer", Description="The analysis id to run", Format="int64", IsRequired=true) public analysisId: number; /** @description Pass true when the analysis is still in processing state and you know it will not finish */ // @ApiMember(DataType="boolean", Description="Pass true when the analysis is still in processing state and you know it will not finish") public forceRerunWhenProcessing: boolean; /** @description Pass true to make sure the analysis results are not removed */ // @ApiMember(DataType="boolean", Description="Pass true to make sure the analysis results are not removed") public permanentlySaveResults: boolean; /** @description Take the minimum simulation count when we have different simulations between event sets */ // @ApiMember(DataType="boolean", Description="Take the minimum simulation count when we have different simulations between event sets") public ignoreSimulationCountMismatch: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'ReProcessAnalysisRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new RollupResponse(); } }