@pilotlab/lux-tools
Version:
A luxurious user experience framework, developed by your friends at Pilot.
19 lines (18 loc) • 811 B
TypeScript
import { Initializable } from '@pilotlab/initializable';
import { Signal } from '@pilotlab/signals';
export declare abstract class ActivatableBase<TActivationTarget> extends Initializable {
constructor(data?: any);
readonly name: string;
readonly isActivated: boolean;
protected p_isActivated: boolean;
readonly activationTarget: TActivationTarget;
protected p_activationTarget: TActivationTarget;
protected p_initializationData: any;
activated: Signal<any>;
activate(target: TActivationTarget, ...args: any[]): void;
deactivate(...args: any[]): void;
protected p_onActivationStarted(data: any, ...args: any[]): void;
protected p_onActivated(data: any, ...args: any[]): void;
protected p_onDeactivated(...args: any[]): void;
}
export default ActivatableBase;