UNPKG

jalhyd

Version:

JaLHyd, a Javascript Library for Hydraulics

98 lines 3.29 kB
import { IObservable, Observer } from "./internal_modules"; /** * get enum numerical value from enum class name and value as a string * @param enumClass enum class name * @param enumValueName enum value as a string * @returns enum numerical value */ export declare function enumValueFromString(enumClass: string, enumValueName: string): any; /** * represents a boolean: true if provided value at parameter creation must be ignore (@see nghyd/enableEmptyFieldsOnFormInit) */ export declare const Prop_NullParameters: string; /** * Interface permettant de propager de manière transparente des opérations sur des propriétés en encapsulant celles ci * (implémentée par Props et les classes possédant directement ou indirectement un membre de type Props, par ex Nub) */ export interface IProperties extends IObservable { /** * get property value * @param key property name */ getPropValue(key: string): any; /** * set property value * @param key property name * @param val property value to set * @param sender object from which modification originates */ setPropValue(key: string, val: any, sender?: any): boolean; /** * determine if this object directly or indirectly has a given property * @param key property name */ hasProperty(key: string): boolean; /** * list of properties keys */ readonly keys: string[]; } /** * gestion d'un ensemble de propriétés (clé/valeur) qui prévient quand * l'une d'entre-elles change */ export declare class Props implements IProperties { /** correspondance entre les noms de propriétés et les enum associés */ static readonly enumFromProperty: any; private _observable; private _map; constructor(prps?: any | IProperties); /** * @returns true if an object implements the IProperties interface */ static implementsIProperties(o: any): boolean; /** * set properties map from an IProperties */ private copyIProperties; get keys(): string[]; getPropValue(key: string): any; setPropValue(key: string, val: any, sender?: any): boolean; removeProp(key: string): void; hasProperty(key: string): boolean; getObservers(): Observer[]; /** * Remove all properties, does not notify of any change */ reset(): void; /** * Clones properties into a new Props object */ clone(): Props; toString(): string; /** * ajoute un observateur à la liste */ addObserver(o: Observer): void; /** * supprime un observateur de la liste */ removeObserver(o: Observer): void; /** * notifie un événement aux observateurs */ notifyObservers(data: any, sender?: any): void; /** * notification de changement de la valeur d'une propriété * @param prop nom de la propriété modifiée * @param val nouvelle valeur * @param sender objet ayant changé la valeur */ private notifyPropChange; /** * Returns a copy of given map, inverting enum keys and values */ static invertEnumKeysAndValuesInProperties(stringProps: any, forceNumbers?: boolean): any; invertEnumKeysAndValues(forceNumbers?: boolean): any; } //# sourceMappingURL=props.d.ts.map