/* 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 { BookmarkMetadataBlockTranscript } from './BookmarkMetadataBlockTranscript'; import { BookmarkMetadataBlockTranscriptFromJSON, BookmarkMetadataBlockTranscriptFromJSONTyped, BookmarkMetadataBlockTranscriptToJSON, BookmarkMetadataBlockTranscriptToJSONTyped, } from './BookmarkMetadataBlockTranscript'; import type { BookmarkMetadataBlockDominantColorsInner } from './BookmarkMetadataBlockDominantColorsInner'; import { BookmarkMetadataBlockDominantColorsInnerFromJSON, BookmarkMetadataBlockDominantColorsInnerFromJSONTyped, BookmarkMetadataBlockDominantColorsInnerToJSON, BookmarkMetadataBlockDominantColorsInnerToJSONTyped, } from './BookmarkMetadataBlockDominantColorsInner'; import type { Webpage } from './Webpage'; import { WebpageFromJSON, WebpageFromJSONTyped, WebpageToJSON, WebpageToJSONTyped, } from './Webpage'; import type { BookmarkMetadataBlockAttributes } from './BookmarkMetadataBlockAttributes'; import { BookmarkMetadataBlockAttributesFromJSON, BookmarkMetadataBlockAttributesFromJSONTyped, BookmarkMetadataBlockAttributesToJSON, BookmarkMetadataBlockAttributesToJSONTyped, } from './BookmarkMetadataBlockAttributes'; import type { BookmarkMetadataBlockExtensionContext } from './BookmarkMetadataBlockExtensionContext'; import { BookmarkMetadataBlockExtensionContextFromJSON, BookmarkMetadataBlockExtensionContextFromJSONTyped, BookmarkMetadataBlockExtensionContextToJSON, BookmarkMetadataBlockExtensionContextToJSONTyped, } from './BookmarkMetadataBlockExtensionContext'; /** * * @export * @interface BookmarkMetadataBlock */ export interface BookmarkMetadataBlock { /** * * @type {BookmarkMetadataBlockAttributes} * @memberof BookmarkMetadataBlock */ 'attributes': BookmarkMetadataBlockAttributes; /** * * @type {string} * @memberof BookmarkMetadataBlock */ 'caption': string | null; /** * * @type {Array} * @memberof BookmarkMetadataBlock */ 'keywords'?: Array | null; /** * * @type {Webpage} * @memberof BookmarkMetadataBlock */ 'webpage': Webpage | null; /** * * @type {Array} * @memberof BookmarkMetadataBlock */ 'dominantColors': Array; /** * * @type {BookmarkMetadataBlockTranscript} * @memberof BookmarkMetadataBlock */ 'transcript': BookmarkMetadataBlockTranscript | null; /** * * @type {BookmarkMetadataBlockExtensionContext} * @memberof BookmarkMetadataBlock */ 'extensionContext': BookmarkMetadataBlockExtensionContext | null; } /** * Check if a given object implements the BookmarkMetadataBlock interface. */ export function instanceOfBookmarkMetadataBlock(value: object): value is BookmarkMetadataBlock { if (!('attributes' in value) || value['attributes'] === undefined) return false; if (!('caption' in value) || value['caption'] === undefined) return false; if (!('webpage' in value) || value['webpage'] === undefined) return false; if (!('dominantColors' in value) || value['dominantColors'] === undefined) return false; if (!('transcript' in value) || value['transcript'] === undefined) return false; if (!('extensionContext' in value) || value['extensionContext'] === undefined) return false; return true; } export function BookmarkMetadataBlockFromJSON(json: any): BookmarkMetadataBlock { return BookmarkMetadataBlockFromJSONTyped(json, false); } export function BookmarkMetadataBlockFromJSONTyped(json: any, ignoreDiscriminator: boolean): BookmarkMetadataBlock { if (json == null) { return json; } const result = { } as BookmarkMetadataBlock; if (json['attributes'] !== undefined) { result['attributes'] = BookmarkMetadataBlockAttributesFromJSON(json['attributes']); } if (json['caption'] !== undefined) { if (json['caption'] === null) { result['caption'] = null; } else { result['caption'] = json['caption']; } } if (json['keywords'] !== undefined) { if (json['keywords'] === null) { result['keywords'] = null; } else { result['keywords'] = json['keywords']; } } if (json['webpage'] !== undefined) { if (json['webpage'] === null) { result['webpage'] = null; } else { result['webpage'] = WebpageFromJSON(json['webpage']); } } if (json['dominantColors'] !== undefined) { result['dominantColors'] = (json['dominantColors'] as Array).map(BookmarkMetadataBlockDominantColorsInnerFromJSON); } if (json['transcript'] !== undefined) { if (json['transcript'] === null) { result['transcript'] = null; } else { result['transcript'] = BookmarkMetadataBlockTranscriptFromJSON(json['transcript']); } } if (json['extensionContext'] !== undefined) { if (json['extensionContext'] === null) { result['extensionContext'] = null; } else { result['extensionContext'] = BookmarkMetadataBlockExtensionContextFromJSON(json['extensionContext']); } } return result; } export function BookmarkMetadataBlockToJSON(json: any): BookmarkMetadataBlock { return BookmarkMetadataBlockToJSONTyped(json, false); } export function BookmarkMetadataBlockToJSONTyped(value?: BookmarkMetadataBlock | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'attributes': BookmarkMetadataBlockAttributesToJSON(value['attributes']), 'caption': value['caption'], 'keywords': value['keywords'], 'webpage': WebpageToJSON(value['webpage']), 'dominantColors': ((value['dominantColors'] as Array).map(BookmarkMetadataBlockDominantColorsInnerToJSON)), 'transcript': BookmarkMetadataBlockTranscriptToJSON(value['transcript']), 'extensionContext': BookmarkMetadataBlockExtensionContextToJSON(value['extensionContext']), }; }