import { Event, EventBase, EventScope } from '@govflanders/vl-widget-event'; import { Plugin } from './plugin'; /** * Interface which describes a plugin event. */ export interface PluginEvent extends Event { } /** * Abstract class for a plugin event. */ export declare abstract class PluginEventBase extends EventBase implements PluginEvent { } /** * Generic event for a plugin. */ export declare class GenericPluginEvent extends PluginEventBase { } /** * Interface which describes a plugin error event. */ export interface PluginExtensionEvent extends PluginEvent { /** * Get the extension. * * @return {Plugin} * An object which represents the plugin extension. */ getExtension(): Plugin; } /** * Generic plugin event which relates to a plugin extension. */ export declare class GenericPluginExtensionEvent extends PluginEventBase implements PluginExtensionEvent { /** * Holds the plugin extension. * * @var {Plugin} */ protected pluginExtension: Plugin; /** * Create a GenericPluginExtensionEvent object. * * @param {string} eventName * Name of the event. * @param {ExtensiblePlugin} sender * Sender of the event. * @param {Plugin} pluginExtension * Plugin extension object. * @param {EventScope} [eventScope=EventScope.Broadcast] * Optional. Scope of the event. */ constructor(eventName: string, sender: Plugin, pluginExtension: Plugin, eventScope?: EventScope); /** * {@inheritdoc} */ getExtension(): Plugin; } /** * Interface which describes a plugin error event. */ export interface PluginErrorEvent extends PluginEvent { /** * Get the triggered error. * * @return {Error} * An object which represents an error. */ getError(): Error; } /** * Generic plugin event which relates to a plugin error. */ export declare class GenericPluginErrorEvent extends PluginEventBase implements PluginErrorEvent { /** * Holds the plugin error. * * @var {Error} */ protected error: Error; /** * Create a GenericPluginErrorEvent object. * * @param {string} eventName * Name of the event. * @param {Plugin} sender * Sender of the event. * @param {Error} error * Error that was generated. * @param {EventScope} [eventScope=EventScope.Broadcast] * Optional. Scope of the event. */ constructor(eventName: string, sender: Plugin, error: Error, eventScope?: EventScope); /** * {@inheritdoc} */ getError(): Error; }