Interface ActivityDocument

Activity Document Interface. Defines the structure of a activity document. ActivityDocument

Hierarchy

  • Document
    • ActivityDocument

Properties

activityCommentary?: string[]

Description

Describe if there will be a commentary for the activity

Example

["Guide", "AR", "VR",...]
activityDuration?: {
    days: number;
    hours: number;
}

Type declaration

  • days: number
  • hours: number

Description

Activity duration in days or hours

Example

{hours: 3, days:0}
activityFrequency?: {
    blockedDates: Date[];
    dates: Date[];
    multipleTimeInDay: boolean;
}

Type declaration

  • blockedDates: Date[]

    List of blocked dates

  • dates: Date[]

    List of the dateTime available for this activity

  • multipleTimeInDay: boolean

    Indicated if the activity will occur multiple times in a single day

Description

Which dates this activity will be available for

activityLanguage?: string[]

Description

Indicates by which languages can this activity be produced

Example

["English", "Arabic", "French", ...]
activityMaxCapacity?: number

Description

Max capacity of this activity in any givin date

activityPreparations?: string[]

Description

Describes some preparation for this activity

Example

["Food", "Passport", "Camera", ...]
bookings?: Map<string, BookingInfo[]>

Map structure holding booking information. The key represents a unique identifier for the booking, and the value is an array of BookingInfo objects holding detailed information about each booking.

cancelationPolicy?: CancelationPolicy

Indicates the cancellation policy for this activity.

Field

cancelationPolicy

categories?: string[]

Description

categories of the activity

Example

["Hiking", "Adventure", "Fun", "Educational", ...]
cutOffTimeForBooking?: CutOffTimeForBooking

Description

Cutoff time for booking on this activity.

Field

cutOffTimeForBooking

description?: string

Description

Description of the activity

displayLanguage?: string[]

Description

Indicates which languages should this activity be displayed with

Example

["English", "Arabic", "French", ...]
dressCode?: string

Description

Indicates what is the dress code for this activity

fitFor?: string[]

Description

Indicates a group of people this activity will be a good fit for them

Example

["seniors", "adults", "men", "women", ...]
fitForInterests?: string[]

Description

Indicates a group of interest this activity will be a good fit for

Example

["Education", "Having fun", "Swimming", ...]
guideType?: string[]

Description

Indicates what is the guid type available for this activity

Example

["Driver", "Tour Guide",...]
includeEntranceTickets?: boolean

Description

Indicates if this activity include entrance ticket

includeFoodDrinks?: FoodDrinkInclusion

Description

Indicates if this activity includes food or drinks with a message.

Field

includeFoodDrinks

Example

{food: {include: true, message:"non-vegetarian meals"}, drinks:{include:true, message:"only halal drink"}}
includeTransportation?: boolean

Description

Indicates if this activity includes transportation

includes?: string[]

Description

List of what this activity includes

Example

["jacuzzi", "fire works",...]
itemsToBring?: string[]

Description

List of items you should bring

Example

["sun glasses", "sun block",...]
itinerary?: string

Description

Itinerary of the activity

location?: {
    city: string;
    country: ObjectId;
    region: string;
}

Type declaration

  • city: string
  • country: ObjectId
  • region: string

Description

Location of the activity

maxGroupSize?: number

Description

Indicates what is the maximum size for a certain booking on this activity

media?: [{
    imageUrl: string;
    tags: string[];
}]

Type declaration

  • imageUrl: string
  • tags: string[]

Description

List of all media for this activity Image, Audio, Video

minMaxAge?: {
    max: number;
    min: number;
}

Type declaration

  • max: number
  • min: number

Description

Indicates what is the appropriate age for this activity

minNumberOfGuests?: number

Description

Indicates the minimum number of guests in each booking

notFitFor?: string[]

Description

Indicates a group of interest this activity will be not a good fit for

Example

["Seniors", "Children", "Infants", ...]
notInclude?: string[]

Description

List of what this activity does not include

Example

["Air flights", "Launch",...]
partnerConfirmation?: boolean

Description

Indicates whether this activity requires confirmation from the partner

partner_id: ObjectId

Description

Partner who own this activity

pickUp?: PickUpDetails

Description

Indicates whether the activity has pick-up service or not, along with the details of the service.

Field

pickUp

price?: PriceDetails

Description

Indicates all the financial details of the activity.

Field

price

private?: boolean

Description

Indicates if this activity is available for multiple booking or a single booking

promos?: string[]

Description

Indicates sub-category for this activity

Example

["fun", "pyramids", "sphinx",...]
requireSpecialTraining?: boolean

Description

Indicates if this activity requires any special training

requirements?: string[]

Description

Indicates what is the required item you must bring for this activity

Example

["passport", "rackets", "swimming suite",...]
shortDescription?: string

Description

short description for the activity

specialTraining?: string[]

Description

list of all special training required by this activity

Example

["driving", "diving", ...]

Description

Status of the activity.

Field

status

title: string

Description

Title of the activity

Required

tourGuides?: [{
    tourGuide_id: ObjectId;
}]

Type declaration

  • tourGuide_id: ObjectId

Description

List of all TourGuides in this activity

transportationMethods?: string[]

Description

Indicates methods of transportation that this activity offers

Example

["Limousine", "Car", "Bus", ...]
type: ObjectId

Description

Refers to the type of activity, linked to a Category document.

Required

Generated using TypeDoc