1 | import { IConstruct } from './construct-compat';
|
2 |
|
3 |
|
4 |
|
5 | export interface IAspect {
|
6 | |
7 |
|
8 |
|
9 | visit(node: IConstruct): void;
|
10 | }
|
11 |
|
12 |
|
13 |
|
14 |
|
15 | export declare class Aspects {
|
16 | private readonly scope;
|
17 | |
18 |
|
19 |
|
20 |
|
21 | static of(scope: IConstruct): Aspects;
|
22 | private constructor();
|
23 | /**
|
24 | * Adds an aspect to apply this scope before synthesis.
|
25 | * @param aspect The aspect to add.
|
26 | */
|
27 | add(aspect: IAspect): void;
|
28 | /**
|
29 | * The list of aspects which were directly applied on this scope.
|
30 | */
|
31 | get aspects(): IAspect[];
|
32 | }
|