/* Options: Date: 2026-06-13 13:15:03 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: FindAnalysisRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export enum ProcessingStatus { New = 0, Processing = 1, Failed = 10, Successful = 20, } // @DataContract export class QueryBase { // @DataMember(Order=1) public skip?: number; // @DataMember(Order=2) public take?: number; // @DataMember(Order=3) public orderBy: string; // @DataMember(Order=4) public orderByDesc: string; // @DataMember(Order=5) public include: string; // @DataMember(Order=6) public fields: string; // @DataMember(Order=7) public meta: { [index:string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class QueryDb extends QueryBase { public constructor(init?: Partial>) { super(init); (Object as any).assign(this, init); } } 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 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); } } // @DataContract export class QueryResponse { // @DataMember(Order=1) public offset: number; // @DataMember(Order=2) public total: number; // @DataMember(Order=3) public results: T[]; // @DataMember(Order=4) public meta: { [index:string]: string; }; // @DataMember(Order=5) public responseStatus: ResponseStatus; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } export interface IObjectWithId { id: number; rowIdentifier: string; } export interface IHasAnalysisId { analysisId: number; } // @Route("/riskstore/analysis", "GET") export class FindAnalysisRequest extends QueryDb implements IReturn> { /** @description The Ids of the Analyses */ // @ApiMember(DataType="integer", Description="The Ids of the Analyses", Format="int64") public ids: number[]; /** @description The partial name of the analyses */ // @ApiMember(DataType="string", Description="The partial name of the analyses") public name: string; /** @description Filter only Standard analysis type */ // @ApiMember(DataType="boolean", Description="Filter only Standard analysis type") public standardEnabled?: boolean; /** @description Filter only Run Off analysis type */ // @ApiMember(DataType="boolean", Description="Filter only Run Off analysis type") public runOffEnabled?: boolean; /** @description The perspective id used for the analysis */ // @ApiMember(DataType="integer", Description="The perspective id used for the analysis", Format="int32") public perspectiveId?: number; /** @description The partial name of the user who run the analysis */ // @ApiMember(DataType="string", Description="The partial name of the user who run the analysis") public createdBy: string; /** @description The analysis run date to filter from */ // @ApiMember(DataType="string", Description="The analysis run date to filter from", Format="date-time") public analysisRunFromDateTime?: string; /** @description The analysis run date to filter to */ // @ApiMember(DataType="string", Description="The analysis run date to filter to", Format="date-time") public analysisRunToDateTime?: string; /** @description The status of the analysis. 1 = Processing, 10 = Failed, 20 = Successful */ // @ApiMember(DataType="integer", Description="The status of the analysis. 1 = Processing, 10 = Failed, 20 = Successful", Format="int32") public processingStatus?: ProcessingStatus; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'FindAnalysisRequest'; } public getMethod() { return 'GET'; } public createResponse() { return new QueryResponse(); } }