기존 메서드의 this, 매개변수, 반환값을 각각 This, Args, Return 타입 매개변수로 선언했습니다. 이들의 타입은 그대로 대체 메서드에 적용됩니다. context는 데코레이터의 정보를 갖고 있는 매개변수입니다. startAndEnd 데코레이터는 클래스의 메서드를 장식하고 있으므로 context는 ClassMethodDecoratorContext가 됩니다.
context에는 다음과 같은 종류가 있습니다.
• ClassDecoratorContext: 클래스 자체를 장식할 때
• ClassMethodDecoratorContext: 클래스 메서드를 장식할 때
• ClassGetterDecoratorContext: 클래스의 getter를 장식할 때
• ClassSetterDecoratorContext: 클래스의 setter를 장식할 때
• ClassMemberDecoratorContext: 클래스 멤버를 장식할 때
• ClassAccessorDecoratorContext: 클래스 accessor를 장식할 때
• ClassFieldDecoratorContext: 클래스 필드를 장식할 때
어떤 문법을 장식하냐에 따라 context의 타입을 교체하면 됩니다.