export function isCapiItemResponse()

in packages/pressreader/src/typePredicates.ts [34:51]


export function isCapiItemResponse(data: unknown): data is CapiItemResponse {
	return (
		data != null &&
		typeof data === 'object' &&
		(data as ItemResponse).status == 'ok' &&
		typeof (data as ItemResponse).content === 'object' &&
		typeof (data as ItemResponse).content?.id === 'string' &&
		typeof (data as ItemResponse).content?.type === 'string' &&
		typeof (data as ItemResponse).content?.webPublicationDate === 'string' &&
		typeof (data as ItemResponse).content?.fields === 'object' &&
		typeof (data as ItemResponse).content?.fields?.wordcount === 'string' &&
		Array.isArray((data as ItemResponse).content?.tags) &&
		((data as ItemResponse).content?.tags.every(
			(tag) => typeof tag.id === 'string' && typeof tag.type === 'string',
		) ??
			false)
	);
}