@realestate/types
Version:
Types for real estate
288 lines (255 loc) • 10.9 kB
TypeScript
/**
* Copyright (c) 2023 ListBird. All Rights Reserved.
*
* This software product includes software or other works developed by RESO,
* subject to the RESO End User License published at www.reso.org.
*
* Any modifications, derivative works, or redistributions of this source must
* maintain this copyright notice. See the RESO EULA for more information.
*/
import { Permission } from './Permission';
import { MediaStatus } from './MediaStatus';
import { ResourceName } from './ResourceName';
import { ClassName } from './ClassName';
import { MediaCategory } from './MediaCategory';
import { ImageSizeDescription } from './ImageSizeDescription';
import { ImageOf } from './ImageOf';
import { MediaType } from './MediaType';
export interface Media {
/**
* {@link https://ddwiki.reso.org/display/DDW17/ChangedByMemberID+Field}
*
* ID of the user, agent, member, etc., that uploaded the media this record refers to.
*/
ChangedByMemberID?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ChangedByMemberKey+Field}
*
* The primary key of the member who uploaded the media this record refers to. This is a foreign key
* relating to the Member resource's MemberKey.
*/
ChangedByMemberKey?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ChangedByMemberKeyNumeric+Field}
*
* The primary key of the member who uploaded the media this record refers to. This is a foreign key
* relating to the Member resource's MemberKey. This is the numeric only key and used as an alternative to
* the ChangedByMemberKey field.
*/
ChangedByMemberKeyNumeric?: number;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ClassName+Field}
*
* The class or table of the listing or other record the media. Residential, Lease, Agent, Office, Contact,
* etc.
*/
ClassName?: ClassName;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ImageHeight+Field}
*
* The height of the image expressed in pixels.
*/
ImageHeight?: number;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ImageOf+Field}
*
* When the media is an image, a list of possible matches such as kitchen, bathroom, front of structure,
* etc. This field may be used to identify a required image under association or MLS rules.
*/
ImageOf?: ImageOf;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ImageSizeDescription+Field}
*
* A text description of the size of the image. i.e. Small, Thumbnail, Medium, Large, X-Large. The largest
* image must be described as "Largest". Thumbnail must also be included. Pick List will remain
* open/extendable.
*/
ImageSizeDescription?: ImageSizeDescription;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ImageWidth+Field}
*
* The width of the image expressed in pixels.
*/
ImageWidth?: number;
/**
* {@link https://ddwiki.reso.org/display/DDW17/LongDescription+Field}
*
* The full robust description of the object.
*/
LongDescription?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaCategory+Field}
*
* Category describing the , Photos, Documents, Video, Unbranded Virtual Tour, Branded Virtual Tour, Floor
* Plan, Logo
*/
MediaCategory?: MediaCategory;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaHTML+Field}
*
* The JavaScript or other method to embed a video, image, virtual tour or other media.
*/
MediaHTML?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaKey+Field}
*
* A unique identifier for this record from the immediate source. This may be a number, or string that can
* include URI or other forms. This is the system you are connecting to and not necessarily the original
* source of the record.
*/
MediaKey?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaKeyNumeric+Field}
*
* A unique identifier for this record from the immediate source. This may be a number, or string that can
* include URI or other forms. This is the system you are connecting to and not necessarily the original
* source of the record. This is the numeric only key and used as an alternative to the MediaKey field.
*/
MediaKeyNumeric?: number;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaModificationTimestamp+Field}
*
* This timestamp is updated when a change to the object has been made, which may differ from a change to
* the Media Resource.
*/
MediaModificationTimestamp?: Date;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaObjectID+Field}
*
* ID of the image, supplement or other object specified by the given media record.
*/
MediaObjectID?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaStatus+Field}
*
* The status of the media item referenced by this record. (Updated, Deleted, etc.,_
*/
MediaStatus?: MediaStatus;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaType+Field}
*
* Media Types as defined by IANA. http://www.iana.org/assignments/media-types/index.html. Note that the
* former name of MimeType, used by both IANA and RESO may still be in use by some systems/entities.
*/
MediaType?: MediaType;
/**
* {@link https://ddwiki.reso.org/display/DDW17/MediaURL+Field}
*
* The URI to the media file referenced by this record.
*/
MediaURL?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ModificationTimestamp+%28Media%29+Field}
*
* The transactional timestamp automatically recorded by the MLS system representing the date/time the media
* record was last modified.
*/
ModificationTimestamp?: Date;
/**
* {@link https://ddwiki.reso.org/display/DDW17/Order+Field}
*
* Only a positive integer including zero. Element zero is the primary photo per RETS convention.
*/
Order?: number;
/**
* {@link https://ddwiki.reso.org/display/DDW17/OriginatingSystemID+%28Media%29+Field}
*
* The RESO OUID's OrganizationUniqueId of the Originating record provider. The Originating system is the
* system with authoritative control over the record. For example; the name of the MLS where the Media was
* input. In cases where the Originating system was not where the record originated (the authoritative
* system), see the Originating System fields.
*/
OriginatingSystemID?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/OriginatingSystemMediaKey+Field}
*
* The system key, a unique record identifier, from the Originating system. The Originating system is the
* system with authoritative control over the record. For example, the Multiple Listing Service where the
* Media was input. There may be cases where the Source System (how you received the record) is not the
* Originating System. See Source System Key for more information.
*/
OriginatingSystemMediaKey?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/OriginatingSystemName+%28Media%29+Field}
*
* The name of the Originating record provider. Most commonly the name of the MLS. The place where the
* Media is originally input by the member. The legal name of the company.
*/
OriginatingSystemName?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/Permission+Field}
*
* Public, Private, IDX, VOW, Office Only, Firm Only, Agent Only,
*/
Permission?: Permission[];
/**
* {@link https://ddwiki.reso.org/display/DDW17/PreferredPhotoYN+Field}
*
* When set to true, the media record in question is the preferred photo. This will typically mean the
* photo to be shown when only one of the photos is to be displayed.
*/
PreferredPhotoYN?: boolean;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ResourceName+Field}
*
* The resource or table of the listing or other record the media relates to. i.e. Property, Member,
* Office, etc.
*/
ResourceName?: ResourceName;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ResourceRecordID+Field}
*
* The well known identifier of the related record from the source resource. The value may be identical to
* that of the Listing Key, but the Listing ID is intended to be the value used by a human to retrieve the
* information about a specific listing. In a multiple originating system or a merged system, this value may
* not be unique and may require the use of the provider system to create a synthetic unique value.
*/
ResourceRecordID?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ResourceRecordKey+Field}
*
* The primary key of the related record from the source resource. For example the ListingKey, AgentKey,
* OfficeKey, TeamKey, etc. This is the system you are connecting to and not necessarily the original source
* of the record. This is a foreign key from the resource selected in the ResourceName field.
*/
ResourceRecordKey?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ResourceRecordKeyNumeric+Field}
*
* The primary key of the related record from the source resource. For example the ListingKey, AgentKey,
* OfficeKey, TeamKey, etc. This is the system you are connecting to and not necessarily the original source
* of the record. This is a foreign key from the resource selected in the ResourceName field. This is the
* numeric only key and used as an alternative to the ResourceRecordKey field.
*/
ResourceRecordKeyNumeric?: number;
/**
* {@link https://ddwiki.reso.org/display/DDW17/ShortDescription+Field}
*
* The short text given to summarize the object. Commonly used as the short description displayed under a
* photo.
*/
ShortDescription?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/SourceSystemID+%28Media%29+Field}
*
* The RESO OUID's OrganizationUniqueId of the Source record provider. The source system is the system from
* which the record was directly received. In cases where the source system was not where the record
* originated (the authoritative system), see the Originating System fields.
*/
SourceSystemID?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/SourceSystemMediaKey+Field}
*
* The system key, a unique record identifier, from the Source System. The Source System is the system from
* which the record was directly received. In cases where the Source System was not where the record
* originated (the authoritative system), see the Originating System fields.
*/
SourceSystemMediaKey?: string;
/**
* {@link https://ddwiki.reso.org/display/DDW17/SourceSystemName+%28Media%29+Field}
*
* The name of the immediate record provider. The system from which the record was directly received. The
* legal name of the company.
*/
SourceSystemName?: string;
}