import { BooleanField, ByteField, DateField, MediaTypeField, NumberField, StringField } from '@internetarchive/iaux-item-metadata'; import { SearchReview } from '../../responses/page-elements'; import { SearchMetadata } from '../search-metadata'; /** * A model that describes an item hit from a Metadata Search via the PPS endpoint. * * The fields in here are cast to their respective field types. See `metadata-fields/field-type`. * * Add additional fields as needed. * * @export * @class ItemHit */ export declare class ItemHit { /** * This is the raw hit response; useful for inspecting the raw data * returned from the server. */ readonly rawMetadata: Readonly>; readonly fields: Readonly; constructor(json: Record); /** * The item identifier. * * _Note_: This is a plain string instead of a `MetadataField` since it's * the primary key of the item. */ get identifier(): string | undefined; /** Optional. */ get addeddate(): DateField | undefined; /** Optional. */ get avg_rating(): NumberField | undefined; /** * May be a superset of metadata collection field. * Multivalued. */ get collection(): StringField | undefined; /** * Computed during document construction, for collection items only. * Optional. */ get collection_files_count(): NumberField | undefined; /** * In bytes; computed during document construction, for collection items only. * Optional. */ get collection_size(): ByteField | undefined; /** * Optional. * Multivalued. */ get creator(): StringField | undefined; /** * Optional. */ get date(): DateField | undefined; /** Optional. */ get description(): StringField | undefined; /** * Total views over item lifetime, updated by audit consultation with Views API. * Optional. */ get downloads(): NumberField | undefined; /** * Computed during document construction. */ get files_count(): NumberField | undefined; /** * Optional. * Multivalued. */ get genre(): StringField | undefined; /** * Item characterization including noindex status. * Multivalued. */ get indexflag(): StringField | undefined; /** * Format varies. * Optional. */ get issue(): StringField | undefined; /** * Computed during document construction. * Optional. */ get item_count(): NumberField | undefined; /** * In bytes; computed during document construction. */ get item_size(): ByteField | undefined; /** * Optional. * Multivalued. */ get language(): StringField | undefined; /** * May be stale. * Optional. */ get lending___available_to_borrow(): BooleanField | undefined; /** * May be stale. * Optional. */ get lending___available_to_browse(): BooleanField | undefined; /** * May be stale. * Optional. */ get lending___available_to_waitlist(): BooleanField | undefined; /** * May be stale. * Optional. */ get lending___status(): StringField | undefined; /** Optional. */ get licenseurl(): StringField | undefined; get mediatype(): MediaTypeField | undefined; /** * Views over a month, updated by audit consultation with Views API. * Optional. */ get month(): NumberField | undefined; /** Optional. */ get noindex(): BooleanField | undefined; /** * Computed during document construction. * Optional. */ get num_favorites(): NumberField | undefined; /** * Computed during document construction. * Optional. */ get num_reviews(): NumberField | undefined; /** Optional. */ get publicdate(): DateField | undefined; /** Optional. */ get reviewdate(): DateField | undefined; /** * Optional. * Only present when requesting the reviews page_element of an account_details page. * Contains data about the target user's review on this item. * Note: this property is not a standard field type and there is no need to call `.value`/`.values` on it. */ get review(): SearchReview | undefined; /** * Format varies. * Optional. */ get source(): StringField | undefined; /** * Optional. * Multivalued. */ get subject(): StringField | undefined; /** Optional. */ get title(): StringField | undefined; /** Optional. */ get type(): StringField | undefined; /** Optional. */ get volume(): StringField | undefined; /** * Views over a seven-day period, updated by audit consultation with Views API. * Optional. */ get week(): NumberField | undefined; /** * Computed from date. * Optional. */ get year(): NumberField | undefined; }