/* Options: Date: 2026-04-04 03:04:38 Version: 8.52 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://pfapi.pstpf.com.au/api //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetPagedContactsInRole.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export enum SortOrder { Ascending = 'Ascending', Descending = 'Descending', } export class PagedModel { /** @description Page Number to retrieve */ // @ApiMember(DataType="int", Description="Page Number to retrieve", Name="PageNumber") public PageNumber: number; /** @description Number of records to retrieve */ // @ApiMember(DataType="int", Description="Number of records to retrieve", Name="PageSize") public PageSize: number; /** @description Index of field to sort results by */ // @ApiMember(DataType="int", Description="Index of field to sort results by", Name="SortIndex") public SortIndex: number; /** @description Sort Order - Ascending or Descending */ // @ApiMember(DataType="int", Description="Sort Order - Ascending or Descending", Name="SortOrder") public SortOrder: SortOrder; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactSummaryModel { /** @description Contact linked to the profile */ // @ApiMember(DataType="Guid", Description="Contact linked to the profile", Name="ContactId") public ContactId: string; /** @description Full name of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Full name of the contact linked to the profile", Name="ContactFullName") public ContactFullName: string; /** @description Email Address of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Email Address of the contact linked to the profile", Name="EmailAddress") public EmailAddress: string; /** @description Mobile Number of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Mobile Number of the contact linked to the profile", Name="MobileNumber") public MobileNumber: string; /** @description Primary Phone Number of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Primary Phone Number of the contact linked to the profile", Name="PhoneNumber") public PhoneNumber: string; /** @description Type of contact (person, organisation etc.) linked to the profile */ // @ApiMember(DataType="string", Description="Type of contact (person, organisation etc.) linked to the profile", Name="ContactTypeId") public ContactTypeId: string; /** @description Profile photo of contact linked to the profile */ // @ApiMember(DataType="string", Description="Profile photo of contact linked to the profile", Name="ProfilePhotoUrl") public ProfilePhotoUrl: string; /** @description Thumbnail photo of contact linked to the profile */ // @ApiMember(DataType="string", Description="Thumbnail photo of contact linked to the profile", Name="ProfilePhotoThumbnailUrl") public ProfilePhotoThumbnailUrl: string; /** @description Profile description */ // @ApiMember(DataType="string", Description="Profile description", Name="Description") public Description: string; /** @description Employment Industry */ // @ApiMember(DataType="string", Description="Employment Industry", Name="EmploymentIndustry") public EmploymentIndustry: string; /** @description Employment Role */ // @ApiMember(DataType="string", Description="Employment Role", Name="EmploymentRole") public EmploymentRole: string; /** @description Areas of Work */ // @ApiMember(DataType="string", Description="Areas of Work", Name="EmploymentGeographicArea") public EmploymentGeographicArea: string; /** @description Timezone Name */ // @ApiMember(DataType="string", Description="Timezone Name", Name="TimezoneName", ParameterType="query") public TimezoneName: string; /** @description The primary address of the contact */ // @ApiMember(DataType="string", Description="The primary address of the contact", Name="PrimaryAddress", ParameterType="query") public PrimaryAddress: string; /** @description Have all connections to the contact been removed? */ // @ApiMember(DataType="bool", Description="Have all connections to the contact been removed?", Name="IsRemovedContact") public IsRemovedContact: 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); } } // @ApiResponse(Description="Contacts connected to contact by criteria, returning minimal number of columns, and response status") export class GetSlimContactsResponse { public Contacts: ContactSummaryModel[]; public TotalContacts: number; public ResponseStatus: ResponseStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/contacts/paged/{RoleId}") export class GetPagedContactsInRole extends PagedModel implements IReturn { /** @description Get contacts connected to the current licensee in the specified role */ // @ApiMember(Description="Get contacts connected to the current licensee in the specified role", Name="RoleId") public RoleId: string; /** @description Get contacts of the specified type */ // @ApiMember(Description="Get contacts of the specified type", Name="ContactTypes") public ContactTypes: string[]; /** @description Contact statuses to search for, i.e. Real and/or Virtual */ // @ApiMember(DataType="List", Description="Contact statuses to search for, i.e. Real and/or Virtual", IsRequired=true, Name="Statuses") public Statuses: string[] = []; /** @description Text to filter contacts on. searches for a contact with matches to the string. */ // @ApiMember(DataType="string", Description="Text to filter contacts on. searches for a contact with matches to the string.", Name="SearchText") public SearchText: string; /** @description If you want just bare-bones contact info set this to false, if not specified it defaults to true. */ // @ApiMember(DataType="bool?", Description="If you want just bare-bones contact info set this to false, if not specified it defaults to true.", Name="IncludeDetails") public IncludeDetails?: boolean; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'GetPagedContactsInRole'; } public getMethod() { return 'GET'; } public createResponse() { return new GetSlimContactsResponse(); } }