/* Options: Date: 2026-08-01 13:36:30 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: PayRulesCascadeRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class PayRuleDocSection { public H: string; public T: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PayRuleTuneOption { public Label: string; public Sub: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PayRuleTune { public Intro: string; public Options: PayRuleTuneOption[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PayRuleDef { public RuleId: string; public Name: string; public Kind: string; public Demand: string; public SourcePolicyName: string; public CascadeLevel: string; public Why: string; public Change: string; public OverrideWho: string; public OverrideConsequence: string; public NoNote: string; public LegalVerify: string; public Params: { [index:string]: string; } = {}; public Doc: PayRuleDocSection[] = []; public Tune: PayRuleTune; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PayRulePolicyDoc { public Intro: string; public LockLine: string; public TemplateName: string; public Rules: PayRuleDef[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PayRulePolicy { public PayRulePolicyId: number; public PayRulePolicyUID: string; public Name: string; public ScopeLevel: string; public BranchId?: string; public JurisdictionKey: string; public CbaKey: string; public WorkTypeKey: string; public CurrentVersion: number; public IsActive: boolean; public BranchName: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PayRulePolicyVersionInfo { public PayRulePolicyVersionId: number; public VersionNumber: number; public ChangeNote: string; public ChangedByName: string; public CreatedAtUtc: 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 PayRulesCascadeResponse { public Policy: PayRulePolicy; public Doc: PayRulePolicyDoc; public VersionNumber: number; public Versions: PayRulePolicyVersionInfo[] = []; public CanEditRules: boolean; public ResponseStatus: ResponseStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/workforce/payrules", "GET") export class PayRulesCascadeRequest implements IReturn { public PayRulePolicyId?: number; public VersionNumber?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'PayRulesCascadeRequest'; } public getMethod() { return 'GET'; } public createResponse() { return new PayRulesCascadeResponse(); } }