UNPKG

1.65 kBTypeScriptView Raw
1import { EventListenerType } from "./types/EventListenerTypes";
2import { EntityListenerMetadataArgs } from "../metadata-args/EntityListenerMetadataArgs";
3import { ObjectLiteral } from "../common/ObjectLiteral";
4import { EntityMetadata } from "./EntityMetadata";
5import { EmbeddedMetadata } from "./EmbeddedMetadata";
6/**
7 * This metadata contains all information about entity's listeners.
8 */
9export declare class EntityListenerMetadata {
10 /**
11 * Entity metadata of the listener.
12 */
13 entityMetadata: EntityMetadata;
14 /**
15 * Embedded metadata of the listener, in the case if listener is in embedded.
16 */
17 embeddedMetadata?: EmbeddedMetadata;
18 /**
19 * Target class to which metadata is applied.
20 * This can be different then entityMetadata.target in the case if listener is in the embedded.
21 */
22 target: Function | string;
23 /**
24 * Target's property name to which this metadata is applied.
25 */
26 propertyName: string;
27 /**
28 * The type of the listener.
29 */
30 type: EventListenerType;
31 constructor(options: {
32 entityMetadata: EntityMetadata;
33 embeddedMetadata?: EmbeddedMetadata;
34 args: EntityListenerMetadataArgs;
35 });
36 /**
37 * Checks if entity listener is allowed to be executed on the given entity.
38 */
39 isAllowed(entity: ObjectLiteral): boolean;
40 /**
41 * Executes listener method of the given entity.
42 */
43 execute(entity: ObjectLiteral): any;
44 /**
45 * Calls embedded entity listener method no matter how nested it is.
46 */
47 protected callEntityEmbeddedMethod(entity: ObjectLiteral, propertyPaths: string[]): void;
48}