/** * 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 { PrioritySignal } from "./PrioritySignal"; /** * 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 DeluxeSignal extends PrioritySignal { protected _target: any; /** * Creates a DeluxeSignal instance to dispatch events on behalf of a target object. * * @param target The object the signal is dispatching events on behalf of. * @param valueClasses Any number of class references that enable type checks in dispatch(). * For example, new DeluxeSignal(this, String, uint) * would allow: signal.dispatch("the Answer", 42) * but not: signal.dispatch(true, 42.5) * nor: signal.dispatch() * * NOTE: Subclasses cannot call super.apply(null, valueClasses), * but this constructor has logic to support super(valueClasses). */ constructor(target?: any, ...valueClasses: any[]); /** @inheritDoc */ get target(): any; set target(value: any); /** * @inheritDoc * @throws ArgumentError ArgumentError: Incorrect number of arguments. * @throws ArgumentError ArgumentError: Value object is not an instance of the appropriate valueClasses Class. */ dispatch(...valueObjects: any[]): void; }