/* Options: Date: 2026-07-08 20:27:03 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ExecutiveDashboardRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class ExecKpi { public Key: string; public Label: string; public Value: string; public Sub_: string; public Delta: string; public DeltaUp: boolean; public HasDelta: boolean; public Good: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecCostCategory { public Name: string; public CostUSD: number; public BilledUSD: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecMonthPoint { public Month: string; public RevenueUSD: number; public CostUSD: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecBacklogYear { public Year: string; public ValueUSD: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecBacklog { public TotalUSD: number; public MonthsAhead: number; public AwardsYtdUSD: number; public BurnYtdUSD: number; public ByYear: ExecBacklogYear[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecWipRow { public ContractId: number; public Name: string; public Owner: string; public ValueUSD: number; public PctComplete: number; public BilledUSD: number; public OverUnderUSD: number; public MarginPct: number; public FadePts: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecPipelineStage { public Stage: string; public ValueUSD: number; public Count: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecAgingBucket { public Bucket: string; public AmountUSD: number; public IsRetainage: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecSafetyMetric { public Label: string; public Value: string; public Sub_: string; public Good: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExecutiveDashboard { public Period: string; public FromDate: string; public ToDate: string; public Fy: number; public Kpis: ExecKpi[] = []; public CostVsBilling: ExecCostCategory[] = []; public Monthly: ExecMonthPoint[] = []; public Backlog: ExecBacklog; public Wip: ExecWipRow[] = []; public Pipeline: ExecPipelineStage[] = []; public WinRatePct: number; public Receivables: ExecAgingBucket[] = []; public RetainageUSD: number; public DsoDays: number; public Safety: ExecSafetyMetric[] = []; 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 ExecutiveDashboardResponse { public ResponseStatus: ResponseStatus; public Dashboard: ExecutiveDashboard; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/dashboards/executive", "GET,OPTIONS") export class ExecutiveDashboardRequest implements IReturn { public Period: string; public Region: string; public Fy?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'ExecutiveDashboardRequest'; } public getMethod() { return 'GET'; } public createResponse() { return new ExecutiveDashboardResponse(); } }