OptimalPointcut: {
    [key in AspectKind]: {
        name: VariableName;
        pointcut: PointcutElement<key, ArgAtom, Json[]>;
    }[]
}