/**
* Copyright (c) 2017-present, RobotlegsJS. All Rights Reserved.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import { ISignal } from "./ISignal";
import { ISlot } from "./ISlot";
import { OnceSignal } from "./OnceSignal";
/**
* Allows the valueClasses to be set in MXML, e.g.
* {[String, uint]}
*/
/**
* Signal dispatches events to multiple listeners.
* It is inspired by C# events and delegates, and by
* signals and slots
* in Qt.
* A Signal adds event dispatching functionality through composition and interfaces,
* rather than inheriting from a dispatcher.
*
* Project home: http://github.com/robertpenner/as3-signals/
*/
export declare class Signal extends OnceSignal implements ISignal {
/**
* @inheritDoc
* @throws flash.errors.IllegalOperationError IllegalOperationError: You cannot addOnce() then add() the same listener without removing the relationship first.
* @throws ArgumentError ArgumentError: Given listener is null.
*/
add(listener: Function): ISlot;
}