/* tslint:disable */ /* eslint-disable */ /** * MailSlurp API * MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It\'s designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository * * The version of the OpenAPI document: 6.5.2 * Contact: contact@mailslurp.dev * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { exists, mapValues } from '../runtime'; import { EmailThreadProjection, EmailThreadProjectionFromJSON, EmailThreadProjectionFromJSONTyped, EmailThreadProjectionToJSON, PageableObject, PageableObjectFromJSON, PageableObjectFromJSONTyped, PageableObjectToJSON, SortObject, SortObjectFromJSON, SortObjectFromJSONTyped, SortObjectToJSON, } from './'; /** * Paginated email thread projection results. * @export * @interface PageEmailThreadProjection */ export interface PageEmailThreadProjection { /** * * @type {Array} * @memberof PageEmailThreadProjection */ content?: Array; /** * * @type {PageableObject} * @memberof PageEmailThreadProjection */ pageable?: PageableObject; /** * * @type {number} * @memberof PageEmailThreadProjection */ totalPages: number; /** * * @type {number} * @memberof PageEmailThreadProjection */ totalElements: number; /** * * @type {boolean} * @memberof PageEmailThreadProjection */ last?: boolean; /** * * @type {number} * @memberof PageEmailThreadProjection */ size?: number; /** * * @type {number} * @memberof PageEmailThreadProjection */ number?: number; /** * * @type {number} * @memberof PageEmailThreadProjection */ numberOfElements?: number; /** * * @type {SortObject} * @memberof PageEmailThreadProjection */ sort?: SortObject; /** * * @type {boolean} * @memberof PageEmailThreadProjection */ first?: boolean; /** * * @type {boolean} * @memberof PageEmailThreadProjection */ empty?: boolean; } export function PageEmailThreadProjectionFromJSON( json: any ): PageEmailThreadProjection { return PageEmailThreadProjectionFromJSONTyped(json, false); } export function PageEmailThreadProjectionFromJSONTyped( json: any, ignoreDiscriminator: boolean ): PageEmailThreadProjection { if (json === undefined || json === null) { return json; } return { content: !exists(json, 'content') ? undefined : (json['content'] as Array).map(EmailThreadProjectionFromJSON), pageable: !exists(json, 'pageable') ? undefined : PageableObjectFromJSON(json['pageable']), totalPages: json['totalPages'], totalElements: json['totalElements'], last: !exists(json, 'last') ? undefined : json['last'], size: !exists(json, 'size') ? undefined : json['size'], number: !exists(json, 'number') ? undefined : json['number'], numberOfElements: !exists(json, 'numberOfElements') ? undefined : json['numberOfElements'], sort: !exists(json, 'sort') ? undefined : SortObjectFromJSON(json['sort']), first: !exists(json, 'first') ? undefined : json['first'], empty: !exists(json, 'empty') ? undefined : json['empty'], }; } export function PageEmailThreadProjectionToJSON( value?: PageEmailThreadProjection | null ): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { content: value.content === undefined ? undefined : (value.content as Array).map(EmailThreadProjectionToJSON), pageable: PageableObjectToJSON(value.pageable), totalPages: value.totalPages, totalElements: value.totalElements, last: value.last, size: value.size, number: value.number, numberOfElements: value.numberOfElements, sort: SortObjectToJSON(value.sort), first: value.first, empty: value.empty, }; }