/* tslint:disable */ /* eslint-disable */ /** * Fabric API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { PresignedFile } from './PresignedFile'; import { PresignedFileFromJSON, PresignedFileFromJSONTyped, PresignedFileToJSON, PresignedFileToJSONTyped, } from './PresignedFile'; import type { PresignedImage } from './PresignedImage'; import { PresignedImageFromJSON, PresignedImageFromJSONTyped, PresignedImageToJSON, PresignedImageToJSONTyped, } from './PresignedImage'; import type { WebpageMetadata } from './WebpageMetadata'; import { WebpageMetadataFromJSON, WebpageMetadataFromJSONTyped, WebpageMetadataToJSON, WebpageMetadataToJSONTyped, } from './WebpageMetadata'; import type { ProcessingState } from './ProcessingState'; import { ProcessingStateFromJSON, ProcessingStateFromJSONTyped, ProcessingStateToJSON, ProcessingStateToJSONTyped, } from './ProcessingState'; /** * * @export * @interface Webpage */ export interface Webpage { /** * * @type {string} * @memberof Webpage */ 'siteName'?: string | null; /** * * @type {string} * @memberof Webpage */ 'title'?: string | null; /** * * @type {string} * @memberof Webpage */ 'url'?: string | null; /** * * @type {string} * @memberof Webpage */ 'description'?: string | null; /** * * @type {PresignedImage} * @memberof Webpage */ 'image': PresignedImage | null; /** * * @type {PresignedImage} * @memberof Webpage */ 'favicon': PresignedImage | null; /** * * @type {PresignedFile} * @memberof Webpage */ 'html': PresignedFile | null; /** * * @type {PresignedFile} * @memberof Webpage */ 'reader': PresignedFile | null; /** * * @type {PresignedImage} * @memberof Webpage */ 'screenshot': PresignedImage | null; /** * * @type {ProcessingState} * @memberof Webpage */ 'status'?: ProcessingState | null; /** * * @type {WebpageMetadata} * @memberof Webpage */ 'metadata'?: WebpageMetadata | null; /** * * @type {string} * @memberof Webpage */ 'hostname'?: string | null; } /** * Check if a given object implements the Webpage interface. */ export function instanceOfWebpage(value: object): value is Webpage { if (!('image' in value) || value['image'] === undefined) return false; if (!('favicon' in value) || value['favicon'] === undefined) return false; if (!('html' in value) || value['html'] === undefined) return false; if (!('reader' in value) || value['reader'] === undefined) return false; if (!('screenshot' in value) || value['screenshot'] === undefined) return false; return true; } export function WebpageFromJSON(json: any): Webpage { return WebpageFromJSONTyped(json, false); } export function WebpageFromJSONTyped(json: any, ignoreDiscriminator: boolean): Webpage { if (json == null) { return json; } const result = { } as Webpage; if (json['siteName'] !== undefined) { if (json['siteName'] === null) { result['siteName'] = null; } else { result['siteName'] = json['siteName']; } } if (json['title'] !== undefined) { if (json['title'] === null) { result['title'] = null; } else { result['title'] = json['title']; } } if (json['url'] !== undefined) { if (json['url'] === null) { result['url'] = null; } else { result['url'] = json['url']; } } if (json['description'] !== undefined) { if (json['description'] === null) { result['description'] = null; } else { result['description'] = json['description']; } } if (json['image'] !== undefined) { if (json['image'] === null) { result['image'] = null; } else { result['image'] = PresignedImageFromJSON(json['image']); } } if (json['favicon'] !== undefined) { if (json['favicon'] === null) { result['favicon'] = null; } else { result['favicon'] = PresignedImageFromJSON(json['favicon']); } } if (json['html'] !== undefined) { if (json['html'] === null) { result['html'] = null; } else { result['html'] = PresignedFileFromJSON(json['html']); } } if (json['reader'] !== undefined) { if (json['reader'] === null) { result['reader'] = null; } else { result['reader'] = PresignedFileFromJSON(json['reader']); } } if (json['screenshot'] !== undefined) { if (json['screenshot'] === null) { result['screenshot'] = null; } else { result['screenshot'] = PresignedImageFromJSON(json['screenshot']); } } if (json['status'] !== undefined) { if (json['status'] === null) { result['status'] = null; } else { result['status'] = ProcessingStateFromJSON(json['status']); } } if (json['metadata'] !== undefined) { if (json['metadata'] === null) { result['metadata'] = null; } else { result['metadata'] = WebpageMetadataFromJSON(json['metadata']); } } if (json['hostname'] !== undefined) { if (json['hostname'] === null) { result['hostname'] = null; } else { result['hostname'] = json['hostname']; } } return result; } export function WebpageToJSON(json: any): Webpage { return WebpageToJSONTyped(json, false); } export function WebpageToJSONTyped(value?: Webpage | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'siteName': value['siteName'], 'title': value['title'], 'url': value['url'], 'description': value['description'], 'image': PresignedImageToJSON(value['image']), 'favicon': PresignedImageToJSON(value['favicon']), 'html': PresignedFileToJSON(value['html']), 'reader': PresignedFileToJSON(value['reader']), 'screenshot': PresignedImageToJSON(value['screenshot']), 'status': ProcessingStateToJSON(value['status']), 'metadata': WebpageMetadataToJSON(value['metadata']), 'hostname': value['hostname'], }; }