/* Options: Date: 2026-10-12 00:15:59 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: CourierProfilePreviewRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class CourierPay { public WorkerClass: string; public PerPickup: number; public PerStop: number; public PerMissed: number; public PerCancel: number; public WaitAfterMin: number; public WaitPerMin: number; public MileageOn: boolean; public PerMile: number; public MinPerJob: number; public TipsPct: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierDispatch { public PingSecs: number; public RadiusMi: number; public DeclinePenalty: boolean; public NextRule: string; public GoMin: number; public LastMin: number; public NearFull: number; public MarginMin: number; public TrafficSource: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierMissed { public WaitMin: number; public Fee: number; public CancelFee: number; public AutoRebook: boolean; public RequireContact: boolean; public RequirePhoto: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierPrivacy { public ThreadHrs: number; public PhotoDays: number; public LockNames: string; public HideAddr: boolean; public LiveEta: boolean; public Tipping: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierPricing { public Base: number; public PerUnit: number; public PerMile: number; public MinOrder: number; public TaxPct: number; public FinalAfterCount: boolean; public ServiceArea: string[] = []; public WindowMin: number; public Surcharges: { [index:string]: number; } = {}; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierBooking { public On: boolean; public Slug: string; public Asap: boolean; public MinLeadMin: number; public Open: string; public Close: string; public DriveBufferMin: number; public Zips: string[] = []; public Recurring: boolean; public PayTiming: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierLevelView { public Code: string; public Name: string; public InBy: string; public WithinMin: number; public Ready: string; public Days: number[] = []; public IsOn: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierFacilityView { public Code: string; public Name: string; public Address: string; public IntakeMin: number; public Levels: CourierLevelView[] = []; public Holidays: string[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierVehicleView { public EquipmentID: number; public UnitNumber: string; public Name: string; public Unit: string; public Cap: number; public Cold: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierProfileContext { public Drivers: number; public ProfileCount: number; public PayPlanId?: number; public ZoneMode: string; public ZoneName: string; public ZoneCount: number; public HasBookingPage: boolean; public HasRateConfig: boolean; public VehicleFacts: { [index:string]: string; } = {}; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierProfileView { public CourierProfileID: number; public Code: string; public Name: string; public BusinessName: string; public RouteShape: string; public Enabled: boolean; public TemplateFrom: string; public UnitOne: string; public UnitMany: string; public FacilityNoun: string; public UnitOneEs: string; public UnitManyEs: string; public FacilityNounEs: string; public TagMode: string; public TagFormats: string[] = []; public Pay: CourierPay; public Dispatch: CourierDispatch; public Missed: CourierMissed; public Privacy: CourierPrivacy; public Pricing: CourierPricing; public Booking: CourierBooking; public Facilities: CourierFacilityView[] = []; public Vehicles: CourierVehicleView[] = []; public Proof: { [index:string]: { [index:string]: string; }; } = {}; public Context: CourierProfileContext; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierProfileSummary { public CourierProfileID: number; public Code: string; public Name: string; public BusinessName: string; public RouteShape: string; public Enabled: boolean; public TemplateFrom: string; public Drivers: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierTemplateOption { public Key: string; public Label: string; public Detail: string; public RouteShape: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierIssue { public Key: string; public Section: string; public Message: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierChange { public Key: string; public Section: string; public Label: string; public From: string; public To: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierPreviewLine { public K: string; public V: string; public Dot: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierPreview { public DeadlineTitle: string; public DeadlineLead: string; public RoomW: string; public LastW: string; public GoW: string; public Zones: CourierPreviewLine[] = []; public PaySub: string; public PayRows: CourierPreviewLine[] = []; public PayTotal: string; public ProofRows: CourierPreviewLine[] = []; public Ping: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CourierFleetVehicle { public EquipmentID: number; public UnitNumber: string; public Name: string; public VehicleType: string; public Unit: string; public Cap?: number; public Cold: boolean; public Status: string; public Assigned: boolean; 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 CourierResponse { public Profiles: CourierProfileSummary[] = []; public Templates: CourierTemplateOption[] = []; public Profile: CourierProfileView; public Issues: CourierIssue[] = []; public Changes: CourierChange[] = []; public Preview: CourierPreview; public Fleet: CourierFleetVehicle[] = []; public ResponseStatus: ResponseStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/dispatch/courier/profiles/{Id}/preview", "POST,OPTIONS") export class CourierProfilePreviewRequest implements IReturn { public Id: number; public Draft: CourierProfileView; public FacilityCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'CourierProfilePreviewRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new CourierResponse(); } }