---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventManager.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/dev/jsapi-v2-1/doc/en/llms.txt

# IEventManager

Extends [IEventTrigger](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventTrigger.md).

Event manager. Using an event manager, you can subscribe to and unsubscribe from events, as well as initiate the events themselves.

[Constructor](#constructor-summary) | [Methods](#methods-summary)

## Constructor {#constructor-summary}

```javascript
IEventManager()
```

## Methods {#methods-summary}

#|
|| **Name** | **Returns** | **Description** ||
|| [add](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#add)([types](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#add-param-types), [callback](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#add-param-callback)[, [context](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#add-param-context)[, [priority](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#add-param-priority)]]) | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md) | Adds a new subscription. ||
|| [fire](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#fire)([type](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#fire-param-type)[, [event](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#fire-param-event)]) | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md) | Triggers an event. ||
|| [getParent](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#getParent)() | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md)\|null | Returns reference to the parent event manager. ||
|| [group](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#group)() | [IEventGroup](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventGroup.md) | Returns the group of event listeners associated with the given event manager. ||
|| [once](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#once)([types](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#once-param-types), [callback](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#once-param-callback)[, [context](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#once-param-context)[, [priority](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#once-param-priority)]]) | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md) | Adds a listener, which calls the handler function only one time. ||
|| [remove](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#remove)([types](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#remove-param-types), [callback](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#remove-param-callback)[, [context](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#remove-param-context)[, [priority](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#remove-param-priority)]]) | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md) | Removes an existing subscription. ||
|| [setParent](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#setParent)([parent](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md#setParent-param-parent)) | Sets the parent event manager.||
|#

## Methods details {#method_detail}

### add {#add}

```javascript
{IEventManager} add(types, callback[, context[, priority]])
```

Adds a new subscription.

**Returns** self-reference.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`types`](#add-param-types)[*](*star) | — | Type: String\|String[]

Type or array of types for the event. ||
|| [`callback`](#add-param-callback)[*](*star) | — | Type: Function

Handler function for the event. An object describing the event is passed to the function as a parameter. It can be either an arbitrary object, or implement the interface [IEvent](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEvent.md). ||
|| [`context`](#add-param-context) | — | Type: Object

Context for the handler. ||
|| [`priority`](#add-param-priority) | 0 | Type: Integer

Subscription priority. ||
|#

\* Mandatory parameter/option.

### fire {#fire}

```javascript
{IEventManager} fire(type[, event])
```

Triggers an event.

**Returns** self-reference.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`type`](#fire-param-type)[*](*star) | — | Type: String

Type of event. ||
|| [`event`](#fire-param-event) | — | Type: Object\|[Event](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/Event.md)

Event. If a hash with data is passed, the createEventObject method will be called for it and further actions will be performed with the newly created event. ||
|#

\* Mandatory parameter/option.

### getParent {#getParent}

```javascript
{IEventManager|null} getParent()
```

**Returns** reference to the parent event manager.

### group {#group}

```javascript
{IEventGroup} group()
```

**Returns** the group of event listeners associated with the given event manager.

### once {#once}

```javascript
{IEventManager} once(types, callback[, context[, priority]])
```

Adds a listener, which calls the handler function only one time.

**Returns** self-reference.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`types`](#once-param-types)[*](*star) | — | Type: String\|String[]

Type or array of types for the event. ||
|| [`callback`](#once-param-callback)[*](*star) | — | Type: Function

Handler function for the event. The function is passed an object of the event [IEvent](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEvent.md). ||
|| [`context`](#once-param-context) | — | Type: Object

Context for the handler. ||
|| [`priority`](#once-param-priority) | 0 | Type: Integer

Subscription priority. ||
|#

\* Mandatory parameter/option.

### remove {#remove}

```javascript
{IEventManager} remove(types, callback[, context[, priority]])
```

Removes an existing subscription.

**Returns** self-reference.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`types`](#remove-param-types)[*](*star) | — | Type: String\|String[]

Type or array of types for the event. ||
|| [`callback`](#remove-param-callback)[*](*star) | — | Type: Function

Handler function for the event. The function is passed an object of the event [IEvent](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEvent.md). ||
|| [`context`](#remove-param-context) | — | Type: Object

Context for the handler. ||
|| [`priority`](#remove-param-priority) | 0 | Type: Integer

Subscription priority. ||
|#

\* Mandatory parameter/option.

### setParent {#setParent}

```javascript
{} setParent(parent)
```

Sets the parent event manager.

**Parameters:**

#|
|| **Parameter** | **Default value** | **Description**  ||
|| [`parent`](#setParent-param-parent)[*](*star) | — | Type: [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/IEventManager.md)\|null

Parent event manager. ||
|#

\* Mandatory parameter/option.

[*star]: Mandatory parameter/option.