import { Venue } from '../../Venue';
import { EventType } from '../EventType';
import { ExploreMode } from '../ExploreMode';
import { View } from '../View';

/**
 * This interface represents events that occur when the internal state of the venue changes.
 */
export interface ExploreModeEvent {
    /**
     * The event type currently fired.
     */
    readonly eventType: EventType;
    /**
     * The venue at the source of the event.
     */
    readonly venue: Venue;
    /**
     * The view at the source of the event.
     */
    readonly view: View;
    /**
     * The new current explore mode.
     */
    readonly currentExploreMode: ExploreMode;
}
